<%@LANGUAGE="VBSCRIPT"%> <% Option explicit Response.Expires = 0 ' always load the page, dont store %> <% '===================================================== ' System Lock Package '===================================================== %> <% '------------ ACCESS CONTROL ------------------ %> <% '------------ Variable Definition ------------- Dim parPv_id Dim QueryString, rsQry '------------ Constants Declaration ----------- '------------ Variable Init ------------------- parPv_id = QStrPar("pv_id") parRtag_id = QStrPar("rtag_id") '---------------------------------------------- %> <% Sub LockPackage () OraDatabase.Parameters.Add "PV_ID", Request("pv_id"), ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER objEH.TryORA ( OraSession ) On Error Resume Next OraDatabase.ExecuteSQL _ "BEGIN Lock_Package( :PV_ID, :USER_ID ); END;" objEH.CatchORA ( OraSession ) OraDatabase.Parameters.Remove "PV_ID" OraDatabase.Parameters.Remove "USER_ID" End Sub %> <% 'Process submition '--------------------------------------- ' THIS IS FOR SYSTEM ADMIN ONLY '--------------------------------------- QueryString = "SELECT pv.DLOCKED, pv.IS_PATCH FROM PACKAGE_VERSIONS pv WHERE pv.PV_ID = "& parPv_id Set rsQry = OraDatabase.DbCreateDynaset( QueryString, cint(0)) Dim bis_patch: bis_patch = Not IsNull(rsQry("is_patch")) Dim spkgtype: spkgtype = iif(bis_patch,"patch","package") Dim bcan_unlock If bis_patch Then bcan_unlock = objAccessControl.IsDataActive ("PROJECTS", DB_PROJ_ID, "EditProjects") AND objAccessControl.IsActive("UnlockPatch") Else bcan_unlock = objAccessControl.IsActive("EditCriticalInfoForLockedPackage") End If If bcan_unlock Then If rsQry("dlocked") = "N" Then Call LockPackage () If bis_patch Then Response.Redirect ( "_generate_release_notes.asp?rfile=dependencies.asp&pv_id="& parPv_id &"&rtag_id="& parRtag_id ) else Response.Redirect ( "fixed_issues.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id ) End If Else Call RaiseMsg(enum_MSG_ERROR, "Can only lock a " & spkgtype & " that is currently unlocked." ) End If Else Call RaiseMsg(enum_MSG_ERROR, "You do not have permissions to lock/unlock " & spkgtype & "." ) End If rsQry.Close Set rsQry = nothing %>