Plugin Directory

Changeset 1416364


Ignore:
Timestamp:
05/13/2016 03:13:53 PM (10 years ago)
Author:
forde
Message:

v 1.2 - Security update

Location:
safe-editor/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • safe-editor/trunk/index.php

    r1067775 r1416364  
    44Plugin URI:
    55Description: Safe Editor allows you to write custom CSS / Javascript to manipulate the appearance and behavior of themes / plugins on your website without worrying that your changes will be overwritten with the future theme / plugin updates.
    6 Version: 1.1
     6Version: 1.2
    77Author: Konrad Węgrzyniak
    88Author URI: http://forde.pl/
     
    1717        if(!wp_script_is('jquery')) wp_enqueue_script('jquery',false,array(),false, true);
    1818
    19         wp_enqueue_style('codemirror-theme-ambiance', plugins_url('/theme/ambiance.css', __FILE__));
    20         wp_enqueue_style('codemirror-theme-monokai', plugins_url('/theme/monokai.css', __FILE__));
    21         wp_enqueue_style('codemirror-theme-solarized', plugins_url('/theme/solarized.css', __FILE__));
    22         wp_enqueue_style('codemirror-theme-tomorrow-night-eighties', plugins_url('/theme/tomorrow-night-eighties.css', __FILE__));
    23 
    24         wp_enqueue_style('codemirror-css', plugins_url('/codemirror/codemirror.css', __FILE__));
    25         wp_enqueue_script('codemirror', plugins_url( '/codemirror/codemirror.js', __FILE__ ),array(),false, true);
    26         wp_enqueue_script('codemirror-mode-css', plugins_url( '/codemirror/mode/css/css.js', __FILE__ ),array(),false, true);
    27         wp_enqueue_script('codemirror-mode-js', plugins_url( '/codemirror/mode/javascript/javascript.js', __FILE__ ),array(),false, true);
    28         wp_enqueue_style('safe-editor-css', plugins_url( '/css/safe_editor.css', __FILE__ ));
    29         wp_enqueue_script('safe-editor-js', plugins_url( '/js/safe_editor.js', __FILE__ ),array(),false, true);
    30         wp_localize_script( 'safe-editor-js', 'scriptsajax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ) );
     19        wp_enqueue_style('codemirror-theme-ambiance', plugins_url('/theme/ambiance.css', __FILE__));
     20        wp_enqueue_style('codemirror-theme-monokai', plugins_url('/theme/monokai.css', __FILE__));
     21        wp_enqueue_style('codemirror-theme-solarized', plugins_url('/theme/solarized.css', __FILE__));
     22        wp_enqueue_style('codemirror-theme-tomorrow-night-eighties', plugins_url('/theme/tomorrow-night-eighties.css', __FILE__));
     23
     24        wp_enqueue_style('codemirror-css', plugins_url('/codemirror/codemirror.css', __FILE__));
     25        wp_enqueue_script('codemirror', plugins_url( '/codemirror/codemirror.js', __FILE__ ),array(),false, true);
     26        wp_enqueue_script('codemirror-mode-css', plugins_url( '/codemirror/mode/css/css.js', __FILE__ ),array(),false, true);
     27        wp_enqueue_script('codemirror-mode-js', plugins_url( '/codemirror/mode/javascript/javascript.js', __FILE__ ),array(),false, true);
     28        wp_enqueue_style('safe-editor-css', plugins_url( '/css/safe_editor.css', __FILE__ ));
     29        wp_enqueue_script('safe-editor-js', plugins_url( '/js/safe_editor.js', __FILE__ ),array(),false, true);
     30        wp_localize_script( 'safe-editor-js', 'scriptsajax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ) );
    3131    }
    3232    function admin_menu () {
     
    3434    }
    3535    function se_tabs( $current = 'css' ) {
    36         $tabs = array( 'css' => 'CSS Editor', 'js' => 'Javascript Editor');
    37         echo '<h2 class="nav-tab-wrapper">';
    38         foreach( $tabs as $tab => $name ){
    39             $class = ( $tab == $current ) ? ' nav-tab-active' : '';
    40             echo "<a class='nav-tab$class' href='?page=safe-editor&tab=$tab'>$name</a>";
    41         }
    42         echo '</h2>';
     36        $tabs = array( 'css' => 'CSS Editor', 'js' => 'Javascript Editor');
     37        echo '<h2 class="nav-tab-wrapper">';
     38        foreach( $tabs as $tab => $name ){
     39            $class = ( $tab == $current ) ? ' nav-tab-active' : '';
     40            echo "<a class='nav-tab$class' href='?page=safe-editor&tab=$tab'>$name</a>";
     41        }
     42        echo '</h2>';
    4343    }
    4444    function  settings_page () {
     
    9696                    var js_editor = CodeMirror.fromTextArea(document.getElementById("safe_js_editor"), {
    9797                        mode:  "javascript",
    98                         indentUnit: 4,
     98                        indentUnit: 4,
    9999                        lineNumbers: true,
    100100                        theme: "solarized light"
    101                     });
    102 
    103 
    104                     var saving_css = false,
     101                    });
     102
     103
     104                    var saving_css = false,
    105105                        saving_js = false;
    106106
     
    133133                                action: 'se_save',
    134134                                type: type,
     135                                nonce: '<?php echo wp_create_nonce("postman-pat") ?>',
    135136                                data: value
    136137                            },
     
    176177function se_save() {
    177178    //echo "<pre>"; print_r($_POST); echo "</pre>";
     179    if(!isset($_POST['nonce'])) {
     180        die();
     181    }
     182    if(!wp_verify_nonce($_POST['nonce'], 'postman-pat')) {
     183        die();
     184    }
     185    if(!is_user_logged_in()) {
     186        die();
     187    }
    178188    switch($_POST['type']) {
    179189        case 'css' :
     
    184194            break;
    185195    }
    186     die();
     196    die();
    187197}
    188198add_action( 'wp_ajax_nopriv_se_save', 'se_save' );
  • safe-editor/trunk/readme.txt

    r1067775 r1416364  
    3131== Change Log ==
    3232
     33= 1.2 =
     34* Security update
     35
    3336= 1.1 =
    3437* Solarized light theme for css and javascript editor added
Note: See TracChangeset for help on using the changeset viewer.