FreeSTAR-Status-Engine/admin/index.php

107 lines
2.5 KiB
PHP
Raw Normal View History

2017-11-23 18:09:36 -05:00
<?php
2018-01-20 17:01:59 -05:00
if (!file_exists("../config.php"))
2017-11-23 18:09:36 -05:00
{
2018-01-20 17:01:59 -05:00
header("Location: ../");
2017-11-23 18:09:36 -05:00
}
else{
require_once("../config.php");
require_once("../classes/constellation.php");
require_once("../classes/mailer.php");
require_once("../classes/notification.php");
require_once("../template.php");
require_once("../libs/parsedown/Parsedown.php");
require_once("../classes/queue.php");
2020-08-16 16:38:06 -04:00
require_once("../classes/db-class.php");
$db = new SSDB();
define("NAME", $db->getSetting($mysqli,"name"));
define("TITLE", $db->getSetting($mysqli,"title"));
define("WEB_URL", $db->getSetting($mysqli,"url"));
define("MAILER_NAME", $db->getSetting($mysqli,"mailer"));
define("MAILER_ADDRESS", $db->getSetting($mysqli,"mailer_email"));
// Process the subscriber notification queue
// If CRON_SERVER_IP is not set, call notification once incident has been saved
if ( empty(CRON_SERVER_IP) )
{
if ( isset($_GET['sent']) && $_GET['sent'] == true )
{
Queue::process_queue();
}
}
else if ( isset($_GET['task']) && $_GET['task'] == 'cron' )
{
// Else, base it on call to /admin?task=cron being called from IP defined by CRON_SERVER_IP
if (! empty(CRON_SERVER_IP) && $_SERVER['REMOTE_ADDR'] == CRON_SERVER_IP )
{
Queue::process_queue();
syslog(1, "CRON server processed");
}
else {
syslog(1, "CRON called from unauthorised server");
}
}
2017-11-23 18:09:36 -05:00
if(isset($_COOKIE['user'])&&!isset($_SESSION['user']))
2017-11-23 18:09:36 -05:00
{
User::restore_session();
2017-11-23 18:09:36 -05:00
}
if (!isset($_SESSION['user']))
2018-01-03 08:15:45 -05:00
{
if (isset($_GET['do']) && $_GET['do']=="lost-password")
{
require_once("lost-password.php");
}else if (isset($_GET['do']) && $_GET['do']=="change-email"){
$user_pwd = new User($_GET['id']);
$user_pwd->change_email();
require_once("login-form.php");
}
else{
User::login();
require_once("login-form.php");
}
2018-01-03 08:15:45 -05:00
}
else
{
$user = new User($_SESSION['user']);
if (!$user->is_active())
{
User::logout();
}
2018-01-03 08:15:45 -05:00
if (!isset($_GET['do'])){
$do = "";
}else{
$do = $_GET['do'];
}
2018-01-03 08:15:45 -05:00
switch ($do) {
case 'change-email':
$user = new User($_GET['id']);
$user->change_email();
case 'user':
require_once("user.php");
break;
case 'settings':
require_once("settings.php");
break;
2017-11-23 18:09:36 -05:00
case 'new-user':
require_once("new-user.php");
break;
2017-11-23 18:09:36 -05:00
case 'logout':
User::logout();
break;
2017-11-23 18:09:36 -05:00
default:
require_once("dashboard.php");
break;
}
2017-11-23 18:09:36 -05:00
Template::render_footer(true);
}
}