WordPress.org

Plugin Directory

Changeset 1329809


Ignore:
Timestamp:
01/17/16 00:57:48 (16 months ago)
Author:
ChaseWiseman
Message:

Release 0.3.0

Location:
age-verify
Files:
10 added
12 deleted
12 edited
1 copied

Legend:

Unmodified
Added
Removed
  • age-verify/tags/0.3.0/age-verify.php

    r1139727 r1329809  
    22/** 
    33 * The main plugin file. 
    4  *  
     4 * 
    55 * This file loads the main plugin class and gets things running. 
    66 * 
    77 * @since 0.2.6 
    8  *  
     8 * 
    99 * @package Age_Verify 
    1010 */ 
     
    1515 * Author:      Chase Wiseman 
    1616 * Author URI:  http://chasewiseman.com 
    17  * Version:     0.2.9 
    18  * Text Domain: age_verify 
    19  * Domain Path: /languages/ 
     17 * Version:     0.3.0 
     18 * Text Domain: age-verify 
     19 * Domain Path: /languages 
    2020 */ 
    2121 
     
    3535// Check that the admin is loaded. 
    3636if ( is_admin() ) { 
    37      
     37 
    3838    /** 
    3939     * The admin class definition. 
    4040     */ 
    4141    require( plugin_dir_path( __FILE__ ) . 'includes/admin/class-age-verify-admin.php' ); 
    42      
     42 
    4343    // Get the plugin's admin running. 
    4444    add_action( 'plugins_loaded', array( 'Age_Verify_Admin', 'get_instance' ) ); 
  • age-verify/tags/0.3.0/includes/admin/class-age-verify-admin.php

    r999280 r1329809  
    22/** 
    33 * Define the admin class 
    4  *  
     4 * 
    55 * @since 0.2.6 
    6  *  
     6 * 
    77 * @package Age_Verify\Admin 
    88 */ 
     
    1515/** 
    1616 * The admin class. 
    17  *  
     17 * 
    1818 * @since 0.2.6 
    1919 */ 
    2020final class Age_Verify_Admin { 
    21      
     21 
    2222    /** 
    2323     * The only instance of this class. 
    24      *  
     24     * 
    2525     * @since 0.2.6 
    2626     * @access protected 
    2727     */ 
    2828    protected static $instance = null; 
    29      
     29 
    3030    /** 
    3131     * Get the only instance of this class. 
    32      *  
    33      * @since 0.2.6 
    34      *  
     32     * 
     33     * @since 0.2.6 
     34     * 
    3535     * @return object $instance The only instance of this class. 
    3636     */ 
    3737    public static function get_instance() { 
    38          
     38 
    3939        if ( is_null( self::$instance ) ) { 
    4040            self::$instance = new self(); 
    4141        } 
    42          
     42 
    4343        return self::$instance; 
    4444    } 
     
    4848     * 
    4949     * @since 0.2.6 
    50      *  
     50     * 
    5151     * @return void 
    5252     */ 
    5353    public function __clone() { 
    54         _doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', Age_Verify::SLUG ), Age_Verify::VERSION ); 
     54        _doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', 'age-verify' ), Age_Verify::VERSION ); 
    5555    } 
    5656 
     
    5959     * 
    6060     * @since 0.2.6 
    61      *  
     61     * 
    6262     * @return void 
    6363     */ 
    6464    public function __wakeup() { 
    65         _doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', Age_Verify::SLUG ), Age_Verify::VERSION ); 
    66     } 
    67      
     65        _doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', 'age-verify' ), Age_Verify::VERSION ); 
     66    } 
     67 
    6868    /** 
    6969     * Construct the class! 
    7070     * 
    7171     * @since 0.2.6 
    72      *  
     72     * 
    7373     * @return void 
    7474     */ 
    7575    public function __construct() { 
    76          
     76 
    7777        /** 
    7878         * The settings callbacks. 
    7979         */ 
    8080        require( plugin_dir_path( __FILE__ ) . 'settings.php' ); 
    81          
     81 
    8282        // Add the settings page. 
    8383        add_action( 'admin_menu', array( $this, 'add_settings_page' ) ); 
    84          
     84 
    8585        // Add and register the settings sections and fields. 
    8686        add_action( 'admin_init', array( $this, 'register_settings' ) ); 
    87          
     87 
    8888        // Add the "Settings" link to the plugin row. 
    8989        add_filter( 'plugin_action_links_age-verify/age-verify.php', array( $this, 'add_settings_link' ), 10 ); 
    90          
     90 
    9191        // Enqueue the script. 
    9292        add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) ); 
    93          
     93 
    9494        // Only load with post-specific stuff if enabled. 
    9595        if ( 'content' == get_option( '_av_require_for' ) ) { 
    96              
     96 
    9797            // Add a "restrict" checkbox to individual posts/pages. 
    9898            add_action( 'post_submitbox_misc_actions', array( $this, 'add_submitbox_checkbox' ) ); 
    99              
     99 
    100100            // Save the "restrict" checkbox value. 
    101101            add_action( 'save_post', array( $this, 'save_post' ) ); 
    102              
    103         } 
    104     } 
    105      
     102 
     103        } 
     104    } 
     105 
    106106    /** 
    107107     * Add to the settings page. 
    108108     * 
    109109     * @since 0.2.6 
    110      *  
     110     * 
    111111     * @return void 
    112112     */ 
    113113    public function add_settings_page() { 
    114      
     114 
    115115        add_options_page ( 
    116             __( 'Age Verify', Age_Verify::SLUG ), 
    117             __( 'Age Verify', Age_Verify::SLUG ), 
     116            __( 'Age Verify', 'age-verify' ), 
     117            __( 'Age Verify', 'age-verify' ), 
    118118            'manage_options', 
    119119            'age-verify', 
     
    121121        ); 
    122122    } 
    123      
     123 
    124124    /** 
    125125     * Add and register the settings sections and fields. 
     
    130130     */ 
    131131    public function register_settings() { 
    132          
     132 
    133133        /* General Section */ 
    134134        add_settings_section( 'av_settings_general', null, 'av_settings_callback_section_general', 'age-verify' ); 
    135          
     135 
    136136        // What to protect (entire site or specific content) 
    137         add_settings_field( '_av_require_for', __( 'Require verification for', 'age_verify' ), 'av_settings_callback_require_for_field', 'age-verify', 'av_settings_general' ); 
     137        add_settings_field( '_av_require_for', __( 'Require verification for', 'age-verify' ), 'av_settings_callback_require_for_field', 'age-verify', 'av_settings_general' ); 
    138138        register_setting  ( 'age-verify', '_av_require_for', 'esc_attr' ); 
    139          
     139 
    140140        // Who to verify (logged in or all) 
    141         add_settings_field( '_av_always_verify', __( 'Verify the age of', 'age_verify' ), 'av_settings_callback_always_verify_field', 'age-verify', 'av_settings_general' ); 
     141        add_settings_field( '_av_always_verify', __( 'Verify the age of', 'age-verify' ), 'av_settings_callback_always_verify_field', 'age-verify', 'av_settings_general' ); 
    142142        register_setting  ( 'age-verify', '_av_always_verify', 'esc_attr' ); 
    143          
     143 
    144144        // Minimum Age 
    145         add_settings_field( '_av_minimum_age', '<label for="_av_minimum_age">' . __( 'Visitors must be', 'age_verify' ) . '</label>', 'av_settings_callback_minimum_age_field', 'age-verify', 'av_settings_general' ); 
     145        add_settings_field( '_av_minimum_age', '<label for="_av_minimum_age">' . __( 'Visitors must be', 'age-verify' ) . '</label>', 'av_settings_callback_minimum_age_field', 'age-verify', 'av_settings_general' ); 
    146146        register_setting  ( 'age-verify', '_av_minimum_age', 'intval' ); 
    147          
     147 
    148148        // Memory Length 
    149         add_settings_field( '_av_cookie_duration', '<label for="_av_cookie_duration">' . __( 'Remember visitors for', 'age_verify' ) . '</label>', 'av_settings_callback_cookie_duration_field', 'age-verify', 'av_settings_general' ); 
     149        add_settings_field( '_av_cookie_duration', '<label for="_av_cookie_duration">' . __( 'Remember visitors for', 'age-verify' ) . '</label>', 'av_settings_callback_cookie_duration_field', 'age-verify', 'av_settings_general' ); 
    150150        register_setting  ( 'age-verify', '_av_cookie_duration', 'intval' ); 
    151          
    152         add_settings_field( '_av_membership', __( 'Membership', 'age_verify' ), 'av_settings_callback_membership_field', 'age-verify', 'av_settings_general' ); 
     151 
     152        add_settings_field( '_av_membership', __( 'Membership', 'age-verify' ), 'av_settings_callback_membership_field', 'age-verify', 'av_settings_general' ); 
    153153        register_setting  ( 'age-verify', '_av_membership', 'intval' ); 
    154          
     154 
    155155        /* Display Section */ 
    156         add_settings_section( 'av_settings_display', __( 'Display Options', 'age_verify' ), 'av_settings_callback_section_display', 'age-verify' ); 
    157          
     156        add_settings_section( 'av_settings_display', __( 'Display Options', 'age-verify' ), 'av_settings_callback_section_display', 'age-verify' ); 
     157 
    158158        // Heading 
    159         add_settings_field( '_av_heading', '<label for="_av_heading">' . __( 'Overlay Heading', 'age_verify' ) . '</label>', 'av_settings_callback_heading_field', 'age-verify', 'av_settings_display' ); 
     159        add_settings_field( '_av_heading', '<label for="_av_heading">' . __( 'Overlay Heading', 'age-verify' ) . '</label>', 'av_settings_callback_heading_field', 'age-verify', 'av_settings_display' ); 
    160160        register_setting  ( 'age-verify', '_av_heading', 'esc_attr' ); 
    161          
     161 
    162162        // Description 
    163         add_settings_field( '_av_description', '<label for="_av_description">' . __( 'Overlay Description', 'age_verify' ) . '</label>', 'av_settings_callback_description_field', 'age-verify', 'av_settings_display' ); 
     163        add_settings_field( '_av_description', '<label for="_av_description">' . __( 'Overlay Description', 'age-verify' ) . '</label>', 'av_settings_callback_description_field', 'age-verify', 'av_settings_display' ); 
    164164        register_setting  ( 'age-verify', '_av_description', 'esc_attr' ); 
    165          
     165 
    166166        // Input Type 
    167         add_settings_field( '_av_input_type', '<label for="_av_input_type">' . __( 'Verify ages using', 'age_verify' ) . '</label>', 'av_settings_callback_input_type_field', 'age-verify', 'av_settings_display' ); 
     167        add_settings_field( '_av_input_type', '<label for="_av_input_type">' . __( 'Verify ages using', 'age-verify' ) . '</label>', 'av_settings_callback_input_type_field', 'age-verify', 'av_settings_display' ); 
    168168        register_setting  ( 'age-verify', '_av_input_type', 'esc_attr' ); 
    169          
     169 
    170170        // Enable CSS 
    171         add_settings_field( '_av_styling', __( 'Styling', 'age_verify' ), 'av_settings_callback_styling_field', 'age-verify', 'av_settings_display' ); 
     171        add_settings_field( '_av_styling', __( 'Styling', 'age-verify' ), 'av_settings_callback_styling_field', 'age-verify', 'av_settings_display' ); 
    172172        register_setting  ( 'age-verify', '_av_styling', 'intval' ); 
    173          
     173 
    174174        // Overlay Color 
    175         add_settings_field( '_av_overlay_color', __( 'Overlay Color', 'age_verify' ), 'av_settings_callback_overlay_color_field', 'age-verify', 'av_settings_display' ); 
     175        add_settings_field( '_av_overlay_color', __( 'Overlay Color', 'age-verify' ), 'av_settings_callback_overlay_color_field', 'age-verify', 'av_settings_display' ); 
    176176        register_setting  ( 'age-verify', '_av_overlay_color', array( $this, 'validate_color' ) ); 
    177          
     177 
    178178        // Background Color 
    179         add_settings_field( '_av_bgcolor', __( 'Background Color', 'age_verify' ), 'av_settings_callback_bgcolor_field', 'age-verify', 'av_settings_display' ); 
     179        add_settings_field( '_av_bgcolor', __( 'Background Color', 'age-verify' ), 'av_settings_callback_bgcolor_field', 'age-verify', 'av_settings_display' ); 
    180180        register_setting  ( 'age-verify', '_av_bgcolor', array( $this, 'validate_color' ) ); 
    181          
     181 
    182182        do_action( 'av_register_settings' ); 
    183183    } 
    184      
     184 
    185185    /** 
    186186     * Add a direct link to the Age Verify settings page from the plugins page. 
    187187     * 
    188188     * @since 0.2.6 
    189      *  
     189     * 
    190190     * @param array  $actions The links beneath the plugin's name. 
    191191     * @param string $file    The plugin filename. 
     
    193193     */ 
    194194    public function add_settings_link( $actions ) { 
    195          
     195 
    196196        $settings_link = '<a href="' . esc_url( add_query_arg( 'page', 'age-verify', admin_url( 'options-general.php' ) ) ) . '">'; 
    197             $settings_link .= __( 'Settings', Age_Verify::SLUG ); 
     197            $settings_link .= __( 'Settings', 'age-verify' ); 
    198198        $settings_link .='</a>'; 
    199          
     199 
    200200        array_unshift( $actions, $settings_link ); 
    201          
     201 
    202202        return $actions; 
    203203    } 
    204      
     204 
    205205    /** 
    206206     * Validates the color inputs from the settings. 
    207207     * 
    208208     * @since 0.2.6 
    209      *  
     209     * 
    210210     * @param  string $color A color hex. 
    211211     * @return string $color The validated color hex. 
    212212     */ 
    213213    public function validate_color( $color ) { 
    214          
     214 
    215215        $color = preg_replace( '/[^0-9a-fA-F]/', '', $color ); 
    216          
     216 
    217217        if ( strlen( $color ) == 6 || strlen( $color ) == 3 ) { 
    218218            $color = $color; 
     
    220220            $color = ''; 
    221221        } 
    222          
     222 
    223223        return $color; 
    224224    } 
    225      
     225 
    226226    /** 
    227227     * Enqueue the scripts. 
    228228     * 
    229229     * @since 0.2.6 
    230      *  
     230     * 
    231231     * @param string $page The current admin page. 
    232232     * @return void 
    233233     */ 
    234234    public function enqueue_scripts( $page ) { 
    235          
     235 
    236236        if ( 'settings_page_age-verify' != $page ) { 
    237237            return; 
    238238        } 
    239          
     239 
    240240        wp_enqueue_style( 'wp-color-picker' ); 
    241          
     241 
    242242        wp_enqueue_script( 'av-admin-scripts', plugin_dir_url( __FILE__ ) . 'assets/scripts.js', array( 
    243243            'jquery', 
     
    245245        ) ); 
    246246    } 
    247      
     247 
    248248    /** 
    249249     * Add a "restrict" checkbox to individual posts/pages. 
     
    254254     */ 
    255255    public function add_submitbox_checkbox() { ?> 
    256          
     256 
    257257        <div class="misc-pub-section verify-age"> 
    258              
     258 
    259259            <?php wp_nonce_field( 'av_save_post', 'av_nonce' ); ?> 
    260              
     260 
    261261            <input type="checkbox" name="_av_needs_verify" id="_av_needs_verify" value="1" <?php checked( 1, get_post_meta( get_the_ID(), '_av_needs_verify', true ) ); ?> /> 
    262262            <label for="_av_needs_verify" class="selectit"> 
    263                 <?php esc_html_e( 'Require age verification for this content', Age_Verify::SLUG ); ?> 
     263                <?php esc_html_e( 'Require age verification for this content', 'age-verify' ); ?> 
    264264            </label> 
    265              
     265 
    266266        </div><!-- .misc-pub-section --> 
    267          
     267 
    268268    <?php } 
    269      
     269 
    270270    /** 
    271271     * Save the "restrict" checkbox value. 
    272272     * 
    273273     * @since 0.2.6 
    274      *  
     274     * 
    275275     * @param int $post_id The current post ID. 
    276276     * @return void 
    277277     */ 
    278278    public function save_post( $post_id ) { 
    279          
     279 
    280280        if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) { 
    281281            return; 
    282282        } 
    283          
     283 
    284284        $nonce = ( isset( $_POST['av_nonce'] ) ) ? $_POST['av_nonce'] : ''; 
    285          
     285 
    286286        if ( ! wp_verify_nonce( $nonce, 'av_save_post' ) ) { 
    287287            return; 
    288288        } 
    289          
     289 
    290290        $needs_verify = ( isset( $_POST['_av_needs_verify'] ) ) ? (int) $_POST['_av_needs_verify'] : 0; 
    291          
     291 
    292292        update_post_meta( $post_id, '_av_needs_verify', $needs_verify ); 
    293293    } 
  • age-verify/tags/0.3.0/includes/admin/settings.php

    r995794 r1329809  
    1515        <?php screen_icon(); ?> 
    1616 
    17         <h2><?php esc_html_e( 'Age Verify Settings', 'age_verify' ) ?></h2> 
     17        <h2><?php esc_html_e( 'Age Verify Settings', 'age-verify' ) ?></h2> 
    1818 
    1919        <form action="options.php" method="post"> 
     
    5454    <fieldset> 
    5555        <legend class="screen-reader-text"> 
    56             <span><?php esc_html_e( 'Require verification for', 'age_verify' ); ?></span> 
     56            <span><?php esc_html_e( 'Require verification for', 'age-verify' ); ?></span> 
    5757        </legend> 
    5858        <label> 
    5959            <input type="radio" name="_av_require_for" value="site" <?php checked( 'site', get_option( '_av_require_for', 'site' ) ); ?>/> 
    60              <?php esc_html_e( 'Entire site', 'age_verify' ); ?><br /> 
     60             <?php esc_html_e( 'Entire site', 'age-verify' ); ?><br /> 
    6161        </label> 
    6262        <br /> 
    6363        <label> 
    6464            <input type="radio" name="_av_require_for" value="content" <?php checked( 'content', get_option( '_av_require_for', 'site' ) ); ?>/> 
    65              <?php esc_html_e( 'Specific content', 'age_verify' ); ?> 
     65             <?php esc_html_e( 'Specific content', 'age-verify' ); ?> 
    6666        </label> 
    6767    </fieldset> 
     
    7878    <fieldset> 
    7979        <legend class="screen-reader-text"> 
    80             <span><?php esc_html_e( 'Verify the age of', 'age_verify' ); ?></span> 
     80            <span><?php esc_html_e( 'Verify the age of', 'age-verify' ); ?></span> 
    8181        </legend> 
    8282        <label> 
    8383            <input type="radio" name="_av_always_verify" value="guests" <?php checked( 'guests', get_option( '_av_always_verify', 'guests' ) ); ?>/> 
    84              <?php esc_html_e( 'Guests only', 'age_verify' ); ?> <span class="description"><?php esc_html_e( 'Logged-in users will not need to verify their age.', 'age_verify' ); ?></span><br /> 
     84             <?php esc_html_e( 'Guests only', 'age-verify' ); ?> <span class="description"><?php esc_html_e( 'Logged-in users will not need to verify their age.', 'age-verify' ); ?></span><br /> 
    8585        </label> 
    8686        <br /> 
    8787        <label> 
    8888            <input type="radio" name="_av_always_verify" value="all" <?php checked( 'all', get_option( '_av_always_verify', 'guests' ) ); ?>/> 
    89              <?php esc_html_e( 'All visitors', 'age_verify' ); ?> 
     89             <?php esc_html_e( 'All visitors', 'age-verify' ); ?> 
    9090        </label> 
    9191    </fieldset> 
     
    100100function av_settings_callback_minimum_age_field() { ?> 
    101101     
    102     <input name="_av_minimum_age" type="number" id="_av_minimum_age" step="1" min="10" class="small-text" value="<?php echo esc_attr( get_option( '_av_minimum_age', '21' ) ); ?>" /> <?php esc_html_e( 'years old or older to view this site', 'age_verify' ); ?> 
     102    <input name="_av_minimum_age" type="number" id="_av_minimum_age" step="1" min="10" class="small-text" value="<?php echo esc_attr( get_option( '_av_minimum_age', '21' ) ); ?>" /> <?php esc_html_e( 'years old or older to view this site', 'age-verify' ); ?> 
    103103     
    104104<?php } 
     
    111111function av_settings_callback_cookie_duration_field() { ?> 
    112112     
    113     <input name="_av_cookie_duration" type="number" id="_av_cookie_duration" step="15" min="15" class="small-text" value="<?php echo esc_attr( get_option( '_av_cookie_duration', '720' ) ); ?>" /> <?php esc_html_e( 'minutes', 'age_verify' ); ?> 
     113    <input name="_av_cookie_duration" type="number" id="_av_cookie_duration" step="15" min="15" class="small-text" value="<?php echo esc_attr( get_option( '_av_cookie_duration', '720' ) ); ?>" /> <?php esc_html_e( 'minutes', 'age-verify' ); ?> 
    114114     
    115115<?php } 
     
    124124    <fieldset> 
    125125        <legend class="screen-reader-text"> 
    126             <span><?php esc_html_e( 'Membership', 'age_verify' ); ?></span> 
     126            <span><?php esc_html_e( 'Membership', 'age-verify' ); ?></span> 
    127127        </legend> 
    128128        <label for="_av_membership"> 
    129129            <input name="_av_membership" type="checkbox" id="_av_membership" value="1" <?php checked( 1, get_option( '_av_membership', 1 ) ); ?>/> 
    130              <?php esc_html_e( 'Require users to confirm their age before registering to this site', 'age_verify' ); ?> 
     130             <?php esc_html_e( 'Require users to confirm their age before registering to this site', 'age-verify' ); ?> 
    131131        </label> 
    132132    </fieldset> 
     
    146146function av_settings_callback_section_display() { 
    147147     
    148     echo '<p>' . esc_html__( 'These settings change the look of your overlay. You can use <code>%s</code> to display the minimum age number from the setting above.', 'age_verify' ) . '</p>'; 
     148    echo '<p>' . esc_html__( 'These settings change the look of your overlay. You can use <code>%s</code> to display the minimum age number from the setting above.', 'age-verify' ) . '</p>'; 
    149149} 
    150150 
     
    156156function av_settings_callback_heading_field() { ?> 
    157157     
    158     <input name="_av_heading" type="text" id="_av_heading" value="<?php echo esc_attr( get_option( '_av_heading', __( 'You must be %s years old to visit this site.', 'age_verify' ) ) ); ?>" class="regular-text" /> 
     158    <input name="_av_heading" type="text" id="_av_heading" value="<?php echo esc_attr( get_option( '_av_heading', __( 'You must be %s years old to visit this site.', 'age-verify' ) ) ); ?>" class="regular-text" /> 
    159159     
    160160<?php } 
     
    167167function av_settings_callback_description_field() { ?> 
    168168     
    169     <input name="_av_description" type="text" id="_av_description" value="<?php echo esc_attr( get_option( '_av_description', __( 'Please verify your age', 'age_verify' ) ) ); ?>" class="regular-text" /> 
     169    <input name="_av_description" type="text" id="_av_description" value="<?php echo esc_attr( get_option( '_av_description', __( 'Please verify your age', 'age-verify' ) ) ); ?>" class="regular-text" /> 
    170170     
    171171<?php } 
     
    179179     
    180180    <select name="_av_input_type" id="_av_input_type"> 
    181         <option value="dropdowns" <?php selected( 'dropdowns', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Date dropdowns', 'age_verify' ); ?></option> 
    182         <option value="inputs" <?php selected( 'inputs', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Inputs', 'age_verify' ); ?></option> 
    183         <option value="checkbox" <?php selected( 'checkbox', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Confirm checkbox', 'age_verify' ); ?></option> 
     181        <option value="dropdowns" <?php selected( 'dropdowns', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Date dropdowns', 'age-verify' ); ?></option> 
     182        <option value="inputs" <?php selected( 'inputs', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Inputs', 'age-verify' ); ?></option> 
     183        <option value="checkbox" <?php selected( 'checkbox', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Confirm checkbox', 'age-verify' ); ?></option> 
    184184    </select> 
    185185     
     
    195195    <fieldset> 
    196196        <legend class="screen-reader-text"> 
    197             <span><?php esc_html_e( 'Styling', 'age_verify' ); ?></span> 
     197            <span><?php esc_html_e( 'Styling', 'age-verify' ); ?></span> 
    198198        </legend> 
    199199        <label for="_av_styling"> 
    200200            <input name="_av_styling" type="checkbox" id="_av_styling" value="1" <?php checked( 1, get_option( '_av_styling', 1 ) ); ?>/> 
    201              <?php esc_html_e( 'Use built-in CSS on the front-end (recommended)', 'age_verify' ); ?> 
     201             <?php esc_html_e( 'Use built-in CSS on the front-end (recommended)', 'age-verify' ); ?> 
    202202        </label> 
    203203    </fieldset> 
     
    215215         
    216216        <legend class="screen-reader-text"> 
    217             <span><?php esc_html_e( 'Overlay Color', 'age_verify' ); ?></span> 
     217            <span><?php esc_html_e( 'Overlay Color', 'age-verify' ); ?></span> 
    218218        </legend> 
    219219         
  • age-verify/tags/0.3.0/includes/class-age-verify.php

    r1139727 r1329809  
    22/** 
    33 * Define the main plugin class 
    4  *  
     4 * 
    55 * @since 0.2.6 
    6  *  
     6 * 
    77 * @package Age_Verify 
    88 */ 
     
    1515/** 
    1616 * The main class. 
    17  *  
     17 * 
    1818 * @since 0.1.0 
    1919 */ 
    2020final class Age_Verify { 
    21      
     21 
    2222    /** 
    2323     * The plugin version. 
    24      *  
    25      * @since 0.2.6 
    26      */ 
    27     const VERSION = '0.2.9'; 
    28      
    29     /** 
    30      * The plugin slug. 
    31      *  
    32      * @since 0.2.6 
    33      */ 
    34     const SLUG = 'age_verify'; 
    35      
     24     * 
     25     * @since 0.2.6 
     26     */ 
     27    const VERSION = '0.3.0'; 
     28 
    3629    /** 
    3730     * The only instance of this class. 
    38      *  
     31     * 
    3932     * @since 0.2.6 
    4033     * @access protected 
    4134     */ 
    4235    protected static $instance = null; 
    43      
     36 
    4437    /** 
    4538     * Get the only instance of this class. 
    46      *  
    47      * @since 0.2.6 
    48      *  
     39     * 
     40     * @since 0.2.6 
     41     * 
    4942     * @return object $instance The only instance of this class. 
    5043     */ 
    5144    public static function get_instance() { 
    52          
     45 
    5346        if ( is_null( self::$instance ) ) { 
    5447            self::$instance = new self(); 
    5548        } 
    56          
     49 
    5750        return self::$instance; 
    5851    } 
     
    6255     * 
    6356     * @since 0.2.6 
    64      *  
     57     * 
    6558     * @return void 
    6659     */ 
    6760    public function __clone() { 
    68         _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', self::SLUG ), self::VERSION ); 
     61        _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'age-verify' ), self::VERSION ); 
    6962    } 
    7063 
     
    7366     * 
    7467     * @since 0.2.6 
    75      *  
     68     * 
    7669     * @return void 
    7770     */ 
    7871    public function __wakeup() { 
    79         _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', self::SLUG ), self::VERSION ); 
    80     } 
    81      
     72        _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'age-verify' ), self::VERSION ); 
     73    } 
     74 
    8275    /** 
    8376     * Construct the class! 
    8477     * 
    8578     * @since 0.1.0 
    86      *  
     79     * 
    8780     * @return void 
    8881     */ 
    8982    public function __construct() { 
    90          
     83 
    9184        /** 
    9285         * Require the necessary files. 
    9386         */ 
    9487        $this->require_files(); 
    95          
     88 
    9689        /** 
    9790         * Add the necessary action hooks. 
     
    9992        $this->add_actions(); 
    10093    } 
    101      
     94 
    10295    /** 
    10396     * Require the necessary files. 
    104      *  
    105      * @since 0.1.0 
    106      *  
     97     * 
     98     * @since 0.1.0 
     99     * 
    107100     * @return void 
    108101     */ 
    109102    private function require_files() { 
    110          
     103 
    111104        /** 
    112105         * The helper functions. 
     
    114107        require( plugin_dir_path( __FILE__ ) . 'functions.php' ); 
    115108    } 
    116      
     109 
    117110    /** 
    118111     * Add the necessary action hooks. 
    119      *  
    120      * @since 0.1.0 
    121      *  
     112     * 
     113     * @since 0.1.0 
     114     * 
    122115     * @return void 
    123116     */ 
    124117    private function add_actions() { 
    125          
     118 
    126119        // Load the text domain for i18n. 
    127120        add_action( 'init', array( $this, 'load_textdomain' ) ); 
    128          
     121 
    129122        // If checked in the settings, load the default and custom styles. 
    130123        if ( get_option( '_av_styling', 1 ) == 1 ) { 
    131              
     124 
    132125            add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_styles' ) ); 
    133              
     126 
    134127            add_action( 'wp_head', array( $this, 'custom_styles' ) ); 
    135              
    136         } 
    137          
     128 
     129        } 
     130 
    138131        // Maybe display the overlay. 
    139132        add_action( 'wp_footer', array( $this, 'verify_overlay' ) ); 
    140          
     133 
    141134        // Maybe hide the content of a restricted content type. 
    142135        add_action( 'the_content', array( $this, 'restrict_content' ) ); 
    143          
     136 
    144137        // Verify the visitor's input. 
    145138        add_action( 'template_redirect', array( $this, 'verify' ) ); 
    146          
     139 
    147140        // If checked in the settings, add to the registration form. 
    148141        if ( av_confirmation_required() ) { 
    149              
     142 
    150143            add_action( 'register_form', 'av_register_form' ); 
    151              
     144 
    152145            add_action( 'register_post', 'av_register_check', 10, 3 ); 
    153              
    154         } 
    155     } 
    156      
     146 
     147        } 
     148    } 
     149 
    157150    /** 
    158151     * Load the text domain. 
     
    161154     * 
    162155     * @since 0.1.0 
    163      *  
     156     * 
    164157     * @return The textdomain or false on failure. 
    165158     */ 
    166159    public function load_textdomain() { 
    167          
     160 
    168161        $locale = get_locale(); 
    169         $locale = apply_filters( 'plugin_locale',  $locale, 'age_verify' ); 
    170         $mofile = sprintf( 'age_verify-%s.mo', $locale ); 
     162        $locale = apply_filters( 'plugin_locale',  $locale, 'age-verify' ); 
     163        $mofile = sprintf( 'age-verify-%s.mo', $locale ); 
    171164 
    172165        $mofile_local  = plugin_dir_path( dirname( __FILE__ ) ) . 'languages/' . $mofile; 
     
    174167 
    175168        if ( file_exists( $mofile_local ) ) 
    176             return load_textdomain( 'age_verify', $mofile_local ); 
    177              
     169            return load_textdomain( 'age-verify', $mofile_local ); 
     170 
    178171        if ( file_exists( $mofile_global ) ) 
    179             return load_textdomain( 'age_verify', $mofile_global ); 
    180          
    181         load_plugin_textdomain( 'age_verify' ); 
    182          
     172            return load_textdomain( 'age-verify', $mofile_global ); 
     173 
     174        load_plugin_textdomain( 'age-verify' ); 
     175 
    183176        return false; 
    184177    } 
    185      
     178 
    186179    /** 
    187180     * Enqueue the styles. 
    188181     * 
    189182     * @since 0.1.0 
    190      *  
     183     * 
    191184     * @return void 
    192185     */ 
    193186    public function enqueue_styles() { 
    194          
     187 
    195188        wp_enqueue_style( 'av-styles', plugin_dir_url( __FILE__ ) . 'assets/styles.css' ); 
    196189    } 
    197      
     190 
    198191    /** 
    199192     * Print the custom colors, as defined in the admin. 
    200193     * 
    201194     * @since 0.1.0 
    202      *  
     195     * 
    203196     * @return void 
    204197     */ 
    205198    public function custom_styles() { ?> 
    206          
     199 
    207200        <style type="text/css"> 
    208              
    209             #av-overlay-wrap {  
     201 
     202            #av-overlay-wrap { 
    210203                background: #<?php echo esc_attr( av_get_background_color() ); ?>; 
    211204            } 
    212              
     205 
    213206            #av-overlay { 
    214207                background: #<?php echo esc_attr( av_get_overlay_color() ); ?>; 
    215208            } 
    216              
     209 
    217210        </style> 
    218          
     211 
    219212        <?php 
    220213        /** 
     
    223216        do_action( 'av_custom_styles' ); 
    224217    } 
    225      
     218 
    226219    /** 
    227220     * Print the actual overlay if the visitor needs verification. 
     
    232225     */ 
    233226    public function verify_overlay() { 
    234          
     227 
    235228        if ( ! av_needs_verification() ) { 
    236229            return; 
    237230        } 
    238          
     231 
    239232        // Disable page caching by W3 Total Cache. 
    240233        define( 'DONOTCACHEPAGE', true ); ?> 
    241          
     234 
    242235        <div id="av-overlay-wrap"> 
    243              
     236 
    244237            <?php do_action( 'av_before_modal' ); ?> 
    245              
     238 
    246239            <div id="av-overlay"> 
    247                  
     240 
    248241                <h1><?php esc_html_e( av_get_the_heading() ); ?></h1> 
    249                  
     242 
    250243                <?php if ( av_get_the_desc() ) 
    251244                    echo '<p>' . esc_html( av_get_the_desc() ). '</p>'; ?> 
    252                  
     245 
    253246                <?php do_action( 'av_before_form' ); ?> 
    254                  
     247 
    255248                <?php av_verify_form(); ?> 
    256                      
     249 
    257250                <?php do_action( 'av_after_form' ); ?> 
    258                  
     251 
    259252            </div> 
    260              
     253 
    261254            <?php do_action( 'av_after_modal' ); ?> 
    262              
     255 
    263256        </div> 
    264257    <?php } 
    265      
     258 
    266259    /** 
    267260     * Hide the content if it is age restricted. 
    268261     * 
    269262     * @since 0.2.0 
    270      *  
     263     * 
    271264     * @param  string $content The object content. 
    272265     * @return string $content The object content or an age-restricted message if needed. 
    273266     */ 
    274267     public function restrict_content( $content ) { 
    275          
     268 
    276269        if ( ! av_only_content_restricted() ) { 
    277270            return $content; 
    278271        } 
    279          
     272 
    280273        if ( is_singular() ) { 
    281274            return $content; 
    282275        } 
    283          
     276 
    284277        if ( ! av_content_is_restricted() ) { 
    285278            return $content; 
    286279        } 
    287          
    288         return sprintf( apply_filters( 'av_restricted_content_message', __( 'You must be %1s years old to view this content.', 'age_verify' ) . ' <a href="%2s">' . __( 'Please verify your age', 'age_verify' ) . '</a>.' ), 
     280 
     281        return sprintf( apply_filters( 'av_restricted_content_message', __( 'You must be %1s years old to view this content.', 'age-verify' ) . ' <a href="%2s">' . __( 'Please verify your age', 'age-verify' ) . '</a>.' ), 
    289282            esc_html( av_get_minimum_age() ), 
    290283            esc_url( get_permalink( get_the_ID() ) ) 
    291284        ); 
    292285     } 
    293      
     286 
    294287    /** 
    295288     * Verify the visitor if the form was submitted. 
    296289     * 
    297290     * @since 0.1.0 
    298      *  
     291     * 
    299292     * @return void 
    300293     */ 
    301294    public function verify() { 
    302          
    303         if ( empty( $_POST ) || ! wp_verify_nonce( $_POST['av-nonce'], 'verify-age' ) ) 
     295 
     296        if ( ! isset( $_POST['av-nonce'] ) || ! wp_verify_nonce( $_POST['av-nonce'], 'verify-age' ) ) 
    304297            return; 
    305          
     298 
    306299        $redirect_url = remove_query_arg( array( 'age-verified', 'verify-error' ), wp_get_referer() ); 
    307          
     300 
    308301        $is_verified  = false; 
    309          
     302 
    310303        $error = 1; // Catch-all in case something goes wrong 
    311          
     304 
    312305        $input_type   = av_get_input_type(); 
    313          
     306 
    314307        switch ( $input_type ) { 
    315              
    316              
     308 
     309 
    317310            case 'checkbox' : 
    318                  
     311 
    319312                if ( isset( $_POST['av_verify_confirm'] ) && (int) $_POST['av_verify_confirm'] == 1 ) 
    320313                    $is_verified = true; 
    321314                else 
    322315                    $error = 2; // Didn't check the box 
    323                  
     316 
    324317                break; 
    325              
     318 
    326319            default : 
    327                  
     320 
    328321                if ( checkdate( (int) $_POST['av_verify_m'], (int) $_POST['av_verify_d'], (int) $_POST['av_verify_y'] ) ) : 
    329                      
     322 
    330323                    $age = av_get_visitor_age( $_POST['av_verify_y'], $_POST['av_verify_m'], $_POST['av_verify_d'] ); 
    331                      
     324 
    332325                    if ( $age >= av_get_minimum_age() ) 
    333326                        $is_verified = true; 
    334327                    else 
    335328                        $error = 3; // Not old enough 
    336                          
     329 
    337330                else : 
    338                      
     331 
    339332                    $error = 4; // Invalid date 
    340                      
     333 
    341334                endif; 
    342                  
     335 
    343336                break; 
    344337        } 
    345          
     338 
    346339        $is_verified = apply_filters( 'av_passed_verify', $is_verified ); 
    347          
     340 
    348341        if ( $is_verified == true ) : 
    349              
     342 
    350343            do_action( 'av_was_verified' ); 
    351              
     344 
    352345            if ( isset( $_POST['av_verify_remember'] ) ) 
    353346                $cookie_duration = time() +  ( av_get_cookie_duration() * 60 ); 
    354347            else 
    355348                $cookie_duration = 0; 
    356              
     349 
    357350            setcookie( 'age-verified', 1, $cookie_duration, COOKIEPATH, COOKIE_DOMAIN, false ); 
    358              
     351 
    359352            wp_redirect( esc_url_raw( $redirect_url ) . '?age-verified=' . wp_create_nonce( 'age-verified' ) ); 
    360353            exit; 
    361              
     354 
    362355        else : 
    363              
     356 
    364357            do_action( 'av_was_not_verified' ); 
    365              
     358 
    366359            wp_redirect( esc_url_raw( add_query_arg( 'verify-error', $error, $redirect_url ) ) ); 
    367360            exit; 
    368              
     361 
    369362        endif; 
    370363    } 
  • age-verify/tags/0.3.0/includes/functions.php

    r999280 r1329809  
    105105function av_get_cookie_duration() { 
    106106     
    107     $cookie_duration = 720; 
     107    $cookie_duration = get_option( '_av_cookie_duration', 720 ); 
    108108     
    109109    /** 
     
    114114     * @param int $cookie_duration The cookie duration. 
    115115     */ 
    116     $cookie_duration = apply_filters( 'av_cookie_duration', $cookie_duration ); 
    117      
    118     return (int) $cookie_duration; 
     116    $cookie_duration = (int) apply_filters( 'av_cookie_duration', $cookie_duration ); 
     117     
     118    return $cookie_duration; 
    119119} 
    120120 
     
    234234function av_get_the_heading() { 
    235235     
    236     return sprintf( apply_filters( 'av_heading', get_option( '_av_heading', __( 'You must be %s years old to visit this site.', 'age_verify' ) ) ), av_get_minimum_age() ); 
     236    return sprintf( apply_filters( 'av_heading', get_option( '_av_heading', __( 'You must be %s years old to visit this site.', 'age-verify' ) ) ), av_get_minimum_age() ); 
    237237} 
    238238 
     
    257257function av_get_the_desc() { 
    258258     
    259     $desc = apply_filters( 'av_description', get_option( '_av_description', __( 'Please verify your age', 'age_verify' ) ) ); 
     259    $desc = apply_filters( 'av_description', get_option( '_av_description', __( 'Please verify your age', 'age-verify' ) ) ); 
    260260     
    261261    if ( ! empty( $desc ) ) 
     
    338338    $input_type = av_get_input_type(); 
    339339     
    340     $submit_button_label = apply_filters( 'av_form_submit_label', __( 'Enter Site &raquo;', 'age_verify' ) ); 
     340    $submit_button_label = apply_filters( 'av_form_submit_label', __( 'Enter Site &raquo;', 'age-verify' ) ); 
    341341     
    342342    $form = ''; 
     
    351351         
    352352        // Catch-all error 
    353         $error_string = apply_filters( 'av_error_text_general', __( 'Sorry, something must have gone wrong. Please try again', 'age_verify' ) ); 
     353        $error_string = apply_filters( 'av_error_text_general', __( 'Sorry, something must have gone wrong. Please try again', 'age-verify' ) ); 
    354354         
    355355        // Visitor didn't check the box (only for the simple checkbox form) 
    356356        if ( $error == 2 ) 
    357             $error_string = apply_filters( 'av_error_text_not_checked', __( 'Check the box to confirm your age before continuing', 'age_verify' ) ); 
     357            $error_string = apply_filters( 'av_error_text_not_checked', __( 'Check the box to confirm your age before continuing', 'age-verify' ) ); 
    358358         
    359359        // Visitor isn't old enough 
    360360        if ( $error == 3 ) 
    361             $error_string = apply_filters( 'av_error_text_too_young', __( 'Sorry, it doesn\'t look like you\'re old enough', 'age_verify' ) ); 
     361            $error_string = apply_filters( 'av_error_text_too_young', __( 'Sorry, it doesn\'t look like you\'re old enough', 'age-verify' ) ); 
    362362         
    363363        // Visitor entered an invalid date 
    364364        if ( $error == 4 ) 
    365             $error_string = apply_filters( 'av_error_text_bad_date', __( 'Please enter a valid date', 'age_verify' ) ); 
     365            $error_string = apply_filters( 'av_error_text_bad_date', __( 'Please enter a valid date', 'age-verify' ) ); 
    366366         
    367367        $form .= '<p class="error">' . esc_html( $error_string ) . '</p>'; 
     
    423423            $form .= '<p><label for="av_verify_confirm"><input type="checkbox" name="av_verify_confirm" id="av_verify_confirm" value="1" /> '; 
    424424             
    425             $form .= esc_html( sprintf( apply_filters( 'av_confirm_text', __( 'I am at least %s years old', 'age_verify' ) ), av_get_minimum_age() ) ) . '</label></p>'; 
     425            $form .= esc_html( sprintf( apply_filters( 'av_confirm_text', __( 'I am at least %s years old', 'age-verify' ) ), av_get_minimum_age() ) ) . '</label></p>'; 
    426426             
    427427            break; 
     
    431431    do_action( 'av_form_after_inputs' ); 
    432432     
    433     $form .= '<p class="submit"><label for="av_verify_remember"><input type="checkbox" name="av_verify_remember" id="av_verify_remember" value="1" /> ' . esc_html__( 'Remember me', 'age_verify' ) . '</label> '; 
     433    $form .= '<p class="submit"><label for="av_verify_remember"><input type="checkbox" name="av_verify_remember" id="av_verify_remember" value="1" /> ' . esc_html__( 'Remember me', 'age-verify' ) . '</label> '; 
    434434     
    435435    $form .= '<input type="submit" name="av_verify" id="av_verify" value="' . esc_attr( $submit_button_label ) . '" /></p>'; 
     
    473473    $text = '<p class="age-verify"><label for="_av_confirm_age"><input type="checkbox" name="_av_confirm_age" id="_av_confirm_age" value="1" /> '; 
    474474     
    475     $text .= esc_html( sprintf( apply_filters( 'av_registration_text', __( 'I am at least %s years old', 'age_verify' ) ), av_get_minimum_age() ) ); 
     475    $text .= esc_html( sprintf( apply_filters( 'av_registration_text', __( 'I am at least %s years old', 'age-verify' ) ), av_get_minimum_age() ) ); 
    476476     
    477477    $text .= '</label></p><br />'; 
     
    490490     
    491491    if ( ! isset( $_POST['_av_confirm_age'] ) ) 
    492         $errors->add( 'empty_age_confirm', '<strong>ERROR</strong>: ' . apply_filters( 'av_registration_error', __( 'Please confirm your age', 'age_verify' ) ) ); 
    493 } 
     492        $errors->add( 'empty_age_confirm', '<strong>ERROR</strong>: ' . apply_filters( 'av_registration_error', __( 'Please confirm your age', 'age-verify' ) ) ); 
     493} 
  • age-verify/tags/0.3.0/readme.txt

    r1139727 r1329809  
    33Tags: age, restrict, verify 
    44Requires at least: 3.2 
    5 Tested up to: 4.2-RC2 
    6 Stable tag: 0.2.9 
     5Tested up to: 4.4.1 
     6Stable tag: 0.3.0 
    77License: GPLv2 or later 
    88License URI: http://www.gnu.org/licenses/gpl-2.0.html 
     
    2727== Changelog == 
    2828 
     29= 0.3.0 = 
     30* New: French and Italian translations 
     31* Tweak: Use strings for the textdomain and change to 'age-verify' 
     32 
     33= 0.2.10 = 
     34* Fix: cookie duration now uses the corresponding setting 
     35 
    2936= 0.2.9 = 
    30 * Fix: Prevent add/remove_query_arg XSS vulnerability  
     37* Fix: Prevent add/remove_query_arg XSS vulnerability 
    3138 
    3239= 0.2.8 = 
     
    4552 
    4653= 0.2.5 = 
    47 * Added WordPress 3.8 compatibility  
     54* Added WordPress 3.8 compatibility 
    4855* Fixed a bit of text domain loading 
    4956* Added additional actions for further extensibility 
  • age-verify/trunk/age-verify.php

    r1139727 r1329809  
    22/** 
    33 * The main plugin file. 
    4  *  
     4 * 
    55 * This file loads the main plugin class and gets things running. 
    66 * 
    77 * @since 0.2.6 
    8  *  
     8 * 
    99 * @package Age_Verify 
    1010 */ 
     
    1515 * Author:      Chase Wiseman 
    1616 * Author URI:  http://chasewiseman.com 
    17  * Version:     0.2.9 
    18  * Text Domain: age_verify 
    19  * Domain Path: /languages/ 
     17 * Version:     0.3.0 
     18 * Text Domain: age-verify 
     19 * Domain Path: /languages 
    2020 */ 
    2121 
     
    3535// Check that the admin is loaded. 
    3636if ( is_admin() ) { 
    37      
     37 
    3838    /** 
    3939     * The admin class definition. 
    4040     */ 
    4141    require( plugin_dir_path( __FILE__ ) . 'includes/admin/class-age-verify-admin.php' ); 
    42      
     42 
    4343    // Get the plugin's admin running. 
    4444    add_action( 'plugins_loaded', array( 'Age_Verify_Admin', 'get_instance' ) ); 
  • age-verify/trunk/includes/admin/class-age-verify-admin.php

    r999280 r1329809  
    22/** 
    33 * Define the admin class 
    4  *  
     4 * 
    55 * @since 0.2.6 
    6  *  
     6 * 
    77 * @package Age_Verify\Admin 
    88 */ 
     
    1515/** 
    1616 * The admin class. 
    17  *  
     17 * 
    1818 * @since 0.2.6 
    1919 */ 
    2020final class Age_Verify_Admin { 
    21      
     21 
    2222    /** 
    2323     * The only instance of this class. 
    24      *  
     24     * 
    2525     * @since 0.2.6 
    2626     * @access protected 
    2727     */ 
    2828    protected static $instance = null; 
    29      
     29 
    3030    /** 
    3131     * Get the only instance of this class. 
    32      *  
    33      * @since 0.2.6 
    34      *  
     32     * 
     33     * @since 0.2.6 
     34     * 
    3535     * @return object $instance The only instance of this class. 
    3636     */ 
    3737    public static function get_instance() { 
    38          
     38 
    3939        if ( is_null( self::$instance ) ) { 
    4040            self::$instance = new self(); 
    4141        } 
    42          
     42 
    4343        return self::$instance; 
    4444    } 
     
    4848     * 
    4949     * @since 0.2.6 
    50      *  
     50     * 
    5151     * @return void 
    5252     */ 
    5353    public function __clone() { 
    54         _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', Age_Verify::SLUG ), Age_Verify::VERSION ); 
     54        _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'age-verify' ), Age_Verify::VERSION ); 
    5555    } 
    5656 
     
    5959     * 
    6060     * @since 0.2.6 
    61      *  
     61     * 
    6262     * @return void 
    6363     */ 
    6464    public function __wakeup() { 
    65         _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', Age_Verify::SLUG ), Age_Verify::VERSION ); 
    66     } 
    67      
     65        _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'age-verify' ), Age_Verify::VERSION ); 
     66    } 
     67 
    6868    /** 
    6969     * Construct the class! 
    7070     * 
    7171     * @since 0.2.6 
    72      *  
     72     * 
    7373     * @return void 
    7474     */ 
    7575    public function __construct() { 
    76          
     76 
    7777        /** 
    7878         * The settings callbacks. 
    7979         */ 
    8080        require( plugin_dir_path( __FILE__ ) . 'settings.php' ); 
    81          
     81 
    8282        // Add the settings page. 
    8383        add_action( 'admin_menu', array( $this, 'add_settings_page' ) ); 
    84          
     84 
    8585        // Add and register the settings sections and fields. 
    8686        add_action( 'admin_init', array( $this, 'register_settings' ) ); 
    87          
     87 
    8888        // Add the "Settings" link to the plugin row. 
    8989        add_filter( 'plugin_action_links_age-verify/age-verify.php', array( $this, 'add_settings_link' ), 10 ); 
    90          
     90 
    9191        // Enqueue the script. 
    9292        add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) ); 
    93          
     93 
    9494        // Only load with post-specific stuff if enabled. 
    9595        if ( 'content' == get_option( '_av_require_for' ) ) { 
    96              
     96 
    9797            // Add a "restrict" checkbox to individual posts/pages. 
    9898            add_action( 'post_submitbox_misc_actions', array( $this, 'add_submitbox_checkbox' ) ); 
    99              
     99 
    100100            // Save the "restrict" checkbox value. 
    101101            add_action( 'save_post', array( $this, 'save_post' ) ); 
    102              
    103         } 
    104     } 
    105      
     102 
     103        } 
     104    } 
     105 
    106106    /** 
    107107     * Add to the settings page. 
    108108     * 
    109109     * @since 0.2.6 
    110      *  
     110     * 
    111111     * @return void 
    112112     */ 
    113113    public function add_settings_page() { 
    114      
     114 
    115115        add_options_page ( 
    116             __( 'Age Verify', Age_Verify::SLUG ), 
    117             __( 'Age Verify', Age_Verify::SLUG ), 
     116            __( 'Age Verify', 'age-verify' ), 
     117            __( 'Age Verify', 'age-verify' ), 
    118118            'manage_options', 
    119119            'age-verify', 
     
    121121        ); 
    122122    } 
    123      
     123 
    124124    /** 
    125125     * Add and register the settings sections and fields. 
     
    130130     */ 
    131131    public function register_settings() { 
    132          
     132 
    133133        /* General Section */ 
    134134        add_settings_section( 'av_settings_general', null, 'av_settings_callback_section_general', 'age-verify' ); 
    135          
     135 
    136136        // What to protect (entire site or specific content) 
    137         add_settings_field( '_av_require_for', __( 'Require verification for', 'age_verify' ), 'av_settings_callback_require_for_field', 'age-verify', 'av_settings_general' ); 
     137        add_settings_field( '_av_require_for', __( 'Require verification for', 'age-verify' ), 'av_settings_callback_require_for_field', 'age-verify', 'av_settings_general' ); 
    138138        register_setting  ( 'age-verify', '_av_require_for', 'esc_attr' ); 
    139          
     139 
    140140        // Who to verify (logged in or all) 
    141         add_settings_field( '_av_always_verify', __( 'Verify the age of', 'age_verify' ), 'av_settings_callback_always_verify_field', 'age-verify', 'av_settings_general' ); 
     141        add_settings_field( '_av_always_verify', __( 'Verify the age of', 'age-verify' ), 'av_settings_callback_always_verify_field', 'age-verify', 'av_settings_general' ); 
    142142        register_setting  ( 'age-verify', '_av_always_verify', 'esc_attr' ); 
    143          
     143 
    144144        // Minimum Age 
    145         add_settings_field( '_av_minimum_age', '<label for="_av_minimum_age">' . __( 'Visitors must be', 'age_verify' ) . '</label>', 'av_settings_callback_minimum_age_field', 'age-verify', 'av_settings_general' ); 
     145        add_settings_field( '_av_minimum_age', '<label for="_av_minimum_age">' . __( 'Visitors must be', 'age-verify' ) . '</label>', 'av_settings_callback_minimum_age_field', 'age-verify', 'av_settings_general' ); 
    146146        register_setting  ( 'age-verify', '_av_minimum_age', 'intval' ); 
    147          
     147 
    148148        // Memory Length 
    149         add_settings_field( '_av_cookie_duration', '<label for="_av_cookie_duration">' . __( 'Remember visitors for', 'age_verify' ) . '</label>', 'av_settings_callback_cookie_duration_field', 'age-verify', 'av_settings_general' ); 
     149        add_settings_field( '_av_cookie_duration', '<label for="_av_cookie_duration">' . __( 'Remember visitors for', 'age-verify' ) . '</label>', 'av_settings_callback_cookie_duration_field', 'age-verify', 'av_settings_general' ); 
    150150        register_setting  ( 'age-verify', '_av_cookie_duration', 'intval' ); 
    151          
    152         add_settings_field( '_av_membership', __( 'Membership', 'age_verify' ), 'av_settings_callback_membership_field', 'age-verify', 'av_settings_general' ); 
     151 
     152        add_settings_field( '_av_membership', __( 'Membership', 'age-verify' ), 'av_settings_callback_membership_field', 'age-verify', 'av_settings_general' ); 
    153153        register_setting  ( 'age-verify', '_av_membership', 'intval' ); 
    154          
     154 
    155155        /* Display Section */ 
    156         add_settings_section( 'av_settings_display', __( 'Display Options', 'age_verify' ), 'av_settings_callback_section_display', 'age-verify' ); 
    157          
     156        add_settings_section( 'av_settings_display', __( 'Display Options', 'age-verify' ), 'av_settings_callback_section_display', 'age-verify' ); 
     157 
    158158        // Heading 
    159         add_settings_field( '_av_heading', '<label for="_av_heading">' . __( 'Overlay Heading', 'age_verify' ) . '</label>', 'av_settings_callback_heading_field', 'age-verify', 'av_settings_display' ); 
     159        add_settings_field( '_av_heading', '<label for="_av_heading">' . __( 'Overlay Heading', 'age-verify' ) . '</label>', 'av_settings_callback_heading_field', 'age-verify', 'av_settings_display' ); 
    160160        register_setting  ( 'age-verify', '_av_heading', 'esc_attr' ); 
    161          
     161 
    162162        // Description 
    163         add_settings_field( '_av_description', '<label for="_av_description">' . __( 'Overlay Description', 'age_verify' ) . '</label>', 'av_settings_callback_description_field', 'age-verify', 'av_settings_display' ); 
     163        add_settings_field( '_av_description', '<label for="_av_description">' . __( 'Overlay Description', 'age-verify' ) . '</label>', 'av_settings_callback_description_field', 'age-verify', 'av_settings_display' ); 
    164164        register_setting  ( 'age-verify', '_av_description', 'esc_attr' ); 
    165          
     165 
    166166        // Input Type 
    167         add_settings_field( '_av_input_type', '<label for="_av_input_type">' . __( 'Verify ages using', 'age_verify' ) . '</label>', 'av_settings_callback_input_type_field', 'age-verify', 'av_settings_display' ); 
     167        add_settings_field( '_av_input_type', '<label for="_av_input_type">' . __( 'Verify ages using', 'age-verify' ) . '</label>', 'av_settings_callback_input_type_field', 'age-verify', 'av_settings_display' ); 
    168168        register_setting  ( 'age-verify', '_av_input_type', 'esc_attr' ); 
    169          
     169 
    170170        // Enable CSS 
    171         add_settings_field( '_av_styling', __( 'Styling', 'age_verify' ), 'av_settings_callback_styling_field', 'age-verify', 'av_settings_display' ); 
     171        add_settings_field( '_av_styling', __( 'Styling', 'age-verify' ), 'av_settings_callback_styling_field', 'age-verify', 'av_settings_display' ); 
    172172        register_setting  ( 'age-verify', '_av_styling', 'intval' ); 
    173          
     173 
    174174        // Overlay Color 
    175         add_settings_field( '_av_overlay_color', __( 'Overlay Color', 'age_verify' ), 'av_settings_callback_overlay_color_field', 'age-verify', 'av_settings_display' ); 
     175        add_settings_field( '_av_overlay_color', __( 'Overlay Color', 'age-verify' ), 'av_settings_callback_overlay_color_field', 'age-verify', 'av_settings_display' ); 
    176176        register_setting  ( 'age-verify', '_av_overlay_color', array( $this, 'validate_color' ) ); 
    177          
     177 
    178178        // Background Color 
    179         add_settings_field( '_av_bgcolor', __( 'Background Color', 'age_verify' ), 'av_settings_callback_bgcolor_field', 'age-verify', 'av_settings_display' ); 
     179        add_settings_field( '_av_bgcolor', __( 'Background Color', 'age-verify' ), 'av_settings_callback_bgcolor_field', 'age-verify', 'av_settings_display' ); 
    180180        register_setting  ( 'age-verify', '_av_bgcolor', array( $this, 'validate_color' ) ); 
    181          
     181 
    182182        do_action( 'av_register_settings' ); 
    183183    } 
    184      
     184 
    185185    /** 
    186186     * Add a direct link to the Age Verify settings page from the plugins page. 
    187187     * 
    188188     * @since 0.2.6 
    189      *  
     189     * 
    190190     * @param array  $actions The links beneath the plugin's name. 
    191191     * @param string $file    The plugin filename. 
     
    193193     */ 
    194194    public function add_settings_link( $actions ) { 
    195          
     195 
    196196        $settings_link = '<a href="' . esc_url( add_query_arg( 'page', 'age-verify', admin_url( 'options-general.php' ) ) ) . '">'; 
    197             $settings_link .= __( 'Settings', Age_Verify::SLUG ); 
     197            $settings_link .= __( 'Settings', 'age-verify' ); 
    198198        $settings_link .='</a>'; 
    199          
     199 
    200200        array_unshift( $actions, $settings_link ); 
    201          
     201 
    202202        return $actions; 
    203203    } 
    204      
     204 
    205205    /** 
    206206     * Validates the color inputs from the settings. 
    207207     * 
    208208     * @since 0.2.6 
    209      *  
     209     * 
    210210     * @param  string $color A color hex. 
    211211     * @return string $color The validated color hex. 
    212212     */ 
    213213    public function validate_color( $color ) { 
    214          
     214 
    215215        $color = preg_replace( '/[^0-9a-fA-F]/', '', $color ); 
    216          
     216 
    217217        if ( strlen( $color ) == 6 || strlen( $color ) == 3 ) { 
    218218            $color = $color; 
     
    220220            $color = ''; 
    221221        } 
    222          
     222 
    223223        return $color; 
    224224    } 
    225      
     225 
    226226    /** 
    227227     * Enqueue the scripts. 
    228228     * 
    229229     * @since 0.2.6 
    230      *  
     230     * 
    231231     * @param string $page The current admin page. 
    232232     * @return void 
    233233     */ 
    234234    public function enqueue_scripts( $page ) { 
    235          
     235 
    236236        if ( 'settings_page_age-verify' != $page ) { 
    237237            return; 
    238238        } 
    239          
     239 
    240240        wp_enqueue_style( 'wp-color-picker' ); 
    241          
     241 
    242242        wp_enqueue_script( 'av-admin-scripts', plugin_dir_url( __FILE__ ) . 'assets/scripts.js', array( 
    243243            'jquery', 
     
    245245        ) ); 
    246246    } 
    247      
     247 
    248248    /** 
    249249     * Add a "restrict" checkbox to individual posts/pages. 
     
    254254     */ 
    255255    public function add_submitbox_checkbox() { ?> 
    256          
     256 
    257257        <div class="misc-pub-section verify-age"> 
    258              
     258 
    259259            <?php wp_nonce_field( 'av_save_post', 'av_nonce' ); ?> 
    260              
     260 
    261261            <input type="checkbox" name="_av_needs_verify" id="_av_needs_verify" value="1" <?php checked( 1, get_post_meta( get_the_ID(), '_av_needs_verify', true ) ); ?> /> 
    262262            <label for="_av_needs_verify" class="selectit"> 
    263                 <?php esc_html_e( 'Require age verification for this content', Age_Verify::SLUG ); ?> 
     263                <?php esc_html_e( 'Require age verification for this content', 'age-verify' ); ?> 
    264264            </label> 
    265              
     265 
    266266        </div><!-- .misc-pub-section --> 
    267          
     267 
    268268    <?php } 
    269      
     269 
    270270    /** 
    271271     * Save the "restrict" checkbox value. 
    272272     * 
    273273     * @since 0.2.6 
    274      *  
     274     * 
    275275     * @param int $post_id The current post ID. 
    276276     * @return void 
    277277     */ 
    278278    public function save_post( $post_id ) { 
    279          
     279 
    280280        if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) { 
    281281            return; 
    282282        } 
    283          
     283 
    284284        $nonce = ( isset( $_POST['av_nonce'] ) ) ? $_POST['av_nonce'] : ''; 
    285          
     285 
    286286        if ( ! wp_verify_nonce( $nonce, 'av_save_post' ) ) { 
    287287            return; 
    288288        } 
    289          
     289 
    290290        $needs_verify = ( isset( $_POST['_av_needs_verify'] ) ) ? (int) $_POST['_av_needs_verify'] : 0; 
    291          
     291 
    292292        update_post_meta( $post_id, '_av_needs_verify', $needs_verify ); 
    293293    } 
  • age-verify/trunk/includes/admin/settings.php

    r995794 r1329809  
    1515        <?php screen_icon(); ?> 
    1616 
    17         <h2><?php esc_html_e( 'Age Verify Settings', 'age_verify' ) ?></h2> 
     17        <h2><?php esc_html_e( 'Age Verify Settings', 'age-verify' ) ?></h2> 
    1818 
    1919        <form action="options.php" method="post"> 
     
    5454    <fieldset> 
    5555        <legend class="screen-reader-text"> 
    56             <span><?php esc_html_e( 'Require verification for', 'age_verify' ); ?></span> 
     56            <span><?php esc_html_e( 'Require verification for', 'age-verify' ); ?></span> 
    5757        </legend> 
    5858        <label> 
    5959            <input type="radio" name="_av_require_for" value="site" <?php checked( 'site', get_option( '_av_require_for', 'site' ) ); ?>/> 
    60              <?php esc_html_e( 'Entire site', 'age_verify' ); ?><br /> 
     60             <?php esc_html_e( 'Entire site', 'age-verify' ); ?><br /> 
    6161        </label> 
    6262        <br /> 
    6363        <label> 
    6464            <input type="radio" name="_av_require_for" value="content" <?php checked( 'content', get_option( '_av_require_for', 'site' ) ); ?>/> 
    65              <?php esc_html_e( 'Specific content', 'age_verify' ); ?> 
     65             <?php esc_html_e( 'Specific content', 'age-verify' ); ?> 
    6666        </label> 
    6767    </fieldset> 
     
    7878    <fieldset> 
    7979        <legend class="screen-reader-text"> 
    80             <span><?php esc_html_e( 'Verify the age of', 'age_verify' ); ?></span> 
     80            <span><?php esc_html_e( 'Verify the age of', 'age-verify' ); ?></span> 
    8181        </legend> 
    8282        <label> 
    8383            <input type="radio" name="_av_always_verify" value="guests" <?php checked( 'guests', get_option( '_av_always_verify', 'guests' ) ); ?>/> 
    84              <?php esc_html_e( 'Guests only', 'age_verify' ); ?> <span class="description"><?php esc_html_e( 'Logged-in users will not need to verify their age.', 'age_verify' ); ?></span><br /> 
     84             <?php esc_html_e( 'Guests only', 'age-verify' ); ?> <span class="description"><?php esc_html_e( 'Logged-in users will not need to verify their age.', 'age-verify' ); ?></span><br /> 
    8585        </label> 
    8686        <br /> 
    8787        <label> 
    8888            <input type="radio" name="_av_always_verify" value="all" <?php checked( 'all', get_option( '_av_always_verify', 'guests' ) ); ?>/> 
    89              <?php esc_html_e( 'All visitors', 'age_verify' ); ?> 
     89             <?php esc_html_e( 'All visitors', 'age-verify' ); ?> 
    9090        </label> 
    9191    </fieldset> 
     
    100100function av_settings_callback_minimum_age_field() { ?> 
    101101     
    102     <input name="_av_minimum_age" type="number" id="_av_minimum_age" step="1" min="10" class="small-text" value="<?php echo esc_attr( get_option( '_av_minimum_age', '21' ) ); ?>" /> <?php esc_html_e( 'years old or older to view this site', 'age_verify' ); ?> 
     102    <input name="_av_minimum_age" type="number" id="_av_minimum_age" step="1" min="10" class="small-text" value="<?php echo esc_attr( get_option( '_av_minimum_age', '21' ) ); ?>" /> <?php esc_html_e( 'years old or older to view this site', 'age-verify' ); ?> 
    103103     
    104104<?php } 
     
    111111function av_settings_callback_cookie_duration_field() { ?> 
    112112     
    113     <input name="_av_cookie_duration" type="number" id="_av_cookie_duration" step="15" min="15" class="small-text" value="<?php echo esc_attr( get_option( '_av_cookie_duration', '720' ) ); ?>" /> <?php esc_html_e( 'minutes', 'age_verify' ); ?> 
     113    <input name="_av_cookie_duration" type="number" id="_av_cookie_duration" step="15" min="15" class="small-text" value="<?php echo esc_attr( get_option( '_av_cookie_duration', '720' ) ); ?>" /> <?php esc_html_e( 'minutes', 'age-verify' ); ?> 
    114114     
    115115<?php } 
     
    124124    <fieldset> 
    125125        <legend class="screen-reader-text"> 
    126             <span><?php esc_html_e( 'Membership', 'age_verify' ); ?></span> 
     126            <span><?php esc_html_e( 'Membership', 'age-verify' ); ?></span> 
    127127        </legend> 
    128128        <label for="_av_membership"> 
    129129            <input name="_av_membership" type="checkbox" id="_av_membership" value="1" <?php checked( 1, get_option( '_av_membership', 1 ) ); ?>/> 
    130              <?php esc_html_e( 'Require users to confirm their age before registering to this site', 'age_verify' ); ?> 
     130             <?php esc_html_e( 'Require users to confirm their age before registering to this site', 'age-verify' ); ?> 
    131131        </label> 
    132132    </fieldset> 
     
    146146function av_settings_callback_section_display() { 
    147147     
    148     echo '<p>' . esc_html__( 'These settings change the look of your overlay. You can use <code>%s</code> to display the minimum age number from the setting above.', 'age_verify' ) . '</p>'; 
     148    echo '<p>' . esc_html__( 'These settings change the look of your overlay. You can use <code>%s</code> to display the minimum age number from the setting above.', 'age-verify' ) . '</p>'; 
    149149} 
    150150 
     
    156156function av_settings_callback_heading_field() { ?> 
    157157     
    158     <input name="_av_heading" type="text" id="_av_heading" value="<?php echo esc_attr( get_option( '_av_heading', __( 'You must be %s years old to visit this site.', 'age_verify' ) ) ); ?>" class="regular-text" /> 
     158    <input name="_av_heading" type="text" id="_av_heading" value="<?php echo esc_attr( get_option( '_av_heading', __( 'You must be %s years old to visit this site.', 'age-verify' ) ) ); ?>" class="regular-text" /> 
    159159     
    160160<?php } 
     
    167167function av_settings_callback_description_field() { ?> 
    168168     
    169     <input name="_av_description" type="text" id="_av_description" value="<?php echo esc_attr( get_option( '_av_description', __( 'Please verify your age', 'age_verify' ) ) ); ?>" class="regular-text" /> 
     169    <input name="_av_description" type="text" id="_av_description" value="<?php echo esc_attr( get_option( '_av_description', __( 'Please verify your age', 'age-verify' ) ) ); ?>" class="regular-text" /> 
    170170     
    171171<?php } 
     
    179179     
    180180    <select name="_av_input_type" id="_av_input_type"> 
    181         <option value="dropdowns" <?php selected( 'dropdowns', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Date dropdowns', 'age_verify' ); ?></option> 
    182         <option value="inputs" <?php selected( 'inputs', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Inputs', 'age_verify' ); ?></option> 
    183         <option value="checkbox" <?php selected( 'checkbox', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Confirm checkbox', 'age_verify' ); ?></option> 
     181        <option value="dropdowns" <?php selected( 'dropdowns', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Date dropdowns', 'age-verify' ); ?></option> 
     182        <option value="inputs" <?php selected( 'inputs', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Inputs', 'age-verify' ); ?></option> 
     183        <option value="checkbox" <?php selected( 'checkbox', get_option( '_av_input_type', 'dropdowns' ) ); ?>><?php esc_html_e( 'Confirm checkbox', 'age-verify' ); ?></option> 
    184184    </select> 
    185185     
     
    195195    <fieldset> 
    196196        <legend class="screen-reader-text"> 
    197             <span><?php esc_html_e( 'Styling', 'age_verify' ); ?></span> 
     197            <span><?php esc_html_e( 'Styling', 'age-verify' ); ?></span> 
    198198        </legend> 
    199199        <label for="_av_styling"> 
    200200            <input name="_av_styling" type="checkbox" id="_av_styling" value="1" <?php checked( 1, get_option( '_av_styling', 1 ) ); ?>/> 
    201              <?php esc_html_e( 'Use built-in CSS on the front-end (recommended)', 'age_verify' ); ?> 
     201             <?php esc_html_e( 'Use built-in CSS on the front-end (recommended)', 'age-verify' ); ?> 
    202202        </label> 
    203203    </fieldset> 
     
    215215         
    216216        <legend class="screen-reader-text"> 
    217             <span><?php esc_html_e( 'Overlay Color', 'age_verify' ); ?></span> 
     217            <span><?php esc_html_e( 'Overlay Color', 'age-verify' ); ?></span> 
    218218        </legend> 
    219219         
  • age-verify/trunk/includes/class-age-verify.php

    r1139727 r1329809  
    22/** 
    33 * Define the main plugin class 
    4  *  
     4 * 
    55 * @since 0.2.6 
    6  *  
     6 * 
    77 * @package Age_Verify 
    88 */ 
     
    1515/** 
    1616 * The main class. 
    17  *  
     17 * 
    1818 * @since 0.1.0 
    1919 */ 
    2020final class Age_Verify { 
    21      
     21 
    2222    /** 
    2323     * The plugin version. 
    24      *  
    25      * @since 0.2.6 
    26      */ 
    27     const VERSION = '0.2.9'; 
    28      
    29     /** 
    30      * The plugin slug. 
    31      *  
    32      * @since 0.2.6 
    33      */ 
    34     const SLUG = 'age_verify'; 
    35      
     24     * 
     25     * @since 0.2.6 
     26     */ 
     27    const VERSION = '0.3.0'; 
     28 
    3629    /** 
    3730     * The only instance of this class. 
    38      *  
     31     * 
    3932     * @since 0.2.6 
    4033     * @access protected 
    4134     */ 
    4235    protected static $instance = null; 
    43      
     36 
    4437    /** 
    4538     * Get the only instance of this class. 
    46      *  
    47      * @since 0.2.6 
    48      *  
     39     * 
     40     * @since 0.2.6 
     41     * 
    4942     * @return object $instance The only instance of this class. 
    5043     */ 
    5144    public static function get_instance() { 
    52          
     45 
    5346        if ( is_null( self::$instance ) ) { 
    5447            self::$instance = new self(); 
    5548        } 
    56          
     49 
    5750        return self::$instance; 
    5851    } 
     
    6255     * 
    6356     * @since 0.2.6 
    64      *  
     57     * 
    6558     * @return void 
    6659     */ 
    6760    public function __clone() { 
    68         _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', self::SLUG ), self::VERSION ); 
     61        _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'age-verify' ), self::VERSION ); 
    6962    } 
    7063 
     
    7366     * 
    7467     * @since 0.2.6 
    75      *  
     68     * 
    7669     * @return void 
    7770     */ 
    7871    public function __wakeup() { 
    79         _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', self::SLUG ), self::VERSION ); 
    80     } 
    81      
     72        _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'age-verify' ), self::VERSION ); 
     73    } 
     74 
    8275    /** 
    8376     * Construct the class! 
    8477     * 
    8578     * @since 0.1.0 
    86      *  
     79     * 
    8780     * @return void 
    8881     */ 
    8982    public function __construct() { 
    90          
     83 
    9184        /** 
    9285         * Require the necessary files. 
    9386         */ 
    9487        $this->require_files(); 
    95          
     88 
    9689        /** 
    9790         * Add the necessary action hooks. 
     
    9992        $this->add_actions(); 
    10093    } 
    101      
     94 
    10295    /** 
    10396     * Require the necessary files. 
    104      *  
    105      * @since 0.1.0 
    106      *  
     97     * 
     98     * @since 0.1.0 
     99     * 
    107100     * @return void 
    108101     */ 
    109102    private function require_files() { 
    110          
     103 
    111104        /** 
    112105         * The helper functions. 
     
    114107        require( plugin_dir_path( __FILE__ ) . 'functions.php' ); 
    115108    } 
    116      
     109 
    117110    /** 
    118111     * Add the necessary action hooks. 
    119      *  
    120      * @since 0.1.0 
    121      *  
     112     * 
     113     * @since 0.1.0 
     114     * 
    122115     * @return void 
    123116     */ 
    124117    private function add_actions() { 
    125          
     118 
    126119        // Load the text domain for i18n. 
    127120        add_action( 'init', array( $this, 'load_textdomain' ) ); 
    128          
     121 
    129122        // If checked in the settings, load the default and custom styles. 
    130123        if ( get_option( '_av_styling', 1 ) == 1 ) { 
    131              
     124 
    132125            add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_styles' ) ); 
    133              
     126 
    134127            add_action( 'wp_head', array( $this, 'custom_styles' ) ); 
    135              
    136         } 
    137          
     128 
     129        } 
     130 
    138131        // Maybe display the overlay. 
    139132        add_action( 'wp_footer', array( $this, 'verify_overlay' ) ); 
    140          
     133 
    141134        // Maybe hide the content of a restricted content type. 
    142135        add_action( 'the_content', array( $this, 'restrict_content' ) ); 
    143          
     136 
    144137        // Verify the visitor's input. 
    145138        add_action( 'template_redirect', array( $this, 'verify' ) ); 
    146          
     139 
    147140        // If checked in the settings, add to the registration form. 
    148141        if ( av_confirmation_required() ) { 
    149              
     142 
    150143            add_action( 'register_form', 'av_register_form' ); 
    151              
     144 
    152145            add_action( 'register_post', 'av_register_check', 10, 3 ); 
    153              
    154         } 
    155     } 
    156      
     146 
     147        } 
     148    } 
     149 
    157150    /** 
    158151     * Load the text domain. 
     
    161154     * 
    162155     * @since 0.1.0 
    163      *  
     156     * 
    164157     * @return The textdomain or false on failure. 
    165158     */ 
    166159    public function load_textdomain() { 
    167          
     160 
    168161        $locale = get_locale(); 
    169         $locale = apply_filters( 'plugin_locale',  $locale, 'age_verify' ); 
    170         $mofile = sprintf( 'age_verify-%s.mo', $locale ); 
     162        $locale = apply_filters( 'plugin_locale',  $locale, 'age-verify' ); 
     163        $mofile = sprintf( 'age-verify-%s.mo', $locale ); 
    171164 
    172165        $mofile_local  = plugin_dir_path( dirname( __FILE__ ) ) . 'languages/' . $mofile; 
     
    174167 
    175168        if ( file_exists( $mofile_local ) ) 
    176             return load_textdomain( 'age_verify', $mofile_local ); 
    177              
     169            return load_textdomain( 'age-verify', $mofile_local ); 
     170 
    178171        if ( file_exists( $mofile_global ) ) 
    179             return load_textdomain( 'age_verify', $mofile_global ); 
    180          
    181         load_plugin_textdomain( 'age_verify' ); 
    182          
     172            return load_textdomain( 'age-verify', $mofile_global ); 
     173 
     174        load_plugin_textdomain( 'age-verify' ); 
     175 
    183176        return false; 
    184177    } 
    185      
     178 
    186179    /** 
    187180     * Enqueue the styles. 
    188181     * 
    189182     * @since 0.1.0 
    190      *  
     183     * 
    191184     * @return void 
    192185     */ 
    193186    public function enqueue_styles() { 
    194          
     187 
    195188        wp_enqueue_style( 'av-styles', plugin_dir_url( __FILE__ ) . 'assets/styles.css' ); 
    196189    } 
    197      
     190 
    198191    /** 
    199192     * Print the custom colors, as defined in the admin. 
    200193     * 
    201194     * @since 0.1.0 
    202      *  
     195     * 
    203196     * @return void 
    204197     */ 
    205198    public function custom_styles() { ?> 
    206          
     199 
    207200        <style type="text/css"> 
    208              
    209             #av-overlay-wrap {  
     201 
     202            #av-overlay-wrap { 
    210203                background: #<?php echo esc_attr( av_get_background_color() ); ?>; 
    211204            } 
    212              
     205 
    213206            #av-overlay { 
    214207                background: #<?php echo esc_attr( av_get_overlay_color() ); ?>; 
    215208            } 
    216              
     209 
    217210        </style> 
    218          
     211 
    219212        <?php 
    220213        /** 
     
    223216        do_action( 'av_custom_styles' ); 
    224217    } 
    225      
     218 
    226219    /** 
    227220     * Print the actual overlay if the visitor needs verification. 
     
    232225     */ 
    233226    public function verify_overlay() { 
    234          
     227 
    235228        if ( ! av_needs_verification() ) { 
    236229            return; 
    237230        } 
    238          
     231 
    239232        // Disable page caching by W3 Total Cache. 
    240233        define( 'DONOTCACHEPAGE', true ); ?> 
    241          
     234 
    242235        <div id="av-overlay-wrap"> 
    243              
     236 
    244237            <?php do_action( 'av_before_modal' ); ?> 
    245              
     238 
    246239            <div id="av-overlay"> 
    247                  
     240 
    248241                <h1><?php esc_html_e( av_get_the_heading() ); ?></h1> 
    249                  
     242 
    250243                <?php if ( av_get_the_desc() ) 
    251244                    echo '<p>' . esc_html( av_get_the_desc() ). '</p>'; ?> 
    252                  
     245 
    253246                <?php do_action( 'av_before_form' ); ?> 
    254                  
     247 
    255248                <?php av_verify_form(); ?> 
    256                      
     249 
    257250                <?php do_action( 'av_after_form' ); ?> 
    258                  
     251 
    259252            </div> 
    260              
     253 
    261254            <?php do_action( 'av_after_modal' ); ?> 
    262              
     255 
    263256        </div> 
    264257    <?php } 
    265      
     258 
    266259    /** 
    267260     * Hide the content if it is age restricted. 
    268261     * 
    269262     * @since 0.2.0 
    270      *  
     263     * 
    271264     * @param  string $content The object content. 
    272265     * @return string $content The object content or an age-restricted message if needed. 
    273266     */ 
    274267     public function restrict_content( $content ) { 
    275          
     268 
    276269        if ( ! av_only_content_restricted() ) { 
    277270            return $content; 
    278271        } 
    279          
     272 
    280273        if ( is_singular() ) { 
    281274            return $content; 
    282275        } 
    283          
     276 
    284277        if ( ! av_content_is_restricted() ) { 
    285278            return $content; 
    286279        } 
    287          
    288         return sprintf( apply_filters( 'av_restricted_content_message', __( 'You must be %1s years old to view this content.', 'age_verify' ) . ' <a href="%2s">' . __( 'Please verify your age', 'age_verify' ) . '</a>.' ), 
     280 
     281        return sprintf( apply_filters( 'av_restricted_content_message', __( 'You must be %1s years old to view this content.', 'age-verify' ) . ' <a href="%2s">' . __( 'Please verify your age', 'age-verify' ) . '</a>.' ), 
    289282            esc_html( av_get_minimum_age() ), 
    290283            esc_url( get_permalink( get_the_ID() ) ) 
    291284        ); 
    292285     } 
    293      
     286 
    294287    /** 
    295288     * Verify the visitor if the form was submitted. 
    296289     * 
    297290     * @since 0.1.0 
    298      *  
     291     * 
    299292     * @return void 
    300293     */ 
    301294    public function verify() { 
    302          
    303         if ( empty( $_POST ) || ! wp_verify_nonce( $_POST['av-nonce'], 'verify-age' ) ) 
     295 
     296        if ( ! isset( $_POST['av-nonce'] ) || ! wp_verify_nonce( $_POST['av-nonce'], 'verify-age' ) ) 
    304297            return; 
    305          
     298 
    306299        $redirect_url = remove_query_arg( array( 'age-verified', 'verify-error' ), wp_get_referer() ); 
    307          
     300 
    308301        $is_verified  = false; 
    309          
     302 
    310303        $error = 1; // Catch-all in case something goes wrong 
    311          
     304 
    312305        $input_type   = av_get_input_type(); 
    313          
     306 
    314307        switch ( $input_type ) { 
    315              
    316              
     308 
     309 
    317310            case 'checkbox' : 
    318                  
     311 
    319312                if ( isset( $_POST['av_verify_confirm'] ) && (int) $_POST['av_verify_confirm'] == 1 ) 
    320313                    $is_verified = true; 
    321314                else 
    322315                    $error = 2; // Didn't check the box 
    323                  
     316 
    324317                break; 
    325              
     318 
    326319            default : 
    327                  
     320 
    328321                if ( checkdate( (int) $_POST['av_verify_m'], (int) $_POST['av_verify_d'], (int) $_POST['av_verify_y'] ) ) : 
    329                      
     322 
    330323                    $age = av_get_visitor_age( $_POST['av_verify_y'], $_POST['av_verify_m'], $_POST['av_verify_d'] ); 
    331                      
     324 
    332325                    if ( $age >= av_get_minimum_age() ) 
    333326                        $is_verified = true; 
    334327                    else 
    335328                        $error = 3; // Not old enough 
    336                          
     329 
    337330                else : 
    338                      
     331 
    339332                    $error = 4; // Invalid date 
    340                      
     333 
    341334                endif; 
    342                  
     335 
    343336                break; 
    344337        } 
    345          
     338 
    346339        $is_verified = apply_filters( 'av_passed_verify', $is_verified ); 
    347          
     340 
    348341        if ( $is_verified == true ) : 
    349              
     342 
    350343            do_action( 'av_was_verified' ); 
    351              
     344 
    352345            if ( isset( $_POST['av_verify_remember'] ) ) 
    353346                $cookie_duration = time() +  ( av_get_cookie_duration() * 60 ); 
    354347            else 
    355348                $cookie_duration = 0; 
    356              
     349 
    357350            setcookie( 'age-verified', 1, $cookie_duration, COOKIEPATH, COOKIE_DOMAIN, false ); 
    358              
     351 
    359352            wp_redirect( esc_url_raw( $redirect_url ) . '?age-verified=' . wp_create_nonce( 'age-verified' ) ); 
    360353            exit; 
    361              
     354 
    362355        else : 
    363              
     356 
    364357            do_action( 'av_was_not_verified' ); 
    365              
     358 
    366359            wp_redirect( esc_url_raw( add_query_arg( 'verify-error', $error, $redirect_url ) ) ); 
    367360            exit; 
    368              
     361 
    369362        endif; 
    370363    } 
  • age-verify/trunk/includes/functions.php

    r999280 r1329809  
    105105function av_get_cookie_duration() { 
    106106     
    107     $cookie_duration = 720; 
     107    $cookie_duration = get_option( '_av_cookie_duration', 720 ); 
    108108     
    109109    /** 
     
    114114     * @param int $cookie_duration The cookie duration. 
    115115     */ 
    116     $cookie_duration = apply_filters( 'av_cookie_duration', $cookie_duration ); 
    117      
    118     return (int) $cookie_duration; 
     116    $cookie_duration = (int) apply_filters( 'av_cookie_duration', $cookie_duration ); 
     117     
     118    return $cookie_duration; 
    119119} 
    120120 
     
    234234function av_get_the_heading() { 
    235235     
    236     return sprintf( apply_filters( 'av_heading', get_option( '_av_heading', __( 'You must be %s years old to visit this site.', 'age_verify' ) ) ), av_get_minimum_age() ); 
     236    return sprintf( apply_filters( 'av_heading', get_option( '_av_heading', __( 'You must be %s years old to visit this site.', 'age-verify' ) ) ), av_get_minimum_age() ); 
    237237} 
    238238 
     
    257257function av_get_the_desc() { 
    258258     
    259     $desc = apply_filters( 'av_description', get_option( '_av_description', __( 'Please verify your age', 'age_verify' ) ) ); 
     259    $desc = apply_filters( 'av_description', get_option( '_av_description', __( 'Please verify your age', 'age-verify' ) ) ); 
    260260     
    261261    if ( ! empty( $desc ) ) 
     
    338338    $input_type = av_get_input_type(); 
    339339     
    340     $submit_button_label = apply_filters( 'av_form_submit_label', __( 'Enter Site &raquo;', 'age_verify' ) ); 
     340    $submit_button_label = apply_filters( 'av_form_submit_label', __( 'Enter Site &raquo;', 'age-verify' ) ); 
    341341     
    342342    $form = ''; 
     
    351351         
    352352        // Catch-all error 
    353         $error_string = apply_filters( 'av_error_text_general', __( 'Sorry, something must have gone wrong. Please try again', 'age_verify' ) ); 
     353        $error_string = apply_filters( 'av_error_text_general', __( 'Sorry, something must have gone wrong. Please try again', 'age-verify' ) ); 
    354354         
    355355        // Visitor didn't check the box (only for the simple checkbox form) 
    356356        if ( $error == 2 ) 
    357             $error_string = apply_filters( 'av_error_text_not_checked', __( 'Check the box to confirm your age before continuing', 'age_verify' ) ); 
     357            $error_string = apply_filters( 'av_error_text_not_checked', __( 'Check the box to confirm your age before continuing', 'age-verify' ) ); 
    358358         
    359359        // Visitor isn't old enough 
    360360        if ( $error == 3 ) 
    361             $error_string = apply_filters( 'av_error_text_too_young', __( 'Sorry, it doesn\'t look like you\'re old enough', 'age_verify' ) ); 
     361            $error_string = apply_filters( 'av_error_text_too_young', __( 'Sorry, it doesn\'t look like you\'re old enough', 'age-verify' ) ); 
    362362         
    363363        // Visitor entered an invalid date 
    364364        if ( $error == 4 ) 
    365             $error_string = apply_filters( 'av_error_text_bad_date', __( 'Please enter a valid date', 'age_verify' ) ); 
     365            $error_string = apply_filters( 'av_error_text_bad_date', __( 'Please enter a valid date', 'age-verify' ) ); 
    366366         
    367367        $form .= '<p class="error">' . esc_html( $error_string ) . '</p>'; 
     
    423423            $form .= '<p><label for="av_verify_confirm"><input type="checkbox" name="av_verify_confirm" id="av_verify_confirm" value="1" /> '; 
    424424             
    425             $form .= esc_html( sprintf( apply_filters( 'av_confirm_text', __( 'I am at least %s years old', 'age_verify' ) ), av_get_minimum_age() ) ) . '</label></p>'; 
     425            $form .= esc_html( sprintf( apply_filters( 'av_confirm_text', __( 'I am at least %s years old', 'age-verify' ) ), av_get_minimum_age() ) ) . '</label></p>'; 
    426426             
    427427            break; 
     
    431431    do_action( 'av_form_after_inputs' ); 
    432432     
    433     $form .= '<p class="submit"><label for="av_verify_remember"><input type="checkbox" name="av_verify_remember" id="av_verify_remember" value="1" /> ' . esc_html__( 'Remember me', 'age_verify' ) . '</label> '; 
     433    $form .= '<p class="submit"><label for="av_verify_remember"><input type="checkbox" name="av_verify_remember" id="av_verify_remember" value="1" /> ' . esc_html__( 'Remember me', 'age-verify' ) . '</label> '; 
    434434     
    435435    $form .= '<input type="submit" name="av_verify" id="av_verify" value="' . esc_attr( $submit_button_label ) . '" /></p>'; 
     
    473473    $text = '<p class="age-verify"><label for="_av_confirm_age"><input type="checkbox" name="_av_confirm_age" id="_av_confirm_age" value="1" /> '; 
    474474     
    475     $text .= esc_html( sprintf( apply_filters( 'av_registration_text', __( 'I am at least %s years old', 'age_verify' ) ), av_get_minimum_age() ) ); 
     475    $text .= esc_html( sprintf( apply_filters( 'av_registration_text', __( 'I am at least %s years old', 'age-verify' ) ), av_get_minimum_age() ) ); 
    476476     
    477477    $text .= '</label></p><br />'; 
     
    490490     
    491491    if ( ! isset( $_POST['_av_confirm_age'] ) ) 
    492         $errors->add( 'empty_age_confirm', '<strong>ERROR</strong>: ' . apply_filters( 'av_registration_error', __( 'Please confirm your age', 'age_verify' ) ) ); 
    493 } 
     492        $errors->add( 'empty_age_confirm', '<strong>ERROR</strong>: ' . apply_filters( 'av_registration_error', __( 'Please confirm your age', 'age-verify' ) ) ); 
     493} 
  • age-verify/trunk/readme.txt

    r1139727 r1329809  
    33Tags: age, restrict, verify 
    44Requires at least: 3.2 
    5 Tested up to: 4.2-RC2 
    6 Stable tag: 0.2.9 
     5Tested up to: 4.4.1 
     6Stable tag: 0.3.0 
    77License: GPLv2 or later 
    88License URI: http://www.gnu.org/licenses/gpl-2.0.html 
     
    2727== Changelog == 
    2828 
     29= 0.3.0 = 
     30* New: French and Italian translations 
     31* Tweak: Use strings for the textdomain and change to 'age-verify' 
     32 
     33= 0.2.10 = 
     34* Fix: cookie duration now uses the corresponding setting 
     35 
    2936= 0.2.9 = 
    30 * Fix: Prevent add/remove_query_arg XSS vulnerability  
     37* Fix: Prevent add/remove_query_arg XSS vulnerability 
    3138 
    3239= 0.2.8 = 
     
    4552 
    4653= 0.2.5 = 
    47 * Added WordPress 3.8 compatibility  
     54* Added WordPress 3.8 compatibility 
    4855* Fixed a bit of text domain loading 
    4956* Added additional actions for further extensibility 
Note: See TracChangeset for help on using the changeset viewer.