Example #1
0
/**
 * Validate all theme options values
 *
 * @uses esc_url_raw, absint, esc_textarea, sanitize_text_field, travelify_invalidate_caches
 */
function travelify_theme_options_validate($options)
{
    global $travelify_theme_options_settings, $travelify_theme_options_defaults;
    $input_validated = $travelify_theme_options_settings;
    $input = array();
    $input = $options;
    $input_validated = $input;
    if (isset($input['featured_post_slider'])) {
        $slide_count = count($input['featured_post_slider']);
        // Slider settings updation
        $input_validated['slider_quantity'] = $slide_count > 0 ? $slide_count : 3;
    }
    // Layout settings verification
    if (isset($input['reset_layout'])) {
        $input_validated['reset_layout'] = 0;
    }
    if (0 == $input['reset_layout']) {
        if (isset($input['default_layout'])) {
            $input_validated['default_layout'] = $input['default_layout'];
        }
    } else {
        $input_validated['default_layout'] = $travelify_theme_options_defaults['default_layout'];
    }
    //Clearing the theme option cache
    if (function_exists('travelify_themeoption_invalidate_caches')) {
        travelify_themeoption_invalidate_caches();
    }
    return $input_validated;
}
Example #2
0
/**
 * Validate all theme options values
 * 
 * @uses esc_url_raw, absint, esc_textarea, sanitize_text_field, travelify_invalidate_caches
 */
function travelify_theme_options_validate($options)
{
    global $travelify_theme_options_settings, $travelify_theme_options_defaults;
    $input_validated = $travelify_theme_options_settings;
    $input = array();
    $input = $options;
    if (isset($input['header_logo'])) {
        $input_validated['header_logo'] = esc_url_raw($input['header_logo']);
    }
    if (isset($input['header_show'])) {
        $input_validated['header_show'] = $input['header_show'];
    }
    if (isset($options['button_text'])) {
        $input_validated['button_text'] = sanitize_text_field($input['button_text']);
    }
    if (isset($options['redirect_button_link'])) {
        $input_validated['redirect_button_link'] = esc_url_raw($input['redirect_button_link']);
    }
    if (isset($input['favicon'])) {
        $input_validated['favicon'] = esc_url_raw($input['favicon']);
    }
    if (isset($input['disable_favicon'])) {
        $input_validated['disable_favicon'] = $input['disable_favicon'];
    }
    if (isset($input['webpageicon'])) {
        $input_validated['webpageicon'] = esc_url_raw($input['webpageicon']);
    }
    if (isset($input['disable_webpageicon'])) {
        $input_validated['disable_webpageicon'] = $input['disable_webpageicon'];
    }
    //Site Layout
    if (isset($input['site_layout'])) {
        $input_validated['site_layout'] = $input['site_layout'];
    }
    // Front page posts categories
    if (isset($input['front_page_category'])) {
        $input_validated['front_page_category'] = $input['front_page_category'];
    }
    // Data Validation for Featured Slider
    if (isset($input['disable_slider'])) {
        $input_validated['disable_slider'] = $input['disable_slider'];
    }
    if (isset($input['slider_quantity'])) {
        $input_validated['slider_quantity'] = absint($input['slider_quantity']) ? $input['slider_quantity'] : 4;
    }
    if (isset($input['exclude_slider_post'])) {
        $input_validated['exclude_slider_post'] = $input['exclude_slider_post'];
    }
    if (isset($input['featured_post_slider'])) {
        $input_validated['featured_post_slider'] = array();
    }
    if (isset($input['slider_quantity'])) {
        for ($i = 1; $i <= $input['slider_quantity']; $i++) {
            if (intval($input['featured_post_slider'][$i])) {
                $input_validated['featured_post_slider'][$i] = absint($input['featured_post_slider'][$i]);
            }
        }
    }
    // data validation for transition effect
    if (isset($input['transition_effect'])) {
        $input_validated['transition_effect'] = wp_filter_nohtml_kses($input['transition_effect']);
    }
    // data validation for transition delay
    if (isset($input['transition_delay']) && is_numeric($input['transition_delay'])) {
        $input_validated['transition_delay'] = $input['transition_delay'];
    }
    // data validation for transition length
    if (isset($input['transition_duration']) && is_numeric($input['transition_duration'])) {
        $input_validated['transition_duration'] = $input['transition_duration'];
    }
    // data validation for Social Icons
    if (isset($input['social_facebook'])) {
        $input_validated['social_facebook'] = esc_url_raw($input['social_facebook']);
    }
    if (isset($input['social_twitter'])) {
        $input_validated['social_twitter'] = esc_url_raw($input['social_twitter']);
    }
    if (isset($input['social_googleplus'])) {
        $input_validated['social_googleplus'] = esc_url_raw($input['social_googleplus']);
    }
    if (isset($input['social_pinterest'])) {
        $input_validated['social_pinterest'] = esc_url_raw($input['social_pinterest']);
    }
    if (isset($input['social_youtube'])) {
        $input_validated['social_youtube'] = esc_url_raw($input['social_youtube']);
    }
    if (isset($input['social_vimeo'])) {
        $input_validated['social_vimeo'] = esc_url_raw($input['social_vimeo']);
    }
    if (isset($input['social_linkedin'])) {
        $input_validated['social_linkedin'] = esc_url_raw($input['social_linkedin']);
    }
    if (isset($input['social_flickr'])) {
        $input_validated['social_flickr'] = esc_url_raw($input['social_flickr']);
    }
    if (isset($input['social_tumblr'])) {
        $input_validated['social_tumblr'] = esc_url_raw($input['social_tumblr']);
    }
    if (isset($input['social_instagram'])) {
        $input_validated['social_instagram'] = esc_url_raw($input['social_instagram']);
    }
    if (isset($input['social_rss'])) {
        $input_validated['social_rss'] = esc_url_raw($input['social_rss']);
    }
    //Custom CSS Style Validation
    if (isset($input['custom_css'])) {
        $input_validated['custom_css'] = wp_kses_stripslashes($input['custom_css']);
    }
    //Webmaster Tool Verification
    if (isset($input['customscripts_header'])) {
        $input_validated['customscripts_header'] = wp_kses_stripslashes($input['customscripts_header']);
    }
    if (isset($input['customscripts_footer'])) {
        $input_validated['customscripts_footer'] = wp_kses_stripslashes($input['customscripts_footer']);
    }
    // Layout settings verification
    if (isset($input['reset_layout'])) {
        $input_validated['reset_layout'] = $input['reset_layout'];
    }
    if (0 == $input_validated['reset_layout']) {
        if (isset($input['default_layout'])) {
            $input_validated['default_layout'] = $input['default_layout'];
        }
    } else {
        $input_validated['default_layout'] = $travelify_theme_options_defaults['default_layout'];
    }
    //RSS Service
    $input_validated['feed_url'] = esc_url_raw($input['feed_url']);
    //Clearing the theme option cache
    if (function_exists('travelify_themeoption_invalidate_caches')) {
        travelify_themeoption_invalidate_caches();
    }
    return $input_validated;
}