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