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"-->
119 ghuddy 10
<%
11
'------------ Variable Definition -------------
151 ghuddy 12
Dim parAuto
119 ghuddy 13
Dim parPv_id
14
Dim rsLocRel
15
Dim parPage_title
16
Dim objPkgInfo
121 hknight 17
Dim rsTemp2
151 ghuddy 18
Dim rsLatest
19
Dim aVersions
20
Dim lastRow, i
21
Dim objSortHelper
119 ghuddy 22
'------------ Constants Declaration -----------
23
'------------ Variable Init -------------------
24
parPv_id = QStrPar("pv_id")
151 ghuddy 25
parAuto =  QStrPar("auto")
119 ghuddy 26
parPage_title = "NEW VERSION"
27
Set objPkgInfo = CreateObject("Scripting.Dictionary")
28
'-----------------------------------------------------------------------------------------------------------------------------
121 hknight 29
Function Get_Projects
151 ghuddy 30
   Get_Projects = _
31
   " SELECT * FROM projects ORDER BY proj_name ASC"
121 hknight 32
End Function
33
'-----------------------------------------------------------------------------------------------------------------------------
119 ghuddy 34
Sub GetPackageInfo( nPvId, outPkgInfo )
151 ghuddy 35
   Dim rsTemp, Query_String
36
   If IsEmpty(nPvId) Then Exit Sub
121 hknight 37
 
151 ghuddy 38
   Query_String = _
39
   " SELECT pv.pv_id, pkg.pkg_id, pkg.pkg_name, pv.pkg_version, pv.v_ext"&_
40
   "  FROM packages pkg, package_versions pv"&_
41
   " WHERE pkg.pkg_id = pv.pkg_id  AND pv.pv_id ="& nPvId
121 hknight 42
 
151 ghuddy 43
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
121 hknight 44
 
151 ghuddy 45
   If ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) Then
46
      outPkgInfo.Item("pv_id") = rsTemp.Fields("pv_id")
47
      outPkgInfo.Item("pkg_id") = rsTemp.Fields("pkg_id")
48
      outPkgInfo.Item("pkg_name") = rsTemp.Fields("pkg_name")
49
      outPkgInfo.Item("pkg_version") = rsTemp.Fields("pkg_version")
50
      outPkgInfo.Item("v_ext") = rsTemp.Fields("v_ext")
51
   End If
121 hknight 52
 
151 ghuddy 53
   rsTemp.Close
54
   Set rsTemp = nothing
119 ghuddy 55
End Sub
56
'-----------------------------------------------------------------------------------------------------------------------------
151 ghuddy 57
Function Get_Latest_All_Ext ( NNpkg_id, nPv_id )
58
	Get_Latest_All_Ext = _
59
	" SELECT pv.pkg_version, pv.dlocked,"&_
60
	"        DECODE ( pv.pv_id, "& nPv_id &", 'selected', NULL ) AS selected"&_
61
	"    FROM PACKAGES pkg, package_versions pv"&_
62
	"   WHERE pkg.pkg_id = pv.pkg_id  AND  pkg.pkg_id = "& NNpkg_id
63
End Function
165 brianf 64
 
65
'-------------------------------------------------------------------------------------------------------------
66
'Returns TRUE if the specified version has a COTS extension
67
Function HasCotsExtension(aversion)
68
   Dim re: Set re = New RegExp
69
   re.Pattern = "\.cots$"
70
   HasCotsExtension = re.Test(aversion)
71
   Set re = Nothing
72
End Function
73
 
74
'-------------------------------------------------------------------------------------------------------------
75
'Returns TRUE if the specified version has a patch-build number.
76
Function HasPatchBuildNumber(aversion)
77
   'test for a version with a patch build number, ie a dot and at least 4 digits before the extenstion.
78
   Dim re: Set re = New RegExp
79
   re.Pattern = "\.\d{4,}\.[^\.]+$"
80
   HasPatchBuildNumber = re.Test(aversion)
81
   Set re = Nothing      
82
End Function
83
 
151 ghuddy 84
'-----------------------------------------------------------------------------------------------------------------------------
119 ghuddy 85
%>
86
<%
87
'===================== MAIN LINE ============================
88
Call GetPackageInfo( parPv_id, objPkgInfo )
165 brianf 89
Dim bDisableAuto, bPatchOnly
151 ghuddy 90
 
165 brianf 91
'Disable the "Auto" build option if the package is a COTS package and the version doesn't have a patch-build number.
92
bDisableAuto = HasCotsExtension(objPkgInfo.Item("pkg_version")) and not HasPatchBuildNumber(objPkgInfo.Item("pkg_version"))
93
'Enable only the "Patch Change" option if the package is a COTS package and the version has a patch-build number.
94
bPatchOnly = HasCotsExtension(objPkgInfo.Item("pkg_version")) and HasPatchBuildNumber(objPkgInfo.Item("pkg_version"))
95
 
96
'if "Auto" build option is disabled then select the Manual option
97
If bDisableAuto Then
98
   parAuto = "0"
99
'else default to Auto
100
ElseIf IsNull(parAuto) OR parAuto = "" Then
151 ghuddy 101
   parAuto = "1"
102
End If
119 ghuddy 103
'============================================================
104
%>
105
<script language="JavaScript" type="text/JavaScript">
106
<!--
121 hknight 107
 
108
/*
109
Summary of Javascript functionality implemented by Haydon Knight for DEVI-044075 and DEVI-043066:
110
 
111
The form 'NEWVersion' invokes _new_version.asp when submitted.  The value of the FRnewver input box (which is hidden)  is passed
151 ghuddy 112
through to _new_version.asp.  This value stores the full version number+extension.
121 hknight 113
The full version (that displayed and that stored in FRnewver) is updated by updateFullVersion(), which is invoked whenever the user
114
changes the version base-number or version extension via any of:
115
 
151 ghuddy 116
1. altering the value of the 'inputVersionNumber' text entry box
117
2. changing the extension via the 'v_ext' select pull-down menu.
121 hknight 118
 
119
The radio button to select auto/manual is 'build_type', and a value of 'M' = manual and 'A' = auto.  Changing what is selected
151 ghuddy 120
invokes changeToAutoVersionNumberAssignment() or changeToManualVersionNumberAssignment(), which re-builds the form on the server
121
with the appropriate query string value to indicate the build type.
121 hknight 122
*/
123
 
124
window.onload = function()
125
{
151 ghuddy 126
   var fullVersion = "<%=objPkgInfo.Item("pkg_version")%>";
127
   var versionExt  = "<%=objPkgInfo.Item("v_ext")%>";
121 hknight 128
 
151 ghuddy 129
   var isAutobuild = document.NEWversion.build_type[0].checked;
130
   if (!isAutobuild)
131
   {
132
      // We only update inputVersionNumber field on page load, for manual builds
133
      if (versionExt.length == 0)
134
      {
135
         // is probably an old package version that was made in the days before we enforced all package versions
136
         // to have an extension.
137
         document.all['inputVersionNumber'].value = fullVersion;
138
      }
139
      else
140
      {
141
         // strip extension
142
         document.all['inputVersionNumber'].value = fullVersion.replace( /(.*)\..*/, "$1");
143
      }
144
   }
145
 
146
   // update FRnewver field from inputVersionNumber and v_ext fields
147
   updateFullVersion();
119 ghuddy 148
}
121 hknight 149
 
150
//////////////////////////////////////////////////////////////////
151
// Function: updateFullVersion
152
//
153
// Purpose: Updates the version displayed at the bottom of the window, as well as the FRnewver field that is
154
// passed through to the _new_version.asp script
155
//
156
// Arguments: none
157
//
158
// Returns: none
159
//
160
// Notes: When the user updates the "version base" text field this function is called
161
//
162
function updateFullVersion()
163
{
151 ghuddy 164
   document.all['FRnewver'].value = getFullVersion();
121 hknight 165
}
166
 
167
 
168
//////////////////////////////////////////////////////////////////
169
// Function: getVersionBase
170
//
171
// Purpose: Works out what the version base is based on user input
172
//
173
// Arguments: none
174
//
175
// Returns: versionBase - a number of the form n.n.n where 'n' is an integer (.e.g. 1.2.3000)
176
//
177
// Notes: If auto just returns ("auto")
178
//
179
function getVersionBase()
180
{
151 ghuddy 181
   var isAutobuild = document.NEWversion.build_type[0].checked;
121 hknight 182
 
151 ghuddy 183
   if( isAutobuild )
121 hknight 184
      return "(auto)";
185
 
151 ghuddy 186
   return document.all['inputVersionNumber'].value;
121 hknight 187
}
188
 
189
 
190
//////////////////////////////////////////////////////////////////
191
// Function: getFullVersion
192
//
193
// Purpose: Returns the full version based on the user input
194
//
195
// Arguments: none
196
//
197
// Returns: fullVersion - e.g. "1.2.3.cr"
198
//
199
// Notes:
200
//
201
function getFullVersion()
202
{
151 ghuddy 203
   var versionBase = getVersionBase();
204
   var versionExt = document.all['v_ext'].value;
205
   return versionBase + versionExt;
121 hknight 206
}
207
 
208
 
209
//////////////////////////////////////////////////////////////////
151 ghuddy 210
// Function: changeToAutoVersionNumberAssignment
121 hknight 211
//
151 ghuddy 212
// Purpose: Re-loads the form for use in auto version number assignment
121 hknight 213
//
151 ghuddy 214
// Arguments: None
121 hknight 215
//
216
// Returns: none
217
//
151 ghuddy 218
function changeToAutoVersionNumberAssignment()
219
{
220
   window.location.href = 'form_new_version.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>&auto=1';
221
}
222
 
223
//////////////////////////////////////////////////////////////////
224
// Function: changeToManualVersionNumberAssignment
121 hknight 225
//
151 ghuddy 226
// Purpose: Re-loads the form for use in manual version number assignment
227
//
228
// Arguments: None
229
//
230
// Returns: none
231
//
232
function changeToManualVersionNumberAssignment()
121 hknight 233
{
151 ghuddy 234
   window.location.href = 'form_new_version.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>&auto=0';
121 hknight 235
}
236
 
151 ghuddy 237
 
121 hknight 238
// Do not remove these next few lines, otherwise the page does not load properly in Microsoft IE.
119 ghuddy 239
//-->
240
</script>
241
 
242
<script>
121 hknight 243
 
244
 
119 ghuddy 245
function Dependency()
246
{
151 ghuddy 247
   parent.window.location.href="dependencies.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>";
119 ghuddy 248
}
121 hknight 249
 
151 ghuddy 250
////////////////////////////////////////////////////////////////////////////////////////////////////////
251
// This function returns true if version is ok, else false
252
////////////////////////////////////////////////////////////////////////////////////////////////////////
121 hknight 253
function checkVersion()
254
{
151 ghuddy 255
   var fullVersion = document.all['FRnewver'].value;
121 hknight 256
 
151 ghuddy 257
   var versionBase = fullVersion.replace( /(.*)(\..*)/, "$1");
258
   var versionExt =  fullVersion.replace( /(.*)(\..*)/, "$2");
121 hknight 259
 
151 ghuddy 260
   var isAutobuild = document.NEWversion.build_type[0].checked;
121 hknight 261
 
151 ghuddy 262
   return MM_ValidateVersion(null, versionBase, versionExt, isAutobuild, false);
263
}
121 hknight 264
 
151 ghuddy 265
////////////////////////////////////////////////////////////////////////////////////////////////////////
266
// This function returns true if form validation passes, else false
267
// It is called when a user hits the submit button.
268
////////////////////////////////////////////////////////////////////////////////////////////////////////
269
function validateFormNEWversion()
270
{
271
   var f = document.getElementById('NEWversion');
121 hknight 272
 
151 ghuddy 273
   if (f == null)
274
      alert('Failed To Get NEWversion');   // should never happen unless a coding/rendering mistake is made?
275
   else
276
   {
277
      // check the version number is good
278
      document.MM_returnValue = checkVersion();
279
      if (document.MM_returnValue)
280
      {
281
         // check the reason for change is good
282
         // NOTE: MM_validateForm returns its result through MM_returnValue : true if validation passes, else false
283
         MM_validateForm('FRreason','Reason for This Version','maxLength:4000');
284
         if (document.MM_returnValue)
285
         {
286
            f.action='_new_version.asp';
287
            parent.window.location.href='dependencies.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>';
288
 
289
            return true; // let the submit happen
290
         }
291
      }
292
   }
293
   return false; // prevent the submit
121 hknight 294
}
151 ghuddy 295
 
119 ghuddy 296
</script>
297
 
298
<table width="650" border="0" cellspacing="0" cellpadding="0">
151 ghuddy 299
   <tr>
300
      <td>
301
         <table width="100%" border="0" cellspacing="0" cellpadding="0">
302
            <tr>
303
               <td width="1%">&nbsp;</td>
304
               <td align="right"><img src="images/h_trsp_dot.gif" width="30" height="30"></td>
305
               <td width="1%">&nbsp;</td>
306
            </tr>
307
            <tr>
308
               <td width="1%">&nbsp;</td>
309
               <td>
310
                  <table width="100%" border="0" cellspacing="0" cellpadding="0">
311
                     <tr>
312
                        <td nowrap class="form_ttl"><%=parPage_title%></td>
313
                        <td align="right" valign="bottom">
314
                           <!-- TABS -->
315
                           &nbsp;
316
                        </td>
317
                     </tr>
318
                  </table>
319
               </td>
320
               <td width="1%">&nbsp;</td>
321
            </tr>
322
            <tr>
323
               <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>
324
               <td background="images/lbox_bg_blue.gif"><!-- Heading --><img src="images/h_trsp_dot.gif" width="1" height="20"><!-- END Heading --></td>
325
               <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>
326
            </tr>
327
            <tr>
328
               <td width="1%" bgcolor="#FFFFFF"><img src="images/h_trsp_dot.gif" width="10" height="100"></td>
329
               <td bgcolor="#FFFFFF" valign="top">
330
                  <!-- Body -->
331
                  <table width="100%" border="0" cellspacing="1" cellpadding="2">
332
                     <form id="NEWversion"  name="NEWversion" method="post">
333
                        <tr>
334
                           <td width="1%"><img src="images/h_trsp_dot.gif" width="1" height="10"></td>
335
                           <td width="1%" nowrap class="form_group" valign="bottom"></td>
336
                           <td nowrap width="100%" align="right" class="form_step"></td>
337
                        </tr>
338
                        <tr>
339
                           <td width="1%">&nbsp;</td>
340
                           <td colspan="2" width="1%" nowrap class="form_field">
341
                              <table width="100%" border="0" cellspacing="1" cellpadding="5">
342
                                 <tr>
343
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Package Name</td>
344
                                    <td background="images/bg_form_lightgray.gif" class="form_field"><%=objPkgInfo.Item("pkg_name")%></td>
345
                                 </tr>
346
                                 <tr>
347
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Version Number Assignment</td>
348
                                    <td background="images/bg_form_lightgray.gif" class="form_txt">
121 hknight 349
 
165 brianf 350
                                       <%If bDisableAuto Then%>
351
                                          <input name="build_type" id="build_type" type="radio" value="A" disabled onclick="changeToAutoVersionNumberAssignment();"> Auto
352
                                          <input name="build_type" id="build_type" type="radio" value="M" checked onclick="changeToManualVersionNumberAssignment();"> Manual
151 ghuddy 353
                                       <%Else%>
165 brianf 354
                                         <%If parAuto = "1" Then%>
355
                                            <input name="build_type" id="build_type" type="radio" value="A" checked onclick="changeToAutoVersionNumberAssignment();"> Auto
356
                                            <input name="build_type" id="build_type" type="radio" value="M"         onclick="changeToManualVersionNumberAssignment();"> Manual
357
                                         <%Else%>
358
                                            <input name="build_type" id="build_type" type="radio" value="A"         onclick="changeToAutoVersionNumberAssignment();"> Auto
359
                                            <input name="build_type" id="build_type" type="radio" value="M" checked onclick="changeToManualVersionNumberAssignment();"> Manual
360
                                         <%End If%>
151 ghuddy 361
                                       <%End If%>
362
                                    </td>
363
                                 </tr>
364
                              </table>
365
 
366
                              <table width="100%" border="0" cellspacing="0" cellpadding="5">
367
                                 <tr>
368
                                    <td background="images/bg_form_lightbluedark.gif"  width="20%" class="form_field">New Version Number</td>
369
                                    <td background="images/bg_form_lightgray.gif" class="form_item">
370
                                       <%If parAuto = "0" Then%>
371
                                          <input type="text" id="inputVersionNumber" name="inputVersionNumber" class="form_item" size="12" onmouseout="updateFullVersion();" onblur="updateFullVersion();" onclick="updateFullVersion();" onmouseup="updateFullVersion();" onchange="updateFullVersion();" onkeyup="updateFullVersion();">
372
                                       <%Else%>
373
                                          <input type="text" id="inputVersionNumber" name="inputVersionNumber" class="form_item" size="12" value="(auto)" disabled>
374
                                       <%End If%>
375
                                    </td>
376
                                    <%If parAuto = "0" Then%>
377
                                       <td background="images/bg_form_lightgray.gif" class="form_item">
378
                                          <select id="FRpkgver"  name="FRpkgver" class="form_item">
379
                                             <option value=""></option>
380
                                             <%
381
                                             Set rsLatest = OraDatabase.DbCreateDynaset( Get_Latest_All_Ext( objPkgInfo.Item("pkg_id"), parPv_id ), cint(0))
382
 
383
                                             If rsLatest.RecordCount > 0 Then
384
                                                aVersions = rsLatest.GetRows()
385
                                                lastRow = UBound( aVersions, 2 )
386
 
387
                                                Set objSortHelper = New SortHelper
388
 
389
                                                ' Sort versions
390
                                                Call objSortHelper.VersionSort( aVersions, 0, lastRow, rsLatest.FieldIndex("pkg_version") )
391
 
392
                                                ' Descending order
393
                                                For i = lastRow To 0 Step -1
394
                                                %>
395
                                                   <option value="<%=aVersions( rsLatest.FieldIndex("pkg_version"), i )%>" <%=aVersions( rsLatest.FieldIndex("selected"), i )%>>
396
                                                      <%If aVersions( rsLatest.FieldIndex("dlocked"), i ) = "Y" Then%>
397
                                                         R&nbsp;
398
                                                      <%Else%>
399
                                                         &nbsp;&nbsp;&nbsp;&nbsp;
400
                                                      <%End If%>
401
                                                      <%=aVersions( rsLatest.FieldIndex("pkg_version"), i )%>
402
                                                   </option>
403
                                                <%
404
                                                Next
405
 
406
                                                Set objSortHelper = nothing
407
 
408
                                             End If
409
                                             %>
410
                                          </select>&nbsp;Existing Versions (For Reference Only)
411
                                       </td>
412
                                    <%End If%>
413
                                 </tr>
414
                              </table>
415
 
416
                              <table width="100%" border="0" cellspacing="1" cellpadding="5">
417
                                 <tr>
418
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Version Extension</td>
419
                                    <td background="images/bg_form_lightgray.gif" class="form_item">
420
                                       <DIV id="divVersionExt" name="divVersionExt">
421
                                          <select name="v_ext" id="v_ext" onchange="updateFullVersion();">
422
                                             <%
423
                                             Call drawExtensionSelectBox( objPkgInfo.Item("v_ext"), true )
424
                                             %>
425
                                          </select>
426
                                       </DIV>
427
                                    </td>
428
                                 </tr>
429
 
430
                                 <tr>
431
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Reason For This Version</td>
432
                                    <td background="images/bg_form_lightgray.gif" nowrap width="100%" class="form_field">
433
                                       <textarea name="FRreason" class="form_item" style="width: 420px; height: 150px"></textarea>
434
                                    </td>
435
                                 </tr>
436
                              </table>
437
 
438
                              <%If parAuto = "1" Then%>
439
                                 <table width="100%" border="0" cellspacing="0" cellpadding="5">
440
                                    <tr>
441
                                       <td background="images/bg_form_lightbluedark.gif" nowrap width="20%" class="form_field">Change Type</td>
442
                                       <td background="images/bg_form_lightgray.gif" >
443
                                          <table width="100%" border="0" cellspacing="0" cellpadding="0">
444
                                             <tr>
445
                                                <td width="1%">
165 brianf 446
                                                  <%If bPatchOnly Then%>
447
                                                    <input name="change_type" type="radio" value="M" disabled>
448
                                                  <%Else%>
449
                                                    <input name="change_type" type="radio" value="M">
450
                                                  <%End If%>
151 ghuddy 451
                                                </td>
452
                                                <td nowrap>
453
                                                   <span class="form_field">Major Change</span>
454
                                                </td>
455
                                                <td>&nbsp;</td>
456
                                                <td>
457
                                                   <span class="form_txt">A major number change indicates the contract of the package has changed in a non-backwardly compatible manner.</span>
458
                                                </td>
459
                                             </tr>
460
                                             <tr>
461
                                                <td colspan="4"><hr width="100%" size="1" noshade></td>
462
                                             </tr>
463
                                             <tr>
464
                                                <td width="1%">
165 brianf 465
                                                  <%If bPatchOnly Then%>
466
                                                    <input name="change_type" type="radio" value="N" disabled>
467
                                                  <%Else%>
468
                                                    <input name="change_type" type="radio" value="N">
469
                                                  <%End If%>
151 ghuddy 470
                                                </td>
471
                                                <td align="center" nowrap>
472
                                                   <span class="form_field">Minor Change</span>
473
                                                </td>
474
                                                <td>&nbsp;</td>
475
                                                <td>
476
                                                   <span class="form_txt">A minor number change indicates the contract of the package has changed in a backwardly compatible manner.</span>
477
                                                </td>
478
                                             </tr>
479
                                             <tr>
480
                                                <td colspan="4"><hr width="100%" size="1" noshade></td>
481
                                             </tr>
482
                                             <tr>
483
                                                <td width="1%">
484
                                                   <input name="change_type" type="radio" value="P" checked>
485
                                                </td>
486
                                                <td nowrap>
487
                                                   <span class="form_field">Patch Change</span>
488
                                                </td>
489
                                                <td>&nbsp;</td>
490
                                                <td>
491
                                                   <span class="form_txt">A patch number change indicates the package has changed internally.</span>
492
                                                </td>
493
                                             </tr>
494
                                          </table>
495
 
496
                                       </td>
497
                                    </tr>
498
                                 </table>
499
                              <%End If%>
500
 
501
                              <table width="100%" border="0" cellspacing="1" cellpadding="0">
502
                                 <tr>
503
                                    <td nowrap><img src="images/h_trsp_dot.gif" width="120" height="1"></td>
504
                                    <td></td>
505
                                 </tr>
506
                                 <input type="hidden" name="FRnewver" id="FRnewver" value="hello">
507
                                 <input type="hidden" name="OLDpv_id" value="<%=parPv_id%>">
508
                                 <input type="hidden" name="rtag_id" value="<%=parRtag_id%>">
509
                                 <input type="hidden" name="page_title" value="<%=parPage_title%>">
510
                              </table>
511
                           </td>
512
                        </tr>
513
                        <tr>
514
                           <td width="1%">&nbsp;</td>
515
                           <td width="1%" nowrap class="form_field"><img src="images/h_trsp_dot.gif" width="1" height="1"></td>
516
                           <td nowrap width="100%" class="body_scol">
517
                              <input type="submit" name="btn" value="Submit" class="form_btn" onClick="return validateFormNEWversion();">
518
                              <input type="reset" name="btn" value="Cancel" class="form_btn" onClick="Dependency();">
519
                              <SPAN id="ProgressBar" name="ProgressBar" style="visibility:hidden;"><img src="images/i_processing.gif" width="11" height="17" align="absmiddle" hspace="3">Processing...</SPAN>
520
                              <br><br>
521
                           </td>
522
                        </tr>
523
                     </form>
524
                  </table>
525
                  <!-- END Body-->
526
               </td>
527
               <td width="1%" background="images/lbox_bgside_white.gif">&nbsp;</td>
528
            </tr>
529
            <tr>
530
               <td width="1%" background="images/lbox_bg_blue.gif" valign="bottom"><img src="images/lbox_bl_cnr_b.gif" width="13" height="13"></td>
531
               <td background="images/lbox_bg_blue.gif"></td>
532
               <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>
533
            </tr>
534
         </table>
535
      </td>
536
   </tr>
119 ghuddy 537
</table>