panel.php

File Type: php File Location: monofiles/ File name: panel.php
<?php 
    
    
include_once 'data_connect.php';
    include 
'log.php';
    
    
    
    
// Only administrators have control over plugins
    
$acinfo get_account($_SESSION['userID']);
    
$rights $acinfo['rights'];
    
    
    
    
// For a plugin to appear in panel, it must be included here 
    
$plugged = array('Autologout','Rssburn','Minimenu');
    
    
    
    
// Plugins turn on/off
    
if ($_POST['pluginsubmitted'] && $rights == 'administrator') {
            
        foreach(
$plugged as $plugin) {
            
            
            
$txt '../plugins/'.lcfirst($plugin.'.txt');

            if (
$_POST[$plugin] == 'on') {
                
                if (
file_exists($txt)) {
                    
                    
unlink($txt);
                
                    
// Set MONtimeout after turning on Autologout
                    
if ($plugin == 'Autologout')
                        
$_SESSION['MONtimeout'] = time();
                }
            }
            
            else {
                
                if (!
file_exists($txt) && file_exists('../plugins/'.lcfirst($plugin.'.php'))) {
                    
                    
file_put_contents($txt,'');
                    
                    
// LOGOUT USER when turning off Autologout
                    
if ($plugin == 'Autologout') {
                        
header('Location: panel.php?logout=3');
                        exit();
                    }
                
                
                }
            }
        }
        
        
$_SESSION['MON_plugins'] = 'Plugin status saved';
        
header('Location:panel.php');
        exit();
    }
    
    


    
//Save installed plugins in this array
    
$plgins = array();
    
    
$p=0;
    foreach (
$plugged as $plugin) {
            
        if (
file_exists('../plugins/'.lcfirst($plugin).'.php')) {
            
$plgins[] = $plugin;
            
$p++;
        }
    }
    
    
    
//plugins menu
    
if ($acinfo['plugins menu'] == 'off') {
        
$exp '-1';
        
$plgmenuhover 'input[type="checkbox"]:focus + label:before,input[type="submit"]:focus{outline-width:0}'.PHP_EOL.'.plgmenu:hover{transition:all .35s;transition-delay:.1s;';
        
    }
    
    else {
        
$exp '';
        
$plgmenuhover '.plgmenu .plugeffect{display:none}'.PHP_EOL.'.plgmenu{';
        }
?>
<!doctype html>
<html>
<head>
<title>Control panel</title>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="cmstyle.css">
<style>
<?php print $plgmenuhover ?>height:<?php print 74+100*$p ?>px}
<?php if ($p == 0) print '.plugin{opacity:.5}' ?>
</style>
<?php include 'csstheme.php' ?>
</head>
<body>
<?php

    
include 'mypanel.php';
    
    
//if the user has author rights, we change the number of posts from sum, to owned only.
    
if ($acc_info['rights'] != 'administrator') {
        
        
$c=0;
        
        
$directory = new DirectoryIterator('autosaves/');
        
        foreach (
$directory as $fileinfo) {

                if (
$fileinfo->isFile()) {

                    
$name $fileinfo->getFilename();
                    
$namexml simplexml_load_file('autosaves/'.$name);
                    
                    if (((string)
$namexml->postinfo->post->createdby == $_SESSION['userID']) && (strpos($name,'nu') === false) )
                        
$c++;
                }
        }
    }
    
    if (isset(
$_SESSION['MON_plugins'])) {
        echo 
'<div id="action-confirm"><span>Plugin status saved</span></div>';
        unset(
$_SESSION['MON_plugins']);
    }
?>
<div class="main">
<div class="welcome-box">
Welcome! You have <?php echo $c ?> posts<?php if(get_account($_SESSION['userID'])['rights'] == 'administrator') echo ' and '.$d.' pages.' ?>
</div>
<div style="height:8px"></div>
<div class="welcome-box plugin">
<form action="panel.php" id="plugins" method="post"></form>
    Plugins installed: <?php 

    
echo ($p == 0) ? '<span class="pl-title"><i>none</i></span></div>' $p;
    
    
    
    
//if at least one plugin is installed
    
if ($p != && $rights == 'administrator') {
    
    
// This XML file contains the plugins descriptions appearing on the plugins menu
    
$pltext simpleXML_load_file('filesinfo/textinfo.xml');
    
        print 
PHP_EOL.'</div><div class="plgmenu"><div class="plugeffect"><div class="opb">&caron;</div></div>'.PHP_EOL.'<div class="pluginsadm">';
    
        
$id=0;
        foreach (
$plgins as $plugin) {
            
            
$chk = (file_exists('../plugins/'.lcfirst($plugin).'.txt')) ? '' ' checked';
            
$xmldes lcfirst($plugin).'des';
            
$des $pltext->info->plugins->$xmldes;
                
            echo 
'<span class="plonoff"><h4>'.$plugin.'</h4><span class="pldes">'.$des.'</span></span><input type="checkbox" name="'.$plugin.'" value="on" form="plugins" id="onoff-'.$id.'"'.$chk.' tabindex="'.$exp.'"><label for="onoff-'.$id.'"></label><div class="clear"></div>'.PHP_EOL;
            
$id++;
        }
        
        print 
'</div><input type="submit" value="Save" class="plsubmit" form="plugins" name="pluginsubmitted" tabindex="'.$exp.'"></div>';

    }


?>
</div>
</body>
</html>