Subversion Repositories DevTools

Rev

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