Subversion Repositories DevTools

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
119 ghuddy 1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
3
'=====================================================
4
'|                                                   |
157 ghuddy 5
'|                        RTREE                      |
119 ghuddy 6
'|                                                   |
7
'=====================================================
8
%>
9
<%
10
Option explicit
11
' Good idea to set when using redirect
157 ghuddy 12
Response.Expires = 0   ' always load the page, dont store
119 ghuddy 13
%>
14
<!--#include file="common/conf.asp"-->
15
<!--#include file="common/globals.asp"-->
16
<!--#include file="common/formating.asp"-->
17
<!--#include file="common/qstr.asp"-->
18
<!--#include file="common/common_subs.asp"-->
19
<!--#include file="common/_rtree_common.asp"-->
183 brianf 20
<!--#include file="common/daemon_status.asp"-->
119 ghuddy 21
<%
22
'------------ ACCESS CONTROL ------------------
23
%>
24
<!--#include file="_access_control_general.asp"-->
25
<%
26
'------------ Variable Definition -------------
27
Dim ViewType
5177 dpurdie 28
Dim bIsaTreeView
157 ghuddy 29
Dim rsQryStr
119 ghuddy 30
Dim rsQry
31
Dim parProjId
157 ghuddy 32
Dim parShowFilter
119 ghuddy 33
Dim objBtnControl
5177 dpurdie 34
Dim currLevel, lastLevel
157 ghuddy 35
Dim dListFilter
183 brianf 36
Dim objDmSts
5177 dpurdie 37
Dim hoverTitle, createdBy, comment
38
Dim bCanMove
39
Dim bCanDestroy
40
Dim bCanClone
41
Dim bCanUnarchive
42
Dim bCanCloseArchive
5178 dpurdie 43
 
44
Dim bCanOpenToClose
45
Dim bCanRestrictiveToClose
46
Dim bCanCloseToClose
47
Dim bCanPreserveToClose
48
Dim bCanArchiveToClose
49
 
50
Dim bCanOpenToPreserve
51
Dim bCanRestrictiveToPreserve
52
Dim bCanCloseToPreserve
53
Dim bCanPreserveToPreserve
54
Dim bCanArchiveToPreserve
55
 
56
Dim bCanOpenToArchive
57
Dim bCanRestrictiveToArchive
58
Dim bCanCloseToArchive
59
Dim bCanPreserveToArchive
60
Dim bCanArchiveToArchive
61
 
62
 
119 ghuddy 63
'------------ Constants Declaration -----------
64
Const LIMG_TREE_I_HALF = "<img src='images/spacer.gif' width='20' height='1'>"
4078 dpurdie 65
Const LIMG_TREE_I_NONE = "<img src='images/spacer.gif' width='30' height='15'>"
66
Const LIMG_TREE_I_FULL = "<img src='images/dot1h.gif' width='30' height='15'>"
157 ghuddy 67
Const LIMG_TREE_T      = "<img src='images/dot1.gif' width='30' height='15'>"
68
Const LIMG_LIST_VIEW   = "<img src='images/abtn_list_view.gif' border='0' align=absmiddle' name='imgviewtype' usemap='#mapviewtype' id='imgviewtype'>"
69
Const LIMG_TREE_VIEW   = "<img src='images/abtn_tree_view.gif' border='0' align=absmiddle' name='imgviewtype' usemap='#mapviewtype' id='imgviewtype'>"
5177 dpurdie 70
 
119 ghuddy 71
Const LCONST_LIST_VIEW = 1
72
Const LCONST_TREE_VIEW = 2
157 ghuddy 73
 
5177 dpurdie 74
Const DEFAULT_SHOW_FILTER = "'N','R','C','O'"
75
 
119 ghuddy 76
'------------ Variable Init -------------------
5177 dpurdie 77
'   Need either proj_id or rtag_id, for which we will calculate a project id
119 ghuddy 78
parProjId = Request("proj_id")
5177 dpurdie 79
If parProjId = "" Then parProjId = DB_PROJ_ID
80
If parProjId = ""  OR parProjId < 0 Then
81
   Response.Redirect("index.asp")
82
End If
83
Call objPMod.StoreParameter("proj_id", parProjId)
157 ghuddy 84
 
5177 dpurdie 85
 
157 ghuddy 86
' Get show_filter from query string or failing that, from the cookie.
87
' Make sure that if neither supplies it, use the default
88
parShowFilter = Request("show_filter")
89
If NOT IsNull(parShowFilter) AND parShowFilter <> "" Then
90
   Response.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("show_filter") = parShowFilter
91
Else
92
   parShowFilter = Request.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("show_filter")
93
   If IsNull(parShowFilter) OR parShowFilter = "" Then
94
      parShowFilter = DEFAULT_SHOW_FILTER
95
      Response.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("show_filter") = parShowFilter
96
   End If
97
End If
98
 
99
Set dListFilter = CreateObject("Scripting.Dictionary")
100
 
119 ghuddy 101
Set objBtnControl = New ActionButtonControl
183 brianf 102
 
5177 dpurdie 103
' Init access control
104
bCanMove =  canActionControlInProject("ConfigureRelease") 
105
bCanDestroy = canActionControlInProject("DestroyRelease")
106
bCanClone =  canActionControlInProject("CreateNewRelease")
107
 
5178 dpurdie 108
bCanOpenToClose             =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_OPEN_MODE,enumDB_RELEASE_IN_CLOSED_MODE)
109
bCanRestrictiveToClose      =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_RESTRICTIVE_MODE,enumDB_RELEASE_IN_CLOSED_MODE)
110
bCanCloseToClose            =  FALSE
111
bCanPreserveToClose         =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_PRESERVE_MODE,enumDB_RELEASE_IN_CLOSED_MODE)
112
bCanArchiveToClose          =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_ARCHIVE_MODE,enumDB_RELEASE_IN_CLOSED_MODE)
113
 
114
bCanOpenToPreserve          =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_OPEN_MODE,enumDB_RELEASE_IN_PRESERVE_MODE)
115
bCanRestrictiveToPreserve   =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_RESTRICTIVE_MODE,enumDB_RELEASE_IN_PRESERVE_MODE)
116
bCanCloseToPreserve         =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_CLOSED_MODE,enumDB_RELEASE_IN_PRESERVE_MODE)
117
bCanPreserveToPreserve      =  FALSE
118
bCanArchiveToPreserve       =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_ARCHIVE_MODE,enumDB_RELEASE_IN_PRESERVE_MODE)
119
 
120
bCanOpenToArchive           =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_OPEN_MODE,enumDB_RELEASE_IN_ARCHIVE_MODE)            
121
bCanRestrictiveToArchive    =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_RESTRICTIVE_MODE,enumDB_RELEASE_IN_ARCHIVE_MODE)     
122
bCanCloseToArchive          =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_CLOSED_MODE,enumDB_RELEASE_IN_ARCHIVE_MODE)          
123
bCanPreserveToArchive       =  ReleaseModeAccessCheck(enumDB_RELEASE_IN_PRESERVE_MODE,enumDB_RELEASE_IN_ARCHIVE_MODE)                                                                                          
124
bCanArchiveToArchive        =  FALSE
125
 
119 ghuddy 126
'----------------------------------------------
127
%>
128
<%
157 ghuddy 129
'--------------------------------------------------------------------------------------------------------------------------
130
' Determines if the specified filter is on/off and returns a string to use to check the associated checkbox accordingly
131
Function GetIsListFilterChecked( nFilterId )
132
   GetIsListFilterChecked = ""
5177 dpurdie 133
 
134
  If bIsaTreeView Then
135
       ' Disable the control in Tree View
136
       GetIsListFilterChecked = GetIsListFilterChecked & " checked disabled"
137
  Else
138
       If dListFilter.Exists ( "'" & CStr(nFilterId) & "'"  ) Then
139
          GetIsListFilterChecked = "checked"
140
       End If
141
  End If
142
 
157 ghuddy 143
End Function
144
'--------------------------------------------------------------------------------------------------------------------------
145
' Reads the cookie for the filter and creats a dictionary element for each item therein. the dictionary
146
' is used by the GetIsListFilterChecked function to determine checkbox state in the filter options
147
Sub GetListFilterValues ( outDepFilter )
148
   Dim FilterVal, aFilterValues
149
 
5177 dpurdie 150
   If parShowFilter <> "" Then
151
      aFilterValues = Split( Replace( parShowFilter, " ", ""), ",")
157 ghuddy 152
 
153
      For Each FilterVal In aFilterValues
154
         outDepFilter.Item (CStr( FilterVal )) = ""
155
      Next
156
   End If
157
End Sub
158
 
119 ghuddy 159
'----------------------------------------------------------------------------------------------------------------------------------------------
160
Sub RenderIndent ( nLastLevel, nCurrLevel )
157 ghuddy 161
   Dim i
162
 
163
   If nCurrLevel <= 1 Then Exit Sub
164
 
165
   '-- Render half lines
166
   If nCurrLevel > 2 Then
167
      For i = 1 To nCurrLevel - 2
4078 dpurdie 168
         Response.write LIMG_TREE_I_NONE
157 ghuddy 169
      Next
170
   End If
171
 
172
 
173
   '-- Render branch or line
174
   If nLastLevel < nCurrLevel Then
175
      Response.write LIMG_TREE_T
176
   Else
177
      Response.write LIMG_TREE_I_FULL
178
   End If
179
 
119 ghuddy 180
End Sub
181
'----------------------------------------------------------------------------------------------------------------------------------------------
182
Sub NewRelease ()
5177 dpurdie 183
    Call OpenInWindow ( "new_release.asp?" & objPMod.ComposeURL() )
119 ghuddy 184
End Sub
185
'----------------------------------------------------------------------------------------------------------------------------------------------
5177 dpurdie 186
Sub MergeManager ()
187
    ' Open Merge Manager without parameters
188
    Call OpenInWindow ( "diff.asp" )
119 ghuddy 189
End Sub
190
'----------------------------------------------------------------------------------------------------------------------------------------------
5177 dpurdie 191
Sub AdminView()
192
     Dim Query_String
193
     Query_String = _
194
     "   SELECT DISTINCT vi.view_id, vi.view_name"&_
195
     "   FROM VIEWS vi"&_
196
     "   WHERE vi.view_name = 'PROJECT WIDE'"
197
     Set rsQry = OraDatabase.DbCreateDynaset( Query_String , cint(0) )
157 ghuddy 198
 
5177 dpurdie 199
     Dim viewRecordCount
200
     Dim id
201
     viewRecordCount=0
202
     viewRecordCount = rsQry.RecordCount
157 ghuddy 203
 
5177 dpurdie 204
     While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
205
        id=rsQry.Fields("view_id")
206
        rsQry.MoveNext
207
     WEnd
157 ghuddy 208
 
5177 dpurdie 209
      rsQry.Close()
210
     Set rsQry = nothing
157 ghuddy 211
 
5177 dpurdie 212
     If viewRecordCount = 0 Then
213
        OraDatabase.Parameters.Add "PROJ_ID", parProjId,    ORAPARM_INPUT, ORATYPE_NUMBER
214
        Query_String = _
215
        " SELECT DISTINCT vi.view_id, vi.view_name"&_
216
        " FROM VIEWS vi, RELEASE_CONTENT rc, RELEASE_TAGS rt"&_
217
        " WHERE rc.BASE_VIEW_ID = vi.VIEW_ID AND rt.proj_id = "& parProjId &"AND rc.rtag_id = rt.rtag_id"&_
218
        " ORDER BY ( vi.view_name )"
157 ghuddy 219
 
5177 dpurdie 220
        Set rsQry = OraDatabase.DbCreateDynaset( Query_String , cint(0) )
157 ghuddy 221
 
5177 dpurdie 222
        OraDatabase.Parameters.Remove "PROJ_ID"
223
        viewRecordCount = rsQry.RecordCount
157 ghuddy 224
 
5177 dpurdie 225
        While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
226
           id=rsQry.Fields("view_id")
227
           rsQry.MoveNext
228
        WEnd
157 ghuddy 229
 
5177 dpurdie 230
        rsQry.Close()
231
        Set rsQry = nothing
232
     End If
157 ghuddy 233
 
5177 dpurdie 234
     If viewRecordCount = 0 Then
235
        Call OpenInWindow ( "form_edit_project_view.asp?proj_id="&parProjId)
236
     Else
237
        Call OpenInWindow ( "form_edit_project_view.asp?proj_id="&parProjId&"&FRview_id="&id)
238
     End If
119 ghuddy 239
End Sub
240
'----------------------------------------------------------------------------------------------------------------------------------------------
241
Function GetViewType ()
157 ghuddy 242
   Dim CookieViewType
243
 
244
   CookieViewType = Request.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("RELEASE_VIEW")
245
 
246
   If CookieViewType <> "" Then
247
      ' Get current view type from cookie
248
      GetViewType = CInt(CookieViewType)
249
   Else
250
      ' Set current view to list view
251
      Response.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("RELEASE_VIEW") = LCONST_LIST_VIEW
252
      GetViewType = LCONST_LIST_VIEW
253
   End If
254
 
119 ghuddy 255
End Function
256
'----------------------------------------------------------------------------------------------------------------------------------------------
257
Sub SetViewType ()
157 ghuddy 258
   If Request("viewtype") = "" Then Exit Sub    ' Nothing to do
259
 
260
   Response.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("RELEASE_VIEW") = Request("viewtype")
119 ghuddy 261
End Sub
262
'----------------------------------------------------------------------------------------------------------------------------------------------
5177 dpurdie 263
Sub RenderDaemonStatusConfig(nRtagId) 
5009 dpurdie 264
   %>
265
   <table class="embedded_table">
266
    <tr>
267
     <td>
268
     <%
5177 dpurdie 269
      Response.Write("<img src=""icons/i_edit.gif"" border=0 vspace=0 hspace=0 title='Configure Daemons' onclick='location.href=""release_config.asp?rtag_id="&nRtagId&"""'>")
270
      Response.Write("<img src=""icons/ext_log.gif"" border=0 vspace=0 hspace=0 title='View Build Log'onclick='location.href=""build_release_log.asp?rtag_id="&nRtagId&"""'>")
5009 dpurdie 271
     %>
272
     </td>
273
     <td>
274
   <%
5177 dpurdie 275
    Call objDmSts.RenderDaemonStatus(nRtagId,16)
5009 dpurdie 276
    %>
277
        </td>
278
        </tr>
279
        </table>
280
    <%
281
End Sub
5207 dpurdie 282
 
5177 dpurdie 283
'----------------------------------------------------------------------------------------------------------------------------------------------
5207 dpurdie 284
Sub RenderLxrState()
285
    If rsQry("lxr") = "Y" Then
286
        Dim lxrUrl : lxrUrl = LXR_URL & "/" & rsQry("rtag_id")
287
        Dim image : image = iif(NOT releaseIsClosed(rsQry("official")),"LXRlogo64.jpeg","LXRlogo64_off.jpeg")
288
        Response.Write("<a href='"&lxrUrl&"'><img src=""images/"&image&""" height=16 border=0 vspace=0 hspace=0 title='LXR Configured'></a>")
289
    End If
290
End Sub
291
'----------------------------------------------------------------------------------------------------------------------------------------------
5177 dpurdie 292
Function RenderActions(nRtagId, sOfficial)
5180 dpurdie 293
    Response.Write "<span title='Select operation from dropdown menu' class='select-operation ui-icon ui-icon-triangle-1-s' data-rtag-id='"&nRtagId&"' data-official='"&sOfficial&"' style='display:inline-block'></span>"
5177 dpurdie 294
End Function
295
'----------------------------------------------------------------------------------------------------------------------------------------------
296
Function GetMassRefComments (nRtagId)
297
   Dim UsedBy
298
   Dim rsQryUse
299
   Dim linkB
300
   Dim joiner : joiner = ""
301
   Dim comment : comment = ""
5009 dpurdie 302
 
5177 dpurdie 303
'   If parProjId <> 2 Then
304
'     assocMASSREF = rsQry("assoc_mass_ref")
305
'     If assocMASSREF <> "" Then
306
'        Set rsQryAssoc = OraDatabase.DbCreateDynaset("SELECT RTAG_NAME, RTAG_ID FROM RELEASE_TAGS WHERE RTAG_ID="&assocMASSREF , ORADYN_DEFAULT)
307
'        assocMASSREFName = rsQryAssoc("RTAG_NAME")
308
'        link = rsQryAssoc("rtag_id")
309
'        rsQryAssoc.Close
310
'        Set rsQryAssoc = Nothing
311
'     Else
312
'        assocMASSREFName = "None."
313
'     End If
314
'   Else
315
      UsedBy = nRtagId
316
      If UsedBy <> "" Then
317
         Set rsQryUse = OraDatabase.DbCreateDynaset("SELECT * FROM RELEASE_TAGS RT, PROJECTS P WHERE RT.ASSOC_MASS_REF=" & nRtagId & " AND RT.PROJ_ID=P.PROJ_ID", ORADYN_DEFAULT)
318
 
319
         While ((NOT rsQryUse.BOF) AND (NOT rsQryUse.EOF))
320
            If rsQryUse("assoc_mass_ref") = UsedBy Then
321
               linkB = "dependencies.asp?rtag_id="&rsQryUse("rtag_id")
322
               comment = joiner & rsQryUse("proj_name") & " -> <a href="&linkB&">"& rsQryUse("rtag_name") &"</a>"
323
               joiner = " <br> "
324
               rsQryUse.MoveNext
325
            End If
326
         WEnd
327
         rsQryUse.Close
328
         Set rsQryUse = Nothing
329
      End If
330
      GetMassRefComments = comment
331
End Function
5009 dpurdie 332
'----------------------------------------------------------------------------------------------------------------------------------------------
119 ghuddy 333
%>
334
<%
335
'------------ RUN BEFORE PAGE RENDER ----------
336
If (Request("action") <> "") Then
121 hknight 337
 
5177 dpurdie 338
   If Request("btn") = "Update" Then
157 ghuddy 339
      ' Store filter in cookie
340
      Response.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("show_filter") = Request("listFilter")
341
      parShowFilter = Request("listFilter")
5177 dpurdie 342
      If IsNull(parShowFilter) OR parShowFilter = "" Then parShowFilter = DEFAULT_SHOW_FILTER
157 ghuddy 343
   Else
344
      '-- Select Action
345
      Select Case Request("action")
5177 dpurdie 346
          Case "btnNewRelease"
347
             Call NewRelease()
121 hknight 348
 
5177 dpurdie 349
          Case "btnMergeManager"
350
             Call MergeManager()
121 hknight 351
 
5177 dpurdie 352
          Case "btnAdminView"
353
             Call AdminView()
157 ghuddy 354
      End Select
355
   End If
356
 
119 ghuddy 357
End If
358
 
5177 dpurdie 359
' Set view type  if required
119 ghuddy 360
Call SetViewType ()
361
 
362
' Get current view type
363
ViewType = GetViewType()
5177 dpurdie 364
bIsaTreeView = (ViewType = LCONST_TREE_VIEW)
157 ghuddy 365
 
119 ghuddy 366
'----------------------------------------------
367
%>
368
<html>
369
<head>
370
<%
5177 dpurdie 371
   Set rsQry = OraDatabase.DbCreateDynaset( "SELECT PROJ_NAME FROM PROJECTS WHERE PROJ_ID="& parProjId, ORADYN_DEFAULT )
119 ghuddy 372
%>
373
<title><%=rsQry("proj_name")%></title>
374
<%
157 ghuddy 375
   rsQry.Close
376
   Set rsQry = Nothing
119 ghuddy 377
%>
378
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
379
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
380
<link rel="stylesheet" href="images/release_manager_style.css" type="text/css">
381
<link rel="stylesheet" href="images/navigation.css" type="text/css">
382
<script language="JavaScript" src="images/common.js"></script>
383
 
384
<!-- DROPDOWN MENUS -->
385
<!--#include file="_menu_def.asp"-->
386
<script language="JavaScript1.2" src="images/popup_menu.js"></script>
387
 
5177 dpurdie 388
<!-- Dropdown action menu scripts -->
389
<style>
390
    .ui-menu { position: absolute; }
391
</style>
392
<!--#include file="_jquery_includes.asp"-->
393
<script>
394
    $(function() {
395
        // Global menu data structure
396
        //  Persist between invocations of the menu
397
        //      Used to mergeLeft rtagid
398
        //      Used to store current menu info
5178 dpurdie 399
        $.acData = {
5177 dpurdie 400
            //  Data
5178 dpurdie 401
            bCanOpenToClose                 : <%=iif(bCanOpenToClose          , "true", "false")%> ,             
402
            bCanRestrictiveToClose          : <%=iif(bCanRestrictiveToClose   , "true", "false")%> ,
403
            bCanCloseToClose                : <%=iif(bCanCloseToClose         , "true", "false")%> ,
404
            bCanPreserveToClose             : <%=iif(bCanPreserveToClose      , "true", "false")%> ,
405
            bCanArchiveToClose              : <%=iif(bCanArchiveToClose       , "true", "false")%> ,
406
 
407
            bCanOpenToPreserve              : <%=iif(bCanOpenToPreserve       , "true", "false")%> ,
408
            bCanRestrictiveToPreserve       : <%=iif(bCanRestrictiveToPreserve, "true", "false")%> ,
409
            bCanCloseToPreserve             : <%=iif(bCanCloseToPreserve      , "true", "false")%> ,
410
            bCanPreserveToPreserve          : <%=iif(bCanPreserveToPreserve   , "true", "false")%> ,
411
            bCanArchiveToPreserve           : <%=iif(bCanArchiveToPreserve    , "true", "false")%> ,
412
 
413
            bCanOpenToArchive               : <%=iif(bCanOpenToArchive        , "true", "false")%> ,
414
            bCanRestrictiveToArchive        : <%=iif(bCanRestrictiveToArchive , "true", "false")%> ,
415
            bCanCloseToArchive              : <%=iif(bCanCloseToArchive       , "true", "false")%> ,
416
            bCanPreserveToArchive           : <%=iif(bCanPreserveToArchive    , "true", "false")%> ,
417
            bCanArchiveToArchive            : <%=iif(bCanArchiveToArchive     , "true", "false")%> ,
418
            };
5177 dpurdie 419
 
5178 dpurdie 420
            // Convert from Release Mode to [canClose, canPreserve, canArchive]
421
        $.mode2access = {
422
 
423
            N: [$.acData.bCanOpenToClose,$.acData.bCanOpenToPreserve,$.acData.bCanOpenToArchive],
424
            R: [$.acData.bCanRestrictiveToClose,$.acData.bCanRestrictiveToPreserve,$.acData.bCanRestrictiveToArchive],
425
            C: [$.acData.bCanRestrictiveToClose,$.acData.bCanRestrictiveToPreserve,$.acData.bCanRestrictiveToArchive],
426
            Y: [$.acData.bCanCloseToClose,$.acData.bCanCloseToPreserve,$.acData.bCanCloseToArchive],
427
            O: [$.acData.bCanCloseToClose,$.acData.bCanCloseToPreserve,$.acData.bCanCloseToArchive],
428
            P: [$.acData.bCanPreserveToClose,$.acData.bCanPreserveToPreserve,$.acData.bCanPreserveToArchive],
429
            A: [$.acData.bCanArchiveToClose,$.acData.bCanArchiveToPreserve,$.acData.bCanArchiveToArchive],
430
 
431
            canAccess : function(state, index) {
432
                if ( this.hasOwnProperty(state)) {
433
                    return this[state][index];
434
                } else {
435
                    return false;
436
                }
437
            },
438
        };
439
 
440
        $.miniMenu = {
5180 dpurdie 441
            //  Data
442
 
5177 dpurdie 443
            //  Menu operations
5180 dpurdie 444
            open : function (data) {
5179 dpurdie 445
                //console.log("Opening:", data.rtagid);
5177 dpurdie 446
                this.gotoUrl("dependencies.asp", {rtag_id : data.rtagid});
447
             },
448
 
449
             edit : function (data) {
5179 dpurdie 450
                 //console.log("Editing:", data.rtagid);
5177 dpurdie 451
                 this.gotoUrl("form_edit_release.asp", {rtag_id : data.rtagid, rfile : "<%=ScriptName%>"});
452
             },
453
 
454
             mergeSelect : function (data) {
5179 dpurdie 455
                 //console.log("Merge from:", data.rtagid );
5180 dpurdie 456
                 $('#releaseTree .body_row_sel2').removeClass('body_row_sel2');
457
                 if (data.mergeLeft != data.rtagid) {
458
                     data.mergeLeft = data.rtagid;
459
                     $.miniMenu.currentRow.addClass('body_row_sel2');
460
                 } else {
461
                     delete(data.mergeLeft);
462
                 }
5177 dpurdie 463
             },
464
 
465
             merge : function (data) {
5179 dpurdie 466
                 //console.log ("Merge:", data.mergeLeft, data.rtagid);
5177 dpurdie 467
                 this.gotoUrl("diff.asp", { rtagA : data.mergeLeft, rtagB : data.rtagid});
468
             },
469
 
470
             close : function (data) {
5179 dpurdie 471
                 //console.log("Closing:", data.rtagid);
5177 dpurdie 472
                 this.gotoUrl("_change_release_mode.asp", {rtag_id : data.rtagid, mode_code : 3 , rfile : "<%=ScriptName%>"});
473
             },
474
 
475
             preserve : function (data) {
5179 dpurdie 476
                 //console.log("Preserving:", data.rtagid);
5177 dpurdie 477
                 this.gotoUrl("_change_release_mode.asp", {rtag_id : data.rtagid, mode_code : 6 , rfile : "<%=ScriptName%>"});
478
             },
479
 
480
             archive : function (data) {
5179 dpurdie 481
                 //console.log("Archiving:", data.rtagid);
5177 dpurdie 482
                 this.gotoUrl("_change_release_mode.asp", {rtag_id : data.rtagid, mode_code : 5 , rfile : "<%=ScriptName%>"});
483
             },
484
<%If bCanDestroy Then%>
485
             delete : function (data) {
5179 dpurdie 486
                 //console.log("Delete:", data.rtagid);
5184 dpurdie 487
                 $.miniMenu.currentRow.addClass('body_row_sel_outline');
5177 dpurdie 488
                 var that = this;
5184 dpurdie 489
                 var delObject = $.Deferred(that.confirmDelete
490
                 ).done(function(){
5177 dpurdie 491
                     that.gotoUrl("_destroy_release.asp", {rtag_id_list : data.rtagid, proj_id : <%=parProjId%>, rfile : "<%=ScriptName%>"});
5184 dpurdie 492
                 }).fail(function(){
5183 dpurdie 493
                     $('#releaseTree .body_row_sel_outline').removeClass('body_row_sel_outline');
5177 dpurdie 494
                 });
495
             },
496
<%End If%>
497
<%If bCanMove Then%>
498
             move : function (data) {
5179 dpurdie 499
                 //console.log("Move:", data.rtagid);
5177 dpurdie 500
                 this.gotoUrl("form_move_release.asp", { rtag_id_list : data.rtagid, proj_id : <%=parProjId%> });
501
             },
502
<%End If%>
503
<%If bCanClone Then%>
504
             clone : function(data) {
5179 dpurdie 505
                 //console.log("Clone:", data.rtagid);
5184 dpurdie 506
                 this.gotoUrl("new_release.asp", { rtag_id_list : data.rtagid, proj_id : <%=parProjId%>, branch : "Y" });
5177 dpurdie 507
             },
508
<%End If%>
509
 
510
             //
511
             // Internal functions
512
             // Goto url, or open in new tab
513
             gotoUrl: function (url, params)
514
             {
515
                 // Open in new tab - not as simple as it sounds
516
                 // Need to create a form and submit it
5245 dpurdie 517
                 if(this.event.shiftKey){
5177 dpurdie 518
                     var form = $('<form>',{
519
                         action : url,
520
                         target : '_blank',
521
                         //method : 'GET'
522
                         });
523
 
524
                     $.each(params,function(n,v){
525
                         var item = $('<input>',{
526
                             name : n,
527
                             value : v
528
                         });
529
                         form.append(item);
530
                        });
531
 
532
 
533
                     form.appendTo(document.body);
534
                     form.submit();
535
                     form.remove();
536
                 }
537
                 else {
538
                     if (params)
539
                         url += '?' + jQuery.param(params)
540
                     window.location.href = url;
541
                 }
542
             },
543
 
544
             // Confirm action
5184 dpurdie 545
             //     Delegate Object
546
             confirmDelete : function(dbo){
5177 dpurdie 547
                 $( "<div>Are you sure</div>" ).dialog({
548
                    resizable: true,
549
                    height:170,
550
                    width : 300,
551
                    modal: true,
552
                    position: { my: "top", at: "top+100", of: window },
553
                    title:'Destroy Release',
554
                    open: function() {
555
                        $(this).siblings('.ui-dialog-buttonpane').find('button:eq(1)').focus(); 
556
                        var markup = '<p><img src="images/i_critical.gif" style="float:left; margin:0 7px 20px 0;">This Release will be permanently destroyed.<p>Are you sure?';
557
                        $(this).html(markup);
558
                    },
559
                    close : function() {
560
                        $(this).remove();
5184 dpurdie 561
                        dbo.reject();
5177 dpurdie 562
                    },
563
                    buttons: {
564
                        "Destroy Release": function() {
5184 dpurdie 565
                            dbo.resolve();
5177 dpurdie 566
                            $(this).dialog("close");
567
                        },
568
                        Cancel: function() {
569
                            $(this).dialog("close");
570
                        }
571
                    }
572
                 });
573
             },
574
 
575
    };
576
 
5180 dpurdie 577
    // Create and Hide the Menu
5177 dpurdie 578
    $( "#select-menu" ).hide().menu();
579
 
580
    // Register menuselect event handler
581
    $( "#select-menu" ).on( "menuselect", function( event, ui ) {
582
       var opr = ui.item.data('opr');
583
 
584
        // Invoke operation within the menu data structure
585
        if (typeof $.miniMenu[opr] == 'function' ) {
5180 dpurdie 586
            $.miniMenu['event'] = event;
5177 dpurdie 587
            $.miniMenu[opr]($.miniMenu);
588
            return;
589
        }
5179 dpurdie 590
        //console.log ("Menu Operation:", opr, "Not found");
5177 dpurdie 591
    });
592
 
5179 dpurdie 593
 
5177 dpurdie 594
    // Add menu to all require instances
5180 dpurdie 595
   $( ".select-operation" ).click(function(event) {
5177 dpurdie 596
        // When clicked - create and show the menu
597
        // Insert rtag-id
598
 
5179 dpurdie 599
       // In order to have the menu positioing work correctly
600
       //   Create a div that covers the visible screen area
601
       //   Us it within the menu poistioning
602
       //   Then delete it again
603
       var positionDiv = $( "<div></div>" ).css({
604
               position: 'absolute', 
605
               top : $(document).scrollTop(), 
606
               left : $(document).scrollLeft(),
607
               width: '100vw',
608
               height: '100vh',
609
               'z-index' : -1,
610
           });
611
       positionDiv.appendTo(document.body);
612
 
5177 dpurdie 613
        //  Create the menu
614
        var menu = $("#select-menu").show().position({
5180 dpurdie 615
             my: "left top",
616
             at: "center bottom",
617
             of: this,
618
             within : positionDiv,
5179 dpurdie 619
        });
5177 dpurdie 620
 
5179 dpurdie 621
        // Cleanup the poistioning div
622
        positionDiv.remove();
623
 
5177 dpurdie 624
        // Setup global data
625
        $.miniMenu.rtagid = $(this).data('rtag-id');
626
 
627
        // Set initial menu state - merge target
628
        $('#select-menu-merge').toggleClass('ui-state-disabled',!('mergeLeft' in $.miniMenu ));
629
 
630
        // Set initial state close/archive
631
        //
632
        var official = $(this).data('official');
5178 dpurdie 633
        $('#select-menu-close').toggleClass('ui-state-disabled',! $.mode2access.canAccess(official,0));
634
        $('#select-menu-preserve').toggleClass('ui-state-disabled',!$.mode2access.canAccess(official,1));
635
        $('#select-menu-archive').toggleClass('ui-state-disabled',! $.mode2access.canAccess(official,2));
5177 dpurdie 636
 
5180 dpurdie 637
        // Highlight the row selected
638
        $('#releaseTree .body_row_sel').removeClass('body_row_sel');
639
        $.miniMenu.currentRow = $(event.target).closest('tr').addClass('body_row_sel');
640
 
641
        // Allow click outside of the menu to close it
642
        $( document ).one( "click", function() {
643
            menu.hide();
644
            $('#releaseTree .body_row_sel').removeClass('body_row_sel');
645
        });
646
 
647
 
5177 dpurdie 648
        // Prevent propagation of event
649
        return false;
650
    });
651
});
652
</script>
653
 
119 ghuddy 654
</head>
655
<body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0" >
656
<!-- MENU LAYERS -------------------------------------->
157 ghuddy 657
<div id="popmenu" class="menuskin" onMouseover="clearhidemenu();highlightmenu(event,'on')" onMouseout="highlightmenu(event,'off');dynamichide(event)">
119 ghuddy 658
</div>
659
<!-- TIPS LAYERS -------------------------------------->
660
<div id="formTipsLayer" style="position: absolute; z-index: 1000; visibility: hidden; left:0; top: 0; width: 10">&nbsp;</div>
661
<!----------------------------------------------------->
662
<!-- HEADER -->
663
<!--#include file="_header.asp"-->
664
<!-- BODY ---->
665
 
5177 dpurdie 666
<%Call GetListFilterValues ( dListFilter )%>
667
 
668
<form name="FormName" method="post" action="<%=ScriptName%>">
119 ghuddy 669
<table width="100%" border="0" cellspacing="0" cellpadding="0">
157 ghuddy 670
   <tr>
5177 dpurdie 671
      <td width="1" background="images/bg_home_orange.gif" valign="top">
672
         <!-- ICON STATUS and FILTER -------------------------------------->
673
         <table width="118" border="0" align="left" style="margin-top: 38px;">
674
            <tr>
675
               <td bgcolor="#E4E9EC" width="26"><span class="body_txt">Icon</span></td>
676
               <td bgcolor="#E4E9EC" width="82"><span class="body_txt">Release State </span></td>
677
            </tr>
678
            <tr>
679
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_open_mode.gif" width="15" height="13"></td>
680
               <td bgcolor="#F5F5F5"><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_OPEN_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_OPEN_MODE)%>>Open Mode</span></td>
681
            </tr>
682
            <tr>
683
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_restrictive_mode.gif" width="15" height="15"></td>
684
               <td nowrap bgcolor="#F5F5F5"><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_RESTRICTIVE_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_RESTRICTIVE_MODE)%>>Restrictive Mode</span></td>
685
            </tr>
686
            <tr>
687
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_ccb_mode.gif" width="15" height="15"></td>
688
               <td bgcolor="#F5F5F5"><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_CCB_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_CCB_MODE)%>>CCB Mode</span></td>
689
            </tr>
690
            <tr>
691
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_closed_mode.gif" width="15" height="14"></td>
692
               <td bgcolor="#F5F5F5"><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_CLOSED_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_CLOSED_MODE)%>>Closed Mode</span></td>
693
            </tr>
694
            <tr>
695
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_closed_mode_warn.gif" width="15" height="14"></td>
696
               <td bgcolor="#F5F5F5"><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_CLOSED_WARN%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_CLOSED_WARN)%>>Closed Aged</span></td>
697
            </tr>
698
            <tr>
699
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_preserve_mode.gif" width="15" height="14"></td>
700
               <td bgcolor="#F5F5F5"><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_PRESERVE_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_PRESERVE_MODE)%>>Preserve Mode</span></td>
701
            </tr>
702
            <tr>
703
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_archive_mode.gif" width="15" height="14"></td>
704
               <td bgcolor="#F5F5F5"><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_ARCHIVE_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_ARCHIVE_MODE)%>>Archive Mode</span></td>
705
            </tr>
706
            <%If NOT bIsaTreeView Then%>
707
             <tr>
708
                <td>&nbsp;</td>
709
                <td><input name="btn" type="submit" class="form_btn" value="Update"></td>
710
             </tr>
711
             <%End If%>
712
         </table>
713
      </td>
157 ghuddy 714
      <td rowspan="2" valign="top" width="100%">
715
         <!-- ACTION BUTTONS ---------------------------------------------->
5177 dpurdie 716
         <table width="100%"  border="0" cellspacing="0" cellpadding="7" style="background-color:#DAD7C8">
157 ghuddy 717
            <tr>
5177 dpurdie 718
               <td width="1">
157 ghuddy 719
                  <%
5177 dpurdie 720
                  If bIsaTreeView Then
157 ghuddy 721
                     Response.write LIMG_TREE_VIEW
722
                  Else
723
                     Response.write LIMG_LIST_VIEW
724
                  End If
725
                  %>
726
               </td>
5177 dpurdie 727
               <td width="100%">
157 ghuddy 728
                  <%
729
                  Dim aBtnsDef
730
                  ' Define action buttons
5177 dpurdie 731
                  aBtnsDef = Array("btnNewRelease", "width=5", "btnMergeManager", "width=5", "btnAdminView")
119 ghuddy 732
 
157 ghuddy 733
                  ' Load action buttons from database
734
                  Call objBtnControl.LoadActionButtons ( aBtnsDef, OraDatabase )
119 ghuddy 735
 
157 ghuddy 736
                  ' Set spacing to minimum between buttons
737
                  objBtnControl.ButtonSpacer = 0
738
                  objBtnControl.ImageHspace = 2
119 ghuddy 739
 
157 ghuddy 740
                  ' Access Control
5061 dpurdie 741
                  If NOT canActionControlInProject("CreateNewRelease") Then Call objBtnControl.Active ( "btnNewRelease", "N" )
742
                  If NOT canActionControlInProject("ConfigureRelease") Then Call objBtnControl.Active ( "btnMoveRelease", "N" )
119 ghuddy 743
 
157 ghuddy 744
                  ' -- Render Buttons
745
                  Call objBtnControl.Render  ( aBtnsDef, objAccessControl )
746
                  %>
747
               </td>
748
            </tr>
749
         </table>
750
         <!-- ACTION BUTTONS END  ------------------------------------------>
5177 dpurdie 751
         <!-- RELEASE INFORMATION  ----------------------------------------->
5180 dpurdie 752
         <table id=releaseTree width="100%"  border="0" cellspacing="10" cellpadding="0">
157 ghuddy 753
               <tr>
754
                  <td>
755
                     <!-- TREE VIEW ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
5177 dpurdie 756
                     <%If bIsaTreeView Then%>
157 ghuddy 757
                        <table width="100%"  border="0" cellspacing="1" cellpadding="1">
5182 dpurdie 758
                           <tr class='form_field_bg' style="height:21px">
5180 dpurdie 759
                              <td width="25%" class="body_txt">Release Name </td>
119 ghuddy 760
 
157 ghuddy 761
                              <%If parProjId <> 2 Then %>
5180 dpurdie 762
                                 <td width="15%" class="body_txt">Created</td>
763
                                 <td width="47%" class="body_txt">Comments</td>
157 ghuddy 764
                              <%Else%>
5180 dpurdie 765
                                 <td width="15%" class="body_txt">Created</td>
766
                                 <td width="25%" class="body_txt">Used By </td>
767
                                 <td width="22%" class="body_txt">Comments</td>
157 ghuddy 768
                              <%End If%>
5207 dpurdie 769
                           <td width="1%" nowrap class="body_txt">Lxr</td>
5182 dpurdie 770
                           <td width="3%" nowrap class="body_txt">Daemon&nbsp;Status</td>
157 ghuddy 771
                           </tr>
772
                           <%
773
                           OraDatabase.Parameters.Add "PROJ_ID",  parProjId,  ORAPARM_INPUT, ORATYPE_NUMBER
774
 
775
                           Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("ReleaseVersionTree.sql") , ORADYN_DEFAULT )
776
                           lastLevel = 0
777
 
778
                           OraDatabase.Parameters.Remove "PROJ_ID"
779
 
780
                           Dim lastRtagId, parentRtag_id
781
 
782
                           If rsQry.RecordCount > 0 Then
783
 
183 brianf 784
                              Set objDmSts = New DaemonStatus
785
                              Call objDmSts.GetDaemonStatus(parProjId)
786
 
157 ghuddy 787
                              While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
788
                                 currLevel = CInt(rsQry("hierarchy"))
4080 dpurdie 789
                                 hoverTitle = "Last change: "& rsQry("OFFICIAL_STAMP") & " by " & rsQry("modifier")
5177 dpurdie 790
                                 createdBy = rsQry("created_stamp") & " by " & rsQry("creator") 
4080 dpurdie 791
 
157 ghuddy 792
                                 %>
5180 dpurdie 793
                                 <tr class="body_rowg2">
794
                                    <td nowrap>
157 ghuddy 795
                                       <%Call RenderIndent( lastLevel, currLevel )%>
5177 dpurdie 796
                                       <%Call RenderActions(rsQry("rtag_id"),rsQry("official"))%>
4080 dpurdie 797
                                       <a href="dependencies.asp?rtag_id=<%=rsQry("rtag_id")%>" class="body_link" title="<%=hoverTitle%>" >
157 ghuddy 798
                                       <%=ReleaseIcon( rsQry("official") )%>&nbsp;<%=rsQry("rtag_name")%></a>
5177 dpurdie 799
                                    </td>
5180 dpurdie 800
                                    <td nowrap valign=top"><%=createdBy%></td>
5177 dpurdie 801
                                    <%
802
                                    If parProjId = 2 Then
803
                                       comment = GetMassRefComments(rsQry("rtag_id"))
804
                                       If comment = "" Then comment = "None."
805
                                       %>
5180 dpurdie 806
                                       <td><%=comment%></td>
5177 dpurdie 807
                                    <%End If%>
157 ghuddy 808
 
5180 dpurdie 809
                                    <td><%=NewLine_To_BR(rsQry("description"))%></td>
5207 dpurdie 810
                                    <td nowrap valign="top"><%Call RenderLxrState() %></td>
811
                                    <td valign="top"><%Call RenderDaemonStatusConfig(rsQry("rtag_id"))%></td>
157 ghuddy 812
                                 </tr>
813
                                 <%
814
                                 lastLevel = currLevel
815
                                 rsQry.MoveNext
816
                              WEnd
183 brianf 817
                              Set objDmSts = Nothing
157 ghuddy 818
                           End If
819
                           rsQry.Close
820
                           Set rsQry = Nothing
821
                           %>
822
                        </table>
823
                     <!-- LIST VIEW ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
824
                     <%Else%>
5177 dpurdie 825
                        <table width="100%"  border="0" cellspacing="1" cellpadding="1">
5180 dpurdie 826
                           <tr class='form_field_bg'>
827
                              <td width="1%">&nbsp;</td>
828
                              <td width="20%" class="body_txt">Release Name </td>
829
                              <td width="10%" class="body_txt">Created</td>
157 ghuddy 830
                              <%If parProjId <> 2 Then %>
5180 dpurdie 831
                                 <td width="47%" class="body_txt">Comments</td>
157 ghuddy 832
                              <%Else%>
5180 dpurdie 833
                                 <td width="24%" class="body_txt">Used By </td>
834
                                 <td width="22%" class="body_txt">Comments</td>
157 ghuddy 835
                              <%End If%>
5207 dpurdie 836
                              <td width="1%" class="body_txt" title="LXR Support enabled">Lxr</td>
5180 dpurdie 837
                              <td width="3%" class="body_txt">Daemon Status</td>
157 ghuddy 838
                           </tr>
839
                           <%
840
                              OraDatabase.Parameters.Add "PROJ_ID",  parProjId,  ORAPARM_INPUT, ORATYPE_NUMBER
841
 
842
                              rsQryStr = GetQuery ("ReleaseVersionList.sql")
843
                              rsQryStr = Replace(rsQryStr, "/*SHOW_FILTER*/", parShowFilter)
844
 
845
                              Set rsQry = OraDatabase.DbCreateDynaset( rsQryStr, ORADYN_DEFAULT )
846
 
847
                              OraDatabase.Parameters.Remove "PROJ_ID"
848
 
849
                              If rsQry.RecordCount > 0 Then
850
 
183 brianf 851
                                 Set objDmSts = New DaemonStatus
852
                                 Call objDmSts.GetDaemonStatus(parProjId)
853
 
5177 dpurdie 854
                                 While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
855
                                    hoverTitle = "Last change: "& rsQry("OFFICIAL_STAMP") & " by " & rsQry("modifier") & ". " & rsQry("OFFICIAL_STAMP_DAYS")& " Days ago"
856
                                    createdBy = rsQry("created_stamp") & " by " & rsQry("creator")
157 ghuddy 857
 
858
                                    %>
5180 dpurdie 859
                                    <tr class="body_rowg2">
860
                                       <td valign="top">
5177 dpurdie 861
                                          <%Call RenderActions(rsQry("rtag_id"),rsQry("official"))%>
157 ghuddy 862
                                       </td>
5180 dpurdie 863
                                       <td nowrap valign="top">
5177 dpurdie 864
                                          <a href="dependencies.asp?rtag_id=<%=rsQry("rtag_id")%>" class="body_link" title="<%=hoverTitle%>">
865
                                          <%=ReleaseIcon( rsQry("official"))%>&nbsp;<%=rsQry("rtag_name")%></a>
157 ghuddy 866
                                       </td>
5180 dpurdie 867
                                       <td nowrap  valign=top><%=createdBy%></td>
157 ghuddy 868
                                       <%
5177 dpurdie 869
                                       If parProjId = 2 Then
870
                                          comment = GetMassRefComments(rsQry("rtag_id"))
871
                                          If comment = "" Then comment = "None."
157 ghuddy 872
                                          %>
5180 dpurdie 873
                                            <td><%=comment%></td>
157 ghuddy 874
                                       <%End If%>
5180 dpurdie 875
                                       <td><%=NewLine_To_BR(  rsQry("description")   )%></td>
5207 dpurdie 876
                                       <td nowrap valign="top"><%Call RenderLxrState() %></td>
877
                                       <td valign="top"><%Call RenderDaemonStatusConfig(rsQry("rtag_id"))%>
183 brianf 878
                                       </td>
157 ghuddy 879
                                    </tr>
880
                                    <%
5177 dpurdie 881
                                    rsQry.MoveNext
882
                                 WEnd
183 brianf 883
                                 Set objDmSts = Nothing
157 ghuddy 884
                              End If
885
                              rsQry.Close
886
                              Set rsQry = Nothing
5177 dpurdie 887
                              %>
157 ghuddy 888
                        </table>
889
                     <%End If%>
890
                     <!-- LIST VIEW END ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
5184 dpurdie 891
                     <%=objPMod.ComposeHiddenTags()%>
892
                     <input type="hidden" name="action" value="true">
893
                     </form>
894
                     <!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->
895
                     <!--#include file="messages/_msg_inline.asp"-->
896
                     <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
157 ghuddy 897
                  </td>
898
               </tr>
899
         </table>
900
      </td>
901
      <td width="1" valign="top"><img src="images/h_trsp_dot.gif" width="1" height="1"></td>
902
   </tr>
903
   <tr>
5177 dpurdie 904
      <td valign="bottom" align="center" background="images/bg_home_orange.gif">
905
      </td>
157 ghuddy 906
   </tr>
119 ghuddy 907
</table>
5177 dpurdie 908
<!-- Dropdown Menu -->
5179 dpurdie 909
<div id=testdiv></div>
5177 dpurdie 910
<div >
911
  <ul id="select-menu" style="display:none;">
912
   <li data-opr="open" title="Goto this Release">Open ...</li>
913
    <li data-opr="edit" title="Edit the properties of the Release">Edit Properties</li>
914
    <li <%=iif(bCanMove,"data-opr=move","class=ui-state-disabled")%> title="Change the order in which releases are displayed">Change display order</li>
915
    <li>-</li>
5178 dpurdie 916
    <li data-opr="mergeSelect" title="Select as the source (left side) of a merge or comparison">Select for Merge/Diff</li>
917
    <li id="select-menu-merge" data-opr="merge" title="Merge or Compare from selected release to this release">Merge/Diff from selected</li>
5177 dpurdie 918
    <li>-</li>
919
    <li id="select-menu-close" data-opr="close">Close Release</li>
920
    <li id="select-menu-preserve" data-opr="preserve" >Preserve Release</li>
921
    <li id="select-menu-archive" data-opr="archive" >Archive Release</li>
922
    <li>-</li>
923
    <li <%=iif(bCanClone,"data-opr=clone","class=ui-state-disabled")%> title="Create a new Release based on selected Release">Clone Release</li>
924
    <li>-</li>
925
    <li <%=iif(bCanDestroy,"data-opr=delete","class=ui-state-disabled")%>  title="Delete the selected Release">Destroy Release</li>
926
    <li>-</li>
927
    <li>Close Menu</li>
928
  </ul>
929
</div>
119 ghuddy 930
<!-- FOOTER -->
931
<!--#include file="_footer.asp"-->
932
<map name="mapviewtype">
933
  <area shape="rect" coords="2,2,69,23" href="<%=ScriptName%>?viewtype=1&<%=objPMod.ComposeURL()%>" title="Switch to List View">
934
  <area shape="rect" coords="73,2,143,23" href="<%=ScriptName%>?viewtype=2&<%=objPMod.ComposeURL()%>" title="Switch to Tree View">
935
</map>
936
</body>
937
</html>
938
<%
939
Call Destroy_All_Objects
157 ghuddy 940
%>