예제 #1
0
 public static function restoreSettingsAndCSS($upgrade_dirs)
 {
     // Restore langvars - for all languages except EN and RU
     $languages = Lang::getLanguages();
     $except_langs = array('en', 'ru');
     foreach ($languages as $language) {
         $backup_file = $upgrade_dirs['backup_settings'] . 'lang_' . $language['lang_code'] . '.bak';
         if (!in_array($language['lang_code'], $except_langs) and file_exists($backup_file)) {
             LanguageValues::updateLangVar(unserialize(fn_get_contents($backup_file)), $language['lang_code']);
         }
     }
     // Restore blocks
     $old_company_id = Registry::get('runtime.company_id');
     foreach ($upgrade_dirs['backup_company_settings'] as $company_id => $dir) {
         Registry::set('runtime.company_id', $company_id);
         $backup_file = $dir . 'blocks.xml';
         if (file_exists($backup_file)) {
             if (version_compare(PRODUCT_VERSION, '4.1.1', '>=')) {
                 Registry::set('runtime.layout', Layout::instance()->getDefault());
             }
             Exim::instance($company_id, fn_twg_get_default_layout_id())->importFromFile($backup_file);
         }
     }
     Registry::set('runtime.company_id', $old_company_id);
     // Restore settings if addon was connected
     $restored_settings = array('my_private_key', 'my_public_key', 'his_public_key', 'email', 'customer_connections', 'admin_connection');
     $settings = array();
     foreach ($_SESSION['twigmo_backup_settings'] as $setting => $value) {
         if (in_array($setting, $restored_settings)) {
             $settings[$setting] = $value;
         }
     }
     $settings['version'] = TWIGMO_VERSION;
     unset($_SESSION['twigmo_backup_settings']);
     TwigmoSettings::set($settings);
     $connector = new TwigmoConnector();
     if (!$connector->updateConnections(true)) {
         $connector->disconnect(array(), true);
     }
     // Restore images
     self::copyFiles($upgrade_dirs['backup_files']['media_frontend'], $upgrade_dirs['installed']['media_frontend']);
     return true;
 }
예제 #2
0
/***************************************************************************
*                                                                          *
*   (c) 2004 Vladimir V. Kalynyak, Alexey V. Vinokurov, Ilya M. Shalnev    *
*                                                                          *
* This  is  commercial  software,  only  users  who have purchased a valid *
* license  and  accept  to the terms of the  License Agreement can install *
* and use this program.                                                    *
*                                                                          *
****************************************************************************
* PLEASE READ THE FULL TEXT  OF THE SOFTWARE  LICENSE   AGREEMENT  IN  THE *
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE.            *
****************************************************************************/
if (!defined('BOOTSTRAP')) {
    die('Access denied');
}
use Twigmo\Upgrade\TwigmoUpgrade;
use Twigmo\Core\TwigmoConnector;
if ($mode == 'auth' && !fn_twg_is_on_saas()) {
    TwigmoUpgrade::checkForUpgrade();
} elseif ($mode == 'check_twigmo_for_upgrade') {
    header('Content-Type: image/png');
    echo base64_decode('iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAlJJREFUeNqkUztoVEEUPfN5k7gf4q4J6yduxKDRQhBEUCQ2KbaJCiI2Wtgt0cJCUEGxshJs/EBSWCoWFhKxULtFDUYXBUFMjJFl1WVBVkX39/a9N96ZfbtuoYU4cLgz8+45986ZeUxrjf8ZMjfBTIxxjqzgyAiJpBT0Qf4ZXKDCGR4whhni/ZQ0ASE7mE4cH9qYGFYRpRhlciHATeyA1owQtFpurVgYbXwqmsKXJVU1AhlDrjerquU3IShREqkDhGRGbQrGVDQ9MkwCmbaAtAJJU9mQV1/4CFAMKh8QFB5Dv7kDXi2DE5kxe1xw1afIuqSd2/MK2DZN5ebcdbRe3QLqXyG3H4Vz+DbE1gNdsjG9DVjYDs03HrbtPr1iozbrwU3g46eBveeIyqAXZi0Zvt8V4F13w/PGTy1gxdQ8nMmrVhSPzgCll8Cuk9CxNcQlsuch+JtAkL8B/f4hWGobMDlNF5yCfnKJkvqBLQfhGTJBB0AQ9Aiw0AM9fw3IXQTuHmu/lJ0noCvL0NQFG9nTFfCJ7PcIuKZdIyCmKDGbB358Bgo5YO0O23bwZREsseG3gAeXABm+5FLnnjvDmlWvgDlRS5JujQr0tQVIsFpFyaSw14eMv5gZ2zd+RDZq0d6rMpUNoRdmT6lINX/v3U3yICuelYGJVUi7nh6NrxsaEPGoRD8ZphTgONSBA04QBIf2ghZvLL6oLBWX6/fPL+G5eR3p9RGkzo5h/+YYdkNjpXG347IfRgsfdHB8e/sdc9NlzJY9lI3AAIFKQvzjn0xyaPwSYACS4hG3ZjB6zgAAAABJRU5ErkJggg==');
    TwigmoUpgrade::checkForUpgrade();
    die;
} elseif ($mode == 'update_twigmo_connection') {
    $connector = new TwigmoConnector();
    if ($connector->updateConnections()) {
        $connector->displayServiceNotifications();
    }
}