function thesis_upgrade() { global $thesis_site, $thesis_design, $thesis_pages; if (version_compare($thesis_site->version, thesis_version(), '<')) { $thesis_site->upgrade_options(); $thesis_design->upgrade_options(); $thesis_pages->upgrade_options(); thesis_generate_css(); } wp_redirect(admin_url('admin.php?page=thesis-options&upgraded=true')); #wp }
function thesis_upgrade() { global $thesis; global $thesis_design; if (version_compare($thesis['version'], thesis_version(), '<')) { thesis_upgrade_options(); thesis_upgrade_design_options(); thesis_generate_css(); } elseif (!isset($thesis_design['nav']['link']['parent'])) { thesis_upgrade_design_options(); thesis_generate_css(); } wp_redirect(admin_url('admin.php?page=thesis-options&upgraded=true')); }
function manage_options() { if (isset($_GET['download'])) { if ($_GET['download'] == 'site') { check_admin_referer('thesis-download-site'); #wp header("Cache-Control: public, must-revalidate"); header("Pragma: hack"); header("Content-Type: text/plain"); header('Content-Disposition: attachment; filename="thesis-site-options-' . date("Ymd") . '.dat"'); $site_options = new thesis_site_options(); $site_options->get_options(); echo serialize($site_options); exit; } elseif ($_GET['download'] == 'design') { check_admin_referer('thesis-download-design'); #wp header("Cache-Control: public, must-revalidate"); header("Pragma: hack"); header("Content-Type: text/plain"); header('Content-Disposition: attachment; filename="thesis-design-options-' . date("Ymd") . '.dat"'); $design_options = new thesis_design_options(); $design_options->get_options(); echo serialize($design_options); exit; } elseif ($_GET['download'] == 'all') { check_admin_referer('thesis-download-all'); #wp header("Cache-Control: public, must-revalidate"); header("Pragma: hack"); header("Content-Type: text/plain"); header('Content-Disposition: attachment; filename="thesis-all-options-' . date("Ymd") . '.dat"'); $site_options = new thesis_site_options(); $site_options->get_options(); $design_options = new thesis_design_options(); $design_options->get_options(); echo serialize(array('site_options' => $site_options, 'design_options' => $design_options)); exit; } } elseif (isset($_GET['restore'])) { if ($_GET['restore'] == 'site') { check_admin_referer('thesis-restore-site'); #wp $default_site_options = new thesis_site_options(); $default_site_options->default_options(); update_option('thesis_options', $default_site_options); #wp wp_redirect(admin_url('admin.php?page=options-manager&restored=true&type=Site')); #wp } elseif ($_GET['restore'] == 'design') { check_admin_referer('thesis-restore-design'); #wp $default_design_options = new thesis_design_options(); $default_design_options->default_options(); update_option('thesis_design_options', $default_design_options); #wp thesis_generate_css(); wp_redirect(admin_url('admin.php?page=options-manager&restored=true&type=Design')); #wp } elseif ($_GET['restore'] == 'all') { check_admin_referer('thesis-restore-all'); #wp $default_site_options = new thesis_site_options(); $default_site_options->default_options(); $default_design_options = new thesis_design_options(); $default_design_options->default_options(); update_option('thesis_options', $default_site_options); #wp update_option('thesis_design_options', $default_design_options); #wp thesis_generate_css(); wp_redirect(admin_url('admin.php?page=options-manager&restored=true&type=All')); #wp } } elseif (isset($_POST['upload'])) { global $thesis_site; if ($_POST['upload'] == 'site') { check_admin_referer('thesis-upload-site', '_wpnonce-thesis-upload-site'); #wp if (strpos($_FILES['file']['name'], 'thesis-site-options') === false) { wp_redirect(admin_url('admin.php?page=options-manager&type=Site&error=wrongfile')); } elseif ($_FILES['file']['error'] > 0) { wp_redirect(admin_url('admin.php?page=options-manager&type=Site&error=file')); } else { $raw_options = file_get_contents($_FILES['file']['tmp_name']); $site_options = new thesis_site_options(); $site_options = unserialize($raw_options); if (function_exists('wp_cache_clean_cache')) { #wp global $file_prefix; wp_cache_clean_cache($file_prefix); } if (is_object($site_options) && version_compare($thesis_site->version, $site_options->version, '==')) { update_option('thesis_options', $site_options); #wp wp_redirect(admin_url('admin.php?page=options-manager&imported=true&type=Site')); #wp } else { wp_redirect(admin_url("admin.php?page=options-manager&type=Site&error=version&tried={$site_options->version}")); } #wp } } elseif ($_POST['upload'] == 'design') { check_admin_referer('thesis-upload-design', '_wpnonce-thesis-upload-design'); #wp if (strpos($_FILES['file']['name'], 'thesis-design-options') === false) { wp_redirect(admin_url('admin.php?page=options-manager&type=Design&error=wrongfile')); } elseif ($_FILES['file']['error'] > 0) { wp_redirect(admin_url('admin.php?page=options-manager&type=Design&error=file')); } else { $raw_options = file_get_contents($_FILES['file']['tmp_name']); $design_options = new thesis_design_options(); $design_options = unserialize($raw_options); if (function_exists('wp_cache_clean_cache')) { #wp global $file_prefix; wp_cache_clean_cache($file_prefix); } if (is_object($design_options) && version_compare($thesis_site->version, $design_options->version, '==')) { update_option('thesis_design_options', $design_options); #wp thesis_generate_css(); wp_redirect(admin_url('admin.php?page=options-manager&imported=true&type=Design')); #wp } else { wp_redirect(admin_url('admin.php?page=options-manager&type=Design&error=version-unknown')); } #wp } } elseif ($_POST['upload'] == 'all') { check_admin_referer('thesis-upload-all', '_wpnonce-thesis-upload-all'); #wp if (strpos($_FILES['file']['name'], 'thesis-all-options') === false) { wp_redirect(admin_url('admin.php?page=options-manager&type=All&error=wrongfile')); } elseif ($_FILES['file']['error'] > 0) { wp_redirect(admin_url('admin.php?page=options-manager&type=All&error=file')); } else { $raw_options = file_get_contents($_FILES['file']['tmp_name']); $all_options = unserialize($raw_options); $site_options = new thesis_site_options(); $design_options = new thesis_design_options(); $site_options = $all_options['site_options']; $design_options = $all_options['design_options']; if (function_exists('wp_cache_clean_cache')) { #wp global $file_prefix; wp_cache_clean_cache($file_prefix); #wp } if (is_object($site_options) && version_compare($thesis_site->version, $site_options->version, '==') && is_object($design_options) && version_compare($thesis_site->version, $design_options->version, '==')) { update_option('thesis_options', $site_options); #wp update_option('thesis_design_options', $design_options); #wp thesis_generate_css(); wp_redirect(admin_url('admin.php?page=options-manager&imported=true&type=All')); #wp } else { wp_redirect(admin_url("admin.php?page=options-manager&type=All&error=version&tried={$site_options->version}")); } #wp } } } }
function save($image) { if (!$image) { return; } global $thesis_design; $this->header = array('url' => esc_url($this->url), 'width' => $this->width, 'height' => $this->height); #wp update_option('thesis_header', $this->header); #wp if ($thesis_design->display['header']['tagline'] && apply_filters('thesis_header_auto_tagline', true)) { #filter $thesis_design->display['header']['tagline'] = false; update_option('thesis_design_options', $thesis_design); #wp } thesis_generate_css(); $this->updated = true; }
function upgrade_options() { // Retrieve Design Options and Design Options defaults $design_options = new thesis_design_options(); $design_options->get_options(); $default_design_options = new thesis_design_options(); $default_design_options->default_options(); // Retrieve Thesis Options and Thesis Options defaults $thesis_options = new thesis_site_options(); $thesis_options->get_options(); $default_options = new thesis_site_options(); $default_options->default_options(); if (isset($design_options->teasers) && !is_array($design_options->teasers)) { unset($design_options->teasers); } if (isset($design_options->feature_box_condition)) { $feature_box = $design_options->feature_box; unset($design_options->feature_box); } if (isset($thesis_options->multimedia_box)) { $multimedia_box = $thesis_options->multimedia_box; } // Ubiquitous options upgrade code foreach ($default_design_options as $option_name => $value) { if (!isset($design_options->{$option_name})) { $design_options->{$option_name} = $value; } } // 1.7 upgrade if (isset($design_options->style)) { $design_options->layout['custom'] = (bool) $design_options->style['custom']; } // 1.6b niceness if (!isset($design_options->nav['link']['parent'])) { $design_options->nav['link']['parent'] = $default_design_options->nav['link']['parent']; } if (!isset($design_options->nav['background']['parent'])) { $design_options->nav['background']['parent'] = $default_design_options->nav['background']['parent']; } // Version-specific upgrade code if (isset($design_options->font_sizes)) { foreach ($design_options->fonts as $area => $family) { $design_options->fonts['families'][$area] = $family ? $family : false; } foreach ($design_options->font_sizes as $area => $size) { $design_options->fonts['sizes'][$area] = $size; } } if (isset($design_options->num_columns)) { $design_options->layout['columns'] = $design_options->num_columns; } if (isset($design_options->widths)) { $design_options->layout['widths']['content'] = $design_options->widths['content'] ? $design_options->widths['content'] : 480; $design_options->layout['widths']['sidebar_1'] = $design_options->widths['sidebar_1'] ? $design_options->widths['sidebar_1'] : 195; $design_options->layout['widths']['sidebar_2'] = $design_options->widths['sidebar_2'] ? $design_options->widths['sidebar_2'] : 195; } if (isset($design_options->column_order)) { $design_options->layout['order'] = $design_options->column_order; } if (isset($design_options->html_framework)) { $design_options->layout['framework'] = $design_options->html_framework ? $design_options->html_framework : 'page'; } if (isset($design_options->page_padding)) { $design_options->layout['page_padding'] = $design_options->page_padding; } if (isset($design_options->teaser_options) && isset($design_options->teaser_content)) { foreach ($design_options->teaser_content as $teaser_area) { $new_teaser_options[$teaser_area]['name'] = $design_options->teasers['options'][$teaser_area]['name']; $new_teaser_options[$teaser_area]['show'] = (bool) $design_options->teaser_options[$teaser_area]; } if ($new_teaser_options) { $design_options->teasers['options'] = $new_teaser_options; } } if (isset($design_options->teaser_date)) { $design_options->teasers['date']['format'] = $design_options->teaser_date ? $design_options->teaser_date : 'standard'; } if (isset($design_options->teaser_date_custom)) { $design_options->teasers['date']['custom'] = $design_options->teaser_date_custom ? $design_options->teaser_date_custom : 'F j, Y'; } if (isset($design_options->teaser_font_sizes)) { foreach ($design_options->teaser_font_sizes as $teaser_area => $size) { $design_options->teasers['font_sizes'][$teaser_area] = $size; } } if (isset($design_options->teaser_link_text)) { $design_options->teasers['link_text'] = $design_options->teaser_link_text ? $design_options->teaser_link_text : false; } if (isset($feature_box)) { $design_options->feature_box['position'] = $feature_box; if (isset($design_options->feature_box_condition)) { $design_options->feature_box['status'] = $design_options->feature_box_condition; } if (isset($design_options->feature_box_after_post)) { $design_options->feature_box['after_post'] = $design_options->feature_box_after_post; } } // Multimedia box if (isset($multimedia_box) && is_array($multimedia_box)) { foreach ($multimedia_box as $item => $value) { $design_options->multimedia_box[$item] = $value; } } elseif (isset($multimedia_box)) { $design_options->multimedia_box['status'] = $multimedia_box; unset($thesis_options->multimedia_box); if ($thesis_options->image_alt_tags) { foreach ($thesis_options->image_alt_tags as $image_name => $alt_text) { if ($alt_text != '') { $design_options->multimedia_box['alt_tags'][$image_name] = $alt_text; } } unset($thesis_options->image_alt_tags); } if ($thesis_options->image_link_urls) { foreach ($thesis_options->image_link_urls as $image_name => $link_url) { if ($link_url != '') { $design_options->multimedia_box['link_urls'][$image_name] = $link_url; } } unset($thesis_options->image_link_urls); } if ($thesis_options->video_code) { $design_options->multimedia_box['video'] = $thesis_options->video_code; unset($thesis_options->video_code); } if ($thesis_options->custom_code) { $design_options->multimedia_box['code'] = $thesis_options->custom_code; unset($thesis_options->custom_code); } } // 1.6 Multimedia box style upgrades if (!isset($multimedia_box['color'])) { $design_options->multimedia_box['color'] = $default_design_options->multimedia_box['color']; } if (!isset($multimedia_box['background'])) { $design_options->multimedia_box['background']['image'] = $default_design_options->multimedia_box['background']['image']; $design_options->multimedia_box['background']['video'] = $default_design_options->multimedia_box['background']['video']; $design_options->multimedia_box['background']['code'] = $default_design_options->multimedia_box['background']['code']; } // Post images and thumbnails if (isset($design_options->post_image_horizontal)) { $thesis_options->image['post']['x'] = $design_options->post_image_horizontal; } if (isset($design_options->post_image_vertical)) { $thesis_options->image['post']['y'] = $design_options->post_image_vertical; } if (isset($design_options->post_image_frame)) { $thesis_options->image['post']['frame'] = $design_options->post_image_frame; } if (isset($design_options->post_image_single)) { $thesis_options->image['post']['single'] = $design_options->post_image_single; } if (isset($design_options->post_image_archives)) { $thesis_options->image['post']['archives'] = $design_options->post_image_archives; } if (isset($design_options->thumb_horizontal)) { $thesis_options->image['thumb']['x'] = $design_options->thumb_horizontal; } if (isset($design_options->thumb_vertical)) { $thesis_options->image['thumb']['y'] = $design_options->thumb_vertical; } if (isset($design_options->thumb_frame)) { $thesis_options->image['thumb']['frame'] = $design_options->thumb_frame; } if (isset($design_options->thumb_size)) { $thesis_options->image['thumb']['width'] = $design_options->thumb_size['width']; $thesis_options->image['thumb']['height'] = $design_options->thumb_size['height']; } // Preserve old font variables if ($design_options->font_body) { $design_options->fonts['families']['body'] = $design_options->font_body; } if ($design_options->font_content_subheads_family) { $design_options->fonts['families']['subheads'] = $design_options->font_content_subheads_family; } if ($design_options->font_nav_family) { $design_options->fonts['families']['nav_menu'] = $design_options->font_nav_family; } if ($design_options->font_header_family) { $design_options->fonts['families']['header'] = $design_options->font_header_family; } if ($design_options->font_header_tagline_family) { $design_options->fonts['families']['tagline'] = $design_options->font_header_tagline_family; } if ($design_options->font_headlines_family) { $design_options->fonts['families']['headlines'] = $design_options->font_headlines_family; } if ($design_options->font_bylines_family) { $design_options->fonts['families']['bylines'] = $design_options->font_bylines_family; } if ($design_options->font_multimedia_family) { $design_options->fonts['families']['multimedia_box'] = $design_options->font_multimedia_family; } if ($design_options->font_sidebars_family) { $design_options->fonts['families']['sidebars'] = $design_options->font_sidebars_family; } if ($design_options->font_sidebars_headings_family) { $design_options->fonts['families']['sidebar_headings'] = $design_options->font_sidebars_headings_family; } if ($design_options->font_footer_family) { $design_options->fonts['families']['footer'] = $design_options->font_footer_family; } // Preserve old font size variables if ($design_options->font_content_size) { $design_options->fonts['sizes']['content'] = $design_options->font_content_size; } if ($design_options->font_nav_size) { $design_options->fonts['sizes']['nav_menu'] = $design_options->font_nav_size; } if ($design_options->font_header_size) { $design_options->fonts['sizes']['header'] = $design_options->font_header_size; } if ($design_options->font_headlines_size) { $design_options->fonts['sizes']['headlines'] = $design_options->font_headlines_size; } if ($design_options->font_bylines_size) { $design_options->fonts['sizes']['bylines'] = $design_options->font_bylines_size; } if ($design_options->font_multimedia_size) { $design_options->fonts['sizes']['multimedia_box'] = $design_options->font_multimedia_size; } if ($design_options->font_sidebars_size) { $design_options->fonts['sizes']['sidebars'] = $design_options->font_sidebars_size; } if ($design_options->font_footer_size) { $design_options->fonts['sizes']['footer'] = $design_options->font_footer_size; } // Preserve old width settings if ($design_options->num_columns == 3 && $design_options->width_content_3) { $design_options->layout['widths']['content'] = $design_options->width_content_3; } elseif ($design_options->num_columns == 2 && $design_options->width_content_2) { $design_options->layout['widths']['content'] = $design_options->width_content_2; $design_options->layout['widths']['sidebar_1'] = $design_options->width_sidebar; } elseif ($design_options->num_columns == 3 && $design_options->width_content_1) { $design_options->layout['widths']['content'] = $design_options->width_content_1; } // Clean up the $design_options->fonts array from 1.5b r3 to 1.5 foreach ($design_options->fonts as $type => $value) { if ($type == 'families' || $type == 'sizes') { $new_fonts_array[$type] = $value; } } $design_options->fonts = $new_fonts_array; foreach ($design_options as $option_name => $value) { if (!isset($default_design_options->{$option_name})) { unset($design_options->{$option_name}); } // Has this option been nuked? If so, kill it! } update_option('thesis_design_options', $design_options); // Save upgraded options update_option('thesis_options', $thesis_options); thesis_generate_css(); }