Subversion Repositories DevTools

Rev

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