HEX
Server: nginx/1.18.0
System: Linux iZj6c1ieg2jrpk1z5tzi19Z 6.3.9-1.el7.elrepo.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jun 21 22:18:40 EDT 2023 x86_64
User: www (1001)
PHP: 8.2.4
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/wwwroot/www.cytocare.cn/wp-content/themes/blocksy/inc/classes/db-versioning/v2-0-87.php
<?php

namespace Blocksy\DbVersioning;

class V2087 {
	public function migrate() {
		$this->enable_extensions();
	}

	public function enable_extensions() {
		if (
			! function_exists('wc_get_attribute_taxonomies')
			||
			! class_exists('\Blocksy\Plugin')
			||
			! in_array(
				'woocommerce-extra',
				get_option('blocksy_active_extensions', [])
			)
		) {
			return;
		}

		if (! class_exists('\Blocksy\Extensions\WoocommerceExtra\Storage')) {
			return;
		}

		$storage = new \Blocksy\Extensions\WoocommerceExtra\Storage();
		$settings = $storage->get_settings();

		if (
			! isset($settings['features']['added-to-cart-popup'])
			||
			! $settings['features']['added-to-cart-popup']
		) {
			return;
		}

		if (
			get_theme_mod(
				'cart_popup_suggested_products',
				'__empty__'
			) !== '__empty__'
			||
			get_theme_mod('added_to_cart_popup_suggested_products', 'yes') === 'no'
		) {
			return;
		}
		
		$settings = update_option(
			'blocksy_ext_woocommerce_extra_settings',
			array_merge(
				$settings,
				[
					'features' => array_merge(
						$settings['features'],
						[
							'suggested-products' => true
						]
					)
				]
			)
		);

		remove_theme_mod('added_to_cart_popup_suggested_products');

		set_theme_mod('checkout_suggested_products', 'no');
		set_theme_mod('mini_cart_suggested_products', 'no');

		$migrate_options = [
			'suggested_products_visibility',
			'suggested_products_title_font',
			'suggested_products_title_color',
			'suggested_products_price_font',
			'suggested_products_price_color',
		];

		$theme_mods = [
			'suggested_products_source' => 'added_to_cart_popup_products_source',
			'suggested_products_columns' => 'added_to_cart_popup_products_columns',
			'suggested_products_number_of_items' => 'added_to_cart_popup_products_number_of_items',
			'suggested_products_type' => 'added_to_cart_popup_products_type',
			'suggested_products_autoplay_speed' => 'added_to_cart_popup_products_autoplay_speed',
		];

		$all_options = array_merge($theme_mods, array_combine($migrate_options, $migrate_options));

		foreach ($all_options as $key => $mod) {
			$value = get_theme_mod($mod, '__empty__');

			if ($value !== '__empty__') {
				remove_theme_mod($mod);

				$new_key = "cart_popup_$key";
				set_theme_mod($new_key, $value);
			}
		}

		blocksy_manager()->db->wipe_cache();
	}
}