Subversion Repositories DevTools

Rev

Rev 5328 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

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