Subversion Repositories DevTools

Rev

Rev 7288 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5357 dpurdie 1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
3
Option explicit
4
Response.Expires = 0	' always load the page, dont store
5
%>
6
<%
7
'=====================================================
8
'					Import Release
9
'=====================================================
10
%>
11
<!--#include file="common/conf.asp"-->
12
<!--#include file="common/globals.asp"-->
13
<!--#include file="common/qstr.asp"-->
14
<!--#include file="common/common_subs.asp"-->
15
<!--#include file="common/common_dbedit.asp"-->
16
<!--#include file="common/_popup_window_common.asp"-->
17
<%
18
'------------ ACCESS CONTROL ------------------
19
%>
20
<!--#include file="_access_control_login.asp"-->
21
<!--#include file="_access_control_general.asp"-->
22
<!--#include file="_access_control_project.asp"-->
23
<%
24
'------------ Variable Definition -------------
25
Dim parFRrtag_id    ' Current Release
26
Dim parFRproj_id    ' Selected Project
27
Dim hasDaemons      ' Current Release Has daemons configured 
28
Dim importHasDaemons   ' Selected Import has daemons configured
5590 dpurdie 29
Dim sMessage, sMessageType
30
Dim bCanImport
31
Dim bReleaseSelected
5357 dpurdie 32
'------------ Constants Declaration -----------
33
'------------ Variable Init -------------------
34
parFRrtag_id = QStrPar("FRrtag_id")
35
parFRproj_id = QStrPar("FRproj_id")
5590 dpurdie 36
sMessage = NULL
37
sMessageType = 3
38
bCanImport = TRUE
6750 dpurdie 39
 
5357 dpurdie 40
If parFRproj_id = "" Then parFRproj_id = -1
5590 dpurdie 41
If parFRrtag_id = "" Then parFRrtag_id = -1
7417 dpurdie 42
objPMod.PersistInQryString("rtag_id")
5357 dpurdie 43
'----------------------------------------------
44
%>
45
<%
5590 dpurdie 46
'------------------------------------------------------------------------------------------------------------------------------------------
47
'
48
' Add a line of text to the System Message
49
'
50
Sub sMessageAdd(eLevel, text)
51
    If NOT isNull(sMessage) Then
52
        sMessage = sMessage & "<br>"
53
    End If
54
    sMessage = sMessage & text
55
 
56
    If eLevel < sMessageType  Then
57
        sMessageType = eLevel
58
    End If
59
End Sub
5357 dpurdie 60
'--------------------------------------------------------------------------------------------------------------------------
61
Sub Get_ProjectList ( nProjId )
62
	Dim rsQry,tempLINK
63
 
64
	OraDatabase.Parameters.Add "PROJ_ID", nProjId,	ORAPARM_INPUT, ORATYPE_NUMBER
65
 
66
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ProjectsCombo.sql"), ORADYN_DEFAULT )
67
 
68
	If NOT ((NOT rsQry.BOF) AND (NOT rsQry.EOF) ) Then
69
       If (nProjId > 0) Then
5590 dpurdie 70
            Response.write "No Projects found"
5357 dpurdie 71
       End If
5590 dpurdie 72
	Else
73
        Response.write "<select name='FRproj_id' onChange=""MM_jumpMenu('window',this,0)"" class='form_item'>"
74
        Response.write "<option value=''>Select Project</option>"
75
        While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))
76
            tempLINK = scriptName &"?FRproj_id="& rsQry.Fields("proj_id") & "&"& objPMod.ComposeURL()
77
            Response.write "<option value='"& tempLINK &"'" &rsQry.Fields("SELECTED") &">"& (rsQry.Fields("proj_name")) &"</option>"
78
            rsQry.MoveNext
79
        WEnd
80
    	Response.write "</select>"
81
 
82
        OraDatabase.Parameters.Remove "PROJ_ID"
83
        rsQry.Close
84
        Set rsQry = Nothing
5357 dpurdie 85
	End If
86
End Sub
87
 
88
'--------------------------------------------------------------------------------------------------------------------------
89
Sub Get_ReleaseList ( nProjId, nRtagId )
90
	Dim rsQry,tempLINK
91
 
92
	OraDatabase.Parameters.Add "PROJ_ID", nProjId,	ORAPARM_INPUT, ORATYPE_NUMBER
93
	OraDatabase.Parameters.Add "RTAG_ID", nRtagId,	ORAPARM_INPUT, ORATYPE_NUMBER 
94
 
95
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ReleasesCombo.sql"), ORADYN_DEFAULT )
96
 
5590 dpurdie 97
    bReleaseSelected = FALSE
5357 dpurdie 98
	If NOT ((NOT rsQry.BOF) AND (NOT rsQry.EOF) ) Then
99
        If (nProjId > 0) Then
5590 dpurdie 100
            Response.write "No Releases in this project"
5357 dpurdie 101
        End If
5590 dpurdie 102
    Else
103
         Response.write "<select name='FRrtag_id' onChange=""MM_jumpMenu('window',this,0)"" class='form_item'>"
104
         Response.write "<option value=''>Select Release</option>"
105
         While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))
106
             tempLINK = scriptName & "?FRproj_id="& nProjId &"&FRrtag_id="& rsQry.Fields("rtag_id") & "&"& objPMod.ComposeURL()
107
             Response.write "<option value='"& tempLINK &"'" &rsQry.Fields("SELECTED") &">"& (rsQry.Fields("rtag_name")) &"</option>"
108
 
109
             If  rsQry.Fields("SELECTED") <> "" Then
110
                 bReleaseSelected = TRUE
111
             End If
112
             rsQry.MoveNext
113
         WEnd
114
         Response.write "</select>"
115
 
116
    	OraDatabase.Parameters.Remove "RTAG_ID"
117
    	OraDatabase.Parameters.Remove "PROJ_ID"
118
 
119
    	rsQry.Close
120
    	Set rsQry = Nothing
5357 dpurdie 121
	End If
122
End Sub
123
 
124
'--------------------------------------------------------------------------------------------------------------------------
125
Function check_for_daemons(nRtagId, DefVal)
126
    Dim sqlStr, rsQry
127
    If nRtagId <> "" Then
128
        sqlStr = "SELECT RCON_ID from RELEASE_CONFIG rc WHERE rc.rtag_id = :RTAG_ID"
129
    	OraDatabase.Parameters.Add "RTAG_ID", nRtagId, ORAPARM_INPUT, ORATYPE_NUMBER 
130
 
131
    	Set rsQry = OraDatabase.DbCreateDynaset( sqlStr, ORADYN_DEFAULT )
132
 
133
    	If rsQry.BOF OR rsQry.EOF Then
134
            check_for_daemons = False
135
        Else
136
            check_for_daemons = True
137
    	End If
138
 
139
    	OraDatabase.Parameters.Remove "RTAG_ID"
140
 
141
    	rsQry.Close
142
    	Set rsQry = Nothing
143
    Else
144
        check_for_daemons = DefVal
145
    End If
146
 
147
End Function
148
'--------------------------------------------------------------------------------------------------------------------------
149
Sub importDaemons( NSrcRtag_id, NDstRtag_id) 
150
    If (NSrcRtag_id <> "") AND (NDstRtag_id <> "") Then
151
        ' All mandatory parameters FOUND
152
        ' COMPLETE THE REQUEST...
153
 
154
        On Error Resume Next
6750 dpurdie 155
        objEH.ErrorRedirect = FALSE
5357 dpurdie 156
 
157
        OraDatabase.Parameters.Add "FROMRTAG_ID", NSrcRtag_id,   ORAPARM_INPUT, ORATYPE_NUMBER 
158
        OraDatabase.Parameters.Add "TORTAG_ID",   NDstRtag_id,   ORAPARM_INPUT, ORATYPE_NUMBER 
159
        OraDatabase.Parameters.Add "USER_ID",     objAccessControl.UserId,    ORAPARM_INPUT, ORATYPE_NUMBER 
160
 
161
        objEH.TryORA ( OraSession )
162
 
163
        ' Remove old Work in Progress Contents
164
        OraDatabase.ExecuteSQL "BEGIN  PK_BUILDAPI.IMPORT_DAEMONS (:FROMRTAG_ID, :TORTAG_ID, :USER_ID); END;"
165
 
166
        objEH.CatchORA ( OraSession )
167
 
168
        OraDatabase.Parameters.Remove "FROMRTAG_ID"
169
        OraDatabase.Parameters.Remove "TORTAG_ID"
170
        OraDatabase.Parameters.Remove "USER_ID"
171
 
172
        If objEH.Finally Then
5590 dpurdie 173
            OpenInParentWindow("build_status.asp?rtag_id="& NDstRtag_id )
5957 dpurdie 174
            Call Destroy_All_Objects
5590 dpurdie 175
            Response.End
5357 dpurdie 176
        End If
6750 dpurdie 177
 
178
        sMessage = "Failure"
5357 dpurdie 179
    Else
5590 dpurdie 180
        Call sMessageAdd( 1, "Internal: Some mandatory parameters are missing!<br>" & QSTR_FullQuery )
181
        parFRproj_id = -1
182
        parFRrtag_id = -1
5357 dpurdie 183
    End If
184
End Sub
185
'--------------------------------------------------------------------------------------------------------------------------
186
%>
187
<%
188
'Process submition
189
If CBool(QStrPar("action")) Then
190
    Call importDaemons(Request.Form("FromRtag_id"),Request("rtag_id"))
6750 dpurdie 191
    bCanImport = FALSE
192
    parFRproj_id = -1
193
    parFRrtag_id = -1
5357 dpurdie 194
 
6750 dpurdie 195
Else
196
    ' Run before render
197
    hasDaemons = check_for_daemons(Request("rtag_id"), False)
198
    importHasDaemons = check_for_daemons(parFRrtag_id, True)
5590 dpurdie 199
 
6750 dpurdie 200
    If hasDaemons Then
201
        Call sMessageAdd( 2, "The current release already has build daemons configured. It is not possible to import a daemon configuration into this release.")
202
        bCanImport = FALSE
203
    ElseIf NOT importHasDaemons AND (parFRrtag_id > 0) Then
204
        Call sMessageAdd(2, "No Daemons in this Release to be imported")
205
        bCanImport = FALSE
206
    End If
5590 dpurdie 207
End If
5357 dpurdie 208
%>
209
<html>
210
<head>
211
<title>Release Manager</title>
212
<link rel="shortcut icon" href="<%=FavIcon%>"/>
213
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
214
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
6579 dpurdie 215
<link rel="stylesheet" href="images/release_manager_style.css?ver=<%=VixVerNum%>" type="text/css">
216
<link rel="stylesheet" href="images/navigation.css?ver=<%=VixVerNum%>" type="text/css">
217
<script language="JavaScript" src="images/common.js?ver=<%=VixVerNum%>"></script>
5357 dpurdie 218
</head>
219
<body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0" onload="self.focus();">
7288 dpurdie 220
<div id='divProgressBar' class='vixSpinner' style='visibility:hidden;'></div>
5590 dpurdie 221
<form class="form_tight" name="importrel" method="post" action="<%=scriptName%>">
222
  <table width="100%" border="0" cellspacing="0" cellpadding="2">
5357 dpurdie 223
    <tr> 
224
      <td valign="top" nowrap colspan="3" class="wform_ttl" background="images/bg_form_lightgray.gif"> 
5590 dpurdie 225
         <!-- LOCAL MESSAGES ++++++++++++++++++++++++++++++++++++++++++++ -->
226
         <%Call Messenger ( sMessage , 3, "100%" )%>
227
         <!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->
228
         <!--#include file="messages/_msg_inline.asp"-->
229
         <table width="100%" border="0" cellspacing="1" cellpadding="2">
5357 dpurdie 230
          <tr> 
5590 dpurdie 231
            <td width="100%" class="form_txt" colspan="2">&nbsp;
5357 dpurdie 232
            </td>
233
          </tr>
234
          <tr> 
235
            <td width="1%" nowrap class="form_field" background="images/bg_form_lightbluedark.gif">Project</td>
236
            <td nowrap width="100%" background="images/bg_form_lightbluedark.gif" class="form_txt">
237
              <%Call Get_ProjectList ( parFRproj_id )%>
238
            </td>
239
          </tr>
240
          <tr> 
241
            <td width="1%" nowrap class="form_field" background="images/bg_form_lightbluedark.gif">Release</td>
242
            <td nowrap width="100%" background="images/bg_form_lightbluedark.gif" class="form_txt">
243
              <%Call Get_ReleaseList ( parFRproj_id, parFRrtag_id )%>
244
			  <input type="hidden" name="rtag_id" value="<%=Request("rtag_id")%>">
245
			  <input type="hidden" name="FromRtag_id" value="<%=parFRrtag_id%>">
246
              <input type="hidden" name="action" value="true">
247
            </td>
248
          </tr>
249
          <tr> 
5590 dpurdie 250
            <td width="100%" class="form_txt" colspan="2"> 
5357 dpurdie 251
              <p>Import the build daemon configuration from another release.
252
              </p>
253
            </td>
254
          </tr>
255
        </table>
256
      </td>
257
    </tr>
258
    <tr> 
7288 dpurdie 259
      <td align="right" colspan=2> 
5590 dpurdie 260
        <%If bCanImport AND bReleaseSelected Then %>
261
        <input type="submit" name="btn" value="Import" class="form_btn_comp" onClick="MM_validateForm('FRproj_id','Project','R','FRrtag_id','Release','R');return document.MM_returnValue">
262
        <%Else%>
263
        <input type="submit" name="btn" value="Import" class="form_btn_comp_disabled" >
264
        <%End If%>
265
        <input type="reset" name="btn" value="Cancel" class="form_btn_comp" onclick="parent.closeIFrame();">
266
      </td>
5357 dpurdie 267
    </tr>
268
  </table>
269
</form>
270
</body>
271
</html>
272
<!-- DESTRUCTOR ------->
4307 dpurdie 273
<!--#include file="common/destructor.asp"-->