| Line 3... |
Line 3... |
| 3 |
Option explicit
|
3 |
Option explicit
|
| 4 |
Response.Expires = 0 ' always load the page, dont store
|
4 |
Response.Expires = 0 ' always load the page, dont store
|
| 5 |
%>
|
5 |
%>
|
| 6 |
<%
|
6 |
<%
|
| 7 |
'=====================================================
|
7 |
'=====================================================
|
| 8 |
' Change Group
|
8 |
' _wform_build_package.asp
|
| 9 |
'=====================================================
|
9 |
'=====================================================
|
| 10 |
%>
|
10 |
%>
|
| 11 |
<!--#include file="common/conf.asp"-->
|
11 |
<!--#include file="common/conf.asp"-->
|
| 12 |
<!--#include file="common/globals.asp"-->
|
12 |
<!--#include file="common/globals.asp"-->
|
| 13 |
<!--#include file="common/qstr.asp"-->
|
13 |
<!--#include file="common/qstr.asp"-->
|
| Line 22... |
Line 22... |
| 22 |
<!--#include file="_access_control_general.asp"-->
|
22 |
<!--#include file="_access_control_general.asp"-->
|
| 23 |
<!--#include file="_access_control_project.asp"-->
|
23 |
<!--#include file="_access_control_project.asp"-->
|
| 24 |
<%
|
24 |
<%
|
| 25 |
'------------ Variable Definition -------------
|
25 |
'------------ Variable Definition -------------
|
| 26 |
Dim sMessage, sMessageType
|
26 |
Dim sMessage, sMessageType
|
| - |
|
27 |
Dim rsTemp, TotalBuildTime, BuildTime
|
| - |
|
28 |
Dim bLongBuild
|
| 27 |
'------------ Constants Declaration -----------
|
29 |
'------------ Constants Declaration -----------
|
| 28 |
'------------ Variable Init -------------------
|
30 |
'------------ Variable Init -------------------
|
| 29 |
sMessage = NULL
|
31 |
sMessage = NULL
|
| 30 |
sMessageType = 3
|
32 |
sMessageType = 3
|
| 31 |
'----------------------------------------------
|
33 |
'----------------------------------------------
|
| - |
|
34 |
'--- Before Render
|
| - |
|
35 |
' Estimate the complete ripple time of this package
|
| - |
|
36 |
' Provide a warning if the complete ripple time is long
|
| 32 |
%>
|
37 |
|
| - |
|
38 |
OraDatabase.Parameters.Add "RTAG_ID", Request("rtag_id"), ORAPARM_INPUT, ORATYPE_NUMBER
|
| - |
|
39 |
OraDatabase.Parameters.Add "PV_ID", Request("pv_id"), ORAPARM_INPUT, ORATYPE_NUMBER
|
| - |
|
40 |
Set rsTemp = OraDatabase.DbCreateDynaset( GetQuery("CalcRippleTime.sql"), cint(0))
|
| - |
|
41 |
OraDatabase.Parameters.Remove "PV_ID"
|
| - |
|
42 |
OraDatabase.Parameters.Remove "RTAG_ID"
|
| - |
|
43 |
If rsTemp.RecordCount > 0 Then
|
| - |
|
44 |
TotalBuildTime = CLng (rsTemp("Total_BuildTime"))
|
| - |
|
45 |
BuildTime = CLng (rsTemp("BuildTime"))
|
| - |
|
46 |
If TotalBuildTime > 2 * 60 * 60 Then
|
| - |
|
47 |
bLongBuild = TRUE
|
| - |
|
48 |
End If
|
| - |
|
49 |
End If
|
| - |
|
50 |
rsTemp.Close()
|
| - |
|
51 |
Set rsTemp = nothing
|
| 33 |
<%
|
52 |
|
| 34 |
'------------------------------------------------------------------------------------------------------------------------------------------
|
53 |
'------------------------------------------------------------------------------------------------------------------------------------------
|
| 35 |
' Add a line of text to the System Message
|
54 |
' Add a line of text to the System Message
|
| 36 |
'
|
55 |
'
|
| 37 |
Sub sMessageAdd(eLevel, text)
|
56 |
Sub sMessageAdd(eLevel, text)
|
| 38 |
If NOT isNull(sMessage) Then
|
57 |
If NOT isNull(sMessage) Then
|
| Line 52... |
Line 71... |
| 52 |
<script type="text/javascript" charset="utf-8">
|
71 |
<script type="text/javascript" charset="utf-8">
|
| 53 |
// This function will be called by vixDialog() when the dialoag has been loaded
|
72 |
// This function will be called by vixDialog() when the dialoag has been loaded
|
| 54 |
// Intended use: Init the javascript items
|
73 |
// Intended use: Init the javascript items
|
| 55 |
function buildPkgInit () {
|
74 |
function buildPkgInit () {
|
| 56 |
var myDateTimePicker = null;
|
75 |
var myDateTimePicker = null;
|
| - |
|
76 |
//console.log('buildPkgInit');
|
| - |
|
77 |
//debugger;
|
| - |
|
78 |
showHideDatePicker();
|
| 57 |
|
79 |
|
| 58 |
$('#cancel').click(function(){
|
80 |
$('#cancel').click(function(){
|
| 59 |
closeIFrame();
|
81 |
closeIFrame();
|
| 60 |
});
|
82 |
});
|
| 61 |
|
83 |
|
| 62 |
$('#release').click(function(){
|
84 |
$('#release').click(function(){
|
| 63 |
var data = getScheduledTime();
|
85 |
var data = getScheduledTime();
|
| 64 |
console.log("Scheduled Date:", data);
|
86 |
//console.log("Scheduled Date:", data);
|
| 65 |
debugger;
|
87 |
//debugger;
|
| 66 |
displayError();
|
88 |
displayError();
|
| 67 |
if ( data && data.delta <=0 ) {
|
89 |
if ( data && data.delta <=0 ) {
|
| 68 |
displayError('Scheduled time is now in the past');
|
90 |
displayError('Scheduled time is now in the past');
|
| 69 |
return false;
|
91 |
return false;
|
| 70 |
}
|
92 |
}
|
| Line 87... |
Line 109... |
| 87 |
} else {
|
109 |
} else {
|
| 88 |
$('#errorPane').addClass('display-none').html('');
|
110 |
$('#errorPane').addClass('display-none').html('');
|
| 89 |
}
|
111 |
}
|
| 90 |
}
|
112 |
}
|
| 91 |
|
113 |
|
| 92 |
$('#schedule').click(function(){
|
114 |
$('#schedule').change(showHideDatePicker);
|
| - |
|
115 |
|
| - |
|
116 |
function showHideDatePicker()
|
| - |
|
117 |
{
|
| - |
|
118 |
var radio_button_val = $("input[name='sched']:checked").val();
|
| 93 |
if ( $(this).prop('checked') ) {
|
119 |
if ( radio_button_val === 'sched' ) {
|
| 94 |
$('#showdate').removeClass('display-none');
|
120 |
$('#showdate').removeClass('display-none');
|
| 95 |
myDateTimePicker = $('#datetime').datetimepicker(
|
121 |
myDateTimePicker = $('#datetime').datetimepicker(
|
| 96 |
{
|
122 |
{
|
| 97 |
timeFormat: "HH:mm z",
|
123 |
timeFormat: "HH:mm z",
|
| 98 |
//dateFormat: "D dd-M-yy",
|
124 |
//dateFormat: "D dd-M-yy",
|
| Line 114... |
Line 140... |
| 114 |
onSelect : function(p1,p2){
|
140 |
onSelect : function(p1,p2){
|
| 115 |
console.log("Select", p1 );
|
141 |
console.log("Select", p1 );
|
| 116 |
getScheduledTime();
|
142 |
getScheduledTime();
|
| 117 |
},
|
143 |
},
|
| 118 |
});
|
144 |
});
|
| - |
|
145 |
|
| - |
|
146 |
// Set default time to be midnight - Perth Time (UTC+8)
|
| - |
|
147 |
var midnight = new Date();
|
| - |
|
148 |
midnight.setUTCHours(24-8,0,0,0);
|
| 119 |
myDateTimePicker.datetimepicker('setDate', (new Date()));
|
149 |
myDateTimePicker.datetimepicker('setDate', midnight);
|
| 120 |
getScheduledTime();
|
150 |
getScheduledTime();
|
| 121 |
|
151 |
|
| 122 |
} else {
|
152 |
} else {
|
| 123 |
$('#datetime').datepicker( "destroy" );
|
153 |
$('#datetime').datepicker( "destroy" );
|
| 124 |
$('#showdate').addClass('display-none');
|
154 |
$('#showdate').addClass('display-none');
|
| 125 |
myDateTimePicker = null;
|
155 |
myDateTimePicker = null;
|
| 126 |
}
|
156 |
}
|
| 127 |
});
|
157 |
}
|
| 128 |
|
158 |
|
| 129 |
function getScheduledTime() {
|
159 |
function getScheduledTime() {
|
| 130 |
if ( myDateTimePicker ) {
|
160 |
if ( myDateTimePicker ) {
|
| 131 |
// Convert to Perth timezime 8 hours ahead of GMT
|
161 |
// Convert to Perth timezime 8 hours ahead of GMT
|
| 132 |
// Then pick the essential bits out of the structure
|
162 |
// Then pick the essential bits out of the structure
|
| Line 154... |
Line 184... |
| 154 |
$('#otime').text(txt);
|
184 |
$('#otime').text(txt);
|
| 155 |
$('#ofuture').text(result);
|
185 |
$('#ofuture').text(result);
|
| 156 |
return {txt: txt, delta: delta};
|
186 |
return {txt: txt, delta: delta};
|
| 157 |
}
|
187 |
}
|
| 158 |
}
|
188 |
}
|
| 159 |
|
- |
|
| 160 |
}
|
189 |
}
|
| 161 |
</script>
|
190 |
</script>
|
| 162 |
<div class='Panel tight' style="width:100%">
|
191 |
<div class='Panel tight' style="width:100%">
|
| 163 |
<div class=PanelPad>
|
192 |
<div class=PanelPad>
|
| 164 |
<!-- MESSAGE ++++++++++++++++++++++++++++++++++++++++++++++ -->
|
193 |
<!-- MESSAGE ++++++++++++++++++++++++++++++++++++++++++++++ -->
|
| 165 |
<%Call Messenger ( sMessage , sMessageType, "100%" )%>
|
194 |
<%Call Messenger ( sMessage , sMessageType, "100%" )%>
|
| 166 |
<!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
195 |
<!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
| 167 |
<!--#include file="messages/_msg_inline.asp"-->
|
196 |
<!--#include file="messages/_msg_inline.asp"-->
|
| 168 |
</div>
|
197 |
</div>
|
| 169 |
<div class='textPanel PanelPad'>
|
198 |
<div class='textPanel PanelPad'>
|
| 170 |
<img src="images/i_warning.gif" style="float:left; margin:0 7px 20px 0;">
|
199 |
<img class=PanelCell src="images/i_warning.gif" style="margin:0 7px 20px 0;">
|
| 171 |
<span>Approve this package for autobuild</span>
|
200 |
<span class=PanelCell>Approve this package for autobuild
|
| - |
|
201 |
<p>Estimated build duration: <%=NiceDuration(BuildTime)%>
|
| - |
|
202 |
<br>Estimated duration of complete ripple: <%=NiceDuration(TotalBuildTime)%>
|
| - |
|
203 |
</span>
|
| - |
|
204 |
</div>
|
| - |
|
205 |
<%If bLongBuild Then%>
|
| - |
|
206 |
<div class='textPanel PanelPad informPanel'>
|
| - |
|
207 |
<img class=PanelCell src="images/s_warning.gif">
|
| - |
|
208 |
<span class=PanelCell>This package will cause a significant ripple.<br>Consider scheduling it for a time to minimise dev impact.</span>
|
| 172 |
</div>
|
209 |
</div>
|
| - |
|
210 |
<%End If%>
|
| 173 |
<div id=showdate class=display-none>
|
211 |
<div id=showdate class=display-none>
|
| 174 |
<div class='textPanel PanelPad' id=datetime></div>
|
212 |
<div class='textPanel PanelPad' id=datetime></div>
|
| 175 |
<div>Perth Time: <span id=otime></span></div>
|
213 |
<div>Perth Time: <span id=otime></span></div>
|
| 176 |
<div>In: <span id=ofuture></span></div>
|
214 |
<div>In: <span id=ofuture></span></div>
|
| 177 |
</div>
|
215 |
</div>
|
| - |
|
216 |
<div class='PanelSep'></div>
|
| 178 |
<div class='buttonPanelWhite ui-widget-content ui-dialog-buttonpane'>
|
217 |
<div class='buttonPanelWhite' id=schedule>
|
| - |
|
218 |
<div class=nowrap>
|
| 179 |
<span class=fleft><input type=checkbox id=schedule>Schedule</span>
|
219 |
<input name=sched type=radio value='sched' <%=IIF(bLongBuild, "checked","")%>>Schedule
|
| 180 |
<span id='progressBar' style='visibility:hidden;'><img src='icons/i_processing.gif' width='79' height='14'></span>
|
220 |
<input name=sched type=radio value='now' <%=IIF(bLongBuild, "","checked")%>>Include immediately
|
| 181 |
<button id=release>Release</button>
|
221 |
<button id=release>Release</button>
|
| 182 |
<button id=cancel>Cancel</button>
|
222 |
<button id=cancel>Cancel</button>
|
| - |
|
223 |
</div>
|
| 183 |
</div>
|
224 |
</div>
|
| - |
|
225 |
<div id='progressBar' class='vixSpinner' style='visibility:hidden;'></div>
|
| 184 |
<div id=errorPane class='display-none errorPanel PanelPadTop'></div>
|
226 |
<div id=errorPane class='display-none errorPanel PanelPadTop'></div>
|
| 185 |
</div>
|
227 |
</div>
|
| 186 |
<!-- DESTRUCTOR ------->
|
228 |
<!-- DESTRUCTOR ------->
|
| 187 |
<!--#include file="common/destructor.asp"-->
|
229 |
<!--#include file="common/destructor.asp"-->
|