salesagility_SuiteCRM/modules/UpgradeWizard/uw_main.tpl

437 lines
16 KiB
Smarty
Executable File

{if false}
/**
*
* SugarCRM Community Edition is a customer relationship management program developed by
* SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
*
* SuiteCRM is an extension to SugarCRM Community Edition developed by SalesAgility Ltd.
* Copyright (C) 2011 - 2018 SalesAgility Ltd.
*
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License version 3 as published by the
* Free Software Foundation with the addition of the following permission added
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
* IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
* OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
* details.
*
* You should have received a copy of the GNU Affero General Public License along with
* this program; if not, see http://www.gnu.org/licenses or write to the Free
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA.
*
* You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
* SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "Powered by
* SugarCRM" logo and "Supercharged by SuiteCRM" logo. If the display of the logos is not
* reasonably feasible for technical reasons, the Appropriate Legal Notices must
* display the words "Powered by SugarCRM" and "Supercharged by SuiteCRM".
*/
{/if}
<script type="text/javascript" language="Javascript" src="{sugar_getjspath file='modules/UpgradeWizard/upgradeWizard.js'}"></script>
{$UW_JS}
<div id="title">
{$UW_TITLE}
</div>
<div id="progress" style="display:none;">
{$UW_PROGRESS}
</div>
<div id="message" style="display:none;">
{$UW_MESSAGE}
</div>
<div id="nav">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td>
<form action="index.php" method="post" name="UpgradeWizardForm" id="form">
<input type="hidden" name="module" value="UpgradeWizard">
<input type="hidden" name="action" value="index">
<input type="hidden" name="step" id="step" value="{$UW_STEP}">
<input type="hidden" name="overwrite_files" id="over">
<input type="hidden" name="schema_change" id="schema">
<input type="hidden" name="schema_drop" id="schema_drop">
<input type="hidden" name="overwrite_files_serial" id="overwrite_files_serial">
<input type="hidden" name="addTaskReminder" id="addTaskReminder">
<input type="hidden" name="addEmailReminder" id="addEmailReminder">
{if !isset($includeContainerCSS) || $includeContainerCSS}
<link rel='stylesheet' type='text/css' href="{sugar_getjspath file='include/javascript/yui/assets/container.css'}" />
{if $step == 'commit'}
<link rel='stylesheet' type='text/css' href="{sugar_getjspath file='include/javascript/yui/build/container/assets/container.css'}"/>
{/if}
{/if}
{if $showBack}
<input title = "{$MOD.LBL_BUTTON_BACK}"
class = "button"
onclick = "document.getElementById('form').step.value='{$STEP_BACK}';"
type = "submit"
value = " {$MOD.LBL_BUTTON_BACK} ">
{/if}
{if $showNext}
<input title = "{$MOD.LBL_BUTTON_NEXT}"
class = "button"
{$disableNextForLicense}
onclick = " handleUploadCheck('{$step}', {$u_allow}); if(!{$u_allow}) return; upgradeP('{$step}', false);document.getElementById('form').step.value='{$STEP_NEXT}'; handlePreflight('{$step}'); document.getElementById('form').submit();"
type = "button"
value = " {$MOD.LBL_BUTTON_NEXT} "
id = "next_button" >
{/if}
{if $showCancel}
<input title = "{$MOD.LBL_BUTTON_CANCEL}"
class = "button"
{if $step == 'start'}
{**** if this is the first step, cancel should take you to administration screen ****}
onclick = "document.location.href='index.php?module=Administration&action=index';"
type = "button"
{else}
onclick = "cancelUpgrade();document.getElementById('form').step.value='{$STEP_CANCEL}';"
type = "submit"
{/if}
value = " {$MOD.LBL_BUTTON_CANCEL} ">
{/if}
{if $showRecheck}
<input title = "{$MOD.LBL_BUTTON_RECHECK}"
class = "button"
onclick = "upgradeP('{$step}', true);document.getElementById('form').step.value='{$STEP_RECHECK}';"
type = "submit"
value = " {$MOD.LBL_BUTTON_RECHECK} ">
{/if}
{if $showDone}
<input title = "{$MOD.LBL_BUTTON_DONE}"
class = "button"
onclick = "deleteCacheAjax();window.location.href='index.php?module=Home&action=About';"
type = "button"
value = " {$MOD.LBL_BUTTON_DONE} ">
{/if}
{if $showExit}
<input title = "{$MOD.LBL_BUTTON_EXIT}"
class = "button"
onclick = "window.location.href='index.php?module=Administration&action=index';"
type = "button"
value = " {$MOD.LBL_BUTTON_EXIT} ">
{/if}
</form>
</td>
</tr>
</table>
</div>
<div id="main">
<table width="100%" border="0" cellpadding="0" cellpadding="0"
class="{if !isset($includeContainerCSS) || $includeContainerCSS}tabDetailView{else}detail view small{/if}">
{if $step != "start" && $step != "cancel" && $step != "end"}
<tr>
<td id=error_messages colspan="2">
<div id="top_message">{$top_message}</div>
</td>
</tr>
{/if}
<tr>
<td width="25%" rowspan="2" {if !isset($includeContainerCSS) || $includeContainerCSS}class="tabDetailViewDL"{else}scope="row"{/if}><span>
{$CHECKLIST}
</span></td>
<td width="75%" {if !isset($includeContainerCSS) || $includeContainerCSS}class="tabDetailViewDF"{/if}><span>
{$UW_MAIN}&nbsp;
</span></td>
</tr>
{if $step == "upload"}
<tr>
<td valign="top" {if !isset($includeContainerCSS) || $includeContainerCSS}class="tabDetailViewDF"{/if}>
&nbsp;<br />
{$UW_HISTORY}
</td>
</tr>
{/if}
</table>
</div>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td>
<form action="index.php" method="post" name="UpgradeWizardForm" id="form">
<input type="hidden" name="module" value="UpgradeWizard">
<input type="hidden" name="action" value="index">
<input type="hidden" name="step" value="{$UW_STEP}">
<input type="hidden" name="overwrite_files" id="over">
<input type="hidden" name="schema_change" id="schema">
<input type="hidden" name="schema_drop" id="schema_drop">
<input type="hidden" name="overwrite_files_serial" id="overwrite_files_serial">
<input type="hidden" name="addTaskReminder" id="addTaskReminder">
<input type="hidden" name="addEmailReminder" id="addEmailReminder">
{if !isset($includeContainerCSS) || $includeContainerCSS}
<link rel='stylesheet' type='text/css' href='include/javascript/yui/assets/container.css' />
{if $step == 'commit'}
<link rel='stylesheet' type='text/css' href='include/javascript/yui/build/container/assets/container.css'/>
{/if}
{/if}
{if $showBack}
<input title = "{$MOD.LBL_BUTTON_BACK}"
class = "button"
onclick = "document.getElementById('form').step.value='{$STEP_BACK}';"
type = "submit"
value = " {$MOD.LBL_BUTTON_BACK} ">
{/if}
{if $showNext}
<input title = "{$MOD.LBL_BUTTON_NEXT}"
class = "button"
{$disableNextForLicense}
onclick = " handleUploadCheck('{$step}', {$u_allow}); if(!{$u_allow}) return; upgradeP('{$step}', false);document.getElementById('form').step.value='{$STEP_NEXT}'; handlePreflight('{$step}'); document.getElementById('form').submit();"
type = "button"
value = " {$MOD.LBL_BUTTON_NEXT} "
id = "next_button" >
{/if}
{if $showCancel}
<input title = "{$MOD.LBL_BUTTON_CANCEL}"
class = "button"
{if $step == 'start'}
{**** if this is the first step, cancel should take you to administration screen ****}
onclick = "document.location.href='index.php?module=Administration&action=index';"
type = "button"
{else}
onclick = "cancelUpgrade();document.getElementById('form').step.value='{$STEP_CANCEL}';"
type = "submit"
{/if}
value = " {$MOD.LBL_BUTTON_CANCEL} ">
{/if}
{if $showRecheck}
<input title = "{$MOD.LBL_BUTTON_RECHECK}"
class = "button"
onclick = "upgradeP('{$step}', true);document.getElementById('form').step.value='{$STEP_RECHECK}';"
type = "submit"
value = " {$MOD.LBL_BUTTON_RECHECK} ">
{/if}
{if $showDone}
<input title = "{$MOD.LBL_BUTTON_DONE}"
class = "button"
onclick = "deleteCacheAjax();window.location.href='index.php?module=Home&action=About';"
type = "button"
value = " {$MOD.LBL_BUTTON_DONE} ">
{/if}
{if $showExit}
<input title = "{$MOD.LBL_BUTTON_EXIT}"
class = "button"
onclick = "window.location.href='index.php?module=Administration&action=index';"
type = "button"
value = " {$MOD.LBL_BUTTON_EXIT} ">
{/if}
</form>
</td>
</tr>
</table>
<script>
UPGRADE_PROGRESS = '{$MOD.LBL_UPGRADE_IN_PROGRESS}';
TIME_ELAPSED = "{$MOD.LBL_UPGRADE_TIME_ELAPSED}";
START_IN_PROGRESS = "{$MOD.LBL_START_UPGRADE_IN_PROGRESS}";
SYSTEM_CHECK_IN_PROGRESS = "{$MOD.LBL_SYSTEM_CHECKS_IN_PROGRESS}";
LICENSE_CHECK_IN_PROGRESS = "{$MOD.LBL_LICENSE_CHECK_IN_PROGRESS}";
PREFLIGHT_CHECK_IN_PROGRESS ="{$MOD.LBL_PREFLIGHT_CHECK_IN_PROGRESS}";
COMMIT_UPGRADE_IN_PROGRESS ="{$MOD.LBL_COMMIT_UPGRADE_IN_PROGRESS}";
UPGRADE_SUMMARY_IN_PROGRESS ="{$MOD.LBL_UPGRADE_SUMMARY_IN_PROGRESS}";
UPGRADE_SCRIPTS_IN_PROGRESS ="{$MOD.LBL_UPGRADE_SCRIPTS_IN_PROGRESS}";
SET_STEP_TO_COMPLETE = "{$MOD.LBL_UW_COMPLETE}";
UPLOADE_UPGRADE_IN_PROGRESS= "{$MOD.LBL_UPLOADE_UPGRADE_IN_PROGRESS}";
UPLOADING_UPGRADE_PACKAGE = "{$MOD.LBL_UPLOADING_UPGRADE_PACKAGE}";
UPGRADE_CANCEL_IN_PROGRESS ="{$MOD.LBL_UPGRADE_CANCEL_IN_PROGRESS}";
PREFLIGHT_FILE_COPYING_PROGRESS = "{$MOD.LBL_PREFLIGHT_FILE_COPYING_PROGRESS}";
{literal}
var msgPanel;
var c=0
var s=0
var t
var currStage
var timeOutWindowMultiplier = 1
var timeOutWindow = 60
function upgradeP(step, recheck){
//if(step == 'systemCheck'){
// return;
//}
if(document.getElementById("upgradeDiv") != null){
var args = { width:"300px",
modal:true,
//xy:[400,300],
fixedcenter: true,
constraintoviewport: false,
underlay:"shadow",
close:false,
draggable:true,
effect:{effect:YAHOO.widget.ContainerEffect.FADE, duration:.5}
} ;
msg_panel = new YAHOO.widget.Panel('p_msg', args);
//If we haven't built our panel using existing markup,
//we can set its content via script:
if(step == 'start' || step == 'systemCheck'){
//currStage = START_IN_PROGRESS;
currStage = SYSTEM_CHECK_IN_PROGRESS;
}
/* removed window from system check. if you need to add back, remove check at the top
* of this function as well
if(step == 'systemCheck'){
currStage = UPLOADE_UPGRADE_IN_PROGRESS;
//document.getElementById(step).innerHTML='<i>'+SET_STEP_TO_COMPLETE+'</i>'
}
*/
if(step == 'uploadingUpgradePackage'){
currStage = UPLOADING_UPGRADE_PACKAGE;
}
if(step == 'license_fiveO'){
//currStage = LICENSE_CHECK_IN_PROGRESS;
currStage = PREFLIGHT_CHECK_IN_PROGRESS;
//document.getElementById(step).innerHTML='<i>'+SET_STEP_TO_COMPLETE+'</i>'
}
if(step == 'upload'){
//currStage = LICENSE_CHECK_IN_PROGRESS;
currStage = PREFLIGHT_CHECK_IN_PROGRESS;
//document.getElementById(step).innerHTML='<i>'+SET_STEP_TO_COMPLETE+'</i>'
}
if(step == 'preflight'){
if(recheck){
currStage = PREFLIGHT_CHECK_IN_PROGRESS;
}
else{
currStage = PREFLIGHT_FILE_COPYING_PROGRESS;
}
//document.getElementById(step).innerHTML='<i>'+SET_STEP_TO_COMPLETE+'</i>'
}
if(step == 'commit'){
currStage = UPGRADE_SCRIPTS_IN_PROGRESS;
//document.getElementById(step).innerHTML='<i>'+SET_STEP_TO_COMPLETE+'</i>'
}
if(step == 'layouts'){
currStage = UPGRADE_SUMMARY_IN_PROGRESS;
//document.getElementById(step).innerHTML='<i>'+SET_STEP_TO_COMPLETE+'</i>'
}
msg_panel.setHeader(currStage);
msg_panel.setBody(document.getElementById("upgradeDiv").innerHTML);
//timedCount(currStage);
//msg_panel.setFooter('Time Elapsed '+s);
msg_panel.render(document.body);
msgPanel = msg_panel;
msgPanel.show;
}
return;
}
function cancelUpgrade(){
if(document.getElementById("upgradeDiv") != null){
var args = { width:"300px",
modal:true,
//xy:[400,300],
fixedcenter: true,
constraintoviewport: false,
underlay:"shadow",
close:false,
draggable:true,
effect:{effect:YAHOO.widget.ContainerEffect.FADE, duration:.5}
} ;
msg_panel = new YAHOO.widget.Panel('p_msg', args);
//If we haven't built our panel using existing markup,
//we can set its content via script:
currStage = UPGRADE_CANCEL_IN_PROGRESS;
//document.getElementById(step).innerHTML='<i>'+SET_STEP_TO_COMPLETE+'</i>'
msg_panel.setHeader(currStage);
msg_panel.setBody(document.getElementById("upgradeDiv").innerHTML);
//timedCount(currStage);
//msg_panel.setFooter('Time Elapsed '+s);
msg_panel.render(document.body);
msgPanel = msg_panel;
msgPanel.show;
}
return;
}
function timedCount(currStage)
{
msg_panel.setFooter(TIME_ELAPSED+' '+s);
currStage = currStage+' '+s;
msg_panel.setHeader(currStage);
c=c+1
s=c
timeOutWindowMultiples = timeOutWindowMultiplier*timeOutWindow
if(c == timeOutWindowMultiples){
updateUpgradeStepTime(timeOutWindow)
timeOutWindowMultiplier = timeOutWindowMultiplier+1
}
if(c<10){
s='0'+c
}
if(c>=60 && c<3600){
m=1
while(c>=((m+1)*60)){
m=m+1
}
secs= (c-(m*60))
if(m < 10){
m = '0'+m
}
if(secs < 10){
secs = '0'+secs
}
s=m+':'+ secs
}
if(c>=3600){
h=1;
while(c>=((h+1)*3600)){
h=h+1;
}
r= c-(h*3600)
m = 0
secs = 0
if(r>=60){
m=1;
while(r>=((m+1)*60)){
m=m+1;
}
secs = (r-(m*60))
}
if(h < 10){
h = '0'+h
}
if(m < 10){
m = '0'+m
}
if(secs <10){
secs = '0'+ secs
}
s=h+':'+m+':'+ secs
}
t=setTimeout("timedCount(currStage)",1000)
}
function updateUpgradeStepTime(ts){
success = function(r) {
//making ajax call every three minutes to make sure the browser
//remains active
}
postData = 'upgradeStepTime=' + ts + '&module=UpgradeWizard&action=upgradeTimeCounter&to_pdf=1&sugar_body_only=1';
var ajxProgress = YAHOO.util.Connect.asyncRequest('POST','index.php', {success: success, failure: success}, postData);
}
</script>
{/literal}