403Webshell
Server IP : 104.21.21.239  /  Your IP : 216.73.217.54
Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5
System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64
User : ec2-user ( 1000)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/newmandy/wp-content/wp-rss-aggregator/includes/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/newmandy/wp-content/wp-rss-aggregator/includes/update.php
<?php
    /**
     * Contains all the functions related to updating the plugin from
     * one version to another
     *
     * @package WP RSS Aggregator
     */

    add_action( 'init', 'wprss_version_check' );
	/**
	 * Checks the version number and runs install or update functions if needed.
	 *
	 * @since 2.0
	 */
	function wprss_version_check() {

		// Get the old database version.
		$old_db_version = get_option( 'wprss_db_version' );

		// Get the plugin settings.
		$settings = get_option( 'wprss_settings' );

		// Get the plugin options
		$options = get_option( 'wprss_options' );

		// For fresh installs
		// If there is no old database version and no settings, run the install.
		if ( empty( $old_db_version ) && false === $settings && false === $options ) {
			wprss_install();
		}

		// For version 1.0 to 3.0
		// If there is no old database version and no settings, but only options
		elseif ( empty( $old_db_version ) && false === $settings && !empty( $options ) ) {
			wp_clear_scheduled_hook( 'wprss_generate_hook' );
			wprss_install();
			wprss_migrate();
			wprss_fetch_insert_all_feed_items();
		}

		// For version 1.1 to 3.0
		// If there is no old database version, but only settings and options
		elseif ( empty( $old_db_version ) && !empty( $settings ) && !empty( $options ) ) {
			wp_clear_scheduled_hook( 'wprss_generate_hook' );
			wprss_update();
			wprss_migrate();
			wprss_fetch_insert_all_feed_items();
		}

		// For version 2+ to 3.0
		// We check if wprss_settings option exists, as this only exists prior to version 3.0
		// Settings field changed, and another added
		elseif ( intval( $old_db_version ) < intval( WPRSS_DB_VERSION ) && ( FALSE != get_option( 'wprss_settings' ) ) ) {
			wprss_upgrade_30();
			wprss_update();
			wprss_fetch_insert_all_feed_items();
		}

		// For any future versions where DB changes
		// If the old version is less than the new version, run the update.
		elseif ( intval( $old_db_version ) < intval( WPRSS_DB_VERSION ) ) {
			wprss_update();
			wprss_fetch_insert_all_feed_items();

			// NO FOLLOW CHANGE FIX
			$options = get_option( 'wprss_settings_general' );
			if ( $options['follow_dd'] === __( "No Follow", WPRSS_TEXT_DOMAIN ) ) {
				$options['follow_dd'] = 'no_follow';
			} elseif ( $options['follow_dd'] === __( "Follow", WPRSS_TEXT_DOMAIN ) ) {
				$options['follow_dd'] = 'follow';
			}
		}

	}


	/**
	 * Adds the plugin settings on install.
	 *
	 * @since 2.0
	 */
	function wprss_install() {

		// Add the database version setting.
		add_option( 'wprss_db_version', WPRSS_DB_VERSION );

		// Add the default plugin settings.
		add_option( 'wprss_settings_general', wprss_get_default_settings_general() );
	}


	/**
	 * Update settings of plugin to reflect new version
	 *
	 * @since 2.0
	 */
	function wprss_update() {

		// Update the database version setting.
		update_option( 'wprss_db_version', WPRSS_DB_VERSION );
		// Initialize settings
		wprss_settings_initialize();

                // Open Link Behavior Name Fix
                $settings = get_option( 'wprss_settings_general' );

                if( $settings['open_dd'] === 'New window' || $settings['open_dd'] === __( 'New window', WPRSS_TEXT_DOMAIN ) ){
                    $settings['open_dd'] = 'blank';
                }else if( $settings['open_dd'] === 'Lightbox' || $settings['open_dd'] === __( 'Lightbox', WPRSS_TEXT_DOMAIN ) ){
                    $settings['open_dd'] = 'lightbox';
                }else if( $settings['open_dd'] === 'Self' || $settings['open_dd'] === __( 'Self', WPRSS_TEXT_DOMAIN ) ){
                    $settings['open_dd'] = 'self';
                }

		// At version 4.7.5 tracking was disabled
		$settings['tracking'] = '0';
		update_option( 'wprss_settings_general', $settings );
	}

	/**
	 * Initialize settings to default ones if they are not yet set
	 *
	 * @since 3.0
	 */
	function wprss_settings_initialize() {
		// Get the settings from the new field in the database
		$settings = get_option( 'wprss_settings_general' );

		// Get the default plugin settings.
		$default_settings = wprss_get_default_settings_general();

		// Loop through each of the default plugin settings.
		foreach ( $default_settings as $setting_key => $setting_value ) {

			// If the setting didn't previously exist, add the default value to the $settings array.
			if ( ! isset( $settings[ $setting_key ] ) )
				$settings[ $setting_key ] = $setting_value;
		}

		// Update the plugin settings.
		update_option( 'wprss_settings_general', $settings );
	}


	/**
	 * Takes care of cron and DB changes between versions 2+ and 3
	 *
	 * @since 3.0
	 */
	function wprss_upgrade_30() {
		wp_clear_scheduled_hook( 'wprss_fetch_feeds_hook' );

		// Get the settings from the database.
		$settings = get_option( 'wprss_settings' );

		// Put them into our new field
		update_option( 'wprss_settings_general', $settings );

		// Remove old options field, we are now using wprss_settings_general
		delete_option( 'wprss_settings' );
	}


	/**
	 * Migrates the feed sources from the wprss_options field to the wp_posts table (for older versions)
	 *
	 * @since 2.0
	 */
	function wprss_migrate() {

		// Get the plugin options
		$options = get_option( 'wprss_options' );

        $feed_sources = array_chunk( $options, 2 );

        foreach ( $feed_sources as $feed_source ) {
            $feed_title = $feed_source[0];
            $feed_url = $feed_source[1];

            // Create post object
            $feed_item = array(
                'post_title' 	=> $feed_title,
                'post_content' 	=> '',
                'post_status' 	=> 'publish',
                'post_type' 	=> 'wprss_feed'
            );

            $inserted_ID = wp_insert_post( $feed_item, $wp_error );
            // insert post meta
            update_post_meta( $inserted_ID, 'wprss_url', $feed_url );
        }
        // delete unneeded option
        delete_option( 'wprss_options' );
	}


	/**
	 * Returns an array of the default plugin settings. These are only used on initial setup.
	 *
	 * @since 2.0
	 */
	function wprss_get_default_settings_general() {

		// Set up the default plugin settings
		$settings = apply_filters(
			'wprss_default_settings_general',
			array(
				// from version 1.1
				'open_dd' 					=> 'blank',
				'follow_dd' 				=> 'no_follow',

				// from version 2.0
				'feed_limit'				=> 15,

				// from version 3.0
				'date_format'				=> 'Y-m-d',
				'limit_feed_items_db' 		=> 200,
				'cron_interval' 			=> 'hourly',
				'styles_disable'    		=> 0,
				'title_link'				=> 1,
				'title_limit'				=> '',
				'source_enable'     		=> 1,
				'text_preceding_source' 	=> 'Source:',
				'date_enable'				=> 1,
				'text_preceding_date' 		=> 'Published on',

				// from version 3.1
				'limit_feed_items_imported' => 0,

				// from version 3.3
				'custom_feed_url'			=> 'wprss',
				'custom_feed_limit'			=> '',
				'source_link'				=> 0,

				// from version 3.4
				'video_link'				=> 'false',

				// from version 3.8
				'limit_feed_items_age'		=> '',
				'limit_feed_items_age_unit'	=> 'days',

				// from version 4.0.5
				'time_ago_format_enable'    => 0,

				// tracking
				'tracking'					=> 0,

				// from version 4.1.2
				'custom_feed_title'			=> 'Latest imported feed items on ' . get_bloginfo('name'),

				// From version 4.2.3
				'pagination'				=>	'default',

				// From 4.2.4
				'authors_enable'			=>	0,

				// From 4.7.2
				'unique_titles'				=> 0,

                // From 4.7.8
                'expiration_notice_period'  => '2 weeks',

                // From 4.8.2
                'feed_request_useragent'    => null,

                // From 4.11.2
                'limit_feed_items_per_import'   => null,
                'feed_items_import_order'       => '',
                'feed_items_import_order'       => '',
			)
		);

		// Return the default settings
		return $settings;
	}



	/**
	 * Returns the default tracking settings.
	 *
	 * @since 3.6
	 */
	function wprss_get_default_tracking_settings() {
		return apply_filters(
			'wprss_default_tracking_settings',
			array(
				'use_presstrends'				=>	'false',
				'tracking_notice'				=>	''
			)
		);
	}

Youez - 2016 - github.com/yon3zu
LinuXploit