Subversion Repositories DevTools

Rev

Rev 5925 | Rev 5964 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5925 Rev 5929
Line 24... Line 24...
24
End Sub
24
End Sub
25
 
25
 
26
Sub RenderActionButtons
26
Sub RenderActionButtons
27
'--Determine whether the release has an associated MASS_REF
27
'--Determine whether the release has an associated MASS_REF
28
Dim rsAssoc, AssocMASSREF, AssocMASSREFValue, StatesUsed
28
Dim rsAssoc, AssocMASSREF, AssocMASSREFValue, StatesUsed
29
If Request("rtag_id") <> "" Then
29
If parRtag_id > 0 Then
30
   Set rsAssoc = OraDatabase.DbCreateDynaset( "SELECT ASSOC_MASS_REF, PRODUCT_STATE_USED FROM RELEASE_TAGS WHERE RTAG_ID="&Request("rtag_id"), cint(0))
30
   Set rsAssoc = OraDatabase.DbCreateDynaset( "SELECT ASSOC_MASS_REF, PRODUCT_STATE_USED FROM RELEASE_TAGS WHERE RTAG_ID="&parRtag_id, cint(0))
31
   AssocMASSREFValue = rsAssoc("ASSOC_MASS_REF")
31
   AssocMASSREFValue = rsAssoc("ASSOC_MASS_REF")
32
   StatesUsed = rsAssoc("PRODUCT_STATE_USED")
32
   StatesUsed = rsAssoc("PRODUCT_STATE_USED")
33
      If NOT IsNull(rsAssoc("ASSOC_MASS_REF")) Then
33
      If NOT IsNull(rsAssoc("ASSOC_MASS_REF")) Then
34
         AssocMASSREF = True
34
         AssocMASSREF = True
35
      Else
35
      Else
Line 39... Line 39...
39
   Set rsAssoc = nothing
39
   Set rsAssoc = nothing
40
End If
40
End If
41
 
41
 
42
'-- Define Action buttons on this tab
42
'-- Define Action buttons on this tab
43
If IsNull(pkgInfoHash.Item("is_patch")) Then
43
If IsNull(pkgInfoHash.Item("is_patch")) Then
44
   If Request("rtag_id") <> "" Then
44
   If parRtag_id > 0 Then
45
      If (pkgInfoHash.Item("can_edit_in_project") = "1" OR  _
45
      If (pkgInfoHash.Item("can_edit_in_project") = "1" OR  _
46
         canShowControlInProject("AlterReleaseContentsInRestrictiveMode")) OR (pkgInfoHash.Item("v_ext") = ".mas" AND pkgInfoHash.Item("v_ext") = ".cr" OR NOT AssocMASSREF OR NOT IsNull(pkgInfoHash.Item("v_ext"))  ) _
46
         canShowControlInProject("AlterReleaseContentsInRestrictiveMode")) OR (pkgInfoHash.Item("v_ext") = ".mas" AND pkgInfoHash.Item("v_ext") = ".cr" OR NOT AssocMASSREF OR NOT IsNull(pkgInfoHash.Item("v_ext"))  ) _
47
 
47
 
48
      Then
48
      Then
49
         If pkgInfoHash.Item("is_deployable") = "Y" AND pkgInfoHash.Item("dlocked") = "Y" AND StatesUsed = "Y" Then
49
         If pkgInfoHash.Item("is_deployable") = "Y" AND pkgInfoHash.Item("dlocked") = "Y" AND StatesUsed = "Y" Then
Line 105... Line 105...
105
            aTabBtnsDef = Array( "btnVersionHistory", "btnStickyNotes", "btnDeprecation", "btnUnDeprecation")
105
            aTabBtnsDef = Array( "btnVersionHistory", "btnStickyNotes", "btnDeprecation", "btnUnDeprecation")
106
         End If
106
         End If
107
      End If
107
      End If
108
 
108
 
109
   Else
109
   Else
110
      ' For standalone Packages (Not view in project release)
110
      ' For standalone Packages (Not viewed in project release)
111
      aTabBtnsDef = Array("btnVersionHistory", "btnReversionPackage", "btnDestroyWip", "width=20", "btnStickyNotes")
111
      aTabBtnsDef = Array("btnVersionHistory", "btnRecycleBin", "btnReversionPackage", "width=20", "btnStickyNotes")
112
   End If
112
   End If
113
 
113
 
114
Else
114
Else
115
   ' For Patches
115
   ' For Patches
116
   'aTabBtnsDef = Array("btnMakePending", "btnApprovePackage", "btnMakeRelease", "btnMakeUnrelease", "btnRejectPackage", "width=20", _
116
   'aTabBtnsDef = Array("btnMakePending", "btnApprovePackage", "btnMakeRelease", "btnMakeUnrelease", "btnRejectPackage", "width=20", _
Line 236... Line 236...
236
 
236
 
237
   If AssocMASSREF Then
237
   If AssocMASSREF Then
238
      Call objBtnControl.Visible ( "btnNewVersion-MASSREF", "Y" )
238
      Call objBtnControl.Visible ( "btnNewVersion-MASSREF", "Y" )
239
   End If
239
   End If
240
 
240
 
241
   If Request("rtag_id") <> "" AND canShowControlInProject("DeprecatePackage") Then
241
   If (parRtag_id > 0) AND canShowControlInProject("DeprecatePackage") Then
242
      Dim rsDeprecate
242
      Dim rsDeprecate
243
      If NOT IsNull(pkgInfoHash.Item ("v_ext")) Then
243
      If NOT IsNull(pkgInfoHash.Item ("v_ext")) Then
244
         Set rsDeprecate = OraDatabase.DbCreateDynaset("SELECT * FROM DEPRECATED_PACKAGES WHERE RTAG_ID ="& Request("rtag_id") &" AND V_EXT ='"& pkgInfoHash.Item ("v_ext") &"' AND PKG_ID = "& pkgInfoHash.Item ("pkg_id") &"", cint(0))
244
         Set rsDeprecate = OraDatabase.DbCreateDynaset("SELECT * FROM DEPRECATED_PACKAGES WHERE RTAG_ID ="& parRtag_id &" AND V_EXT ='"& pkgInfoHash.Item ("v_ext") &"' AND PKG_ID = "& pkgInfoHash.Item ("pkg_id") &"", cint(0))
245
      Else
245
      Else
246
         Set rsDeprecate = OraDatabase.DbCreateDynaset("SELECT * FROM DEPRECATED_PACKAGES WHERE RTAG_ID ="& Request("rtag_id") &" AND V_EXT IS NULL AND PKG_ID = "& pkgInfoHash.Item ("pkg_id") &"", cint(0))
246
         Set rsDeprecate = OraDatabase.DbCreateDynaset("SELECT * FROM DEPRECATED_PACKAGES WHERE RTAG_ID ="& parRtag_id &" AND V_EXT IS NULL AND PKG_ID = "& pkgInfoHash.Item ("pkg_id") &"", cint(0))
247
      End If
247
      End If
248
 
248
 
249
      If (rsDeprecate.RecordCount) = 0 Then
249
      If (rsDeprecate.RecordCount) = 0 Then
250
         Call objBtnControl.Visible ( "btnDeprecation", "Y" )
250
         Call objBtnControl.Visible ( "btnDeprecation", "Y" )
251
      Else
251
      Else
Line 255... Line 255...
255
      Set rsDeprecate = nothing
255
      Set rsDeprecate = nothing
256
   Else
256
   Else
257
    Call objBtnControl.Active ( "btnDeprecation",  "N")
257
    Call objBtnControl.Active ( "btnDeprecation",  "N")
258
    Call objBtnControl.Visible ( "btnDeprecation",  "Y")
258
    Call objBtnControl.Visible ( "btnDeprecation",  "Y")
259
   End If
259
   End If
-
 
260
 
260
   Call objBtnControl.Active ( "btnApprovePackage", "N" )
261
   Call objBtnControl.Active ( "btnApprovePackage", "N" )
261
   Call objBtnControl.Active ( "btnMakeRelease", "N" )
262
   Call objBtnControl.Active ( "btnMakeRelease", "N" )
262
 
263
 
263
   If pkgInfoHash.Item("can_unofficial") = "true" OR canActionControlInProject("EditCriticalInfoForLockedPackage") Then
264
   If pkgInfoHash.Item("can_unofficial") = "true" OR canActionControlInProject("EditCriticalInfoForLockedPackage") Then
264
      Call objBtnControl.Visible ( "btnMakeUnrelease", "Y" )
265
      Call objBtnControl.Visible ( "btnMakeUnrelease", "Y" )
Line 283... Line 284...
283
 
284
 
284
 
285
 
285
ElseIf pkgInfoHash.Item ("dlocked") = "P" Then
286
ElseIf pkgInfoHash.Item ("dlocked") = "P" Then
286
   ' In Pending
287
   ' In Pending
287
   Call objBtnControl.Visible ( "btnMakePending", "N" )
288
   Call objBtnControl.Visible ( "btnMakePending", "N" )
288
 
-
 
289
   Call ActivateButtonAccordingToReleaseModeAndPermissions("btnApprovePackage", "ApproveForAutoBuild")
289
   Call ActivateButtonAccordingToReleaseModeAndPermissions("btnApprovePackage", "ApproveForAutoBuild")
290
 
-
 
291
   Call ActivateButtonAccordingToReleaseModeAndPermissions("btnRejectPackage", "RejectPackageFromPending")
290
   Call ActivateButtonAccordingToReleaseModeAndPermissions("btnRejectPackage", "RejectPackageFromPending")
292
 
291
 
293
ElseIf pkgInfoHash.Item ("dlocked") = "A" Then
292
ElseIf pkgInfoHash.Item ("dlocked") = "A" Then
294
   ' In Pending, Approved For Autobuild
293
   ' In Pending, Approved For Autobuild
295
   Call objBtnControl.Visible ( "btnMakePending", "N" )
294
   Call objBtnControl.Visible ( "btnMakePending", "N" )
Line 307... Line 306...
307
   Else
306
   Else
308
      Call objBtnControl.Active ( "btnMakeUnrelease", "N" )
307
      Call objBtnControl.Active ( "btnMakeUnrelease", "N" )
309
   End If
308
   End If
310
 
309
 
311
   '--- Allow failed auto-builds to be rejected back to WIP, conditions allowing.
310
   '--- Allow failed auto-builds to be rejected back to WIP, conditions allowing.
312
   If pkgInfoHash.Item("build_type") = "A" AND Request("rtag_id") <> "" Then
311
   If pkgInfoHash.Item("build_type") = "A" AND parRtag_id > 0 Then
313
      If isInDoNotRippleTable( Request("rtag_id"), pkgInfoHash.Item("pv_id") ) = TRUE Then
312
      If isInDoNotRippleTable( parRtag_id, pkgInfoHash.Item("pv_id") ) = TRUE Then
314
 
-
 
315
         Call objBtnControl.Visible ( "btnRejectAutobuildPackage", "Y" )
313
         Call objBtnControl.Visible ( "btnRejectAutobuildPackage", "Y" )
316
         Call ActivateButtonAccordingToReleaseModeAndPermissions("btnRejectAutobuildPackage", "RejectPackageFromPending")
314
         Call ActivateButtonAccordingToReleaseModeAndPermissions("btnRejectAutobuildPackage", "RejectPackageFromPending")
317
      End If
315
      End If
318
   End If
316
   End If
319
 
317
 
Line 346... Line 344...
346
   Call objBtnControl.Visible ( "btnObsoletePatch", "Y" )
344
   Call objBtnControl.Visible ( "btnObsoletePatch", "Y" )
347
Else
345
Else
348
   Call objBtnControl.Visible ( "btnUnobsoletePatch", "Y" )
346
   Call objBtnControl.Visible ( "btnUnobsoletePatch", "Y" )
349
End If
347
End If
350
 
348
 
-
 
349
If NOT (parRtag_id > 0) Then
-
 
350
    ' Not shown in the context of a Release
-
 
351
    ' Determine if the package can be reversioned or destroyed
-
 
352
 
-
 
353
    Call objBtnControl.Visible ( "btnRecycleBin", "Y" )
-
 
354
    Call objBtnControl.Visible ( "btnReversionPackage" , "Y")
-
 
355
    Call objBtnControl.ReadOnly ( "btnReversionPackage" , "Y")
-
 
356
 
351
If canShowControlInProject("DestroyPackage") Then
357
    If canShowControlInProject("DestroyPackage") Then
352
   Call objBtnControl.Visible ( "btnRecycleBin", "Y" )
358
       Call objBtnControl.Visible ( "btnRecycleBin", "Y" )
-
 
359
    ElseIf (objAccessControl.UserId = pkgInfoHash.Item("creator_id") ) OR (objAccessControl.UserId = pkgInfoHash.Item("owner_id")) Then
-
 
360
        'If aVersions( rsVB.FieldIndex("inuse"), i ) = 0 Then
-
 
361
            'If aVersions( rsVB.FieldIndex("age") , i ) < 1000 Then
-
 
362
                If pkgInfoHash.Item ("dlocked") <> "Y" Then
-
 
363
                    'If pkgInfoHash.Item ("dlocked") <> "A" Then
-
 
364
                        Call objBtnControl.Active ( "btnRecycleBin", "Y" )
-
 
365
                    'End If
-
 
366
                End If
-
 
367
            'End If
-
 
368
        'End If
-
 
369
    End If
-
 
370
 
-
 
371
    ' Only if Unlocked or Rejected
-
 
372
    If pkgInfoHash.Item ("dlocked") = "N" OR pkgInfoHash.Item ("dlocked") = "R" Then 
-
 
373
        Call objBtnControl.Active ( "btnReversionPackage" , "Y")
-
 
374
    End If
353
End If
375
End If
354
 
376
 
355
'--- Access Control Action Relationships ---
377
'--- Access Control Action Relationships ---
356
 
378
 
357
 
-
 
358
' DEVI-45275 - Merges now occur via the Pending tab. Merge candidates are marked with a (planned) operation
379
' DEVI-45275 - Merges now occur via the Pending tab. Merge candidates are marked with a (planned) operation
359
' of "A" for add, or "S" for subtract. If the package version is one of these (within the context of the
380
' of "A" for add, or "S" for subtract. If the package version is one of these (within the context of the
360
' release of coarse), manipulate the MakeRelease button (of which there are now 3 types) accordingly.
381
' release of coarse), manipulate the MakeRelease button (of which there are now 3 types) accordingly.
361
If ( pkgInfoHash.Item ("planned_operation") = "A" OR pkgInfoHash.Item ("planned_operation") = "S") Then
382
If ( pkgInfoHash.Item ("planned_operation") = "A" OR pkgInfoHash.Item ("planned_operation") = "S") Then
362
 
383
 
Line 399... Line 420...
399
    Call objBtnControl.Active ( "btnMoveWIPToRelease", "N" )
420
    Call objBtnControl.Active ( "btnMoveWIPToRelease", "N" )
400
    Call objBtnControl.Active ( "btnAddDaemonInstTestBuildPackage", "N" )
421
    Call objBtnControl.Active ( "btnAddDaemonInstTestBuildPackage", "N" )
401
    Call objBtnControl.Active ( "btnMakeUnrelease", "N" )
422
    Call objBtnControl.Active ( "btnMakeUnrelease", "N" )
402
    Call objBtnControl.Active ( "btnMakePending", "N" )
423
    Call objBtnControl.Active ( "btnMakePending", "N" )
403
    Call objBtnControl.Active ( "btnNewVersion", "N" )
424
    Call objBtnControl.Active ( "btnNewVersion", "N" )
-
 
425
    Call objBtnControl.Active ( "btnRecycleBin", "N")
404
End If
426
End If
405
 
427
 
406
'-- Disable if the Package is imported as a part of an SDK
428
'-- Disable if the Package is imported as a part of an SDK
407
'   Or as part of a linked Release
429
'   Or as part of a linked Release
408
If (pkgInfoHash.Item("can_edit_in_project") <> "1") Then
430
If (pkgInfoHash.Item("can_edit_in_project") <> "1") Then
Line 417... Line 439...
417
    Call objBtnControl.Active ( "btnRejectPackage",  "N")
439
    Call objBtnControl.Active ( "btnRejectPackage",  "N")
418
    Call objBtnControl.Active ( "btnRejectAutobuildPackage",  "N")
440
    Call objBtnControl.Active ( "btnRejectAutobuildPackage",  "N")
419
    Call objBtnControl.Active ( "btnMakeUnrelease", "N")
441
    Call objBtnControl.Active ( "btnMakeUnrelease", "N")
420
    Call objBtnControl.Active ( "btnMoveToView",  "N")
442
    Call objBtnControl.Active ( "btnMoveToView",  "N")
421
    Call objBtnControl.Active ( "btnMoveWIPToRelease",  "N")
443
    Call objBtnControl.Active ( "btnMoveWIPToRelease",  "N")
422
    Call objBtnControl.Active ( "btnReversionPackage", "N")
-
 
423
    Call objBtnControl.Active ( "btnDeprecation",  "N")
444
    Call objBtnControl.Active ( "btnDeprecation",  "N")
424
    Call objBtnControl.Active ( "btnUnDeprecation",  "N")
445
    Call objBtnControl.Active ( "btnUnDeprecation",  "N")
425
    Call objBtnControl.Active ( "btnAddDaemonInstRipplePackage", "N")
446
    Call objBtnControl.Active ( "btnAddDaemonInstRipplePackage", "N")
426
End If
447
End If
427
 
448