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
|
|
|
}
|
2018-01-18 16:57:12 -05:00
|
|
|
else{
|
|
|
|
require_once("../config.php");
|
|
|
|
require_once("../classes/constellation.php");
|
2020-11-05 08:54:04 -05:00
|
|
|
require_once("../classes/mailer.php");
|
|
|
|
require_once("../classes/notification.php");
|
2018-01-18 16:57:12 -05:00
|
|
|
require_once("../template.php");
|
2020-11-05 08:54:04 -05:00
|
|
|
require_once("../libs/parsedown/Parsedown.php");
|
|
|
|
require_once("../classes/queue.php");
|
|
|
|
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"));
|
|
|
|
|
|
|
|
define("GOOGLE_RECAPTCHA", $db->getBooleanSetting($mysqli, "google_recaptcha"));
|
|
|
|
define("GOOGLE_RECAPTCHA_SECRET", $db->getSetting($mysqli, "google_recaptcha_secret"));
|
|
|
|
define("GOOGLE_RECAPTCHA_SITEKEY", $db->getSetting($mysqli, "google_recaptcha_sitekey"));
|
|
|
|
define("SUBSCRIBE_EMAIL", $db->getBooleanSetting($mysqli, "subscribe_email"));
|
|
|
|
define("SUBSCRIBE_TELEGRAM", $db->getBooleanSetting($mysqli, "subscribe_telegram"));
|
|
|
|
define("TG_BOT_USERNAME", $db->getSetting($mysqli, "tg_bot_username"));
|
|
|
|
define("TG_BOT_API_TOKEN", $db->getSetting($mysqli, "tg_bot_api_token"));
|
|
|
|
define("PHP_MAILER", $db->getBooleanSetting($mysqli, "php_mailer"));
|
|
|
|
define("PHP_MAILER_SMTP", $db->getBooleanSetting($mysqli, "php_mailer_smtp"));
|
|
|
|
define("PHP_MAILER_PATH", $db->getSetting($mysqli, "php_mailer_path"));
|
|
|
|
define("PHP_MAILER_HOST", $db->getSetting($mysqli, "php_mailer_host"));
|
|
|
|
define("PHP_MAILER_PORT", $db->getSetting($mysqli, "php_mailer_port"));
|
|
|
|
define("PHP_MAILER_SECURE", $db->getBooleanSetting($mysqli, "php_mailer_secure"));
|
|
|
|
define("PHP_MAILER_USER", $db->getSetting($mysqli, "php_mailer_user"));
|
|
|
|
define("PHP_MAILER_PASS", $db->getSetting($mysqli, "php_mailer_pass"));
|
|
|
|
define("CRON_SERVER_IP", $db->getSetting($mysqli, "cron_server_ip"));
|
|
|
|
|
|
|
|
// 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
|
|
|
|
2018-01-18 16:57:12 -05:00
|
|
|
if(isset($_COOKIE['user'])&&!isset($_SESSION['user']))
|
2017-11-23 18:09:36 -05:00
|
|
|
{
|
2018-01-18 16:57:12 -05:00
|
|
|
User::restore_session();
|
2017-11-23 18:09:36 -05:00
|
|
|
}
|
2018-01-18 16:57:12 -05:00
|
|
|
|
|
|
|
if (!isset($_SESSION['user']))
|
2018-01-03 08:15:45 -05:00
|
|
|
{
|
2018-01-18 16:57:12 -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
|
|
|
}
|
2020-11-05 08:54:04 -05:00
|
|
|
else
|
2018-01-18 16:57:12 -05:00
|
|
|
{
|
|
|
|
$user = new User($_SESSION['user']);
|
|
|
|
if (!$user->is_active())
|
|
|
|
{
|
|
|
|
User::logout();
|
|
|
|
}
|
2018-01-03 08:15:45 -05:00
|
|
|
|
2018-01-18 16:57:12 -05:00
|
|
|
if (!isset($_GET['do'])){
|
|
|
|
$do = "";
|
|
|
|
}else{
|
|
|
|
$do = $_GET['do'];
|
|
|
|
}
|
2018-01-03 08:15:45 -05:00
|
|
|
|
2018-01-18 16:57:12 -05:00
|
|
|
switch ($do) {
|
|
|
|
case 'change-email':
|
|
|
|
$user = new User($_GET['id']);
|
|
|
|
$user->change_email();
|
|
|
|
case 'user':
|
|
|
|
require_once("user.php");
|
|
|
|
break;
|
2020-11-05 08:54:04 -05:00
|
|
|
|
2018-01-18 16:57:12 -05:00
|
|
|
case 'settings':
|
|
|
|
require_once("settings.php");
|
|
|
|
break;
|
2017-11-23 18:09:36 -05:00
|
|
|
|
2018-01-18 16:57:12 -05:00
|
|
|
case 'new-user':
|
|
|
|
require_once("new-user.php");
|
|
|
|
break;
|
2017-11-23 18:09:36 -05:00
|
|
|
|
2020-11-05 08:54:04 -05:00
|
|
|
case 'new-service':
|
|
|
|
case 'edit-service':
|
|
|
|
require_once('service.php');
|
|
|
|
break;
|
|
|
|
|
|
|
|
case 'new-service-group':
|
|
|
|
case 'edit-service-group':
|
|
|
|
require_once('service-group.php');
|
|
|
|
break;
|
|
|
|
|
|
|
|
case 'options':
|
|
|
|
require_once("options.php");
|
|
|
|
break;
|
|
|
|
|
2020-08-17 10:20:43 -04:00
|
|
|
case 'logout':
|
|
|
|
User::logout();
|
|
|
|
break;
|
2020-08-20 17:42:29 -04:00
|
|
|
|
2018-01-18 16:57:12 -05:00
|
|
|
default:
|
|
|
|
require_once("dashboard.php");
|
|
|
|
break;
|
|
|
|
}
|
2017-11-23 18:09:36 -05:00
|
|
|
|
2018-01-18 16:57:12 -05:00
|
|
|
Template::render_footer(true);
|
|
|
|
}
|
2020-11-05 08:54:04 -05:00
|
|
|
}
|