Subversion Repositories DevTools

Rev

Rev 5898 | Rev 5957 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
119 ghuddy 1
<%
2
'===================================================================
141 ghuddy 3
'                     Package Common
119 ghuddy 4
'===================================================================
5
%>
6
<!--#include file="../class/classTemplateManager.asp"-->
7
<!--#include file="../class/classTabControl.asp"-->
8
<!--#include file="../class/classActionButtonControl.asp"-->
147 ghuddy 9
<!--#include file="daemon_instructions.asp"-->
183 brianf 10
<!--#include file="daemon_status.asp"-->
185 brianf 11
<!--#include file="../_pkg_action_buttons.asp"-->
119 ghuddy 12
<%
13
'------------ VARIABLE DEFINITION -------------
14
Dim parPv_id
141 ghuddy 15
Dim nEnvTab         ' remember environment tab
119 ghuddy 16
Dim objBtnControl
17
Dim aTabBtnsDef
18
'------------ CONSTANTS DECLARATION -----------
19
'------------ VARIABLE INIT -------------------
20
parPv_id = Request("pv_id")
21
Set objBtnControl = New ActionButtonControl
22
'------------ CONDITIONS ----------------------
23
'----------------------------------------------
24
%>
25
<%
26
'------------ RUN BEFORE PAGE RENDER ----------
27
 
28
'--- Make sure rtag_id is always present
29
If (Request("rtag_id") = "") AND (Request("pv_id") = "") Then Response.Redirect("index.asp")
30
 
31
 
32
'--- Rebuild Environment
33
If (Request("rtag_id") <> "") Then
141 ghuddy 34
   Call Rebuild_Environment ( parRtag_id )
119 ghuddy 35
End If
36
 
37
'--- Persist following parameters between postbacks
38
objPMod.PersistInQryString ( aPersistList(enumPAR_RTAG_ID) )
39
objPMod.PersistInQryString ( aPersistList(enumPAR_PV_ID) )
40
 
41
 
42
'--- Get Environment (lefthand side menu) tab
43
nEnvTab = GetEnvTab ( Request("envtab") )
44
 
45
 
46
'--- Get Package General Information
47
Set pkgInfoHash = CreateObject("Scripting.Dictionary")
48
If Request("pv_id") <> "" Then
141 ghuddy 49
   Call Get_Pkg_Info ( Request("pv_id"), Request("rtag_id") )
119 ghuddy 50
 
141 ghuddy 51
   ' Make sure pv_id exists as it may be removed
52
   If pkgInfoHash.Item("pv_id") = "" Then Response.Redirect ("dependencies.asp?rtag_id="& Request("rtag_id"))
119 ghuddy 53
 
5098 dpurdie 54
ElseIf isDefined("allowNoPackage") Then
55
    ' Get basic information - if no package is present
56
    ' Used by dependencies.asp, find.asp and sdk_add_release.asp
57
    Call Get_NoPkg_Info( Request("rtag_id") )
119 ghuddy 58
Else
5098 dpurdie 59
    ' Don't know how we got here without a pvid - display default page
60
    Response.Redirect ("dependencies.asp?rtag_id="& Request("rtag_id"))
119 ghuddy 61
End If
62
 
63
 
64
'----------------------------------------------
65
%>
66
<%
67
'-----------------------------------------------------------------------------------------------------------------------------
183 brianf 68
Sub RenderPackageProperties (irtag_id)
119 ghuddy 69
%>
183 brianf 70
   <table width="100%" border="0" cellspacing="0" cellpadding="0">
141 ghuddy 71
   <tr>
183 brianf 72
     <td>
141 ghuddy 73
         <%
74
         If pkgInfoHash.Item ("is_patch") = "Y" Then
75
            '--- PATCH ---
76
            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>"
119 ghuddy 77
 
141 ghuddy 78
            If pkgInfoHash.Item ("is_obsolete") = "Y" Then
79
               Dim rsTemp
80
               Set rsTemp = OraDatabase.DbCreateDynaset( "select patch_obsoleted_by from package_patches where patch_id ="&pkgInfoHash.Item ("pv_id"), cint(0))
119 ghuddy 81
 
141 ghuddy 82
               If rsTemp("patch_obsoleted_by") <> "" Then
119 ghuddy 83
 
141 ghuddy 84
                  Set rsTemp = OraDatabase.DbCreateDynaset( "select pkg_version from package_versions where pv_id ="&rsTemp("patch_obsoleted_by"), cint(0))
85
                  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%" )
119 ghuddy 86
 
141 ghuddy 87
                  rsTemp.Close()
88
                  Set rsTemp = nothing
89
               Else
90
                  Call Messenger ( "<SPAN class='err_alert'><b>Patch Is Obsolete!</b></SPAN><br>"& NewLine_To_BR( pkgInfoHash.Item ("obsolete_comments") ), 3, "100%" )
91
               End If
92
               Response.write enum_imgPatchObsolete
93
            Else
94
               Response.write enum_imgPatch
95
            End If
119 ghuddy 96
 
97
 
141 ghuddy 98
            If pkgInfoHash.Item ("dlocked") = "Y" Then
99
               Response.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>"
100
            Else
101
               Response.write "<SPAN class='lbox_ttl'>"& pkgInfoHash.Item ("pkg_version") &"</SPAN>"
102
            End If
103
         Else
104
            '--- PACKAGE ---
183 brianf 105
            Response.write "<table cellspacing=1 cellpadding=0>"
106
            Response.write "<tr>"
107
            Response.write "<td>"
108
            Response.write "<SPAN class='lbox_ttl'>"& pkgInfoHash.Item ("pkg_name") &"&nbsp;"& pkgInfoHash.Item ("pkg_version") & "&nbsp;" & "&nbsp;" & "</SPAN>"
109
            Response.write "</td>"
110
 
111
            ' dlocked: Y - release, N - unlocked, P - pending, A - approved, R - rejected
4617 dpurdie 112
            Dim lState
141 ghuddy 113
            If pkgInfoHash.Item ("dlocked") = "Y" Then
4617 dpurdie 114
              lState = enum_imgReleasedLocked
183 brianf 115
            ElseIf pkgInfoHash("is_released") Then
4617 dpurdie 116
              lState = enum_imgReleasedUnlocked
183 brianf 117
            ElseIf pkgInfoHash.Item ("dlocked") = "P" Then
4617 dpurdie 118
              lState = enum_imgPending
183 brianf 119
            ElseIf (pkgInfoHash.Item ("dlocked") = "N") OR (pkgInfoHash.Item ("dlocked") = "R") Then
120
              'ElseIf (irtag_id<>"") Then
4617 dpurdie 121
              lState = enum_imgBuilding
141 ghuddy 122
            End If
4617 dpurdie 123
            If NOT isEmpty(lState) Then Response.write "<td>" & lState & "</td>"
183 brianf 124
 
125
            If pkgInfoHash.Item ("product_state") = 4 Then
4617 dpurdie 126
                Response.write "<td>" & enum_imgProductRejected & "</td>"
183 brianf 127
            End If
128
 
129
            Dim state_icon
130
            If Not IsNull(pkgInfoHash.Item ("deprecated_state")) Then
131
              Select Case CInt(pkgInfoHash.Item ("deprecated_state"))
132
                Case enumPKG_STATE_DEPRECATED
133
                  state_icon = enum_imgDeprecated
134
                Case enumPKG_STATE_DEPRECATED_DEPENDENT
135
                  state_icon = enum_imgDeprecatedDependent
136
              End Select
4617 dpurdie 137
              If NOT isEmpty(state_icon) Then Response.write "<td>" & state_icon & "</td>"
183 brianf 138
            End If
139
 
140
            If Not (IsNull(pkgInfoHash.Item ("pkg_state")) or pkgInfoHash.Item ("pkg_state") = 0) Then
141
              Select Case CInt(pkgInfoHash.Item ("pkg_state"))
142
                Case enumPKG_STATE_MAJOR
143
                  state_icon = enum_imgCritical
144
                Case enumPKG_STATE_MINOR
145
                  state_icon = enum_imgWarning
146
                Case enumPKG_STATE_MAJOR_READY
147
                  state_icon = enum_imgCReady
148
                Case enumPKG_STATE_MINOR_READY
149
                  state_icon = enum_imgWReady
150
                Case enumPKG_NOT_FOUND
151
                  state_icon = enum_imgNotFound
152
                Case enumPKG_STATE_NEW_PATCH
153
                  state_icon = enum_imgPatchAvailable
154
                Case enumPKG_ADVISORY_RIPPLE
155
                  state_icon = enum_imgAR
156
                Case enumPKG_ADVISORY_RIPPLE_DEPENDENT
157
                  state_icon = enum_imgARD
5080 dpurdie 158
                Case enumPKG_SDK_IMPORT
159
                  state_icon = enum_imgSdkImport
160
                Case enumPKG_SDK_DEPENDENCY
161
                  state_icon = enum_imgSdkDep
183 brianf 162
              End Select
4617 dpurdie 163
                Response.write "<td>"
164
                Response.write state_icon
165
                Response.write "</td>"
183 brianf 166
            End If
167
 
5098 dpurdie 168
            ' Package peg status
169
            ' Not done as a part of pkg_state some states are not mutually exclusive
170
            If pkgInfoHash.Item ("is_pegged") Then
171
                Response.write "<td>"
172
                Response.write enum_imgGreenPin
173
                Response.write "</td>"
174
            End If
183 brianf 175
 
5898 dpurdie 176
            'build_type', and a value of 'M' = manual and 'A' = auto , 'U' = UnBuildable
183 brianf 177
            If pkgInfoHash.Item("build_type") = "M" Then
4617 dpurdie 178
                Response.write "<td>"
5898 dpurdie 179
                Response.write "<img src='icons/i_manual.gif' width='12' height='14' border='0' title='Manually built package'>"
4617 dpurdie 180
                Response.write "</td>"
5898 dpurdie 181
            ElseIf pkgInfoHash.Item("build_type") = "U" Then
182
                Response.write "<td>"
5901 dpurdie 183
                Response.write enum_imgUnBuildable
5898 dpurdie 184
                Response.write "</td>"
183 brianf 185
            End If
186
 
187
            ' check if a daemon instruction exists for this package
188
            Dim sDmInstr
189
            sDmInstr = GetOpCodeListForRtagIdAndPvId( "", Request("rtag_id"), pkgInfoHash.Item("pv_id"), "" )
190
            If sDmInstr <> "" Then
4617 dpurdie 191
                Response.write "<td>"
192
                Response.write "<img src='icons/i_daemon_instr.gif' width='19' height='17' border='0' title='Daemon instruction:" & "&#13;" & sDmInstr & "&#13;" & "Click to view details." & "' onClick=""location.href='build_status.asp?rtag_id=" & irtag_id & "';"" >"
193
                Response.write "</td>"
183 brianf 194
            End If
195
 
196
            ' check if this package has a build failure file
197
            If pkgInfoHash("has_build_failure") Then
4617 dpurdie 198
                Response.write "<td>"
199
                Response.write "<img src='icons/i_build_failure.gif' width='19' height='17' border='0' title='Package build failure." & "&#13;" & "Click to view details." &"' onClick=""location.href='build_status.asp?rtag_id=" & irtag_id & "';"" >"
200
                Response.write "</td>"
183 brianf 201
            ElseIf pkgInfoHash("is_excluded") Then
202
            ' check if this package has been excluded from the build
4617 dpurdie 203
                Response.write "<td>"
204
                Response.write "<img src='icons/i_build_exclusion.gif' width='19' height='17' border='0' title='Package excluded from build." & "&#13;" & "Click to view details." &"' onClick=""location.href='build_status.asp?rtag_id=" & irtag_id & "';"" >"
205
                Response.write "</td>"
183 brianf 206
            End If
207
 
4617 dpurdie 208
            ' Warn if the package is not in the package archive
4710 dpurdie 209
            ' Use http access for package test as this does not require AD authentication
5142 dpurdie 210
             If (pkgInfoHash.Item ("dlocked") = "Y") Then
4710 dpurdie 211
                 If NOT testArchiveAccessPkg(pkgInfoHash.Item ("pkg_name"), pkgInfoHash.Item ("pkg_version")) Then
212
                     Response.write "<td>"
213
                     Response.write enum_imgNotInArchive
214
                     Response.write "</td>"
215
                 End If
216
             End If
183 brianf 217
 
4764 dpurdie 218
             ' Warn if the package versionis not in the release
219
             If pkgInfoHash.Exists("notInRelease")  Then
220
                     Response.write "<td>"
5846 dpurdie 221
                     If pkgInfoHash.Exists("pv_id_InRelease") Then Response.write "<a href="& scriptName & "?pv_id=" & pkgInfoHash.Item("pv_id_InRelease") &"&rtag_id="&irtag_id&">"
4764 dpurdie 222
                     Response.write enum_imgNotInRelease
5846 dpurdie 223
                     If pkgInfoHash.Exists("pv_id_InRelease") Then Response.write "</a>"
4764 dpurdie 224
                     Response.write "</td>"
225
             End If
226
 
183 brianf 227
            Response.write "</tr>"
228
            Response.write "</table>"
229
 
141 ghuddy 230
         End If
231
         %>
183 brianf 232
 
141 ghuddy 233
      </td>
234
   </tr>
235
   <tr>
183 brianf 236
      <td style=color:Red>
237
         <%'=GetOpCodeListForRtagIdAndPvId( "NOTE: '", Request("rtag_id"), pkgInfoHash.Item("pv_id"), "' has been requested" )%>
238
      </td>
147 ghuddy 239
   </tr>
183 brianf 240
   </table>
119 ghuddy 241
<%
242
End Sub
243
 
244
'-----------------------------------------------------------------------------------------------------------------------------
183 brianf 245
Sub RenderStatus(irtag_id,ipv_id)
119 ghuddy 246
%>
4687 dpurdie 247
   <table width="100%" border="0" cellspacing="0" cellpadding="0">
183 brianf 248
   <tr>
185 brianf 249
     <td width="100%">
183 brianf 250
       <!-- PACKAGE PROPERTIES ----------------------------  -->
251
       <%
252
         If ipv_id <> "" Then
253
           Call RenderPackageProperties (irtag_id)
254
         End If
255
       %>
256
     </td>
185 brianf 257
   </tr>
258
   </table>
259
<%
260
End Sub
261
 
262
'-----------------------------------------------------------------------------------------------------------------------------
263
Sub RenderDaemonBar(irtag_id,ipv_id)
264
%>
4687 dpurdie 265
   <!-- Daemon Bar ----------------------------  -->
5009 dpurdie 266
   <table border="0" cellspacing="0" cellpadding="0">
185 brianf 267
   <tr>
268
     <td valign=bottom>
183 brianf 269
       <%
270
         If irtag_id<>"" Then
271
           Dim objDmSts: Set objDmSts = New DaemonStatus
272
       %>
5009 dpurdie 273
           <fieldset style="margin:0px;padding:2px;">
183 brianf 274
               <%Call objDmSts.RenderDaemonStatusForRelease(irtag_id,16)%>
275
           </fieldset>
276
       <%
277
           Set objDmSts = Nothing
278
         End If
279
       %>
280
     </td>
281
   </tr>
282
   </table>
283
<%
284
End Sub
285
 
286
'-----------------------------------------------------------------------------------------------------------------------------
185 brianf 287
Sub RenderActionBar(irtag_id,ipv_id)
288
   Response.write("<table border=0 cellpadding=0 cellspacing=0>")
289
   Response.write("  <tr>")
4703 dpurdie 290
   Response.write("    <td width='99%'>")
185 brianf 291
   If Not ((ipv_id = "") or (IsNull(ipv_id))) Then
292
     Call RenderActionButtons
293
   End If
294
   Response.write("    </td>")
4082 dpurdie 295
 
185 brianf 296
   Response.write("    <td width='1%'>")
297
   Call RenderDaemonBar(irtag_id,ipv_id)
298
   Response.write("    </td>")
299
   Response.write("  </tr>")
300
   Response.write("</table>")
301
End Sub
302
'-----------------------------------------------------------------------------------------------------------------------------
183 brianf 303
%>