Server IP : 52.91.253.208 / Your IP : 18.220.181.146 [ Web Server : Apache System : Linux ip-172-26-9-9 4.19.0-25-cloud-amd64 #1 SMP Debian 4.19.289-1 (2023-07-24) x86_64 User : daemon ( 1) PHP Version : 7.3.18 Disable Function : NONE Domains : 3 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /opt/bitnami/apps/wordpress/htdocs/wp-content/plugins/wp-external-links/includes/ |
Upload File : |
<?php /** * Class WPEL_Update * * @package WPEL * @category WordPress Plugin * @version 2.3 * @link https://www.webfactoryltd.com/ * @license Dual licensed under the MIT and GPLv2+ licenses */ final class WPEL_Update extends WPRun_Base_1x0x0 { /** * Initialize */ protected function init() { $this->update_to_v2(); } /** * Action for "admin_init" */ protected function action_admin_init() { $this->update_version(); } /** * Update version * @return void */ private function update_version() { $plugin_data = get_plugin_data( WPEL_Plugin::get_plugin_file() ); $current_version = $plugin_data[ 'Version' ]; $saved_version = get_option( 'wpel-version' ); if ( $current_version !== $saved_version ) { update_option( 'wpel-version', $current_version ); } $first_install = get_option( 'wpel-first-install', 0 ); if ( empty( $first_install ) ) { update_option( 'wpel-first-install', current_time( 'timestamp' ) ); } } /** * Update procedure to v2.x * @return void */ private function update_to_v2() { $site_already_set = get_option( 'wpel-external-link-settings' ); if ( $site_already_set ) { return; } // get default values $external_link_values = WPEL_External_Link_Fields::get_instance()->get_default_values(); $internal_link_values = WPEL_Internal_Link_Fields::get_instance()->get_default_values(); $excluded_link_values = WPEL_Excluded_Link_Fields::get_instance()->get_default_values(); $exceptions_link_values = WPEL_Exceptions_Fields::get_instance()->get_default_values(); $admin_link_values = WPEL_Admin_Fields::get_instance()->get_default_values(); // Upgrade to version 2 // check for old option values version < 2.0.0 $old_main = get_option( 'wp_external_links-main' ); $old_seo = get_option( 'wp_external_links-seo' ); $old_style = get_option( 'wp_external_links-style' ); $old_extra = get_option( 'wp_external_links-extra' ); $old_screen = get_option( 'wp_external_links-screen' ); // convert old to new db option values if ( ! empty( $old_main ) || ! empty( $old_seo ) || ! empty( $old_style ) || ! empty( $old_extra ) || ! empty( $old_screen ) ) { // helper function $val = function ( $arr, $key, $default = '' ) { if ( ! isset( $arr[ $key ] ) ) { return $default; } return (string) $arr[ $key ]; }; // mapping if ( ! empty( $old_main ) ) { $target = $val( $old_main, 'target' ); $external_link_values[ 'target' ] = str_replace( '_none', '_self', $target ); $exceptions_link_values[ 'apply_all' ] = $val( $old_main, 'filter_page' ); $exceptions_link_values[ 'apply_post_content' ] = $val( $old_main, 'filter_posts' ); $exceptions_link_values[ 'apply_comments' ] = $val( $old_main, 'filter_comments' ); $exceptions_link_values[ 'apply_widgets' ] = $val( $old_main, 'filter_widgets' ); $exceptions_link_values[ 'exclude_urls' ] = $val( $old_main, 'ignore' ); $exceptions_link_values[ 'subdomains_as_internal_links' ] = $val( $old_main, 'ignore_subdomains' ); } if ( ! empty( $old_seo ) ) { $external_link_values[ 'rel_follow' ] = ( '1' == $val( $old_seo, 'nofollow' ) ) ? 'nofollow' : 'follow'; $external_link_values[ 'rel_follow_overwrite' ] = $val( $old_seo, 'overwrite_follow' ); $external_link_values[ 'rel_external' ] = $val( $old_seo, 'external' ); $title = $val( $old_seo, 'title' ); $external_link_values[ 'title' ] = str_replace( '%title%', '{title}', $title ); } if ( ! empty( $old_style ) ) { if ( $old_style[ 'icon' ] ) { $external_link_values[ 'icon_type' ] = 'image'; $external_link_values[ 'icon_image' ] = $val( $old_style, 'icon', '1' ); } $external_link_values[ 'class' ] = $val( $old_style, 'class_name' ); $external_link_values[ 'no_icon_for_img' ] = $val( $old_style, 'image_no_icon' ); } /* if ( ! empty( $old_extra ) ) { // nothing } */ if ( ! empty( $old_screen ) ) { $admin_link_values[ 'own_admin_menu' ] = ( 'admin.php' == $val( $old_screen, 'menu_position' ) ) ? '1' : ''; } // delete old values delete_option( 'wp_external_links-meta' ); delete_option( 'wp_external_links-main' ); delete_option( 'wp_external_links-seo' ); delete_option( 'wp_external_links-style' ); delete_option( 'wp_external_links-extra' ); delete_option( 'wp_external_links-screen' ); } // update new values update_option( 'wpel-external-link-settings', $external_link_values ); update_option( 'wpel-internal-link-settings', $internal_link_values ); update_option( 'wpel-excluded-link-settings', $excluded_link_values ); update_option( 'wpel-exceptions-settings', $exceptions_link_values ); update_option( 'wpel-admin-settings', $admin_link_values ); } } /*?>*/