Your IP : 18.118.14.81


Current Path : /var/www/ooareogundevinitiative/wp-content/plugins/site-offline/
Upload File :
Current File : /var/www/ooareogundevinitiative/wp-content/plugins/site-offline/site-offline.php

<?php
/**
 * Plugin Name: Site Offline
 * Version: 1.4.3
 * Description: Site Offline plugin manage your WordPress website when it's under construction or maintenance mode or coming soon.
 * Author: Chandra Shekhar Sahu
 * Author URI: http://www.freehtmldesigns.com
 * Plugin URI: http://www.freehtmldesigns.com/blog
 */
 
if ( ! defined( 'ABSPATH' ) ) exit;
define("SAHU_SO_TEXT_DOMAIN","SAHU_SO_lang" );
define("SAHU_SO_PLUGIN_URL", plugin_dir_url(__FILE__));

//Get Ready Plugin Translation
add_action('plugins_loaded', 'sahu_so_language_translation');
function sahu_so_language_translation() {
	load_plugin_textdomain( SAHU_SO_TEXT_DOMAIN, FALSE, dirname( plugin_basename(__FILE__)).'/language/' );
}
##	Default Data ##
register_activation_hook( __FILE__, 'sahu_so_dd' );
function sahu_so_dd()
{
	include('functions/default-data.php');
}

// Site Offline Menu Page 
add_action('admin_menu','sahu_site_offline_wp_menu');

function sahu_site_offline_wp_menu()
{
    //plugin menu name for Site Offline plugin
    $menu = add_menu_page('Site Offline', 'Site Offline','administrator', 'sahu_site_offline_wp','sahu_site_offline_content','dashicons-welcome-view-site');

    //added hook to add styles and scripts for Site Offline admin page
    add_action( 'admin_print_styles-' . $menu, 'sahu_site_offline_wp_script' );
}

require_once('functions/script.php');

function sahu_site_offline_content()
{  
	require_once('backend/content.php');
}

// site offline mode function
function sahu_so_launch()
{
	$sahu_so_dashboard = unserialize(get_option('sahu_so_dashboard'));
	$sahu_so_status = $sahu_so_dashboard['sahu_so_status'];
	
	if($sahu_so_status=="1")
	{	
		// Exit if any custom login page
		if(preg_match("/login|admin|dashboard|account/i",$_SERVER['REQUEST_URI']) > 0 ){
			return false;
		}
		// Check if user is logged in.
		if (!is_user_logged_in())
		{
			$file = plugin_dir_path( __FILE__ )."output/index.php";
			include($file);
			exit();
		}
		else{
			
			//get logined in user role
			$wp_get_current_user =  wp_get_current_user();
			$LoggedInUserID = $wp_get_current_user->ID;
			$UserData = get_userdata( $LoggedInUserID );
			//if user role not 'administrator' then redirect page 
			if($UserData->roles[0] != "administrator")
			{
				$file = plugin_dir_path( __FILE__ )."output/index.php";
				include($file);
				exit();
			}
			
		}
	}
	
}
add_action( 'template_redirect', 'sahu_so_launch' );

//Live Preview Viewing code
if (  (isset($_GET['sahu_cs_preview']) && $_GET['sahu_cs_preview'] == 'true') )
{ 	
	
	$file = plugin_dir_path( __FILE__ )."output/index.php";
	include($file);
	exit();
}

add_action('admin_bar_menu', 'sahu_so_admin_bar_button', 1000);
function sahu_so_admin_bar_button()
{
	
	global $wp_admin_bar;
	$sahu_so_dashboard = unserialize(get_option('sahu_so_dashboard'));
	$sahu_so_status = $sahu_so_dashboard['sahu_so_status'];
	if($sahu_so_status=='0') return;
	$msg = __('Site Offline Mode Active','');
	
	// Add Parent Menu
	$argsParent=array(
		'id' => 'myCustomMenu',
		'title' => $msg,
		'parent' => 'top-secondary',
		'href' => '?page=sahu_coming_soon_so',
		'meta'   => array( 'class' => 'sahu_so_admin_bar_button_so' ),
	);
	$wp_admin_bar->add_menu($argsParent);
	?>
	<style>
		.sahu_so_admin_bar_button_so a{
			background: #916194 !important;
			color: #fff !important;
		}
		.sahu_so_admin_bar_button_so a:hover{
			background: #916194 !important;
			color: #fff !important;
		}

	</style>
	<?php  
}
?>