'text/html' ) ); wp_enqueue_script( 'jquery' ); wp_enqueue_script( 'sc-admin-settings-js', SC_ADMIN_URL . 'js/script-settings.js', array( 'jquery' ), SC_VERSION ); } public static function page(){ self::save_settings(); echo '
'; echo '
'; echo '

Shortcoder - General Settings

'; echo '
'; $settings = Shortcoder::get_settings(); echo '
'; $fields = array( array( __( 'Default editor', 'shortcoder' ), SC_Admin_Form::field( 'select', array( 'value' => $settings[ 'default_editor' ], 'name' => 'sc_default_editor', 'list' => array( 'text' => __( 'Text editor', 'shortcoder' ), 'visual' => __( 'Visual editor', 'shortcoder' ), 'code' => __( 'Code editor', 'shortcoder' ) ), 'helper' => __( 'The default editor mode when creating new shortcodes', 'shortcoder' ) ))), array( __( 'Default shortcode content', 'shortcoder' ), SC_Admin_Form::field( 'textarea', array( 'value' => $settings[ 'default_content' ], 'id' => 'sc_default_content', 'name' => 'sc_default_content', 'class' => 'widefat', 'helper' => __( 'The default shortcode content when creating new shortcodes', 'shortcoder' ) ))), array( __( 'Show content in "All shortcodes" page', 'shortcoder' ), SC_Admin_Form::field( 'select', array( 'value' => $settings[ 'list_content' ], 'name' => 'sc_list_content', 'list' => array( 'no' => __( 'Hidden', 'shortcoder' ), '100' => __( '100 characters', 'shortcoder' ), '200' => __( '200 characters', 'shortcoder' ) ), 'helper' => __( 'List the shortcode content in "All shortcodes" page.', 'shortcoder' ) ))), ); echo '
'; echo SC_Admin_Form::table($fields); wp_nonce_field( 'sc_settings_nonce' ); echo '

'; echo '
'; echo '
'; echo '
'; } public static function save_settings(){ if( $_POST && check_admin_referer( 'sc_settings_nonce' ) ){ $defaults = Shortcoder::default_settings(); $p = Shortcoder::set_defaults( SC_Admin::clean_post(), $defaults ); $values = array(); foreach( $defaults as $field => $default ){ $form_field = 'sc_' . $field; $value = isset( $p[ $form_field ] ) ? $p[ $form_field ] : $default; if( in_array( $field, array( 'default_content' ) ) ){ $values[ $field ] = current_user_can( 'unfiltered_html' ) ? $value : wp_kses_post( $value ); }else{ $values[ $field ] = sanitize_text_field( $value ); } } update_option( 'sc_settings', $values ); self::print_notice( 'Successfully saved the changes !' ); } } public static function print_notice( $msg = '', $type = 'success' ){ if( $msg != '' ){ echo '

' . wp_kses_post( $msg ) . '

'; } } } SC_Admin_Settings::init(); ?>