示例#1
0
 /**
  * Moves settings from options to DB
  */
 public static function settingsConverter()
 {
     $settings = static::getSettings();
     if (!empty($settings) && !empty($settings["SETTINGS"])) {
         return false;
     }
     if (!CSaleYMHandler::install()) {
         return false;
     }
     $settings = array();
     $rsSites = CSite::GetList($by = "sort", $order = "asc", array());
     while ($arSite = $rsSites->Fetch()) {
         $serSiteSett = COption::GetOptionString("sale", "yandex_market_purchase_settings", "", $arSite["ID"], true);
         $siteSett = unserialize($serSiteSett);
         if (is_array($siteSett) && !empty($siteSett)) {
             $settings[$arSite["ID"]] = $siteSett;
         }
     }
     if (empty($settings)) {
         $serSiteSett = COption::GetOptionString("sale", "yandex_market_purchase_settings", "");
         $siteSett = unserialize($serSiteSett);
         if (is_array($siteSett) && !empty($siteSett)) {
             $settings[CSite::GetDefSite()] = $siteSett;
         }
     }
     if (empty($settings)) {
         return false;
     }
     if (!CSaleYMHandler::saveSettings($settings)) {
         return false;
     }
     if (!CSaleYMHandler::setActivity(true)) {
         return false;
     }
     if (!CSaleYMHandler::eventsStart()) {
         return false;
     }
     return true;
 }