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
5177 dpurdie 282
'----------------------------------------------------------------------------------------------------------------------------------------------
283
Function RenderActions(nRtagId, sOfficial)
5180 dpurdie 284
    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 285
End Function
286
'----------------------------------------------------------------------------------------------------------------------------------------------
287
Function GetMassRefComments (nRtagId)
288
   Dim UsedBy
289
   Dim rsQryUse
290
   Dim linkB
291
   Dim joiner : joiner = ""
292
   Dim comment : comment = ""
5009 dpurdie 293
 
5177 dpurdie 294
'   If parProjId <> 2 Then
295
'     assocMASSREF = rsQry("assoc_mass_ref")
296
'     If assocMASSREF <> "" Then
297
'        Set rsQryAssoc = OraDatabase.DbCreateDynaset("SELECT RTAG_NAME, RTAG_ID FROM RELEASE_TAGS WHERE RTAG_ID="&assocMASSREF , ORADYN_DEFAULT)
298
'        assocMASSREFName = rsQryAssoc("RTAG_NAME")
299
'        link = rsQryAssoc("rtag_id")
300
'        rsQryAssoc.Close
301
'        Set rsQryAssoc = Nothing
302
'     Else
303
'        assocMASSREFName = "None."
304
'     End If
305
'   Else
306
      UsedBy = nRtagId
307
      If UsedBy <> "" Then
308
         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)
309
 
310
         While ((NOT rsQryUse.BOF) AND (NOT rsQryUse.EOF))
311
            If rsQryUse("assoc_mass_ref") = UsedBy Then
312
               linkB = "dependencies.asp?rtag_id="&rsQryUse("rtag_id")
313
               comment = joiner & rsQryUse("proj_name") & " -> <a href="&linkB&">"& rsQryUse("rtag_name") &"</a>"
314
               joiner = " <br> "
315
               rsQryUse.MoveNext
316
            End If
317
         WEnd
318
         rsQryUse.Close
319
         Set rsQryUse = Nothing
320
      End If
321
      GetMassRefComments = comment
322
End Function
5009 dpurdie 323
'----------------------------------------------------------------------------------------------------------------------------------------------
119 ghuddy 324
%>
325
<%
326
'------------ RUN BEFORE PAGE RENDER ----------
327
If (Request("action") <> "") Then
121 hknight 328
 
5177 dpurdie 329
   If Request("btn") = "Update" Then
157 ghuddy 330
      ' Store filter in cookie
331
      Response.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("show_filter") = Request("listFilter")
332
      parShowFilter = Request("listFilter")
5177 dpurdie 333
      If IsNull(parShowFilter) OR parShowFilter = "" Then parShowFilter = DEFAULT_SHOW_FILTER
157 ghuddy 334
   Else
335
      '-- Select Action
336
      Select Case Request("action")
5177 dpurdie 337
          Case "btnNewRelease"
338
             Call NewRelease()
121 hknight 339
 
5177 dpurdie 340
          Case "btnMergeManager"
341
             Call MergeManager()
121 hknight 342
 
5177 dpurdie 343
          Case "btnAdminView"
344
             Call AdminView()
157 ghuddy 345
      End Select
346
   End If
347
 
119 ghuddy 348
End If
349
 
5177 dpurdie 350
' Set view type  if required
119 ghuddy 351
Call SetViewType ()
352
 
353
' Get current view type
354
ViewType = GetViewType()
5177 dpurdie 355
bIsaTreeView = (ViewType = LCONST_TREE_VIEW)
157 ghuddy 356
 
119 ghuddy 357
'----------------------------------------------
358
%>
359
<html>
360
<head>
361
<%
5177 dpurdie 362
   Set rsQry = OraDatabase.DbCreateDynaset( "SELECT PROJ_NAME FROM PROJECTS WHERE PROJ_ID="& parProjId, ORADYN_DEFAULT )
119 ghuddy 363
%>
364
<title><%=rsQry("proj_name")%></title>
365
<%
157 ghuddy 366
   rsQry.Close
367
   Set rsQry = Nothing
119 ghuddy 368
%>
369
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
370
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
371
<link rel="stylesheet" href="images/release_manager_style.css" type="text/css">
372
<link rel="stylesheet" href="images/navigation.css" type="text/css">
373
<script language="JavaScript" src="images/common.js"></script>
374
 
375
<!-- DROPDOWN MENUS -->
376
<!--#include file="_menu_def.asp"-->
377
<script language="JavaScript1.2" src="images/popup_menu.js"></script>
378
 
5177 dpurdie 379
<!-- Dropdown action menu scripts -->
380
<style>
381
    .ui-menu { position: absolute; }
382
</style>
383
<!--#include file="_jquery_includes.asp"-->
384
<script>
385
    $(function() {
386
        // Global menu data structure
387
        //  Persist between invocations of the menu
388
        //      Used to mergeLeft rtagid
389
        //      Used to store current menu info
5178 dpurdie 390
        $.acData = {
5177 dpurdie 391
            //  Data
5178 dpurdie 392
            bCanOpenToClose                 : <%=iif(bCanOpenToClose          , "true", "false")%> ,             
393
            bCanRestrictiveToClose          : <%=iif(bCanRestrictiveToClose   , "true", "false")%> ,
394
            bCanCloseToClose                : <%=iif(bCanCloseToClose         , "true", "false")%> ,
395
            bCanPreserveToClose             : <%=iif(bCanPreserveToClose      , "true", "false")%> ,
396
            bCanArchiveToClose              : <%=iif(bCanArchiveToClose       , "true", "false")%> ,
397
 
398
            bCanOpenToPreserve              : <%=iif(bCanOpenToPreserve       , "true", "false")%> ,
399
            bCanRestrictiveToPreserve       : <%=iif(bCanRestrictiveToPreserve, "true", "false")%> ,
400
            bCanCloseToPreserve             : <%=iif(bCanCloseToPreserve      , "true", "false")%> ,
401
            bCanPreserveToPreserve          : <%=iif(bCanPreserveToPreserve   , "true", "false")%> ,
402
            bCanArchiveToPreserve           : <%=iif(bCanArchiveToPreserve    , "true", "false")%> ,
403
 
404
            bCanOpenToArchive               : <%=iif(bCanOpenToArchive        , "true", "false")%> ,
405
            bCanRestrictiveToArchive        : <%=iif(bCanRestrictiveToArchive , "true", "false")%> ,
406
            bCanCloseToArchive              : <%=iif(bCanCloseToArchive       , "true", "false")%> ,
407
            bCanPreserveToArchive           : <%=iif(bCanPreserveToArchive    , "true", "false")%> ,
408
            bCanArchiveToArchive            : <%=iif(bCanArchiveToArchive     , "true", "false")%> ,
409
            };
5177 dpurdie 410
 
5178 dpurdie 411
            // Convert from Release Mode to [canClose, canPreserve, canArchive]
412
        $.mode2access = {
413
 
414
            N: [$.acData.bCanOpenToClose,$.acData.bCanOpenToPreserve,$.acData.bCanOpenToArchive],
415
            R: [$.acData.bCanRestrictiveToClose,$.acData.bCanRestrictiveToPreserve,$.acData.bCanRestrictiveToArchive],
416
            C: [$.acData.bCanRestrictiveToClose,$.acData.bCanRestrictiveToPreserve,$.acData.bCanRestrictiveToArchive],
417
            Y: [$.acData.bCanCloseToClose,$.acData.bCanCloseToPreserve,$.acData.bCanCloseToArchive],
418
            O: [$.acData.bCanCloseToClose,$.acData.bCanCloseToPreserve,$.acData.bCanCloseToArchive],
419
            P: [$.acData.bCanPreserveToClose,$.acData.bCanPreserveToPreserve,$.acData.bCanPreserveToArchive],
420
            A: [$.acData.bCanArchiveToClose,$.acData.bCanArchiveToPreserve,$.acData.bCanArchiveToArchive],
421
 
422
            canAccess : function(state, index) {
423
                if ( this.hasOwnProperty(state)) {
424
                    return this[state][index];
425
                } else {
426
                    return false;
427
                }
428
            },
429
        };
430
 
431
        $.miniMenu = {
5180 dpurdie 432
            //  Data
433
 
5177 dpurdie 434
            //  Menu operations
5180 dpurdie 435
            open : function (data) {
5179 dpurdie 436
                //console.log("Opening:", data.rtagid);
5177 dpurdie 437
                this.gotoUrl("dependencies.asp", {rtag_id : data.rtagid});
438
             },
439
 
440
             edit : function (data) {
5179 dpurdie 441
                 //console.log("Editing:", data.rtagid);
5177 dpurdie 442
                 this.gotoUrl("form_edit_release.asp", {rtag_id : data.rtagid, rfile : "<%=ScriptName%>"});
443
             },
444
 
445
             mergeSelect : function (data) {
5179 dpurdie 446
                 //console.log("Merge from:", data.rtagid );
5180 dpurdie 447
                 $('#releaseTree .body_row_sel2').removeClass('body_row_sel2');
448
                 if (data.mergeLeft != data.rtagid) {
449
                     data.mergeLeft = data.rtagid;
450
                     $.miniMenu.currentRow.addClass('body_row_sel2');
451
                 } else {
452
                     delete(data.mergeLeft);
453
                 }
5177 dpurdie 454
             },
455
 
456
             merge : function (data) {
5179 dpurdie 457
                 //console.log ("Merge:", data.mergeLeft, data.rtagid);
5177 dpurdie 458
                 this.gotoUrl("diff.asp", { rtagA : data.mergeLeft, rtagB : data.rtagid});
459
             },
460
 
461
             close : function (data) {
5179 dpurdie 462
                 //console.log("Closing:", data.rtagid);
5177 dpurdie 463
                 this.gotoUrl("_change_release_mode.asp", {rtag_id : data.rtagid, mode_code : 3 , rfile : "<%=ScriptName%>"});
464
             },
465
 
466
             preserve : function (data) {
5179 dpurdie 467
                 //console.log("Preserving:", data.rtagid);
5177 dpurdie 468
                 this.gotoUrl("_change_release_mode.asp", {rtag_id : data.rtagid, mode_code : 6 , rfile : "<%=ScriptName%>"});
469
             },
470
 
471
             archive : function (data) {
5179 dpurdie 472
                 //console.log("Archiving:", data.rtagid);
5177 dpurdie 473
                 this.gotoUrl("_change_release_mode.asp", {rtag_id : data.rtagid, mode_code : 5 , rfile : "<%=ScriptName%>"});
474
             },
475
<%If bCanDestroy Then%>
476
             delete : function (data) {
5179 dpurdie 477
                 //console.log("Delete:", data.rtagid);
5177 dpurdie 478
                 var that = this;
5183 dpurdie 479
                 $.miniMenu.currentRow.addClass('body_row_sel_outline');
5177 dpurdie 480
                 this.confirmDelete(function(){
481
                     that.gotoUrl("_destroy_release.asp", {rtag_id_list : data.rtagid, proj_id : <%=parProjId%>, rfile : "<%=ScriptName%>"});
5183 dpurdie 482
                 }, function(){
483
                     $('#releaseTree .body_row_sel_outline').removeClass('body_row_sel_outline');
5177 dpurdie 484
                 });
485
             },
486
<%End If%>
487
<%If bCanMove Then%>
488
             move : function (data) {
5179 dpurdie 489
                 //console.log("Move:", data.rtagid);
5177 dpurdie 490
                 this.gotoUrl("form_move_release.asp", { rtag_id_list : data.rtagid, proj_id : <%=parProjId%> });
491
             },
492
<%End If%>
493
<%If bCanClone Then%>
494
             clone : function(data) {
5179 dpurdie 495
                 //console.log("Clone:", data.rtagid);
5177 dpurdie 496
                 this.gotoUrl("new_release.asp", { rtag_id_list : data.rtagid, proj_id : <%=parProjId%> });
497
             },
498
<%End If%>
499
 
500
             //
501
             // Internal functions
502
             // Goto url, or open in new tab
503
             gotoUrl: function (url, params)
504
             {
505
                 // Open in new tab - not as simple as it sounds
506
                 // Need to create a form and submit it
507
                 if(event.shiftKey){
508
                     var form = $('<form>',{
509
                         action : url,
510
                         target : '_blank',
511
                         //method : 'GET'
512
                         });
513
 
514
                     $.each(params,function(n,v){
515
                         var item = $('<input>',{
516
                             name : n,
517
                             value : v
518
                         });
519
                         form.append(item);
520
                        });
521
 
522
 
523
                     form.appendTo(document.body);
524
                     form.submit();
525
                     form.remove();
526
                 }
527
                 else {
528
                     if (params)
529
                         url += '?' + jQuery.param(params)
530
                     window.location.href = url;
531
                 }
532
             },
533
 
534
             // Confirm action
535
             //     okcb - callback function
5183 dpurdie 536
             confirmDelete : function(okcb, cancelcb){
5177 dpurdie 537
                 $( "<div>Are you sure</div>" ).dialog({
538
                    resizable: true,
539
                    height:170,
540
                    width : 300,
541
                    modal: true,
542
                    position: { my: "top", at: "top+100", of: window },
543
                    title:'Destroy Release',
544
                    open: function() {
545
                        $(this).siblings('.ui-dialog-buttonpane').find('button:eq(1)').focus(); 
546
                        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?';
547
                        $(this).html(markup);
548
                    },
549
                    close : function() {
550
                        $(this).remove();
551
                    },
552
                    buttons: {
553
                        "Destroy Release": function() {
554
                            okcb();
555
                            $(this).dialog("close");
556
                        },
557
                        Cancel: function() {
5183 dpurdie 558
                            if(cancelcb) cancelcb();
5177 dpurdie 559
                            $(this).dialog("close");
560
                        }
561
                    }
562
                 });
563
             },
564
 
565
    };
566
 
5180 dpurdie 567
    // Create and Hide the Menu
5177 dpurdie 568
    $( "#select-menu" ).hide().menu();
569
 
570
    // Register menuselect event handler
571
    $( "#select-menu" ).on( "menuselect", function( event, ui ) {
572
       var opr = ui.item.data('opr');
573
 
574
        // Invoke operation within the menu data structure
575
        if (typeof $.miniMenu[opr] == 'function' ) {
5180 dpurdie 576
            $.miniMenu['event'] = event;
5177 dpurdie 577
            $.miniMenu[opr]($.miniMenu);
578
            return;
579
        }
5179 dpurdie 580
        //console.log ("Menu Operation:", opr, "Not found");
5177 dpurdie 581
    });
582
 
5179 dpurdie 583
 
5177 dpurdie 584
    // Add menu to all require instances
5180 dpurdie 585
   $( ".select-operation" ).click(function(event) {
5177 dpurdie 586
        // When clicked - create and show the menu
587
        // Insert rtag-id
588
 
5179 dpurdie 589
       // In order to have the menu positioing work correctly
590
       //   Create a div that covers the visible screen area
591
       //   Us it within the menu poistioning
592
       //   Then delete it again
593
       var positionDiv = $( "<div></div>" ).css({
594
               position: 'absolute', 
595
               top : $(document).scrollTop(), 
596
               left : $(document).scrollLeft(),
597
               width: '100vw',
598
               height: '100vh',
599
               'z-index' : -1,
600
           });
601
       positionDiv.appendTo(document.body);
602
 
5177 dpurdie 603
        //  Create the menu
604
        var menu = $("#select-menu").show().position({
5180 dpurdie 605
             my: "left top",
606
             at: "center bottom",
607
             of: this,
608
             within : positionDiv,
5179 dpurdie 609
        });
5177 dpurdie 610
 
5179 dpurdie 611
        // Cleanup the poistioning div
612
        positionDiv.remove();
613
 
5177 dpurdie 614
        // Setup global data
615
        $.miniMenu.rtagid = $(this).data('rtag-id');
616
 
617
        // Set initial menu state - merge target
618
        $('#select-menu-merge').toggleClass('ui-state-disabled',!('mergeLeft' in $.miniMenu ));
619
 
620
        // Set initial state close/archive
621
        //
622
        var official = $(this).data('official');
5178 dpurdie 623
        $('#select-menu-close').toggleClass('ui-state-disabled',! $.mode2access.canAccess(official,0));
624
        $('#select-menu-preserve').toggleClass('ui-state-disabled',!$.mode2access.canAccess(official,1));
625
        $('#select-menu-archive').toggleClass('ui-state-disabled',! $.mode2access.canAccess(official,2));
5177 dpurdie 626
 
5180 dpurdie 627
        // Highlight the row selected
628
        $('#releaseTree .body_row_sel').removeClass('body_row_sel');
629
        $.miniMenu.currentRow = $(event.target).closest('tr').addClass('body_row_sel');
630
 
631
        // Allow click outside of the menu to close it
632
        $( document ).one( "click", function() {
633
            menu.hide();
634
            $('#releaseTree .body_row_sel').removeClass('body_row_sel');
635
        });
636
 
637
 
5177 dpurdie 638
        // Prevent propagation of event
639
        return false;
640
    });
641
});
642
</script>
643
 
119 ghuddy 644
</head>
645
<body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0" >
646
<!-- MENU LAYERS -------------------------------------->
157 ghuddy 647
<div id="popmenu" class="menuskin" onMouseover="clearhidemenu();highlightmenu(event,'on')" onMouseout="highlightmenu(event,'off');dynamichide(event)">
119 ghuddy 648
</div>
649
<!-- TIPS LAYERS -------------------------------------->
650
<div id="formTipsLayer" style="position: absolute; z-index: 1000; visibility: hidden; left:0; top: 0; width: 10">&nbsp;</div>
651
<!----------------------------------------------------->
652
<!-- HEADER -->
653
<!--#include file="_header.asp"-->
654
<!-- BODY ---->
655
 
5177 dpurdie 656
<%Call GetListFilterValues ( dListFilter )%>
657
 
658
<form name="FormName" method="post" action="<%=ScriptName%>">
119 ghuddy 659
<table width="100%" border="0" cellspacing="0" cellpadding="0">
157 ghuddy 660
   <tr>
5177 dpurdie 661
      <td width="1" background="images/bg_home_orange.gif" valign="top">
662
         <!-- ICON STATUS and FILTER -------------------------------------->
663
         <table width="118" border="0" align="left" style="margin-top: 38px;">
664
            <tr>
665
               <td bgcolor="#E4E9EC" width="26"><span class="body_txt">Icon</span></td>
666
               <td bgcolor="#E4E9EC" width="82"><span class="body_txt">Release State </span></td>
667
            </tr>
668
            <tr>
669
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_open_mode.gif" width="15" height="13"></td>
670
               <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>
671
            </tr>
672
            <tr>
673
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_restrictive_mode.gif" width="15" height="15"></td>
674
               <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>
675
            </tr>
676
            <tr>
677
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_ccb_mode.gif" width="15" height="15"></td>
678
               <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>
679
            </tr>
680
            <tr>
681
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_closed_mode.gif" width="15" height="14"></td>
682
               <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>
683
            </tr>
684
            <tr>
685
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_closed_mode_warn.gif" width="15" height="14"></td>
686
               <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>
687
            </tr>
688
            <tr>
689
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_preserve_mode.gif" width="15" height="14"></td>
690
               <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>
691
            </tr>
692
            <tr>
693
               <td bgcolor="#F5F5F5"><img src="images/i_rtag_archive_mode.gif" width="15" height="14"></td>
694
               <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>
695
            </tr>
696
            <%If NOT bIsaTreeView Then%>
697
             <tr>
698
                <td>&nbsp;</td>
699
                <td><input name="btn" type="submit" class="form_btn" value="Update"></td>
700
             </tr>
701
             <%End If%>
702
         </table>
703
      </td>
157 ghuddy 704
      <td rowspan="2" valign="top" width="100%">
705
         <!-- ACTION BUTTONS ---------------------------------------------->
5177 dpurdie 706
         <table width="100%"  border="0" cellspacing="0" cellpadding="7" style="background-color:#DAD7C8">
157 ghuddy 707
            <tr>
5177 dpurdie 708
               <td width="1">
157 ghuddy 709
                  <%
5177 dpurdie 710
                  If bIsaTreeView Then
157 ghuddy 711
                     Response.write LIMG_TREE_VIEW
712
                  Else
713
                     Response.write LIMG_LIST_VIEW
714
                  End If
715
                  %>
716
               </td>
5177 dpurdie 717
               <td width="100%">
157 ghuddy 718
                  <%
719
                  Dim aBtnsDef
720
                  ' Define action buttons
5177 dpurdie 721
                  aBtnsDef = Array("btnNewRelease", "width=5", "btnMergeManager", "width=5", "btnAdminView")
119 ghuddy 722
 
157 ghuddy 723
                  ' Load action buttons from database
724
                  Call objBtnControl.LoadActionButtons ( aBtnsDef, OraDatabase )
119 ghuddy 725
 
157 ghuddy 726
                  ' Set spacing to minimum between buttons
727
                  objBtnControl.ButtonSpacer = 0
728
                  objBtnControl.ImageHspace = 2
119 ghuddy 729
 
157 ghuddy 730
                  ' Access Control
5061 dpurdie 731
                  If NOT canActionControlInProject("CreateNewRelease") Then Call objBtnControl.Active ( "btnNewRelease", "N" )
732
                  If NOT canActionControlInProject("DestroyRelease") Then Call objBtnControl.Active ( "btnDestroyRelease", "N" )
733
                  If NOT canActionControlInProject("ConfigureRelease") Then Call objBtnControl.Active ( "btnMoveRelease", "N" )
119 ghuddy 734
 
157 ghuddy 735
                  ' -- Render Buttons
736
                  Call objBtnControl.Render  ( aBtnsDef, objAccessControl )
737
                  %>
738
               </td>
739
            </tr>
740
         </table>
741
         <!-- ACTION BUTTONS END  ------------------------------------------>
5177 dpurdie 742
         <!-- RELEASE INFORMATION  ----------------------------------------->
5180 dpurdie 743
         <table id=releaseTree width="100%"  border="0" cellspacing="10" cellpadding="0">
157 ghuddy 744
               <tr>
745
                  <td>
746
                     <!-- TREE VIEW ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
5177 dpurdie 747
                     <%If bIsaTreeView Then%>
157 ghuddy 748
                        <table width="100%"  border="0" cellspacing="1" cellpadding="1">
5182 dpurdie 749
                           <tr class='form_field_bg' style="height:21px">
5180 dpurdie 750
                              <td width="25%" class="body_txt">Release Name </td>
119 ghuddy 751
 
157 ghuddy 752
                              <%If parProjId <> 2 Then %>
5180 dpurdie 753
                                 <td width="15%" class="body_txt">Created</td>
754
                                 <td width="47%" class="body_txt">Comments</td>
157 ghuddy 755
                              <%Else%>
5180 dpurdie 756
                                 <td width="15%" class="body_txt">Created</td>
757
                                 <td width="25%" class="body_txt">Used By </td>
758
                                 <td width="22%" class="body_txt">Comments</td>
157 ghuddy 759
                              <%End If%>
5182 dpurdie 760
                           <td width="3%" nowrap class="body_txt">Daemon&nbsp;Status</td>
157 ghuddy 761
                           </tr>
762
                           <%
763
                           OraDatabase.Parameters.Add "PROJ_ID",  parProjId,  ORAPARM_INPUT, ORATYPE_NUMBER
764
 
765
                           Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("ReleaseVersionTree.sql") , ORADYN_DEFAULT )
766
                           lastLevel = 0
767
 
768
                           OraDatabase.Parameters.Remove "PROJ_ID"
769
 
770
                           Dim lastRtagId, parentRtag_id
771
 
772
                           If rsQry.RecordCount > 0 Then
773
 
183 brianf 774
                              Set objDmSts = New DaemonStatus
775
                              Call objDmSts.GetDaemonStatus(parProjId)
776
 
157 ghuddy 777
                              While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
778
                                 currLevel = CInt(rsQry("hierarchy"))
4080 dpurdie 779
                                 hoverTitle = "Last change: "& rsQry("OFFICIAL_STAMP") & " by " & rsQry("modifier")
5177 dpurdie 780
                                 createdBy = rsQry("created_stamp") & " by " & rsQry("creator") 
4080 dpurdie 781
 
157 ghuddy 782
                                 %>
5180 dpurdie 783
                                 <tr class="body_rowg2">
784
                                    <td nowrap>
157 ghuddy 785
                                       <%Call RenderIndent( lastLevel, currLevel )%>
5177 dpurdie 786
                                       <%Call RenderActions(rsQry("rtag_id"),rsQry("official"))%>
4080 dpurdie 787
                                       <a href="dependencies.asp?rtag_id=<%=rsQry("rtag_id")%>" class="body_link" title="<%=hoverTitle%>" >
157 ghuddy 788
                                       <%=ReleaseIcon( rsQry("official") )%>&nbsp;<%=rsQry("rtag_name")%></a>
5177 dpurdie 789
                                    </td>
5180 dpurdie 790
                                    <td nowrap valign=top"><%=createdBy%></td>
5177 dpurdie 791
                                    <%
792
                                    If parProjId = 2 Then
793
                                       comment = GetMassRefComments(rsQry("rtag_id"))
794
                                       If comment = "" Then comment = "None."
795
                                       %>
5180 dpurdie 796
                                       <td><%=comment%></td>
5177 dpurdie 797
                                    <%End If%>
157 ghuddy 798
 
5180 dpurdie 799
                                    <td><%=NewLine_To_BR(rsQry("description"))%></td>
800
                                    <td  valign=top>
5177 dpurdie 801
                                       <%Call RenderDaemonStatusConfig(rsQry("rtag_id"))%>
802
                                    </td>
157 ghuddy 803
                                 </tr>
804
                                 <%
805
                                 lastLevel = currLevel
806
                                 rsQry.MoveNext
807
                              WEnd
183 brianf 808
                              Set objDmSts = Nothing
157 ghuddy 809
                           End If
810
                           rsQry.Close
811
                           Set rsQry = Nothing
812
                           %>
813
                        </table>
814
                     <!-- LIST VIEW ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
815
                     <%Else%>
5177 dpurdie 816
                        <table width="100%"  border="0" cellspacing="1" cellpadding="1">
5180 dpurdie 817
                           <tr class='form_field_bg'>
818
                              <td width="1%">&nbsp;</td>
819
                              <td width="20%" class="body_txt">Release Name </td>
820
                              <td width="10%" class="body_txt">Created</td>
157 ghuddy 821
                              <%If parProjId <> 2 Then %>
5180 dpurdie 822
                                 <td width="47%" class="body_txt">Comments</td>
157 ghuddy 823
                              <%Else%>
5180 dpurdie 824
                                 <td width="24%" class="body_txt">Used By </td>
825
                                 <td width="22%" class="body_txt">Comments</td>
157 ghuddy 826
                              <%End If%>
5180 dpurdie 827
                              <td width="3%" class="body_txt">Daemon Status</td>
157 ghuddy 828
                           </tr>
829
                           <%
830
                              OraDatabase.Parameters.Add "PROJ_ID",  parProjId,  ORAPARM_INPUT, ORATYPE_NUMBER
831
 
832
                              rsQryStr = GetQuery ("ReleaseVersionList.sql")
833
                              rsQryStr = Replace(rsQryStr, "/*SHOW_FILTER*/", parShowFilter)
834
 
835
                              Set rsQry = OraDatabase.DbCreateDynaset( rsQryStr, ORADYN_DEFAULT )
836
 
837
                              OraDatabase.Parameters.Remove "PROJ_ID"
838
 
839
                              If rsQry.RecordCount > 0 Then
840
 
183 brianf 841
                                 Set objDmSts = New DaemonStatus
842
                                 Call objDmSts.GetDaemonStatus(parProjId)
843
 
5177 dpurdie 844
                                 While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
845
                                    hoverTitle = "Last change: "& rsQry("OFFICIAL_STAMP") & " by " & rsQry("modifier") & ". " & rsQry("OFFICIAL_STAMP_DAYS")& " Days ago"
846
                                    createdBy = rsQry("created_stamp") & " by " & rsQry("creator")
157 ghuddy 847
 
848
                                    %>
5180 dpurdie 849
                                    <tr class="body_rowg2">
850
                                       <td valign="top">
5177 dpurdie 851
                                          <%Call RenderActions(rsQry("rtag_id"),rsQry("official"))%>
157 ghuddy 852
                                       </td>
5180 dpurdie 853
                                       <td nowrap valign="top">
5177 dpurdie 854
                                          <a href="dependencies.asp?rtag_id=<%=rsQry("rtag_id")%>" class="body_link" title="<%=hoverTitle%>">
855
                                          <%=ReleaseIcon( rsQry("official"))%>&nbsp;<%=rsQry("rtag_name")%></a>
157 ghuddy 856
                                       </td>
5180 dpurdie 857
                                       <td nowrap  valign=top><%=createdBy%></td>
157 ghuddy 858
                                       <%
5177 dpurdie 859
                                       If parProjId = 2 Then
860
                                          comment = GetMassRefComments(rsQry("rtag_id"))
861
                                          If comment = "" Then comment = "None."
157 ghuddy 862
                                          %>
5180 dpurdie 863
                                            <td><%=comment%></td>
157 ghuddy 864
                                       <%End If%>
5180 dpurdie 865
                                       <td><%=NewLine_To_BR(  rsQry("description")   )%></td>
866
                                       <td  valign=top>
5177 dpurdie 867
                                          <%Call RenderDaemonStatusConfig(rsQry("rtag_id"))%>
183 brianf 868
                                       </td>
157 ghuddy 869
                                    </tr>
870
                                    <%
5177 dpurdie 871
                                    rsQry.MoveNext
872
                                 WEnd
183 brianf 873
                                 Set objDmSts = Nothing
157 ghuddy 874
                              End If
875
                              rsQry.Close
876
                              Set rsQry = Nothing
5177 dpurdie 877
                              %>
157 ghuddy 878
                        </table>
5177 dpurdie 879
                        <%=objPMod.ComposeHiddenTags()%>
880
                        <input type="hidden" name="action" value="true">
881
                        </form>
157 ghuddy 882
                        <!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->
883
                        <!--#include file="messages/_msg_inline.asp"-->
884
                        <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
885
 
886
                     <%End If%>
887
                     <!-- LIST VIEW END ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
888
                  </td>
889
               </tr>
890
         </table>
891
      </td>
892
      <td width="1" valign="top"><img src="images/h_trsp_dot.gif" width="1" height="1"></td>
893
   </tr>
894
   <tr>
5177 dpurdie 895
      <td valign="bottom" align="center" background="images/bg_home_orange.gif">
896
      </td>
157 ghuddy 897
   </tr>
119 ghuddy 898
</table>
5177 dpurdie 899
<!-- Dropdown Menu -->
5179 dpurdie 900
<div id=testdiv></div>
5177 dpurdie 901
<div >
902
  <ul id="select-menu" style="display:none;">
903
   <li data-opr="open" title="Goto this Release">Open ...</li>
904
    <li data-opr="edit" title="Edit the properties of the Release">Edit Properties</li>
905
    <li <%=iif(bCanMove,"data-opr=move","class=ui-state-disabled")%> title="Change the order in which releases are displayed">Change display order</li>
906
    <li>-</li>
5178 dpurdie 907
    <li data-opr="mergeSelect" title="Select as the source (left side) of a merge or comparison">Select for Merge/Diff</li>
908
    <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 909
    <li>-</li>
910
    <li id="select-menu-close" data-opr="close">Close Release</li>
911
    <li id="select-menu-preserve" data-opr="preserve" >Preserve Release</li>
912
    <li id="select-menu-archive" data-opr="archive" >Archive Release</li>
913
    <li>-</li>
914
    <li <%=iif(bCanClone,"data-opr=clone","class=ui-state-disabled")%> title="Create a new Release based on selected Release">Clone Release</li>
915
    <li>-</li>
916
    <li <%=iif(bCanDestroy,"data-opr=delete","class=ui-state-disabled")%>  title="Delete the selected Release">Destroy Release</li>
917
    <li>-</li>
918
    <li>Close Menu</li>
919
  </ul>
920
</div>
119 ghuddy 921
<!-- FOOTER -->
922
<!--#include file="_footer.asp"-->
923
<map name="mapviewtype">
924
  <area shape="rect" coords="2,2,69,23" href="<%=ScriptName%>?viewtype=1&<%=objPMod.ComposeURL()%>" title="Switch to List View">
925
  <area shape="rect" coords="73,2,143,23" href="<%=ScriptName%>?viewtype=2&<%=objPMod.ComposeURL()%>" title="Switch to Tree View">
926
</map>
927
</body>
928
</html>
929
<%
930
Call Destroy_All_Objects
157 ghuddy 931
%>