/** * Move settings from the database to the registry. * @param array $default_settings */ public static function moveToRuntime($default_settings = array()) { $in_runtime = self::get(); if (!$in_runtime) { $in_runtime = array(); } $settings = array_merge($default_settings, $in_runtime, self::_getFromDB()); // Merge current company's settings to the root $company_id = fn_twg_get_current_company_id(); if (!empty($settings['customer_connections'][$company_id])) { $settings = array_merge($settings, $settings['customer_connections'][$company_id]); } Registry::set(self::REGISTRY_PATH, $settings); // To avoid caching set for each store Registry::set(self::REGISTRY_PATH . '.customer_connections', $settings['customer_connections']); foreach ($settings['customer_connections'] as $company_id => $connection) { Registry::set(self::REGISTRY_PATH . ".customer_connections.{$company_id}", $connection); } }
/** * Check if twigmo front end should uses https * @param Integer $company_id * @return boolean */ function fn_twg_use_https_for_customer($company_id = 0) { if (!$company_id) { $company_id = fn_twg_get_current_company_id(); } $settings_object = Settings::instance(); if (function_exists('fn_get_storefront_protocol')) { // For 4.3+ $is_secure_storefront = Registry::get('settings.Security.secure_storefront') != 'none'; $secure_auth = $secure_checkout = array('value' => $is_secure_storefront ? 'Y' : 'N'); } else { // Before 4.3 $secure_auth = $settings_object->getSettingDataByName('secure_auth', $company_id); $secure_checkout = $settings_object->getSettingDataByName('secure_checkout', $company_id); } $keep_https = $settings_object->getSettingDataByName('keep_https', $company_id); $keep_https = empty($keep_https) || $keep_https['value'] == 'Y'; $use_https = $keep_https && ($secure_auth['value'] == 'Y' || $secure_checkout['value'] == 'Y'); return $use_https; }
/** * Get default logo's url for twigmo */ public static final function getDefaultLogoUrl($company_id = null) { $company_id = !empty($company_id) ? $company_id : fn_twg_get_current_company_id(); $logos = fn_get_logos($company_id, fn_twg_get_default_layout_id()); return !empty($logos['theme']['image']['image_path']) ? $logos['theme']['image']['image_path'] : ''; }
public static function getAccessID($area = AREA) { if ($area == 'A') { return TwigmoSettings::get('admin_connection.access_id'); } $company_id = fn_twg_get_current_company_id(); return TwigmoSettings::get("customer_connections.{$company_id}.access_id"); }
if ($mode == 'update' && $_REQUEST['addon'] == 'twigmo') { if (!empty($_REQUEST['tw_settings'])) { $company_id = fn_twg_get_current_company_id(); TwigmoSettings::set(array('customer_connections' => array($company_id => $_REQUEST['tw_settings']))); } return array(CONTROLLER_STATUS_REDIRECT, 'addons.update?addon=twigmo'); } } elseif ($mode == 'update') { if ($_REQUEST['addon'] == 'twigmo') { if (!empty($_REQUEST['selected_section']) and $_REQUEST['selected_section'] == 'twigmo_addon') { fn_delete_notification('twigmo_upgrade'); } if (!fn_twg_is_updated()) { fn_set_notification('W', __('notice'), __('twgadmin_reinstall')); } $company_id = fn_twg_get_current_company_id(); $view = Registry::get('view'); $view->assign('default_logo', TwigmoImage::getDefaultLogoUrl($company_id)); $urls = TwigmoConnector::getMobileScriptsUrls(); $view->assign('favicon', $urls['favicon']); $view->assign('logo_object_id', $company_id * 10 + 1); $view->assign('favicon_object_id', $company_id * 10 + 2); $tw_register['version'] = TWIGMO_VERSION; $view->assign('tw_register', $tw_register); $view->assign('next_version_info', TwigmoUpgrade::getNextVersionInfo()); $view->assign('twg_is_connected', TwigmoConnector::anyFrontendIsConnected()); $stores = fn_twg_get_stores(); $platinum_stores = fn_twg_init_push_comment(fn_twg_filter_connected_platinum_stores($stores)); $view->assign('stores', $stores); $view->assign('platinum_stores', $platinum_stores); $view->assign('max_push_length', TwigmoConnector::MAX_PUSH_LENGTH);
/** * Check if twigmo front end should uses https * @param Integer $company_id * @return boolean */ function fn_twg_use_https_for_customer($company_id = 0) { if (!$company_id) { $company_id = fn_twg_get_current_company_id(); } if (TWIGMO_USE_HTTPS == 'Y') { return true; } if (TWIGMO_USE_HTTPS == 'N') { return false; } $config_sections = array('General', 'Security'); foreach ($config_sections as $section_name) { $settings = Settings::instance()->getValues($section_name, Settings::CORE_SECTION, true, $company_id); // There is no keep_https setting in 4.1.1 and 4.1.2 if (isset($settings['keep_https']) && $settings['keep_https'] != 'Y') { return false; } if (isset($settings['secure_auth']) || isset($settings['secure_checkout'])) { // Auto return $settings['secure_auth'] == 'Y' || $settings['secure_checkout'] == 'Y'; } } return false; }