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