// Merge -> revision 9221

This commit is contained in:
rMalie
2011-10-11 12:45:12 +00:00
parent b0cc80ad01
commit eeb5b16112
77 changed files with 1987 additions and 815 deletions
+4
View File
@@ -25,6 +25,10 @@
* International Registered Trademark & Property of PrestaShop SA
*/
// @since 1.4.5.0
// add the following comment in a module file to skip it in translations
// IGNORE_THIS_FILE_FOR_TRANSLATION
class AdminPreferences extends AdminTab
{
public function __construct()
+3
View File
@@ -25,6 +25,9 @@
* International Registered Trademark & Property of PrestaShop SA
*/
// @since 1.4.5.0
// add the following comment in a module file to skip it in translations
// IGNORE_THIS_FILE_FOR_TRANSLATION
abstract class AdminSelfTab
{
/** @var integer Tab id */
+126 -82
View File
@@ -25,6 +25,7 @@
* International Registered Trademark & Property of PrestaShop SA
*/
if(!defined('_PS_ADMIN_DIR_'))
define('_PS_ADMIN_DIR_', _PS_ADMIN_DIR_);
if(!defined('_PS_USE_SQL_SLAVE_'))
@@ -473,6 +474,13 @@ $this->standalone = true;
}
$changedFileList = $this->upgrader->getChangedFilesList();
if (!isset($changedFileList['core']))
$changedFileList['core'] = array();
if (!isset($changedFileList['translation']))
$changedFileList['translation'] = array();
if (!isset($changedFileList['mail']))
$changedFileList['mail'] = array();
if ($changedFileList === false)
{
$changedFileList = array();
@@ -794,11 +802,6 @@ $this->standalone = true;
switch ($this->currentParams['upgradeDbStep'])
{
default:
$this->next = 'upgradeComplete';
$this->nextResponseType = 'json';
return true;
// $this->_model('checkConfig');
break;
// 1) confirm version is correct(DB)
// install/model.php?method=getVersionFromDb&language=0
case '1':
@@ -825,7 +828,7 @@ $this->standalone = true;
case '4':
$this->next = 'upgradeComplete';
$this->nextResponseType = 'json';
$this->nextDesc = $this->l('Way to go ! Upgrade complete.');
$this->nextDesc = $this->l('Way to go ! Upgrade complete. You can now reactivate your shop.');
break;
}
@@ -1352,10 +1355,18 @@ $this->standalone = true;
{
$res = $this->upgrader->downloadLast($this->autoupgradePath,$this->destDownloadFilename);
if ($res){
if (md5_file(realpath($this->autoupgradePath).DIRECTORY_SEPARATOR.$this->destDownloadFilename) == $this->upgrader->md5 )
{
$this->next = 'unzip';
$this->nextDesc = $this->l('Download complete. Now extracting');
}
else
{
$this->next = 'error';
$this->nextDesc = $this->l('Download complete but md5sum does not match. Operation aborted.');
}
}
else
{
$this->next = 'error';
$this->nextDesc = $this->l('Error during download');
@@ -1376,12 +1387,15 @@ $this->standalone = true;
$return['next'] = $this->next;
$return['status'] = $this->next == 'error' ? 'error' : 'ok';
$return['nextDesc'] = $this->nextDesc;
$return['upgradeDbStep'] = 0;
foreach($this->ajaxParams as $v)
if(property_exists($this,$v))
$this->nextParams[$v] = $this->$v;
$return['nextParams'] = $this->nextParams;
if (!isset($return['nextParams']['upgradeDbStep']))
$return['nextParams']['upgradeDbStep'] = 0;
$return['nextParams']['typeResult'] = $this->nextResponseType;
@@ -1428,7 +1442,7 @@ $this->standalone = true;
}
}
if (Tools::apacheModExists('evasive'))
if (!method_exists('Tools', 'apacheModExists') || Tools::apacheModExists('evasive'))
sleep(1);
}
@@ -1501,6 +1515,10 @@ txtError[37] = "'.$this->l('The config/defines.inc.php file was not found. Where
{
echo '<fieldset><legend>'.$this->l('Rollback').'</legend>
<div id="rollbackForm">';
echo '<p>'
.$this->l('After upgrading your shop, you can rollback to the previously database and files. Use this function if your theme or an essential module is not working correctly.')
.'</p><br/>';
if (empty($this->backupFilesFilename) AND empty($this->backupDbFilename))
echo $this->l('No rollback available');
else if (!empty($this->backupFilesFilename) OR !empty($this->backupDbFilename))
@@ -1515,20 +1533,22 @@ txtError[37] = "'.$this->l('The config/defines.inc.php file was not found. Where
echo '</div></fieldset>';
}
private function _displayUpgraderForm()
/** this returns fieldset containing the configuration points you need to use autoupgrade
* @return string
*/
private function getCurrentConfiguration()
{
global $cookie;
$pleaseUpdate = $this->upgrader->checkPSVersion();
echo '<fieldset class="width autoupgrade " >';
echo '<legend>'.$this->l('Your current configuration').'</legend>';
echo '<b>'.$this->l('Root directory').' : </b>'.$this->prodRootDir.'<br/><br/>';
$content = '<fieldset class="width autoupgrade " >';
$content .= '<legend><a href="#" id="currentConfigurationToggle">'.$this->l('Your current configuration').'</a></legend>';
$content .= '<div id="currentConfiguration">
<p>'.$this->l('All the following points must be ok in order to allow the upgrade.').'</p>
<b>'.$this->l('Root directory').' : </b>'.$this->prodRootDir.'<br/><br/>';
if ($this->rootWritable)
$srcRootWritable = '../img/admin/enabled.gif';
else
$srcRootWritable = '../img/admin/disabled.gif';
echo '<b>'.$this->l('Root directory status').' : </b>'.'<img src="'.$srcRootWritable.'" /> '.($this->rootWritable?$this->l('fully writable'):$this->l('not writable recursively')).'<br/><br/>';
$content .= '<b>'.$this->l('Root directory status').' : </b>'.'<img src="'.$srcRootWritable.'" /> '.($this->rootWritable?$this->l('fully writable'):$this->l('not writable recursively')).'<br/><br/>';
if ($this->upgrader->need_upgrade)
{
@@ -1536,12 +1556,13 @@ txtError[37] = "'.$this->l('The config/defines.inc.php file was not found. Where
$srcAutoupgrade = '../img/admin/enabled.gif';
else
$srcAutoupgrade = '../img/admin/disabled.gif';
echo '<b>'.$this->l('Autoupgrade allowed').' : </b>'.'<img src="'.$srcAutoupgrade.'" /> '.($this->upgrader->autoupgrade?$this->l('This release allow autoupgrade.'):$this->l('This release does not allow autoupgrade')).'. <br/><br/>';
$content .= '<b>'.$this->l('Upgrade available').' : </b>'.'<img src="'.$srcAutoupgrade.'" /> '.($this->upgrader->autoupgrade?$this->l('This release allows autoupgrade.'):$this->l('This release does not allow autoupgrade')).' <br/><br/>';
}
else
{
$srcAutoupgrade = '../img/admin/disabled.gif';
echo '<b>'.$this->l('Autoupgrade allowed').' : </b>'.'<img src="../img/admin/disabled.gif" /> . <br/><br/>';
$content .= '<b>'.$this->l('Upgrade available').' : </b>'.'<img src="../img/admin/disabled.gif" />'.$this->l('You already have the last version.').'<br/><br/>';
}
@@ -1555,110 +1576,129 @@ txtError[37] = "'.$this->l('The config/defines.inc.php file was not found. Where
$srcShopStatus = '../img/admin/enabled.gif';
$label = $this->l('Yes');
}
echo '<b>'.$this->l('Shop desactivated').' : </b>'.'<img src="'.$srcShopStatus.'" />'.$label.'<br/><br/>';
$content .= '<b>'.$this->l('Shop desactivated').' : </b>'.'<img src="'.$srcShopStatus.'" /><a href="index.php?tab=AdminPreferences&token='.Tools::getAdminTokenLite('AdminPreferences').'" class="button">'.$label.'</a><br/><br/>';
$max_exec_time = ini_get('max_execution_time');
if ($max_exec_time == 0)
$srcExecTime = '../img/admin/enabled.gif';
else
$srcExecTime = '../img/admin/warning.gif';
echo '<b>'.$this->l('PHP time limit').' : </b>'.'<img src="'.$srcExecTime.'" />'.($max_exec_time == 0?$this->l('disabled'):$max_exec_time.' '.$this->l('seconds')).' <br/><br/>';
$content .= '<b>'.$this->l('PHP time limit').' : </b>'.'<img src="'.$srcExecTime.'" />'.($max_exec_time == 0?$this->l('disabled'):$max_exec_time.' '.$this->l('seconds')).' <br/><br/>';
if (($testConfigDone = Configuration::get('PS_AUTOUP_DONT_SAVE_IMAGES')) !== false)
$configurationDone = '../img/admin/enabled.gif';
else
$configurationDone = '../img/admin/disabled.gif';
echo '<b>'.$this->l('Options chosen').' : </b>'.'<img src="'.$configurationDone.'" /> '.($testConfigDone?$this->l('autoupgrade configuration ok'):$this->l('Please configure autoupgrade options')).'<br/><br/>';
$content .= '<b>'.$this->l('Options chosen').' : </b>'.'<img src="'.$configurationDone.'" /> '.($testConfigDone?$this->l('autoupgrade configuration ok'):$this->l('Please configure autoupgrade options')).'<br/><br/>';
echo '<b>'.$this->l('PrestaShop Original version').' : </b>'.'<span id="checkPrestaShopFilesVersion">
$content .= '<b>'.$this->l('PrestaShop Original version').' : </b>'.'<span id="checkPrestaShopFilesVersion">
<img id="pleaseWait" src="'.__PS_BASE_URI__.'img/loader.gif"/>
</span>';
echo '<p> <a class="button" id="scrollToOptions" href="#options">'.$this->l('Modify your options').'</a></p>';
echo '</fieldset>';
$content .= '<p> <a class="button" id="scrollToOptions" href="#options">'.$this->l('Modify your options').'</a></p>
</div>';
$content .= '</fieldset>';
echo '<br/>';
$content .= '<script type="text/javascript">
$("#currentConfigurationToggle").click(function(e){e.preventDefault();$("#currentConfiguration").toggle()});'
echo '<fieldset class=""><legend>'.$this->l('Update').'</legend>';
.($this->configOk()?'$("#currentConfiguration").hide();$("#currentConfigurationToggle").after("<img src=\"../img/admin/enabled.gif\" />");':'').'</script>';
echo '<div style="float:left">
return $content;
}
private function _displayUpgraderForm()
{
global $cookie;
$content = '';
$pleaseUpdate = $this->upgrader->checkPSVersion();
$content .= $this->getCurrentConfiguration();
$content .= '<br/>';
$content .= '<fieldset class=""><legend>'.$this->l('Update').'</legend>';
$content .= '<div style="float:left">
<h1>'.sprintf($this->l('Your current prestashop version : %s '),_PS_VERSION_).'</h1>';
echo '<p>'.sprintf($this->l('Last version is %1$s (%2$s) '), $this->upgrader->version_name, $this->upgrader->version_num).'</p>';
$content .= '<p>'.sprintf($this->l('Last version is %1$s (%2$s) '), $this->upgrader->version_name, $this->upgrader->version_num).'</p>';
// @TODO : this should be checked when init()
if ($this->isUpgradeAllowed()) {
if ($pleaseUpdate) {
echo '<li><img src="'._PS_ADMIN_IMG_.'information.png" alt="information"/> '.$this->l('Latest Prestashop version available is:').' <b>'.$pleaseUpdate['name'].'</b></li>';
$content .= '<li><img src="'._PS_ADMIN_IMG_.'information.png" alt="information"/> '.$this->l('Latest Prestashop version available is:').' <b>'.$pleaseUpdate['name'].'</b></li>';
}
// echo '<input class="button" type="submit" name="sumbitUpdateVersion" value="'.$this->l('Backup Database, backup files and update right now and in one click !').'"/>';
// echo '<input class="button" type="submit" id="refreshCurrent" value="'.$this->l("refresh update dir / current").'"/>';
echo '<br/>';
$content .= '<br/>';
if ($this->upgrader->need_upgrade)
{
if($this->configOk())
{
echo '<p><a href="" id="upgradeNow" class="button-autoupgrade upgradestep">'.$this->l('Upgrade PrestaShop now !').'</a></p>';
echo '<small>'.sprintf($this->l('PrestaShop will be downloaded from %s'), $this->upgrader->link).'</small><br/>';
echo '<small><a href="'.$this->upgrader->changelog.'">'.$this->l('see CHANGELOG').'</a></small>';
$content .= '<p><a href="" id="upgradeNow" class="button-autoupgrade upgradestep">'.$this->l('Upgrade PrestaShop now !').'</a></p>';
info($this->upgrader->link);
$content .= '<small>'.sprintf($this->l('PrestaShop will be downloaded from %s'), $this->upgrader->link).'</small><br/>';
$content .= '<small><a href="'.$this->upgrader->changelog.'">'.$this->l('see CHANGELOG').'</a></small>';
}
else
echo $this->displayWarning('Your current configuration does not allow upgrade.');
$content .= $this->displayWarning('Your current configuration does not allow upgrade.');
}
else
{
echo '<span class="button-autoupgrade upgradestep" >'.$this->l('Your shop is already up to date.').'</span> ';
$content .= '<span class="button-autoupgrade upgradestep" >'.$this->l('Your shop is already up to date.').'</span> ';
}
echo '<br/><br/><small>'.sprintf($this->l('last datetime check : %s '),date('Y-m-d H:i:s',Configuration::get('PS_LAST_VERSION_CHECK'))).'</span>
$content .= '<br/><br/><small>'.sprintf($this->l('last datetime check : %s '),date('Y-m-d H:i:s',Configuration::get('PS_LAST_VERSION_CHECK'))).'</span>
<a class="button" href="index.php?tab=AdminSelfUpgrade&token='.Tools::getAdminToken('AdminSelfUpgrade'.(int)(Tab::getIdFromClassName(get_class($this))).(int)$cookie->id_employee).'&refreshCurrentVersion=1">'.$this->l('Please click to refresh').'</a>
</small>';
echo'</div>
$content .='</div>
<div id="currentlyProcessing" style="display:none;float:right"><h4>Currently processing <img id="pleaseWait" src="'.__PS_BASE_URI__.'img/loader.gif"/></h4>
<div id="infoStep" class="processing" style=height:50px;width:400px;" >'.$this->l('I\'m waiting for your command, sir').'</div>';
echo '</div>';
$content .= '</div>';
echo '</fieldset>';
$content .= '</fieldset>';
if (defined('_PS_MODE_DEV_') AND _PS_MODE_DEV_ AND $this->manualMode)
{
echo '<br class="clear"/>';
echo '<fieldset class="autoupgradeSteps"><legend>'.$this->l('Step').'</legend>';
echo '<h4>'.$this->l('Upgrade steps').'</h4>';
echo '<div>';
echo '<a href="" id="download" class="button upgradestep" >download</a>';
echo '<a href="" id="unzip" class="button upgradestep" >unzip</a>'; // unzip in autoupgrade/latest
echo '<a href="" id="removeSamples" class="button upgradestep" >removeSamples</a>'; // remove samples (iWheel images)
echo '<a href="" id="backupFiles" class="button upgradestep" >backupFiles</a>'; // backup files
echo '<a href="" id="backupDb" class="button upgradestep" >backupDb</a>';
echo '<a href="" id="upgradeFiles" class="button upgradestep" >upgradeFiles</a>';
echo '<a href="" id="upgradeDb" class="button upgradestep" >upgradeDb</a>';
echo '</div>';
$content .= '<br class="clear"/>';
$content .= '<fieldset class="autoupgradeSteps"><legend>'.$this->l('Step').'</legend>';
$content .= '<h4>'.$this->l('Upgrade steps').'</h4>';
$content .= '<div>';
$content .= '<a href="" id="download" class="button upgradestep" >download</a>';
$content .= '<a href="" id="unzip" class="button upgradestep" >unzip</a>'; // unzip in autoupgrade/latest
$content .= '<a href="" id="removeSamples" class="button upgradestep" >removeSamples</a>'; // remove samples (iWheel images)
$content .= '<a href="" id="backupFiles" class="button upgradestep" >backupFiles</a>'; // backup files
$content .= '<a href="" id="backupDb" class="button upgradestep" >backupDb</a>';
$content .= '<a href="" id="upgradeFiles" class="button upgradestep" >upgradeFiles</a>';
$content .= '<a href="" id="upgradeDb" class="button upgradestep" >upgradeDb</a>';
$content .= '</div>';
if (defined('_PS_ALLOW_UPGRADE_UNSTABLE_') AND _PS_ALLOW_UPGRADE_UNSTABLE_ )
{
echo '<h4>Development tools </h4><div>';
echo '<a href="" name="action" id="svnCheckout" class="button upgradestep" type="submit" >svnCheckout</a>';
echo '<a href="" name="action" id="svnUpdate" class="button upgradestep" type="submit" >svnUpdate</a>';
echo '<a href="" name="action" id="svnExport" class="button upgradestep" type="submit" >svnExport</a>';
echo '<br class="clear"/>';
echo '</div>';
$content .= '<h4>Development tools </h4><div>';
$content .= '<a href="" name="action" id="svnCheckout" class="button upgradestep" type="submit" >svnCheckout</a>';
$content .= '<a href="" name="action" id="svnUpdate" class="button upgradestep" type="submit" >svnUpdate</a>';
$content .= '<a href="" name="action" id="svnExport" class="button upgradestep" type="submit" >svnExport</a>';
$content .= '<br class="clear"/>';
$content .= '</div>';
}
}
echo' <div id="quickInfo" class="processing" style="height:100px;">&nbsp;</div>';
$content .=' <div id="quickInfo" class="processing" style="height:100px;">&nbsp;</div>';
// for upgradeDb
echo '<p id="dbResultCheck"></p>';
echo '<p id="dbCreateResultCheck"></p>';
$content .= '<p id="dbResultCheck"></p>';
$content .= '<p id="dbCreateResultCheck"></p>';
}
else
echo '<p>'.$this->l('Your current configuration does not allow upgrade.').'</p>';
$content .= '<p>'.$this->l('Your current configuration does not allow upgrade.').'</p>';
echo '</fieldset>';
/* echo '<fieldset class="right">
$content .= '</fieldset>';
/* $content .= '<fieldset class="right">
<legend>Error</legend>
<div id="errorWindow" > no error yet</div>
</fieldset>';
@@ -1666,13 +1706,14 @@ txtError[37] = "'.$this->l('The config/defines.inc.php file was not found. Where
*/
// information to keep will be in #infoStep
// temporary infoUpdate will be in #tmpInformation
echo '<script type="text/javascript">';
$content .= '<script type="text/javascript">';
// _PS_MODE_DEV_ is available in js
if (defined('_PS_MODE_DEV_') AND _PS_MODE_DEV_)
echo 'var _PS_MODE_DEV_ = true;';
echo $this->_getJsErrorMsgs();
$content .= 'var _PS_MODE_DEV_ = true;';
$content .= $this->_getJsErrorMsgs();
echo '</script>';
$content .= '</script>';
echo $content;
}
public function display()
@@ -1694,7 +1735,7 @@ echo '</script>';
#checkPrestaShopFilesVersion{margin-bottom:20px;}
#changedList ul{list-style-type:circle}
.changedFileList {margin-left:20px; padding-left:5px;}
.changedNotice li{color:lightgrey;}
.changedNotice li{color:grey;}
.changedImportant li{color:red;font-weight:bold}
</style>';
$this->displayWarning($this->l('This function is experimental. It\'s highly recommended to make a backup of your files and database before starting the upgrade process.'));
@@ -1718,13 +1759,11 @@ echo '</script>';
echo '<br/>';
$this->_displayForm('autoUpgradeOptions',$this->_fieldsAutoUpgrade,'<a href="" name="options" id="options">'.$this->l('Options').'</a>', '','prefs');
if ($this->standalone)
{
// We need jquery 1.6 for json
echo '<script type="text/javascript">
jq13 = jQuery.noConflict(true);
</script>
<script type="text/javascript" src="'.__PS_BASE_URI__.'modules/autoupgrade/jquery-1.6.2.min.js"></script>';
}
echo '<script type="text/javascript" src="'.__PS_BASE_URI__.'modules/autoupgrade/jquery.xml2json.js"></script>';
echo '<script type="text/javascript">'.$this->_getJsInit().'</script>';
@@ -1767,8 +1806,8 @@ function addQuickInfo(arrQuickInfo){
$("#quickInfo").show();
for(i=0;i<arrQuickInfo.length;i++)
$("#quickInfo").append(arrQuickInfo[i]+"<br/>");
$("#quickInfo").attr({ scrollTop: $("#quickInfo").attr("scrollHeight") });
// Note : jquery 1.6 make uses of prop() instead of attr()
$("#quickInfo").prop({ scrollTop: $("#quickInfo").prop("scrollHeight") },1);
}
}';
@@ -1835,7 +1874,7 @@ function handleXMLResult(xmlRet, previousParams)
// use xml2json and put the result in the global var
// this will be used in after** javascript functions
resGlobal = $.xml2json(xmlRet);
result = "ok";
switch(previousParams.upgradeDbStep)
{
case 0: // getVersionFromDb
@@ -1858,7 +1897,7 @@ function handleXMLResult(xmlRet, previousParams)
if (result == "ok")
{
nextParams = previousParams;
nextParams.upgradeDbStep = previousParams.upgradeDbStep+1;
nextParams.upgradeDbStep = parseInt(previousParams.upgradeDbStep)+1;
if(nextParams.upgradeDbStep >= 4)
{
resGlobal.next = "upgradeComplete";
@@ -1899,12 +1938,14 @@ function afterUpgradeComplete()
$("#dbResultCheck")
.addClass("ok")
.removeClass("fail")
.html("<p>'.$this->l('upgrade complete. Please check your front-office (try to make an order, check theme)').'</p>")
.show("slow");
.html("<p>'.$this->l('upgrade complete. Please check your front-office theme is functionnal (try to make an order, check theme)').'</p>")
.show("slow")
.append("<a href=\"index.php?tab=AdminPreferences&token='.Tools::getAdminTokenLite('AdminPreferences').'\" class=\"button\">'.$this->l('activate your shop here').'</a>");
$("#dbCreateResultCheck")
.hide("slow");
$("#infoStep").html("<h3>'.$this->l('Upgrade Complete ! ').'</h3>");
}
/**
* afterBackupDb display the button
*
@@ -2110,7 +2151,7 @@ function handleError(res)
$(fileList).each(function(k,v){
$(subList).append("<li>"+v+"</li>");
});
$("#changedList").append("<h3><a class=\"toggleSublist\">"+title+"</a></h3>");
$("#changedList").append("<h3><a class=\"toggleSublist\">"+title+"</a> (" + fileList.length + ")</h3>");
$("#changedList").append(subList);
$("#cchangedList").append("<br/>");
@@ -2119,7 +2160,7 @@ function handleError(res)
$js.= '$(document).ready(function(){
$.ajax({
type:"POST",
url : "'.($this->standalone? __PS_BASE_URI__ . trim($this->adminDir,DIRECTORY_SEPARATOR).'/autoupgrade/ajax-upgradetab.php' : str_replace('index','ajax-tab',$currentIndex)).'",
url : "'. __PS_BASE_URI__ . trim($this->adminDir,DIRECTORY_SEPARATOR).'/autoupgrade/ajax-upgradetab.php",
async: true,
data : {
dir:"'.trim($this->adminDir,DIRECTORY_SEPARATOR).'",
@@ -2140,9 +2181,12 @@ $js.= '$(document).ready(function(){
$("#checkPrestaShopFilesVersion").prepend("<img src=\"../img/admin/warning.gif\" /> ");
$("#checkPrestaShopFilesVersion").append("<a id=\"toggleChangedList\" class=\"button\" href=\"\">'.$this->l('See or hide the list').'</a><br/>");
$("#checkPrestaShopFilesVersion").append("<div id=\"changedList\" style=\"display:none \"><br/>");
addModifiedFileList("'.$this->l('Core files').'", answer.result.core, "changedImportant");
addModifiedFileList("'.$this->l('Mail files').'", answer.result.mail, "changedNotice");
addModifiedFileList("'.$this->l('Translation files').'", answer.result.translation, "changedNotice");
if(answer.result.core.length)
addModifiedFileList("'.$this->l('Core file(s)').'", answer.result.core, "changedImportant");
if(answer.result.mail.length)
addModifiedFileList("'.$this->l('Mail file(s)').'", answer.result.mail, "changedNotice");
if(answer.result.translation.length)
addModifiedFileList("'.$this->l('Translation file(s)').'", answer.result.translation, "changedNotice");
$("#toggleChangedList").bind("click",function(e){e.preventDefault();$("#changedList").toggle();});
$(".toggleSublist").live("click",function(e){e.preventDefault();$(this).parent().next().toggle();});
+1 -1
View File
@@ -55,7 +55,7 @@ class ConfigurationTestCore
static function test_magicquotes()
{
return !ini_get('magic_quotes_gpc');
return !get_magic_quotes_gpc();
}
static function test_upload()
+3
View File
@@ -25,6 +25,9 @@
* International Registered Trademark & Property of PrestaShop SA
*/
// @since 1.4.5.0
// add the following comment in a module file to skip it in translations
// IGNORE_THIS_FILE_FOR_TRANSLATION
abstract class SelfModule
{
/** @var integer Module ID */
+13 -4
View File
@@ -31,9 +31,7 @@ class UpgraderCore
public $rss_version_link = 'http://www.prestashop.com/xml/upgrader.xml';
public $rss_md5file_link_dir = 'http://www.prestashop.com/xml/md5/';
/**
* link contains hte url where to download the file
*
* @var string
* @var boolean contains true if last version is not installed
*/
private $need_upgrade = false;
private $changed_files = array();
@@ -41,6 +39,9 @@ class UpgraderCore
public $version_name;
public $version_num;
/**
* @var string contains hte url where to download the file
*/
public $link;
public $autoupgrade;
public $autoupgrade_module;
@@ -68,7 +69,7 @@ class UpgraderCore
$this->checkPSVersion();
$destPath = realpath($dest).DIRECTORY_SEPARATOR.$filename;
if (@copy($this->link, $destPath) && md5_file($destPath) == $this->md5 )
if (@copy($this->link, $destPath))
return true;
else
return false;
@@ -131,13 +132,21 @@ class UpgraderCore
else
{
$last_version_check = @unserialize(Configuration::get('PS_LAST_VERSION'));
if (isset($last_version_check['name']))
$this->version_name = $last_version_check['name'];
if (isset($last_version_check['num']))
$this->version_num = $last_version_check['num'];
if (isset($last_version_check['link']))
$this->link = $last_version_check['link'];
if (isset($last_version_check['autoupgrade']))
$this->autoupgrade = $last_version_check['autoupgrade'];
if (isset($last_version_check['autoupgrade_module']))
$this->autoupgrade_module = $last_version_check['autoupgrade_module'];
if (isset($last_version_check['md5']))
$this->md5 = $last_version_check['md5'];
if (isset($last_version_check['desc']))
$this->desc = $last_version_check['desc'];
if (isset($last_version_check['changelog']))
$this->changelog = $last_version_check['changelog'];
}
}
+1 -1
View File
@@ -47,7 +47,7 @@ class Autoupgrade extends Module
parent::__construct();
$this->displayName = $this->l('Autoupgrade module');
$this->description = $this->l('Provides an automated method to upgrade your shop to the last PrestaShop version');
$this->description = $this->l('Provides an automated method to upgrade your shop to the last PrestaShop version. Caution : custom theme are not updated.');
}
+1 -1
View File
@@ -3,7 +3,7 @@
<name>autoupgrade</name>
<displayName><![CDATA[Autoupgrade module]]></displayName>
<version><![CDATA[0.1]]></version>
<description><![CDATA[Provides an automated method to upgrade your shop to the last PrestaShop version]]></description>
<description><![CDATA[Provides an automated method to upgrade your shop to the last PrestaShop version. Caution : custom theme are not updated.]]></description>
<author><![CDATA[]]></author>
<tab><![CDATA[administration]]></tab>
<is_configurable>0</is_configurable>
+45 -4
View File
@@ -2,17 +2,23 @@
global $_MODULE;
$_MODULE = array();
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_124ab8cb7dc504e6848f1b7e5c98636f'] = 'Sauver aussi les images';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_a8d6c6734da0083021561b23f2fa88cc'] = 'Vous pouvez exclure le dossier image de la sauvegarde si vous l\'avez déjà sauvegardé d\'une autre manière (non recommandé)';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_af98608eaedd4ba7ffd47a0204e84b23'] = 'Conserver le thème \"prestashop\" actuel';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_4ea56ca1a757e426911ff20889c0e93c'] = 'Si vous avez personnalisé le thème par défaut de PrestaShop, vous pouvez le protéger de la mise à niveau (non recommandé)';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_8413c63a6ef3717a974094785fd0b588'] = 'Garder les traductions';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_51bbcf7afb0f8d35501d0a7b28979b06'] = 'Si \"oui\", vous conserverez toutes vos traductions';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_08f302d660c7dbf20416d6b4225238c2'] = 'Désactiver les modules non natifs';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_8c09b80e27810f6697c90824ab8151d6'] = 'Si vous ne désactivez pas ces modules, des problèmes de compatibilité peuvent apparaitre et la page module peut ne pas se charger correctement.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_8c8194a465f0163a6724907755ac1b82'] = 'Mode manuel';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_dd9dbd4916653d683244119a067ca467'] = 'Choisissze \"oui\" si vous voulez vous ';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_e7b6d601ff4e9069e726927e211274ea'] = 'Utiliser Subversion';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_a15b09729294cf7fea1096f970a0fed4'] = 'Choisissez \"oui\" si vous voulez utiliser une version non stable au lieu de l';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_36be1130454bc8c4e0a41d36fa062a8b'] = 'Impossible de créer le répertoire %s';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_e21a52b9631b01c3f1821795b8de451c'] = 'Processus de mise à niveau terminé. Félicitations! Vous pouvez maintenant réactive de votre boutique.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_4ad974c7f06be7aa3ce318299d3b5dbb'] = 'Impossible de vérifier les fichiers';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_8d8e0207549d32c6f864246403034279'] = 'Les fichiers du coeur sont ok';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_c62f82b25de72c3b0bb07225c49fe9d0'] = '%1$s fichier(s) du coeur a été modifié (sur %2$s au total)';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_7b2f224649ef2ad10a2d73595d67a876'] = 'Démarrage mise à niveau ...';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_6b2d0404b7faba0e791e15a52586a149'] = 'Basculer vers svn checkout (useSvn activé)';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_f0e38ac0c558a7f216ae98382b9e58f5'] = 'Site désactivé. Téléchargement en cours (peut prendre ';
@@ -23,12 +29,20 @@ $_MODULE['<{autoupgrade}prestashop>adminselfupgrade_0929f38eaac3ca38801f08b72695
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_4f7c02592a962e40a920f32f3a24f2df'] = 'filesToUpgrade n\'est pas un tableau';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_3f10faa8b44a7175ae8fc5dcb8dec5de'] = 'Tous les fichiers ont été mis à jour. Mise à jour de la base de données en cours.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_1ad932e3b85eb2907a817cd3e3e6907e'] = 'Erreur pour la mise à jour de %s';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_97507ecafd7ed1843f55071ee48a64d6'] = '%1$s copié. Il reste encore %2$s fichier(s) à mettre à jour';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_078a325fbcc1dbd50bd9f969ce954965'] = 'encore %2$s fichiers à mettre à jour.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_7a92514ea7e0c497f2e37a0ec6e4292d'] = 'erreur lors de la vérification de la configuration';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_97e55f3991353118fbccfb784885b956'] = 'Erreur lors de la mise à jour de la base. Vous pouvez avoir besoin de restaurer votre base de données.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_25b11e6c53fc76612ab7336464f4c95e'] = 'Bravo ! Mise à jour terminée. Vous pouvez maintenant réactiver votre boutique.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_9a2f2cf276ea9f79b31a815897c0e3e6'] = '%s ignoré.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_11978affb3b0dbb16c50d571fd05de6d'] = 'erreur lors de la création du répertoire %s';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_0e06ce0972ad338e1d96e8589dc21b9c'] = 'erreur lors de la copie de %1$s vers %2$s';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_6fd2759cb30e7338b91cddedd0b53635'] = 'Restauration des fichiers ...';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_90334cd907dcf0d67fdacc3d767dcdcb'] = 'Restauration de la base de données ...';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_a4694800695190f158487235352dafc9'] = 'Rien n\'est à restaurer';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_5f7f50973696d0a42c1efcc07f7820a0'] = 'Votre site est maintenant restauré.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_28517b8a291c50d80aa53a078407065b'] = 'Répertoire racine nettoyée.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_026d80c0e57be9ea3c086b735f77611d'] = 'Fichiers restaurés. Calcul de l\'étape suivante ...';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_bb71892737d721949538d6e1c4d3d22d'] = 'Fichiers restaurés. Sauvegarde de la base de données non trouvée. Restauration terminée.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_8efc36d230f76fbfd9e4d758964e9414'] = 'impossible d\'extraire %1$ s dans%2$s.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_d7624db09c15d46cd37d7709ae05e44b'] = 'aucune sauvegarde trouvée. Il n\'y a rien à restaurer.';
@@ -47,9 +61,12 @@ $_MODULE['<{autoupgrade}prestashop>adminselfupgrade_d82eef1ba081c54686767c555670
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_344c592d141604c614c219fad3fa0dae'] = '%1$s fichiers exemple à supprimer';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_0baf8c94d1d03d1621c17cd6eabf7b9f'] = 'Tous les exemples de fichiers supprimés. Sauvegarde des fichiers en cours...';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_84e31682487d5a0937f9184ebcf594ba'] = 'copie de travail déjà %s à jour. exportation vers le répertoire latest';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_762ab46f0b1e4eae1526ca7d637926f3'] = 'Mise à jour SVN fait pour %s copie de travail. maintenant l\'exporter plus tard dans la ...';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_dcefd261c0dea53fdb159b218503009e'] = 'SVN Checkout fait à partir de %s. maintenant l\'exporter plus tard dans la ...';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_8f4c8c87daa3bc0311cfb61b7d36e27b'] = 'Erreur d\'extraction du SVN';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_0e81132066d433d212e237678e1193a3'] = 'non authorisé à utiliser SVN';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_0e81132066d433d212e237678e1193a3'] = 'non autorisé à utiliser SVN';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_b0d51f91a1118b7c39ee1835cc6c926a'] = 'Téléchargement terminé. Extraction ...';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_4723092f623f18928fb35e90cea5e736'] = 'Téléchargement terminé, mais md5sum ne correspond pas. Opération annulée.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_0c0db54fe8212c1a7215005fef75d7dd'] = 'Erreur pendant le téléchargement';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_93120c07d8c5cee44042627cd493e0e0'] = 'vous avez besoin allow_url_fopen pour le téléchargement automatique. Vous pouvez également placer le fichier manuellement dans %s';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_3bb38e7d0bfd5a02f7c06cae446fee86'] = 'l\'action %s ignorée';
@@ -107,20 +124,30 @@ $_MODULE['<{autoupgrade}prestashop>adminselfupgrade_229ee8046cafc09ddaf46fb9db71
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_e805a556799b7cef40e9760c81d99218'] = 'erreurs SQL sont apparues.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_5627353fd6ac678497af3ece05087068'] = 'Le fichier config/defines.inc.php n\'a pas été trouvé. Ou est-il passé ?';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_446c9e952debe114c86bbd9e5eea7d61'] = 'Restaurer';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_3e9eb8e431c3fdd52632fb03d961808e'] = 'Après avoir mis à jour votre boutique, vous pouvez restaurer la version précédente. Utilisez cette fonction si votre thème ou un module non natif essentiel ne fonctionne pas correctement.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_4879913b16fa23f723f70a5067bda8d4'] = 'Aucune restauration disponible';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_fff66e9b3d962fa319c8068b5c1997cd'] = 'restaurer';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_ebdabc2d40aa563aabbb3ee57915a7a9'] = 'cliquer pour restaurer %s';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_e9c57c7fbc335e66282a32617b01b9be'] = 'Votre configuration actuelle';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_e3b486e7a2718a902d24829aba6ee4ef'] = 'Tout les points suivants doivent être ';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_2fc4ab825ce2ce9476e8a1c2211ac9b8'] = 'Dossier racine';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_8786f48d9cf9618cd2f5c37312ab7e50'] = 'Statut du dossier racine';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_d16d80ca66261afba43f5736f6cec7e6'] = 'droits complets en écriture';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_039552aa1d74b68f01a73821f3078158'] = 'pas de droits d\'écriture récursif';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_31a962ffeb06a6cc6d58ef3ba5fae2b7'] = 'Autoupgrade autorisé';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_9c30a74657158984997cca4930d6075b'] = 'Cette version autorise la mise à jour automatique';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_228e8380ee42b3ba5d59cdc502dc154d'] = 'Mise à jour disponible';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_93e970ffc765978f032913e590dd51ef'] = 'Cette version autorise la mise à jour automatique';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_af566be1636d11ecc8ddb728a15520b8'] = 'Cette version n\'autorise pas la mise à jour automatique';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_ea4d3af79ad2392b7c0cca4b8ddd7028'] = 'Vous avez déjà la dernière version disponible.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_bafd7322c6e97d25b6299b5d6fe8920b'] = 'Non';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_93cba07454f06a4a960172bbd6e2a435'] = 'Oui';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_3d9f7f5927158b5a7dac0d65b4537265'] = 'Boutique désactivée';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_94af5df6182efd3591d0ccccaa04bd5c'] = 'Limite de temps PHP';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_075ae3d2fc31640504f814f60e5ef713'] = 'désactivée';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_783e8e29e6a8c3e22baa58a19420eb4f'] = 'secondes';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_f5fcc741c0bf329e4afbde40006373b2'] = 'Options choisies';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_ce2df06e42c501c38c0c8861d0325256'] = 'Configuration du module ok';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_97a2a3a1192fbcca33effe8682a1b43a'] = 'Merci de configurer les options du module';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_71aa2b9774b005c47f9cd225766b2045'] = 'version non modifiée de PrestaShop';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_342299aeb786a06533ba00d9a04794dd'] = 'Modifiez vos options';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_06933067aafd48425d67bcb01bba5cb6'] = 'Mettre à jour';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_5d8b77b69c92370ec4e175a638019ca7'] = 'La version actuelle de votre boutique est : %s';
@@ -128,6 +155,12 @@ $_MODULE['<{autoupgrade}prestashop>adminselfupgrade_80e3d093272bc011b6bc661e408c
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_b47ba7568788e46dbc7fe81e525db863'] = 'La dernière version de prestashop disponible est:';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_c97dcfb0df6daa46292a0def8a567822'] = 'Sauvegardez la base de données, les fichiers de sauvegarde et faire la mise en un clic pardi !';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_a60ab62ed99ef0358b2efae592be0cdd'] = 'Mettre à jour PrestaShop Maintenant !';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_7f6336f29afd114798bf8ff3e6f2f9c9'] = 'PrestaShop sera téléchargé à partir de l\'url %s';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_b1e4effc886020d5e8ca2ab71b0572b1'] = 'Voir le CHANGELOG';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_543af4fda7ca1a5e9a3983890708e2c3'] = 'Votre boutique est déjà à jour';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_1e10402bc6b8d7a64ced8408d57aedb5'] = 'Dernière vérification : %s';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_d34978dd8a4be0b0b4cee937a8f71f57'] = 'Cliquez pour rafraichir';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_d944def835fefea7e5ce45ec6e4b3554'] = 'J\'attend les étapes, monsieur.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_48c7c41b72e1d678923ce3571aa65b2d'] = 'Etape';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_eeb5a49c38d2d8c2baa51ed09beccf88'] = 'Etape de mise à jour';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_c5d769685704e7ddcd70e74a6ebe50b7'] = 'Votre configuration actuelle n\'autorise pas la mise à jour.';
@@ -136,8 +169,16 @@ $_MODULE['<{autoupgrade}prestashop>adminselfupgrade_3a3a651c9a67bca9ac902da78946
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_a22eff458b4f4bce6d3232e367ff0138'] = 'Votre configuration actuelle indique que vous voulez mettre à jour votre système à partir d\'une branche de développement instable, sans numéro de version. Si vous mettez à jour, vous ne pourrez plus appliquer le processus de versions stables officiel.';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_dae8ace18bdcbcc6ae5aece263e14fe8'] = 'Options';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_91195bbbacc2147a736c849c46368ed8'] = 'Voulez vous restaurer votre boutique';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_6b3930a184368a458be6e4429f409877'] = 'Mise à jour terminée. Vérifiez votre boutique (essayez de faire une commande, vérifier le thème)';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_3794983e0533ce2499b168f8e9bdca3c'] = 'Mise à jour terminée. Vérifiez le thème de votre ';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_c208c3853a0c9515bbf0d330fdd51386'] = 'Mise à jour terminée !';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_a498f9476a893d51ee02b3601678d318'] = 'Cliquez pour restaurer la base de donnée';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_f34d5debb2bba76aa3e077937a07e373'] = 'Cliquez pour restaurer les fichiers';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_60283aa37e2063b2ada2f99216e1332a'] = 'Votre serveur ne peut pas télécharger le fichier. S\'il vous plaît le télécharger d\'abord par ftp dans votre répertoire admin/autoupgrade';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_6ef7ebe46f6d16cdbf9e2169e3dd048e'] = 'Allez manuellement au bouton restaurer';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_1607e6098b7b62a2791653b059c975d2'] = 'Afficher / masquer la liste';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_25b91596a896c6cf688104169b4b6a71'] = 'Fichier(s) de la solution';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_65f04958837ddd3643fd5edaee3a0f8d'] = 'fichier(s) des courriels';
$_MODULE['<{autoupgrade}prestashop>adminselfupgrade_54aca96b35b48dd39265175f61b6bdd2'] = 'fichier(s) des traductions';
$_MODULE['<{autoupgrade}prestashop>autoupgrade_e79aed52aa295a8d68ff3ecf777cd42d'] = 'Cette version de PrestaShop ne peut pas être mise à jour : la constante PS_ADMIN_DIR est manquante';
$_MODULE['<{autoupgrade}prestashop>autoupgrade_2a037c3ccd26d087a2a39e6e1f2aa2ac'] = 'Module autoupgrade';
$_MODULE['<{autoupgrade}prestashop>autoupgrade_9f90d42cd3a3297519c04bdac6da96a1'] = 'Fournit une méthode automatique de mise à jour de votre boutique à la dernière version de PrestaShop. Attention : les thèmes personnalisés ne sont pas mis à jour.';