コード例 #1
0
ファイル: themes.php プロジェクト: askzap/ultimate
        }
        exit;
    }
    return array(CONTROLLER_STATUS_OK, 'themes.manage');
}
if ($mode == 'manage') {
    if (fn_allowed_for('ULTIMATE') && !Registry::get('runtime.company_id')) {
        return array(CONTROLLER_STATUS_OK);
    }
    $available_themes = fn_get_available_themes(Registry::get('settings.theme_name'));
    if (!empty($available_themes['repo']) && !empty($available_themes['installed'])) {
        $available_themes['repo'] = array_diff_key($available_themes['repo'], $available_themes['installed']);
    }
    Tygh::$app['view']->assign('themes_prefix', fn_get_theme_path('[relative]', 'C'));
    Tygh::$app['view']->assign('repo_prefix', fn_get_theme_path('[repo]', 'C'));
    Registry::set('navigation.tabs', array('installed_themes' => array('title' => __('installed_themes'), 'js' => true), 'browse_all_available_themes' => array('title' => __('browse_all_available_themes'), 'js' => true)));
    $theme_name = fn_get_theme_path('[theme]', 'C');
    $layout = Layout::instance()->getDefault($theme_name);
    $style = Styles::factory($theme_name)->get($layout['style_id']);
    $layout['style_name'] = empty($style['name']) ? '' : $style['name'];
    Tygh::$app['view']->assign('layout', $layout);
    foreach ($available_themes['installed'] as $theme_id => $theme) {
        $layouts_params = array('theme_name' => $theme_id);
        $available_themes['installed'][$theme_id]['layouts'] = Layout::instance()->getList($layouts_params);
        if ($theme_id == $theme_name) {
            $available_themes['current']['layouts'] = $available_themes['installed'][$theme_id]['layouts'];
        }
    }
    Tygh::$app['view']->assign('available_themes', $available_themes);
    Tygh::$app['view']->assign('dev_modes', Development::get());
}
コード例 #2
0
ファイル: themes.php プロジェクト: OneataBogdan/lead_coriolan
    Registry::get('view')->assign('repo_prefix', fn_get_theme_path('[repo]', 'C'));
    Registry::set('navigation.tabs', array('installed_themes' => array('title' => __('installed_themes'), 'js' => true), 'browse_all_available_themes' => array('title' => __('browse_all_available_themes'), 'js' => true)));
    $theme_name = fn_get_theme_path('[theme]', 'C');
    $layout = Layout::instance()->getDefault($theme_name);
    $style = Styles::factory($theme_name)->get($layout['style_id']);
    $layout['style_name'] = empty($style['name']) ? '' : $style['name'];
    Registry::get('view')->assign('layout', $layout);
    foreach ($available_themes['installed'] as $theme_id => $theme) {
        $layouts_params = array('theme_name' => $theme_id);
        $available_themes['installed'][$theme_id]['layouts'] = Layout::instance()->getList($layouts_params);
        if ($theme_id == $theme_name) {
            $available_themes['current']['layouts'] = $available_themes['installed'][$theme_id]['layouts'];
        }
    }
    Registry::get('view')->assign('available_themes', $available_themes);
    Registry::get('view')->assign('dev_modes', Development::get());
} elseif ($mode == 'styles') {
    if ($action == 'update_status') {
        $theme = Themes::factory(fn_get_theme_path('[theme]', 'C'));
        $theme_manifest = $theme->getManifest();
        if (empty($theme_manifest['converted_to_css'])) {
            Styles::factory(fn_get_theme_path('[theme]', 'C'))->setStyle($_REQUEST['id'], $_REQUEST['status']);
            // Delete compiled CSS file
            fn_clear_cache('statics');
        } else {
            $layout = Layout::instance(Registry::get('runtime.company_id'))->getDefault();
            fn_set_notification('E', __('error'), __('theme_editor.error_theme_converted_to_css', array('[url]' => fn_url("customization.update_mode?type=theme_editor&status=enable&s_layout={$layout['layout_id']}"))));
        }
    }
    return array(CONTROLLER_STATUS_OK, 'themes.manage');
} elseif ($mode == 'update_dev_mode') {