Plugin Directory

Changeset 2446637


Ignore:
Timestamp:
12/28/2020 08:02:18 AM (5 years ago)
Author:
aiwatech
Message:

Fix - Session storage changed to fix register_globals conflict

Location:
wp-image-sizes
Files:
14 added
3 edited

Legend:

Unmodified
Added
Removed
  • wp-image-sizes/trunk/readme.txt

    r2445033 r2446637  
    11=== WP Image Sizes ===
    22Contributors: aiwatech
    3 Tags: image sizes, selected image sizes, media uploader, bulk image sizes, disable image sizes, prevent unnecessary images, thumbnails
     3Tags: images, sizes, thumbnails, gallery, image sizes, media uploader, media library, featured image, multiple image creation, selected image sizes, bulk image sizes, disable image sizes, prevent unnecessary images
    44Requires at least: 4.7
    55Requires PHP: 5.2.4
    6 Stable tag: 1.0.2
     6Stable tag: 1.0.3
    77Tested up to: 5.6
    88License: GPLv2 or later
     
    5252
    5353== Changelog ==
     54= 1.0.3 =
     55* Session storage changed to fix register_globals conflict
     56
    5457= 1.0.2 =
    5558* Plugin core changes
  • wp-image-sizes/trunk/wp-image-sizes.php

    r2431304 r2446637  
    44 * Plugin URI: https://aiwatech.com/wp-image-sizes
    55 * Description: Save server space by creating selected image sizes for every post type. It allows to select registered image sizes in media uploader and helps to avoid creation of unneccessary images.
    6  * Version: 1.0.2
     6 * Version: 1.0.3
    77 * Requires at least: 4.7
    8  * Tested up to: 5.5.3
     8 * Tested up to: 5.6
    99 * Author: Aiwatech
    1010 * Author URI: https://aiwatech.com
     
    2020
    2121$wpis               = get_option( "wpis" );
    22 $wpis_image_sizes   = $wpis["image_sizes"];
    23 $wpis_settings      = $wpis["settings"];
     22$wpis_image_sizes   = isset($wpis["image_sizes"])
     23                        ? $wpis["image_sizes"]
     24                        : [];
     25
     26$wpis_settings      = isset($wpis["settings"])
     27                        ? $wpis["settings"]
     28                        : [];
    2429
    2530if( !is_array($wpis_image_sizes) ){
     
    7681}
    7782
    78 
    79 //=== Hooked update wpis settings
    80 add_filter( "pre_update_option", "wpis_pre_update_option", 10, 3 );
    81 function wpis_pre_update_option( $posted_option, $option, $old_option ){
    82     if( !session_id() ){
    83         session_start();   
    84     }
    85    
    86     //--- Unset image sizes in session
    87     if( isset( $_SESSION["wpis_image_sizes"] ) ){
    88         unset( $_SESSION["wpis_image_sizes"] );
    89     }
    90    
    91     return $posted_option;
    92 }
    93 
    9483include_once( "wpis-init.php" );
  • wp-image-sizes/trunk/wpis-init.php

    r2431304 r2446637  
    136136    global $wpis_image_sizes;
    137137   
    138     if( !session_id() ){
    139         session_start();   
    140     }
     138    $wpis_session = get_option( "wpis_session" );
    141139   
    142140    $post_type = get_post_type( intval($_REQUEST["post_id"]) );
     
    146144    }
    147145   
    148     $selected_image_sizes = array_map("sanitize_text_field", $_SESSION["wpis_image_sizes"][$post_type]);
     146    $selected_image_sizes = array_map("sanitize_text_field", $wpis_session["wpis_image_sizes"][$post_type]);
    149147
    150148    if( $selected_image_sizes ){
     
    157155   
    158156    //=== Remove sizes from session
    159     unset($_SESSION["wpis_image_sizes"][$post_type]);
     157    unset($wpis_session["wpis_image_sizes"][$post_type]);
     158    update_option( "wpis_session", $wpis_session );
    160159   
    161160    return $sizes;
     
    167166function save_wpis_image_sizes(){
    168167   
    169     if( !session_id() ){
    170         session_start();   
    171     }
     168    $wpis_session = get_option( "wpis_session" );
    172169   
    173170    $res["success"] = 0;
     
    184181    }
    185182   
    186     $_SESSION["wpis_image_sizes"][$post_type] = $wpis_image_sizes;
     183    $wpis_session["wpis_image_sizes"][$post_type] = $wpis_image_sizes;
     184    update_option( "wpis_session", $wpis_session );
    187185   
    188186    die(json_encode($res));
     
    195193function wpis_media_uploader_ui(){
    196194   
    197     if( !session_id() ){
    198         session_start();   
    199     }
     195    $wpis_session = get_option( "wpis_session" );
    200196   
    201197    $intermediate_image_sizes = get_intermediate_image_sizes();
     
    215211        }
    216212       
    217         $wpis_image_sizes[$post_type] = isset($_SESSION["wpis_image_sizes"][$post_type]) ? array_map("sanitize_text_field",$_SESSION["wpis_image_sizes"][$post_type]) : array_map("sanitize_text_field", (array)$wpis_image_sizes[$post_type]);
     213        $wpis_image_sizes[$post_type] = isset($wpis_session["wpis_image_sizes"][$post_type]) ? array_map("sanitize_text_field",$wpis_session["wpis_image_sizes"][$post_type]) : array_map("sanitize_text_field", (array)$wpis_image_sizes[$post_type]);
    218214       
    219215        foreach( $intermediate_image_sizes as $image_size ){
     
    284280}
    285281endif;
     282
     283//=== Hooked update wpis settings
     284add_action( "update_option_wpis", "wpis_update_option", 10, 3 );
     285function wpis_update_option( $old_option, $new_option, $option ){
     286    update_option( "wpis_session", [] );
     287}
Note: See TracChangeset for help on using the changeset viewer.