Пример #1
0
 /**
  * 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);
     }
 }
Пример #2
0
/**
 * 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;
}
Пример #3
0
 /**
  * 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");
 }
Пример #5
0
    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);
Пример #6
0
/**
 * 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;
}