Subversion Repositories DevTools

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
119 ghuddy 1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
3
Option explicit
121 hknight 4
Response.Expires = 0   ' always load the page, dont store
119 ghuddy 5
%>
6
<%
7
'=====================================================
121 hknight 8
'               Ripple Properties
119 ghuddy 9
'=====================================================
10
%>
11
<!--#include file="common/conf.asp"-->
12
<!--#include file="common/globals.asp"-->
13
<!--#include file="common/formating.asp"-->
14
<!--#include file="common/qstr.asp"-->
15
<!--#include file="common/common_subs.asp"-->
16
<!--#include file="common/common_dbedit.asp"-->
17
<!--#include file="common/_popup_window_common.asp"-->
18
<%
19
' Set rfile parameter. This is a return page after Login
20
Call objPMod.StoreParameter ( "rfile", "fixed_issues.asp" )
21
'------------ ACCESS CONTROL ------------------
22
%>
23
<!--#include file="_access_control_login.asp"-->
24
<!--#include file="_access_control_general.asp"-->
25
<!--#include file="_access_control_project.asp"-->
26
<%
27
'------------ Variable Definition -------------
28
Dim parPv_id
29
Dim query
30
Dim rsQry, rsTemp
31
Dim checked
32
Dim FRripplebuildYES, FRripplebuildNO
33
Dim objFormCollector
121 hknight 34
Dim Query_String
119 ghuddy 35
Dim isDLocked
36
'------------ Constants Declaration -----------
37
'------------ Variable Init -------------------
38
Set objFormCollector = CreateObject("Scripting.Dictionary")
39
parPv_id = QStrPar("pv_id")
40
'----------------------------------------------
41
%>
42
<%
43
'------------------------------------------------------------------------------------------------------------------------------------
44
Sub UpdateRippleType ( )
121 hknight 45
   Dim rsTemp, Query_String
127 ghuddy 46
   Dim storedRippleType
47
   Dim storedMajorLimit
48
   Dim storedMinorLimit
49
   Dim storedPatchLimit
50
   Dim storedBuildNumberLimit
51
   Dim selectedRippleType
52
   selectedRippleType = Request("ripple_type_combo")
53
   Dim enteredMajorLimit
54
   ' enteredMajorLimit is a string of digits
55
   ' it will be compared with a string representing a NUMBER in the db
56
   ' use CInt to at least strip leading zeros
57
   enteredMajorLimit = CInt(Request("Major"))
58
   Dim enteredMinorLimit
59
   enteredMinorLimit = CInt(Request("Minor"))
60
   Dim enteredPatchLimit
61
   enteredPatchLimit = CInt(Request("Patch"))
62
   Dim enteredBuildLimit
63
   enteredBuildLimit = CInt(Request("Build"))
121 hknight 64
   Query_String = _
127 ghuddy 65
    " SELECT ripple_field, major_limit, minor_limit, patch_limit, build_number_limit"&_
129 ghuddy 66
   " FROM package_versions"&_
67
   " WHERE pv_id = "& Request("pv_id")
121 hknight 68
   Set rsTemp = OraDatabase.CreateDynaset( Query_String, cint(0))
127 ghuddy 69
   storedRippleType = rsTemp("ripple_field").Value
70
   storedMajorLimit = rsTemp("major_limit").Value
119 ghuddy 71
 
127 ghuddy 72
   If ( IsNull(storedMajorLimit) ) Then
73
     storedMajorLimit = "0"
74
   End If
119 ghuddy 75
 
127 ghuddy 76
   storedMinorLimit = rsTemp("minor_limit").Value
77
 
78
   If ( IsNull(storedMinorLimit) ) Then
79
     storedMinorLimit = "0"
80
   End If
81
 
82
   storedPatchLimit = rsTemp("patch_limit").Value
83
 
84
   If ( IsNull(storedPatchLimit) ) Then
85
     storedPatchLimit = "0"
86
   End If
87
 
88
   storedBuildNumberLimit = rsTemp("build_number_limit").Value
89
 
90
   If ( IsNull(storedBuildNumberLimit) ) Then
91
     storedBuildNumberLimit = "0"
92
   End If
93
 
94
   'normalise for comparison purposes
95
   storedMajorLimit = CInt( storedMajorLimit )
96
   storedMinorLimit = CInt( storedMinorLimit )
97
   storedPatchlimit = CInt( storedPatchLimit )
98
   storedBuildNumberLimit = CInt( storedBuildNumberLimit )
99
 
100
   If (storedRippleType <> selectedRippleType) OR IsNull(storedRippleType) Then
101
 
121 hknight 102
      'update fields
103
      rsTemp.Edit()
127 ghuddy 104
      rsTemp.Fields("ripple_field").Value = selectedRippleType
121 hknight 105
      rsTemp.Update()
119 ghuddy 106
 
127 ghuddy 107
      Dim anotherQry
108
      Set anotherQry = OraDatabase.DbCreateDynaset( "SELECT state_name from ripple_field_states WHERE state_acronym ='"& selectedRippleType &"'", cint(0))
119 ghuddy 109
 
127 ghuddy 110
      '/* Log Action */
111
      Call Log_Action ( Request("pv_id"), "ripple_type_update", anotherQry.Fields("state_name").Value )
112
      anotherQry.Close()
113
      Set anotherQry = nothing
114
   End If
119 ghuddy 115
 
127 ghuddy 116
   If ( storedMajorLimit <> enteredMajorLimit ) Then
117
 
118
      'update fields
119
      rsTemp.Edit()
120
      If ( enteredMajorLimit <> "0" ) Then
121
        rsTemp.Fields("major_limit").Value = enteredMajorLimit
122
      Else
123
        rsTemp.Fields("major_limit").Value = NULL
124
      End If
125
      rsTemp.Update()
126
 
121 hknight 127
      '/* Log Action */
127 ghuddy 128
      Call Log_Action ( Request("pv_id"), "major_limit_update", enteredMajorLimit )
129
   End If
119 ghuddy 130
 
127 ghuddy 131
   If ( storedMinorLimit <> enteredMinorLimit ) Then
119 ghuddy 132
 
127 ghuddy 133
      'update fields
134
      rsTemp.Edit()
135
      If ( enteredMinorLimit <> "0" ) Then
136
        rsTemp.Fields("minor_limit").Value = enteredMinorLimit
137
      Else
138
        rsTemp.Fields("minor_limit").Value = NULL
139
      End If
140
      rsTemp.Update()
119 ghuddy 141
 
127 ghuddy 142
      '/* Log Action */
143
      Call Log_Action ( Request("pv_id"), "minor_limit_update", enteredMinorLimit )
144
   End If
119 ghuddy 145
 
127 ghuddy 146
   If ( storedPatchLimit <> enteredPatchLimit ) Then
147
 
148
      'update fields
149
      rsTemp.Edit()
150
      If ( enteredPatchLimit <> "0" ) Then
151
        rsTemp.Fields("patch_limit").Value = enteredPatchLimit
121 hknight 152
      Else
127 ghuddy 153
        rsTemp.Fields("patch_limit").Value = NULL
154
      End If
155
      rsTemp.Update()
119 ghuddy 156
 
127 ghuddy 157
      '/* Log Action */
158
      Call Log_Action ( Request("pv_id"), "patch_limit_update", enteredPatchLimit )
159
   End If
160
 
161
   If ( storedBuildNumberLimit <> enteredBuildLimit ) Then
162
 
163
      'update fields
164
      rsTemp.Edit()
165
      If ( enteredBuildLimit <> "0" ) Then
166
        rsTemp.Fields("build_number_limit").Value = enteredBuildLimit
167
      Else
168
        rsTemp.Fields("build_number_limit").Value = NULL
121 hknight 169
      End If
127 ghuddy 170
      rsTemp.Update()
119 ghuddy 171
 
127 ghuddy 172
      '/* Log Action */
173
      Call Log_Action ( Request("pv_id"), "build_number_limit_update", enteredBuildLimit )
121 hknight 174
   End If
175
 
176
   rsTemp.Close()
177
   Set rsTemp = nothing
119 ghuddy 178
End Sub
179
'------------------------------------------------------------------------------------------------------------------------------------
180
Sub RipplePackage (flag)
181
 
121 hknight 182
   OraDatabase.Parameters.Add "PV_ID",   parPv_id,                  ORAPARM_INPUT, ORATYPE_NUMBER
183
   OraDatabase.Parameters.Add "RTAG_ID", parRtag_id,                ORAPARM_INPUT, ORATYPE_NUMBER
184
   OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId,   ORAPARM_INPUT, ORATYPE_NUMBER
119 ghuddy 185
 
129 ghuddy 186
   objEH.TryORA ( OraSession )
187
   On Error Resume Next
119 ghuddy 188
 
121 hknight 189
   If flag Then
190
      OraDatabase.ExecuteSQL _
191
      "BEGIN  Ripple_Package( :PV_ID, :RTAG_ID, :USER_ID );  END;"
192
   Else
193
      OraDatabase.ExecuteSQL _
194
      "BEGIN  UnRipple_Package( :PV_ID, :RTAG_ID, :USER_ID );  END;"
195
   End If
119 ghuddy 196
 
129 ghuddy 197
   objEH.CatchORA ( OraSession )
119 ghuddy 198
 
121 hknight 199
   OraDatabase.Parameters.Remove "PV_ID"
200
   OraDatabase.Parameters.Remove "RTAG_ID"
201
   OraDatabase.Parameters.Remove "USER_ID"
119 ghuddy 202
 
203
End Sub
204
'------------------------------------------------------------------------------------------------------------------------------------
205
Sub Get_Form_Details( nPv_id, ByRef objDetails )
121 hknight 206
   Dim rsTemp, Query_String
207
   Query_String = _
208
   " SELECT * "&_
209
   "  FROM package_versions pv, packages pkg"&_
210
   " WHERE pv.pkg_id = pkg.pkg_id"&_
211
   "   AND pv_id = "& nPv_id
119 ghuddy 212
 
121 hknight 213
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
214
   If (NOT rsTemp.BOF ) AND (NOT rsTemp.EOF) Then
215
      objDetails.Item("pkg_name")              = rsTemp("pkg_name")
216
      objDetails.Item("pkg_version")           = rsTemp("pkg_version")
217
      objDetails.Item("pkg_label")             = rsTemp("pkg_label")
218
      objDetails.Item("src_path")              = rsTemp("src_path")
219
      objDetails.Item("pv_description")        = rsTemp("pv_description")
220
      objDetails.Item("pv_overview")           = rsTemp("pv_overview")
221
      objDetails.Item("v_ext")                 = rsTemp("v_ext")
222
      objDetails.Item("is_deployable")         = rsTemp("is_deployable")
223
      objDetails.Item("is_build_env_required") = rsTemp("is_build_env_required")
224
      objDetails.Item("build_type")            = rsTemp("build_type")
225
      objDetails.Item("bs_id")                 = rsTemp("bs_id")
226
      objDetails.Item("ripple_field")          = rsTemp("ripple_field")
127 ghuddy 227
      If isNull(rsTemp("major_limit")) Then
228
        objDetails.Item("major_limit")         = "0"
229
      Else
230
        objDetails.Item("major_limit")         = rsTemp("major_limit")
231
      End If
232
      If isNull(rsTemp("minor_limit")) Then
233
        objDetails.Item("minor_limit")         = "0"
234
      Else
235
        objDetails.Item("minor_limit")         = rsTemp("minor_limit")
236
      End If
237
      If isNull(rsTemp("patch_limit")) Then
238
        objDetails.Item("patch_limit")         = "0"
239
      Else
240
        objDetails.Item("patch_limit")         = rsTemp("patch_limit")
241
      End If
242
      If isNull(rsTemp("build_number_limit")) Then
243
        objDetails.Item("build_number_limit")  = "0"
244
      Else
245
        objDetails.Item("build_number_limit")  = rsTemp("build_number_limit")
246
      End If
121 hknight 247
   End If
119 ghuddy 248
 
121 hknight 249
   rsTemp.Close()
250
   Set rsTemp = Nothing
119 ghuddy 251
End Sub
252
'----------------------------------------------------------------------------------------------------------------------
253
Sub RenderRippleTypeCombo( cRippleType, cDLocked )
254
 
121 hknight 255
   Dim isEditable
119 ghuddy 256
 
121 hknight 257
   ' DEVI-49267 - ripple type needs to be changeable by team leaders post release so the permission constraint on
258
   ' this is relaxed to non-critical info level (See definition of Is_Page_Editable() in common_subs.asp)
259
   isEditable = Is_Page_Editable ( isDLocked )
119 ghuddy 260
 
121 hknight 261
   Query_String = "select * from ripple_field_states"
119 ghuddy 262
 
121 hknight 263
   If (isEditable) Then
127 ghuddy 264
      Response.Write "<select name='ripple_type_combo' id='rtc' class='form_item' onChange='changeToRippleType(this.options[this.selectedIndex].value)'>"
121 hknight 265
   Else
127 ghuddy 266
      Response.Write "<select name='ripple_type_combo' id='rtc' class='form_item' disabled>"
121 hknight 267
   End If
119 ghuddy 268
 
121 hknight 269
   Set rsTemp = OraDatabase.CreateDynaset( Query_String, cint(0))
119 ghuddy 270
 
121 hknight 271
   While (NOT rsTemp.BOF) AND (NOT rsTemp.EOF)
272
      If cRippleType = rsTemp.Fields("state_acronym") Then
273
         Response.write "<option value='"& rsTemp.Fields("state_acronym") &"' selected>"& rsTemp.Fields("state_name") &"</option>"
274
      ElseIf IsNull(cRippleType) AND rsTemp.Fields("state_acronym") = "b" Then 'If nothing selected, select Build Number
275
         Response.write "<option value='"& rsTemp.Fields("state_acronym") &"' selected>"& rsTemp.Fields("state_name") & "</option>"
276
      Else
277
         Response.write "<option value='"& rsTemp.Fields("state_acronym") &"'>"& rsTemp.Fields("state_name") & "</option>"
278
      End If
279
      rsTemp.MoveNext
280
   WEnd
119 ghuddy 281
 
121 hknight 282
   rsTemp.Close()
283
   Set rsTemp = nothing
119 ghuddy 284
 
121 hknight 285
   Response.Write "</select>"
119 ghuddy 286
 
287
End Sub
131 ghuddy 288
'------------------------------------------------------------------------------------------------------------------------------------
289
Sub PegPackageVersion (applyPegging)
290
 
291
   objEH.TryORA ( OraSession )
292
   On Error Resume Next
293
 
294
   ' try and clean up the pegged_versions table of any stranded rows (should never happen but this will fix it anyway)
295
   ' This means, remove any and all pegging rows whose values are not in an existing release somewhere
296
   OraDatabase.ExecuteSQL _
297
   " delete from pegged_versions"&_
298
   " where (rtag_id, pv_id) IN ("&_
299
   " select rtag_id, pv_id from pegged_versions"&_
300
   " minus"&_
301
   " select rtag_id, pv_id from release_content)"
302
 
303
   If Err.Number = 0 Then
304
 
305
      ' Delete the pegging row for the requested RTAG_ID/PV_ID
306
      OraDatabase.ExecuteSQL _
307
      "DELETE FROM PEGGED_VERSIONS WHERE RTAG_ID = " & parRtag_id & " AND PV_ID = " & parPv_id
308
 
309
      ' And if the user has requested PEGGING to be turned on then Add the PEGGING
310
      If applyPegging = True AND Err.Number = 0 Then
311
         OraDatabase.ExecuteSQL _
312
         "INSERT INTO PEGGED_VERSIONS VALUES(" & parRtag_id & "," & parPv_id & ")"
313
      End If
314
 
315
      If Err.Number = 0 Then
316
 
317
         ' Touch the release so that the state icons are re-evaluated
318
         OraDatabase.Parameters.Add "RTAG_ID", parRtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
319
 
320
         OraDatabase.ExecuteSQL "BEGIN Touch_Release( :RTAG_ID ); END;"
321
 
322
         OraDatabase.Parameters.Remove "RTAG_ID"
323
      End If
324
   End If
325
 
326
   objEH.CatchORA ( OraSession )
327
 
328
End Sub
151 ghuddy 329
'------------------------------------------------------------------------------------------------------------------------------------
330
Sub AdvisoryRipplePackageVersion (applyAdvisoryRipple)
131 ghuddy 331
 
151 ghuddy 332
   objEH.TryORA ( OraSession )
333
   On Error Resume Next
334
 
335
   ' Delete the adv. rip. row for the requested RTAG_ID/PV_ID
336
   OraDatabase.ExecuteSQL _
337
   "DELETE FROM ADVISORY_RIPPLE WHERE RTAG_ID = " & parRtag_id & " AND PV_ID = " & parPv_id
338
 
339
   ' And if the user has requested advisory ripple to be turned on then Add it
340
   If applyAdvisoryRipple = True AND Err.Number = 0 Then
341
      OraDatabase.ExecuteSQL _
342
      "INSERT INTO ADVISORY_RIPPLE VALUES(" & parRtag_id & "," & parPv_id & ")"
343
   End If
344
 
345
   If Err.Number = 0 Then
346
 
347
      ' Touch the release so that the state icons are re-evaluated
348
      OraDatabase.Parameters.Add "RTAG_ID", parRtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
349
 
350
      OraDatabase.ExecuteSQL "BEGIN Touch_Release( :RTAG_ID ); END;"
351
 
352
      OraDatabase.Parameters.Remove "RTAG_ID"
353
   End If
354
 
355
   objEH.CatchORA ( OraSession )
356
 
357
End Sub
358
 
119 ghuddy 359
'----------------------------------------------------------------------------------------------------------------------
360
%>
361
<%
362
'------------------------------- RUN BEFORE PAGE RENDER ----------------------------
363
 
364
Call Get_Form_Details( parPv_id, objFormCollector )
365
 
366
Call Get_Pkg_Short_Info( parPv_id, NULL, NULL, NULL, NULL, NULL, isDLocked )
367
 
368
'-------------------------------------
369
'Start Process Submission
370
If CBool(QStrPar("action"))  AND  objAccessControl.UserLogedIn Then
371
 
121 hknight 372
   Call UpdateRippleType()
119 ghuddy 373
 
374
 
151 ghuddy 375
   ' Changes to DO NOT RIPPLE Status -----------------------------------------
121 hknight 376
   If NOT CBool(QStrPar("rippleFlag")) AND Request("FRripplebuild") = "1" Then
377
      Call RipplePackage(True)
378
   End If
119 ghuddy 379
 
121 hknight 380
   If CBool(QStrPar("rippleFlag")) AND Request("FRripplebuild") = "0" Then
381
      Call RipplePackage(False)
382
   End If
119 ghuddy 383
 
151 ghuddy 384
   ' Changes to PEGGED Status ------------------------------------------------
131 ghuddy 385
   If NOT CBool(QStrPar("peggedFlag")) AND Request("FRpegged") = "1" Then
386
      Call PegPackageVersion(True)
387
   End If
119 ghuddy 388
 
131 ghuddy 389
   If CBool(QStrPar("peggedFlag")) AND Request("FRpegged") = "0" Then
390
      Call PegPackageVersion(False)
391
   End If
392
 
151 ghuddy 393
   ' Changes to ADVISORY RIPPLE Status ---------------------------------------
394
   If NOT CBool(QStrPar("advRipFlag")) AND Request("FRadvrip") = "1" Then
395
      Call AdvisoryRipplePackageVersion(True)
396
   End If
131 ghuddy 397
 
151 ghuddy 398
   If CBool(QStrPar("advRipFlag")) AND Request("FRadvrip") = "0" Then
399
      Call AdvisoryRipplePackageVersion(False)
400
   End If
401
 
402
 
121 hknight 403
   Call OpenInParentWindow ( "fixed_issues.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"&hidenv=true" )
404
   Call CloseWindow
119 ghuddy 405
 
406
End If
407
'End Process Submission
408
'--------------------------------------------------------------------------------------------
409
%>
410
<html>
411
<head>
412
<title>Release Manager</title>
413
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
414
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
415
<link rel="stylesheet" href="images/release_manager_style.css" type="text/css">
416
<link rel="stylesheet" href="images/navigation.css" type="text/css">
417
<script language="JavaScript" src="images/common.js"></script>
418
<!-- TIPS -->
419
<script language="JavaScript" src="images/tipster.js"></script>
420
<script language="JavaScript" src="images/_help_tips.js"></script>
421
<script language="JavaScript" type="text/JavaScript">
422
<!--
423
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
121 hknight 424
   if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
425
      document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
426
   else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
119 ghuddy 427
}
428
MM_reloadPage(true);
127 ghuddy 429
function isNum(passedVal)
430
{
431
  if (passedVal == "")
432
  {
433
    return false
434
  }
435
  for(i=0; i<passedVal.length; i++)
436
  {
437
    if (passedVal.charAt(i) < "0")
438
    {
439
      return false
440
    }
441
    if (passedVal.charAt(i) > "9")
442
    {
443
      return false
444
    }
445
  }
446
  return true
447
}
448
function valid(form)
449
{
450
  if (!isNum(rippleproperties.Major.value))
451
  {
452
    alert("Invalid major number")
453
    return false
454
  }
455
  return true
456
}
457
function changeToRippleType(val)
458
{
459
  if ( val.match("L") )
460
  {
461
    document.getElementById("limits_row").style.visibility="visible"
462
  }
463
  else
464
  {
465
    document.getElementById("limits_row").style.visibility="hidden"
466
    document.getElementById("Major").value  = "0"
467
    document.getElementById("Minor").value  = "0"
468
    document.getElementById("Patch").value  = "0"
469
    document.getElementById("Build").value  = "0"
470
  }
471
}
472
function loader()
473
{
474
  changeToRippleType(document.getElementById("rtc").options[document.getElementById("rtc").selectedIndex].value)
475
}
476
if (window.addEventListener)
477
{
478
  window.addEventListener("load", loader, false)
479
}
480
else if (window.attachEvent)
481
{
482
  window.attachEvent("onload", loader)
483
}
484
else if (document.getElementById)
485
{
486
  window.onload=loader
487
}
119 ghuddy 488
//-->
489
</script>
490
</head>
127 ghuddy 491
<body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0">
119 ghuddy 492
<!-- TIPS LAYERS -------------------------------------->
493
<div id="formTipsLayer" style="position: absolute; z-index: 1000; visibility: hidden; left:0; top: 0; width: 10">&nbsp;</div>
494
<!----------------------------------------------------->
127 ghuddy 495
<form onSubmit="return valid(this)" name="rippleproperties" id="rp" method="post" action="<%=scriptName%>">
121 hknight 496
   <table width="100%" border="0" cellspacing="0" cellpadding="2" height="100%">
497
      <tr>
498
         <td background="images/lbox_bg_orange.gif" width="1%" height="1%"><img src="icons/i_pkg_ripple_type.gif" width="21" height="21" hspace="5" border="0"></td>
499
         <td background="images/lbox_bg_blue.gif" nowrap width="50%" class="wform_ttl">&nbsp;Ripple Properties </td>
500
         <td background="images/lbox_bg_blue.gif" align="right" width="50%">
501
            <input type="submit" name="btn" value="Submit" class="form_btn_comp">
502
            <input type="reset" name="btn" value="Cancel" class="form_btn_comp" onclick="self.close()">
503
         </td>
504
         <td background="images/lbox_bg_blue.gif" align="right" width="1%" nowrap>
505
            <img src="images/h_trsp_dot.gif" width="5" height="22">
506
         </td>
507
      </tr>
508
      <tr>
509
         <td height="100%" width="1%">&nbsp;</td>
510
         <td valign="top" nowrap colspan="3" class="wform_ttl" background="images/bg_form_lightgray.gif">
511
            <table width="100%" border="0" cellspacing="1" cellpadding="2">
512
               <tr>
513
                  <td width="1%"><img src="images/h_trsp_dot.gif" width="10" height="30"></td>
514
                  <td width="1%" nowrap class="form_group" valign="bottom"></td>
515
                  <td nowrap width="1%">&nbsp; </td>
516
                  <td nowrap width="100%">&nbsp;</td>
517
               </tr>
155 ghuddy 518
               <%If NOT IsNull(parRtag_id) AND parRtag_id <> "" Then%>
121 hknight 519
               <tr>
520
                  <td>&nbsp;</td>
131 ghuddy 521
                  <td nowrap class="form_field" background="images/bg_form_lightbluedark.gif">Pegged Version?<%=Quick_Help ( "pegged_version" )%></td>
522
                  <%
151 ghuddy 523
                  Dim FRpeggedYES, FRpeggedNO, FRpegDisabled
131 ghuddy 524
 
525
                  FRpeggedYES = ""
526
                  FRpeggedNO = ""
151 ghuddy 527
                  FRpegDisabled = "disabled='disabled'"
131 ghuddy 528
 
529
                  ' Allow pegging/un-pegging to occur for locked/released versions only, and by users who have the appropriate permission
530
                  If (objAccessControl.IsVisible( "PegPackageVersions" )) AND isDLocked = "Y" Then
151 ghuddy 531
                     FRpegDisabled = ""
131 ghuddy 532
                  End If
533
 
534
                  Dim rsQryPegged, peggedFlag
151 ghuddy 535
                  Set rsQryPegged = OraDatabase.DbCreateDynaset( "SELECT COUNT(*) as record_count FROM PEGGED_VERSIONS WHERE RTAG_ID ="& parRtag_id &"AND PV_ID ="& parPv_id, cint(0))
131 ghuddy 536
 
151 ghuddy 537
                  If rsQryPegged("record_count") = 0  Then
131 ghuddy 538
                     FRpeggedNO = "checked"
539
                     peggedFlag = False
540
                  Else
541
                     FRpeggedYES = "checked"
542
                     peggedFlag = True
543
                  End If
544
 
545
                  rsQryPegged.Close()
546
                  Set rsQryPegged = nothing
547
 
548
                  %>
549
                  <td nowrap background="images/bg_form_lightbluedark.gif" class="form_txt" align="right">
151 ghuddy 550
                     Yes<input name="FRpegged" type="radio" value="1" <%=FRpegDisabled%> <%=FRpeggedYES%> >&nbsp;&nbsp;
551
                     No<input name="FRpegged" type="radio" value="0"  <%=FRpegDisabled%> <%=FRpeggedNO%>  >&nbsp;&nbsp;
131 ghuddy 552
                  </td>
553
                  <td background="images/bg_form_lightbluedark.gif">
554
                     <span class='err_alert'><b>WARNING!</span>
555
                     <font size='1'>
556
                        <br>
557
                        When set to Yes, this package version is never rippled in the current release regardless of the other ripple settings below.
558
                     </font></b>
559
                  </td>
560
               </tr>
155 ghuddy 561
               <%End If%>
562
               <%If NOT IsNull(parRtag_id) AND parRtag_id <> "" Then%>
131 ghuddy 563
               <tr>
564
                  <td>&nbsp;</td>
151 ghuddy 565
                  <td nowrap class="form_field" background="images/bg_form_lightbluedark.gif">Advisory Ripple Version?<%=Quick_Help ( "advisory_ripple_version" )%></td>
566
                  <%
567
                  Dim FRadvripYES, FRadvripNO, FRadvripDisabled
568
 
569
                  FRadvripYES = ""
570
                  FRadvripNO = ""
571
                  FRadvripDisabled = "disabled='disabled'"
572
 
573
                  ' Allow setting of advisory ripple to occur only by users who have the appropriate permission
574
                  If (objAccessControl.IsVisible( "AdvRipPackageVersions" )) AND isDLocked = "Y" Then
575
                     FRadvripDisabled = ""
576
                  End If
577
 
578
                  Dim rsQryAdvRip, advRipFlag
579
                  Set rsQryAdvRip = OraDatabase.DbCreateDynaset( "SELECT COUNT(*) as record_count FROM ADVISORY_RIPPLE WHERE RTAG_ID ="& parRtag_id &"AND PV_ID ="& parPv_id, cint(0))
580
 
581
                  If rsQryAdvRip("record_count") = 0  Then
582
                     FRadvripNO = "checked"
583
                     advRipFlag = False
584
                  Else
585
                     FRadvripYES = "checked"
586
                     advRipFlag = True
587
                  End If
588
 
589
                  rsQryAdvRip.Close()
590
                  Set rsQryAdvRip = nothing
591
 
592
                  %>
593
                  <td nowrap background="images/bg_form_lightbluedark.gif" class="form_txt" align="right">
594
                     Yes<input name="FRadvrip" type="radio" value="1" <%=FRadvripDisabled%> <%=FRadvripYES%> >&nbsp;&nbsp;
595
                     No<input name="FRadvrip" type="radio" value="0"  <%=FRadvripDisabled%> <%=FRadvripNO%>  >&nbsp;&nbsp;
596
                  </td>
597
                  <td background="images/bg_form_lightbluedark.gif">
598
                     <span class='err_alert'><b>WARNING!</span>
599
                     <font size='1'>
600
                        <br>
601
                        When set to Yes, a new version of this package will not cause a ripple of higher level packages in the current release.
602
                     </font></b>
603
                  </td>
604
 
605
               </tr>
155 ghuddy 606
               <%End If%>
607
               <%If NOT IsNull(parRtag_id) AND parRtag_id <> "" Then%>
151 ghuddy 608
               <tr>
609
                  <td>&nbsp;</td>
121 hknight 610
                  <td nowrap class="form_field" background="images/bg_form_lightbluedark.gif">Build Inclusion?<%=Quick_Help ( "ripple_build" )%></td>
611
                  <%
612
                  FRripplebuildYES = ""
613
                  FRripplebuildNO = ""
614
                  ' disabled="disabled" indicates the pv has been excluded indirectly
615
                  ' this is due to another pv (the root_pv_id) being excluded directly
616
                  ' allowing it to be included is somewhat pointless
617
                  ' fixing the root cause is a somewhat better approach
618
                  Dim disabled
619
                  disabled="disabled"
119 ghuddy 620
 
121 hknight 621
                  Dim rsQryRipple, rippleFlag
622
                  Set rsQryRipple = OraDatabase.DbCreateDynaset( "SELECT root_pv_id FROM DO_NOT_RIPPLE WHERE RTAG_ID ="& parRtag_id &"AND PV_ID ="& parPv_id, cint(0))
119 ghuddy 623
 
121 hknight 624
                  If rsQryRipple.RecordCount = 0  Then
625
                     FRripplebuildYES = "checked"
626
                     rippleFlag = True
627
                     ' do not disable the default
628
                     disabled=""
629
                  Else
630
                     If isNull(rsQryRipple("root_pv_id")) Then
631
                        ' pv has been excluded directly
632
                        ' ie has a null pv_id
633
                        ' once fixed, pv should be included ie do not disable
634
                        disabled=""
635
                     End If
636
                     FRripplebuildNO = "checked"
637
                     rippleFlag = False
638
                  End If
119 ghuddy 639
 
121 hknight 640
                  rsQryRipple.Close()
641
                  Set rsQryRipple = nothing
119 ghuddy 642
 
121 hknight 643
                  %>
127 ghuddy 644
                  <td nowrap background="images/bg_form_lightbluedark.gif" class="form_txt" align="right">
645
                     Yes<input name="FRripplebuild" type="radio" value="1" <%=FRripplebuildYES%>  <%=disabled%>>&nbsp;&nbsp;
646
                     No<input name="FRripplebuild" type="radio" value="0" <%=FRripplebuildNO%>>&nbsp;&nbsp;
121 hknight 647
                  </td>
648
                  <td background="images/bg_form_lightbluedark.gif">
649
                     <span class='err_alert'><b>WARNING!</span>
650
                     <font size='1'>
127 ghuddy 651
                        <br>
652
                        When set to No, this package and <u>all</u> packages which depend on this package, either directly or indirectly,<br>
121 hknight 653
                        will be excluded from the build. When the Yes option is disabled, indicates this package has been excluded indirectly.
654
                     </font></b>
655
                  </td>
656
               </tr>
155 ghuddy 657
               <%End If%>
121 hknight 658
               <tr>
659
                  <td>&nbsp;</td>
127 ghuddy 660
                  <td nowrap background="images/bg_form_lightbluedark.gif" class="form_field">Ripple Type?<%=Quick_Help ( "ripple_type" )%></td>
121 hknight 661
                  <td nowrap background="images/bg_form_lightbluedark.gif" class="form_txt">
127 ghuddy 662
                    &nbsp;&nbsp;<% Call RenderRippleTypeCombo( objFormCollector.Item("ripple_field"), isDLocked )%>&nbsp;&nbsp;
121 hknight 663
                  </td>
664
                  <td background="images/bg_form_lightbluedark.gif">
665
                     <span class='err_alert'><b>WARNING!</span>
127 ghuddy 666
                     <font size='1'>
667
                        <br>
668
                        This enables a package to advertise how it will be numbered when rippled.<br>
669
                        THIS IS PRIMARILY INTENDED TO CATER FOR PACKAGES WHICH DO NOT SUPPORT A NON ZERO PATCH/BUILD NUMBER,<br>
121 hknight 670
                        AND FOR PRODUCTS WHERE CONSTANTLY RIPPLING A PATCH/BUILD NUMBER IS DISLIKED BY A CUSTOMER.
671
                     </font></b>
672
                  </td>
673
               </tr>
127 ghuddy 674
               <tr id="limits_row" style="visibility:hidden; position:static">
675
                  <td>&nbsp;</td>
676
                  <td nowrap class="form_field" background="images/bg_form_lightbluedark.gif">Version Field Limits</td>
677
                  <td nowrap background="images/bg_form_lightbluedark.gif" class="form_txt" align="right">
678
                     Major&nbsp;&nbsp;<input name="Major" id="Major" type="text" class="form_item" size="8" value="<%=objFormCollector.Item("major_limit")%>">&nbsp;&nbsp;<br>
679
                     Minor&nbsp;&nbsp;<input name="Minor" id="Minor" type="text" class="form_item" size="8" value="<%=objFormCollector.Item("minor_limit")%>">&nbsp;&nbsp;<br>
680
                     Patch&nbsp;&nbsp;<input name="Patch" id="Patch" type="text" class="form_item" size="8" value="<%=objFormCollector.Item("patch_limit")%>">&nbsp;&nbsp;<br>
681
                     Build&nbsp;&nbsp;<input name="Build" id="Build" type="text" class="form_item" size="8" value="<%=objFormCollector.Item("build_number_limit")%>">&nbsp;&nbsp;
682
                  </td>
683
                  <td background="images/bg_form_lightbluedark.gif">
684
                     <span class='err_alert'><b>WARNING!</span>
685
                     <font size='1'>
686
                        <br>
687
                        A field (major/minor/patch/build number) may be assigned non zero limits to determine how it will be numbered when rippled.<br>
688
                        Prior to reaching a limit, the rightmost field able to be incremented will be when rippled.<br>
689
                        Upon reaching a limit, that rightmost field will be set to zero and the field next left with a non zero limit (if one exists) will be incremented when rippled.<br>
690
                        A field may be assigned to zero to fix the field (to 0 or 000 for the build number field) when rippled.
691
                     </font></b>
692
                  </td>
693
               </tr>
121 hknight 694
               <tr>
695
                  <td>&nbsp;</td>
696
                  <td nowrap class="form_field"><img src="images/h_trsp_dot.gif" width="100" height="10"></td>
697
                  <td nowrap> <p>&nbsp;</p></td>
698
                  <td nowrap>&nbsp;</td>
699
               </tr>
700
            </table>
701
        </td>
702
      </tr>
703
      <tr>
704
         <td height="1%" width="1%"><img src="images/h_trsp_dot.gif" width="5" height="5"></td>
705
         <td valign="top" nowrap colspan="3" class="wform_ttl" background="images/lbox_bg_blue.gif"></td>
706
      </tr>
707
   </table>
119 ghuddy 708
<input type="hidden" name="pv_id" value="<%=parPv_id%>">
709
<input type="hidden" name="rtag_id" value="<%=parRtag_id%>">
710
<input type="hidden" name="rippleFlag" value="<%=rippleFlag%>">
131 ghuddy 711
<input type="hidden" name="peggedFlag" value="<%=peggedFlag%>">
151 ghuddy 712
<input type="hidden" name="advRipFlag" value="<%=advRipFlag%>">
119 ghuddy 713
<input type="hidden" name="action" value="true">
714
</form>
715
</body>
716
</html>
717
<%
718
'------------- RUN AFTER PAGE RENDER ---------------
719
Set objFormCollector = Nothing
720
'---------------------------------------------------
721
%>
722
 
723
<!-- DESTRUCTOR ------->
724
<!--#include file="common/destructor.asp"-->