Esempio n. 1
0
function yiw_select_skins_option()
{
    global $yiw_theme_options, $yiw_colors, $yiw_skins;
    $selected_skin = yiw_post_option('select_skin');
    if ($selected_skin == '' || $selected_skin == yiw_get_option('select_skin')) {
        return;
    }
    $tab = yiw_get_current_tab();
    $skin_code = unserialize(base64_decode(file_get_contents(dirname(__FILE__) . '/../skins/' . $selected_skin . '.txt')));
    // esclude le opzioni che non servono alle skin
    $exclude = yiw_options_of_tab(array('sliders', 'contact', 'sliders', 'accordions', 'sections', 'sidebars', 'general' => array('responsive', 'images', 'footer')));
    $exclude = array_merge($exclude, array('favicon', 'date_format', 'logo', 'logo_width', 'logo_height', 'use_logo', 'logo_use_description', 'slider_unoslider_slides', 'slider_sheeva_slides', 'slider_elegant_slides', 'slider_cycle_slides', 'slider_elastic_slides'));
    $defaults = yiw_get_default_options();
    foreach ($exclude as $id) {
        if (isset($skin_code[$id])) {
            unset($skin_code[$id], $defaults[$id]);
        }
    }
    //yiw_debug($skin_code);
    //     // the slides already existing
    //     $slides = maybe_unserialize( yiw_get_option( 'slider_'.$skin[$selected_skin]['slider_type'].'_slides' ) );
    //
    //     // if there are already some images into the slider, doesn't add the default images
    //     if ( ! empty( $slides ) )
    //         unset( $skin[$selected_skin]['slider_'.$skin[$selected_skin]['slider_type'].'_slides'] );
    //
    //     // retrieve the default color for the navigation
    //     foreach ( $yiw_colors[$skin[$selected_skin]['nav_type'].'-navigation']['options'] as $color_id => $value )
    //         $skin[$selected_skin]['colors_'.$color_id] = $value['default'];
    $skin_code = wp_parse_args($skin_code, $defaults);
    $yiw_theme_options = wp_parse_args($skin_code, $yiw_theme_options);
    // save the skin selected
    $yiw_theme_options['select_skin'] = $selected_skin;
    //yiw_debug( $defaults );
    yiw_update_theme_options();
    $url = admin_url('themes.php') . "?page={$_GET['page']}&tab={$tab}&message=saved";
    yiw_end_process($url);
    die;
}
Esempio n. 2
0
function yiw_panel_configuration_save()
{
    if (isset($_REQUEST['action'])) {
        $tab = yiw_get_current_tab();
        switch ($_REQUEST['action']) {
            case 'yiw-save-configuration':
                $configs = get_option('yiw_configs');
                $actual_config = array();
                if ($configs != false) {
                    $configs = maybe_unserialize($configs);
                } else {
                    $configs = array();
                }
                $config_name = esc_attr($_REQUEST['new_configuration']);
                $config_slug = yiw_check_if_exists(sanitize_title($config_name), $configs, 'key');
                $actual_config[$config_slug] = array('name' => $config_name, 'values' => yiw_theme_options_from_db());
                // 				echo $config_slug;
                // 				yiw_debug( $configs ); die;
                update_option('yiw_configs', array_merge($configs, $actual_config));
                $url = admin_url('themes.php') . "?page={$_GET['page']}&tab={$tab}&message=saved";
                yiw_end_process($url, false);
                break;
            case 'yiw-apply-configuration':
                $configs = get_option('yiw_configs');
                if (!$configs) {
                    break;
                }
                $config_to_apply = esc_attr($_REQUEST['name_configuration']);
                yiw_update_theme_options($configs[$config_to_apply]['values']);
                $url = admin_url('themes.php') . "?page={$_GET['page']}&tab={$tab}&message=saved";
                yiw_end_process($url, false);
                break;
            case 'yiw-delete-config':
                $configs = get_option('yiw_configs');
                if ($configs != false) {
                    $configs = maybe_unserialize($configs);
                } else {
                    $configs = array();
                }
                $to_delete = esc_attr($_REQUEST['id']);
                if (isset($configs[$to_delete])) {
                    unset($configs[$to_delete]);
                }
                update_option('yiw_configs', $configs);
                $url = admin_url('themes.php') . "?page={$_GET['page']}&tab={$tab}&message=delete";
                yiw_end_process($url, false);
                break;
            case 'yiw-import-configuration':
                if (!isset($_REQUEST['import-theme-options'])) {
                    break;
                }
                $options = unserialize(base64_decode($_REQUEST['import-theme-options']));
                yiw_update_theme_options($options);
                $url = admin_url('themes.php') . "?page={$_GET['page']}&tab={$tab}&message=delete";
                yiw_end_process($url, false);
                break;
        }
    }
}