Вход Регистрация
Файл: admin/update.php
Строк: 100
<?php 
/**
 * Update
 *
 * Provides any updating to the system the first time it is run
 *
 * @package GetSimple
 * @subpackage Init
 */

$load['plugin'] = true;
include(
'inc/common.php');

/* delete caches */
delete_cache();

/* 
 * Updates below here 
 */

$message null;

$create_dirs = array(
    
GSCACHEPATH,
    
GSAUTOSAVEPATH
);

$create_files = array();

$delete_files = array(
    
GSADMININCPATH.'xss.php',
    
GSADMININCPATH.'nonce.php',
    
GSADMININCPATH.'install.php',
    
GSADMINPATH.'load-ajax.php',
    
GSADMINPATH.'cron.php',
    
GSADMINPATH.'loadtab.php'
);


function 
msgOK($msg){
    return 
'<div class="notify">'.$msg.'</div>';
}

function 
msgError($msg){
    return 
'<div class="notify notify_error">'.$msg.'</div>';
}

/* create new folders */
foreach($create_dirs as $dir){
    if (!
file_exists($dir)) {      
        if (
defined('GSCHMOD')) { 
         
$chmod_value GSCHMOD
        } else {
         
$chmod_value 0755;
        }
        
$status mkdir($dir$chmod_value);
        if(
$status$message.= msgOK(sprintf(i18n_r('FOLDER_CREATED'),$dir));
        else 
$error.= msgError(i18n_r('ERROR_CREATING_FOLDER') . "<br /> - $dir");
    }
}


/* check for legacy version of user.xml */
if (file_exists(GSDATAOTHERPATH .'user.xml')) {
    
    
    
# make new users folder
    
if (!file_exists(GSUSERSPATH)) {
        
$status mkdir(GSUSERSPATH0777);
        
chmod(GSUSERSPATH0777);
        if (!
$status) { 
            
$error .= msgError('Unable to create the folder /data/users/');    
        } else {
            
$message .= msgOK('Created the folder /data/users/');
        }
    }

    
# make new backup users folder
    
if (!file_exists(GSBACKUSERSPATH)) {
        
$status mkdir(GSBACKUSERSPATH0777);
        
chmod(GSBACKUSERSPATH0777);
        if (!
$status) {
            
$error .= msgError('Unable to create the folder /backup/users/');    
        } else {
            
$message .=  msgOK('Created the folder /backup/users/');
        }
    }

    
# get $USR data
    
$datau getXML(GSDATAOTHERPATH .'user.xml');
    
$datac getXML(GSDATAOTHERPATH .'cp_settings.xml');
    
$dataw getXML(GSDATAOTHERPATH .'website.xml');
    
$USR _id(stripslashes($datau->USR));
    
$EMAIL $datau->EMAIL;
    
$PASSWD $datau->PWD;
    
$HTMLEDITOR $datac->HTMLEDITOR;
    
$PRETTYURLS $datac->PRETTYURLS;
    
$PERMALINK $datac->PERMALINK;
    
$TIMEZONE $datac->TIMEZONE;
    
$LANG $datac->LANG;
    
$SITENAME stripslashes($dataw->SITENAME);
    
$SITEURL $dataw->SITEURL;
    
$TEMPLATE $dataw->TEMPLATE;
    
    
    
# creating new user file
    
$xml = new SimpleXMLElement('<item></item>');
    
$xml->addChild('USR'$USR);
    
$xml->addChild('PWD'$PASSWD);
    
$xml->addChild('EMAIL'$EMAIL);
    
$xml->addChild('HTMLEDITOR'$HTMLEDITOR);
    
$xml->addChild('TIMEZONE'$TIMEZONE);
    
$xml->addChild('LANG'$LANG);
    
$status XMLsave($xmlGSUSERSPATH _id($USR) .'.xml');    
    
chmod(GSUSERSPATH _id($USR) .'.xml'0777);
    if (!
$status) {
        
$error .= msgError('Unable to create new  '._id($USR).'.xml file!');    
    } else {
        
$message .= msgOK('Created new '._id($USR).'.xml file');
    }
    
    
    
# rename old wesbite.xml
    
if (!file_exists(GSDATAOTHERPATH .'_legacy_website.xml')) {
        
$status rename(GSDATAOTHERPATH .'website.xml'GSDATAOTHERPATH .'_legacy_website.xml');
        if (!
$status) {
            
$error .= msgError('Unable to rename website.xml to _legacy_website.xml');    
        } else {
            
$message .= msgOK('Renamed website.xml to _legacy_website.xml');
        }
    }
    
    
#creating new website file
    
$xml = new SimpleXMLElement('<item></item>');
    
$xml->addChild('SITENAME'$SITENAME);
    
$xml->addChild('SITEURL'$SITEURL);
    
$xml->addChild('TEMPLATE'$TEMPLATE);
    
$xml->addChild('PRETTYURLS'$PRETTYURLS);
    
$xml->addChild('PERMALINK'$PERMALINK);
    
$status XMLsave($xmlGSDATAOTHERPATH .'website.xml');    
    if (!
$status) {
        
$error .= msgError('Unable to update website.xml file!');    
    } else {
        
$message .= msgOK('Created updated website.xml file');
    }
    
    
    
# rename old user.xml
    
if (!file_exists(GSDATAOTHERPATH .'_legacy_user.xml')) {
        
$status rename(GSDATAOTHERPATH .'user.xml'GSDATAOTHERPATH .'_legacy_user.xml');
        if (!
$status) {
            
$error .= msgError('Unable to rename user.xml to _legacy_user.xml');    
        } else {
            
$message .= msgOK('Renamed user.xml to _legacy_user.xml');
        }
    }

    
# rename old cp_settings.xml
    
if (!file_exists(GSDATAOTHERPATH .'_legacy_cp_settings.xml')) {
        
$status rename(GSDATAOTHERPATH .'cp_settings.xml'GSDATAOTHERPATH .'_legacy_cp_settings.xml');
        if (!
$status) {
            
$error .= msgError('Unable to rename cp_settings.xml to _legacy_cp_settings.xml');    
        } else {
            
$message .= msgOK('Renamed cp_settings.xml to _legacy_cp_settings.xml');
        }
    }
    
/* end update */


// redirect to health check or login and show updated notice
$redirect cookie_check() ? "health-check.php?updated=1" "index.php?updated=1";

// If no errors or messages, then we did nothing, just continue automatically
if(!isset($error) && !isset($message)) redirect($redirect);

// we already showed a notice, pass updated so it gets deleted, no indication, 
$redirect cookie_check() ? "health-check.php?updated=2" "index.php?updated=2";

// show errors or messages
if(isset($error)) $message.= i18n_r('ER_REQ_PROC_FAIL');
else 
$message.= "<p><div class="notify notify_ok">".i18n_r('SITE_UPDATED')."</div></p>";

get_template('header'$site_full_name.' &raquo; 'i18n_r('SYSTEM_UPDATE')); 

?>
    
    <h1><?php echo $site_full_name?></h1>
</div> 
</div><!-- Closes header -->
<div class="wrapper">
    <?php // include('template/error_checking.php'); ?>
    
    <div id="maincontent">
        <div class="main" >
            <h3><?php i18n('SYSTEM_UPDATE'); ?></h3>
            
            <?php 
                
echo "$message";
                echo 
'<p><a href="'.$redirect.'">'.i18n_r('CONTINUE_SETUP').'</a></p>';
            
?>
            
        </div>
    </div>
    <div class="clear"></div>
    <?php get_template('footer'); ?>
Онлайн: 3
Реклама