<%@LANGUAGE="VBSCRIPT"%> <% '===================================================== '| | '| Edit/View Build Configuration | '| | '===================================================== %> <% Option explicit ' Good idea to set when using redirect Response.Expires = 0 ' always load the page, dont store %> <% '------------ ACCESS CONTROL ------------------ %> <% '------------ Variable Definition ------------- Dim rsRep Dim parFPkgVersion Dim sLink Dim parPkgId Dim PackageName Dim imgLock Dim imgData Dim DestroyPackage Dim CanDestroyProjectPackage Dim CanDestroyPackage Dim hideRipple Dim rippleFilter '------------ Constants Declaration ----------- Const IMG_OFFICIAL = "" Const IMG_NOT_OFFICIAL = "" Const IMG_NOT_BUILDABLE = "" '------------ Variable Init ------------------- parFPkgVersion = RequestDefault("fpkgversion", "*") parPkgId = Request("pkg_id") If Request("hideRipple") = "True" Then hideRipple = True rippleFilter = " AND PV.BUILD_TYPE != 'Y'" Else hideRipple = False rippleFilter = "" End If '---------------------------------------------- ' Convert PKG_ID into a package name Function GetPackageName ( nPkgId ) Dim rsQry, query query = "SELECT PKG_NAME FROM PACKAGES WHERE PKG_ID = :PKG_ID" OraDatabase.Parameters.Add "PKG_ID", nPkgId, ORAPARM_INPUT, ORATYPE_NUMBER Set rsQry = OraDatabase.DbCreateDynaset( query, 0 ) OraDatabase.Parameters.Remove "PKG_ID" GetPackageName = rsQry("pkg_name") rsQry.Close() Set rsQry = nothing End Function '---------------------------------------------- ' Determine if a PKG_ID has any package-versions ' If not then it can be deleted Function hasNoVersions ( nPkgId ) Dim rsQry, query query = "select count(*) as count from package_versions where pkg_id = :PKG_ID" OraDatabase.Parameters.Add "PKG_ID", nPkgId, ORAPARM_INPUT, ORATYPE_NUMBER Set rsQry = OraDatabase.DbCreateDynaset( query, 0 ) OraDatabase.Parameters.Remove "PKG_ID" hasNoVersions = NOT rsQry("count") <> 0 rsQry.Close() Set rsQry = nothing End Function '==================== MAIN LINE =============================== If (parPkgId = "") Then Call Destroy_All_Objects Response.Redirect ("index.asp") End If PackageName = GetPackageName ( parPkgId ) '============================================================== Sub MainPanelContent %>
<% Dim aVersions Dim lastRow Dim objSortHelper Dim i OraDatabase.Parameters.Add "PKG_VERSION", Replace( parFPkgVersion, "*", "%" ), ORAPARM_INPUT, ORATYPE_VARCHAR2 OraDatabase.Parameters.Add "PKG_ID", parPkgId, ORAPARM_INPUT, ORATYPE_NUMBER Set rsRep = OraDatabase.DbCreateDynaset( GetQuery("FindPackageVersion.sql") & rippleFilter, 0 ) OraDatabase.Parameters.Remove "PKG_ID" OraDatabase.Parameters.Remove "PKG_VERSION" %>
<%If rsRep.RecordCount = 0 Then%> <%Else aVersions = rsRep.GetRows() lastRow = UBound( aVersions, 2 ) ' Sort versions Set objSortHelper = New SortHelper Call objSortHelper.VersionSort( aVersions, 0, lastRow, rsRep.FieldIndex("pkg_version") ) ' Not in a project context ' Only god-like users will have this permission CanDestroyProjectPackage = canShowControl( "DestroyPackage" ) ' Descending order For i = lastRow To 0 Step -1 If aVersions( rsRep.FieldIndex("build_type"), i ) = "U" Then imgLock = IMG_NOT_BUILDABLE imgData = 3 ElseIf (aVersions( rsRep.FieldIndex("dlocked"), i ) = "Y") OR (aVersions( rsRep.FieldIndex("dlocked"), i ) = "A") Then imgLock = IMG_OFFICIAL imgData = 1 Else imgLock = IMG_NOT_OFFICIAL imgData = 2 End If sLink = "dependencies.asp?pv_id="& aVersions( rsRep.FieldIndex("pv_id"), i ) ' User can try to delete package iff ' Have suffiecient access (unusual) ' They created it or is its owner ' The version is not in use by any release (allow to be in pending or WIP) ' [Not at the moment] The package was created less than xxxx days ago ' Is not locked or Approved for Autobuild CanDestroyPackage = CanDestroyProjectPackage If CanDestroyPackage = false Then If objAccessControl.UserId = aVersions( rsRep.FieldIndex("CREATOR_ID"), i ) OR objAccessControl.UserId = aVersions( rsRep.FieldIndex("OWNER_ID"), i )Then If aVersions( rsRep.FieldIndex("inuse"), i ) = 0 Then 'If aVersions( rsRep.FieldIndex("age") , i ) < 1000 Then If aVersions( rsRep.FieldIndex("dlocked"), i ) <> "Y" Then 'If aVersions( rsRep.FieldIndex("dlocked"), i ) <> "A" Then CanDestroyPackage = true 'End If End If 'End If End If End If End If ' Set destroy package action ' title will be added by javascript If CanDestroyPackage Then DestroyPackage = "" Else DestroyPackage = "" End If Dim testCount testCount = aVersions( rsRep.FieldIndex("test_count"), i ) If testCount = 0 Then testCount = "" ' Code to support (temp) Pulse import point Dim pulseTxt : pulseTxt = "" Dim PulseMark : PulseMark = aVersions( rsRep.FieldIndex("pkg_idext"), i ) Dim pulseImg If isNull(PulseMark) Then pulseImg = "src='images/abtn_sync.gif' width='16' height='16' class=lessOpacity" ElseIf Instr(PulseMark, "PulseImport.Branch") = 1 Then pulseImg = "src='images/bt_new_vtree.gif'" ElseIf PulseMark = "PulseImport" Then pulseImg = "src='images/abtn_sync.gif' width='16' height='16'" Else pulseImg = "src='images/s_warning.gif'" End If If pulseImg <> "" Then pulseTxt ="" End If %> <% Next rsRep.Close() End If %>
Package Versions
Results for <%=PackageName%>
Version Reason for Release Build
Reason
Lines of
Code
Auto
Tests
Build
Time
Licence Last Modified
<% Response.write "" If hideRipple Then Response.write "" Else Response.write "" End If Response.write "" %> Who Date
<%If hasNoVersions(parPkgId) Then %> This package name has no versions. <%BuildActionButtonClick TRUE, "Delete this package name", "Delete", true, _ "src='icons/i_destroy_package_sml.gif' width='15' height='15' border='0' align='absmiddle' hspace='2'", _ "MM_openVixIFrame('_delete_package_name.asp?pkgId="&parPkgId&"&bfile=index.asp','Delete Unused Package');"%>
<%Else%> Found 0 records - with current filters. <%End If%>
<%=imgLock%> " href="<%=sLink%>" class="body_link"><%=aVersions( rsRep.FieldIndex("pkg_version"), i )%> <%=NewLine_To_BR ( To_HTML( aVersions( rsRep.FieldIndex("comments"), i ) ) )%> <%=aVersions( rsRep.FieldIndex("reason"), i )%> <%=aVersions( rsRep.FieldIndex("code_lines"), i )%> <%=testCount%> <%=aVersions( rsRep.FieldIndex("build_time"), i )%> <%=aVersions( rsRep.FieldIndex("licence"), i )%> <%=emailField(enum_imgUser & aVersions( rsRep.FieldIndex("full_name"), i ), aVersions( rsRep.FieldIndex("user_email"), i ))%> <%=DisplayShortDateTime ( aVersions( rsRep.FieldIndex("modified_stamp"), i ) )%> <%=DestroyPackage%>

<% End Sub %> Release Manager <%bJqueryDataTables=true%> <%sJqueryDataTablesCss="dataTables.vix.grey.css"%>
<%Call MainPanelContent%>