Plugin Directory

Changeset 2209421


Ignore:
Timestamp:
12/10/2019 04:24:42 PM (6 years ago)
Author:
wordpresssimpletools
Message:

new settings page

Location:
wpsimpletools-maintenance-mode/trunk
Files:
2 added
2 deleted
3 edited

Legend:

Unmodified
Added
Removed
  • wpsimpletools-maintenance-mode/trunk/maintenance.php

    r1910318 r2209421  
    3131<body>
    3232    <article>
    33         <h1><?php _e('We\'ll be back soon!', 'wpst_m');?></h1>
     33        <h1><?php _e('We\'ll be back soon!', 'wpsimpletools-maintenance');?></h1>
    3434        <div>
    3535            <p>
    36                 <?php _e('Sorry for the inconvenience but we\'re performing some maintenance at the moment.', 'wpst_m');?><br />
    37                 <?php _e('We\'ll be back online shortly!', 'wpst_m');?>
     36                <?php _e('Sorry for the inconvenience but we\'re performing some maintenance at the moment.', 'wpsimpletools-maintenance');?><br />
     37                <?php _e('We\'ll be back online shortly!', 'wpsimpletools-maintenance');?>
    3838            </p>
    3939            <p>&mdash; <?php bloginfo('name') ?></p>
  • wpsimpletools-maintenance-mode/trunk/readme.txt

    r2197434 r2209421  
    66Requires PHP: 5.0.0
    77Tested up to: 5.3
    8 Stable tag: 1.0.5
     8Stable tag: 1.1.0
    99License: GPLv3
    1010License URI: https://www.gnu.org/licenses/gpl-3.0.html
     
    37371.0.5 WP 5.3 supported
    3838
     39= 1.1.0 =
     40New settings page
     41
    3942== Frequently Asked Questions ==
    4043No FAQ yet... pls ask :)
     
    5356= 1.0.5 =
    54571.0.5 WP 5.3 supported
     58= 1.1.0 =
     59New settings page
    5560
    5661== Screenshots ==
  • wpsimpletools-maintenance-mode/trunk/wpsimpletools-maintenance.php

    r2197434 r2209421  
    66 * Author: WpSimpleTools
    77 * Author URI: https://profiles.wordpress.org/wpsimpletools/#content-plugins
    8  * Version: 1.0.4
     8 * Version: 1.1.0
    99 * Plugin Slug: wpsimpletools-maintenance
    10  * Text Domain: wpst_m
     10 * Text Domain: wpsimpletools-maintenance
    1111 */
    1212if (! defined('ABSPATH')) {
     
    1717function wpst_m_init() {
    1818
    19     load_plugin_textdomain('wpst_m', false, basename(dirname(__FILE__)) . '/languages/');
     19    load_plugin_textdomain('wpsimpletools-maintenance', false, basename(dirname(__FILE__)) . '/languages/');
    2020}
    2121add_action('plugins_loaded', 'wpst_m_init');
     
    2626    $enabled = esc_attr(get_option('enabled'));
    2727    $redirect_url = esc_attr(get_option('url'));
     28    $maintenancePage = esc_attr(get_option('maintenancePage'));
    2829   
    2930    ?>
     31
     32
     33<script type="text/javascript">
     34
     35jQuery(function($) {
     36
     37    $('select#enabled').on('change', function() {
     38        manageForm()
     39    });
     40
     41    $('select#maintenancePage').on('change', function() {
     42        manageForm()
     43    });
     44   
     45    function manageForm(){
     46
     47        var enabled = $('select#enabled').val();
     48        console.log('enabled: ' + enabled);
     49
     50        var maintenancePage = $('select#maintenancePage').val();
     51        console.log('maintenancePage: ' + maintenancePage);
     52   
     53        if(enabled > 0){
     54            $('select#maintenancePage').prop('disabled', false);
     55            if(maintenancePage == 'CUSTOM')
     56                $('input#url').prop('disabled', false);
     57            else
     58                $('input#url').prop('disabled', true);
     59        }else{
     60            $('select#maintenancePage').prop('disabled', true);
     61            $('input#url').prop('disabled', true);
     62        }
     63   
     64    }
     65
     66    // onload
     67    manageForm();
     68   
     69});
     70
     71</script>
    3072
    3173<div class="wrap">
     
    3779            <table class="form-table">
    3880            <tr valign="top">
    39                 <th scope="row"><?php _e('Enabled', 'wpst_m');?></th>
    40                 <td><select name="enabled">
     81                <th scope="row"><?php _e('Enabled', 'wpsimpletools-maintenance');?></th>
     82                <td><select name="enabled" id="enabled">
    4183                        <option <?php if(!$enabled) { echo 'selected="selected" '; } ?> value="0">No</option>
    4284                        <option <?php if($enabled) { echo 'selected="selected" '; } ?> value="1" style="color: red;">Yes</option>
     
    4486            </tr>
    4587            <tr valign="top">
    46                 <th scope="row"><?php _e('URL', 'wpst_m');?></th>
    47                 <td><input type="text" name="url" value="<?php echo $redirect_url ?>" />
    48                     <p class="description" id="tagline-description"><?php _e('If empty, default maintenance page will be shown', 'wpst_m');?></p></td>
     88                <th scope="row"><?php _e('Maintenance mode page', 'wpsimpletools-maintenance');?></th>
     89                <td><select name="maintenancePage" id="maintenancePage">
     90                        <option <?php if($maintenancePage == 'DEFAULT') { echo 'selected="selected" '; } ?> value="DEFAULT">Default page</option>
     91                        <option <?php if($maintenancePage == 'CUSTOM') { echo 'selected="selected" '; } ?> value="CUSTOM">Custom URL</option>
     92                </select></td>
     93            </tr>
     94            <tr valign="top">
     95                <th scope="row"><?php _e('URL', 'wpsimpletools-maintenance');?></th>
     96                <td><input type="text" name="url" id="url" value="<?php echo $redirect_url ?>" size="40" /></td>
    4997            </tr>
    5098        </table>
     
    58106
    59107    if (function_exists('add_options_page'))
    60         add_options_page(__('Maintenance mode', 'wpst_m'), __('Maintenance mode', 'wpst_m'), 'manage_options', 'opts.php', 'wpst_m_options_page_body');
     108        add_options_page(__('Maintenance mode', 'wpsimpletools-maintenance'), __('Maintenance mode', 'wpsimpletools-maintenance'), 'manage_options', 'opts.php', 'wpst_m_options_page_body');
    61109}
    62110
     
    64112
    65113    register_setting('wpsimpletools-manteinance', 'enabled');
     114    register_setting('wpsimpletools-manteinance', 'maintenancePage');
    66115    register_setting('wpsimpletools-manteinance', 'url');
    67116}
     
    71120    $enabled = esc_attr(get_option('enabled'));
    72121    $redirect_url = esc_attr(get_option('url'));
     122    $maintenancePage = esc_attr(get_option('maintenancePage'));
    73123   
    74124    $url_parts = explode('/', $_SERVER['REQUEST_URI']);
    75125   
    76     if ($enabled)
     126    echo $_SERVER['REQUEST_URI'];
     127   
     128    if ($enabled){
     129
    77130        if (in_array('wp-admin', $url_parts)) {
     131           
    78132            // admin - no redirect
     133           
     134        }else if (current_user_can('manage_options')) {
     135           
     136            // user is logged - no redirect
     137           
    79138        } else if (in_array('wpsimpletools-maintenance', $url_parts)) {
     139           
    80140            // maintenance page - no redirect
    81         } else {
    82             if (current_user_can('manage_options')) {
    83                 // user is logged - no redirect
    84             } else {
    85                
    86                 if (empty($redirect_url) || $redirect_url == '') {
    87                     // no redirect url -> default maintenance page
    88                     include 'maintenance.php';
    89                     exit();
    90                 } else {
    91                     // redirect
    92                     header('Location: ' . esc_attr(get_option('url')));
    93                     die();
    94                 }
    95             }
     141           
     142        }else if($maintenancePage == 'CUSTOM'){
     143           
     144            // redirect
     145            header('Location: ' . $redirect_url);
     146            die();
     147           
     148        }else{
     149           
     150            // default page
     151            include 'maintenance.php';
     152            exit();
    96153        }
     154       
     155    }
    97156}
    98157
     
    102161    if ($enabled) {
    103162        $class = 'notice notice-error';
    104         $message = __('Maintenance mode is active!', 'wpst_m');
     163        $message = __('Maintenance mode is active!', 'wpsimpletools-maintenance');
    105164        printf('<div class="%1$s"><p>%2$s</p></div>', esc_attr($class), esc_html($message));
    106165    }
     
    113172
    114173function wpst_m_deactivation() {
    115 
    116     // Welp, I've been deactivated - are there some things I should clean up?
     174    delete_option('enabled');
     175    delete_option('maintenancePage');
     176    delete_option('url');
    117177}
    118178
Note: See TracChangeset for help on using the changeset viewer.