Subversion Repositories DevTools

Rev

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

Rev 147 Rev 149
Line 30... Line 30...
30
<!--#include file="_access_control_general.asp"-->
30
<!--#include file="_access_control_general.asp"-->
31
<!--#include file="_access_control_login.asp"-->
31
<!--#include file="_access_control_login.asp"-->
32
<%
32
<%
33
'------------ Variable Definition -------------
33
'------------ Variable Definition -------------
34
Dim objBtnControl
34
Dim objBtnControl
-
 
35
Dim parSortOrder
35
'------------ Constants Declaration -----------
36
'------------ Constants Declaration -----------
36
'------------ Variable Init -------------------
37
'------------ Variable Init -------------------
37
Set objBtnControl = New ActionButtonControl
38
Set objBtnControl = New ActionButtonControl
-
 
39
parSortOrder = Request("sort")
-
 
40
If IsNull(parSortOrder) OR parSortOrder = "" Then
-
 
41
   parSortOrder = "0"
-
 
42
End If
38
'----------------------------------------------
43
'----------------------------------------------
39
%>
44
%>
40
<%
45
<%
41
'--------------------------------------------------------------------------------------------
46
'--------------------------------------------------------------------------------------------
42
' Cleans up the daemon instructions table to remove old data that might have become stranded
47
' Cleans up the daemon instructions table to remove old data that might have become stranded
Line 49... Line 54...
49
   "BEGIN PK_BUILDAPI.cleanup_stranded_daemon_insts; END;"
54
   "BEGIN PK_BUILDAPI.cleanup_stranded_daemon_insts; END;"
50
   objEH.CatchORA ( OraSession )
55
   objEH.CatchORA ( OraSession )
51
End Sub
56
End Sub
52
 
57
 
53
 
58
 
54
'--------------------------------------------------------------------------------------------
-
 
55
' Get a project name from a release tag
-
 
56
'--------------------------------------------------------------------------------------------
-
 
57
Function ProjectName(nRtag_Id)
-
 
58
   Dim rsTemp
-
 
59
   Dim query_string
-
 
60
 
-
 
61
   ProjectName = ""
-
 
62
 
-
 
63
   If (NOT IsNull(nRtag_Id)) AND (nRtag_Id <> "") Then
-
 
64
 
-
 
65
      query_string = "SELECT proj_id FROM release_tags WHERE rtag_id = " & nRtag_Id
-
 
66
      Set rsTemp = OraDatabase.DbCreateDynaset( query_string, ORADYN_DEFAULT )
-
 
67
      If (NOT rsTemp.BOF) AND (NOT rsTemp.EOF) Then
-
 
68
         query_string = "SELECT proj_name FROM projects WHERE proj_id = " & rsTemp("proj_id")
-
 
69
         Set rsTemp = OraDatabase.DbCreateDynaset( query_string, ORADYN_DEFAULT )
-
 
70
         If (NOT rsTemp.BOF) AND (NOT rsTemp.EOF) Then
-
 
71
            ProjectName = rsTemp("proj_name")
-
 
72
         End If
-
 
73
      End If
-
 
74
 
-
 
75
      rsTemp.Close()
-
 
76
      set rsTemp = nothing
-
 
77
   End If
-
 
78
End Function
-
 
79
 
-
 
80
'--------------------------------------------------------------------------------------------
-
 
81
' Get a release name from a release tag
-
 
82
'--------------------------------------------------------------------------------------------
-
 
83
Function ReleaseName(nRtag_Id)
-
 
84
   Dim rsTemp
-
 
85
   Dim query_string
-
 
86
 
-
 
87
   ReleaseName = ""
-
 
88
 
-
 
89
   If (NOT IsNull(nRtag_Id)) AND (nRtag_Id <> "") Then
-
 
90
 
-
 
91
      query_string = "SELECT rtag_name FROM release_tags WHERE rtag_id = " & nRtag_Id
-
 
92
      Set rsTemp = OraDatabase.DbCreateDynaset( query_string, ORADYN_DEFAULT )
-
 
93
      If (NOT rsTemp.BOF) AND (NOT rsTemp.EOF) Then
-
 
94
         ReleaseName = rsTemp("rtag_name")
-
 
95
      End If
-
 
96
 
-
 
97
      rsTemp.Close()
-
 
98
      set rsTemp = nothing
-
 
99
   End If
-
 
100
End Function
-
 
101
 
-
 
102
'--------------------------------------------------------------------------------------------
-
 
103
' Get a user name/email from a user ID
-
 
104
'--------------------------------------------------------------------------------------------
-
 
105
Sub GetUserName(nUserId, outUserName, outUserEmail)
-
 
106
 
-
 
107
   Dim rsTemp
-
 
108
   Dim query_string
-
 
109
 
-
 
110
   outUserName  = ""
-
 
111
   outUserEmail = ""
-
 
112
 
-
 
113
   If (NOT IsNull(nUserId)) AND (nUserId <> "") Then
-
 
114
 
-
 
115
      query_string = "SELECT usr.FULL_NAME, usr.USER_EMAIL" &_
-
 
116
                     "  FROM USERS usr" &_
-
 
117
                     " WHERE usr.USER_ID = " & nUserId
-
 
118
 
-
 
119
      Set rsTemp = OraDatabase.DbCreateDynaset( query_string, ORADYN_DEFAULT )
-
 
120
      If (NOT rsTemp.BOF) AND (NOT rsTemp.EOF) Then
-
 
121
         outUserName  = rsTemp("full_name")
-
 
122
         outUserEmail = rsTemp("user_email")
-
 
123
      End If
-
 
124
 
-
 
125
      rsTemp.Close()
-
 
126
      set rsTemp = nothing
-
 
127
   End If
-
 
128
 
-
 
129
End Sub
-
 
130
%>
59
%>
131
 
60
 
132
<%
61
<%
133
' Clean up old data
62
' Clean up old data
134
CleanupOldData
63
CleanupOldData
Line 194... Line 123...
194
         </div>
123
         </div>
195
         <tr></tr>
124
         <tr></tr>
196
         <tr>
125
         <tr>
197
            <td></td>
126
            <td></td>
198
            <!-- DAEMON INSTRUCTION DETAILS +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
127
            <!-- DAEMON INSTRUCTION DETAILS +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
199
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">OPERATION</td>
128
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">
-
 
129
               <%If parSortOrder = "1" Then%>
-
 
130
                  <a href='admin_daemon_instructions.asp?sort=1a'>
-
 
131
               <%ElseIf parSortOrder = "1a" Then%>
-
 
132
                  <a href='admin_daemon_instructions.asp?sort=1b'>
-
 
133
               <%ElseIf parSortOrder = "1b" Then%>
-
 
134
                  <a href='admin_daemon_instructions.asp?sort=1c'>
-
 
135
               <%Else%>
-
 
136
                  <a href='admin_daemon_instructions.asp?sort=1'>
-
 
137
               <%End If%>
-
 
138
               OPERATION
-
 
139
            </td>
200
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">PROJECT</td>
140
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">
-
 
141
               <%If parSortOrder = "2" Then%>
-
 
142
                  <a href='admin_daemon_instructions.asp?sort=2a'>
-
 
143
               <%ElseIf parSortOrder = "2a" Then%>
-
 
144
                  <a href='admin_daemon_instructions.asp?sort=2b'>
-
 
145
               <%Else%>
-
 
146
                  <a href='admin_daemon_instructions.asp?sort=2'>
-
 
147
               <%End If%>
-
 
148
               PROJECT
-
 
149
            </td>
201
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">RELEASE</td>
150
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">
-
 
151
               <%If parSortOrder = "3" Then%>
-
 
152
                  <a href='admin_daemon_instructions.asp?sort=3a'>
-
 
153
               <%Else%>
-
 
154
                  <a href='admin_daemon_instructions.asp?sort=3'>
-
 
155
               <%End If%>
-
 
156
               RELEASE
-
 
157
            </td>
202
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">MODE</td>
158
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">MODE</td>
203
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">PACKAGE</td>
159
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">
-
 
160
               <a href='admin_daemon_instructions.asp?sort=4'>PACKAGE
-
 
161
            </td>
204
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">VERSION</td>
162
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">VERSION</td>
-
 
163
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">
205
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">SCHEDULED TIME<br>(<SPAN style=color:Red>Red</SPAN> = overdue)<br>(<SPAN style=color:Green>Green</SPAN> = ready)</td>
164
               <a href='admin_daemon_instructions.asp?sort=0'>SCHEDULED TIME<br>(<SPAN style=color:Red>Red</SPAN> = overdue)<br>(<SPAN style=color:Green>Green</SPAN> = ready)</td>
206
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">REPEAT</td>
165
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">REPEAT</td>
207
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">ADDED BY</td>
166
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">
-
 
167
               <a href='admin_daemon_instructions.asp?sort=5'>ADDED BY
-
 
168
            </td>
208
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">LAST<br>UPDATED</td>
169
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">LAST<br>UPDATED</td>
209
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">IN<br>PROGRESS</td>
170
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">
-
 
171
               <a href='admin_daemon_instructions.asp?sort=6'>IN<br>PROGRESS
-
 
172
            </td>
210
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">EDIT/DELETE</td>
173
            <td align="left" nowrap background="images/bg_table_col.gif" class="body_col">EDIT/DELETE</td>
211
         </tr>
174
         </tr>
212
         <tr>
175
         <tr>
213
            <td colspan="13" background="images/bg_table_border.gif"><img src="images/spacer.gif" width="1" height="1"></td>
176
            <td colspan="13" background="images/bg_table_border.gif"><img src="images/spacer.gif" width="1" height="1"></td>
214
         </tr>
177
         </tr>
Line 217... Line 180...
217
         ' Load some action buttons
180
         ' Load some action buttons
218
         Call objBtnControl.LoadActionButtons ( Array("btnEditDaemonInst", "btnDeleteDaemonInst"), OraDatabase )
181
         Call objBtnControl.LoadActionButtons ( Array("btnEditDaemonInst", "btnDeleteDaemonInst"), OraDatabase )
219
         objBtnControl.ButtonSpacer = 1
182
         objBtnControl.ButtonSpacer = 1
220
 
183
 
221
         Dim rsQry
184
         Dim rsQry
222
         Dim ProjId
-
 
223
         Dim PkgId
-
 
224
         Dim PkgName
-
 
225
         Dim PkgVersion
-
 
226
         Dim UserName
-
 
227
         Dim UserEmail
-
 
228
         Dim bInProgress
185
         Dim bInProgress
229
         Dim bIsReady
186
         Dim bIsReady
230
         Dim bIsOverdue
187
         Dim bIsOverdue
231
         Dim daemonInstId  ' This variable is needed to support the action buttons to Edit/Delete
188
         Dim daemonInstId  ' This variable is needed to support the action buttons to Edit/Delete
232
         Dim bEditEnabled
189
         Dim bEditEnabled
233
         Dim bResetInProgressEnabled
190
         Dim bResetInProgressEnabled
-
 
191
         Dim sortClause
-
 
192
         Dim sortText
234
 
193
 
235
         ' determine if user can reset the in-progress state of a daemon instruction
194
         ' determine if user can reset the in-progress state of a daemon instruction
236
         bResetInProgressEnabled = UserAllowedToResetInProgress()
195
         bResetInProgressEnabled = UserAllowedToResetInProgress()
237
 
196
 
238
         ' query the daemon_instructions table and also create an indication of an overdue instruction,
197
         ' query the daemon_instructions table and also create an indication of an overdue instruction,
239
         ' which is defined as being one that was scheduled for action
198
         ' which is defined as being one that was scheduled for action
-
 
199
         Select Case (parSortOrder)
-
 
200
         Case "1"
-
 
201
            sortClause = " ORDER BY op_code, scheduled_datetime"
-
 
202
            sortText   = "Data sorted by Operation, Scheduled time"
-
 
203
         Case "1a"
-
 
204
            sortClause = " ORDER BY op_code, proj_name, scheduled_datetime"
-
 
205
            sortText   = "Data sorted by Operation, Project, Scheduled time"
-
 
206
         Case "1b"
-
 
207
            sortClause = " ORDER BY op_code, proj_name, rtag_name, scheduled_datetime"
-
 
208
            sortText   = "Data sorted by Operation, Project, Release, Scheduled time"
-
 
209
         Case "1c"
-
 
210
            sortClause = " ORDER BY op_code, proj_name, rtag_name, pkg_name, scheduled_datetime"
-
 
211
            sortText   = "Data sorted by Operation, Project, Release, Package, Scheduled time"
-
 
212
         Case "2"
-
 
213
            sortClause = " ORDER BY proj_name, scheduled_datetime"
-
 
214
            sortText   = "Data sorted by Project, Scheduled time"
-
 
215
         Case "2a"
-
 
216
            sortClause = " ORDER BY proj_name, rtag_name, scheduled_datetime"
-
 
217
            sortText   = "Data sorted by Project, Release, Scheduled time"
-
 
218
         Case "2b"
-
 
219
            sortClause = " ORDER BY proj_name, rtag_name, pkg_name, scheduled_datetime"
-
 
220
            sortText   = "Data sorted by Project, Release, Package, Scheduled time"
-
 
221
         Case "3"
-
 
222
            sortClause = " ORDER BY rtag_name, scheduled_datetime"
-
 
223
            sortText   = "Data sorted by Release, Scheduled time"
-
 
224
         Case "3a"
-
 
225
            sortClause = " ORDER BY rtag_name, pkg_name, scheduled_datetime"
-
 
226
            sortText   = "Data sorted by Release, Package, Scheduled time"
-
 
227
         Case "4"
-
 
228
            sortClause = " ORDER BY pkg_name, scheduled_datetime"
-
 
229
            sortText   = "Data sorted by Package, Scheduled time"
-
 
230
         Case "5"
-
 
231
            sortClause = " ORDER BY full_name, scheduled_datetime"
-
 
232
            sortText   = "Data sorted by Added By, Scheduled time"
-
 
233
         Case "6"
-
 
234
            sortClause = " ORDER BY in_progress, scheduled_datetime"
-
 
235
            sortText   = "Data sorted by Progress State, Scheduled time"
-
 
236
         Case Else
-
 
237
            sortClause = " ORDER BY scheduled_datetime, proj_name, rtag_name, pkg_name"
-
 
238
            sortText   = "Data sorted by Scheduled time"
-
 
239
         End Select
-
 
240
 
240
         Set rsQry = OraDatabase.DbCreateDynaset( "SELECT DAEMON_INSTRUCTIONS_ID,"&_
241
         Set rsQry = OraDatabase.DbCreateDynaset("SELECT DAEMON_INSTRUCTIONS_ID,"&_
-
 
242
                                                 "       proj_id,"&_
-
 
243
                                                 "       proj_name,"&_
-
 
244
                                                 "       official,"&_
-
 
245
                                                 "       rtag_id,"&_
-
 
246
                                                 "       rtag_name,"&_
241
                                                  "       OP_CODE,"&_
247
                                                 "       OP_CODE,"&_
242
                                                  "       RTAG_ID,"&_
248
                                                 "       pkg_id,"&_
-
 
249
                                                 "       (CASE WHEN NVL2(pv_id,pv_id,0) = 0 THEN 'N/A' ELSE pkg_name END) AS pkg_name,"&_
-
 
250
                                                 "       (CASE WHEN NVL2(pv_id,pv_id,0) = 0 THEN 'N/A' ELSE pkg_version END) AS pkg_version,"&_
243
                                                  "       PV_ID,"&_
251
                                                 "       PV_ID,"&_
244
                                                  "       SCHEDULED_DATETIME,"&_
252
                                                 "       SCHEDULED_DATETIME,"&_
245
                                                  "       REPEAT_SECS,"&_
253
                                                 "       REPEAT_SECS,"&_
246
                                                  "       ADDED_DATETIME,"&_
254
                                                 "       ADDED_DATETIME,"&_
247
                                                  "       USER_ID,"&_
255
                                                 "       USER_ID,"&_
248
                                                  "       IN_PROGRESS,"&_
256
                                                 "       IN_PROGRESS,"&_
249
                                                  "       (CASE WHEN SCHEDULED_DATETIME <= SYSDATE THEN 1 ELSE 0 END) AS READY,"&_
257
                                                 "       (CASE WHEN SCHEDULED_DATETIME <= SYSDATE THEN 1 ELSE 0 END) AS READY,"&_
250
                                                  "       (CASE WHEN (SCHEDULED_DATETIME + (1/144)) < SYSDATE THEN 1 ELSE 0 END) AS OVERDUE"&_
258
                                                 "       (CASE WHEN (SCHEDULED_DATETIME + (1/144)) < SYSDATE THEN 1 ELSE 0 END) AS OVERDUE,"&_
-
 
259
                                                 "       full_name,"&_
251
                                                  "  FROM DAEMON_INSTRUCTIONS "&_
260
                                                 "       user_email"&_
-
 
261
                                                 " FROM"&_
-
 
262
                                                 " daemon_instructions"&_
252
                                                  "  ORDER BY RTAG_ID, PV_ID, SCHEDULED_DATETIME, DAEMON_INSTRUCTIONS_ID", ORADYN_DEFAULT )
263
                                                 " LEFT JOIN package_versions USING (pv_id)"&_
-
 
264
                                                 " LEFT JOIN release_tags USING (rtag_id)"&_
-
 
265
                                                 " LEFT JOIN projects USING (proj_id)"&_
-
 
266
                                                 " LEFT JOIN packages USING (pkg_id)"&_
-
 
267
                                                 " LEFT JOIN users USING (user_id)"&_
-
 
268
                                                 sortClause, ORADYN_DEFAULT )
-
 
269
 
253
         While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
270
         While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
254
 
271
 
255
            daemonInstId = rsQry("DAEMON_INSTRUCTIONS_ID")
272
            daemonInstId = rsQry("DAEMON_INSTRUCTIONS_ID")
256
 
273
 
257
            If IsNull(rsQry("IN_PROGRESS")) OR rsQry("IN_PROGRESS") = "0" Then
274
            If IsNull(rsQry("IN_PROGRESS")) OR rsQry("IN_PROGRESS") = "0" Then
Line 271... Line 288...
271
               bIsReady = True
288
               bIsReady = True
272
            Else
289
            Else
273
               bIsReady = False
290
               bIsReady = False
274
            End If
291
            End If
275
 
292
 
276
            ' Get as much info about the package as we can
-
 
277
            ProjId=""
-
 
278
            PkgId = 0
-
 
279
            PkgName = "N/A"
-
 
280
            PkgVersion = "N/A"
-
 
281
            If (NOT IsNull(rsQry("PV_ID"))) AND (rsQry("PV_ID") <> "") Then
-
 
282
               Call Get_Pkg_Short_Info(rsQry("PV_ID"), PkgId, PkgName, PkgVersion, NULL, NULL, NULL)
-
 
283
            End If
-
 
284
 
-
 
285
            ' derive the proj_id from the rtag_id
-
 
286
            If (NOT IsNull(rsQry("RTAG_ID"))) AND (rsQry("RTAG_ID") <> "") Then
-
 
287
               ProjId = Get_Proj_ID(rsQry("RTAG_ID"))
-
 
288
               ReleaseMode = GetReleaseMode( rsQry("RTAG_ID") )
-
 
289
            Else
-
 
290
               ReleaseMode = "Y" ' closed mode used to prevent editing
-
 
291
            End If
-
 
292
 
293
 
293
            ' determine if editing is enabled by permissions
294
            ' determine if editing is enabled by permissions
294
            bEditEnabled = True
295
            bEditEnabled = True
295
            If objAccessControl.UserLogedIn Then
296
            If objAccessControl.UserLogedIn Then
296
               If NOT objAccessControl.IsDataActive ("PROJECTS", ProjId, "EditProjects") OR NOT objAccessControl.IsDataVisible ("PROJECTS", ProjId, "EditProjects")  Then
297
               If NOT objAccessControl.IsDataActive ("PROJECTS", rsQry("proj_id"), "EditProjects") OR NOT objAccessControl.IsDataVisible ("PROJECTS", rsQry("proj_id"), "EditProjects")  Then
297
                  bEditEnabled = False
298
                  bEditEnabled = False
298
               ElseIf NOT objAccessControl.IsDataActive ("PROJECTS", ProjId, enumDB_PERMISSION_TYPE_ACTIVE) Then
299
               ElseIf NOT objAccessControl.IsDataActive ("PROJECTS", rsQry("proj_id"), enumDB_PERMISSION_TYPE_ACTIVE) Then
299
                  bEditEnabled = False
300
                  bEditEnabled = False
300
               ElseIf ( ReleaseMode <> enumDB_RELEASE_IN_OPEN_MODE ) Then
301
               ElseIf ( rsQry("official") <> enumDB_RELEASE_IN_OPEN_MODE ) Then
301
                  If NOT objAccessControl.IsActive("ApproveForAutoBuild") Then
302
                  If NOT objAccessControl.IsActive("ApproveForAutoBuild") Then
302
                     bEditEnabled = False
303
                     bEditEnabled = False
303
                  End If
304
                  End If
304
               End If
305
               End If
305
            Else
306
            Else
306
               bEditEnabled = False
307
               bEditEnabled = False
307
            End If
308
            End If
308
 
309
 
309
            Call GetUserName(rsQry("User_Id"), UserName, UserEmail)
-
 
310
 
-
 
311
            %>
310
            %>
312
            <tr>
311
            <tr>
313
               <input type="hidden" name="DAEMON_INSTRUCTIONS_ID_" & daemonInstId value=daemonInstId>
312
               <input type="hidden" name="DAEMON_INSTRUCTIONS_ID_" & daemonInstId value=daemonInstId>
314
 
313
 
315
               <td></td>
314
               <td></td>
Line 317... Line 316...
317
               <td align="left" valign="top" class="body_txt">
316
               <td align="left" valign="top" class="body_txt">
318
                  <%=DaemonInstructionOperationName(rsQry("OP_CODE"))%>
317
                  <%=DaemonInstructionOperationName(rsQry("OP_CODE"))%>
319
               </td>
318
               </td>
320
 
319
 
321
               <td align="left" valign="top" class="body_txt">
320
               <td align="left" valign="top" class="body_txt">
322
                  <%If ProjId <> "" Then%>
321
                  <%If rsQry("proj_id") <> "" Then%>
323
                     <a href='rtree.asp?proj_id=<%=ProjId%>'><%=ProjectName(rsQry("RTAG_ID"))%>
322
                     <a href='rtree.asp?proj_id=<%=rsQry("proj_id")%>'><%=rsQry("proj_name")%>
324
                  <%End If%>
323
                  <%End If%>
325
               </td>
324
               </td>
326
 
325
 
327
               <td align="left" valign="top" class="body_txt">
326
               <td align="left" valign="top" class="body_txt">
328
                  <%If ProjId <> "" Then%>
327
                  <%If rsQry("rtag_name") <> "" Then%>
329
                     <a href='dependencies.asp?rtag_id=<%=rsQry("RTAG_ID")%>'><%=ReleaseName(rsQry("RTAG_ID"))%>
328
                     <a href='dependencies.asp?rtag_id=<%=rsQry("RTAG_ID")%>'><%=rsQry("rtag_name")%>
330
                  <%End If%>
329
                  <%End If%>
331
               </td>
330
               </td>
332
 
331
 
333
               <td align="left" valign="top" class="body_txt">
332
               <td align="left" valign="top" class="body_txt">
334
                  <%=Get_Official(ReleaseMode)%>
333
                  <%=Get_Official(rsQry("official"))%>
335
               </td>
334
               </td>
336
 
335
 
337
               <td align="left" valign="top" class="body_txt">
336
               <td align="left" valign="top" class="body_txt">
338
                  <%If (NOT IsNull(rsQry("PV_ID"))) AND (rsQry("PV_ID") <> "") Then%>
337
                  <%If (NOT IsNull(rsQry("PV_ID"))) AND (rsQry("PV_ID") <> "") Then%>
339
                     <a href='fixed_issues.asp?rtag_id=<%=rsQry("RTAG_ID")%>&pv_id=<%=rsQry("PV_ID")%>'><%=PkgName%>
338
                     <a href='fixed_issues.asp?rtag_id=<%=rsQry("RTAG_ID")%>&pv_id=<%=rsQry("PV_ID")%>'><%=rsQry("pkg_name")%>
340
                  <%Else%>
339
                  <%Else%>
341
                     <%=PkgName%>
340
                     <%=rsQry("pkg_name")%>
342
                  <%End If%>
341
                  <%End If%>
343
               </td>
342
               </td>
344
 
343
 
345
               <td align="left" valign="top" class="body_txt">
344
               <td align="left" valign="top" class="body_txt">
346
                  <%=PkgVersion%>
345
                  <%=rsQry("pkg_version")%>
347
               </td>
346
               </td>
348
 
347
 
349
               <td align="left" valign="top" class="body_txt" <%If bIsOverdue Then%>style=color:Red<%Elseif bIsReady Then%>style=color:Green<%End If%>><%=EuroDateTime(rsQry("SCHEDULED_DATETIME"))%></td>
348
               <td align="left" valign="top" class="body_txt" <%If bIsOverdue Then%>style=color:Red<%Elseif bIsReady Then%>style=color:Green<%End If%>><%=EuroDateTime(rsQry("SCHEDULED_DATETIME"))%></td>
350
 
349
 
351
               <td align="left" valign="top" class="body_txt"><%=DaemonInstructionRepeatString(rsQry("OP_CODE"), rsQry("REPEAT_SECS"))%></td>
350
               <td align="left" valign="top" class="body_txt"><%=DaemonInstructionRepeatString(rsQry("OP_CODE"), rsQry("REPEAT_SECS"))%></td>
352
 
351
 
353
               <td align="left" valign="top" class="body_txt">
352
               <td align="left" valign="top" class="body_txt">
354
                  <%If UserName <> "" AND UserEmail <> "" Then%>
353
                  <%If rsQry("full_name") <> "" AND rsQry("user_email") <> "" Then%>
355
                     <a href="mailto:<%=UserEmail%>" title="<%=UserEmail%>" class="txt_linked"><%=UserName%></a>
354
                     <a href='mailto:<%=rsQry("user_email")%>' title='<%=rsQry("user_email")%>' class="txt_linked"><%=rsQry("full_name")%></a>
356
                  <%End If%>
355
                  <%End If%>
357
               </td>
356
               </td>
358
 
357
 
359
               <td align="left" valign="top" class="body_txt">
358
               <td align="left" valign="top" class="body_txt">
360
                  <%=EuroDateTime(rsQry("ADDED_DATETIME"))%>
359
                  <%=EuroDateTime(rsQry("ADDED_DATETIME"))%>
Line 393... Line 392...
393
         %>
392
         %>
394
      </table>
393
      </table>
395
 
394
 
396
      <table width="50%"  border="0" cellspacing="3" cellpadding="0" >
395
      <table width="50%"  border="0" cellspacing="3" cellpadding="0" >
397
         <tr>
396
         <tr>
-
 
397
            <td class="form_iname">
-
 
398
               <%=sortText%>
-
 
399
            </td>
-
 
400
         </tr>
-
 
401
      </table>
-
 
402
 
-
 
403
 
-
 
404
      <table width="50%"  border="0" cellspacing="3" cellpadding="0" >
-
 
405
         <tr>
398
            <td class="form_iname">&nbsp;</td>
406
            <td class="form_iname">&nbsp;</td>
399
            <td class="val_err"><a href=""><%Call Action_Buttons ( "Add Daemon Instruction" )%> </a>
407
            <td class="val_err"><a href=""><%Call Action_Buttons ( "Add Daemon Instruction" )%> </a>
400
            <td>&nbsp;</td>
408
            <td>&nbsp;</td>
401
         </tr>
409
         </tr>
402
      </table>
410
      </table>