Subversion Repositories DevTools

Rev

Rev 7457 | Rev 7536 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
119 ghuddy 1
<%
2
'=====================================================
3
'|                                                   |
121 hknight 4
'|                 RELEASE NOTES                     |
119 ghuddy 5
'|                                                   |
6
'=====================================================
7
%>
4254 dpurdie 8
<!-- Required to support jiraIssues.vbs -->
9
<SCRIPT LANGUAGE="VBScript" RUNAT=SERVER SRC="class/classaspJSON.vbs"></SCRIPT> 
10
<SCRIPT LANGUAGE="VBScript" RUNAT=SERVER SRC="common/base64encode.vbs"></SCRIPT> 
11
<SCRIPT LANGUAGE="VBScript" RUNAT=SERVER SRC="common/jiraIssues.vbs"></SCRIPT> 
119 ghuddy 12
<%
13
'------------ Variable Definition -------------
14
Dim rsCQ
15
Dim rsDepIss
16
Dim SQLstr
17
Dim fixedIssDict
18
Dim notesIssDict
19
Dim issArr()
20
Dim depIssDict
21
Dim sDocTitle
22
Dim rsQry, rsTemp
23
Dim iss_db_id, G1_template, G1_style, currG1
24
Dim retVal
25
Dim baseURL
26
Dim rsProjId
27
Dim rsPkgMetrics
28
Dim rsCodeReviewURL
129 ghuddy 29
Dim vcsInfoCollector
119 ghuddy 30
'------------ Constants Declaration -----------
31
Const enumLoc_iss_db = 0
32
Const enumLoc_iss_id = 1
33
Const enumLoc_iss_num = 2
34
Const enumLoc_summary = 3
35
Const enumLoc_status = 4
36
Const enumLoc_priority = 5
37
Const enumLoc_issue_type = 6
38
'------------ Variable Init -------------------
39
Set fixedIssDict = CreateObject("Scripting.Dictionary")
40
Set notesIssDict = CreateObject("Scripting.Dictionary")
41
Set depIssDict = CreateObject("Scripting.Dictionary")
129 ghuddy 42
Set vcsInfoCollector = CreateObject("Scripting.Dictionary")
119 ghuddy 43
'----------------------------------------------
44
%>
5266 dpurdie 45
<!-- Local Java Script -->
46
<script language="JavaScript">
47
//  Local Tips
48
formTips.tips.following       = stdTip(200, 'Following', 'The user may \'follow\' a package in one or more Projects.<p>When the package is released the user will be notified by email.' );
7349 dpurdie 49
formTips.tips.baseView       = stdTip(200, 'Base View', 'The group to which that package has been logically assigned to within this release.'+
50
                                                        '<p>If a WIP or PENDING Version will replace a package already in this release then it will take on the base view of the existing package when it is released.'+
51
                                                        '<p>If the released package is in a different Base View, then it will be displayed in [square brackets]' );
6440 dpurdie 52
formTips.tips.ripple_stop     = stdTip(200, 'Ripple Stop', 'When set, will prevent the package being rippled. May be cleared to allow the ripple to continue.<p>If marked as \'Persistent\', then each new version will be marked to prevent rippling.' );
6480 dpurdie 53
formTips.tips.PreviousVcsTag  = newTip(-150, 20, 200, 10, 'PREVIOUS VCS TAG','This is the vcs tag of the immediate ancestor version to the current package version.'+
54
                                       '<br><br>NOTE:<br>Derivation of this has no sensitivity to the selected release.');
55
formTips.tips.PreviousSignificantVcsTag= newTip(-150, 20, 200, 10, 'PREVIOUS SIGNIFICANT VCS TAG',
56
                                                       'This is the vcs tag of the ancestor version immediately preceding a significant (non-ripple) change that led to the current package version.'+
57
                                                       '<br><br>NOTE:<br>Derivation of this has no sensitivity to the selected release.');
58
 
59
formTips.tips.PreviousNonRippleVcsTag= newTip(-150, 20, 200, 10, 'PREVIOUS NON RIPPLE VCS TAG',
60
                                                       'This is the vcs tag of the preceding significant (non-ripple) change that led to the current package version.'+
61
                                                       '<br><br>NOTE:<br>Derivation of this has no sensitivity to the selected release.');
6497 dpurdie 62
formTips.tips.CreationHints= newTip(-150, 20, 200, 10, 'HINTS FOR PACKAGE CREATION',
63
                                                       'These are not correct commands. They are command hints to assist in creating a new package.');
6642 dpurdie 64
formTips.tips.BuildOwner= newTip(-150, 20, 200, 10, 'BUILD OWNER',
65
                                                       'The Build Owner will be notified of Build Failures when a new package-version fails to build.' +
66
                                                        '<p>The Build Owner is set to the person who created the new version or who released the version to the build system by setting its state to Pending.');
7379 dpurdie 67
formTips.tips.JatsExtraction_SVN  = stdTip(250,'Subversion', 'Various extraction commands.<br>Choose a command that suits the current requirements.' +
68
                                                     '<p>Default - suits most requirements' +
69
                                                     '<br>Tag - Trace Tag back to development branch' +
70
                                                     '<br>Tip - Tip of the development branch' +
71
                                                     '<br>Work - Default' +
72
                                                     '<br>Exact - Extract the tagged instance' );
73
formTips.tips.JatsExtraction_GIT  = stdTip(200,'Git', 'Various extraction commands.<br>Choose a command that suits the current requirements.' );
74
 
75
formTips.tips.JatsExtraction_CC   = stdTip(200, 'ClearCase', 'Various extraction commands.<br>Choose a command that suits the current requirements.' +
76
                                                     '<p>A Project Branch will be displayed if configured, but it may not be suitable for all packages.');
77
 
78
formTips.tips.JatsExtraction_CVS  = stdTip(200,'CVS','Various extraction commands.<br>Choose a command that suits the current requirements.' );
79
formTips.tips.JatsExtraction_     = stdTip(200,'Unknown Version Control System','Various extraction commands.<br>Choose a command that suits the current requirements.' );
6480 dpurdie 80
 
7468 dpurdie 81
formTips.tips.inManifest  = stdTip(200, 'Include in Manifest','When enabled and the Release is also configured to support S3 Manifests then this package-version will be available in the manifest');
7395 dpurdie 82
 
83
 
5266 dpurdie 84
</script>
119 ghuddy 85
<%
86
'----------------------------------------------------------------------------------------------------------------------------------------
87
Function asDepIss ( SSiss_db_id, SScolumn )
121 hknight 88
   If NOT depIssDict.Exists (SSiss_db_id) Then Exit Function
119 ghuddy 89
 
121 hknight 90
   asDepIss = issArr ( SScolumn, CInt( depIssDict.Item (SSiss_db_id) ) )
119 ghuddy 91
End Function
92
'----------------------------------------------------------------------------------------------------------------------------------------
93
Function FixedIssues ( parPv_id )
121 hknight 94
   Dim sqlstr, rsTemp
95
   sqlstr = "SELECT pv_id FROM cq_issues WHERE pv_id = "& parPv_id &" AND iss_state = "& enumISSUES_STATE_FIXED
96
   Set rsTemp = OraDatabase.DbCreateDynaset( sqlstr, cint(0))
119 ghuddy 97
 
121 hknight 98
   If ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) Then
99
      FixedIssues = TRUE
100
   Else
101
      FixedIssues = FALSE
102
   End If
119 ghuddy 103
 
121 hknight 104
   rsTemp.Close()
105
   Set rsTemp = nothing
119 ghuddy 106
End Function
107
'----------------------------------------------------------------------------------------------------------------------------------------
108
Function SQL_Package_Information ( nPv_id )
121 hknight 109
   SQL_Package_Information = _
110
   " SELECT *"&_
111
   "   FROM PACKAGE_VERSIONS pv"&_
112
   "  WHERE pv.pv_id = "& nPv_id
119 ghuddy 113
End Function
114
'----------------------------------------------------------------------------------------------------------------------------------------
115
Function SQL_Dependency_Issues ( NNpv_id )
121 hknight 116
   SQL_Dependency_Issues = _
117
   " SELECT pkg.pkg_name, pv.pkg_version, pv.pv_id, cqi.iss_db, cqi.iss_id, cqi.iss_state, pv.comments AS reasons"&_
118
   "     FROM cq_issues cqi,"&_
119
   "          package_dependencies dep,"&_
120
   "          packages pkg,"&_
121
   "          package_versions pv"&_
122
   "    WHERE dep.pv_id = "& NNpv_id &_
123
   "      AND dep.dpv_id = cqi.pv_id(+)"&_
124
   "      AND dep.dpv_id = pv.pv_id(+)"&_
125
   "      AND pv.pkg_id = pkg.pkg_id"&_
126
   "   ORDER BY UPPER(pkg.pkg_name) ASC, cqi.iss_state DESC"
119 ghuddy 127
End Function
128
'----------------------------------------------------------------------------------------------------------------------------------------
129
Function SQL_Additional_Notes ( nPv_id )
121 hknight 130
   SQL_Additional_Notes = ReadFile( rootPath & "queries\additional_notes.sql" )
131
   SQL_Additional_Notes = Replace( SQL_Additional_Notes, ":PV_ID", nPv_id )
119 ghuddy 132
End Function
133
'----------------------------------------------------------------------------------------------------------------------------------------
134
Function SQL_Unit_Tests ( nPv_id )
121 hknight 135
   SQL_Unit_Tests = ReadFile( rootPath & "queries\unit_tests.sql" )
136
   SQL_Unit_Tests = Replace( SQL_Unit_Tests, ":PV_ID", nPv_id )
119 ghuddy 137
End Function
138
'----------------------------------------------------------------------------------------------------------------------------------------
121 hknight 139
' Function returns the number of imported clearquest issues
140
' and builds a string suitable for querying the clearquest issues database
141
Function Get_Package_Issues ( NNpv_id, SSsql, DDfixedIss, DDnotesIssDict, nIssState )
3975 dpurdie 142
   Dim rsTemp, sqlstr, DEVIiss, retVal
119 ghuddy 143
 
121 hknight 144
   If IsObject(DDfixedIss) Then
145
      ' Find this package issues
146
      sqlstr = "SELECT iss_db, iss_id, iss_state, notes FROM CQ_ISSUES WHERE pv_id="& NNpv_id &"  AND iss_state = "& nIssState
147
   Else
148
      ' Find dependency issues
149
      sqlstr = "SELECT iss_db, iss_id, iss_state, notes FROM CQ_ISSUES WHERE  pv_id IN ( "&_
150
               " SELECT dpv_id FROM package_dependencies WHERE pv_id = "& NNpv_id &_
151
               " )"
152
   End If
119 ghuddy 153
 
121 hknight 154
   Set rsTemp = OraDatabase.DbCreateDynaset( sqlstr, cint(0))
155
   retVal = rsTemp.RecordCount
119 ghuddy 156
 
121 hknight 157
   DEVIiss  = "-1"
119 ghuddy 158
 
121 hknight 159
   While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
160
      If CInt(rsTemp("iss_db")) = CInt(enumCLEARQUEST_DEVI_ID) Then
161
         DEVIiss = DEVIiss &","& rsTemp("iss_id")
162
      End If
119 ghuddy 163
 
121 hknight 164
      If IsObject(DDfixedIss) Then
165
         ' Store only Fixed Issues
159 ghuddy 166
         If CInt(rsTemp("iss_state")) = CInt(enumISSUES_STATE_FIXED) AND _
167
           DDfixedIss.Exists(Cstr(rsTemp("iss_db") &"."& rsTemp("iss_id"))) = false Then DDfixedIss.Add Cstr(rsTemp("iss_db") &"."& rsTemp("iss_id")), ""
121 hknight 168
      End If
119 ghuddy 169
 
121 hknight 170
      If IsObject(DDnotesIssDict) Then
171
         ' Store Notes
159 ghuddy 172
         If Not IsNull(rsTemp("notes")) AND (rsTemp("notes") <> "") AND _
173
           DDnotesIssDict.Exists(Cstr(rsTemp("iss_db") &"."& rsTemp("iss_id"))) = false Then DDnotesIssDict.Add Cstr(rsTemp("iss_db") &"."& rsTemp("iss_id")), Cstr(rsTemp("notes"))
121 hknight 174
      End If
119 ghuddy 175
 
121 hknight 176
      rsTemp.MoveNext
177
   WEnd
119 ghuddy 178
 
121 hknight 179
   ' Construct SQL statement for CQ database
180
   SSsql = ReadFile( rootPath & "queries\cq_issues.sql" )
181
   SSsql = Replace( SSsql, "/*enumCLEARQUEST_DEVI_ID*/", enumCLEARQUEST_DEVI_ID)
182
   SSsql = Replace( SSsql, "/*DEVIiss*/", DEVIiss)
119 ghuddy 183
 
121 hknight 184
   rsTemp.Close()
185
   Set rsTemp = nothing
119 ghuddy 186
 
121 hknight 187
   Get_Package_Issues = retVal
119 ghuddy 188
 
121 hknight 189
End Function
119 ghuddy 190
'----------------------------------------------------------------------------------------------------------------------------------------
191
Sub LastPvId (PvId)
121 hknight 192
   Dim sqlstr
119 ghuddy 193
 
131 ghuddy 194
   sqlstr = "SELECT pv_id, pkg_version, comments, last_pv_id FROM PACKAGE_VERSIONS WHERE PV_ID= "& PvId
119 ghuddy 195
 
121 hknight 196
   Set rsQry = OraDatabase.DbCreateDynaset( sqlstr, cint(0) )
119 ghuddy 197
 
198
End Sub
199
'----------------------------------------------------------------------------------------------------------------------------------------
200
Function  Get_CQ_Issues ( SSsql, OOrsCQ )
201
 
121 hknight 202
   On Error Resume Next
4553 dpurdie 203
   Set OOrsCQ = OraDatabase.DbCreateDynaset( SSsql, cint(0))
121 hknight 204
   Get_CQ_Issues = Err.Number
119 ghuddy 205
 
206
End Function
207
'----------------------------------------------------------------------------------------------------------------------------------------
208
Function Get_Dependency_CQ_Issues ( SSsql, OOrsCQ, DDdepIss, AAiss )
121 hknight 209
   Dim recCnt
119 ghuddy 210
 
121 hknight 211
   On Error Resume Next
4553 dpurdie 212
   Set OOrsCQ = OraDatabase.DbCreateDynaset( SSsql, cint(0))
119 ghuddy 213
 
121 hknight 214
   ' Exit with error if error occurs
215
   Get_Dependency_CQ_Issues = Err.Number
216
   If Err.Number <> 0 Then Exit Function
119 ghuddy 217
 
121 hknight 218
   recCnt = 1
119 ghuddy 219
 
121 hknight 220
   While ((NOT OOrsCQ.BOF) AND (NOT OOrsCQ.EOF))
221
      ReDim Preserve AAiss( 6, recCnt )
222
      'If NOT DDdepIss.Exists Cstr(rsTemp("iss_db") &"."& rsTemp("iss_id")) Then
223
         DDdepIss.Add Cstr(OOrsCQ("iss_db") &"."& OOrsCQ("iss_id")), Cstr(recCnt)
224
      'End If
225
      AAiss( enumLoc_iss_db, recCnt )    = OOrsCQ("iss_db")
226
      AAiss( enumLoc_iss_id, recCnt )    = OOrsCQ("iss_id")
227
      AAiss( enumLoc_iss_num, recCnt )   = OOrsCQ("iss_num")
228
      AAiss( enumLoc_summary, recCnt )   = OOrsCQ("summary")
229
      AAiss( enumLoc_status, recCnt )    = OOrsCQ("status")
230
      AAiss( enumLoc_priority, recCnt )    = OOrsCQ("priority")
231
      AAiss( enumLoc_issue_type, recCnt ) = OOrsCQ("issue_type")
119 ghuddy 232
 
121 hknight 233
      recCnt = recCnt + 1
234
      OOrsCQ.MoveNext
235
   WEnd
119 ghuddy 236
 
121 hknight 237
   OOrsCQ.Close()
119 ghuddy 238
End Function
239
'----------------------------------------------------------------------------------------------------------------------------------------
240
Sub Group_By ( rsG, styleG, currG )
121 hknight 241
   If rsG = currG Then Exit Sub
242
   Response.write styleG
243
   'currG = rsG
119 ghuddy 244
End Sub
245
'----------------------------------------------------------------------------------------------------------------------------------------
246
Sub CheckUnitTestsState ( nPv_id, outMSG, outMSG_ID, outNote, outTestsFound )
121 hknight 247
   Dim sqlstr, rsTemp
248
   sqlstr = ReadFile( rootPath & "queries\unit_test_entries_check.sql" )
249
   sqlstr = Replace( sqlstr, ":PV_ID", nPv_id)
250
   sqlstr = Replace( sqlstr, ":enumTEST_TYPE_NOT_DONE", enumTEST_TYPE_NOT_DONE)
119 ghuddy 251
 
121 hknight 252
   Set rsTemp = OraDatabase.DbCreateDynaset( sqlstr, cint(0))
119 ghuddy 253
 
121 hknight 254
   If ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) Then
255
      outMSG = rsTemp("msg")
256
      outMSG_ID = CInt(rsTemp("msg_id"))
257
      outNote = rsTemp("test_summary")
258
      outTestsFound = FALSE
119 ghuddy 259
 
121 hknight 260
      If IsNull(rsTemp("msg")) Then outTestsFound = TRUE
261
   End If
119 ghuddy 262
 
121 hknight 263
   rsTemp.Close()
264
   Set rsTemp = nothing
119 ghuddy 265
End Sub
266
'----------------------------------------------------------------------------------------------------------------------------------------
267
Function FormatAccepted ( sAccepted, nTest_id )
121 hknight 268
   Dim tempSTR
269
   If IsNull(nTest_id) Then Exit Function
119 ghuddy 270
 
121 hknight 271
   tempSTR = ""
119 ghuddy 272
 
121 hknight 273
   If pageIsEditable Then
274
      tempSTR = "<select name='acc"& nTest_id &"' class='form_item'>"
275
   Else
276
      tempSTR = "<select name='acc"& nTest_id &"' class='form_item' disabled>"
277
   End If
119 ghuddy 278
 
121 hknight 279
   If sAccepted = enumUNIT_TEST_ACCEPTED Then
280
      tempSTR = tempSTR  &"<option></option>"&_
281
                     "<option value='"& enumUNIT_TEST_ACCEPTED &"' SELECTED>Yes</option>"&_
282
                     "<option value='"& enumUNIT_TEST_NOTACCEPTED &"'>No</option>"
119 ghuddy 283
 
121 hknight 284
   ElseIf sAccepted = enumUNIT_TEST_NOTACCEPTED Then
285
      tempSTR = tempSTR  &"<option></option>"&_
286
                     "<option value='"& enumUNIT_TEST_ACCEPTED &"'>Yes</option>"&_
287
                     "<option value='"& enumUNIT_TEST_NOTACCEPTED &"' SELECTED>No</option>"
119 ghuddy 288
 
121 hknight 289
   Else
290
      tempSTR = tempSTR  &"<option SELECTED></option>"&_
291
                     "<option value='"& enumUNIT_TEST_ACCEPTED &"'>Yes</option>"&_
292
                     "<option value='"& enumUNIT_TEST_NOTACCEPTED &"'>No</option>"
119 ghuddy 293
 
121 hknight 294
   End If
119 ghuddy 295
 
121 hknight 296
   tempSTR = tempSTR & "</select>"
119 ghuddy 297
 
121 hknight 298
   FormatAccepted = tempSTR
119 ghuddy 299
 
300
End Function
301
'----------------------------------------------------------------------------------------------------------------------------------------
302
Function SQL_CodeReview ( nPv_id )
121 hknight 303
   SQL_CodeReview = _
304
   "   SELECT cr.date_of_review, cr.time_spent, cr.review_reason, cr.rteam_domain_expert,"&_
305
   "          cr.rteam_language_expert, cr.rteam_peer_developer, cr.rteam_author,"&_
306
   "          cr.files_reviewed, cr.review_results, cr.issues_raised,"&_
307
   "          cr.review_comments, cr.fnc_s_meets_functionality,"&_
308
   "          cr.fnc_c_meets_functionality"&_
309
   "     FROM code_reviews cr"&_
310
   "    WHERE cr.pv_id = "& nPv_id
119 ghuddy 311
End Function
312
'----------------------------------------------------------------------------------------------------------------------------------------
313
Function SQL_Build_Env ( nPv_id )
121 hknight 314
   SQL_Build_Env = _
315
   " SELECT pv.*, bm.BM_ID,"&_
316
   "         bm.BM_NAME,"&_
4134 dpurdie 317
   "         pkgbinfo.BSA_ID,"&_
318
   "         bsa.BSA_NAME"&_
121 hknight 319
   "     FROM PACKAGE_BUILD_INFO pkgbinfo,"&_
320
   "           BUILD_MACHINES bm,"&_
4134 dpurdie 321
   "           PACKAGE_VERSIONS pv,"&_
322
   "           BUILD_STANDARDS_ADDENDUM bsa"&_
121 hknight 323
   "    WHERE pkgbinfo.BM_ID = bm.BM_ID"&_
324
   "    AND pv.PV_ID = pkgbinfo.PV_ID"&_
325
   "      AND pkgbinfo.PV_ID = "& nPv_id  &_
4134 dpurdie 326
   "      AND pkgbinfo.BSA_ID = bsa.BSA_ID"&_
121 hknight 327
   "   ORDER BY UPPER(bm.BM_NAME) "
119 ghuddy 328
End Function
329
'----------------------------------------------------------------------------------------------------------------------------------------
330
Function DecodeOverallResult ( ByVal cCheck )
121 hknight 331
   If cCheck = "" OR IsNull(cCheck) Then cCheck = 0
119 ghuddy 332
 
121 hknight 333
   Select Case CInt( cCheck )
334
      Case enumCODE_REVIEW_ACCEPTED
335
         DecodeOverallResult = "Accepted"
336
      Case enumCODE_REVIEW_MINOR_UPDATES
337
         DecodeOverallResult = "Minor updates required"
338
      Case enumCODE_REVIEW_MAJOR_REWORK
339
         DecodeOverallResult = "Major rework required"
340
      Case Else
341
         DecodeOverallResult = ""
342
   End Select
119 ghuddy 343
 
344
End Function
345
'----------------------------------------------------------------------------------------------------------------------------------------
4134 dpurdie 346
Function GetBuildType ( nBuildType, nBuildName )
119 ghuddy 347
 
4134 dpurdie 348
   if (IsNull(nBuildType) OR (nBuildType = "")) Then
349
       GetBuildType = "Build type not defined"
350
   ElseIf (IsNull(nBuildName) OR (nBuildName = "") ) Then
351
       GetBuildType = "Build Name not defined"
121 hknight 352
   Else
4134 dpurdie 353
        GetBuildType = nBuildName    
121 hknight 354
   End If
119 ghuddy 355
 
4134 dpurdie 356
  '' Wrap around brackets
121 hknight 357
   GetBuildType = "("& GetBuildType &")"
119 ghuddy 358
 
359
End Function
360
'----------------------------------------------------------------------------------------------------------------------------------------
361
Sub GetPackageMetrics (NNpv_id, rsTemp)
362
 
121 hknight 363
   OraDatabase.Parameters.Add "PV_ID", NNpv_id, ORAPARM_INPUT, ORATYPE_NUMBER
119 ghuddy 364
 
121 hknight 365
   Set rsTemp = OraDatabase.DbCreateDynaset( GetQuery("PackageMetrics.sql"), cint(0))
119 ghuddy 366
 
121 hknight 367
   OraDatabase.Parameters.Remove "PV_ID"
119 ghuddy 368
 
369
End Sub
370
'----------------------------------------------------------------------------------------------------------------------------------------
371
Sub GetCodeReviewURLs (NNpv_id, rsTemp)
372
 
121 hknight 373
   OraDatabase.Parameters.Add "PV_ID", NNpv_id, ORAPARM_INPUT, ORATYPE_NUMBER
119 ghuddy 374
 
121 hknight 375
   Set rsTemp = OraDatabase.DbCreateDynaset( GetQuery("CodeReviewURLs.sql"), cint(0))
119 ghuddy 376
 
121 hknight 377
   OraDatabase.Parameters.Remove "PV_ID"
119 ghuddy 378
 
379
End Sub
161 iaugusti 380
 
381
 
382
'---------------------------------------------------------------
383
Sub Query_Config_Spec (NNRtag_id, NNPv_id)
384
   OraDatabase.Parameters.Add "RTAG_ID", NNRtag_id,   ORAPARM_INPUT, ORATYPE_NUMBER
385
   OraDatabase.Parameters.Add "PV_ID", NNPv_id,   ORAPARM_INPUT, ORATYPE_NUMBER
386
   If NNRtag_id <> "" Then
387
      If pkgInfoHash.Item ("dlocked") <> "Y" Then
388
         Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("config_spec.sql"), cint(0))
389
      Else
390
         Set rsQry = OraDatabase.DbCreateDynaset( Replace(GetQuery("config_spec.sql"), "PV.LAST_PV_ID", "PV.PV_ID"), cint(0))
391
      End If
392
   Else
393
      If pkgInfoHash.Item ("dlocked") <> "Y" Then
394
         Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("config_spec_nortag.sql"), cint(0))
395
      Else
396
         Set rsQry = OraDatabase.DbCreateDynaset( Replace(GetQuery("config_spec_nortag.sql"), "PV.LAST_PV_ID", "PV.PV_ID"), cint(0))
397
      End If
398
   End If
399
   OraDatabase.Parameters.Remove "RTAG_ID"
400
   OraDatabase.Parameters.Remove "PV_ID"
401
End Sub
402
 
403
'---------------------------------------------------------------
167 brianf 404
' Returns the jats extraction commands
2735 dpurdie 405
Sub Jats_Extract_Command (ByRef sjats_cmds(), ByRef ajats_cmd_test, ByRef sjats_cmds_qh, ByRef sjats_extractable)
161 iaugusti 406
   Dim dlocked: dlocked = pkgInfoHash.Item("dlocked")
169 brianf 407
   Dim pkg_vcs_tag: pkg_vcs_tag = Get_Pkg_Vcs_Tag(Request("pv_id"))
1376 dpurdie 408
   Dim ii: ii = -1
409
   Dim baseCmd
2735 dpurdie 410
   sjats_extractable = false
161 iaugusti 411
 
6497 dpurdie 412
   sjats_cmds_qh = vcsInfoCollector.Item("vcs_tag")
413
   If ( sjats_cmds_qh = "CC" OR sjats_cmds_qh = "SVN" ) Then
414
      sjats_extractable = true
415
   End If
416
 
167 brianf 417
   ' if not released then use last package version vcs tag and branch else use current vcs tag
418
   If dlocked <> "Y" Then
419
     ' not released, so get last package version id
1376 dpurdie 420
 
6497 dpurdie 421
     Dim last_version_valid
167 brianf 422
     Dim last_pv_id: last_pv_id = pkgInfoHash.Item("last_pv_id")
6497 dpurdie 423
     Dim last_pkg_vcs_tag
1376 dpurdie 424
     Dim VcsType
161 iaugusti 425
 
6497 dpurdie 426
     last_version_valid = TRUE
427
     If IsNull(pkgInfoHash.Item ("previous_version")) Then
428
         last_version_valid = FALSE
429
     ElseIf last_pv_id = pkgInfoHash.Item ("pv_id") Then
430
         last_version_valid = FALSE
431
     ElseIf pkgInfoHash.Item ("pkg_count") = 1 Then 
432
         last_version_valid = FALSE
433
     End If
434
 
435
     If last_version_valid Then
436
         last_pkg_vcs_tag = Get_Pkg_Vcs_Tag(last_pv_id)
437
     End If
438
 
2365 dpurdie 439
     If (last_version_valid AND last_pkg_vcs_tag <> "") Then
440
        VcsType = Mid(last_pkg_vcs_tag, 1, InStr(1, last_pkg_vcs_tag, "::") - 1 )
441
        sjats_cmds_qh = VcsType
442
        baseCmd =  "jats vcsrelease -extract -label """ & last_pkg_vcs_tag & """"
443
        ii = ii+1 : sjats_cmds(ii) = baseCmd
1376 dpurdie 444
 
445
         ' ClearCase extraction may get a project specific branch appended
446
         ' This will be used to automatically branch the files in the package
447
         '
448
         If (VcsType = "CC") Then
449
             Call Query_Config_Spec (Request("rtag_id"), last_pv_id)
450
             Dim config_branch: config_branch = rsQry("config_spec_branch")
451
             If NOT IsNull(config_branch) AND (config_branch <> "") Then
452
                 ii = ii+1 : sjats_cmds(ii) = baseCmd & " -branch " & config_branch
453
             End If
454
         End If
455
 
456
         If (VcsType = "SVN") Then
457
            ii = ii+1 : sjats_cmds(ii) = baseCmd & " -devMode=Tag"
458
            ii = ii+1 : sjats_cmds(ii) = baseCmd & " -devMode=Tip"
459
            ii = ii+1 : sjats_cmds(ii) = baseCmd & " -devMode=Work"
460
            ii = ii+1 : sjats_cmds(ii) = baseCmd & " -devMode=Exact"
461
         End If
167 brianf 462
     Else
6497 dpurdie 463
         'ii = ii+1 : sjats_cmds(ii) = "No Previous version to extract"
167 brianf 464
     End If
1376 dpurdie 465
 
466
     baseCmd =  "jats vcsrelease -extract -label """ & pkg_vcs_tag & """"
467
     ii = ii+1 : sjats_cmds(ii) = baseCmd
468
 
161 iaugusti 469
   Else
2735 dpurdie 470
    ' released
6497 dpurdie 471
    if sjats_extractable Then
2735 dpurdie 472
        baseCmd =  "jats vcsrelease -extract -label """ & pkg_vcs_tag & """"
473
        ii = ii+1 : sjats_cmds(ii) = baseCmd
474
    Else
475
        baseCmd =  "Cannot be extracted with JATS"
476
        ii = ii+1 : sjats_cmds(ii) = baseCmd
477
    End If
478
 
161 iaugusti 479
   End If
167 brianf 480
 
1376 dpurdie 481
   ' Test Command
2735 dpurdie 482
   if sjats_extractable Then
483
        ajats_cmd_test = "jats vcsrelease -test -label """ & pkg_vcs_tag & """"
484
   Else
485
        ajats_cmd_test = "Cannot be extracted with JATS"
486
   End If
161 iaugusti 487
 
1376 dpurdie 488
   ReDim Preserve sjats_cmds(ii)
161 iaugusti 489
   rsQry.Close()
490
   Set rsQry = nothing
491
 
492
End Sub
493
 
167 brianf 494
'---------------------------------------------------------------
495
' Returns the VCS tag for the specified package version
2365 dpurdie 496
' Note: ORAPARM_OUTPUT default size is 127 bytes. This is too short for some
497
'
169 brianf 498
Function Get_Pkg_Vcs_Tag(apv_id)
167 brianf 499
   OraDatabase.Parameters.Add "PV_ID", apv_id, ORAPARM_INPUT, ORATYPE_NUMBER
2365 dpurdie 500
   OraDatabase.Parameters.Add "RETURN_CODE","xxxx", ORAPARM_OUTPUT, ORATYPE_VARCHAR2
2735 dpurdie 501
   OraDatabase.Parameters("RETURN_CODE").MinimumSize = 200
1376 dpurdie 502
   On Error Resume Next
503
        OraDatabase.ExecuteSQL ("BEGIN   :RETURN_CODE := PK_RMAPI.RETURN_VCS_TAG( :PV_ID );   END;")
504
        Get_Pkg_Vcs_Tag = OraDatabase.Parameters("RETURN_CODE").Value
505
   On Error Goto 0
167 brianf 506
   OraDatabase.Parameters.Remove "PV_ID"
507
   OraDatabase.Parameters.Remove "RETURN_CODE"
508
End Function
5266 dpurdie 509
'-------------------------------------------------
510
' Description:  Return a string displaying if the user is following this package in theis Release
119 ghuddy 511
'----------------------------------------------------------------------------------------------------------------------------------------
5266 dpurdie 512
Function GetFollowing ()
513
   Dim rsQry
5269 dpurdie 514
   Dim thisProject, otherProjects, someProjects
5266 dpurdie 515
 
516
   GetFollowing = "Not logged in"
517
 
518
   If objAccessControl.UserLogedIn() Then
519
       OraDatabase.Parameters.Add "PKG_ID",  pkgInfoHash.Item ("pkg_id"), ORAPARM_INPUT, ORATYPE_NUMBER
520
       OraDatabase.Parameters.Add "PROJ_ID", pkgInfoHash.Item ("proj_id"), ORAPARM_INPUT, ORATYPE_NUMBER
521
       OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId(), ORAPARM_INPUT, ORATYPE_NUMBER
522
 
5269 dpurdie 523
       If pkgInfoHash.Item ("proj_id") <> "" Then
524
           Set rsQry = OraDatabase.DbCreateDynaset( "SELECT * FROM PACKAGE_INTEREST WHERE PKG_ID = :PKG_ID AND PROJ_ID = :PROJ_ID AND USER_ID = :USER_ID", cint(0))
525
           thisProject = rsQry.RecordCount > 0
5266 dpurdie 526
 
5269 dpurdie 527
           Set rsQry = OraDatabase.DbCreateDynaset( "SELECT * FROM PACKAGE_INTEREST WHERE PKG_ID = :PKG_ID AND PROJ_ID != :PROJ_ID AND USER_ID = :USER_ID", cint(0))
528
           otherProjects = rsQry.RecordCount > 0
5266 dpurdie 529
 
5269 dpurdie 530
           If thisProject Then
531
               If otherProjects Then
532
                    GetFollowing = "Yes. In this and " & rsQry.RecordCount & " other projects"
533
                   Else
534
                    GetFollowing = "Yes. Only this project"
535
               End If
536
           Else
537
               If otherProjects Then
538
                    GetFollowing = "Yes. In " & rsQry.RecordCount & " other projects"
539
                   Else
540
                    GetFollowing = "No"
541
               End If
5266 dpurdie 542
           End If
5269 dpurdie 543
 
5266 dpurdie 544
       Else
5269 dpurdie 545
           Set rsQry = OraDatabase.DbCreateDynaset( "SELECT * FROM PACKAGE_INTEREST WHERE PKG_ID = :PKG_ID AND USER_ID = :USER_ID", cint(0))
546
           someProjects = rsQry.RecordCount > 0
547
 
548
           If rsQry.RecordCount > 0 Then
549
                GetFollowing = "Yes. In " & rsQry.RecordCount & " Projects"
5266 dpurdie 550
               Else
551
                GetFollowing = "No"
552
           End If
5269 dpurdie 553
 
5266 dpurdie 554
       End If
555
 
5269 dpurdie 556
 
5266 dpurdie 557
       OraDatabase.Parameters.Remove "USER_ID"
558
       OraDatabase.Parameters.Remove "PROJ_ID"
559
       OraDatabase.Parameters.Remove "PKG_ID"
560
       rsQry.Close()
561
       Set rsQry = nothing
562
 
5270 dpurdie 563
       If pageIsEditable Then
564
           GetFollowing = GetFollowing &  "<img class='image12 vixIframeDialog' href='_iframe_pkgs_followed.asp?proj_id=" & pkgInfoHash.Item ("proj_id") & "&pkg_id=" & pkgInfoHash.Item ("pkg_id") & "' title='Follow: " & pkgInfoHash.Item ("pkg_name") &"' src='images/i_follow.gif'>"
565
       End If
5266 dpurdie 566
 
567
    End If
568
End Function
5980 dpurdie 569
'---------------------------------------------------------------
5338 dpurdie 570
' Description:  Return a string displaying licence information
5980 dpurdie 571
'---------------------------------------------------------------
5338 dpurdie 572
Function getLicence
573
   Dim rsQry, rsSql, lName
574
   Dim licenceList
575
   Dim joiner : joiner = ""
576
   Dim otherVersions : otherVersions = ""
577
 
578
   Set licenceList=Server.CreateObject("Scripting.Dictionary")
579
   getLicence = ""
580
 
581
   ' Determine license for this package-version
582
	OraDatabase.Parameters.Add "PV_ID", pkgInfoHash.Item ("pv_id"), ORAPARM_INPUT, ORATYPE_NUMBER
583
 
584
    Set rsQry = OraDatabase.DbCreateDynaset( _
585
		"SELECT l.NAME FROM LICENCES l, LICENCING ld" &_
586
		" WHERE l.LICENCE = ld.LICENCE " &_
587
		" and ld.PV_ID = :PV_ID" &_
588
		" ORDER by l.NAME" _
589
		, cint(0))
590
 
591
	While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
592
       lName = rsQry("name")
593
	   getLicence = getLicence & joiner & lName 
594
	   licenceList.Add lName, "Y"
595
	   joiner = ", "
596
	   rsQry.MoveNext
597
	WEnd
598
    rsQry.Close()
599
    Set rsQry = nothing
600
 
601
	'
602
	' Indicate if other versions have licences - ignore those we already know about
603
	' The data is stored on a package-version basis
604
	'
605
    Set rsQry = OraDatabase.DbCreateDynaset( _
606
		"SELECT UNIQUE ld.NAME" &_
607
		" FROM licencing l,LICENCES ld" &_
608
		" WHERE l.pv_id IN" &_
609
		"  (SELECT pv_id" &_
610
		"  FROM package_versions" &_
611
		"  WHERE pkg_id IN" &_
612
		"    (SELECT pkg_id FROM package_versions WHERE pv_id=:PV_ID)" &_
613
		"    AND pv_id != :PV_ID" &_
614
		"  )" &_
615
		"  AND l.LICENCE = ld.LICENCE" &_
616
		"  ORDER by ld.NAME" _
617
		, cint(0))
618
 
619
	joiner = ""
620
	While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
621
       lName = rsQry("name")
622
       If NOT licenceList.Exists(lName) Then
623
           otherVersions = otherVersions & joiner & rsQry("name")
624
	       joiner = ", "
625
       End If
626
	   rsQry.MoveNext
627
	WEnd
5952 dpurdie 628
 
5338 dpurdie 629
    OraDatabase.Parameters.Remove "PV_ID"
630
    rsQry.Close()
631
    Set rsQry = nothing
632
 
633
	If otherVersions <> "" Then
634
		getLicence = getLicence & ". Other Versions: " & otherVersions
635
	End If
636
End Function
5472 dpurdie 637
'-------------------------------------------------
638
Function getLinkUrl(pvid)
639
     Dim joiner : joiner = "?"
640
 
641
     getLinkUrl = scriptName
642
 
643
     If parRtag_id <> "" Then
644
        getLinkUrl = getLinkUrl + joiner + "rtag_id=" + parRtag_id
645
        joiner = "&"
646
     End If
647
 
648
     getLinkUrl = getLinkUrl + joiner + "pv_id=" + pvid
649
End Function
6480 dpurdie 650
'-------------------------------------------------
651
'   DisplayVersionRow   - Display a row of vesrion information
6497 dpurdie 652
'       pvid    - pvid to process. Null -> "Initial Version"
6480 dpurdie 653
'       title   - row title
654
'       helpTag - Tag for help
655
'
656
Sub DisplayVersionRow( pvid, title, helpTag )
657
      Dim   versionText
658
      Dim   tagText
659
      Dim   showLink
660
      Dim   clipClass
661
      Dim   ExtractText
662
      Dim   queryResult
663
 
6497 dpurdie 664
      If IsNull(pvid) Then
665
          versionText = "Initial Version"
666
          tagText = NULL
667
          showLink = FALSE
6480 dpurdie 668
      Else
6497 dpurdie 669
          Set   queryResult = OraDatabase.DbCreateDynaset( "SELECT pkg_version from package_versions where pv_id =" & pvid , cint(0))
6480 dpurdie 670
 
6497 dpurdie 671
          If (NOT queryResult.BOF ) AND (NOT queryResult.EOF) Then
672
            versionText = queryResult("pkg_version")
673
            tagText = Get_Pkg_Vcs_Tag(pvid)
674
            showLink = isDefined("showPrevVerLinks") 
675
          Else
676
            versionText = "Unknown"
677
            tagText = NULL
678
            showLink = FALSE
679
          End If
680
 
681
          queryResult.Close()
682
          Set queryResult = nothing
683
 
684
     End If
685
 
6480 dpurdie 686
      If sjats_extractable Then
687
        clipClass = "clip"
688
        ExtractText = NewLine_To_BR ( To_HTML(tagText) ) 
689
      Else
690
        clipClass = ""
691
        ExtractText = "Cannot be extracted with JATS"
692
      End If
693
      %>
694
         <tr>
6873 dpurdie 695
            <td width="20%" ><%=title%><%=Quick_Help(helpTag)%></td>
696
            <td>
6480 dpurdie 697
              <table width="100%" border="0" cellspacing="0" cellpadding="0">
6873 dpurdie 698
                <tr>
699
                  <td width=15% colspan=2 nowrap>
6480 dpurdie 700
                    <%=versionText%>
701
                    <%If showLink Then %>
702
                        <a href=<%=getLinkUrl(pvid)%>>
6827 dpurdie 703
                        <img src="images/i_link.gif" hspace="2" border="0" align='absmiddle' title="Show this version">
6480 dpurdie 704
                        </a>
705
                    <%End If%>
706
                  </td>
707
                  <%If NOT IsNull(tagText) Then %>
6873 dpurdie 708
                  <td colspan=2 nowrap class="<%=clipClass%>">
6480 dpurdie 709
                    <%=ExtractText%>
710
                  </td>
711
                  <%End If%>
712
                </tr>
713
              </table>
714
            </td>
715
         </tr>
716
      <%
717
End Sub
6497 dpurdie 718
 
719
'-------------------------------------------------
720
'   DisplayCreationCommands
721
'   Display commands that may be useful in the creation of the package
722
'
723
Sub DisplayCreationCommands
6508 dpurdie 724
    Dim VcsType: VcsType = vcsInfoCollector.Item("vcs_tag")
6497 dpurdie 725
    Dim title: title = "Package Creation Hints"
726
    Dim SvnUrl
727
    Dim SvnLabel
728
 
729
    If VcsType = "SVN" Then
730
        If pkgInfoHash.Item("src_path") <> "" Then
731
            SvnUrl = pkgInfoHash.Item("src_path")
732
            Dim lastBit: lastBit = InStrRev(SvnUrl, "/" )
733
            If lastBit > 1 Then
734
                SvnUrl = Left(SvnUrl, lastBit-1) 
735
            End If
736
        Else
737
            SvnUrl = "AUPERASVN0X/RepoName/" & pkgInfoHash.Item ("pkg_name")
738
        End If
739
        If pkgInfoHash.Item("pkg_label") <> "" Then
740
            SvnLabel = pkgInfoHash.Item("pkg_label") 
741
        Else
742
            SvnLabel = "SomeLabel.WIP"
743
        End If
744
 
745
      %>
746
         <tr>
6873 dpurdie 747
            <td><%=title%><%=Quick_Help("CreationHints")%></td>
748
            <td>
6497 dpurdie 749
              <table width="100%" border="0" cellspacing="0" cellpadding="0">
6873 dpurdie 750
                  <tr><td nowrap class="clip"> jats svn create_package -new <%=SvnUrl%> </td></tr>
751
                  <tr><td nowrap class="clip"> jats svn create_package -new <%=SvnUrl%> -import=&lt;PkgDir&gt; </td></tr>
752
                  <tr><td nowrap class="clip"> jats svn create_package -new <%=SvnUrl%> -label=<%=SvnLabel%> -import=&lt;PkgDir&gt; </td></tr>
753
                  <tr><td nowrap class="clip"> jats svn create_package -new <%=SvnUrl%> -label=<%=SvnLabel%> -import=<%=pkgInfoHash.Item ("pkg_name")%> </td></tr>
6497 dpurdie 754
              </table>
755
            </td>
756
         </tr>
757
      <%
6508 dpurdie 758
    Else
759
    %>
760
         <tr>
6873 dpurdie 761
            <td><%=title%></td>
762
            <td>Not supported under this version control system.</td>
6508 dpurdie 763
         </tr>
764
     <%
6497 dpurdie 765
    End If
766
End Sub
119 ghuddy 767
%>
768
<%
769
'------------------ MAIN LINE --------------------
770
'-------------------------------------------------
5932 dpurdie 771
If pkgInfoHash.Exists("pv_id") Then
119 ghuddy 772
%>
773
<!-- PACKAGE INFORMATION --------------------------------------------------------------------------------------------------------------->
7457 dpurdie 774
   <a name="PACKAGE_INFORMATION"></a>
6324 dpurdie 775
   <fieldset class="fset">
776
   <legend class="body_colb"><img src='images/s_info.gif' width='21' height='24' hspace='4' border='0' align='absmiddle'>Package Information</legend>
777
   <div style="display: block;float: right;margin-top: -20px;background-color: #FFF;padding: 0 5px;">
778
   <%If pageIsEditable Then%>
6827 dpurdie 779
           <span onClick="MM_openVixIFrame('_wform_pkg_info.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Package Info')" class="txt_linked pointer">Edit<img src="images/i_edit.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'></span>
6324 dpurdie 780
   <%End If%>
781
   </div>
6873 dpurdie 782
   <table width="100%" border="0" cellspacing="1" cellpadding="2" class='lhsGrey'>
129 ghuddy 783
      <%
7457 dpurdie 784
        Set rsQry = OraDatabase.DbCreateDynaset( SQL_Package_Information ( parPv_id ), cint(0))
785
        Call get_vcs_info_for_package( rsQry("pkg_label"), rsQry("build_type"), rsQry("vcs_type_id"), rsQry("dlocked"), vcsInfoCollector )
5293 dpurdie 786
        ' Status:
161 iaugusti 787
        Dim sstate
171 brianf 788
        Dim bcan_unlock
161 iaugusti 789
        Dim stitle
171 brianf 790
        Dim bis_patch
5293 dpurdie 791
        Dim spkgType
6610 dpurdie 792
        Dim shref
161 iaugusti 793
 
171 brianf 794
        bis_patch = not IsNull(pkgInfoHash.Item ("is_patch")) 
3616 dpurdie 795
        If bis_patch Then
796
          ' the user can unlock a patch if they have permission
797
          ' packages can be unlocked by the btnUnlockRelease button
5061 dpurdie 798
          bcan_unlock = canActionControlInProject("UnlockPatch")
5293 dpurdie 799
          spkgType = "Patch"
3616 dpurdie 800
        Else
5061 dpurdie 801
          bcan_unlock = canActionControlInProject("EditCriticalInfoForLockedPackage")
5293 dpurdie 802
          spkgType = "Package"
3616 dpurdie 803
        End If
171 brianf 804
 
5086 dpurdie 805
        If pkgInfoHash.Item("is_sdkpkg") Then bcan_unlock = FALSE
806
 
3959 dpurdie 807
        Select Case pkgInfoHash.Item ("dlocked")
808
            Case "Y"  sstate = "Released"
809
            Case "N"  sstate = "Not Released"
810
            Case "P"  sstate = "Not Released. Pending approval"
6181 dpurdie 811
            Case "A"  sstate = "Not Released. Approved for build"
3959 dpurdie 812
            Case "R"  sstate = "Not Released. Rejected"
813
            Case Else sstate = "Not Released. Invalid State"
814
        End Select
815
 
171 brianf 816
        If bcan_unlock  Then
161 iaugusti 817
          If (pkgInfoHash.Item ("dlocked") = "Y") Then
5293 dpurdie 818
            ' Unlock patch/package.
819
            stitle="Unlock the " & spkgType
161 iaugusti 820
            shref="_s_unlock_package.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id
5293 dpurdie 821
 
161 iaugusti 822
          ElseIf (pkgInfoHash.Item ("dlocked") = "N") Then
5293 dpurdie 823
            ' lock patch/package.
824
            stitle="Lock the "& spkgType &". Release requirements are not applied."
161 iaugusti 825
            shref="_s_lock_package.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id
5293 dpurdie 826
 
3616 dpurdie 827
          Else
5293 dpurdie 828
            ' unlock patch/package.
829
            stitle="Unlock the " & spkgType
3616 dpurdie 830
            shref="_s_unlock_package.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id
831
            bcan_unlock = FALSE
161 iaugusti 832
          End If
833
        End if
129 ghuddy 834
      %>
161 iaugusti 835
 
121 hknight 836
      <tr>
6873 dpurdie 837
         <td>
6579 dpurdie 838
         <% If bcan_unlock Then %>
6873 dpurdie 839
              <span title='<%=stitle%>' class='pointer' onClick="window.location='<%=shref%>'">Status:&nbsp;<img src='images/i_edit.gif' width='12' height='12' border='0' align='absmiddle'></span>
171 brianf 840
         <% Else %>
6873 dpurdie 841
              Status:<img src='images/i_edit_disable.gif' width='12' height='12' border='0' title='Cannot change status' align='absmiddle'>
171 brianf 842
         <% End If %>
161 iaugusti 843
         </td>
6873 dpurdie 844
         <td><%=sstate%></td>
161 iaugusti 845
      </tr>
846
 
847
      <tr>
6873 dpurdie 848
         <td>Deployable:</td>
849
         <td><%=iif(IsNull( rsQry("is_deployable") ), "No","Yes")%></td>
121 hknight 850
      </tr>
129 ghuddy 851
 
7395 dpurdie 852
<%If parRtag_id <> "" Then
853
    Dim s3Text
7468 dpurdie 854
    If pkgInfoHash("inManifest") <> "Y" Then
7395 dpurdie 855
        s3Text = "No"
856
    Else
7468 dpurdie 857
        If pkgInfoHash("s3ManifestEnabled") <> "Y" Then
858
            s3Text = "Yes. Ignored as the Release does not support S3 Manifest generation"
7395 dpurdie 859
        Else
860
            s3Text = "Yes"
861
        End If            
862
    End If
863
%>
161 iaugusti 864
      <tr>
7468 dpurdie 865
         <td>Include in Manifest:<%=Quick_Help("inManifest")%></td>
866
         <td><%=s3Text%>
7395 dpurdie 867
      </tr>
868
<%End If%>
869
 
870
      <tr>
6873 dpurdie 871
         <td>Short Description:</td>
872
         <td class="clip">
161 iaugusti 873
            <%If IsNull( rsQry("pv_description") ) Then%>
5596 dpurdie 874
               <span class='err_alert'>Required!</span>
875
            <%Else%>
876
              <%=NewLine_To_BR ( To_HTML( rsQry("pv_description") ) )%>
161 iaugusti 877
            <%End If%>
878
         </td>
879
      </tr>
880
      <tr>
6873 dpurdie 881
         <td>Package Overview:</td>
882
         <td class="clip">
161 iaugusti 883
            <%If IsNull( rsQry("pv_overview") ) Then%>
5596 dpurdie 884
               <span class='err_alert'>Required!</span>
885
            <%Else%>
886
               <%=NewLine_To_BR ( To_HTML( rsQry("pv_overview") ) )%>
161 iaugusti 887
            <%End If%>
888
         </td>
889
      </tr>
5338 dpurdie 890
	  <!-- Package Licence information -->
5980 dpurdie 891
      <%
892
        Dim sonclick
6642 dpurdie 893
        Dim imgClass
894
        Dim sClass
5980 dpurdie 895
      %>
5338 dpurdie 896
      <tr>
6873 dpurdie 897
         <td>
6827 dpurdie 898
            <%BuildEditButtonRaw canActionControlInProject ("EditPackageLicence") OR canActionControl("MSMaintainer"), _
899
                "Package Licence:", "Edit", False, "src='images/i_edit.gif' width='12' height='12' border='0' align='absmiddle'",_
900
                "MM_openVixIFrame('_wform_change_licence.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"','Change License')" %>
5980 dpurdie 901
         </td>
6873 dpurdie 902
         <td>
5338 dpurdie 903
            <%=getLicence()%>
904
         </td>
905
      </tr>
6827 dpurdie 906
	  <!-- Build Owner -->
6873 dpurdie 907
      <tr>
908
        <td>
6827 dpurdie 909
         <%BuildEditButtonRaw objAccessControl.UserLogedIn() AND NOT pkgInfoHash.Item("is_sdkpkg"),_
910
             "Build Owner:", "Edit", False, "src='images/i_edit.gif' width='12' height='12' border='0' align='absmiddle'",_
911
             "MM_openVixIFrame('_wform_change_owner.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"','Change Owner')" %>
6642 dpurdie 912
          <%=Quick_Help("BuildOwner")%>
161 iaugusti 913
        </td>         
6873 dpurdie 914
        <td><%=emailField(pkgInfoHash.Item ("owner"),pkgInfoHash.Item ("owner_email"))%></td>         
161 iaugusti 915
      </tr>
916
 
917
      <tr>
6873 dpurdie 918
         <td>Created:</td>
919
         <td>
6999 dpurdie 920
            <%=DisplayDateTimeSecs(pkgInfoHash.Item ("created_stamp"))&" by "& emailField(pkgInfoHash.Item ("creator"),pkgInfoHash.Item ("creator_email"))%>
161 iaugusti 921
         </td>
922
      </tr>
923
 
924
      <%
925
        ' Last Modified:
926
      %>
927
      <tr>
6873 dpurdie 928
         <td>Last Modified:</td>
929
         <td>
6610 dpurdie 930
            <%=DisplayDateTimeSecs(pkgInfoHash.Item ("modified_stamp"))&" by "& emailField(pkgInfoHash.Item ("modifier"),pkgInfoHash.Item ("modifier_email"))%>
161 iaugusti 931
         </td>
932
      </tr>
933
 
934
      <%
935
        ' Added to Release
936
        If IsNull(pkgInfoHash.Item ("is_patch"))  AND  (Request("rtag_id") <> "") AND (pkgInfoHash.Item ("insertor") <> "") Then
937
      %>
938
      <tr>
6873 dpurdie 939
         <td>Added to Release:</td>
940
         <td>
6999 dpurdie 941
            <%=DisplayDateTimeSecs(pkgInfoHash.Item ("insert_stamp")) &" by "& emailField(pkgInfoHash.Item ("insertor"),pkgInfoHash.Item ("insertor_email"))%>
161 iaugusti 942
         </td>
943
      </tr>
944
      <%End If%>
945
 
139 ghuddy 946
      <%If (vcsInfoCollector.Item("vcs_tag") = enum_VCS_CLEARCASE_TAG) OR (vcsInfoCollector.Item("vcs_tag") = enum_VCS_CVS_TAG) Then%>
129 ghuddy 947
         <tr>
6873 dpurdie 948
            <td>Version Control System:</td>
949
            <td>
129 ghuddy 950
               <%=NewLine_To_BR ( To_HTML( vcsInfoCollector.Item("vcs_name") ) )%>
5596 dpurdie 951
             <%If (vcsInfoCollector.Item("vcs_tag") = enum_VCS_CVS_TAG) AND pkgInfoHash.Item ("build_type") = "A" Then%>
952
             <span class='err_alert'>[Requires Manual Build]</span>
953
             <%End If%>
954
             <td>
129 ghuddy 955
         </tr>
1376 dpurdie 956
 
129 ghuddy 957
         <tr>
6873 dpurdie 958
            <td>Source Path:</td>
959
            <td>
1376 dpurdie 960
               <%If IsNull( rsQry("src_path") ) Then%>
961
                  <span class='err_alert'>Required!</span><%Else%><%=NewLine_To_BR ( To_HTML( rsQry("src_path") ) )%>
129 ghuddy 962
               <%End If%>
963
            </td>
964
         </tr>
1376 dpurdie 965
 
129 ghuddy 966
         <tr>
6873 dpurdie 967
            <td>Label:</td>
968
            <td>
1376 dpurdie 969
               <%If IsNull( rsQry("pkg_label") ) Then%>
970
                  <span class='err_alert'>Required!</span><%Else%><%=NewLine_To_BR ( To_HTML( rsQry("pkg_label") ) )%>
129 ghuddy 971
               <%End If%>
972
            </td>
973
         </tr>
7379 dpurdie 974
      <%ElseIf vcsInfoCollector.Item("vcs_tag") = enum_VCS_SUBVERSION_TAG OR vcsInfoCollector.Item("vcs_tag") = enum_VCS_GIT_TAG Then%>
129 ghuddy 975
         <tr>
6873 dpurdie 976
            <td>Version Control System:</td>
977
            <td>
129 ghuddy 978
               <%=NewLine_To_BR ( To_HTML( vcsInfoCollector.Item("vcs_name") ) )%>
979
            </td>
980
         </tr>
1376 dpurdie 981
 
129 ghuddy 982
         <tr>
6873 dpurdie 983
            <td>Source Path:</td>
984
            <td class="clip">
129 ghuddy 985
               <%If IsNull( rsQry("src_path") ) Then%>
986
                  <span class='err_alert'>Required!</span><%Else%><%=NewLine_To_BR ( To_HTML( rsQry("src_path") ) )%>
987
               <%End If%>
988
            </td>
989
         </tr>
1376 dpurdie 990
 
183 brianf 991
         <tr>
6873 dpurdie 992
            <td>Tag:</td>
993
            <td class="clip">
191 brianf 994
               <%If IsNull( rsQry("pkg_label") ) Then%>
995
                  <span class='err_alert'>Required!</span><%Else%><%=NewLine_To_BR ( To_HTML( rsQry("pkg_label") ) )%>
996
               <%End If%>
183 brianf 997
            </td>
998
         </tr>
1376 dpurdie 999
 
129 ghuddy 1000
      <%ElseIf vcsInfoCollector.Item("vcs_tag") = enum_VCS_UNCONTROLLED_TAG Then%>
1001
         <tr>
6873 dpurdie 1002
            <td>Version Control System:</td>
1003
            <td>
129 ghuddy 1004
               <%=NewLine_To_BR ( To_HTML( vcsInfoCollector.Item("vcs_name") ) )%>
1005
            </td>
1006
         </tr>
1007
      <%Else%>
1008
         <tr>
6873 dpurdie 1009
            <td>Version Control System:</td>
1010
            <td>
129 ghuddy 1011
               <span class='err_alert'>Required!</span>
1012
            </td>
1013
         </tr>
1014
      <%End If%>
1015
 
121 hknight 1016
      <tr>
6873 dpurdie 1017
         <td>
6827 dpurdie 1018
         <%BuildEditButtonRaw (pkgInfoHash.Item("can_edit_in_project") = "1") AND (objAccessControl.UserLogedIn) AND (canActionInProject()) AND pkgInfoHash.Item("base_view_id") <> "",_
1019
             "Base View:", "Edit", False, "src='images/i_edit.gif' width='12' height='12' border='0' align='absmiddle'",_
7349 dpurdie 1020
             "MM_openVixIFrame('_wform_change_group.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"','Set Package Base View')" %><%=Quick_Help("baseView")%>
6579 dpurdie 1021
         </td>
6873 dpurdie 1022
         <td class="clip">
6642 dpurdie 1023
         <% Dim CleanView : CleanView = pkgInfoHash.Item("view_name")
1024
            If CleanView = "" Then CleanView = "N/A"
7349 dpurdie 1025
            If pkgInfoHash.Item("release_view_name") <> ""  AND pkgInfoHash.Item("view_name") <> pkgInfoHash.Item("release_view_name") Then 
1026
                Response.Write "[" & pkgInfoHash.Item("release_view_name") & "]&nbsp;"
1027
            End If
6642 dpurdie 1028
            Response.Write CleanView
1029
          %>
121 hknight 1030
         </td>
1031
      </tr>
161 iaugusti 1032
 
121 hknight 1033
      <tr>
6873 dpurdie 1034
         <td>Following:<%=Quick_Help("following")%></td>
1035
         <td><%=GetFollowing()%></td>
5266 dpurdie 1036
      </tr>
1037
 
1038
      <tr>
6873 dpurdie 1039
         <td>Build Standard:</td>
121 hknight 1040
         <%
1041
         If pkgInfoHash.Item ("bs_id") <> "" Then
1042
            If pkgInfoHash.Item ("bs_id") = "1" Then
6873 dpurdie 1043
               Response.write "<td>JATS<br></td>"
119 ghuddy 1044
 
121 hknight 1045
            ElseIf pkgInfoHash.Item ("bs_id") = "2" Then
6873 dpurdie 1046
               Response.write "<td>ANT<br></td>"
119 ghuddy 1047
 
121 hknight 1048
            ElseIf pkgInfoHash.Item ("bs_id") = "3" Then
6873 dpurdie 1049
               Response.write "<td>NONE"
5596 dpurdie 1050
               If pkgInfoHash.Item("build_type") = "A" Then
1051
                    Response.write "<span class='err_alert'> [Must be specified for an automated build]</span>"
1052
               End If
1053
               Response.write "<br></td>"
121 hknight 1054
            End If
1055
         Else
129 ghuddy 1056
            If vcsInfoCollector.Item("vcs_tag") <> enum_VCS_UNCONTROLLED_TAG Then
6873 dpurdie 1057
               Response.write "<td><span class='err_alert'>Required!</span><br></td>"
129 ghuddy 1058
            Else
6873 dpurdie 1059
               Response.write "<td>Unspecified<br></td>"
129 ghuddy 1060
            End If
121 hknight 1061
         End If
1062
         %>
1063
      </tr>
129 ghuddy 1064
      <%If (NOT IsNull(pkgInfoHash.Item ("bs_id"))) AND (pkgInfoHash.Item ("bs_id") <> "3") Then%>
1065
         <tr>
6873 dpurdie 1066
            <td>Build Environment:</td>
129 ghuddy 1067
            <%
1068
            '--- Get Build Env Details
1069
            Set rsTemp = OraDatabase.DbCreateDynaset( SQL_Build_Env ( parPv_id ), cint(0))
1070
            %>
6873 dpurdie 1071
            <td>
129 ghuddy 1072
               <%If rsTemp.RecordCount = 0 Then%>
1073
                  <%If rsQry("is_build_env_required") = enumDB_NO Then%>
1074
                     Not Required
1075
                  <%Else%>
1076
                     <span class='err_alert'>Required!</span>
1077
                  <%End If%>
1078
               <%Else%>
1079
                  <%If (IsNull( rsQry("is_build_env_required") ) AND (rsQry("comments") <> "Rippled Build.")) Then%>
1080
                     <span class='err_alert'>Required!</span>
1081
                  <%ElseIf rsQry("is_build_env_required") = enumDB_NO Then%>
1082
                     Not Required.
1083
                  <%Else%>
1376 dpurdie 1084
                     <table width="40%"  border="0" cellspacing="0" cellpadding="1">
129 ghuddy 1085
                        <%
1086
                        currG1 = 0
1087
                        While (NOT rsTemp.BOF) AND (NOT rsTemp.EOF)
4134 dpurdie 1088
                           If currG1 <> CInt(rsTemp("bm_id")) Then%>
129 ghuddy 1089
                              <tr>
6873 dpurdie 1090
                                 <td colspan="2" nowrap>
4134 dpurdie 1091
                                    <%=rsTemp("bm_name")%>&nbsp;<%=GetBuildType( rsTemp("bsa_id"),rsTemp("bsa_name") )%>
129 ghuddy 1092
                                 </td>
1093
                              </tr>
1094
                              <%currG1 = CInt(rsTemp("bm_id"))
1095
                           End If
1096
                           rsTemp.MoveNext
1097
                        WEnd
1098
                        %>
1099
                     </table>
1100
                  <%End If%>
121 hknight 1101
               <%End If%>
129 ghuddy 1102
            </td>
1103
         </tr>
1104
      <%End If%>
1105
 
2735 dpurdie 1106
      <%
1107
      ' Get JATS extraction commands
1108
      Dim  sjats_cmd_test, sjats_cmds_qh, sjats_extractable
1109
      ReDim sjats_cmds(6)
1110
      call Jats_Extract_Command(sjats_cmds, sjats_cmd_test, sjats_cmds_qh, sjats_extractable)
6497 dpurdie 1111
      Dim PrevVerTitle : PrevVerTitle = "Previous Version:"
2735 dpurdie 1112
 
6480 dpurdie 1113
      ' Previous Versions 
6827 dpurdie 1114
      If pkgInfoHash.Item ("pkg_count") = 1 AND pkgInfoHash.Item ("dlocked") = "N" Then
6497 dpurdie 1115
        Call DisplayVersionRow(NULL, PrevVerTitle, "PreviousVcsTag")
1116
        Call DisplayCreationCommands()
6480 dpurdie 1117
 
6497 dpurdie 1118
      ElseIf IsNull(pkgInfoHash.Item ("is_patch")) Then
1119
 
6480 dpurdie 1120
        If canActionControlInProject("ChangePreviousVersion") AND NOT pkgInfoHash.Item("is_sdkpkg") Then
5590 dpurdie 1121
            sonclick="MM_openVixIFrame('_wform_change_previous_version.asp?rfile="& scriptName &"&pv_id="& parPv_id &"&rtag_id="& parRtag_id &"','Change Previous Version')"
6873 dpurdie 1122
            PrevVerTitle = "<span onClick=""" & sonclick & """ class='sublbox_txt'> " & PrevVerTitle & " <img src='images/i_edit.gif' width='12' height='12' border='0' align='absmiddle'></span>"
6480 dpurdie 1123
        Else
6642 dpurdie 1124
            PrevVerTitle = PrevVerTitle & "<img src='images/i_edit_disable.gif' width='12' height='12' border='0' align='absmiddle'>"
6480 dpurdie 1125
        End If
1126
        Call DisplayVersionRow(pkgInfoHash.Item ("last_pv_id"), PrevVerTitle, "PreviousVcsTag") 
129 ghuddy 1127
 
6480 dpurdie 1128
        Dim iLastSignificantPVID
1129
        Dim iRippleBasePVID
1130
        Call getLastSignificantVersions(pkgInfoHash.Item("pv_id"), iRippleBasePVID, iLastSignificantPVID)
129 ghuddy 1131
 
6480 dpurdie 1132
        Call DisplayVersionRow(iRippleBasePVID, "Previous NonRipple Version:", "PreviousNonRippleVcsTag") 
1133
        Call DisplayVersionRow(iLastSignificantPVID, "Previous Significant Version:", "PreviousSignificantVcsTag") 
1134
      End If
161 iaugusti 1135
      %>
1136
      <tr>
6873 dpurdie 1137
         <td>JATS extraction commands:<%=Quick_Help ( "JatsExtraction_" & sjats_cmds_qh )%></td>
6121 dpurdie 1138
         <td style="padding: 0px;">
1139
         <table class="full_table">
1376 dpurdie 1140
         <% Dim ii : For ii = 0 to UBound(sjats_cmds) %>
6873 dpurdie 1141
             <tr><td class="clip"><%=NewLine_To_BR ( To_HTML(sjats_cmds(ii)) )%>&nbsp;</td>
1376 dpurdie 1142
         <% Next %>
161 iaugusti 1143
         </td>
1376 dpurdie 1144
         </tr>
1145
         </table>
161 iaugusti 1146
      </tr>
1147
      <tr>
6873 dpurdie 1148
         <td>JATS Test:<%=Quick_Help ( "JatsTest" )%></td>
1149
         <td class="clip"><%=NewLine_To_BR ( To_HTML(sjats_cmd_test) )%></td>
161 iaugusti 1150
      </tr>
129 ghuddy 1151
 
161 iaugusti 1152
      <%
1376 dpurdie 1153
      ' Beyond Compare difference command
1154
      Dim prevVcsTag
1155
      Dim curVcsTag
6497 dpurdie 1156
      Dim sBcCmd, sBcClass 
1376 dpurdie 1157
 
1158
      prevVcsTag = Get_Pkg_Vcs_Tag(iLastSignificantPVID)
1159
      curVcsTag = Get_Pkg_Vcs_Tag(parPv_id)
1160
      sBcCmd = ""
6497 dpurdie 1161
      sBcClass = ""
1376 dpurdie 1162
 
6497 dpurdie 1163
      If pkgInfoHash.Item ("pkg_count") = 1 Then
1164
            sBcCmd = "No prior version compare against"
1165
      ElseIf (IsNull(prevVcsTag) OR prevVcsTag = "" ) Then
1376 dpurdie 1166
            sBcCmd = "No prior label to compare against"
1167
      ElseIf (IsNull(curVcsTag) OR curVcsTag = "" ) Then
1168
            sBcCmd = "Current VCS tag not yet specified"
2735 dpurdie 1169
      ElseIf (not sjats_extractable) Then
1170
            sBcCmd = "Cannot be extracted with JATS"
1376 dpurdie 1171
      Else
1172
            sBcCmd = "jats vcsdiff -old=" & prevVcsTag & " -new=" & curVcsTag
6497 dpurdie 1173
            sBcClass = "clip"
1376 dpurdie 1174
      End If
1175
      sBcCmd = NewLine_To_BR( To_HTML (sBcCmd) )
6873 dpurdie 1176
      %>
1376 dpurdie 1177
 
161 iaugusti 1178
      <tr>
6873 dpurdie 1179
        <td>Beyond Compare command:<%=Quick_Help ( "BeyondCompare" )%></td>
1180
        <td class="<%=sBcClass%>"><%=sBcCmd%></td>
161 iaugusti 1181
      </tr>
1182
 
119 ghuddy 1183
 
121 hknight 1184
      <%If pkgInfoHash.Item("is_deployable") = "Y" Then
1185
         OraDatabase.Parameters.Add "PV_ID", pkgInfoHash.Item ("pv_id"), ORAPARM_INPUT, ORATYPE_NUMBER
1186
         Set rsTemp = OraDatabase.DbCreateDynaset( GetQuery("DeploymentManagerReference.sql"), cint(0))
1187
         If rsTemp.RecordCount = 0 Then%>
1188
            <tr>
6873 dpurdie 1189
               <td>SBOM Information:</td>
121 hknight 1190
               <%If pkgInfoHash.Item("product_state") = 3 Then%>
6873 dpurdie 1191
                  <td class="err_alert"><b>Ready For Deployment!</b></td>
121 hknight 1192
               <%ElseIf pkgInfoHash.Item("product_state") = 2 Then%>
6873 dpurdie 1193
                  <td class="err_alert"><b>Ready For Testing!</b></td>
121 hknight 1194
               <%ElseIf pkgInfoHash.Item("product_state") = 1 Then%>
6873 dpurdie 1195
                  <td class="err_alert"><b>Ready For Integration!</b></td>
121 hknight 1196
               <%ElseIf pkgInfoHash.Item("product_state") = 5 Then%>
6873 dpurdie 1197
                  <td class="err_alert"><b>Ready For Integration and Deployment!</b></td>
121 hknight 1198
               <%ElseIf IsNull(pkgInfoHash.Item("product_state")) Then%>
6873 dpurdie 1199
                  <td class="err_alert"><b>Information Unavailable!</b></td>
121 hknight 1200
               <%End If%>
119 ghuddy 1201
 
1202
            </tr>
121 hknight 1203
         <%Else%>
119 ghuddy 1204
            <tr>
6873 dpurdie 1205
               <td>SBOM Added/Updated:</td>
1206
               <td><%=rsTemp("branch_name")%> - <%=rsTemp("bom_name")%><%=VBNewLine%><%=rsTemp("version")%></td>
119 ghuddy 1207
            </tr>
121 hknight 1208
         <%End If
1209
         rsTemp.Close()
1210
         Set rsTemp = Nothing
1211
         OraDatabase.Parameters.Remove "PV_ID"
1212
      End If
1213
      %>
1214
   </table>
161 iaugusti 1215
   </fieldset>
121 hknight 1216
   <br>
1376 dpurdie 1217
 
121 hknight 1218
<!-- PACKAGE METRICS -------------------------------------------------------------------------------------------------------------------->
5383 dpurdie 1219
   <%
1220
   Call GetPackageMetrics( parPv_id, rsPkgMetrics )
1221
   %>
6324 dpurdie 1222
   <fieldset class="fset" onclick="ToggleDisplay('divPkgMetrics','pkg_metrics_filler')">
5526 dpurdie 1223
   <%If IsNull(rsPkgMetrics("pkg_name")) Then %>
5383 dpurdie 1224
      <legend class="body_colb">
6827 dpurdie 1225
         <img src="images/i_metrics.gif" width="20" height="24" hspace="4" border="0" align='absmiddle' >Package Metrics not available
6324 dpurdie 1226
      </legend>
5526 dpurdie 1227
   <%Else%>
1228
      <legend class="body_colb">
6827 dpurdie 1229
         <img src="images/i_metrics.gif" width="20" height="24" hspace="4" border="0" align='absmiddle' >Package Metrics...
6324 dpurdie 1230
      </legend>
5383 dpurdie 1231
      <div name="pkg_metrics_filler" id="pkg_metrics_filler" style="display:block;" class="div_filler">
6827 dpurdie 1232
         <span class="txt_linked pointer">Show...</span>
5383 dpurdie 1233
      </div>
1234
      <div name="divPkgMetrics" id="divPkgMetrics" style="display:none;">
1235
         <a name="PACKAGE_METRICS"></a>
6873 dpurdie 1236
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class='lhsGrey'>
5383 dpurdie 1237
            <tr>
6873 dpurdie 1238
               <td width='20%'>Autobuilt:</td>
1239
               <td><%If rsPkgMetrics("is_autobuildable") = "Y" Then%>Yes<%Else%>No<%End If%></td>
5383 dpurdie 1240
            </tr>
1241
            <tr>
6873 dpurdie 1242
               <td>Unit Tested:</td>
1243
               <td><%If rsPkgMetrics("unit_tested") = "Y" Then%>Yes<%Else%>No<%End If%></td>
5383 dpurdie 1244
            </tr>
1245
            <tr>
6873 dpurdie 1246
               <td>Autotested:</td>
1247
               <td><%If rsPkgMetrics("autotested") = "Y" Then%>Yes<%Else%>No<%End If%></td>
5383 dpurdie 1248
            </tr>
1249
            <%If NOT IsNull(rsPkgMetrics("code_lines")) Then%>
1250
            <tr>
6873 dpurdie 1251
               <td>Code Lines:</td>
1252
               <td><%=rsPkgMetrics("code_lines")%></td>
5383 dpurdie 1253
            </tr>
1254
            <%End If%>
1255
            <%If NOT IsNull(rsPkgMetrics("comment_lines")) Then%>
1256
            <tr>
6873 dpurdie 1257
               <td>Comment Lines:</td>
1258
               <td><%=rsPkgMetrics("comment_lines")%></td>
5383 dpurdie 1259
            </tr>
1260
            <%End If%>
1261
            <%If NOT IsNull(rsPkgMetrics("blank_lines")) Then%>
1262
            <tr>
6873 dpurdie 1263
               <td>Blank Lines:</td>
1264
               <td><%=rsPkgMetrics("blank_lines")%></td>
5383 dpurdie 1265
            </tr>
1266
            <%End If%>
1267
            <%If NOT IsNull(rsPkgMetrics("branches")) Then%>
1268
            <tr>
6873 dpurdie 1269
               <td>Number of Branches:</td>
1270
               <td><%=rsPkgMetrics("branches")%></td>
5383 dpurdie 1271
            </tr>
1272
            <%End If%>
1273
            <%If NOT IsNull(rsPkgMetrics("branch_list")) Then%>
1274
            <tr>
6873 dpurdie 1275
               <td>Branch List:</td>
1276
               <td><%=rsPkgMetrics("branch_list")%></td>
5383 dpurdie 1277
            </tr>
1278
            <%End If%>
1279
            <%If NOT IsNull(rsPkgMetrics("code_files")) Then%>
1280
            <tr>
6873 dpurdie 1281
               <td>Code Files:</td>
1282
               <td><%=rsPkgMetrics("code_files")%></td>
5383 dpurdie 1283
            </tr>
1284
            <%End If%>
1285
            <%If NOT IsNull(rsPkgMetrics("ignored_files")) Then%>
1286
            <tr>
6873 dpurdie 1287
               <td>Ignored Files:</td>
1288
               <td><%=rsPkgMetrics("ignored_files")%></td>
5383 dpurdie 1289
            </tr>
1290
            <%End If%>
1291
            <%If NOT IsNull(rsPkgMetrics("makefiles")) Then%>
1292
            <tr>
6873 dpurdie 1293
               <td>Makefiles:</td>
1294
               <td><%=rsPkgMetrics("makefiles")%></td>
5383 dpurdie 1295
            </tr>
1296
            <%End If%>
1297
            <%If NOT IsNull(rsPkgMetrics("total_files")) Then%>
1298
            <tr>
6873 dpurdie 1299
               <td>Total Files:</td>
1300
               <td><%=rsPkgMetrics("total_files")%></td>
5383 dpurdie 1301
            </tr>
1302
            <%End If%>
1303
            <%If NOT IsNull(rsPkgMetrics("directories")) Then%>
1304
            <tr>
6873 dpurdie 1305
               <td>Number of Directories:</td>
1306
               <td><%=rsPkgMetrics("directories")%></td>
5383 dpurdie 1307
            </tr>
1308
            <%End If%>
1309
            <%If NOT IsNull(rsPkgMetrics("directory_depth")) Then%>
1310
            <tr>
6873 dpurdie 1311
               <td>Directory Depth:</td>
1312
               <td><%=rsPkgMetrics("directory_depth")%></td>
5383 dpurdie 1313
            </tr>
1314
            <%End If%>
1315
            <%If NOT IsNull(rsPkgMetrics("created_stamp")) Then%>
1316
            <tr>
6873 dpurdie 1317
               <td>Metrics Collected:</td>
1318
               <td><%=rsPkgMetrics("created_stamp")%></td>
5383 dpurdie 1319
            </tr>
1320
            <%End If%>
5632 dpurdie 1321
            <%If NOT IsNull(rsPkgMetrics("build_time")) Then%>
1322
            <tr>
6873 dpurdie 1323
               <td>Build Time:</td>
1324
               <td><%=rsPkgMetrics("build_time")%> Seconds</td>
5632 dpurdie 1325
            </tr>
1326
            <%End If%>
1327
 
5383 dpurdie 1328
         </table>
1329
      </div>
5526 dpurdie 1330
   <%End If%>
5383 dpurdie 1331
   </fieldset>
1332
   <br>
1333
   <%
1334
   rsPkgMetrics.Close()
1335
   Set rsPkgMetrics = nothing
1336
   %>
121 hknight 1337
<!-- PRODUCTS AFFECTED BY CHANGE -------------------------------------------------------------------------------------------------------->
119 ghuddy 1338
 
1339
<!-- REASON FOR DEPRECATION/DEPENDANCY DEPRECATED ----------------------------------------------------------------------------------------------------------------->
121 hknight 1340
   <%If pkgInfoHash.Item("deprecated_state") = 6 Then %>
119 ghuddy 1341
 
121 hknight 1342
      <fieldset class="fset"><legend class="body_colb"><img src='images/s_notes.gif' width='21' height='24' hspace='4' border='0' align='absmiddle'>Reason for deprecation</legend>
1343
         <a name="REASON_FOR_DEPRECATION"></a>
6873 dpurdie 1344
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class='allGrey'>
121 hknight 1345
            <tr>
6873 dpurdie 1346
               <td>
121 hknight 1347
                  <%
1348
                  Dim rsComment
1349
                  Set rsComment = OraDatabase.DbCreateDynaset("SELECT * FROM DEPRECATED_PACKAGES WHERE RTAG_ID ="& Request("rtag_id") &" AND PKG_ID = "& pkgInfoHash.Item ("pkg_id") &"", cint(0))
1350
                  If rsComment("comments") <> "" Then
1351
                     Response.write "<table border='0' cellspacing='0' cellpadding='0'>"
1352
                     Response.write "<tr>"
1353
                     Response.write "<td class='sublbox_txt'>"& NewLine_To_BR((  rsComment("comments") ) ) &"<br></td>"
1354
                     Response.write "</tr>"
1355
                     Response.write "</table>"
1356
                  'Else
1357
                  '   If FixedIssues ( parPv_id ) Then
1358
                  '      Response.write "<span class='sublbox_txt'>Not specified.</span><br>"
1359
                  '   Else
1360
                  '      Response.write "<span class='err_alert'>Required!</span><br>"
1361
                  '   End If
1362
                  End If
1363
                  rsComment.Close()
1364
                  Set rsComment = nothing
1365
                  %>
1366
               </td>
1367
            </tr>
1368
         </table>
1369
      </fieldset>
4230 dpurdie 1370
      <br>
121 hknight 1371
   <%End If%>
119 ghuddy 1372
<!-- SBOM PRIORITY/CRITICALITY  --------------------------------------------------------------------------------------------------------->
121 hknight 1373
   <%If NOT pageIsEditable AND pkgInfoHash.Item ("is_deployable") = "Y" Then%>
6324 dpurdie 1374
      <fieldset class="fset">
1375
      <legend class="body_colb"><img src='icons/i_prod_sbom_priority.gif' hspace='4' border='0' align='absmiddle'>SBOM Priority</legend>
1376
       <%If (pkgInfoHash.Item ("dlocked") = "Y") Then%>
1377
       <div style="display: block;float: right;margin-top: -20px;background-color: #FFF;padding: 0 5px;">
6827 dpurdie 1378
            <span onClick="MM_openVixIFrame('_wform_sbom_priority.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','SBOM Priority')" class="pointer txt_linked">Edit<img src="images/i_edit.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'></span>
6324 dpurdie 1379
       </div>
1380
       <%End If%>
121 hknight 1381
         <a name="SBOM_PRIORITY"></a>
6873 dpurdie 1382
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class=allGrey>
121 hknight 1383
            <tr>
6873 dpurdie 1384
               <td>
121 hknight 1385
                  <%If pkgInfoHash.Item ("sbom_priority") <> "" Then%>
1386
                     <table border='0' cellspacing='0' cellpadding='0'>
1387
                        <tr>
6873 dpurdie 1388
                           <td>
121 hknight 1389
                              <%
1390
                              If pkgInfoHash.Item ("sbom_priority") = "C" Then
1391
                                 Response.write "<b><font color='red'>Critical.</font></b>"
1392
                              ElseIf pkgInfoHash.Item ("sbom_priority") = "I" Then
1393
                                 Response.write "<b>Important.</b>"
1394
                              ElseIf pkgInfoHash.Item ("sbom_priority") = "R" Then
1395
                                 Response.write "Routine"
1396
                              ElseIf pkgInfoHash.Item ("sbom_priority") = "L" Then
1397
                                 Response.write "Low"
1398
                              End If
1399
                              %>
1400
                           </td>
1401
                        </tr>
1402
                     </table>
1403
                  <%Else%>
1404
                     <span class='err_alert'>Required!</span><br>
1405
                  <%End If%>
1406
               </td>
1407
            </tr>
1408
         </table>
1409
      </fieldset>
4230 dpurdie 1410
      <br>
121 hknight 1411
   <%End If%>
119 ghuddy 1412
<!-- CHANGE TYPE  ----------------------------------------------------------------------------------------------------------------------->
4230 dpurdie 1413
   <fieldset class="fset">
1414
   <a name="CHANGE_TYPE"></a>
121 hknight 1415
   <%If pkgInfoHash.Item ("build_type") = "A" Then%>
4218 dpurdie 1416
         <legend class="body_colb"><img src='icons/i_pkg_change_type.gif' hspace='4' border='0' align='absmiddle'>Change Type</legend>
6324 dpurdie 1417
         <div style="display: block;float: right;margin-top: -20px;background-color: #FFF;padding: 0 5px;">
1418
              <%If (pkgInfoHash.Item ("dlocked") <> "A")  AND (pkgInfoHash.Item ("dlocked") <> "Y") AND criticalSectionIsEditable Then%>
6827 dpurdie 1419
                 <span onClick="MM_openVixIFrame('_wform_rename_version.asp?renameMode=2&rfile=<%=ScriptName%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Change Ripple Type')" class="txt_linked pointer">Edit<img src="images/i_edit.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'></span>
6324 dpurdie 1420
              <%End If%>
1421
         </div>
6873 dpurdie 1422
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class='allGrey'>
121 hknight 1423
            <tr>
6873 dpurdie 1424
               <td>
121 hknight 1425
                  <%
1426
                  If pkgInfoHash.Item ("change_type") <> "" Then
1427
                     Response.write "<table border='0' cellspacing='0' cellpadding='0'>"
1428
                     Response.write "<tr>"
1429
                     If pkgInfoHash.Item ("change_type") = "M" Then
1430
                        Response.write "<td class='sublbox_txt'>Major Change.<br></td>"
1431
                     ElseIf pkgInfoHash.Item ("change_type") = "N" Then
1432
                        Response.write "<td class='sublbox_txt'>Minor Change.<br></td>"
1433
                     ElseIf pkgInfoHash.Item ("change_type") = "P" Then
1434
                        Response.write "<td class='sublbox_txt'>Patch Change.<br></td>"
4230 dpurdie 1435
                     ElseIf pkgInfoHash.Item ("change_type") = "F" Then
1436
                        Response.write "<td class='sublbox_txt'>Version Specified by User.<br></td>"
1437
                     Else
1438
                        Response.write "<td><span class='err_alert'>Unknown Change Type: " & pkgInfoHash.Item ("change_type") & "</span></td>"
121 hknight 1439
                     End If
1440
                     Response.write "</tr>"
1441
                     Response.write "</table>"
1442
                  Else
1443
                     Response.write "<span class='err_alert'>Required!</span><br>"
1444
                  End If
1445
                  %>
1446
               </td>
1447
            </tr>
1448
         </table>
4230 dpurdie 1449
   <%ElseIf pkgInfoHash.Item ("build_type") = "M" Then%>
1450
         <legend class="body_colb"><img src='icons/i_pkg_change_type.gif' hspace='4' border='0' align='absmiddle'>Build Type</legend>
6873 dpurdie 1451
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class='allGrey'>
4230 dpurdie 1452
            <tr>
6873 dpurdie 1453
               <td>Manually Built Package.
4230 dpurdie 1454
                  <%If pkgInfoHash.Item ("change_type") <> "F" Then%>
1455
                        <span class='err_alert'>Unexpected Change Type: <%=pkgInfoHash.Item ("change_type")%></span>
1456
                  <%End If%>
1457
               </td>
1458
            </tr>
1459
         </table>
5898 dpurdie 1460
   <%ElseIf pkgInfoHash.Item ("build_type") = "U" Then%>
1461
         <legend class="body_colb"><img src='icons/i_pkg_change_type.gif' hspace='4' border='0' align='absmiddle'>Build Type</legend>
6873 dpurdie 1462
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class='allGrey'>
5898 dpurdie 1463
            <tr>
6873 dpurdie 1464
               <td>
6881 dpurdie 1465
               <span class='err_alert'>UnbuildablePackage.</span> This version has been created outside of the build system, possibly via Deployment Manager or as a part of the unification of the Pulse Build System.
5898 dpurdie 1466
               </td>
1467
            </tr>
1468
         </table>
4230 dpurdie 1469
   <%ElseIf pkgInfoHash.Item ("build_type") = "Y" Then%>
1470
         <legend class="body_colb"><img src='icons/i_pkg_change_type.gif' hspace='4' border='0' align='absmiddle'>Build Type</legend>
6873 dpurdie 1471
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class='allGrey'>
4230 dpurdie 1472
            <tr>
6873 dpurdie 1473
               <td>Ripple Built</td>
4230 dpurdie 1474
            </tr>
1475
         </table>
1476
   <%Else%>
1477
         <legend class="body_colb"><img src='icons/i_pkg_change_type.gif' hspace='4' border='0' align='absmiddle'>Build Type</legend>
6873 dpurdie 1478
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class='allGrey'>
4230 dpurdie 1479
            <tr>
6873 dpurdie 1480
               <td><span class='err_alert'>Unknown Build Type (<%=pkgInfoHash.Item ("build_type")%>) Change Type (<%=pkgInfoHash.Item ("change_type")%>)</span></td>
4230 dpurdie 1481
            </tr>
1482
         </table>
121 hknight 1483
   <%End If%>
4230 dpurdie 1484
   </fieldset>
1485
   <br>
131 ghuddy 1486
 
119 ghuddy 1487
<!-- RIPPLE PROPERTIES  ----------------------------------------------------------------------------------------------------------------------->
131 ghuddy 1488
   <%If IsNull(pkgInfoHash.Item ("is_patch")) Then%>
6324 dpurdie 1489
      <fieldset class="fset">
1490
         <legend class="body_colb"><img src='icons/i_pkg_ripple_type.gif' hspace='4' border='0' align='absmiddle' height='25' width='25'>Ripple Properties</legend>
1491
         <div style="display: block;float: right;margin-top: -20px;background-color: #FFF;padding: 0 5px;">
6538 dpurdie 1492
            <%Dim canEditRippleProperties : canEditRippleProperties = FALSE
6700 dpurdie 1493
 
1494
                canEditRippleProperties = (pageIsEditable AND canShowControlInProject( "RipplePackage" )) OR _ 
6538 dpurdie 1495
                                          canShowControlInProject( "AdvRipPackageVersions" ) OR _
6700 dpurdie 1496
                                          canShowControlInProject( "PegPackageVersions" ) OR _
6538 dpurdie 1497
                                          criticalSectionIsEditable
1498
 
1499
            If canEditRippleProperties Then%>
6827 dpurdie 1500
                <span onClick="MM_openVixIFrame('_wform_ripple_properties.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Edit Ripple Type')" class="txt_linked pointer">Edit<img src="images/i_edit.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'></span>
6324 dpurdie 1501
            <%End If%>
1502
         </div>
121 hknight 1503
         <a name="RIPPLE_PROPERTIES"></a>
6873 dpurdie 1504
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class='lhsGrey'>
131 ghuddy 1505
            <%If Request("rtag_id") <> "" Then
5098 dpurdie 1506
               If pkgInfoHash.Item ("is_pegged")  Then %>
131 ghuddy 1507
                  <tr>
6873 dpurdie 1508
                     <td>Is Pegged <%=Quick_Help ( "pegged_version" )%></td>
1509
                     <td>Yes</td>
131 ghuddy 1510
                  </tr>
1511
               <%End If%>
5098 dpurdie 1512
            <%End If%>
131 ghuddy 1513
 
5098 dpurdie 1514
            <%If NOT pkgInfoHash.Item ("is_pegged") Then%>
6440 dpurdie 1515
              <%If Request("rtag_id") <> "" Then%>
131 ghuddy 1516
               <tr>
6873 dpurdie 1517
                  <td>Build Inclusion<%=Quick_Help ( "ripple_build" )%>
131 ghuddy 1518
                  </td>
6440 dpurdie 1519
                     <%Dim rsQryRipple
1520
                     Set rsQryRipple = OraDatabase.DbCreateDynaset( "SELECT p.PKG_NAME, pv.PV_OVERVIEW, pv.PKG_ID,nvl(dnr.root_pv_id, -1) as root_pv_id, dnr.* FROM DO_NOT_RIPPLE dnr, PACKAGE_VERSIONS pv, PACKAGES p WHERE dnr.RTAG_ID ="& Request("rtag_id") &"AND dnr.PV_ID ="&Request("pv_id") &" AND  pv.pv_id(+) = dnr.ROOT_PV_ID AND p.PKG_ID(+) = pv.PKG_ID", cint(0))
6370 dpurdie 1521
                        If rsQryRipple.RecordCount <> 0  Then
6440 dpurdie 1522
                            Dim CauseText
1523
                            Dim rowData
1524
                            If (IsNull(rsQryRipple("root_file")) AND IsNull(rsQryRipple("root_cause"))) Then
1525
                                If rsQryRipple("root_pv_id") < 0 Then
1526
                                    CauseText = "Directly Excluded"
6370 dpurdie 1527
                                Else
1528
                                    CauseText = "Indirectly excluded by <a class=""txt_linked"" title='"&rsQryRipple("PV_OVERVIEW")&"' href=fixed_issues.asp?pv_id="& rsQryRipple("root_pv_id") & "&rtag_id="&rsQryRipple("rtag_id") & ">" & rsQryRipple("pkg_name") & "</a>"
1529
                                End If
1530
 
1531
                            ElseIf IsNull(rsQryRipple("root_file")) Then
1532
                               CauseText = rsQryRipple("root_cause")
1533
 
1534
                            Else
1535
                                CauseText = "<a class=""txt_linked"" title=""" & rsQryRipple("root_file") &_
1536
                                          " Log file may have expired."" " &_
7260 dpurdie 1537
                                          "href=""" & ABTLOG_URL & "/" & rsQryRipple("root_file") & """>" &_
6370 dpurdie 1538
                                          "Build Failure Log File</a>"
1539
                            End If
1540
                            %>
6873 dpurdie 1541
                            <td>No.&nbsp;<%=CauseText%></td>
6440 dpurdie 1542
                         <%Else%>
6873 dpurdie 1543
                            <td>Yes</td>
6440 dpurdie 1544
                         <%End If%>
131 ghuddy 1545
                     <%rsQryRipple.Close()
6440 dpurdie 1546
                     Set rsQryRipple = nothing%>
131 ghuddy 1547
               </tr>
6440 dpurdie 1548
               <%End If%>
6642 dpurdie 1549
               <%If pkgInfoHash.Item ("advisory_ripple") Then%>
6873 dpurdie 1550
                <tr>
1551
                      <td>Advisory Ripple <%=Quick_Help ( "advisory_ripple" )%></td>
1552
                      <td>Enabled</td>
6642 dpurdie 1553
                </tr>
1554
               <%End If%>
131 ghuddy 1555
               <tr>
6873 dpurdie 1556
                  <td>Ripple Type <%=Quick_Help ( "ripple_type" )%></td>
1557
                  <td>
131 ghuddy 1558
                        <%
1559
                        Response.write "<table border='0' cellspacing='0' cellpadding='0'>"
1560
                        Response.write "<tr>"
1561
                        Response.write "<td class='sublbox_txt'>"
5648 dpurdie 1562
                        Dim selectedRippleType, selectedRippleName, selectedRippleState
131 ghuddy 1563
                        selectedRippleType = pkgInfoHash.Item ("ripple_field")
5648 dpurdie 1564
                        selectedRippleName = rippleFieldName(selectedRippleType, selectedRippleState)
1565
                        If NOT selectedRippleState Then
131 ghuddy 1566
                           Response.write "<span class='err_alert'>Required!</span>"
1567
                        Else
5648 dpurdie 1568
                            Response.write( selectedRippleName )
131 ghuddy 1569
                        End If
1570
                        If ( selectedRippleType = "L" ) Then
1571
                        Dim qry
1572
                        Set qry = OraDatabase.DbCreateDynaset( "SELECT major_limit, minor_limit, patch_limit, build_number_limit from package_versions where pv_id="& Request("pv_id"), cint(0))
1573
                        Response.write " "
1574
                        If isNull(qry("major_limit")) Then
1575
                           Response.write("0")
1576
                        Else
1577
                           Response.write( qry.Fields( "major_limit" ).Value )
1578
                        End If
1579
                        Response.write ", "
1580
                        If isNull(qry("minor_limit")) Then
1581
                           Response.write("0")
1582
                        Else
1583
                           Response.write( qry.Fields( "minor_limit" ).Value )
1584
                        End If
1585
                        Response.write ", "
1586
                        If isNull(qry("patch_limit")) Then
1587
                           Response.write("0")
1588
                        Else
1589
                           Response.write( qry.Fields( "patch_limit" ).Value )
1590
                        End If
1591
                        Response.write ", "
1592
                        If isNull(qry("build_number_limit")) Then
1593
                           Response.write("0")
1594
                        Else
1595
                           Response.write( qry.Fields( "build_number_limit" ).Value )
1596
                        End If
1597
                        qry.Close()
1598
                        Set qry = nothing
1599
                        End If
5648 dpurdie 1600
                        Response.Write "</td>"
131 ghuddy 1601
                        Response.write "</tr>"
1602
                        Response.write "</table>"
1603
                        %>
1604
                  </td>
1605
               </tr>
1606
            <%End If%>
6480 dpurdie 1607
            <%If Request("rtag_id") <> ""  AND pkgInfoHash.Item("dlocked") = "Y" Then
6440 dpurdie 1608
              Dim sClickStop, sStopText, dRippleStop, sButtonText, sPersistText
1609
              dRippleStop = pkgInfoHash.Item("ripple_stop")
1610
              If dRippleStop = "" OR IsNull(dRippleStop) Then
1611
                sClickStop="vixConfirm('Marked this package so as to prevent it from being built<br>when its dependencies change, until it is manually resumed.<p>Stop Ripple Builds',{title:'Stop Ripple', button:'Stop', url: '_s_ripple_stop.asp?mode=s&rfile="& scriptName &"&pv_id="& parPv_id &"&rtag_id="& parRtag_id &"'});"
1612
                sStopText = "Normal"
1613
                sButtonText = "Change"
1614
              ElseIf dRippleStop = "s" Then 
1615
                sClickStop="vixConfirm('This package has been marked to prevented ripple builds.<p>Remove this marker',{title:'Remove Ripple', button:'Remove', url: '_s_ripple_stop.asp?mode=r&rfile="& scriptName &"&pv_id="& parPv_id &"&rtag_id="& parRtag_id &"'});"
1616
                sStopText = "Ripples will stop at this package"
1617
                sButtonText = "Remove"
1618
              ElseIf dRippleStop = "w" Then 
1619
                sClickStop="vixConfirm('This package has been marked to prevented ripple builds<br>and a ripple is required.<p>Allow ripple to continue.',{title:'Continue Ripple', button:'Allow Ripple', url: '_s_ripple_stop.asp?mode=g&rfile="& scriptName &"&pv_id="& parPv_id &"&rtag_id="& parRtag_id &"'});"
1620
                sStopText = "Ripple required and awaiting manual intervention"
1621
                sButtonText = "Resume"
1622
              ElseIf dRippleStop = "g" Then 
1623
                sStopText = "Ripple resumed. Awaiting build"
1624
              Else
1625
                sStopText = "Ripple Stop: Unknown state:" & dRippleStop 
1626
              End If
1627
 
1628
              sPersistText = ""
6441 dpurdie 1629
              If pkgInfoHash.Exists("persist_ripple_stop") Then
1630
                  If NOT IsNull(pkgInfoHash.Item("persist_ripple_stop")) Then
1631
                      sPersistText = "&nbsp;[Persistent Ripple Stop Enabled]"
1632
                  End If
6440 dpurdie 1633
              End If
1634
 
1635
             %>
1636
             <tr>
6873 dpurdie 1637
                  <td>Ripple Stop <%=Quick_Help ( "ripple_stop" )%></td>
1638
                  <td><%=sStopText%><%=sPersistText%>
6440 dpurdie 1639
                  <%If canActionInProject() AND sClickStop <> "" Then%>
6827 dpurdie 1640
                    <span onClick="<%=sClickStop%>" class="txt_linked pointer"><%=sButtonText%><img src="images/i_edit.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'></span>
6873 dpurdie 1641
                  <%End If%>
1642
                  </td>
6440 dpurdie 1643
            </tr>
1644
            <%End If%>
121 hknight 1645
         </table>
1646
      </fieldset>
1647
      <br>
1648
   <%End If%>
131 ghuddy 1649
 
119 ghuddy 1650
<!-- REASON FOR RELEASE ----------------------------------------------------------------------------------------------------------------->
6324 dpurdie 1651
   <fieldset class="fset">
1652
      <legend class="body_colb"><img src='images/s_notes.gif' width='21' height='24' hspace='4' border='0' align='absmiddle'>Reason for this version</legend>
6610 dpurdie 1653
      <div style="display: block;float: right;margin-top: -25px;background-color: #FFF;padding: 0 5px;">
1654
          <span class="clipElement txt_linked" title="Copy to Clipboard" data-target="releaseReason">Copy<%=enum_imgClipBoard12%></span>
6324 dpurdie 1655
       <%If pageIsEditable Then%>
6873 dpurdie 1656
             <span title='Insert dependency changes as the comment' onClick="return vixConfirm('Current comments would be deleted.<br>Do you wish to continue?',{url :'_update_versions.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>' })" class="txt_linked pointer">Update Dependencies<img src="images/i_new.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'></span>
6827 dpurdie 1657
             <span onClick="MM_openVixIFrame('_wform_reason_for_version.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Reason For Release')" class="txt_linked pointer">Edit<img src="images/i_edit.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'></span>
6324 dpurdie 1658
       <%End If%>
1659
      </div>
121 hknight 1660
      <a name="REASON_FOR_THIS_RELEASE"></a>
6873 dpurdie 1661
      <table width="100%" border="0" cellspacing="1" cellpadding="2" >
121 hknight 1662
         <tr>
6873 dpurdie 1663
            <td>
121 hknight 1664
            <%If pkgInfoHash.Item ("comments") <> "" Then%>
6873 dpurdie 1665
               <table width="100%" border='0' cellspacing='0' cellpadding='0' class='allGrey'>
121 hknight 1666
                  <tr>
6873 dpurdie 1667
                     <td id=releaseReason> <%Response.Write( NewLine_To_BR(pkgInfoHash.Item("comments")) )%><br></td>
121 hknight 1668
                  </tr>
1669
               </table>
1670
            <%ElseIf FixedIssues ( parPv_id ) Then%>
6873 dpurdie 1671
               <span>Not specified.</span><br>
121 hknight 1672
            <%Else%>
1673
               <span class='err_alert'>Required!</span><br>
1674
            <%End If%>
1675
            </td>
1676
         </tr>
1677
      </table>
1678
   </fieldset>
4230 dpurdie 1679
   <br>
119 ghuddy 1680
<!-- REASON FOR NON_RIPPLE RELEASE ----------------------------------------------------------------------------------------------------------------->
121 hknight 1681
   <%If pkgInfoHash.Item ("comments") = "Rippled Build." Then%>
119 ghuddy 1682
 
6324 dpurdie 1683
      <fieldset class="fset">
1684
         <legend class="body_colb"><img src='images/s_notes.gif' width='21' height='24' hspace='4' border='0' align='absmiddle'>Reason for last non-ripple build</legend>
6873 dpurdie 1685
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class='allGrey'>
121 hknight 1686
            <tr>
6873 dpurdie 1687
               <td>
121 hknight 1688
                  <%
1689
                  'Dim rsQry
1690
                  Call LastPvId(pkgInfoHash.Item ("pv_id"))
119 ghuddy 1691
 
121 hknight 1692
                  While rsQry("comments") = "Rippled Build."
1693
                     Call LastPvId(rsQry("last_pv_id"))
1694
                  Wend
119 ghuddy 1695
 
121 hknight 1696
                  If pkgInfoHash.Item ("comments") <> "" Then
1697
                     Response.write "<table border='0' cellspacing='0' cellpadding='0'>"
1698
                     Response.write "<tr>"
1699
                     Response.write "<td class='sublbox_txt'><b>Package Version:</b> <b>"& NewLine_To_BR(( rsQry ("pkg_version") ) ) &"</b><br></td>"
1700
                     Response.write "</tr>"
1701
                     Response.write "<tr>"
1702
                     Response.write "<td class='sublbox_txt'>"& NewLine_To_BR(( rsQry ("comments") ) ) &"<br></td>"
1703
                     Response.write "</tr>"
119 ghuddy 1704
 
121 hknight 1705
                     Response.write "</table>"%>
119 ghuddy 1706
 
121 hknight 1707
                     <table width="100%" border="0" cellspacing="1" cellpadding="2">
1708
                        <tr>
1709
                           <td valign="top" class="sublbox_txt"><b>Fixed Issues For Last Non-Ripple Build</b></td>
1710
                           <td align="right" valign="top">
1711
                              <%If pageIsEditable Then%>
6827 dpurdie 1712
                                 <span onClick="MM_openVixIFrame('_wform_import_issues.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>&skip_open=true','Import Fixed Issues')" class="txt_linked pointer">Import Fixed Issues from ClearQuest<img src="images/i_download.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'></span>
121 hknight 1713
                              <%End If%>
1714
                           </td>
1715
                        </tr>
1716
                     </table>
1717
                     <%Call Get_Package_Issues ( parPv_id, SQLstr, fixedIssDict, notesIssDict, enumISSUES_STATE_FIXED )
1718
                     If (retVal > 0) Then
1719
                        retVal = Get_CQ_Issues ( SQLstr, rsCQ )
1720
                        If retVal = 0 Then%>
1721
                           <table width="100%" border="0" cellspacing="1" cellpadding="3">
1722
                              <tr>
6873 dpurdie 1723
                                 <td bgcolor=#e4e9ec nowrap width="1%" class="form_field" align="center">Fixed</td>
1724
                                 <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">Issue&nbsp;Id&nbsp;</td>
1725
                                 <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">Issue&nbsp;DB&nbsp;</td>
161 iaugusti 1726
                                 <td bgcolor=#e4e9ec nowrap width="100%" class="form_field">Summary</td>
6873 dpurdie 1727
                                 <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">Issue&nbsp;Type&nbsp;</td>
1728
                                 <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">Priority</td>
1729
                                 <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">Status</td>
1730
                                 <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">Note</td>
1731
                                 <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">&nbsp;</td>
121 hknight 1732
                              </tr>
1733
                              <%If ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF)) Then%>
1734
                                 <%While ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF))%>
1735
                                    <tr>
161 iaugusti 1736
                                       <td align="center" nowrap bgcolor=#e4e9ec><img src="images/i_tick_black.gif" width="7" height="7" vspace="2"></td>
6873 dpurdie 1737
                                       <td nowrap class="form_item"><span onClick="MM_openVixIFrame('_wform_issues_details.asp?iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>','Issue Details')" class="txt_linked pointer"><%=rsCQ("iss_num")%></span></td>
1738
                                       <td class="form_item">
4553 dpurdie 1739
                                            <%If Cint(rsCQ("iss_db")) = enumCLEARQUEST_DEVI_ID Then%>
3975 dpurdie 1740
                                                DEVI
1741
                                            <%Else%>
1742
                                                UNKNOWN
1743
                                            <%End If%></td>
6873 dpurdie 1744
                                       <td class="form_item"><%=NewLine_To_BR ( To_HTML ( rsCQ("summary") ) )%></td>
1745
                                       <td nowrap  class="form_item"><%=rsCQ("issue_type")%></td>
1746
                                       <td nowrap  class="form_item"><%=rsCQ("priority")%></td>
1747
                                       <td nowrap  class="form_item"><%=rsCQ("Status")%></td>
121 hknight 1748
                                       <%If sectionIsEditable Then%>
1749
                                           <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%>
6873 dpurdie 1750
                                             <td align="center"  class="form_item"><span class='pointer' onClick="MM_openVixIFrame('_wform_issue_notes.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>&iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>','Issue Notes')"><img src="images/i_note_on.gif" width="11" height="12" border="0" title="<%=notesIssDict.Item (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id")))%>"></span></td>
121 hknight 1751
                                          <%Else%>
6873 dpurdie 1752
                                             <td align="center"  class="form_item"><span class='pointer' onClick="MM_openVixIFrame('_wform_issue_notes.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>&iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>','Issue Notes')"><img src="images/i_note_off.gif" width="11" height="12" border="0" title="Add Note"></span></td>
121 hknight 1753
                                          <%End If%>
1754
                                       <%Else%>
1755
                                          <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%>
6873 dpurdie 1756
                                             <td align="center"  class="form_item"><img src="images/i_note_on.gif" width="11" height="12" border="0" title="<%=notesIssDict.Item (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id")))%>"></td>
121 hknight 1757
                                          <%Else%>
6873 dpurdie 1758
                                             <td align="center"  class="form_item"><img src="images/i_note_off.gif" width="11" height="12" border="0"></td>
121 hknight 1759
                                          <%End If%>
1760
                                       <%End If%>
1761
                                       <%If NOT pageIsEditable Then%>
6873 dpurdie 1762
                                          <td align="center"  class="form_item"><img src="images/i_delete_disable.gif" width="13" height="12" hspace="2" border="0"></td>
121 hknight 1763
                                       <%Else%>
6873 dpurdie 1764
                                          <td align="center"  class="form_item"><span class=pointer data-href="_remove_issue.asp?iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this issue from Release Manager');"><img src="images/i_delete.gif" width="13" height="12" hspace="2" border="0" alt="Delete this issue from the list"></span></td>
121 hknight 1765
                                       <%End If%>
1766
                                    </tr>
1767
                                    <%rsCQ.MoveNext
1768
                                 WEnd
1769
                                 rsCQ.Close()%>
1770
                              <%Else%>
1771
                                 <tr>
161 iaugusti 1772
                                    <td bgcolor=#e4e9ec nowrap>&nbsp;</td>
6873 dpurdie 1773
                                    <td nowrap></td>
1774
                                    <td class="form_item"></td>
1775
                                    <td class="form_item"></td>
1776
                                    <td class="form_item"></td>
1777
                                    <td class="form_item"></td>
1778
                                    <td class="form_item"></td>
1779
                                    <td class="form_item"></td>
1780
                                    <td align="center"  class="form_item"></td>
121 hknight 1781
                                 </tr>
1782
                              <%End If%>
1783
                           </table>
1784
                        <%End If%>
1785
                        <%If retVal <> 0 Then Response.write enumMSSQL_ERROR
1786
                     End If
1787
                  Else
1788
                     If FixedIssues ( parPv_id ) Then
1789
                        Response.write "<span class='sublbox_txt'>Not specified.</span><br>"
1790
                     Else
1791
                        Response.write "<span class='err_alert'>Required!</span><br>"
1792
                     End If
1793
                  End If
119 ghuddy 1794
 
121 hknight 1795
                  rsQry.Close()
1796
                  Set rsQry = nothing
1797
                  %>
1798
               </td>
1799
            </tr>
1800
         </table>
1801
      </fieldset>
4230 dpurdie 1802
      <br>
121 hknight 1803
   <%End If%>
1804
<!-- FIXED ISSUES ----------------------------------------------------------------------------------------------------------------------->
123 ghuddy 1805
   <fieldset class="fset">
1806
      <legend class="body_colb">
6827 dpurdie 1807
         <img src="images/s_bugs.gif" width="21" height="18" border="0" hspace="4" align='absmiddle'>
123 ghuddy 1808
         Issues
1809
      </legend>
5861 dpurdie 1810
      <a name="ISSUES"></a>
121 hknight 1811
      <p class="body_colb"><a name="ISSUES"></a></p>
1812
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
1813
         <tr>
4254 dpurdie 1814
            <!-- Jira Issues -->
121 hknight 1815
            <td valign="top" class="body_colb">JIRA Issues</td>
1816
            <td align="right" valign="top">
6827 dpurdie 1817
            <%BuildEditButtonRaw  pageIsEditable, "Import JIRA issues", "Edit", TRUE, "src='images/i_download.gif' width='12' height='12' hspace='2' border='0' align='absmiddle'", "MM_openVixIFrame('_wform_import_jira_issues.asp?pv_id="&parPv_id&"&rtag_id="&parRtag_id&"&skip_open=true','Import Issues')" %>
121 hknight 1818
            </td>
119 ghuddy 1819
 
4254 dpurdie 1820
            <%
1821
            Dim issueInfo, el, key
1822
            Set issueInfo = CreateObject( "Scripting.Dictionary" )
1823
            Call getJiraIssueDetails(parPv_id,issueInfo, 0)
1824
            If issueInfo.Count > 0 Then
1825
            %>
121 hknight 1826
 
6873 dpurdie 1827
            <table width="100%" border="0" cellspacing="1" cellpadding="3" class=stdGrey>
1828
                <thead>
1829
                   <th width="1%" align="center">Fixed</th>
1830
                   <th width="1%" >IssueId</th>
1831
                   <th width="1%" >IssueDB</th>
1832
                   <th width="100%" >Summary</th>
1833
                   <th width="1%" >IssueType</th>
1834
                   <th width="1%" >Priority</th>
1835
                   <th width="1%" >Status</th>
1836
                   <th width="1%" >Note</th>
1837
                   <th width="1%" ></th>
1838
                </thead>
4254 dpurdie 1839
                <%
1840
                For Each key In issueInfo
1841
                Set el = issueInfo.item(key)
1842
                %>
1843
                <tr>
1844
                  <%If el.Exists("resolution") Then %>
6873 dpurdie 1845
                     <td align="center" nowrap>
4254 dpurdie 1846
                        <img src="images/i_tick_black.gif" width="7" height="7" vspace="2">
1847
                     </td>
1848
                  <%Else%>
6873 dpurdie 1849
                     <td align="center" nowrap></td>
4254 dpurdie 1850
                  <%End If%>
6873 dpurdie 1851
                  <td nowrap class="form_item">
4254 dpurdie 1852
                     <a href="<%=el.item("url")%>" target="_blank" class="txt_linked"><%=key%></a>
1853
                  </td>
6873 dpurdie 1854
                  <td><%=el.item("type")%></td>
1855
                  <td><%=NewLine_To_BR ( To_HTML ( el.item("summary") ) )%></td>
1856
                  <td nowrap><%=el.item("issuetype")%></td>
1857
                  <td nowrap><%=el.item("priority")%></td>
1858
                  <td nowrap><%=el.item("status")%></td>
1859
                  <td nowrap></td>
4254 dpurdie 1860
                  <%If NOT pageIsEditable Then%>
6873 dpurdie 1861
                     <td align="center">
4254 dpurdie 1862
                        <img src="images/i_delete_disable.gif" width="13" height="12" hspace="2" border="0">
1863
                     </td>
1864
                  <%Else%>
6873 dpurdie 1865
                     <td align="center">
1866
                        <span class=pointer data-href="_remove_jira_issue.asp?iss_link=<%=el.item("key")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this issue from Release Manager');">
4254 dpurdie 1867
                           <img src="images/i_delete.gif" width="13" height="12" hspace="2" border="0" alt="Delete this issue from the list">
6873 dpurdie 1868
                        </span>
4254 dpurdie 1869
                     </td>
1870
                  <%End If%>
1871
               </tr>
1872
               <%
1873
               Next
1874
               Set issueInfo = nothing
1875
               %>
1876
            </table>
121 hknight 1877
            <%End If%>
119 ghuddy 1878
 
4254 dpurdie 1879
            <!-- Fixed ClearCase Issues -->
121 hknight 1880
            <table width="100%" border="0" cellspacing="1" cellpadding="2">
1881
               <tr>
1882
                  <td valign="top" class="body_colb">Fixed Issues</td>
1883
                  <td align="right" valign="top">
6827 dpurdie 1884
                    <%BuildEditButtonRaw  pageIsEditable, "Import Fixed Issues from ClearQuest", "Edit", TRUE, "src='images/i_download.gif' width='12' height='12' hspace='2' border='0' align='absmiddle'", "MM_openVixIFrame('_wform_import_issues.asp?pv_id="&parPv_id&"&rtag_id="&parRtag_id&"&skip_open=true','Import Fixed Issues')" %>
121 hknight 1885
                  </td>
1886
               </tr>
1887
            </table>
119 ghuddy 1888
 
121 hknight 1889
            <%retVal = Get_Package_Issues ( parPv_id, SQLstr, fixedIssDict, notesIssDict, enumISSUES_STATE_FIXED )
1890
            If (retVal > 0) Then
1891
               retVal = Get_CQ_Issues ( SQLstr, rsCQ )
1892
               If retVal = 0 Then%>
6873 dpurdie 1893
                  <table width="100%" border="0" cellspacing="1" cellpadding="3" class=stdGrey>
1894
                     <thead>
1895
                        <th width="1%" align="center">Fixed</th>
1896
                        <th width="1%" >IssueId</th>
1897
                        <th width="1%" >IssueDB</th>
1898
                        <th width="100%">Summary</th>
1899
                        <th width="1%" >IssueType</th>
1900
                        <th width="1%" >Priority</th>
1901
                        <th width="1%" >Status</th>
1902
                        <th width="1%" >Note</th>
1903
                        <th width="1%" ></th>
1904
                     </thead>
121 hknight 1905
                     <%If ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF)) Then%>
1906
                        <%While ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF))%>
1907
                           <tr>
161 iaugusti 1908
                              <td align="center" nowrap bgcolor=#e4e9ec><img src="images/i_tick_black.gif" width="7" height="7" vspace="2"></td>
6873 dpurdie 1909
                              <td nowrap class="form_item">
6827 dpurdie 1910
                                <%BuildEditButtonRaw  TRUE, rsCQ("iss_num") , "Edit", TRUE, "", "MM_openVixIFrame('_wform_issues_details.asp?iss_db="&rsCQ("iss_db")&"&iss_id="&rsCQ("iss_id")&"','Issue Details')" %>
123 ghuddy 1911
                              </td>
6873 dpurdie 1912
                              <td class="form_item">
4553 dpurdie 1913
                                 <%If CInt(rsCQ("iss_db")) = enumCLEARQUEST_DEVI_ID Then%>
123 ghuddy 1914
                                    DEVI
1915
                                 <%Else%>
3975 dpurdie 1916
                                    UNKNOWN
123 ghuddy 1917
                                 <%End If%>
1918
                              </td>
6873 dpurdie 1919
                              <td class="form_item"><%=NewLine_To_BR ( To_HTML ( rsCQ("summary") ) )%></td>
1920
                              <td nowrap  class="form_item"><%=rsCQ("issue_type")%></td>
1921
                              <td nowrap  class="form_item"><%=rsCQ("priority")%></td>
1922
                              <td nowrap  class="form_item"><%=rsCQ("Status")%></td>
6827 dpurdie 1923
                              <%If sectionIsEditable AND pageIsEditable Then
1924
                                    Dim noteImage
1925
                                    If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then
1926
                                        noteImage = "images/i_note_on.gif"
1927
                                    Else
1928
                                        noteImage = "images/i_note_off.gif"
1929
                                    End If
1930
                                End If
1931
                                 %>
1932
 
1933
 
121 hknight 1934
                              <%If sectionIsEditable AND pageIsEditable Then%>
1935
                                 <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%>
6873 dpurdie 1936
                                    <td align="center"  class="form_item">
1937
                                       <span class='pointer txt_linked' onClick="MM_openVixIFrame('_wform_issue_notes.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>&iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>','Issue Notes')">
123 ghuddy 1938
                                          <img src="images/i_note_on.gif" width="11" height="12" border="0" title="<%=notesIssDict.Item (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id")))%>">
6873 dpurdie 1939
                                       </span>
123 ghuddy 1940
                                    </td>
121 hknight 1941
                                 <%Else%>
6873 dpurdie 1942
                                    <td align="center"  class="form_item">
1943
                                       <span class='pointer txt_linked' onClick="MM_openVixIFrame('_wform_issue_notes.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>&iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>','Issue Notes')">
123 ghuddy 1944
                                          <img src="images/i_note_off.gif" width="11" height="12" border="0" title="Add Note">
6873 dpurdie 1945
                                       </span>
123 ghuddy 1946
                                    </td>
121 hknight 1947
                                 <%End If%>
1948
                              <%Else%>
1949
                                 <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%>
6873 dpurdie 1950
                                    <td align="center"  class="form_item">
123 ghuddy 1951
                                       <img src="images/i_note_on.gif" width="11" height="12" border="0" title="<%=notesIssDict.Item (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id")))%>">
1952
                                    </td>
121 hknight 1953
                                 <%Else%>
6873 dpurdie 1954
                                    <td align="center"  class="form_item">
123 ghuddy 1955
                                       <img src="images/i_note_off.gif" width="11" height="12" border="0">
1956
                                    </td>
121 hknight 1957
                                 <%End If%>
1958
                              <%End If%>
1959
                              <%If NOT pageIsEditable Then%>
6873 dpurdie 1960
                                 <td align="center"  class="form_item">
123 ghuddy 1961
                                    <img src="images/i_delete_disable.gif" width="13" height="12" hspace="2" border="0">
1962
                                 </td>
121 hknight 1963
                              <%Else%>
6873 dpurdie 1964
                                 <td align="center"  class="form_item">
1965
                                    <span class=pointer data-href="_remove_issue.asp?iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this issue from Release Manager');">
123 ghuddy 1966
                                       <img src="images/i_delete.gif" width="13" height="12" hspace="2" border="0" alt="Delete this issue from the list">
6873 dpurdie 1967
                                    </span>
123 ghuddy 1968
                                 </td>
121 hknight 1969
                              <%End If%>
1970
                           </tr>
1971
                           <%rsCQ.MoveNext
1972
                        WEnd
1973
                        rsCQ.Close()%>
1974
                     <%Else%>
1975
                        <tr>
6873 dpurdie 1976
                           <td>&nbsp;</td>
1977
                           <td></td>
1978
                           <td></td>
1979
                           <td></td>
1980
                           <td></td>
1981
                           <td></td>
1982
                           <td></td>
1983
                           <td></td>
1984
                           <td></td>
121 hknight 1985
                        </tr>
1986
                     <%End If%>
119 ghuddy 1987
 
121 hknight 1988
                  </table>
1989
               <%End If%>
1990
               <%If retVal <> 0 Then Response.write enumMSSQL_ERROR%>
1991
            <%End If%>
119 ghuddy 1992
 
4254 dpurdie 1993
            <!-- Outstanding ClearCase Issues -->
121 hknight 1994
            <table width="100%" border="0" cellspacing="1" cellpadding="2">
1995
               <tr>
1996
                  <td valign="top" class="body_colb">Outstanding Issues</td>
1997
                  <td align="right" valign="top">
1998
                     <%If pageIsEditable Then%>
6873 dpurdie 1999
                        <span class='pointer txt_linked' onClick="MM_openVixIFrame('_wform_import_issues.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Import Issues')" class="txt_linked">
123 ghuddy 2000
                           Import Outstanding Issues from ClearQuest
6827 dpurdie 2001
                           <img src="images/i_download.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'>
6873 dpurdie 2002
                        </span>
121 hknight 2003
                     <%End If%>
2004
                  </td>
2005
               </tr>
2006
            </table>
119 ghuddy 2007
 
121 hknight 2008
            <%retVal = Get_Package_Issues ( parPv_id, SQLstr, fixedIssDict, notesIssDict, enumISSUES_STATE_IMPORTED )
2009
            If (retVal > 0) Then
2010
               retVal = Get_CQ_Issues ( SQLstr, rsCQ )
2011
               If retVal = 0 Then%>
6873 dpurdie 2012
                  <table width="100%" border="0" cellspacing="1" cellpadding="2" class=stdGrey>
121 hknight 2013
                     <form name="fixedissues" method="get" action="_update_issues_state.asp">
6873 dpurdie 2014
                        <thead>
121 hknight 2015
                           <%If pageIsEditable Then%>
6873 dpurdie 2016
                              <th nowrap width="1%" align="center">Fixed</th>
121 hknight 2017
                           <%End If%>
6873 dpurdie 2018
                           <th  nowrap width="1%" >Issue&nbsp;Id&nbsp;</th>
2019
                           <th  nowrap width="1%" >Issue DB&nbsp;</th>
2020
                           <th  nowrap width="100%" >Summary</th>
2021
                           <th  nowrap width="1%" >Issue&nbsp;Type&nbsp;</th>
2022
                           <th  nowrap width="1%" >Priority</th>
2023
                           <th  nowrap width="1%" >Status</th>
2024
                           <th  nowrap width="1%" >Note</th>
2025
                           <th  nowrap width="1%" >&nbsp;</th>
2026
                        </thead>
121 hknight 2027
                        <%If ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF)) Then%>
2028
                           <%While ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF))%>
2029
                              <tr>
2030
                                 <%If pageIsEditable Then%>
6873 dpurdie 2031
                                    <td align="center" nowrap>
123 ghuddy 2032
                                       <input type="checkbox" name="FRfixed" value="<%=rsCQ("iss_db") &"."& rsCQ("iss_id")%>">
2033
                                    </td>
121 hknight 2034
                                 <%End If%>
6873 dpurdie 2035
                                 <td nowrap class="form_item">
2036
                                    <span class='pointer txt_linked' onClick="MM_openVixIFrame('_wform_issues_details.asp?iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>','Issue Details')" class="txt_linked">
123 ghuddy 2037
                                       <%=rsCQ("iss_num")%>
6873 dpurdie 2038
                                    </span>
123 ghuddy 2039
                                 </td>
6873 dpurdie 2040
                                 <td class="form_item">
4553 dpurdie 2041
                                    <%If CInt(rsCQ("iss_db")) = enumCLEARQUEST_DEVI_ID Then%>
123 ghuddy 2042
                                       DEVI
2043
                                    <%Else%>
4553 dpurdie 2044
                                       UNKNOWN
123 ghuddy 2045
                                    <%End If%>
2046
                                 </td>
6873 dpurdie 2047
                                 <td class="form_item"><%=NewLine_To_BR ( To_HTML ( rsCQ("summary") ) )%></td>
2048
                                 <td nowrap  class="form_item"><%=rsCQ("issue_type")%></td>
2049
                                 <td nowrap  class="form_item"><%=rsCQ("priority")%></td>
2050
                                 <td nowrap  class="form_item"><%=rsCQ("Status")%></td>
121 hknight 2051
                                 <%If sectionIsEditable AND pageIsEditable Then%>
2052
                                    <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%>
6873 dpurdie 2053
                                       <td align="center"  class="form_item">
2054
                                          <span class='pointer txt_linked' onClick="MM_openVixIFrame('_wform_issue_notes.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>&iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>','Issue Notes')">
123 ghuddy 2055
                                             <img src="images/i_note_on.gif" width="11" height="12" border="0" alt="<%=notesIssDict.Item (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id")))%>">
6873 dpurdie 2056
                                          </span>
123 ghuddy 2057
                                       </td>
121 hknight 2058
                                    <%Else%>
6873 dpurdie 2059
                                       <td align="center"  class="form_item">
2060
                                          <span class='pointer txt_linked' onClick="MM_openVixIFrame('_wform_issue_notes.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>&iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>','Issue Notes')">
123 ghuddy 2061
                                             <img src="images/i_note_off.gif" width="11" height="12" border="0" alt="Add Note">
6873 dpurdie 2062
                                          </span>
123 ghuddy 2063
                                       </td>
121 hknight 2064
                                    <%End If%>
2065
                                 <%Else%>
2066
                                    <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%>
6873 dpurdie 2067
                                       <td align="center"  class="form_item">
123 ghuddy 2068
                                          <img src="images/i_note_on.gif" width="11" height="12" border="0" alt="<%=notesIssDict.Item (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id")))%>">
2069
                                       </td>
121 hknight 2070
                                    <%Else%>
6873 dpurdie 2071
                                       <td align="center"  class="form_item">
123 ghuddy 2072
                                          <img src="images/i_note_off.gif" width="11" height="12" border="0">
2073
                                       </td>
121 hknight 2074
                                    <%End If%>
2075
                                 <%End If%>
2076
                                 <%If NOT pageIsEditable Then%>
6873 dpurdie 2077
                                    <td align="center"  class="form_item">
123 ghuddy 2078
                                       <img src="images/i_delete_disable.gif" width="13" height="12" hspace="2" border="0">
2079
                                    </td>
121 hknight 2080
                                 <%Else%>
6873 dpurdie 2081
                                    <td align="center"  class="form_item">
2082
                                       <span class=pointer data-href="_remove_issue.asp?iss_db=<%=rsCQ("iss_db")%>&iss_id=<%=rsCQ("iss_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this issue from Release Manager');">
123 ghuddy 2083
                                          <img src="images/i_delete.gif" width="13" height="12" hspace="2" border="0" alt="Delete this issue from the list">
6873 dpurdie 2084
                                       </span>
123 ghuddy 2085
                                    </td>
121 hknight 2086
                                 <%End If%>
2087
                              </tr>
2088
                              <%rsCQ.MoveNext
2089
                           WEnd
2090
                           rsCQ.Close()%>
2091
                           <%If pageIsEditable Then%>
6873 dpurdie 2092
                              <tr class=blank>
161 iaugusti 2093
                                 <td align="center" nowrap bgcolor=#e4e9ec>
123 ghuddy 2094
                                    <input type="submit" name="Apply" value="Apply" class="form_btn">
2095
                                 </td>
121 hknight 2096
                                 <td></td>
2097
                                 <td></td>
2098
                                 <td></td>
2099
                                 <td></td>
2100
                                 <td></td>
2101
                                 <td></td>
2102
                                 <td></td>
2103
                                 <td></td>
2104
                              </tr>
2105
                           <%End If%>
2106
                        <%Else%>
2107
                           <tr>
2108
                              <%If pageIsEditable Then%>
161 iaugusti 2109
                                 <td bgcolor=#e4e9ec nowrap>&nbsp;</td>
121 hknight 2110
                              <%End If%>
6873 dpurdie 2111
                              <td nowrap></td>
2112
                              <td class="form_item"></td>
2113
                              <td class="form_item"></td>
2114
                              <td class="form_item"></td>
2115
                              <td class="form_item"></td>
2116
                              <td class="form_item"></td>
2117
                              <td class="form_item"></td>
2118
                              <td align="center"  class="form_item"></td>
121 hknight 2119
                           </tr>
2120
                        <%End If%>
2121
                        <input name="pv_id" type="hidden" value="<%=parPv_id%>">
2122
                        <input name="rtag_id" type="hidden" value="<%=parRtag_id%>">
2123
                     </form>
2124
                  </table>
2125
               <%End If%>
2126
               <%If retVal <> 0 Then Response.write enumMSSQL_ERROR%>
2127
            <%End If%>
123 ghuddy 2128
<!-- DEVI-050133 Although it would seem to the human eye that the following row and table closing tags are needed, -->
2129
<!--             they do in fact cause the page to be rendered incorrectly. Hence they are commented out for now   -->
2130
<!--             until the true cause of the mis-rendering can be ascertained.                                    -->
2131
<!--     </tr> -->
2132
<!--  </table> -->
121 hknight 2133
   </fieldset>
4230 dpurdie 2134
   <br>
119 ghuddy 2135
<!-- DEPENDENCY ISSUES (NOT FOR PATCHES!) ------------------------------------------------------------------------------------------------------->
2136
 
121 hknight 2137
   <%If IsNull(pkgInfoHash.Item ("is_patch")) Then%>
6827 dpurdie 2138
      <fieldset class="fset"><legend class="body_colb"><img src="images/s_bugs.gif" width="21" height="18" border="0" hspace="4" align='absmiddle'>Dependency Issues</legend>
6873 dpurdie 2139
         <table width="100%" border="0" cellspacing="1" cellpadding="2" class=stdGrey>
119 ghuddy 2140
 
4585 dpurdie 2141
            <%
2142
            If  Request("ShowIssues") <> "" Then
2143
                retVal = Get_Package_Issues ( parPv_id, SQLstr, NULL, NULL, NULL )
2144
            Else
2145
                retVal = 0
2146
                %>
2147
                <tr>
6873 dpurdie 2148
                    <td>
2149
                        <span class='pointer txt_linked' onClick="window.location.href=window.location.href+'&ShowIssues=1'">Show Issues of Dependent Packages</span>
4585 dpurdie 2150
                    </td>
2151
                </tr>
2152
                <%
2153
            End If
121 hknight 2154
            If (retVal > 0) Then
2155
               retVal = Get_Dependency_CQ_Issues ( SQLstr, rsCQ, depIssDict, issArr )
2156
               If retVal = 0 Then%>
2157
                  <%
2158
                  currG1 = 0
2159
                  G1_template = _
2160
                  "<tr>"&_
2161
                  "  <td colspan='7'><img src='images/spacer.gif' width='2' height='2'></td>"&_
2162
                  "</tr>"&_
2163
                  "<tr>"&_
161 iaugusti 2164
                  "  <td colspan='7' bgcolor=#e4e9ec class='form_item'>/*DEP_NAME_VERSION*//*REASONS*/</td>"&_
121 hknight 2165
                  "</tr>"
2166
                  Set rsDepIss = OraDatabase.DbCreateDynaset( SQL_Dependency_Issues( parPv_id ), cint(0))
2167
                  %>
2168
                  <%If ((NOT rsDepIss.BOF) AND (NOT rsDepIss.EOF)) Then%>
2169
                     <%While ((NOT rsDepIss.BOF) AND (NOT rsDepIss.EOF))%>
2170
                        <%
2171
                        iss_db_id = Cstr(rsDepIss("iss_db") &"."& rsDepIss("iss_id"))
2172
                        G1_style = Replace(G1_template, "/*DEP_NAME_VERSION*/", "<SPAN class='envolPkg'><b>"& rsDepIss("pkg_name") &" "& rsDepIss("pkg_version") &"</b></SPAN>")
2173
                        If IsNull(rsDepIss("iss_id")) Then
2174
                           If IsNull(rsDepIss("reasons")) Then
2175
                              G1_style = Replace(G1_style, "/*REASONS*/", "<br>Reason for this version is not specified.")
2176
                           Else
2177
                              G1_style = Replace(G1_style, "/*REASONS*/", "<br>"& NewLine_To_BR ( To_HTML ( rsDepIss("reasons") ) ) )
2178
                           End If
2179
                        Else
2180
                           If IsNull(rsDepIss("reasons")) Then
2181
                              G1_style = Replace(G1_style, "/*REASONS*/", "")
2182
                           Else
2183
                              G1_style = Replace(G1_style, "/*REASONS*/", "<br>"& NewLine_To_BR ( To_HTML ( rsDepIss("reasons") ) ) )
2184
                           End If
2185
                        End If
119 ghuddy 2186
 
121 hknight 2187
                        Call Group_By ( rsDepIss("pv_id"), G1_style, currG1 )
2188
                        If NOT IsNull(rsDepIss("iss_id")) Then
2189
                           If rsDepIss("pv_id") <> currG1 Then
2190
                              currG1 = rsDepIss("pv_id")%>
6873 dpurdie 2191
                              <thead>
2192
                                 <th width="1%" align="center"></th>
2193
                                 <th width="1%" align="center">Fixed</th>
2194
                                 <th width="1%" >IssueId</th>
2195
                                 <th width="1%" >Issue DB</th>
2196
                                 <th width="100%">Summary</th>
2197
                                 <th width="1%" >IssueType</th>
2198
                                 <th width="1%" >Priority</th>
2199
                              </thead>
121 hknight 2200
                           <%End If%>
2201
                           <tr>
161 iaugusti 2202
                              <td bgcolor=#e4e9ec></td>
6873 dpurdie 2203
                              <td align="center" nowrap>
121 hknight 2204
                                 <%If CInt(rsDepIss("iss_state")) = enumISSUES_STATE_FIXED Then%>
2205
                                    <img src="images/i_tick_black.gif" width="7" height="7" vspace="2">
2206
                                 <%Else%>
2207
                                    <img src="images/spacer.gif" width="7" height="7" vspace="2">
2208
                                 <%End If%>
2209
                              </td>
6873 dpurdie 2210
                              <td nowrap class="form_item"><span class='pointer txt_linked' onClick="MM_openVixIFrame('_wform_issues_details.asp?iss_db=<%=asDepIss( iss_db_id, enumLoc_iss_db )%>&iss_id=<%=asDepIss( iss_db_id, enumLoc_iss_id )%>','Issue Details')" class="txt_linked"><%=asDepIss( iss_db_id, enumLoc_iss_num )%></span></td>
2211
                              <td class="form_item">
4553 dpurdie 2212
                                    <%If CInt(asDepIss( iss_db_id, enumLoc_iss_db )) = enumCLEARQUEST_DEVI_ID Then%>
3975 dpurdie 2213
                                        DEVI
2214
                                    <%Else%>
2215
                                        UNKNOWN
2216
                                    <%End If%></td>
6873 dpurdie 2217
                              <td class="form_item"><%=asDepIss( iss_db_id, enumLoc_summary)%></td>
2218
                              <td nowrap  class="form_item"><%=asDepIss( iss_db_id, enumLoc_issue_type)%></td>
2219
                              <td nowrap  class="form_item"><%=asDepIss( iss_db_id, enumLoc_priority)%></td>
121 hknight 2220
                           </tr>
2221
                        <%End If%>
2222
                        <%rsDepIss.MoveNext
2223
                     WEnd
2224
                     rsDepIss.Close()
2225
                     Set rsDepIss = nothing%>
2226
                  <%Else%>
2227
                     <tr>
6873 dpurdie 2228
                        <td nowrap></td>
2229
                        <td></td>
2230
                        <td></td>
2231
                        <td></td>
2232
                        <td></td>
2233
                        <td></td>
2234
                        <td></td>
121 hknight 2235
                     </tr>
2236
                  <%End If%>
2237
               <%End If%>
2238
               <%If retVal <> 0 Then Response.write enumMSSQL_ERROR%>
2239
            <%End If%>
2240
         </table>
2241
      </fieldset>
4230 dpurdie 2242
      <br>
121 hknight 2243
   <%End If%>
119 ghuddy 2244
<!-- UNIT TESTS --------------------------------------------------------------------------------------------------------------------->
121 hknight 2245
   <%
2246
   Dim testCheckMSG, testCheckMSG_ID, testCheckNote, testCheckTestsFound
2247
   Call CheckUnitTestsState ( parPv_id, testCheckMSG, testCheckMSG_ID, testCheckNote, testCheckTestsFound  )
2248
   Set rsQry = OraDatabase.DbCreateDynaset( SQL_Unit_Tests ( parPv_id ), cint(0))
2249
   %>
6324 dpurdie 2250
   <fieldset class="fset">
6827 dpurdie 2251
      <legend class="body_colb"><img src="images/i_unit_test.gif" width="18" height="25" hspace="4" border="0" align='absmiddle' alt="">Unit Tests
2252
      <%If testCheckMSG_ID = 0 AND (pkgInfoHash.Item("dlocked") <> "Y") Then%>
121 hknight 2253
         &nbsp;&nbsp;<%=testCheckMSG%>
2254
      <%End If%></legend>
6324 dpurdie 2255
      <div style="display: block;float: right;margin-top: -20px;background-color: #FFF;padding: 0 5px;">
2256
           <%If ( scriptName = "fixed_issues.asp" ) Then%>
2257
              <%If objAccessControl.UserLogedIn AND (pageIsEditable OR (pkgInfoHash.Item("dlocked") = "Y")) Then%>
6873 dpurdie 2258
                 <span class='pointer txt_linked' onClick="MM_openVixIFrame('_wform_unit_test.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Add Unit Test')" class="txt_linked">New Test<img src="images/i_new.gif" width="13" height="13" hspace="2" border="0" align='absmiddle' alt="Add new test."></span>
6324 dpurdie 2259
              <%End If%>
2260
              <%If (NOT testCheckTestsFound) AND (testCheckMSG_ID = 0)  Then%>
6827 dpurdie 2261
                 <a href='_not_done_unit_test.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>&notdone=Y' class='txt_linked'>Click here if Not Done!<img src="images/i_new.gif" width="13" height="13" hspace="2" border="0" align='absmiddle' alt="Add new test."></a>
6324 dpurdie 2262
              <%End If%>
2263
           <%End If%>
2264
      </div>
121 hknight 2265
      <a name="UNIT_TESTS"></a>
2266
      <%If (NOT testCheckTestsFound) AND (testCheckMSG_ID = -1) Then%>
2267
         <table width="100%" border="0" cellspacing="1" cellpadding="2">
2268
            <tr>
6873 dpurdie 2269
               <td class="form_item">
121 hknight 2270
                  <%Call DisplayInfo ( "UNIT_TEST_NOT_DONE", 300 )%>
2271
                  <span class="rep_small">Last Modified: <%=testCheckMSG%></span><br>
2272
                  <%=NewLine_To_BR( To_HTML ( testCheckNote ) )%>
2273
               </td>
2274
            </tr>
2275
         </table>
2276
      <%End If%>
119 ghuddy 2277
 
6873 dpurdie 2278
      <table width="100%" border="0" cellspacing="1" cellpadding="2" class='stdGrey'>
121 hknight 2279
         <form name="review" method="get" action="_update_unit_test_accepted_state.asp">
6873 dpurdie 2280
            <thead>
2281
               <th width="1%" nowrap valign="middle">Test Type</th>
2282
               <th width="100%" nowrap valign="middle">Test Summary</th>
2283
               <th width="1%" nowrap align="center" valign="middle">Test<br>Completed</th>
2284
               <th width="1%" nowrap align="center" valign="middle">Passed<br># / Total</th>
2285
               <th width="1%" nowrap align="center" valign="middle">Results</th>
2286
               <th width="1%" nowrap align="center" valign="middle">Accepted</th>
2287
               <th width="1%" nowrap align="center" valign="middle">Review<br>Completed</th>
2288
               <th width="1%" nowrap valign="middle">Comments /<br>Issue#</th>
2289
               <th width="1%" ></th>
2290
            </thead>
2291
            <%
2292
               Dim ShowApply: ShowApply = FALSE
2293
               While ((NOT rsQry.BOF) AND (NOT rsQry.EOF) )%>
121 hknight 2294
               <tr>
2295
                  <%If NOT pageIsEditable Then%>
6873 dpurdie 2296
                     <%If NOT IsNull(rsQry("test_id")) AND ( scriptName = "fixed_issues.asp") Then %>
2297
                        <td nowrap   valign="top"><span class='pointer txt_linked' onClick="MM_openVixIFrame('_wform_update_unit_test.asp?test_id=<%=rsQry("test_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Update Unit Test')" class="txt_linked"><img src="images/i_test.gif" width="16" height="16" hspace="3" align='absmiddle' border="0"><%=rsQry("test_type_name")%></span></td>
2298
                     <%Else %>
2299
                        <td nowrap   valign="top"><img src="images/i_test.gif" width="16" height="16" hspace="3" align='absmiddle'><%=rsQry("test_type_name")%></td>
121 hknight 2300
                     <%End If%>
6873 dpurdie 2301
                  <%Else %>
2302
                     <td nowrap   valign="top"><span class='pointer txt_linked' onClick="MM_openVixIFrame('<%If Not IsNull(rsQry("test_id")) Then%>_wform_update_unit_test.asp<%Else%>_wform_unit_test.asp<%End If%>?test_id=<%=rsQry("test_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>&test_type_id=<%=rsQry("test_type_id")%>','Update Unit Test')" class="txt_linked"><img src="images/i_test.gif" width="16" height="16" hspace="3" align='absmiddle' border="0"><%=rsQry("test_type_name")%></span></td>
2303
                  <%End If %>
2304
                  <%If rsQry("test_type_id") <> CStr(enumTEST_TYPE_AUTOBUILD_UTF) Then %>
2305
                  <td valign="top"><%=NewLine_To_BR( To_HTML( rsQry("test_summary") ))%></td>
2306
                  <td nowrap   valign="top"><%If ( NOT IsNull(rsQry("tester")) ) Then%><%=DisplayDate ( rsQry("completion_date") )%><br>by <%=emailField(rsQry("tester"),rsQry("tester_email"))%><%End If%></td>
2307
                  <td nowrap   valign="top" align="center"><%=rsQry("numof_test")%></td>
119 ghuddy 2308
 
6873 dpurdie 2309
                  <%If CInt(rsQry("test_type_id")) = enumTEST_TYPE_AUTOMATIC Then %>
2310
                     <td align="center" valign="top">
121 hknight 2311
                        <%If NOT IsNull( rsQry("results_url") ) Then%>
2312
                           <%If InStr( rsQry("results_url"), "http://" ) = 1 Then%>
2313
                              <a href="<%=rsQry("results_url")%>" target="_blank"><img src="images/i_results.gif" width="15" height="16" border="0" alt="View test results"></a>
2314
                           <%Else%>
3959 dpurdie 2315
                              <a href="<%=dpkg_archiveURL & pkgInfoHash.Item ("pkg_name") &"/"& pkgInfoHash.Item ("pkg_version") & rsQry("results_url")%>" target="_blank"><img src="images/i_results.gif" width="15" height="16" border="0" alt="View test results"></a>
121 hknight 2316
                           <%End If%>
2317
                        <%End If%>
2318
                     </td>
6873 dpurdie 2319
                  <% Else %>
2320
                     <td align="center" valign="top">
121 hknight 2321
                        <%If NOT IsNull( rsQry("results_attachment_name") ) Then%>
4809 dpurdie 2322
                            <a href="<%=TEMP_FOLDER &"/"& pkgInfoHash.Item ("pkg_name") &"/"& pkgInfoHash.Item ("pkg_version") &"/"& rsQry("results_attachment_name")%>" target="_blank"><img src="images/i_results.gif" width="15" height="16" border="0" alt="View test results"></a>
121 hknight 2323
                        <%End If%>
2324
                     </td>
2325
                  <%End If%>
119 ghuddy 2326
 
6873 dpurdie 2327
                  <td nowrap bgcolor=#e4e9ec class="sublbox_txt" valign="top" align="center">
2328
                        <%=FormatAccepted(rsQry("test_accepted"), rsQry("test_id"))%>
2329
                        <%ShowApply = true%>
2330
                  </td>
2331
                  <td nowrap   valign="top"><%If NOT IsNull(rsQry("reviewee")) Then%><%=DisplayDate ( rsQry("acceptance_date") )%><br>by <%=emailField(rsQry("reviewee"),rsQry("reviewee_email"))%><%End If%></td>
2332
                  <td valign="top"><%=NewLine_To_BR( To_HTML( rsQry("review_comments") ))%></td>
2333
                  <%Else%>
2334
                    <td colspan=7><a class=txt_linked href='unit_test_log.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>'>See Unit Tests tab</a></td>
2335
                  <%End If%>
157 ghuddy 2336
                  <%
2337
                  If (  (    pageIsEditable _
2338
                         AND (scriptName = "fixed_issues.asp") _
2339
                         AND (IsNull(rsQry("test_accepted")) OR (rsQry("test_accepted") = enumUNIT_TEST_NOTACCEPTED))) _
2340
                      OR _
2341
                        (    objAccessControl.UserLogedIn _
2342
                         AND (scriptName = "fixed_issues.asp") _
2343
                         AND (pkgInfoHash.Item("dlocked") = "Y") _
2344
                         AND (IsNull(rsQry("test_accepted")) OR (rsQry("test_accepted") = enumUNIT_TEST_NOTACCEPTED)) _
2345
                         AND (rsQry("test_type_id") <> CStr(enumTEST_TYPE_AUTOBUILD_UTF))) ) Then
2346
                  %>
6873 dpurdie 2347
                     <td valign="top"><%If NOT IsNull(rsQry("test_id")) Then%><span class=pointer data-href="_remove_unit_test.asp?test_id=<%=rsQry("test_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this unit test');"><img src="images/i_delete.gif" alt="Remove this test." width="13" height="12" hspace="3" border="0"></span><%End If%></td>
2348
                  <% Else %>
2349
                     <td valign="top"></td>
121 hknight 2350
                  <%End If%>
2351
               </tr>
157 ghuddy 2352
               <%
2353
               rsQry.MoveNext
2354
            WEnd
2355
            %>
6873 dpurdie 2356
            <tr class=blank>
2357
               <td></td>
2358
               <td></td>
2359
               <td></td>
2360
               <td></td>
2361
               <td></td>
2362
               <td align="center">
2363
                  <%If ShowApply AND (testCheckTestsFound) AND (testCheckMSG_ID = 0) AND ( scriptName = "fixed_issues.asp" ) AND pageIsEditable Then%>
157 ghuddy 2364
                     <input type="submit" name="Apply" value="Apply" class="form_btn">
2365
                  <%End If%>
2366
               </td>
6873 dpurdie 2367
               <td></td>
2368
               <td></td>
2369
               <td></td>
121 hknight 2370
            </tr>
2371
            <input name="pv_id" type="hidden" value="<%=parPv_id%>">
2372
            <input name="rtag_id" type="hidden" value="<%=parRtag_id%>">
2373
         </form>
2374
      </table>
2375
   </fieldset>
4230 dpurdie 2376
    <br>
119 ghuddy 2377
<!-- CODE REVIEW ------------------------------------------------------------------------------------------------------------------->
6324 dpurdie 2378
   <%Set rsQry = OraDatabase.DbCreateDynaset( SQL_CodeReview ( parPv_id ), cint(0))%>
2379
   <fieldset class="fset">
2380
      <legend class="body_colb"><img src='images/s_code_review.gif' width='21' height='23' hspace='4' border='0' align='absmiddle'>Code Review</legend>
2381
      <div style="display: block;float: right;margin-top: -20px;background-color: #FFF;padding: 0 5px;">
2382
           <%If ( scriptName = "fixed_issues.asp" ) Then%>
2383
              <%If objAccessControl.UserLogedIn AND (pageIsEditable OR (pkgInfoHash.Item("dlocked") = "Y")) Then%>
6873 dpurdie 2384
                 <span class='pointer txt_linked' onClick="MM_openBrWindow('_wform_update_code_review.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','CodeReviewEdit','scrollbars=yes,status=yes,resizable=yes,width=950,height='+ ( screen.height - 100 ) +',top=0,left=0')" class="txt_linked">Edit<img src="images/i_edit.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'></span>
6324 dpurdie 2385
              <%End If%>
2386
              <%If rsQry.RecordCount > 0 Then%>
2387
                 <%If NOT IsNull(rsQry("date_of_review")) Then%>
2388
                    &nbsp;
6873 dpurdie 2389
                    <span class='pointer txt_linked' onClick="MM_openBrWindow('_wform_code_review.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','CodeReviewView','scrollbars=yes,status=yes,resizable=yes,width=950,height='+ ( screen.height - 100 ) +',top=0,left=0')" class="txt_linked">View<img src="images/i_open.gif" width="12" height="12" hspace="2" border="0" align='absmiddle'></span>
6324 dpurdie 2390
                 <%End If%>
2391
              <%End If%>
2392
           <%End If%>
2393
      </div>
121 hknight 2394
      <a name="CODE_REVIEW" id="CODE_REVIEW"></a>
2395
      <%If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then%>
2396
         <%If NOT IsNull(rsQry("date_of_review")) Then%>
6873 dpurdie 2397
            <table width="100%"  border="0" cellspacing="1" cellpadding="4" class=lhsGrey>
121 hknight 2398
               <tr>
6873 dpurdie 2399
                  <td>Date of Review</td>
2400
                  <td width='1%' nowrap><%=DisplayDate ( rsQry("date_of_review") )%>&nbsp;&nbsp;&nbsp;</td>
2401
                  <td width='1%' align="right" nowrap class="hdr">&nbsp;&nbsp;&nbsp;Time Spent:</td>
2402
                  <td><%=rsQry("time_spent")%> hrs </td>
121 hknight 2403
               </tr>
2404
               <tr>
6873 dpurdie 2405
                  <td>Reason for Review</td>
2406
                  <td colspan="3"  ><%=NewLine_To_BR( To_HTML( rsQry("review_reason") ))%></td>
121 hknight 2407
               </tr>
2408
               <tr>
6873 dpurdie 2409
                  <td>Review Results </td>
2410
                  <td colspan="3"  >
121 hknight 2411
                  <%=DecodeOverallResult( rsQry("review_results") )%>
2412
                  </td>
2413
               </tr>
2414
               <tr>
6873 dpurdie 2415
                  <td>Issues Raised </td>
2416
                  <td colspan="3"  ><%=NewLine_To_BR( To_HTML( rsQry("issues_raised") ))%></td>
121 hknight 2417
               </tr>
119 ghuddy 2418
            </table>
121 hknight 2419
         <%Else%>
119 ghuddy 2420
            <table width="100%" border="0" cellspacing="1" cellpadding="2">
121 hknight 2421
               <tr>
6873 dpurdie 2422
                  <td><span class='sublbox_txt'>No details found.</span></td>
121 hknight 2423
               </tr>
119 ghuddy 2424
            </table>
121 hknight 2425
         <%End If%>
2426
      <%Else%>
2427
         <table width="100%" border="0" cellspacing="1" cellpadding="2">
2428
            <tr>
6873 dpurdie 2429
               <td><span class='sublbox_txt'>No details found.</span></td>
121 hknight 2430
            </tr>
2431
         </table>
2432
      <%End If%>
119 ghuddy 2433
 
121 hknight 2434
      <!-- Code Review URL section for this version -->
2435
      <%Call GetCodeReviewURLs( parPv_id, rsCodeReviewURL )%>
6873 dpurdie 2436
      <table width="100%" border="0" cellspacing="1" cellpadding="2" class=stdGrey>
121 hknight 2437
         <tr>
2438
            <td align="left" valign="top" class="body_colb">Code Review URL for this version</td>
2439
            <td align="right" valign="top" <%If NOT IsNull(rsCodeReviewURL("url")) Then Response.Write("colspan='5'")%>>
157 ghuddy 2440
               <%If (scriptName = "fixed_issues.asp") AND objAccessControl.UserLogedIn AND (pageIsEditable OR (pkgInfoHash.Item("dlocked") = "Y")) Then%>
6873 dpurdie 2441
                  <span class='pointer txt_linked' onclick="MM_openVixIFrame('_wform_edit_code_review_url.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Edit Code Review URL')" class="txt_linked">New<img src="images/i_new.gif" width="13" height="13" hspace="2" border="0" align='absmiddle'></span>
121 hknight 2442
               <%End If%>
2443
            </td>
2444
         </tr>
2445
         <%If IsNull(rsCodeReviewURL("full_url")) Then %>
2446
            <tr>
6873 dpurdie 2447
               <td width="100%"  colspan="2">
121 hknight 2448
                  <span class='sublbox_txt'>No details found.</span>
2449
               </td>
2450
            </tr>
2451
         <%Else%>
2452
            <tr>
161 iaugusti 2453
               <td bgcolor=#e4e9ec class="form_field">URL</td>
2454
               <td bgcolor=#e4e9ec width="25%" class="form_field">Reason for Review</td>
2455
               <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">Date of Review</td>
2456
               <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">Last Modified</td>
2457
               <td bgcolor=#e4e9ec nowrap width="18px" class="form_field"></td>
2458
               <td bgcolor=#e4e9ec nowrap width="18px" class="form_field"></td>
121 hknight 2459
            </tr>
2460
            <%If ((NOT rsCodeReviewURL.BOF) AND (NOT rsCodeReviewURL.EOF)) Then
2461
               While ((NOT rsCodeReviewURL.BOF) AND (NOT rsCodeReviewURL.EOF))%>
2462
                  <tr>
2463
                     <%If (Left(rsCodeReviewURL("url"),4) = "http") Then%>
6873 dpurdie 2464
                        <td valign="top"><a href="<%=rsCodeReviewURL("url")%>" target="_blank" class="txt_linked"><%=rsCodeReviewURL("url")%></a></td>
121 hknight 2465
                     <%Else%>
6873 dpurdie 2466
                        <td valign="top"><a href="<%=rsCodeReviewURL("full_url")%>" target="_blank" class="txt_linked"><%=rsCodeReviewURL("full_url")%></a></td>
121 hknight 2467
                     <%End If%>
6873 dpurdie 2468
                     <td valign="top"><%=rsCodeReviewURL("reason")%></td>
2469
                     <td valign="top"><%=DisplayDate(rsCodeReviewURL("date_of_review"))%></td>
2470
                     <td valign="top"><%=DisplayDate(rsCodeReviewURL("last_modified"))%></td>
157 ghuddy 2471
                     <%If (scriptName = "fixed_issues.asp") AND objAccessControl.UserLogedIn AND (pageIsEditable OR (pkgInfoHash.Item("dlocked") = "Y")) Then%>
6873 dpurdie 2472
                        <td valign="top"><span class='pointer txt_linked' onclick="MM_openVixIFrame('_wform_edit_code_review_url.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>&cr_id=<%=rsCodeReviewURL("cr_id")%>','Edit Code Review URL')" class="txt_linked"><img src="images/i_edit.gif" width="12" height="12" hspace="2" border="0" align='absmiddle' alt="Edit this code review URL"></span></td>
2473
                        <td valign="top"><span calss=pointer data-href="_remove_code_review_url.asp?cr_id=<%=rsCodeReviewURL("cr_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onclick="return vixConfirmDelete('this code review URL from Release Manager');"><img src="images/i_delete.gif" width="13" height="12" hspace="2" border="0" alt="Delete this code review URL" align='absmiddle'></span></td>
121 hknight 2474
                     <%Else%>
6873 dpurdie 2475
                        <td valign="top"></td>
2476
                        <td valign="top"></td>
121 hknight 2477
                     <%End If%>
2478
                  </tr>
2479
                  <%rsCodeReviewURL.MoveNext
2480
               WEnd
2481
            Else%>
2482
               <tr>
6873 dpurdie 2483
                  <td></td>
2484
                  <td></td>
2485
                  <td></td>
2486
                  <td></td>
2487
                  <td></td>
2488
                  <td></td>
121 hknight 2489
               </tr>
2490
            <%End If
2491
         End If%>
2492
      </table>
119 ghuddy 2493
 
121 hknight 2494
      <!-- Code Review URL section for last non-ripple build -->
2495
      <%If pkgInfoHash.Item ("comments") = "Rippled Build." Then
2496
         Call LastPvId(pkgInfoHash.Item ("pv_id"))
2497
         While rsQry("comments") = "Rippled Build."
119 ghuddy 2498
            Call LastPvId(rsQry("last_pv_id"))
121 hknight 2499
         Wend
2500
         Dim sOldPkgVersion
157 ghuddy 2501
         Dim oldDlocked
2502
         Call Get_Pkg_Short_Info ( rsQry("pv_id"), NULL, NULL, sOldPkgVersion, NULL, NULL, oldDlocked )
121 hknight 2503
         Call GetCodeReviewURLs( rsQry("pv_id"), rsCodeReviewURL )
2504
         %>
2505
         <table width="100%" border="0" cellspacing="1" cellpadding="2">
2506
            <tr>
2507
               <td align="left" valign="top" class="body_colb" <%If NOT IsNull(rsCodeReviewURL("url")) Then Response.Write("colspan='6'")%>>Code Review URL for last non-ripple build (<a class="lbl_link" href="fixed_issues.asp?pv_id=<%=rsQry("pv_id")%>"><%=sOldPkgVersion%></a>)</td>
2508
            </tr>
2509
            <%If IsNull(rsCodeReviewURL("url")) Then%>
2510
               <tr>
6873 dpurdie 2511
                  <td width="100%"  colspan="2">
121 hknight 2512
                     <span class='sublbox_txt'>No details found.</span>
119 ghuddy 2513
                  </td>
121 hknight 2514
               </tr>
2515
            <%Else%>
2516
               <tr>
161 iaugusti 2517
                  <td bgcolor=#e4e9ec class="form_field">URL</td>
2518
                  <td bgcolor=#e4e9ec width="30%" class="form_field">Reason for Review</td>
2519
                  <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">Date of Review</td>
2520
                  <td bgcolor=#e4e9ec nowrap width="1%" class="form_field">Last Modified</td>
2521
                  <td bgcolor=#e4e9ec nowrap width="18px" class="form_field"></td>
2522
                  <td bgcolor=#e4e9ec nowrap width="18px" class="form_field"></td>
121 hknight 2523
               </tr>
2524
               <%If ((NOT rsCodeReviewURL.BOF) AND (NOT rsCodeReviewURL.EOF)) Then
119 ghuddy 2525
                  While ((NOT rsCodeReviewURL.BOF) AND (NOT rsCodeReviewURL.EOF))%>
121 hknight 2526
                     <tr>
2527
                        <%If (Left(rsCodeReviewURL("url"),4) = "http") Then%>
6873 dpurdie 2528
                           <td valign="top"><a href="<%=rsCodeReviewURL("url")%>" target="_blank" class="txt_linked"><%=rsCodeReviewURL("url")%></a></td>
121 hknight 2529
                        <%Else%>
6873 dpurdie 2530
                           <td valign="top"><a href="<%=rsCodeReviewURL("full_url")%>" target="_blank" class="txt_linked"><%=rsCodeReviewURL("full_url")%></a></td>
121 hknight 2531
                        <%End If%>
6873 dpurdie 2532
                        <td valign="top"><%=rsCodeReviewURL("reason")%></td>
2533
                        <td valign="top"><%=rsCodeReviewURL("date_of_review")%></td>
2534
                        <td valign="top"><%=rsCodeReviewURL("last_modified")%></td>
157 ghuddy 2535
                        <%If (scriptName = "fixed_issues.asp") AND objAccessControl.UserLogedIn AND (pageIsEditable OR (oldDlocked = "Y")) Then%>
6873 dpurdie 2536
                           <td valign="top"><span class='pointer txt_linked' onclick="MM_openVixIFrame('_wform_edit_code_review_url.asp?pv_id=<%=rsCodeReviewURL("pv_id")%>&rtag_id=<%=parRtag_id%>&cr_id=<%=rsCodeReviewURL("cr_id")%>','Edit Code Review URL')" class="txt_linked"><img src="images/i_edit.gif" width="12" height="12" hspace="2" border="0" align='absmiddle' alt="Edit this code review URL"></span></td>
2537
                           <td valign="top"><span class=pointer data-href="_remove_code_review_url.asp?cr_id=<%=rsCodeReviewURL("cr_id")%>&pv_id=<%=rsCodeReviewURL("pv_id")%>&rtag_id=<%=parRtag_id%>" onclick="return vixConfirmDelete('this code review URL from Release Manager');"><img src="images/i_delete.gif" width="13" height="12" hspace="2" border="0" alt="Delete this code review URL" align='absmiddle'></span></td>
121 hknight 2538
                        <%Else%>
6873 dpurdie 2539
                           <td valign="top"></td>
2540
                           <td valign="top"></td>
121 hknight 2541
                        <%End If%>
2542
                     </tr>
2543
                     <%rsCodeReviewURL.MoveNext
119 ghuddy 2544
                  WEnd
121 hknight 2545
               Else%>
119 ghuddy 2546
                  <tr>
6873 dpurdie 2547
                     <td></td>
2548
                     <td></td>
2549
                     <td></td>
2550
                     <td></td>
2551
                     <td></td>
2552
                     <td></td>
119 ghuddy 2553
                  </tr>
121 hknight 2554
               <%End If
2555
            End If%>
2556
         </table>
2557
      <%End If%>
119 ghuddy 2558
 
121 hknight 2559
   </fieldset>
2560
   <br>
119 ghuddy 2561
<!-- ADDITIONAL NOTES ------------------------------------------------------------------------------------------------------------------->
6324 dpurdie 2562
   <fieldset class="fset">
6827 dpurdie 2563
      <legend class="body_colb"><img src="images/i_additional_notes.gif" width="26" height="20" hspace="4" border="0" align='absmiddle' alt="">Additional Notes</legend>
6324 dpurdie 2564
      <div style="display: block;float: right;margin-top: -20px;background-color: #FFF;padding: 0 5px;">
2565
       <%If pageIsEditable Then%>
6873 dpurdie 2566
          <span class='pointer txt_linked' onClick="MM_openVixIFrame('_wform_additional_note.asp?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Additional Notes')" class="txt_linked">New Note<img src="images/i_new.gif" width="13" height="13" hspace="2" border="0" align='absmiddle' title="Add new note."></span>
6324 dpurdie 2567
       <%End If%>
2568
      </div>
121 hknight 2569
      <a name="ADDITIONAL_NOTES"></a>
6873 dpurdie 2570
      <table width="100%" border="0" cellspacing="1" cellpadding="2" class=stdGrey>
121 hknight 2571
         <%Set rsQry = OraDatabase.DbCreateDynaset( SQL_Additional_Notes ( parPv_id ), cint(0))%>
2572
         <%If rsQry.RecordCount < 1 Then%>
2573
            <tr>
6873 dpurdie 2574
               <td>&nbsp;</td>
121 hknight 2575
            </tr>
2576
         <%End If%>
2577
         <%While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
6873 dpurdie 2578
            <tr class=hdr>
2579
               <td width="100%" nowrap>
121 hknight 2580
                  <%If pageIsEditable Then%>
6873 dpurdie 2581
                     <span onClick="MM_openVixIFrame('_wform_update_additional_note.asp?note_id=<%=rsQry("note_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Update Note')" class="pointer"><img src="images/i_edit.gif" alt="Edit" width="12" height="12" hspace="3" vspace="3" border="0" align='absmiddle'><%=To_HTML (rsQry("note_title"))%></span>
121 hknight 2582
                  <%Else%>
2583
                     <%=To_HTML (rsQry("note_title"))%>
2584
                  <%End If%>
2585
               </td>
6873 dpurdie 2586
               <td width="1%">
121 hknight 2587
                  <%If pageIsEditable Then%>
6873 dpurdie 2588
                     <span class=pointer data-href="_remove_additional_note.asp?note_id=<%=rsQry("note_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this note');"><img src="images/i_delete.gif" alt="Remove this note." width="13" height="12" hspace="3" border="0"></span>
121 hknight 2589
                  <%End If%>
2590
               </td>
2591
            </tr>
2592
            <tr>
6873 dpurdie 2593
               <td colspan="2">
4230 dpurdie 2594
                  <%=NewLine_To_BR( To_HTML ( rsQry("note_body") ) )%><br>
121 hknight 2595
                  <span class="rep_small">Last Modified: <%=rsQry("lastmod")%></span>
2596
               </td>
2597
            </tr>
2598
            <tr>
2599
               <td colspan="2"><img src='images/spacer.gif' width='2' height='2'></td>
2600
            </tr>
2601
            <%rsQry.MoveNext
2602
         WEnd%>
2603
      </table>
2604
   </fieldset>
5932 dpurdie 2605
   <br>
2606
<%End If%>
2607