/**
  * Saving settings
  */
 private static function saveSettings()
 {
     if (!empty($_POST)) {
         if (!wp_verify_nonce($_POST['_wpnonce'], WP_503_NONCE)) {
             die('Security check!');
         }
         $_POST['options']['status'] = (int) $_POST['options']['status'];
         if (!empty($_POST['options']['exclude'])) {
             $exclude_array = explode("\n", $_POST['options']['exclude']);
             $_POST['options']['exclude'] = array_map('trim', $exclude_array);
         } else {
             $_POST['options']['exclude'] = array();
         }
         if (isset(self::$settings['status']) && isset($_POST['options']['status']) && (self::$settings['status'] == 1 && in_array($_POST['options']['status'], array(0, 1)) || self::$settings['status'] == 0 && $_POST['options']['status'] == 1)) {
             self::clearCache();
         }
         self::$settings = $_POST['options'];
         update_option(WP_503_OPTION, self::$settings);
     }
 }
 * Text Domain:         wp-503-mode
 * Domain Path:         /languages
 */
// If this file is called directly, abort
if (!defined('WPINC')) {
    die;
}
define('WP_503_PATH', plugin_dir_path(__FILE__));
define('WP_503_OPTION', 'wp_503_mode');
define('WP_503_NONCE', 'wp_503_mode_nonce');
define('WP_503_PAGE_SLUG', 'maintenance-mode');
/**
 * Activation and deactivation
 */
register_activation_hook(__FILE__, 'maintenanceModeActivate');
function maintenanceModeActivate()
{
    $options = array('status' => 0, 'access' => array('administrator'));
    update_option(WP_503_OPTION, $options, false);
}
register_deactivation_hook(__FILE__, 'maintenanceModeDeactivate');
function maintenanceModeDeactivate()
{
    delete_option(WP_503_OPTION);
}
/**
 * Init plugin
 */
require WP_503_PATH . 'class-wp-503-mode.php';
Wp503Mode::init();