Subversion Repositories DevTools

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
119 ghuddy 1
<%
2
'=====================================================
151 ghuddy 3
'                 NEW VERSION
4
'                      PAGE
119 ghuddy 5
'=====================================================
6
%>
7
<!--#include file="_tabs.asp"-->
121 hknight 8
<!--#include file="_drawExtensionSelectBox.asp"-->
151 ghuddy 9
<!--#include file="class/classSortHelper.asp"-->
3959 dpurdie 10
<script language="JavaScript" src="scripts/remote_scripting.js"></script>
11
<script type="text/javascript" src="scripts/json2.js"></script>
4230 dpurdie 12
<!-- TIPS -->
13
<script language="JavaScript" src="images/tipster.js"></script>
14
<script language="JavaScript" type="text/JavaScript">
15
formTips.tips.BuildType = stdTip(200, 'Build Type',
16
                                 'Auto Build packages are built by the VIX build daemons for release. ' +
17
                                 'Manually built packages will not be built by the build daemons.'+
18
                                 '<p>Manually built packages are very rare and not available to most developers');
19
formTips.tips.ChangeType = stdTip(200, 'Version Number Assignment',
20
                                  'Auto: The build system will determine the version number based on the Change Type' +
21
                                  '<p>Manual: The user specifies the version number to be used');
22
</script>
119 ghuddy 23
<%
24
'------------ Variable Definition -------------
25
Dim parPv_id
26
Dim rsLocRel
27
Dim parPage_title
28
Dim objPkgInfo
121 hknight 29
Dim rsTemp2
151 ghuddy 30
Dim rsLatest
31
Dim aVersions
32
Dim lastRow, i
33
Dim objSortHelper
3959 dpurdie 34
Dim newPackage
35
Dim majorState
36
Dim minorState
37
Dim patchState
38
Dim parBase_view_id
39
Dim verNumber
40
Dim parPkgName
4198 dpurdie 41
Dim parRename
42
Dim rFile
4210 dpurdie 43
Dim disableBuildType
3959 dpurdie 44
 
119 ghuddy 45
'------------ Constants Declaration -----------
3959 dpurdie 46
 
119 ghuddy 47
'-----------------------------------------------------------------------------------------------------------------------------
48
Sub GetPackageInfo( nPvId, outPkgInfo )
151 ghuddy 49
   Dim rsTemp, Query_String
3959 dpurdie 50
   If (IsEmpty(nPvId) OR newPackage > 0) Then Exit Sub
121 hknight 51
 
151 ghuddy 52
   Query_String = _
4980 dpurdie 53
   " SELECT pv.pv_id, pkg.pkg_id, pkg.pkg_name, pv.pkg_version, pv.v_ext, pv.change_type, pv.build_type, pv.is_patch"&_
151 ghuddy 54
   "  FROM packages pkg, package_versions pv"&_
55
   " WHERE pkg.pkg_id = pv.pkg_id  AND pv.pv_id ="& nPvId
121 hknight 56
 
151 ghuddy 57
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
121 hknight 58
 
151 ghuddy 59
   If ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) Then
60
      outPkgInfo.Item("pv_id") = rsTemp.Fields("pv_id")
61
      outPkgInfo.Item("pkg_id") = rsTemp.Fields("pkg_id")
62
      outPkgInfo.Item("pkg_name") = rsTemp.Fields("pkg_name")
63
      outPkgInfo.Item("pkg_version") = rsTemp.Fields("pkg_version")
4198 dpurdie 64
      outPkgInfo.Item("change_type") = rsTemp.Fields("change_type")
65
      outPkgInfo.Item("build_type") = rsTemp.Fields("build_type")
66
 
4980 dpurdie 67
      If rsTemp.Fields("is_patch") = "Y" Then
68
        outPkgInfo.Item("is_patch") = "true"
69
      Else
70
        outPkgInfo.Item("is_patch") = "false"
71
      End If
72
 
3959 dpurdie 73
      if rsTemp.Fields("v_ext") <> "" Then
74
        outPkgInfo.Item("v_ext") = rsTemp.Fields("v_ext")
75
      Else
76
        outPkgInfo.Item("v_ext") = ""
77
      End If
151 ghuddy 78
   End If
121 hknight 79
 
151 ghuddy 80
   rsTemp.Close
81
   Set rsTemp = nothing
119 ghuddy 82
End Sub
3959 dpurdie 83
 
119 ghuddy 84
'-----------------------------------------------------------------------------------------------------------------------------
151 ghuddy 85
Function Get_Latest_All_Ext ( NNpkg_id, nPv_id )
86
	Get_Latest_All_Ext = _
87
	" SELECT pv.pkg_version, pv.dlocked,"&_
88
	"        DECODE ( pv.pv_id, "& nPv_id &", 'selected', NULL ) AS selected"&_
89
	"    FROM PACKAGES pkg, package_versions pv"&_
90
	"   WHERE pkg.pkg_id = pv.pkg_id  AND  pkg.pkg_id = "& NNpkg_id
91
End Function
165 brianf 92
 
93
'-------------------------------------------------------------------------------------------------------------
3959 dpurdie 94
' Returns TRUE if the specified version has a COTS extension
95
' Really determines if the extension has to be strict Major.Minor.PatchBuild
96
' or is allowed to be more relaxes. As in COTS and TOOL packages.
97
'
98
' Read from the database to determine type
99
' If we cannot determine the project suffix then assume the worst
100
'
101
Function HasCotsExtension(aExt)
102
   Dim rsQry, Query_String
103
   HasCotsExtension = FALSE
104
 
105
   if aExt <> "" Then
106
       Query_String = "SELECT EXT_NAME FROM PROJECT_EXTENTIONS pe WHERE " &_
107
                      "pe.IS_COTS='Y' AND pe.EXT_NAME='" & LCase(aExt) & "'"
108
       Set rsQry = OraDatabase.DbCreateDynaset( Query_String, ORADYN_DEFAULT )
109
       If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
110
           HasCotsExtension = TRUE
111
       End If
112
       rsQry.Close
113
   Else
114
       HasCotsExtension = TRUE
115
   end If
116
   Set rsQry = Nothing
117
 
165 brianf 118
End Function
119
 
120
'-------------------------------------------------------------------------------------------------------------
121
'Returns TRUE if the specified version has a patch-build number.
122
Function HasPatchBuildNumber(aversion)
123
   'test for a version with a patch build number, ie a dot and at least 4 digits before the extenstion.
124
   Dim re: Set re = New RegExp
125
   re.Pattern = "\.\d{4,}\.[^\.]+$"
126
   HasPatchBuildNumber = re.Test(aversion)
127
   Set re = Nothing      
128
End Function
129
 
3959 dpurdie 130
'-------------------------------------------------------------------------------------------------------------
131
'Returns TRUE if the specified version has a well formed version number
132
Function HasWellFormedVersion(aversion)
133
   'If a package has a major.minor.patch-build number then it is well formed
134
   Dim re: Set re = New RegExp
135
   re.Pattern = "^\d+\.\d+\.\d{4,}\.[^\.]+$"
136
   HasWellFormedVersion = re.Test(aversion)
137
   Set re = Nothing      
138
End Function
139
 
151 ghuddy 140
'-----------------------------------------------------------------------------------------------------------------------------
3959 dpurdie 141
Sub Get_All_Base_Views ( NNnewgroup_id )
142
   Dim rsTemp, Query_String
143
 
144
   Query_String = _
145
   "   SELECT vi.view_id, vi.view_name "&_
146
   "     FROM views vi "&_
147
   "    WHERE UPPER(vi.base_view) = 'Y'"&_
148
   "    ORDER BY vi.view_name ASC"
149
 
150
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
151
 
152
   While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
153
      If NNnewgroup_id = Cstr( rsTemp.Fields("view_id")) Then
154
         Response.write "<option value='"& rsTemp("view_id") &"' selected>"& rsTemp("view_name") &"</option>"
155
      Else
156
         Response.write "<option value='"& rsTemp("view_id") &"'>" & rsTemp("view_name") &"</option>"
157
      End If
158
 
159
      rsTemp.MoveNext
160
   WEnd
161
 
162
   rsTemp.Close
163
   Set rsTemp = nothing
164
End Sub
165
'-----------------------------------------------------------------------------------------------------------------------------
166
Sub Get_All_Personal_Views ( NNuser_id )
167
   Dim rsTemp, Query_String
168
   If NNuser_id = "" Then Exit Sub
169
 
170
   Query_String = _
171
   " SELECT vi.view_id, vi.view_name"&_
172
   "  FROM view_settings vs,"&_
173
   "       views vi"&_
174
   " WHERE vs.view_id = vi.view_id"&_
175
   "   AND vs.user_id = vi.owner_id  "&_
176
   "   AND vs.user_id = "& NNuser_id &_
177
   "   AND vi.base_view = 'N'"&_
178
   " ORDER BY UPPER(vi.view_name)"
179
 
180
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
181
 
182
   While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
183
      Response.write "<option value='"& rsTemp.Fields("view_id") &"'>"& rsTemp.Fields("view_name") &"</option>"
184
 
185
      rsTemp.MoveNext
186
   WEnd
187
 
188
   rsTemp.Close
189
   Set rsTemp = nothing
190
End Sub
191
'-----------------------------------------------------------------------------------------------------------------------------
192
 
119 ghuddy 193
%>
194
<%
195
'===================== MAIN LINE ============================
3959 dpurdie 196
Dim bDisableAuto, bPatchOnly, bIsCots, bIsAuto
151 ghuddy 197
 
4198 dpurdie 198
'------------ Variable Init -------------------
199
parPv_id = QStrPar("pv_id")
200
parBase_view_id = Request("base_view_id")
201
parPkgName = QStrPar("pkgName")
202
parRename = QStrPar("renameMode")
203
rFile = QStrPar("rFile")
204
If IsEmpty(rFile) OR rFile = "" Then
205
    rFile="dependencies.asp"
206
End If
207
 
208
newPackage = 0
209
 
210
parPage_title = "NEW VERSION"
211
 
212
If ( parPkgName <> "" ) Then
213
    newPackage = 1
214
    parPv_id = NULL
215
End if
216
 
217
majorState = ""
218
minorState = ""
219
patchState = "checked"
220
 
4210 dpurdie 221
' The build_type will be displayed but not enabled unless the user
222
' is allowed to created manually built packages
223
disableBuildType = FALSE
224
If parRename <> "" OR NOT objAccessControl.IsActive("ApproveForManualBuild") Then
225
    disableBuildType = TRUE
226
End If
227
 
4198 dpurdie 228
Set objPkgInfo = CreateObject("Scripting.Dictionary")
229
 
230
If parRename <> "" Then
4230 dpurdie 231
    If parRename <> 2 Then
232
        parPage_title = "RENAME VERSION"
233
    Else
234
        parPage_title = "VERSION CHANGE TYPE"
235
    End If
4198 dpurdie 236
 
237
    ' Package already exists
3959 dpurdie 238
    Call GetPackageInfo( parPv_id, objPkgInfo )
239
    parPkgName = objPkgInfo.Item("pkg_name")
165 brianf 240
 
3959 dpurdie 241
    ' Extract version number without extension
242
    verNumber = objPkgInfo.Item("pkg_version")
243
    verNumber = Mid( verNumber,1, Len(verNumber) - Len(objPkgInfo.Item("v_ext")))
244
 
245
    bIsCots = HasCotsExtension(objPkgInfo.Item("v_ext"))
246
    'Disable the "Auto" build option if the package is a COTS package and the version doesn't have a patch-build number.
247
    bDisableAuto = bIsCots and not HasPatchBuildNumber(objPkgInfo.Item("pkg_version"))
248
    'Enable only the "Patch Change" option if the package is a COTS package and the version has a patch-build number.
249
    bPatchOnly = bIsCots and not HasWellFormedVersion(objPkgInfo.Item("pkg_version")) and HasPatchBuildNumber(objPkgInfo.Item("pkg_version"))
250
 
4198 dpurdie 251
    ' Use existing change type and build type
4203 dpurdie 252
    bIsAuto = objPkgInfo.Item("change_type") <> "F" AND NOT bDisableAuto
4198 dpurdie 253
 
254
    majorState = ""
255
    minorState = ""
256
    patchState = ""
257
    If objPkgInfo.Item("change_type") = "M" Then
258
        majorState = "checked"
259
    ElseIf objPkgInfo.Item("change_type") = "N" Then
260
        minorState = "checked"
261
    Else
262
        patchState = "checked"
263
    End If
264
 
265
ElseIf NOT (newPackage > 0 ) Then
266
    ' Package already exists
4293 dpurdie 267
    ' Creating a new Version of an existing Package
268
    '   Set build_type to Auto - New Versions start in Auto
4198 dpurdie 269
    Call GetPackageInfo( parPv_id, objPkgInfo )
4293 dpurdie 270
    objPkgInfo.Item("build_type") = "A"
271
 
4198 dpurdie 272
    parPkgName = objPkgInfo.Item("pkg_name")
273
 
274
    ' Extract version number without extension
275
    verNumber = objPkgInfo.Item("pkg_version")
276
    verNumber = Mid( verNumber,1, Len(verNumber) - Len(objPkgInfo.Item("v_ext")))
277
 
278
    bIsCots = HasCotsExtension(objPkgInfo.Item("v_ext"))
279
    'Disable the "Auto" build option if the package is a COTS package and the version doesn't have a patch-build number.
280
    bDisableAuto = bIsCots and not HasPatchBuildNumber(objPkgInfo.Item("pkg_version"))
281
    'Enable only the "Patch Change" option if the package is a COTS package and the version has a patch-build number.
282
    bPatchOnly = bIsCots and not HasWellFormedVersion(objPkgInfo.Item("pkg_version")) and HasPatchBuildNumber(objPkgInfo.Item("pkg_version"))
283
 
3959 dpurdie 284
    'if "Auto" build option is disabled then select the Manual option
285
    bIsAuto = NOT bDisableAuto
286
 
287
Else
288
    ' If New Package and First version
289
    parPage_title = "NEW PACKAGE and FIRST VERSION"
290
    bIsCots = FALSE
291
    bDisableAuto = FALSE
292
    bPatchOnly = FALSE
293
    bIsAuto = TRUE
294
    majorState = "checked"
295
    minorState = ""
296
    patchState = ""
297
    verNumber = "1.0.0000"
151 ghuddy 298
End If
3959 dpurdie 299
 
119 ghuddy 300
'============================================================
301
%>
302
<script language="JavaScript" type="text/JavaScript">
303
<!--
3959 dpurdie 304
var savedVersion;
305
var fieldError;
306
var checkMode;
121 hknight 307
 
3959 dpurdie 308
window.onload = function(e)
309
{
310
   // Init checking mode
311
   //   0 - Checking options one at a time
312
   //       Clear Error display before checking
313
   //
314
   //   1 - Checking before submit
315
   //       Accumulate error messages
316
   //
317
   checkMode = 0;
121 hknight 318
 
3959 dpurdie 319
   savedVersion = "<%=verNumber%>";
320
   document.getElementById('FRvnumber').value = savedVersion;
121 hknight 321
 
4210 dpurdie 322
   // Init the Build Type
323
   // Will be disabled for Rename or User cannot create Manually Built Packages
324
   //
325
   changeToAutoBuild('<%=objPkgInfo.Item("build_type")%>');
326
   <%If disableBuildType Then%>
327
   changeToAutoBuild('D');
328
   <% End If %>
329
 
4203 dpurdie 330
   var isAutobuild = document.NEWversion.version_type[0].checked;
151 ghuddy 331
   if (!isAutobuild)
332
   {
3959 dpurdie 333
      changeToManualVersionNumberAssignment();
151 ghuddy 334
   }
3959 dpurdie 335
   else
336
   {
337
      changeToAutoVersionNumberAssignment();
338
   }
4238 dpurdie 339
   updateCopyButton();
3959 dpurdie 340
   checkPackage();
341
   checkBaseView();
151 ghuddy 342
 
3959 dpurdie 343
   // Hide error message
4028 dpurdie 344
   setIdText('eMessage','');
119 ghuddy 345
}
121 hknight 346
 
4028 dpurdie 347
function setIdText(id, text) {
348
    var element = document.getElementById(id);
349
    if ( element ) {
350
    while (element.firstChild!==null)
351
        element.removeChild(element.firstChild); // remove all existing content
352
    element.appendChild(document.createTextNode(text));
353
    }
354
}
355
 
121 hknight 356
//////////////////////////////////////////////////////////////////
3959 dpurdie 357
// Function: changeToAutoVersionNumberAssignment
121 hknight 358
//
4230 dpurdie 359
// Purpose: Hide the relevant sections of the form
121 hknight 360
//
3959 dpurdie 361
function changeToAutoVersionNumberAssignment()
121 hknight 362
{
4203 dpurdie 363
   document.getElementById('change_type1').style.display = 'table-row';
3959 dpurdie 364
   //document.getElementById('pkgver').style.display = 'none';
365
   savedVersion = document.getElementById('FRvnumber').value;
366
   document.getElementById('FRvnumber').disabled = true;
4238 dpurdie 367
   <%If NOT newPackage > 0 Then%>
4230 dpurdie 368
   document.getElementById('FRuseVersion').style.visibility = 'hidden';
4238 dpurdie 369
   <%End If%>
3959 dpurdie 370
   document.getElementById('FRvnumber').value = '(auto)';
371
   checkVersionNumber();
121 hknight 372
}
373
 
374
//////////////////////////////////////////////////////////////////
3959 dpurdie 375
// Function: changeToManualVersionNumberAssignment
121 hknight 376
//
4230 dpurdie 377
// Purpose: Show the relevant sections of the form
121 hknight 378
//
3959 dpurdie 379
function changeToManualVersionNumberAssignment()
121 hknight 380
{
4203 dpurdie 381
   document.getElementById('change_type1').style.display = 'none';
3959 dpurdie 382
   //document.getElementById('pkgver').style.display = 'table-row';
383
   document.getElementById('FRvnumber').disabled = false;
4238 dpurdie 384
   <%If NOT newPackage > 0 Then%>
4230 dpurdie 385
   document.getElementById('FRuseVersion').style.visibility = 'visible';
4238 dpurdie 386
   <%End If%>
4230 dpurdie 387
   if ( savedVersion.indexOf('(') != 0) {
388
       document.getElementById('FRvnumber').value = savedVersion;
389
   } else {
390
       document.getElementById('FRvnumber').value = "";
391
   }
3959 dpurdie 392
   checkVersionNumber();
393
}
121 hknight 394
 
4210 dpurdie 395
//////////////////////////////////////////////////////////////////
396
// Function: changeToAutoBuild
397
//
398
// Purpose: Maintain the Manual Auto Build state
399
//
400
var changeToAutoBuildData = new Array;
401
function changeToAutoBuild (mode)
402
{
403
    //  Set to Disable Mode
404
    //      Display only - no editing allowed
405
    if (mode == 'D')
406
    {
407
        document.NEWversion['build_type_M'].disabled = true;
408
        document.NEWversion['build_type_A'].disabled = true;
409
    }
410
 
411
    //  Set to Manual
412
    //      Remember current version_type
413
    //      Force version_type to manual
414
    //      Disable ability to set auto version type
415
    if (mode == 'M')
416
   {
417
       changeToAutoBuildData['M'] =  document.NEWversion['version_type_M'].checked;
418
       changeToAutoBuildData['A'] =  document.NEWversion['version_type_A'].checked;
419
 
420
       document.NEWversion['build_type_M'].checked = true;
4630 dpurdie 421
       document.all['build_type'].value = 'M';
4210 dpurdie 422
       document.NEWversion['version_type_M'].checked = true;
423
       document.NEWversion['version_type_A'].disabled = true;
424
       changeToManualVersionNumberAssignment();
425
   }
426
 
427
    //  Set to Auto
428
    //      Enable auto version_type
429
    //      Restore version type to previous value
430
   if (mode == 'A')
431
   {
432
       document.NEWversion['build_type_A'].checked = true;
433
       document.NEWversion['version_type_A'].disabled = false;
4630 dpurdie 434
       document.all['build_type'].value = 'A';
4210 dpurdie 435
 
436
       if (typeof changeToAutoBuildData['M'] != 'undefined')
437
       {
438
           document.NEWversion['version_type_M'].checked = changeToAutoBuildData['M'];
439
           document.NEWversion['version_type_A'].checked = changeToAutoBuildData['A'];
440
 
441
           if (document.NEWversion['version_type_M'].checked)
442
           {
443
               changeToManualVersionNumberAssignment();
444
           }
445
           else
446
           {
447
               changeToAutoVersionNumberAssignment();
448
           }
449
       }
450
   }
451
}
452
 
453
//////////////////////////////////////////////////////////////////
4238 dpurdie 454
//  Function: updateCopyButton
455
//  Args:     data - New data value
456
function updateCopyButton ()
457
{
458
    var e = document.getElementById("FRpkgver");
459
    var el = document.getElementById('FRuseVersion');
460
    if (e && el)
461
    {
462
        var data = e.value;
463
        el.disabled = (data.indexOf('(') == 0)
464
    }
465
}
466
 
467
//////////////////////////////////////////////////////////////////
4230 dpurdie 468
// Function: useVersion
469
//
470
// Purpose: Insert current version ino the version field
471
//          Attached to: FRuseVersion
472
//
473
function useVersion()
474
{
475
    var e = document.getElementById("FRpkgver");
476
    if (e)
477
    {
4238 dpurdie 478
        var strUser = e.value;
4230 dpurdie 479
        if ( strUser.indexOf('(') != 0)
480
        {
481
            var patt = /\.[a-z]{1,4}$/i;
482
            strUser = strUser.replace(patt,'');
483
            document.getElementById('FRvnumber').value = strUser;
484
            checkVersionNumber();
485
        }
486
    }
487
}
488
 
489
//////////////////////////////////////////////////////////////////
4210 dpurdie 490
// Function: checkPackage
491
//
492
// Purpose: 
493
//
3959 dpurdie 494
function checkPackage()
495
{
496
    var f = document.getElementById('NEWversion');
497
    if ( f.newPackage.value > 0 )
498
    {
499
        reseteMessage();
500
        MM_validateForm("--Silent",'FRpkgName','Package Name','RisPackage');
501
        checkPackageHighlight( ! document.MM_returnValue, 'Name well formed', 'Invalid Characters in name');
502
        if ( ! document.MM_returnValue ) return;
121 hknight 503
 
3959 dpurdie 504
        xmlHttp=GetXmlHttpObject(checkPackageDone);
505
        if (xmlHttp==null)
506
        {
507
          alert ("Your browser does not support AJAX!");
508
          return;
509
        }
510
 
511
        var url = "_json_checkPackage.asp?"
512
                + "packageName=" + document.getElementById('FRpkgName').value
513
                + "&Opr=checkName";
514
 
515
        MM_showProgressBar();
516
        xmlHttp.open("GET",url,false);  // `false` makes the request synchronous
517
        xmlHttp.send(null);
518
    }
121 hknight 519
}
520
 
3959 dpurdie 521
function checkPackageDone()
522
{
523
    //readyState of 4 or 'complete' represents that data has been returned
524
    if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){
525
        //alert("Got to checkPackageDone"+ xmlHttp.responseText);
121 hknight 526
 
3959 dpurdie 527
        //Gather the results from the callback
528
        var str = xmlHttp.responseText;
4062 dpurdie 529
        try {
530
            var myJson = JSON.parse(str);
531
            checkPackageHighlight( myJson.result != 0, 'Name is unused', 'Package Exists');
532
        }
533
        catch(e) {
534
            checkPackageHighlight( 1, '','Error in AJAX operation');
535
        }
3959 dpurdie 536
        MM_hideProgressBar();
537
    }
538
}
539
 
540
function checkPackageHighlight(v, msggood, msgbad)
121 hknight 541
{
3959 dpurdie 542
    if (v)
543
    {
4028 dpurdie 544
        setIdText('cpError',msgbad);
3959 dpurdie 545
        addClass(document.getElementById('FRpkgName'), 'form_error' );
546
        showeMessage(document.MM_error);
547
        fieldError = true;
548
    }
549
    else
550
    {
4028 dpurdie 551
        setIdText('cpError',msggood);
3959 dpurdie 552
        removeClass(document.getElementById('FRpkgName'), 'form_error' );
553
    }
121 hknight 554
}
555
 
3959 dpurdie 556
function checkBaseView()
557
{
558
    var f = document.getElementById('NEWversion');
559
    if ( f.newPackage.value > 0 )
560
    {
561
        reseteMessage();
562
        MM_validateForm("--Silent",'base_view_id','Base View','R');
563
        if ( ! document.MM_returnValue )
564
        {
565
            addClass(document.getElementById('base_view_id'), 'form_error' );
4028 dpurdie 566
            setIdText('bvError','Required');
3959 dpurdie 567
            fieldError = true;
568
        }
569
        else
570
        {
571
            removeClass(document.getElementById('base_view_id'), 'form_error' );
4028 dpurdie 572
            setIdText('bvError','');
3959 dpurdie 573
        }
574
    }
575
}
121 hknight 576
 
3959 dpurdie 577
function checkVersionNumber()
151 ghuddy 578
{
3959 dpurdie 579
   reseteMessage();
4203 dpurdie 580
   if (document.NEWversion.version_type[0].checked)
3959 dpurdie 581
   {
582
        removeClass(document.getElementById('FRvnumber'), 'form_error' );
4028 dpurdie 583
        setIdText('vnError','');
584
 
585
        var versionExt = document.all['v_ext'].value;
586
        document.all['FRnewver'].value = versionExt;
3959 dpurdie 587
   }
588
   else
589
   {
590
        // Get Full version - store into hidden field processing
591
        var versionExt = document.all['v_ext'].value;
592
        var versionBase = document.all['FRvnumber'].value;
593
        document.all['FRnewver'].value = versionBase + versionExt;
594
 
595
        // check the version number is good
4980 dpurdie 596
        MM_validateForm("--Silent",{vBase:versionBase, vExt:versionExt, isPatch:<%=objPkgInfo.Item("is_patch")%>},'Version Number','RisVersionNumber');
3959 dpurdie 597
        if ( ! document.MM_returnValue )
598
        {
599
            addClass(document.getElementById('FRvnumber'), 'form_error' );
4028 dpurdie 600
            setIdText('vnError','Invalid form');
3959 dpurdie 601
            showeMessage(document.MM_error);
602
            fieldError = true;
603
            return;
604
        }
605
 
606
        xmlHttp=GetXmlHttpObject(checkVersionExistsDone);
607
        if (xmlHttp==null)
608
        {
609
            alert ("Your browser does not support AJAX!");
610
            return;
611
        }
612
 
613
        var url = "_json_checkPackage.asp?"
614
                + "packageName=" + document.getElementById('FRpkgName').value
615
                + "&Version=" + document.all['FRvnumber'].value + document.all['v_ext'].value
616
                + "&Opr=checkVer";
617
 
618
        MM_showProgressBar();
619
        xmlHttp.open("GET",url,false);  // `false` makes the request synchronous
620
        xmlHttp.send(null);
621
    }
151 ghuddy 622
}
623
 
3959 dpurdie 624
function checkVersionExistsDone()
121 hknight 625
{
3959 dpurdie 626
    //readyState of 4 or 'complete' represents that data has been returned
627
    if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){
628
 
629
        //Gather the results from the callback
4062 dpurdie 630
        var myJson;
3959 dpurdie 631
        var str = xmlHttp.responseText;
4062 dpurdie 632
        try {
633
            myJson = JSON.parse(str);
634
        }
635
        catch(e) {
636
            myJson = {};
637
            myJson.error = 2;
638
            myJson.emsgSummary = e.message;
639
            myJson.SqlQry = '';
640
        }
3959 dpurdie 641
 
642
        if(myJson.error)
643
        {
4062 dpurdie 644
            addClass(document.getElementById('FRvnumber'), 'form_error' );
645
            setIdText('vnError','Error in AJAX operation');
3959 dpurdie 646
            showeMessage(myJson.emsgSummary);
647
            fieldError = true;
648
        }
4062 dpurdie 649
        else if(myJson.result != 0)
3959 dpurdie 650
        {
651
            addClass(document.getElementById('FRvnumber'), 'form_error' );
4028 dpurdie 652
            setIdText('vnError','Exists');
3959 dpurdie 653
            showeMessage('Version already exists');
654
            fieldError = true;
655
        }
656
        else
657
        {
658
            removeClass(document.getElementById('FRvnumber'), 'form_error' );
4028 dpurdie 659
            setIdText('vnError','');
3959 dpurdie 660
        }
661
        MM_hideProgressBar();
662
    }
121 hknight 663
}
664
 
3959 dpurdie 665
function checkReason()
666
{
667
   reseteMessage();
668
    MM_validateForm("--Silent",'FRreason','Reason for This Version','maxLength:4000');
669
    if ( ! document.MM_returnValue )
670
    {
671
        addClass(document.getElementById('FRreason'), 'form_error' );
4028 dpurdie 672
        //setIdText('frError','Too Long');
673
 
3959 dpurdie 674
        showeMessage(document.MM_error);
675
        fieldError = true;
676
    }
677
    else
678
    {
679
        removeClass(document.getElementById('FRreason'), 'form_error' );
4028 dpurdie 680
        //setIdText('frError','');
3959 dpurdie 681
    }
682
}
151 ghuddy 683
 
4198 dpurdie 684
function getCheckedRadio(radio_group) {
685
    for (var i = 0; i < radio_group.length; i++) {
686
        var button = radio_group[i];
687
        if (button.checked) {
688
            return button;
689
        }
690
    }
691
    return undefined;
692
}
693
 
4203 dpurdie 694
<%If parRename <> "" Then%>
4198 dpurdie 695
function updateVersionInfo()
696
{
697
   reseteMessage();
698
 
699
    xmlHttp=GetXmlHttpObject(updateVersionInfoDone);
700
    if (xmlHttp==null)
701
    {
702
        alert ("Your browser does not support AJAX!");
703
        return;
704
    }
705
 
706
    var url = "_json_updateVersion.asp?"
707
            + "packageName=" + document.getElementById('FRpkgName').value
708
            + "&Version=" + document.all['FRvnumber'].value + document.all['v_ext'].value
4630 dpurdie 709
            + "&buildType=" + document.all['build_type'].value
4203 dpurdie 710
            + "&changeType=" + document.all['change_type'].value
4198 dpurdie 711
            + "&rtagId=" + document.all['rtag_id'].value
712
            + "&pvId=" + document.all['OLDpv_id'].value
713
            + "&vExt=" + document.all['v_ext'].value
714
            + "&Opr=updateVer";
715
 
716
    MM_showProgressBar();
717
    xmlHttp.open("GET",url,false);          // `false` makes the request synchronous
718
    xmlHttp.send(null);
719
}
720
 
721
function updateVersionInfoDone()
722
{
723
    //readyState of 4 or 'complete' represents that data has been returned
724
    if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){
725
 
726
        //Gather the results from the callback
727
        var myJson;
728
        var str = xmlHttp.responseText;
729
//alert("Results:" + str);
730
        try {
731
            myJson = JSON.parse(str);
732
        }
733
        catch(e) {
734
            myJson = {};
735
            myJson.error = 2;
736
            myJson.emsgDetails = e.message;
737
            myJson.SqlQry = '';
738
        }
739
        if(myJson.error)
740
        {
741
            showeMessage(myJson.emsgDetails);
742
            fieldError = true;
743
        }
744
        else if(myJson.result != 0)
745
        {
746
            showeMessage('Error changing version number');
747
            fieldError = true;
748
        }
749
        MM_hideProgressBar();
750
    }
751
}
752
<%End If%>
753
 
3959 dpurdie 754
function reseteMessage()
755
{
756
    if (checkMode == 0 )
757
    {
4028 dpurdie 758
        setIdText('eMessage','');
3959 dpurdie 759
    }
760
}
761
 
762
function showeMessage(msg)
763
{
4630 dpurdie 764
    var omsg, elem;
3959 dpurdie 765
    if (checkMode == 1 )
766
    {
4630 dpurdie 767
        elem = document.getElementById("eMessage");
768
        omsg = elem.textContent || elem.innerText;
769
        if ( (typeof osmg != 'undefined') && omsg.length > 0 )
3959 dpurdie 770
            omsg += '\n';
771
    }
772
    else
773
    {
774
        omsg = "";
775
    }
776
    omsg += msg;
4028 dpurdie 777
    setIdText('eMessage',omsg);
3959 dpurdie 778
}
779
 
121 hknight 780
// Do not remove these next few lines, otherwise the page does not load properly in Microsoft IE.
119 ghuddy 781
//-->
782
</script>
783
 
784
<script>
121 hknight 785
 
786
 
119 ghuddy 787
function Dependency()
788
{
4198 dpurdie 789
<%If parRename <> "" Then%>
790
   parent.window.close();
791
<%ElseIf newPackage > 0 Then%>
792
   parent.window.location.href="<%=rFile%>?rtag_id=<%=parRtag_id%>";
3959 dpurdie 793
<%Else%>
4198 dpurdie 794
   parent.window.location.href="<%=rFile%>?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>";
3959 dpurdie 795
<%End If%>
119 ghuddy 796
}
121 hknight 797
 
151 ghuddy 798
////////////////////////////////////////////////////////////////////////////////////////////////////////
799
// This function returns true if form validation passes, else false
800
// It is called when a user hits the submit button.
801
////////////////////////////////////////////////////////////////////////////////////////////////////////
3959 dpurdie 802
 
151 ghuddy 803
function validateFormNEWversion()
804
{
3959 dpurdie 805
    var f = document.getElementById('NEWversion');
121 hknight 806
 
3959 dpurdie 807
    if (f == null)
808
        alert('Failed To Get NEWversion');   // should never happen unless a coding/rendering mistake is made?
809
    else
810
    {
4028 dpurdie 811
        setIdText('eMessage','');
3959 dpurdie 812
        fieldError = false;
813
        checkMode = 1;
814
        checkPackage();
815
        checkBaseView();
816
        checkVersionNumber();
4198 dpurdie 817
        <%If NOT parRename <> "" Then%>
3959 dpurdie 818
        checkReason();
4198 dpurdie 819
        <%End If%>
3959 dpurdie 820
        if (!fieldError)
821
        {
4203 dpurdie 822
            //  Export the change_type field in a sanitised form
823
            var ct = getCheckedRadio(document.forms.NEWversion.elements.change_type1).value;
824
            if(!document.NEWversion.version_type[0].checked) ct = 'F';
825
            document.all['change_type'].value = ct;
826
 
3959 dpurdie 827
            MM_showProgressBar();
4198 dpurdie 828
            <%If parRename <> "" Then%>
829
                updateVersionInfo();
830
                if (!fieldError)
831
                {
832
                    parent.window.close();
833
                    window.opener.document.location='<%=rFile%>?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>';
834
                    return true;
835
                }
836
            <%Else%>
837
                f.action='_new_version.asp';
838
                parent.window.location.href='<%=rFile%>?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>';
839
                return true;
840
            <%End If%>
3959 dpurdie 841
        }
842
    }
151 ghuddy 843
 
3959 dpurdie 844
    // Hide progress bar that is exposed because the previous tests were OK
845
    MM_hideProgressBar();
846
    checkMode = 0;
847
    return false;
121 hknight 848
}
151 ghuddy 849
 
119 ghuddy 850
</script>
851
 
852
<table width="650" border="0" cellspacing="0" cellpadding="0">
151 ghuddy 853
   <tr>
854
      <td>
855
         <table width="100%" border="0" cellspacing="0" cellpadding="0">
856
            <tr>
857
               <td width="1%">&nbsp;</td>
858
               <td align="right"><img src="images/h_trsp_dot.gif" width="30" height="30"></td>
859
               <td width="1%">&nbsp;</td>
860
            </tr>
861
            <tr>
862
               <td width="1%">&nbsp;</td>
863
               <td>
864
                  <table width="100%" border="0" cellspacing="0" cellpadding="0">
865
                     <tr>
866
                        <td nowrap class="form_ttl"><%=parPage_title%></td>
867
                        <td align="right" valign="bottom">
868
                           <!-- TABS -->
869
                           &nbsp;
870
                        </td>
871
                     </tr>
872
                  </table>
873
               </td>
874
               <td width="1%">&nbsp;</td>
875
            </tr>
876
            <tr>
877
               <td align="left" valign="top" width="1%" background="images/lbox_bg_blue.gif"><img src="images/lbox_tl_cnr_b.gif" width="13" height="13"></td>
878
               <td background="images/lbox_bg_blue.gif"><!-- Heading --><img src="images/h_trsp_dot.gif" width="1" height="20"><!-- END Heading --></td>
879
               <td align="right" valign="top" width="1%" background="images/lbox_bg_blue.gif"><img src="images/lbox_tr_cnr_b.gif" width="13" height="13"></td>
880
            </tr>
881
            <tr>
882
               <td width="1%" bgcolor="#FFFFFF"><img src="images/h_trsp_dot.gif" width="10" height="100"></td>
883
               <td bgcolor="#FFFFFF" valign="top">
884
                  <!-- Body -->
885
                  <table width="100%" border="0" cellspacing="1" cellpadding="2">
886
                     <form id="NEWversion"  name="NEWversion" method="post">
887
                        <tr>
888
                           <td width="1%"><img src="images/h_trsp_dot.gif" width="1" height="10"></td>
889
                           <td width="1%" nowrap class="form_group" valign="bottom"></td>
890
                           <td nowrap width="100%" align="right" class="form_step"></td>
891
                        </tr>
892
                        <tr>
893
                           <td width="1%">&nbsp;</td>
894
                           <td colspan="2" width="1%" nowrap class="form_field">
895
                              <table width="100%" border="0" cellspacing="1" cellpadding="5">
3959 dpurdie 896
 
897
                                 <!-- Package Name -->
151 ghuddy 898
                                 <tr>
899
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Package Name</td>
3959 dpurdie 900
                                   <% if newPackage > 0 Then %>
901
                                        <td background="images/bg_form_lightgray.gif" class="form_item">
902
                                          <input type="text" id="FRpkgName" name="FRpkgName" class="form_item" size="40" value="<%=parPkgName%>" onBlur="checkPackage()">
903
                                          <span id="cpError"></span>
904
                                        </td>
905
                                    <% Else %>
906
                                        <td background="images/bg_form_lightgray.gif" class="form_field"><%=parPkgName%></td>
907
                                    <% End If %>
151 ghuddy 908
                                 </tr>
3959 dpurdie 909
 
910
                                 <!--Base View -------------->
911
                                 <% if newPackage > 0 Then %>
912
                                    <tr>
913
                                        <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">To Base View</td>
914
                                        <td colspan="2" width="1%" nowrap background="images/bg_form_lightgray.gif" class="form_item">
915
                                           <select name="base_view_id" id="base_view_id" class="form_item" onBlur="checkBaseView()">
916
                                              <option></option>
917
                                              <%Call Get_All_Base_Views(parBase_view_id)%>
918
                                           </select>
919
                                           <span id="bvError"></span>
920
                                        </td>
921
                                     </tr>
922
 
923
                                 <!--Personal View -------------->
924
                                   <%If QStrPar("Pview") <> "disable" Then%>
925
                                    <tr>
926
                                        <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">To Personal View</td>
927
                                       <td colspan="2" width="1%" nowrap background="images/bg_form_lightgray.gif">
928
                                          <select name="personal_view_id" class="form_item">
929
                                             <option value="">None</option>
930
                                             <%Call Get_All_Personal_Views(objAccessControl.UserId )%>
931
                                          </select>
932
                                       </td>
933
                                    </tr>
934
                                    <%End If%>
935
 
936
                                 <!--Dummy Line to highlight New Package Data -------------->
937
                                    <tr>
938
                                        <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field"></td>
939
                                        <td background="images/bg_form_lightbluedark.gif" class="form_field"></td>
940
                                    </tr>
941
                                 <% End If %>
942
 
4203 dpurdie 943
                                 <!-- Build Type Assignment ----------------->
944
                                 <tr>
4230 dpurdie 945
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Build Type<%=Quick_Help("BuildType")%></td>
4203 dpurdie 946
                                    <td background="images/bg_form_lightgray.gif" class="form_txt">
947
                                    <table>
948
                                        <tr>
949
                                            <td background="images/bg_form_lightgray.gif" class="form_txt">
4630 dpurdie 950
                                            <input name="build_type1" id="build_type_A" type="radio" value="A" checked onclick="changeToAutoBuild('A');"> Auto
951
                                            <input name="build_type1" id="build_type_M" type="radio" value="M" onclick="changeToAutoBuild('M');"> Manual
4980 dpurdie 952
                                            <%=objPkgInfo.Item("is_patch")%>
4203 dpurdie 953
                                        </td>
954
                                    </table>
955
                                 </tr>
3959 dpurdie 956
                                 <!--Version Number Assignment -------------->
151 ghuddy 957
                                 <tr>
4230 dpurdie 958
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Version Number Assignment<%=Quick_Help("ChangeType")%></td>
151 ghuddy 959
                                    <td background="images/bg_form_lightgray.gif" class="form_txt">
3959 dpurdie 960
                                       <%
961
                                            Dim flagAuto, flagMan
962
                                            if bDisableAuto Then
963
                                                flagAuto = "disabled"
964
                                                flagMan = "checked"
965
                                            Else
966
                                                If bIsAuto Then
967
                                                    flagAuto = "checked"
968
                                                    flagMan = ""
969
                                                Else
970
                                                    flagAuto = ""
971
                                                    flagMan = "checked"
972
                                                End if
973
                                            End if
974
                                       %>
975
                                        <table>
976
                                        <tr>
977
                                            <td background="images/bg_form_lightgray.gif" class="form_txt">
978
 
4210 dpurdie 979
                                            <input name="version_type" id="version_type_A" type="radio" value="A" <%=flagAuto%> onclick="changeToAutoVersionNumberAssignment();"> Auto
980
                                            <input name="version_type" id="version_type_M" type="radio" value="M" <%=flagMan%> onclick="changeToManualVersionNumberAssignment();"> Manual
3959 dpurdie 981
                                        </td>
4203 dpurdie 982
 
3959 dpurdie 983
                                        </table>
151 ghuddy 984
                                    </td>
985
                                 </tr>
986
 
3959 dpurdie 987
                                 <!-- New Version Number -->
151 ghuddy 988
                                 <tr>
989
                                    <td background="images/bg_form_lightbluedark.gif"  width="20%" class="form_field">New Version Number</td>
3959 dpurdie 990
                                    <td>
991
                                        <table>
992
                                        <tr>
993
                                        <td background="images/bg_form_lightgray.gif" class="form_item">
994
                                            <input type="text" id="FRvnumber"
995
                                                    name="FRvnumber"
996
                                                    class="form_item" size="12" onBlur="checkVersionNumber()">
997
                                                    <span id="vnError"></span>
998
                                        </td>
999
                                           <td id="pkgver" background="images/bg_form_lightgray.gif" class="form_item">
1000
                                           <%If NOT newPackage > 0 Then%>
4230 dpurdie 1001
                                              <button type="button" style="visibility:hidden" id="FRuseVersion" class="form_item" onclick="useVersion();">&#8656;&nbsp;Copy</button>
4238 dpurdie 1002
                                              <select id="FRpkgver"  name="FRpkgver" class="form_item" onchange="updateCopyButton()";>
3959 dpurdie 1003
                                                 <option value=""></option>
1004
                                                 <%
1005
                                                 Set rsLatest = OraDatabase.DbCreateDynaset( Get_Latest_All_Ext( objPkgInfo.Item("pkg_id"), parPv_id ), cint(0))
151 ghuddy 1006
 
3959 dpurdie 1007
                                                 If rsLatest.RecordCount > 0 Then
1008
                                                    aVersions = rsLatest.GetRows()
1009
                                                    lastRow = UBound( aVersions, 2 )
1010
                                                    Set objSortHelper = New SortHelper
151 ghuddy 1011
 
3959 dpurdie 1012
                                                    ' Sort versions
1013
                                                    Call objSortHelper.VersionSort( aVersions, 0, lastRow, rsLatest.FieldIndex("pkg_version") )
151 ghuddy 1014
 
3959 dpurdie 1015
                                                    ' Descending order
1016
                                                    For i = lastRow To 0 Step -1
1017
                                                    %>
1018
                                                       <option value="<%=aVersions( rsLatest.FieldIndex("pkg_version"), i )%>" <%=aVersions( rsLatest.FieldIndex("selected"), i )%>>
1019
                                                          <%If aVersions( rsLatest.FieldIndex("dlocked"), i ) = "Y" Then%>
1020
                                                             R&nbsp;
1021
                                                          <%Else%>
1022
                                                             &nbsp;&nbsp;&nbsp;&nbsp;
1023
                                                          <%End If%>
1024
                                                          <%=aVersions( rsLatest.FieldIndex("pkg_version"), i )%>
1025
                                                       </option>
1026
                                                    <%
1027
                                                    Next
1028
                                                    Set objSortHelper = nothing
151 ghuddy 1029
 
3959 dpurdie 1030
                                                 End If
1031
                                                 %>
4230 dpurdie 1032
                                              </select>&nbsp;Existing Versions
3959 dpurdie 1033
                                           <%End If%>
1034
                                           </td>
1035
                                        </tr>
1036
                                        </table>
1037
                                    </td>
151 ghuddy 1038
                                 </tr>
1039
                                 <tr>
1040
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Version Extension</td>
1041
                                    <td background="images/bg_form_lightgray.gif" class="form_item">
1042
                                       <DIV id="divVersionExt" name="divVersionExt">
3959 dpurdie 1043
                                          <select name="v_ext" id="v_ext" onchange="checkVersionNumber()">
151 ghuddy 1044
                                             <%
1045
                                             Call drawExtensionSelectBox( objPkgInfo.Item("v_ext"), true )
1046
                                             %>
1047
                                          </select>
1048
                                       </DIV>
1049
                                    </td>
1050
                                 </tr>
4198 dpurdie 1051
                                 <%If NOT parRename <> "" Then%>
3959 dpurdie 1052
                                 <!-- Reason For This Version -->
151 ghuddy 1053
                                 <tr>
1054
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Reason For This Version</td>
1055
                                    <td background="images/bg_form_lightgray.gif" nowrap width="100%" class="form_field">
3959 dpurdie 1056
                                       <textarea name="FRreason" id="FRreason" class="form_item" style="width: 420px; height: 150px" onBlur="checkReason()"></textarea>
1057
                                        <span id="frError"></span>
151 ghuddy 1058
                                    </td>
1059
                                 </tr>
4198 dpurdie 1060
                                <%End If%>
4203 dpurdie 1061
                                <tr id="change_type1">
3959 dpurdie 1062
                                   <td background="images/bg_form_lightbluedark.gif" nowrap width="20%" class="form_field">Change Type</td>
1063
                                   <td background="images/bg_form_lightgray.gif" >
1064
                                      <table width="100%" border="0" cellspacing="0" cellpadding="0">
1065
                                         <tr>
1066
                                            <td width="1%">
1067
                                              <%If bPatchOnly Then majorState = "disabled" %>
4203 dpurdie 1068
                                              <input name="change_type1" type="radio" value="M" <%=majorState%>>
3959 dpurdie 1069
                                            </td>
1070
                                            <td nowrap>
1071
                                               <span class="form_field">Major Change</span>
1072
                                            </td>
1073
                                            <td>&nbsp;</td>
1074
                                            <td>
1075
                                               <span class="form_txt">A major number change indicates the contract of the package has changed in a non-backwardly compatible manner.</span>
1076
                                            </td>
1077
                                         </tr>
1078
                                         <tr>
1079
                                            <td colspan="4"><hr width="100%" size="1" noshade></td>
1080
                                         </tr>
1081
                                         <tr>
1082
                                            <td width="1%">
1083
                                              <%If bPatchOnly Then minorState = "disabled" %>
4203 dpurdie 1084
                                              <input name="change_type1" type="radio" value="N" <%=minorState%>>
3959 dpurdie 1085
                                            </td>
1086
                                            <td align="center" nowrap>
1087
                                               <span class="form_field">Minor Change</span>
1088
                                            </td>
1089
                                            <td>&nbsp;</td>
1090
                                            <td>
1091
                                               <span class="form_txt">A minor number change indicates the contract of the package has changed in a backwardly compatible manner.</span>
1092
                                            </td>
1093
                                         </tr>
1094
                                         <tr>
1095
                                            <td colspan="4"><hr width="100%" size="1" noshade></td>
1096
                                         </tr>
1097
                                         <tr>
1098
                                            <td width="1%">
4203 dpurdie 1099
                                               <input name="change_type1" type="radio" value="P" <%=patchState%>>
3959 dpurdie 1100
                                            </td>
1101
                                            <td nowrap>
1102
                                               <span class="form_field">Patch Change</span>
1103
                                            </td>
1104
                                            <td>&nbsp;</td>
1105
                                            <td>
1106
                                               <span class="form_txt">A patch number change indicates the package has changed internally.</span>
1107
                                            </td>
1108
                                         </tr>
1109
                                      </table>
151 ghuddy 1110
 
3959 dpurdie 1111
                                   </td>
1112
                                </tr>
151 ghuddy 1113
                                 <tr>
1114
                                    <td nowrap><img src="images/h_trsp_dot.gif" width="120" height="1"></td>
1115
                                    <td></td>
1116
                                 </tr>
4203 dpurdie 1117
                                 <input type="hidden" name="change_type" id="change_type" value="X">
4631 dpurdie 1118
                                 <input type="hidden" name="build_type" id="build_type" value="A">
151 ghuddy 1119
                                 <input type="hidden" name="FRnewver" id="FRnewver" value="hello">
1120
                                 <input type="hidden" name="OLDpv_id" value="<%=parPv_id%>">
1121
                                 <input type="hidden" name="rtag_id" value="<%=parRtag_id%>">
3959 dpurdie 1122
                                 <input type="hidden" name="newPackage" value="<%=newPackage%>">
1123
                                 <% if NOT (newPackage > 0) Then %>
1124
                                 <input type="hidden" id="FRpkgName" name="FRpkgName" value="<%=parPkgName%>">
1125
                                 <%End If%>
151 ghuddy 1126
                              </table>
1127
                           </td>
1128
                        </tr>
1129
                        <tr>
1130
                           <td width="1%">&nbsp;</td>
1131
                           <td width="1%" nowrap class="form_field"><img src="images/h_trsp_dot.gif" width="1" height="1"></td>
1132
                           <td nowrap width="100%" class="body_scol">
1133
                              <input type="submit" name="btn" value="Submit" class="form_btn" onClick="return validateFormNEWversion();">
1134
                              <input type="reset" name="btn" value="Cancel" class="form_btn" onClick="Dependency();">
1135
                              <SPAN id="ProgressBar" name="ProgressBar" style="visibility:hidden;"><img src="images/i_processing.gif" width="11" height="17" align="absmiddle" hspace="3">Processing...</SPAN>
1136
                              <br><br>
1137
                           </td>
3959 dpurdie 1138
                           <tr><td id="eMessage" colspan=3 class="err_alert">ERROR: Page Java script did not load</td><tr>
151 ghuddy 1139
                        </tr>
1140
                     </form>
1141
                  </table>
1142
                  <!-- END Body-->
1143
               </td>
1144
               <td width="1%" background="images/lbox_bgside_white.gif">&nbsp;</td>
1145
            </tr>
1146
            <tr>
1147
               <td width="1%" background="images/lbox_bg_blue.gif" valign="bottom"><img src="images/lbox_bl_cnr_b.gif" width="13" height="13"></td>
1148
               <td background="images/lbox_bg_blue.gif"></td>
1149
               <td width="1%" background="images/lbox_bg_blue.gif" valign="bottom" align="right"><img src="images/lbox_br_cnr_b.gif" width="13" height="13"></td>
1150
            </tr>
1151
         </table>
1152
      </td>
1153
   </tr>
119 ghuddy 1154
</table>