Subversion Repositories DevTools

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
119 ghuddy 1
<%
2
'===================================================================
3
'							Package Common
4
'===================================================================
5
%>
6
<!--#include file="../class/classTemplateManager.asp"-->
7
<!--#include file="../class/classTabControl.asp"-->
8
<!--#include file="../class/classActionButtonControl.asp"-->
9
<%
10
'------------ VARIABLE DEFINITION -------------
11
Dim parPv_id
12
Dim nEnvTab			' remember environment tab
13
Dim objBtnControl
14
Dim aTabBtnsDef
15
'------------ CONSTANTS DECLARATION -----------
16
'------------ VARIABLE INIT -------------------
17
parPv_id = Request("pv_id")
18
Set objBtnControl = New ActionButtonControl
19
'------------ CONDITIONS ----------------------
20
'----------------------------------------------
21
%>
22
<%
23
'------------ RUN BEFORE PAGE RENDER ----------
24
 
25
'--- Make sure rtag_id is always present
26
If (Request("rtag_id") = "") AND (Request("pv_id") = "") Then Response.Redirect("index.asp")
27
 
28
 
29
'--- Rebuild Environment
30
If (Request("rtag_id") <> "") Then
31
	Call Rebuild_Environment ( parRtag_id )
32
End If
33
 
34
'--- Persist following parameters between postbacks
35
objPMod.PersistInQryString ( aPersistList(enumPAR_RTAG_ID) )
36
objPMod.PersistInQryString ( aPersistList(enumPAR_PV_ID) )
37
 
38
 
39
'--- Get Environment (lefthand side menu) tab
40
nEnvTab = GetEnvTab ( Request("envtab") )
41
 
42
 
43
'--- Get Package General Information
44
Set pkgInfoHash = CreateObject("Scripting.Dictionary")
45
If Request("pv_id") <> "" Then
46
	Call Get_Pkg_Info ( Request("pv_id"), Request("rtag_id") )
47
 
48
	' Make sure pv_id exists as it may be removed
49
	If pkgInfoHash.Item("pv_id") = "" Then Response.Redirect ("dependencies.asp?rtag_id="& Request("rtag_id"))
50
 
51
Else
52
	If (ScriptName <> "dependencies.asp") AND (ScriptName <> "find.asp")Then  Response.Redirect ("dependencies.asp?rtag_id="& Request("rtag_id"))
53
End If
54
 
55
 
56
'----------------------------------------------
57
%>
58
<%
59
'-----------------------------------------------------------------------------------------------------------------------------
60
Sub RenderPackageProperties ()
61
%>
62
 
63
  <tr>
64
    <td background="images/bg_lght_gray.gif"><IMG height="45" src="images/spacer.gif" width=1></td>
65
 
66
	<td valign="bottom" background="images/bg_lght_gray.gif" nowrap class="body_txt">
67
	<%
68
	If pkgInfoHash.Item ("is_patch") = "Y" Then
69
		'--- PATCH ---
70
		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>"
71
 
72
		If pkgInfoHash.Item ("is_obsolete") = "Y" Then
73
			Dim rsTemp
74
			Set rsTemp = OraDatabase.DbCreateDynaset( "select patch_obsoleted_by from package_patches where patch_id ="&pkgInfoHash.Item ("pv_id"), cint(0))
75
 
76
			If rsTemp("patch_obsoleted_by") <> "" Then
77
 
78
				Set rsTemp = OraDatabase.DbCreateDynaset( "select pkg_version from package_versions where pv_id ="&rsTemp("patch_obsoleted_by"), cint(0))
79
				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%" )
80
 
81
				rsTemp.Close()
82
				Set rsTemp = nothing
83
			Else
84
				Call Messenger ( "<SPAN class='err_alert'><b>Patch Is Obsolete!</b></SPAN><br>"& NewLine_To_BR( pkgInfoHash.Item ("obsolete_comments") ), 3, "100%" )
85
			End If
86
			Response.write enum_imgPatchObsolete
87
		Else
88
			Response.write enum_imgPatch
89
		End If
90
 
91
 
92
		If pkgInfoHash.Item ("dlocked") = "Y" Then
93
			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>"
94
		Else
95
			Response.write "<SPAN class='lbox_ttl'>"& pkgInfoHash.Item ("pkg_version") &"</SPAN>"
96
		End If
97
	Else
98
		'--- PACKAGE ---
99
		If pkgInfoHash.Item ("dlocked") = "Y" Then
100
			If pkgInfoHash.Item ("deprecated_state") = 6 Then
101
				Response.write "<SPAN class='lbox_ttl'>"& pkgInfoHash.Item ("pkg_name") &"&nbsp;"& pkgInfoHash.Item ("pkg_version") &"<img src='images/i_locked.gif' width='12' height='14' border='0' hspace='5' align='top'>"&enum_imgDeprecated&"</SPAN>"
102
			ElseIf pkgInfoHash.Item ("product_state") = 4 Then
103
				Response.write "<SPAN class='lbox_ttl'>"& pkgInfoHash.Item ("pkg_name") &"&nbsp;"& pkgInfoHash.Item ("pkg_version") &"<img src='images/i_locked.gif' width='12' height='14' border='0' hspace='5' align='top'>"&enum_imgProductRejected&"</SPAN>"
104
			Else
105
				Response.write "<SPAN class='lbox_ttl'>"& pkgInfoHash.Item ("pkg_name") &"&nbsp;"& pkgInfoHash.Item ("pkg_version") &"<img src='images/i_locked.gif' width='12' height='14' border='0' hspace='5' align='top'></SPAN>"
106
			End If
107
		Else
108
			Response.write "<SPAN class='lbox_ttl'>"& pkgInfoHash.Item ("pkg_name") &"&nbsp;"& pkgInfoHash.Item ("pkg_version") &"</SPAN>"
109
		End If
110
	End If
111
	%>
112
	<br><br>
113
	</td>
114
 
115
    <td background="images/bg_lght_gray.gif">&nbsp;</td>
116
  </tr>
117
 
118
  <tr>
119
    <td background="images/bg_lght_gray.gif"></td>
120
	<td background="images/bg_lght_gray.gif">
121
	<SPAN id="spanShowDetails" name="spanShowDetails"><a href="javascript:;" class="body_scol" onClick="DisplaySPAN(true);" style="display:block">Show Details...</a></SPAN>
122
	<SPAN id="spanHideDetails" name="spanHideDetails" style="display:none;"><a href="javascript:;" class="body_colb" onClick="DisplaySPAN(false);">Hide Details</a></SPAN>
123
	<SPAN id="spanPkgInfo" name="spanPkgInfo" style="display:none;">
124
	<table width="400" border="0" cellspacing="0" cellpadding="3">
125
	  <tr>
126
		<td background="images/bg_form_lightbluedark.gif" nowrap class="body_txt"><%Call Print_Pkg_Info()%></td>
127
	  </tr>
128
	</table>
129
	</SPAN>
130
	<br>
131
	</td>
132
    <td background="images/bg_lght_gray.gif"></td>
133
  </tr>
134
<%
135
End Sub
136
'-----------------------------------------------------------------------------------------------------------------------------
137
Sub RenderPackageState ()
138
	If (pkgInfoHash.Item ("dlocked") = "Y") Then
139
		Response.write "<b>Status:</b>&nbsp;Released<br>"
140
	Else
141
		Response.write "<b>Status:&nbsp;</b>Not released<br>"
142
	End If
143
End Sub
144
'-----------------------------------------------------------------------------------------------------------------------------
145
Sub Print_Pkg_Info()
146
 
147
	' Status:
148
	If IsNull(pkgInfoHash.Item ("is_patch")) Then
149
		If  objAccessControl.IsDataActive ("PROJECTS", DB_PROJ_ID, "EditProjects") AND (objAccessControl.IsActive("UnlockPackage"))  Then
150
			If (pkgInfoHash.Item ("dlocked") = "Y") OR (pkgInfoHash.Item ("dlocked") = "A")Then
151
				' Unlock package.
152
				Response.write "<a href='_s_unlock_package.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"' class='body_txt' title='Unlock the package.'><b>Status:</b><img src='images/i_edit.gif' width='12' height='12' border='0' ></a>&nbsp;Released<br>"
153
			Else
154
				' Lock Package
155
				Response.write "<a href='_s_lock_package.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"' class='body_txt' title='Lock the package. Release requirements are not applied.'><b>Status:</b><img src='images/i_edit.gif' width='12' height='12' border='0'></a>&nbsp;Not Released<br>"
156
			End If
157
		Else
158
			Call RenderPackageState ()
159
		End If
160
	Else
161
		If  objAccessControl.IsDataActive ("PROJECTS", DB_PROJ_ID, "EditProjects") AND (objAccessControl.IsActive("UnlockPatch"))  Then
162
			If (pkgInfoHash.Item ("dlocked") = "Y") OR (pkgInfoHash.Item ("dlocked") = "A")Then
163
				' Unlock package.
164
				Response.write "<a href='_s_unlock_package.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"' class='body_txt' title='Unlock the package.'><b>Status:</b><img src='images/i_edit.gif' width='12' height='12' border='0' ></a>&nbsp;Released<br>"
165
			Else
166
				' Lock Package
167
				Response.write "<a href='_s_lock_package.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"' class='body_txt' title='Lock the package. Release requirements are not applied.'><b>Status:</b><img src='images/i_edit.gif' width='12' height='12' border='0'></a>&nbsp;Not Released<br>"
168
			End If
169
		Else
170
			Call RenderPackageState ()
171
		End If
172
	End If
173
 
174
	' Base View:
175
	Response.write "<b>Base View:&nbsp;</b>"& Get_Pkg_Base_View ( parPv_id, parRtag_id ) &"<br>"
176
 
177
	' Previous Version:
178
	If IsNull(pkgInfoHash.Item ("is_patch")) Then
179
		If objAccessControl.IsActive("ChangePreviousVersion") Then
180
			If IsNull(pkgInfoHash.Item ("previous_version")) Then
181
				Response.write "<a href='javascript:;' onClick='MM_openBrWindow(""_wform_change_previous_version.asp?rfile="& scriptName &"&pv_id="& parPv_id &"&rtag_id="& parRtag_id &""",""ChangeOwner"",""resizable=yes,width=400,height=200"")' class='body_txt'><b>Previous Version:</b><img src='images/i_edit.gif' width='12' height='12' border='0' alt='Edit'></a>&nbsp;Unknown!<br>"
182
			Else
183
				Response.write "<a href='javascript:;' onClick='MM_openBrWindow(""_wform_change_previous_version.asp?rfile="& scriptName &"&pv_id="& parPv_id &"&rtag_id="& parRtag_id &""",""ChangeOwner"",""resizable=yes,width=400,height=200"")' class='body_txt'><b>Previous Version:</b><img src='images/i_edit.gif' width='12' height='12' border='0' alt='Edit'>&nbsp;"& pkgInfoHash.Item ("previous_version") &"</a><br>"
184
			End If
185
		Else
186
			If IsNull(pkgInfoHash.Item ("previous_version")) Then
187
				Response.write "<b>Previous Version:</b><img src='images/i_edit_disable.gif' width='12' height='12' border='0' alt='Edit'></a>&nbsp;Unknown!<br>"
188
			Else
189
				Response.write "<b>Previous Version:</b><img src='images/i_edit_disable.gif' width='12' height='12' border='0' alt='Edit'>&nbsp;"& pkgInfoHash.Item ("previous_version") &"</a><br>"
190
			End If
191
		End If
192
	End If
193
	Response.write "<br>"
194
 
195
	Response.write "<table width='100' border='0' cellspacing='0' cellpadding='1'>"
196
 
197
	' Owner:
198
	Response.write "<tr>"
199
	If objAccessControl.UserLogedIn() Then
200
		Response.write "<td nowrap><a href='javascript:;' onClick='MM_openBrWindow(""_wform_change_owner.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &""",""ChangeOwner"",""resizable=yes,width=400,height=200"")' class='body_txt'><b>Owner:</b><img src='images/i_edit.gif' width='12' height='12' border='0' alt='Change owner'></a>&nbsp;</td>"
201
	Else
202
		Response.write "<td nowrap class='body_txt'><b>Owner:</b><img src='images/i_edit_disable.gif' width='12' height='12' border='0' alt='Change owner'></td>"
203
	End If
204
	Response.write "<td nowrap class='body_txt'>"& pkgInfoHash.Item ("owner") &"</td>"
205
	Response.write "<td><a href='mailto:"& pkgInfoHash.Item ("owner_email") &"' class='txt_linked'><img src='images/bt_send_email.gif' width='36' height='13' hspace='3' border='0' align='absmiddle' alt='"& pkgInfoHash.Item ("owner_email") &"'></a></td>"
206
	Response.write "</tr>"
207
 
208
	' Created:
209
	Response.write "<tr>"
210
	Response.write "<td nowrap class='body_txt'><b>Created:&nbsp;</b></td>"
211
	Response.write "<td nowrap class='body_txt'>"& EuroDate(pkgInfoHash.Item ("created_stamp")) &" by "& pkgInfoHash.Item ("creator") &"</td>"
212
	Response.write "<td><a href='mailto:"& pkgInfoHash.Item ("creator_email") &"' class='txt_linked'><img src='images/bt_send_email.gif' width='36' height='13' hspace='3' border='0' align='absmiddle' alt='"& pkgInfoHash.Item ("creator_email") &"'></a></td>"
213
	Response.write "</tr>"
214
 
215
	' Last Modified:
216
	Response.write "<tr>"
217
	Response.write "<td nowrap class='body_txt'><b>Last Modified:&nbsp;</b></td>"
218
	Response.write "<td nowrap class='body_txt'>"& EuroDateTime(pkgInfoHash.Item ("modified_stamp")) &" by "& pkgInfoHash.Item ("modifier") &"</td>"
219
	Response.write "<td><a href='mailto:"& pkgInfoHash.Item ("modifier_email") &"' class='txt_linked'><img src='images/bt_send_email.gif' width='36' height='13' hspace='3' border='0' align='absmiddle' alt='"& pkgInfoHash.Item ("modifier_email") &"'></a></td>"
220
	Response.write "</tr>"
221
	If IsNull(pkgInfoHash.Item ("is_patch"))  AND  (Request("rtag_id") <> "") Then
222
		Response.write "<tr>"
223
		If pkgInfoHash.Item ("insertor") <> "" Then
224
			Response.write "<td nowrap class='body_txt'><b>Added to Release:&nbsp;</b></td>"
225
			Response.write "<td nowrap class='body_txt'>"& EuroDate(pkgInfoHash.Item ("insert_stamp")) &" by "& pkgInfoHash.Item ("insertor") &"</td>"
226
			Response.write "<td><a href='mailto:"& pkgInfoHash.Item ("insertor_email") &"' class='txt_linked'><img src='images/bt_send_email.gif' width='36' height='13' hspace='3' border='0' align='absmiddle' alt='"& pkgInfoHash.Item ("insertor_email") &"'></a></td>"
227
		End If
228
		Response.write "</tr>"
229
	End If
230
 
231
	' Config Specs:
232
	Call Config_Spec (Request("rtag_id"), Request("pv_id"))
233
	Call Config_Spec_Template (pkgInfoHash.Item("dlocked"), rsQry("config_spec_branch"), rsQry("pkg_label"), rsQry("src_path"))
234
 
235
	' Jats commands
236
	Call Jats_Commands (pkgInfoHash.Item("dlocked"), rsQry("config_spec_branch"), rsQry("pkg_label"), rsQry("src_path"))
237
 
238
	rsQry.Close()
239
	Set rsQry = nothing
240
	Response.write "</table>"
241
 
242
End Sub
243
'---------------------------------------------------------------
244
Sub Config_Spec (NNRtag_id, NNPv_id)
245
	OraDatabase.Parameters.Add "RTAG_ID", NNRtag_id,	ORAPARM_INPUT, ORATYPE_NUMBER
246
	OraDatabase.Parameters.Add "PV_ID", NNPv_id,	ORAPARM_INPUT, ORATYPE_NUMBER
247
 
248
 
249
 
250
	If NNRtag_id <> "" Then
251
		If pkgInfoHash.Item ("dlocked") <> "Y" Then
252
			Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("config_spec.sql"), cint(0))
253
		Else
254
			Set rsQry = OraDatabase.DbCreateDynaset( Replace(GetQuery("config_spec.sql"), "PV.LAST_PV_ID", "PV.PV_ID"), cint(0))
255
		End If
256
	Else
257
		If pkgInfoHash.Item ("dlocked") <> "Y" Then
258
			Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("config_spec_nortag.sql"), cint(0))
259
		Else
260
			Set rsQry = OraDatabase.DbCreateDynaset( Replace(GetQuery("config_spec_nortag.sql"), "PV.LAST_PV_ID", "PV.PV_ID"), cint(0))
261
		End If
262
	End If
263
 
264
	OraDatabase.Parameters.Remove "RTAG_ID"
265
	OraDatabase.Parameters.Remove "PV_ID"
266
 
267
End Sub
268
 
269
'---------------------------------------------------------------
270
' Function: Config_Spec_Template
271
'
272
' Purpose:  Generates HTML to display the config spec to use
273
'           to create a view loaded with the particular package version.
274
'
275
' Arguments: dlocked       : dlocked state of the package version
276
'            config_branch : The branch, or null
277
'            pkg_label     : The package label
278
'            src_path      : The source path for the package
279
' Notes:
280
'
281
Sub Config_Spec_Template (dlocked, config_branch, pkg_label, src_path)
282
 
283
	Dim Template
284
 
285
	If (pkg_label <> "" AND src_path <> "") Then
286
		If (dlocked <> "Y" AND NOT IsNull(config_branch) AND config_branch <> "" ) Then
287
			Template = "element * CHECKEDOUT <br>" & _
288
			"element .../lost+found -none <br>" & _
289
			"element * .../" & config_branch & "/LATEST <br>" & _
290
			"element * " & pkg_label & " -mkbranch " & config_branch & "<br>" & _
291
			"element * /main/0 -mkbranch " & config_branch & "<br>"  & _
292
			"load " & chr(34) & src_path & chr(34)
293
		Else
294
			Template = "element * CHECKEDOUT <br>" & _
295
			"element .../lost+found -none <br>" & _
296
			"element * " & pkg_label &"<br>" & _
297
			"load " & chr(34) & src_path & chr(34)
298
		End If
299
	Else
300
		Template = "UNAVAILABLE - missing label and/or source path"
301
	End If
302
 
303
	Response.write "<tr>"
304
	Response.write "<td nowrap class='body_txt'><b>Config Specs:&nbsp;</b></td>"
305
	Response.write "<td nowrap class='body_txt'>"& Template &"</td>"
306
	Response.write "<td nowrap class='body_txt'></td>"
307
	Response.write "</tr>"
308
 
309
End Sub
310
 
311
'---------------------------------------------------------------
312
' Function: Jats_Commands
313
'
314
' Purpose:  Generates HTML for displaying the JATS commands for extracting
315
'           a view for the package version, and for building the targets
316
'           within a previously extracted view for the package version.
317
'
318
' Arguments: dlocked       : dlocked state of the package version
319
'            config_branch : The branch, or null
320
'            pkg_label     : The package label
321
'            src_path      : The source path for the package
322
' Notes:
323
'
324
Sub Jats_Commands (dlocked, config_branch, pkg_label, src_path)
325
 
326
	Dim Template1, Template2
327
 
328
	If (pkg_label <> "" AND src_path <> "") Then
329
		If (dlocked <> "Y" AND NOT IsNull(config_branch) AND config_branch <> "" ) Then
330
			Template1 = "jats release -extract " & pkg_label & " -path " & chr(34) & Replace(src_path, "\", "/") & chr(34) &" -branch "& config_branch
331
		Else
332
			Template1 = "jats release -extract " & pkg_label & " -path " & chr(34) & Replace(src_path, "\", "/") & chr(34)
333
		End If
334
		Template2 = "jats release -test " & pkgInfoHash.Item("pkg_label") & " -path " & chr(34) & Replace(src_path, "\", "/") & chr(34)
335
	Else
336
		Template1 = "UNAVAILABLE - missing label and/or source path"
337
		Template2 = "UNAVAILABLE - missing label and/or source path"
338
	End If
339
 
340
	Response.write "<tr>"
341
	Response.write "<td nowrap class='body_txt'><b>JATS Extract:&nbsp;</b></td>"
342
	Response.write "<td nowrap class='body_txt'>" & Template1 & "</td>"
343
	Response.write "<td nowrap class='body_txt'></td>"
344
	Response.write "</tr>"
345
	Response.write "<tr>"
346
	Response.write "<td nowrap class='body_txt'><b>JATS Test:&nbsp;</b></td>"
347
	Response.write "<td nowrap class='body_txt'>" & Template2 & "</td>"
348
	Response.write "<td nowrap class='body_txt'></td>"
349
	Response.write "</tr>"
350
 
351
End Sub
352
 
353
'-----------------------------------------------------------------------------------------------------------------------------
354
%>