Subversion Repositories DevTools

Rev

Rev 3895 | Rev 3900 | Go to most recent revision | Details | Compare with Previous | 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"-->
3892 dpurdie 10
<script language="JavaScript" src="scripts/remote_scripting.js"></script>
3894 dpurdie 11
<script type="text/javascript" src="scripts/json2.js"></script>
119 ghuddy 12
<%
13
'------------ Variable Definition -------------
14
Dim parPv_id
15
Dim rsLocRel
16
Dim parPage_title
17
Dim objPkgInfo
121 hknight 18
Dim rsTemp2
151 ghuddy 19
Dim rsLatest
20
Dim aVersions
21
Dim lastRow, i
22
Dim objSortHelper
3884 dpurdie 23
Dim newPackage
24
Dim majorState
25
Dim minorState
26
Dim patchState
27
Dim parBase_view_id
3885 dpurdie 28
Dim verNumber
3889 dpurdie 29
Dim parPkgName
3884 dpurdie 30
 
119 ghuddy 31
'------------ Constants Declaration -----------
32
'------------ Variable Init -------------------
33
parPv_id = QStrPar("pv_id")
3884 dpurdie 34
parBase_view_id = Request("base_view_id")
3889 dpurdie 35
parPkgName = QStrPar("pkgName")
3884 dpurdie 36
 
119 ghuddy 37
parPage_title = "NEW VERSION"
3884 dpurdie 38
 
3889 dpurdie 39
If ( parPkgName <> "" ) Then
3892 dpurdie 40
    newPackage = 1
3889 dpurdie 41
    parPv_id = NULL
3892 dpurdie 42
Else
43
    newPackage = 0
3884 dpurdie 44
End if
45
 
46
majorState = ""
47
minorState = ""
48
patchState = "checked"
49
 
119 ghuddy 50
Set objPkgInfo = CreateObject("Scripting.Dictionary")
3884 dpurdie 51
 
119 ghuddy 52
'-----------------------------------------------------------------------------------------------------------------------------
53
Sub GetPackageInfo( nPvId, outPkgInfo )
151 ghuddy 54
   Dim rsTemp, Query_String
3892 dpurdie 55
   If (IsEmpty(nPvId) OR newPackage > 0) Then Exit Sub
121 hknight 56
 
151 ghuddy 57
   Query_String = _
58
   " SELECT pv.pv_id, pkg.pkg_id, pkg.pkg_name, pv.pkg_version, pv.v_ext"&_
59
   "  FROM packages pkg, package_versions pv"&_
60
   " WHERE pkg.pkg_id = pv.pkg_id  AND pv.pv_id ="& nPvId
121 hknight 61
 
151 ghuddy 62
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
121 hknight 63
 
151 ghuddy 64
   If ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) Then
65
      outPkgInfo.Item("pv_id") = rsTemp.Fields("pv_id")
66
      outPkgInfo.Item("pkg_id") = rsTemp.Fields("pkg_id")
67
      outPkgInfo.Item("pkg_name") = rsTemp.Fields("pkg_name")
68
      outPkgInfo.Item("pkg_version") = rsTemp.Fields("pkg_version")
69
      outPkgInfo.Item("v_ext") = rsTemp.Fields("v_ext")
70
   End If
121 hknight 71
 
151 ghuddy 72
   rsTemp.Close
73
   Set rsTemp = nothing
119 ghuddy 74
End Sub
3891 dpurdie 75
 
119 ghuddy 76
'-----------------------------------------------------------------------------------------------------------------------------
151 ghuddy 77
Function Get_Latest_All_Ext ( NNpkg_id, nPv_id )
78
	Get_Latest_All_Ext = _
79
	" SELECT pv.pkg_version, pv.dlocked,"&_
80
	"        DECODE ( pv.pv_id, "& nPv_id &", 'selected', NULL ) AS selected"&_
81
	"    FROM PACKAGES pkg, package_versions pv"&_
82
	"   WHERE pkg.pkg_id = pv.pkg_id  AND  pkg.pkg_id = "& NNpkg_id
83
End Function
165 brianf 84
 
85
'-------------------------------------------------------------------------------------------------------------
3867 dpurdie 86
' Returns TRUE if the specified version has a COTS extension
87
' Really determines if the extension has to be strict Major.Minor.PatchBuild
88
' or is allowed to be more relaxes. As in COTS and TOOL packages.
3865 dpurdie 89
'
3867 dpurdie 90
' Read from the database to determine type
91
' If we cannot determine the project suffix then assume the worst
92
'
3885 dpurdie 93
Function HasCotsExtension(aExt)
3867 dpurdie 94
   Dim rsQry, Query_String
95
   HasCotsExtension = FALSE
96
 
3885 dpurdie 97
   if aExt <> "" Then
3867 dpurdie 98
       Query_String = "SELECT EXT_NAME FROM PROJECT_EXTENTIONS pe WHERE " &_
3885 dpurdie 99
                      "pe.IS_COTS='Y' AND pe.EXT_NAME='" & LCase(aExt) & "'"
3867 dpurdie 100
       Set rsQry = OraDatabase.DbCreateDynaset( Query_String, ORADYN_DEFAULT )
101
       If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
102
           HasCotsExtension = TRUE
103
       End If
104
       rsQry.Close
105
   Else
106
       HasCotsExtension = TRUE
107
   end If
3885 dpurdie 108
   Set rsQry = Nothing
3867 dpurdie 109
 
165 brianf 110
End Function
111
 
112
'-------------------------------------------------------------------------------------------------------------
113
'Returns TRUE if the specified version has a patch-build number.
114
Function HasPatchBuildNumber(aversion)
115
   'test for a version with a patch build number, ie a dot and at least 4 digits before the extenstion.
116
   Dim re: Set re = New RegExp
117
   re.Pattern = "\.\d{4,}\.[^\.]+$"
118
   HasPatchBuildNumber = re.Test(aversion)
119
   Set re = Nothing      
120
End Function
121
 
3621 dpurdie 122
'-------------------------------------------------------------------------------------------------------------
123
'Returns TRUE if the specified version has a well formed version number
124
Function HasWellFormedVersion(aversion)
125
   'If a package has a major.minor.patch-build number then it is well formed
126
   Dim re: Set re = New RegExp
127
   re.Pattern = "^\d+\.\d+\.\d{4,}\.[^\.]+$"
128
   HasWellFormedVersion = re.Test(aversion)
129
   Set re = Nothing      
130
End Function
131
 
3884 dpurdie 132
'-----------------------------------------------------------------------------------------------------------------------------
133
Sub Get_All_Base_Views ( NNnewgroup_id )
134
   Dim rsTemp, Query_String
3621 dpurdie 135
 
3884 dpurdie 136
   Query_String = _
137
   "   SELECT vi.view_id, vi.view_name "&_
138
   "     FROM views vi "&_
139
   "    WHERE UPPER(vi.base_view) = 'Y'"&_
140
   "    ORDER BY vi.view_name ASC"
141
 
142
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
143
 
144
   While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
145
      If NNnewgroup_id = Cstr( rsTemp.Fields("view_id")) Then
146
         Response.write "<option value='"& rsTemp("view_id") &"' selected>"& rsTemp("view_name") &"</option>"
147
      Else
148
         Response.write "<option value='"& rsTemp("view_id") &"'>" & rsTemp("view_name") &"</option>"
149
      End If
150
 
151
      rsTemp.MoveNext
152
   WEnd
153
 
154
   rsTemp.Close
155
   Set rsTemp = nothing
156
End Sub
151 ghuddy 157
'-----------------------------------------------------------------------------------------------------------------------------
3884 dpurdie 158
Sub Get_All_Personal_Views ( NNuser_id )
159
   Dim rsTemp, Query_String
160
   If NNuser_id = "" Then Exit Sub
161
 
162
   Query_String = _
163
   " SELECT vi.view_id, vi.view_name"&_
164
   "  FROM view_settings vs,"&_
165
   "       views vi"&_
166
   " WHERE vs.view_id = vi.view_id"&_
167
   "   AND vs.user_id = vi.owner_id  "&_
168
   "   AND vs.user_id = "& NNuser_id &_
169
   "   AND vi.base_view = 'N'"&_
170
   " ORDER BY UPPER(vi.view_name)"
171
 
172
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
173
 
174
   While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
175
      Response.write "<option value='"& rsTemp.Fields("view_id") &"'>"& rsTemp.Fields("view_name") &"</option>"
176
 
177
      rsTemp.MoveNext
178
   WEnd
179
 
180
   rsTemp.Close
181
   Set rsTemp = nothing
182
End Sub
183
'-----------------------------------------------------------------------------------------------------------------------------
184
 
119 ghuddy 185
%>
186
<%
187
'===================== MAIN LINE ============================
3884 dpurdie 188
Dim bDisableAuto, bPatchOnly, bIsCots, bIsAuto
151 ghuddy 189
 
3892 dpurdie 190
If NOT (newPackage > 0 ) Then
3884 dpurdie 191
    Call GetPackageInfo( parPv_id, objPkgInfo )
3889 dpurdie 192
    parPkgName = objPkgInfo.Item("pkg_name")
165 brianf 193
 
3885 dpurdie 194
    ' Extract version number without extension
195
    verNumber = objPkgInfo.Item("pkg_version")
196
    verNumber = Mid( verNumber,1, Len(verNumber) - Len(objPkgInfo.Item("v_ext")))
197
 
198
    bIsCots = HasCotsExtension(objPkgInfo.Item("v_ext"))
3884 dpurdie 199
    'Disable the "Auto" build option if the package is a COTS package and the version doesn't have a patch-build number.
200
    bDisableAuto = bIsCots and not HasPatchBuildNumber(objPkgInfo.Item("pkg_version"))
201
    'Enable only the "Patch Change" option if the package is a COTS package and the version has a patch-build number.
202
    bPatchOnly = bIsCots and not HasWellFormedVersion(objPkgInfo.Item("pkg_version")) and HasPatchBuildNumber(objPkgInfo.Item("pkg_version"))
203
 
204
    'if "Auto" build option is disabled then select the Manual option
3891 dpurdie 205
    bIsAuto = NOT bDisableAuto
206
 
3885 dpurdie 207
Else
208
    ' If New Package and First version
3884 dpurdie 209
    parPage_title = "NEW PACKAGE and FIRST VERSION"
210
    bIsCots = FALSE
211
    bDisableAuto = FALSE
212
    bPatchOnly = FALSE
213
    bIsAuto = TRUE
214
    majorState = "checked"
215
    minorState = ""
216
    patchState = ""
3885 dpurdie 217
    verNumber = "1.0.0000"
3884 dpurdie 218
End If
219
 
119 ghuddy 220
'============================================================
221
%>
222
<script language="JavaScript" type="text/JavaScript">
223
<!--
3884 dpurdie 224
var savedVersion;
3892 dpurdie 225
var fieldError;
3894 dpurdie 226
var checkMode;
121 hknight 227
 
3884 dpurdie 228
window.onload = function(e)
121 hknight 229
{
3894 dpurdie 230
   // Init checking mode
231
   //   0 - Checking options one at a time
232
   //       Clear Error display before checking
233
   //
234
   //   1 - Checking before submit
235
   //       Accumulate error messages
236
   //
237
   checkMode = 0;
238
 
3891 dpurdie 239
   savedVersion = "<%=verNumber%>";
240
   document.getElementById('FRvnumber').value = savedVersion;
3885 dpurdie 241
 
151 ghuddy 242
   var isAutobuild = document.NEWversion.build_type[0].checked;
243
   if (!isAutobuild)
244
   {
3884 dpurdie 245
      changeToManualVersionNumberAssignment();
151 ghuddy 246
   }
3884 dpurdie 247
   else
248
   {
249
      changeToAutoVersionNumberAssignment();
250
   }
3894 dpurdie 251
   checkPackage();
252
   checkBaseView();
253
 
254
   // Hide error message
255
   document.getElementById("eMessage").innerText = '';
119 ghuddy 256
}
121 hknight 257
 
258
//////////////////////////////////////////////////////////////////
151 ghuddy 259
// Function: changeToAutoVersionNumberAssignment
121 hknight 260
//
3884 dpurdie 261
// Purpose: Hide the relevent sections of the form
121 hknight 262
//
151 ghuddy 263
function changeToAutoVersionNumberAssignment()
264
{
3884 dpurdie 265
   document.getElementById('change_type').style.display = 'table-row';
266
   //document.getElementById('pkgver').style.display = 'none';
3889 dpurdie 267
   savedVersion = document.getElementById('FRvnumber').value;
268
   document.getElementById('FRvnumber').disabled = true;
269
   document.getElementById('FRvnumber').value = '(auto)';
3892 dpurdie 270
   checkVersionNumber();
3894 dpurdie 271
}
151 ghuddy 272
 
273
//////////////////////////////////////////////////////////////////
274
// Function: changeToManualVersionNumberAssignment
121 hknight 275
//
3884 dpurdie 276
// Purpose: Show the relevent sections of the form
151 ghuddy 277
//
278
function changeToManualVersionNumberAssignment()
121 hknight 279
{
3884 dpurdie 280
   document.getElementById('change_type').style.display = 'none';
3894 dpurdie 281
   //document.getElementById('pkgver').style.display = 'table-row';
3889 dpurdie 282
   document.getElementById('FRvnumber').disabled = false;
283
   document.getElementById('FRvnumber').value = savedVersion;
3892 dpurdie 284
   checkVersionNumber();
121 hknight 285
}
286
 
3892 dpurdie 287
function checkPackage()
288
{
289
    var f = document.getElementById('NEWversion');
290
    if ( f.newPackage.value > 0 )
291
    {
3894 dpurdie 292
        reseteMessage();
293
        MM_validateForm("--Silent",'FRpkgName','Package Name','RisPackage');
3892 dpurdie 294
        checkPackageHighlight( ! document.MM_returnValue, 'Name well formed', 'Invalid Characters in name');
295
        if ( ! document.MM_returnValue ) return;
151 ghuddy 296
 
3894 dpurdie 297
        xmlHttp=GetXmlHttpObject(checkPackageDone);
3892 dpurdie 298
        if (xmlHttp==null)
299
        {
300
          alert ("Your browser does not support AJAX!");
301
          return;
302
        }
303
 
3894 dpurdie 304
        var url = "_json_checkPackage.asp?"
305
                + "packageName=" + document.getElementById('FRpkgName').value
306
                + "&Opr=checkName";
3892 dpurdie 307
 
3895 dpurdie 308
        MM_showProgressBar();
3894 dpurdie 309
        xmlHttp.open("GET",url,false);  // `false` makes the request synchronous
3892 dpurdie 310
        xmlHttp.send(null);
311
    }
312
}
313
 
314
function checkPackageDone()
315
{
316
    //readyState of 4 or 'complete' represents that data has been returned
317
    if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){
3894 dpurdie 318
        //alert("Got to checkPackageDone"+ xmlHttp.responseText);
3892 dpurdie 319
 
320
        //Gather the results from the callback
321
        var str = xmlHttp.responseText;
322
        var myJson = JSON.parse(str);
323
 
324
        checkPackageHighlight( myJson.result != 0, 'Name is unused', 'Package Exists');
3895 dpurdie 325
        MM_hideProgressBar();
3892 dpurdie 326
    }
327
}
328
 
329
function checkPackageHighlight(v, msggood, msgbad)
330
{
331
    if (v)
332
    {
333
        document.getElementById('cpError').innerText = msgbad;
3895 dpurdie 334
        addClass(document.getElementById('FRpkgName'), 'form_error' );
3892 dpurdie 335
        showeMessage(document.MM_error);
336
        fieldError = true;
337
    }
338
    else
339
    {
340
        document.getElementById('cpError').innerText = msggood;
3895 dpurdie 341
        removeClass(document.getElementById('FRpkgName'), 'form_error' );
3892 dpurdie 342
    }
343
}
344
 
345
function checkBaseView()
346
{
347
    var f = document.getElementById('NEWversion');
348
    if ( f.newPackage.value > 0 )
349
    {
3894 dpurdie 350
        reseteMessage();
351
        MM_validateForm("--Silent",'base_view_id','Base View','R');
3892 dpurdie 352
        if ( ! document.MM_returnValue )
353
        {
3895 dpurdie 354
            addClass(document.getElementById('base_view_id'), 'form_error' );
3892 dpurdie 355
            document.getElementById('bvError').innerText = 'Required';
356
            fieldError = true;
357
        }
358
        else
359
        {
3895 dpurdie 360
            removeClass(document.getElementById('base_view_id'), 'form_error' );
3892 dpurdie 361
            document.getElementById('bvError').innerText = '';
362
        }
363
    }
364
}
365
 
366
function checkVersionNumber()
367
{
3894 dpurdie 368
   reseteMessage();
3892 dpurdie 369
   if (document.NEWversion.build_type[1].checked)
370
   {
371
        // Get Full version - store into hidden field processing
372
        var versionExt = document.all['v_ext'].value;
373
        var versionBase = document.all['FRvnumber'].value;
374
        document.all['FRnewver'].value = versionBase + versionExt;
375
 
376
        // check the version number is good
3899 dpurdie 377
        MM_validateForm("--Silent",{vBase:versionBase, vExt:versionExt},'Version Number','RisVersionNumber');
378
        if ( ! document.MM_returnValue )
3892 dpurdie 379
        {
3895 dpurdie 380
            addClass(document.getElementById('FRvnumber'), 'form_error' );
3892 dpurdie 381
            document.getElementById('vnError').innerText = 'Invalid form';
3899 dpurdie 382
            showeMessage(document.MM_error);
3892 dpurdie 383
            fieldError = true;
384
            return;
385
        }
386
    }
387
 
3895 dpurdie 388
    removeClass(document.getElementById('FRvnumber'), 'form_error' );
3892 dpurdie 389
    document.getElementById('vnError').innerText = '';
390
}
391
 
392
function checkVersionExists()
393
{
3894 dpurdie 394
   reseteMessage();
3892 dpurdie 395
   if (document.NEWversion.build_type[1].checked)
396
   {
3894 dpurdie 397
        xmlHttp=GetXmlHttpObject(checkVersionExistsDone);
3892 dpurdie 398
        if (xmlHttp==null)
399
        {
400
            alert ("Your browser does not support AJAX!");
401
            return;
402
        }
403
 
3894 dpurdie 404
        var url = "_json_checkPackage.asp?"
405
                + "packageName=" + document.getElementById('FRpkgName').value
406
                + "&Version=" + document.all['FRvnumber'].value + document.all['v_ext'].value
407
                + "&Opr=checkVer";
3892 dpurdie 408
 
3895 dpurdie 409
        MM_showProgressBar();
3892 dpurdie 410
        xmlHttp.open("GET",url,false);  // `false` makes the request synchronous
411
        xmlHttp.send(null);
412
    }
413
}
414
 
415
function checkVersionExistsDone()
416
{
417
    //readyState of 4 or 'complete' represents that data has been returned
418
    if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){
419
 
420
        //Gather the results from the callback
421
        var str = xmlHttp.responseText;
422
        var myJson = JSON.parse(str);
423
 
424
        if(myJson.error)
425
        {
426
            showeMessage(myJson.emsgSummary);
427
            fieldError = true;
428
        }
429
 
430
        if(myJson.result != 0)
431
        {
3895 dpurdie 432
            addClass(document.getElementById('FRvnumber'), 'form_error' );
3892 dpurdie 433
            //document.getElementById('vnError').innerText = 'Version already exists';
434
            showeMessage('Version already exists');
435
            fieldError = true;
436
        }
437
        else
438
        {
3895 dpurdie 439
            removeClass(document.getElementById('FRvnumber'), 'form_error' );
3892 dpurdie 440
            document.getElementById('vnError').innerText = '';
441
        }
3895 dpurdie 442
        MM_hideProgressBar();
3892 dpurdie 443
    }
444
}
445
 
446
function checkReason()
447
{
3894 dpurdie 448
   reseteMessage();
449
    MM_validateForm("--Silent",'FRreason','Reason for This Version','maxLength:4');
3892 dpurdie 450
    if ( ! document.MM_returnValue )
451
    {
3895 dpurdie 452
        addClass(document.getElementById('FRreason'), 'form_error' );
3892 dpurdie 453
        //document.getElementById('frError').innerText = 'Too Long';
454
        showeMessage(document.MM_error);
455
        fieldError = true;
456
    }
457
    else
458
    {
3895 dpurdie 459
        removeClass(document.getElementById('FRreason'), 'form_error' );
3892 dpurdie 460
        //document.getElementById('frError').innerText = '';
461
    }
462
}
463
 
3894 dpurdie 464
function reseteMessage()
465
{
466
    if (checkMode == 0 )
467
    {
468
        document.getElementById("eMessage").innerText = "";
469
    }
470
}
471
 
3892 dpurdie 472
function showeMessage(msg)
473
{
3894 dpurdie 474
    var omsg;
475
    if (checkMode == 1 )
476
    {
477
        omsg = document.getElementById("eMessage").innerText;
478
        if ( omsg.length > 0 )
479
            omsg += '\n';
480
    }
481
    else
482
    {
483
        omsg = "";
484
    }
3892 dpurdie 485
    omsg += msg;
486
    document.getElementById("eMessage").innerText = omsg;
487
}
488
 
121 hknight 489
// Do not remove these next few lines, otherwise the page does not load properly in Microsoft IE.
119 ghuddy 490
//-->
491
</script>
492
 
493
<script>
121 hknight 494
 
495
 
119 ghuddy 496
function Dependency()
497
{
3892 dpurdie 498
<%If newPackage > 0 Then%>
3889 dpurdie 499
   parent.window.location.href="dependencies.asp?rtag_id=<%=parRtag_id%>";
500
<%Else%>
151 ghuddy 501
   parent.window.location.href="dependencies.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>";
3889 dpurdie 502
<%End If%>
119 ghuddy 503
}
121 hknight 504
 
151 ghuddy 505
////////////////////////////////////////////////////////////////////////////////////////////////////////
506
// This function returns true if form validation passes, else false
507
// It is called when a user hits the submit button.
508
////////////////////////////////////////////////////////////////////////////////////////////////////////
3892 dpurdie 509
 
151 ghuddy 510
function validateFormNEWversion()
511
{
3886 dpurdie 512
    var f = document.getElementById('NEWversion');
121 hknight 513
 
3886 dpurdie 514
    if (f == null)
515
        alert('Failed To Get NEWversion');   // should never happen unless a coding/rendering mistake is made?
516
    else
517
    {
3892 dpurdie 518
        document.getElementById("eMessage").innerText = '';
519
        fieldError = false;
3894 dpurdie 520
        checkMode = 1;
3892 dpurdie 521
        checkPackage();
522
        checkBaseView();
523
        checkVersionNumber();
524
        checkVersionExists();
525
        checkReason();
526
        if (!fieldError)
3884 dpurdie 527
        {
3895 dpurdie 528
            MM_showProgressBar();
3892 dpurdie 529
            f.action='_new_version.asp';
530
            parent.window.location.href='dependencies.asp?rtag_id=<%=parRtag_id%>&pv_id=<%=parPv_id%>';
531
            return true;
3884 dpurdie 532
        }
3892 dpurdie 533
    }
3887 dpurdie 534
 
3892 dpurdie 535
    // Hide progress bar that is exposed because the previous tests were OK
3895 dpurdie 536
    MM_hideProgressBar();
3894 dpurdie 537
    checkMode = 0;
3892 dpurdie 538
    return false;
121 hknight 539
}
151 ghuddy 540
 
119 ghuddy 541
</script>
542
 
543
<table width="650" border="0" cellspacing="0" cellpadding="0">
151 ghuddy 544
   <tr>
545
      <td>
546
         <table width="100%" border="0" cellspacing="0" cellpadding="0">
547
            <tr>
548
               <td width="1%">&nbsp;</td>
549
               <td align="right"><img src="images/h_trsp_dot.gif" width="30" height="30"></td>
550
               <td width="1%">&nbsp;</td>
551
            </tr>
552
            <tr>
553
               <td width="1%">&nbsp;</td>
554
               <td>
555
                  <table width="100%" border="0" cellspacing="0" cellpadding="0">
556
                     <tr>
557
                        <td nowrap class="form_ttl"><%=parPage_title%></td>
558
                        <td align="right" valign="bottom">
559
                           <!-- TABS -->
560
                           &nbsp;
561
                        </td>
562
                     </tr>
563
                  </table>
564
               </td>
565
               <td width="1%">&nbsp;</td>
566
            </tr>
567
            <tr>
568
               <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>
569
               <td background="images/lbox_bg_blue.gif"><!-- Heading --><img src="images/h_trsp_dot.gif" width="1" height="20"><!-- END Heading --></td>
570
               <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>
571
            </tr>
572
            <tr>
573
               <td width="1%" bgcolor="#FFFFFF"><img src="images/h_trsp_dot.gif" width="10" height="100"></td>
574
               <td bgcolor="#FFFFFF" valign="top">
575
                  <!-- Body -->
576
                  <table width="100%" border="0" cellspacing="1" cellpadding="2">
577
                     <form id="NEWversion"  name="NEWversion" method="post">
578
                        <tr>
579
                           <td width="1%"><img src="images/h_trsp_dot.gif" width="1" height="10"></td>
580
                           <td width="1%" nowrap class="form_group" valign="bottom"></td>
581
                           <td nowrap width="100%" align="right" class="form_step"></td>
582
                        </tr>
583
                        <tr>
584
                           <td width="1%">&nbsp;</td>
585
                           <td colspan="2" width="1%" nowrap class="form_field">
586
                              <table width="100%" border="0" cellspacing="1" cellpadding="5">
3884 dpurdie 587
 
588
                                 <!-- Package Name -->
151 ghuddy 589
                                 <tr>
590
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Package Name</td>
3892 dpurdie 591
                                   <% if newPackage > 0 Then %>
3884 dpurdie 592
                                        <td background="images/bg_form_lightgray.gif" class="form_item">
3892 dpurdie 593
                                          <input type="text" id="FRpkgName" name="FRpkgName" class="form_item" size="40" value="<%=parPkgName%>" onBlur="checkPackage()">
594
                                          <span id="cpError"></span>
3884 dpurdie 595
                                        </td>
596
                                    <% Else %>
3889 dpurdie 597
                                        <td background="images/bg_form_lightgray.gif" class="form_field"><%=parPkgName%></td>
3884 dpurdie 598
                                    <% End If %>
151 ghuddy 599
                                 </tr>
3884 dpurdie 600
 
601
                                 <!--Base View -------------->
3892 dpurdie 602
                                 <% if newPackage > 0 Then %>
3884 dpurdie 603
                                    <tr>
604
                                        <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">To Base View</td>
3892 dpurdie 605
                                        <td colspan="2" width="1%" nowrap background="images/bg_form_lightgray.gif" class="form_item">
606
                                           <select name="base_view_id" id="base_view_id" class="form_item" onBlur="checkBaseView()">
3884 dpurdie 607
                                              <option></option>
608
                                              <%Call Get_All_Base_Views(parBase_view_id)%>
609
                                           </select>
3892 dpurdie 610
                                           <span id="bvError"></span>
3884 dpurdie 611
                                        </td>
612
                                     </tr>
613
 
614
                                 <!--Personal View -------------->
3891 dpurdie 615
                                   <%If QStrPar("Pview") <> "disable" Then%>
3884 dpurdie 616
                                    <tr>
617
                                        <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">To Personal View</td>
618
                                       <td colspan="2" width="1%" nowrap background="images/bg_form_lightgray.gif">
619
                                          <select name="personal_view_id" class="form_item">
620
                                             <option value="">None</option>
621
                                             <%Call Get_All_Personal_Views(objAccessControl.UserId )%>
622
                                          </select>
623
                                       </td>
624
                                    </tr>
3891 dpurdie 625
                                    <%End If%>
3884 dpurdie 626
 
627
                                 <!--Dummy Line to highlight New Package Data -------------->
628
                                    <tr>
629
                                        <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field"></td>
630
                                        <td background="images/bg_form_lightbluedark.gif" class="form_field"></td>
631
                                    </tr>
632
                                 <% End If %>
633
 
634
                                 <!--Version Number Assignment -------------->
151 ghuddy 635
                                 <tr>
636
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Version Number Assignment</td>
637
                                    <td background="images/bg_form_lightgray.gif" class="form_txt">
3884 dpurdie 638
                                       <%
639
                                            Dim flagAuto, flagMan
640
                                            if bDisableAuto Then
641
                                                flagAuto = "disabled"
642
                                                flagMan = "checked"
643
                                            Else
644
                                                If bIsAuto Then
645
                                                    flagAuto = "checked"
646
                                                    flagMan = ""
647
                                                Else
648
                                                    flagAuto = ""
649
                                                    flagMan = "checked"
650
                                                End if
651
                                            End if
652
                                       %>
653
                                        <table>
654
                                        <tr>
655
                                            <td background="images/bg_form_lightgray.gif" class="form_txt">
656
 
657
                                            <input name="build_type" id="build_type" type="radio" value="A" <%=flagAuto%> onclick="changeToAutoVersionNumberAssignment();"> Auto
658
                                            <input name="build_type" id="build_type" type="radio" value="M" <%=flagMan%> onclick="changeToManualVersionNumberAssignment();"> Manual
659
                                        </td>
660
                                        </table>
151 ghuddy 661
                                    </td>
662
                                 </tr>
663
 
3884 dpurdie 664
                                 <!-- New Version Number -->
151 ghuddy 665
                                 <tr>
666
                                    <td background="images/bg_form_lightbluedark.gif"  width="20%" class="form_field">New Version Number</td>
3884 dpurdie 667
                                    <td>
668
                                        <table>
669
                                        <tr>
670
                                        <td background="images/bg_form_lightgray.gif" class="form_item">
3889 dpurdie 671
                                            <input type="text" id="FRvnumber"
672
                                                    name="FRvnumber"
3892 dpurdie 673
                                                    class="form_item" size="12" onBlur="checkVersionNumber()">
674
                                                    <span id="vnError"></span>
3884 dpurdie 675
                                        </td>
676
                                           <td id="pkgver" background="images/bg_form_lightgray.gif" class="form_item">
3892 dpurdie 677
                                           <%If NOT newPackage > 0 Then%>
3884 dpurdie 678
                                              <select id="FRpkgver"  name="FRpkgver" class="form_item">
679
                                                 <option value=""></option>
680
                                                 <%
681
                                                 Set rsLatest = OraDatabase.DbCreateDynaset( Get_Latest_All_Ext( objPkgInfo.Item("pkg_id"), parPv_id ), cint(0))
151 ghuddy 682
 
3884 dpurdie 683
                                                 If rsLatest.RecordCount > 0 Then
684
                                                    aVersions = rsLatest.GetRows()
685
                                                    lastRow = UBound( aVersions, 2 )
686
                                                    Set objSortHelper = New SortHelper
151 ghuddy 687
 
3884 dpurdie 688
                                                    ' Sort versions
689
                                                    Call objSortHelper.VersionSort( aVersions, 0, lastRow, rsLatest.FieldIndex("pkg_version") )
151 ghuddy 690
 
3884 dpurdie 691
                                                    ' Descending order
692
                                                    For i = lastRow To 0 Step -1
693
                                                    %>
694
                                                       <option value="<%=aVersions( rsLatest.FieldIndex("pkg_version"), i )%>" <%=aVersions( rsLatest.FieldIndex("selected"), i )%>>
695
                                                          <%If aVersions( rsLatest.FieldIndex("dlocked"), i ) = "Y" Then%>
696
                                                             R&nbsp;
697
                                                          <%Else%>
698
                                                             &nbsp;&nbsp;&nbsp;&nbsp;
699
                                                          <%End If%>
700
                                                          <%=aVersions( rsLatest.FieldIndex("pkg_version"), i )%>
701
                                                       </option>
702
                                                    <%
703
                                                    Next
704
                                                    Set objSortHelper = nothing
151 ghuddy 705
 
3884 dpurdie 706
                                                 End If
707
                                                 %>
708
                                              </select>&nbsp;Existing Versions (For Reference Only)
709
                                           <%End If%>
710
                                           </td>
711
                                        </tr>
712
                                        </table>
713
                                    </td>
151 ghuddy 714
                                 </tr>
715
                                 <tr>
716
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Version Extension</td>
717
                                    <td background="images/bg_form_lightgray.gif" class="form_item">
718
                                       <DIV id="divVersionExt" name="divVersionExt">
3892 dpurdie 719
                                          <select name="v_ext" id="v_ext" onchange="checkVersionNumber()">
151 ghuddy 720
                                             <%
721
                                             Call drawExtensionSelectBox( objPkgInfo.Item("v_ext"), true )
722
                                             %>
723
                                          </select>
724
                                       </DIV>
725
                                    </td>
726
                                 </tr>
727
 
728
                                 <tr>
729
                                    <td background="images/bg_form_lightbluedark.gif" width="20%" class="form_field">Reason For This Version</td>
730
                                    <td background="images/bg_form_lightgray.gif" nowrap width="100%" class="form_field">
3892 dpurdie 731
                                       <textarea name="FRreason" id="FRreason" class="form_item" style="width: 420px; height: 150px" onBlur="checkReason()"></textarea>
732
                                        <span id="frError"></span>
151 ghuddy 733
                                    </td>
734
                                 </tr>
735
 
3884 dpurdie 736
                                <tr id="change_type">
737
                                   <td background="images/bg_form_lightbluedark.gif" nowrap width="20%" class="form_field">Change Type</td>
738
                                   <td background="images/bg_form_lightgray.gif" >
739
                                      <table width="100%" border="0" cellspacing="0" cellpadding="0">
740
                                         <tr>
741
                                            <td width="1%">
742
                                              <%If bPatchOnly Then majorState = "disabled" %>
743
                                              <input name="change_type" type="radio" value="M" <%=majorState%>>
744
                                            </td>
745
                                            <td nowrap>
746
                                               <span class="form_field">Major Change</span>
747
                                            </td>
748
                                            <td>&nbsp;</td>
749
                                            <td>
750
                                               <span class="form_txt">A major number change indicates the contract of the package has changed in a non-backwardly compatible manner.</span>
751
                                            </td>
752
                                         </tr>
753
                                         <tr>
754
                                            <td colspan="4"><hr width="100%" size="1" noshade></td>
755
                                         </tr>
756
                                         <tr>
757
                                            <td width="1%">
758
                                              <%If bPatchOnly Then minorState = "disabled" %>
759
                                              <input name="change_type" type="radio" value="N" <%=minorState%>>
760
                                            </td>
761
                                            <td align="center" nowrap>
762
                                               <span class="form_field">Minor Change</span>
763
                                            </td>
764
                                            <td>&nbsp;</td>
765
                                            <td>
766
                                               <span class="form_txt">A minor number change indicates the contract of the package has changed in a backwardly compatible manner.</span>
767
                                            </td>
768
                                         </tr>
769
                                         <tr>
770
                                            <td colspan="4"><hr width="100%" size="1" noshade></td>
771
                                         </tr>
772
                                         <tr>
773
                                            <td width="1%">
774
                                               <input name="change_type" type="radio" value="P" <%=patchState%>>
775
                                            </td>
776
                                            <td nowrap>
777
                                               <span class="form_field">Patch Change</span>
778
                                            </td>
779
                                            <td>&nbsp;</td>
780
                                            <td>
781
                                               <span class="form_txt">A patch number change indicates the package has changed internally.</span>
782
                                            </td>
783
                                         </tr>
784
                                      </table>
151 ghuddy 785
 
3884 dpurdie 786
                                   </td>
787
                                </tr>
151 ghuddy 788
                                 <tr>
789
                                    <td nowrap><img src="images/h_trsp_dot.gif" width="120" height="1"></td>
790
                                    <td></td>
791
                                 </tr>
792
                                 <input type="hidden" name="FRnewver" id="FRnewver" value="hello">
793
                                 <input type="hidden" name="OLDpv_id" value="<%=parPv_id%>">
794
                                 <input type="hidden" name="rtag_id" value="<%=parRtag_id%>">
3884 dpurdie 795
                                 <input type="hidden" name="newPackage" value="<%=newPackage%>">
3892 dpurdie 796
                                 <% if NOT (newPackage > 0) Then %>
797
                                 <input type="hidden" id="FRpkgName" name="FRpkgName" value="<%=parPkgName%>">
798
                                 <%End If%>
151 ghuddy 799
                              </table>
800
                           </td>
801
                        </tr>
802
                        <tr>
803
                           <td width="1%">&nbsp;</td>
804
                           <td width="1%" nowrap class="form_field"><img src="images/h_trsp_dot.gif" width="1" height="1"></td>
805
                           <td nowrap width="100%" class="body_scol">
806
                              <input type="submit" name="btn" value="Submit" class="form_btn" onClick="return validateFormNEWversion();">
807
                              <input type="reset" name="btn" value="Cancel" class="form_btn" onClick="Dependency();">
808
                              <SPAN id="ProgressBar" name="ProgressBar" style="visibility:hidden;"><img src="images/i_processing.gif" width="11" height="17" align="absmiddle" hspace="3">Processing...</SPAN>
809
                              <br><br>
810
                           </td>
3894 dpurdie 811
                           <tr><td id="eMessage" colspan=3 class="err_alert">ERROR: Page Java script did not load</td><tr>
151 ghuddy 812
                        </tr>
813
                     </form>
814
                  </table>
815
                  <!-- END Body-->
816
               </td>
817
               <td width="1%" background="images/lbox_bgside_white.gif">&nbsp;</td>
818
            </tr>
819
            <tr>
820
               <td width="1%" background="images/lbox_bg_blue.gif" valign="bottom"><img src="images/lbox_bl_cnr_b.gif" width="13" height="13"></td>
821
               <td background="images/lbox_bg_blue.gif"></td>
822
               <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>
823
            </tr>
824
         </table>
825
      </td>
826
   </tr>
119 ghuddy 827
</table>