Rev 5901 | Rev 6176 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<%'===================================================================' Package Common'===================================================================%><!--#include file="../class/classTemplateManager.asp"--><!--#include file="../class/classTabControl.asp"--><!--#include file="../class/classActionButtonControl.asp"--><!--#include file="daemon_instructions.asp"--><!--#include file="daemon_status.asp"--><!--#include file="../_pkg_action_buttons.asp"--><%'------------ VARIABLE DEFINITION -------------Dim parPv_idDim nEnvTab ' remember environment tabDim objBtnControlDim aTabBtnsDef'------------ CONSTANTS DECLARATION -----------'------------ VARIABLE INIT -------------------parPv_id = Request("pv_id")Set objBtnControl = New ActionButtonControl'------------ CONDITIONS ----------------------'----------------------------------------------%><%'------------ RUN BEFORE PAGE RENDER ----------'--- Make sure rtag_id is always presentIf (Request("rtag_id") = "") AND (Request("pv_id") = "") ThenCall Destroy_All_ObjectsResponse.Redirect("index.asp")End If'--- Rebuild EnvironmentIf (Request("rtag_id") <> "") ThenCall Rebuild_Environment ( parRtag_id )End If'--- Persist following parameters between postbacksobjPMod.PersistInQryString ( aPersistList(enumPAR_RTAG_ID) )objPMod.PersistInQryString ( aPersistList(enumPAR_PV_ID) )'--- Get Environment (lefthand side menu) tabnEnvTab = GetEnvTab ( Request("envtab") )'--- Get Package General InformationSet pkgInfoHash = CreateObject("Scripting.Dictionary")If Request("pv_id") <> "" ThenCall Get_Pkg_Info ( Request("pv_id"), Request("rtag_id") )' Make sure pv_id exists as it may be removedIf pkgInfoHash.Item("pv_id") = "" ThenCall Destroy_All_ObjectsResponse.Redirect ("dependencies.asp?rtag_id="& Request("rtag_id"))End IfElseIf isDefined("allowNoPackage") Then' Get basic information - if no package is present' Used by dependencies.asp, find.asp and sdk_add_release.aspCall Get_NoPkg_Info( Request("rtag_id") )Else' Don't know how we got here without a pvid - display default pageCall Destroy_All_ObjectsResponse.Redirect ("dependencies.asp?rtag_id="& Request("rtag_id"))End If'----------------------------------------------%><%'-----------------------------------------------------------------------------------------------------------------------------Sub RenderPackageProperties (irtag_id)%><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td><%If pkgInfoHash.Item ("is_patch") = "Y" Then'--- PATCH ---Response.write "<br><a href='patches.asp?pv_id="& pkgInfoHash.Item ("patch_parent_id") &"&rtag_id="& Request("rtag_id") &"' class='txt_linked'><img src='icons/i_caretone.gif' hspace='2' border='0' align='absmiddle'>Back To "& pkgInfoHash.Item ("pkg_name") &"</a><br><br>"If pkgInfoHash.Item ("is_obsolete") = "Y" ThenDim rsTempSet rsTemp = OraDatabase.DbCreateDynaset( "select patch_obsoleted_by from package_patches where patch_id ="&pkgInfoHash.Item ("pv_id"), cint(0))If rsTemp("patch_obsoleted_by") <> "" ThenSet rsTemp = OraDatabase.DbCreateDynaset( "select pkg_version from package_versions where pv_id ="&rsTemp("patch_obsoleted_by"), cint(0))Call Messenger ( "<SPAN class='err_alert'><b>Patch Is Obsolete!</b></SPAN><br>"& NewLine_To_BR( "<b>Obsoleted by patch "& rsTemp("pkg_version") & ". </b> " ) & NewLine_To_BR( pkgInfoHash.Item ("obsolete_comments") ), 3, "100%" )rsTemp.Close()Set rsTemp = nothingElseCall Messenger ( "<SPAN class='err_alert'><b>Patch Is Obsolete!</b></SPAN><br>"& NewLine_To_BR( pkgInfoHash.Item ("obsolete_comments") ), 3, "100%" )End IfResponse.write enum_imgPatchObsoleteElseResponse.write enum_imgPatchEnd IfIf pkgInfoHash.Item ("dlocked") = "Y" ThenResponse.write "<SPAN class='lbox_ttl'>"& pkgInfoHash.Item ("pkg_version") &"<img src='images/i_locked.gif' width='12' height='14' border='0' hspace='5' align='top'></SPAN>"ElseResponse.write "<SPAN class='lbox_ttl'>"& pkgInfoHash.Item ("pkg_version") &"</SPAN>"End IfElse'--- PACKAGE ---Response.write "<table cellspacing=1 cellpadding=0>"Response.write "<tr>"Response.write "<td>"Response.write "<SPAN class='lbox_ttl'>"& pkgInfoHash.Item ("pkg_name") &" "& pkgInfoHash.Item ("pkg_version") & " " & " " & "</SPAN>"Response.write "</td>"' dlocked: Y - release, N - unlocked, P - pending, A - approved, R - rejectedDim lStateIf pkgInfoHash.Item ("dlocked") = "Y" ThenlState = enum_imgReleasedLockedElseIf pkgInfoHash("is_released") ThenlState = enum_imgReleasedUnlockedElseIf pkgInfoHash.Item ("dlocked") = "P" ThenlState = enum_imgPendingElseIf (pkgInfoHash.Item ("dlocked") = "N") OR (pkgInfoHash.Item ("dlocked") = "R") Then'ElseIf (irtag_id<>"") ThenlState = enum_imgBuildingEnd IfIf NOT isEmpty(lState) Then Response.write "<td>" & lState & "</td>"If pkgInfoHash.Item ("product_state") = 4 ThenResponse.write "<td>" & enum_imgProductRejected & "</td>"End IfDim state_iconIf Not IsNull(pkgInfoHash.Item ("deprecated_state")) ThenSelect Case CInt(pkgInfoHash.Item ("deprecated_state"))Case enumPKG_STATE_DEPRECATEDstate_icon = enum_imgDeprecatedCase enumPKG_STATE_DEPRECATED_DEPENDENTstate_icon = enum_imgDeprecatedDependentEnd SelectIf NOT isEmpty(state_icon) Then Response.write "<td>" & state_icon & "</td>"End IfIf Not (IsNull(pkgInfoHash.Item ("pkg_state")) or pkgInfoHash.Item ("pkg_state") = 0) ThenSelect Case CInt(pkgInfoHash.Item ("pkg_state"))Case enumPKG_STATE_MAJORstate_icon = enum_imgCriticalCase enumPKG_STATE_MINORstate_icon = enum_imgWarningCase enumPKG_STATE_MAJOR_READYstate_icon = enum_imgCReadyCase enumPKG_STATE_MINOR_READYstate_icon = enum_imgWReadyCase enumPKG_NOT_FOUNDstate_icon = enum_imgNotFoundCase enumPKG_STATE_NEW_PATCHstate_icon = enum_imgPatchAvailableCase enumPKG_ADVISORY_RIPPLEstate_icon = enum_imgARCase enumPKG_ADVISORY_RIPPLE_DEPENDENTstate_icon = enum_imgARDCase enumPKG_SDK_IMPORTstate_icon = enum_imgSdkImportCase enumPKG_SDK_DEPENDENCYstate_icon = enum_imgSdkDepEnd SelectResponse.write "<td>"Response.write state_iconResponse.write "</td>"End If' Package peg status' Not done as a part of pkg_state some states are not mutually exclusiveIf pkgInfoHash.Item ("is_pegged") ThenResponse.write "<td>"Response.write enum_imgGreenPinResponse.write "</td>"End If'build_type', and a value of 'M' = manual and 'A' = auto , 'U' = UnBuildableIf pkgInfoHash.Item("build_type") = "M" ThenResponse.write "<td>"Response.write "<img src='icons/i_manual.gif' width='12' height='14' border='0' title='Manually built package'>"Response.write "</td>"ElseIf pkgInfoHash.Item("build_type") = "U" ThenResponse.write "<td>"Response.write enum_imgUnBuildableResponse.write "</td>"End If' check if a daemon instruction exists for this packageDim sDmInstrsDmInstr = GetOpCodeListForRtagIdAndPvId( "", Request("rtag_id"), pkgInfoHash.Item("pv_id"), "" )If sDmInstr <> "" ThenResponse.write "<td>"Response.write "<img src='icons/i_daemon_instr.gif' width='19' height='17' border='0' title='Daemon instruction:" & " " & sDmInstr & " " & "Click to view details." & "' onClick=""location.href='build_status.asp?rtag_id=" & irtag_id & "';"" >"Response.write "</td>"End If' check if this package has a build failure fileIf pkgInfoHash("has_build_failure") ThenResponse.write "<td>"Response.write "<img src='icons/i_build_failure.gif' width='19' height='17' border='0' title='Package build failure." & " " & "Click to view details." &"' onClick=""location.href='build_status.asp?rtag_id=" & irtag_id & "';"" >"Response.write "</td>"ElseIf pkgInfoHash("is_excluded") Then' check if this package has been excluded from the buildResponse.write "<td>"Response.write "<img src='icons/i_build_exclusion.gif' width='19' height='17' border='0' title='Package excluded from build." & " " & "Click to view details." &"' onClick=""location.href='build_status.asp?rtag_id=" & irtag_id & "';"" >"Response.write "</td>"End If' Warn if the package is not in the package archive' Use http access for package test as this does not require AD authenticationIf (pkgInfoHash.Item ("dlocked") = "Y") ThenIf NOT testArchiveAccessPkg(pkgInfoHash.Item ("pkg_name"), pkgInfoHash.Item ("pkg_version")) ThenResponse.write "<td>"Response.write enum_imgNotInArchiveResponse.write "</td>"End IfEnd If' Warn if the package versionis not in the releaseIf pkgInfoHash.Exists("notInRelease") ThenResponse.write "<td>"If pkgInfoHash.Exists("pv_id_InRelease") Then Response.write "<a href="& scriptName & "?pv_id=" & pkgInfoHash.Item("pv_id_InRelease") &"&rtag_id="&irtag_id&">"Response.write enum_imgNotInReleaseIf pkgInfoHash.Exists("pv_id_InRelease") Then Response.write "</a>"Response.write "</td>"End IfResponse.write "</tr>"Response.write "</table>"End If%></td></tr><tr><td style=color:Red><%'=GetOpCodeListForRtagIdAndPvId( "NOTE: '", Request("rtag_id"), pkgInfoHash.Item("pv_id"), "' has been requested" )%></td></tr></table><%End Sub'-----------------------------------------------------------------------------------------------------------------------------Sub RenderStatus(irtag_id,ipv_id)%><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td width="100%"><!-- PACKAGE PROPERTIES ---------------------------- --><%If ipv_id <> "" ThenCall RenderPackageProperties (irtag_id)End If%></td></tr></table><%End Sub'-----------------------------------------------------------------------------------------------------------------------------Sub RenderDaemonBar(irtag_id,ipv_id)%><!-- Daemon Bar ---------------------------- --><table border="0" cellspacing="0" cellpadding="0"><tr><td valign=bottom><%If irtag_id<>"" ThenDim objDmSts: Set objDmSts = New DaemonStatus%><fieldset style="margin:0px;padding:2px;"><%Call objDmSts.RenderDaemonStatusForRelease(irtag_id,16)%></fieldset><%Set objDmSts = NothingEnd If%></td></tr></table><%End Sub'-----------------------------------------------------------------------------------------------------------------------------Sub RenderActionBar(irtag_id,ipv_id)Response.write("<table border=0 cellpadding=0 cellspacing=0>")Response.write(" <tr>")Response.write(" <td width='99%'>")If Not ((ipv_id = "") or (IsNull(ipv_id))) ThenCall RenderActionButtonsEnd IfResponse.write(" </td>")Response.write(" <td width='1%'>")Call RenderDaemonBar(irtag_id,ipv_id)Response.write(" </td>")Response.write(" </tr>")Response.write("</table>")End Sub'-----------------------------------------------------------------------------------------------------------------------------%>