112 lines
2.6 KiB
PHP
112 lines
2.6 KiB
PHP
<?php
|
|
/**
|
|
* Upgrades Handler.
|
|
*
|
|
* @author ThemeFusion
|
|
* @copyright (c) Copyright by ThemeFusion
|
|
* @link https://avada.com
|
|
* @package Avada
|
|
* @subpackage Core
|
|
*/
|
|
|
|
// Do not allow directly accessing this file.
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit( 'Direct script access denied.' );
|
|
}
|
|
|
|
/**
|
|
* Handle migrations for Avada 5.3.0.
|
|
*
|
|
* @since 5.4.0
|
|
*/
|
|
class Avada_Upgrade_540 extends Avada_Upgrade_Abstract {
|
|
|
|
/**
|
|
* The version.
|
|
*
|
|
* @access protected
|
|
* @since 5.3.0
|
|
* @var string
|
|
*/
|
|
protected $version = '5.4.0';
|
|
|
|
/**
|
|
* The actual migration process.
|
|
*
|
|
* @access protected
|
|
* @since 5.4.0
|
|
* @return void
|
|
*/
|
|
protected function migration_process() {
|
|
|
|
$this->migrate_slidingbar_link_color_hover();
|
|
|
|
add_action( 'init', [ $this, 'migrate_fusion_slider_options' ], 20 );
|
|
}
|
|
|
|
/**
|
|
* Migrate sliding bar link hover color from primary color.
|
|
*
|
|
* @access private
|
|
* @since 5.4.0
|
|
* @return void
|
|
*/
|
|
private function migrate_slidingbar_link_color_hover() {
|
|
$options = get_option( $this->option_name, [] );
|
|
|
|
$options['slidingbar_link_color_hover'] = $options['primary_color'];
|
|
|
|
update_option( $this->option_name, $options );
|
|
}
|
|
|
|
/**
|
|
* Migrate Avada Slider options.
|
|
*
|
|
* @access public
|
|
* @since 5.4.0
|
|
* @return void
|
|
*/
|
|
public function migrate_fusion_slider_options() {
|
|
|
|
$args = [
|
|
'taxonomy' => 'slide-page',
|
|
'number' => 0,
|
|
'hide_empty' => false,
|
|
];
|
|
|
|
$sliders = get_terms( $args );
|
|
|
|
foreach ( $sliders as $slider ) {
|
|
if ( isset( $slider->term_id ) ) {
|
|
$slider_settings = get_option( 'taxonomy_' . $slider->term_id );
|
|
|
|
$slider_settings['slider_indicator'] = '';
|
|
|
|
if ( isset( $slider_settings['pagination_circles'] ) && $slider_settings['pagination_circles'] ) {
|
|
$slider_settings['slider_indicator'] = 'pagination_circles';
|
|
// In this case #000 is default.
|
|
$slider_settings['slider_indicator_color'] = '#000000';
|
|
}
|
|
|
|
// Scroll down indicator has higher priority if 'pagination_circles' were enabled as well.
|
|
if ( isset( $slider_settings['scroll_down_indicator'] ) && $slider_settings['scroll_down_indicator'] ) {
|
|
$slider_settings['slider_indicator'] = 'scroll_down_indicator';
|
|
|
|
if ( isset( $slider_settings['scroll_down_indicator_color'] ) ) {
|
|
$slider_settings['slider_indicator_color'] = $slider_settings['scroll_down_indicator_color'];
|
|
}
|
|
}
|
|
|
|
unset( $slider_settings['pagination_circles'] );
|
|
unset( $slider_settings['scroll_down_indicator'] );
|
|
unset( $slider_settings['scroll_down_indicator_color'] );
|
|
|
|
// Save the option array.
|
|
update_option( 'taxonomy_' . $slider->term_id, $slider_settings );
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
}
|