Вход Регистрация
Файл: controllers/database.php
Строк: 125
<?php

if(file_exists("flatfile.php"))
{    
    if(!
defined('SANTI_NAME'))
    {
        
session_start();

        include(
"../config.php");
    }

    if (!isset(
$_SESSION['auth']))        
        die(
"0");

    include(
"flatfile.php");
}
else
{
    if(!
defined('SANTI_NAME'))
    {
        die(
"0");
    }
    include(
"controllers/flatfile.php");
}

// db files//
define('pilots''auto_pilots.txt');
define('objects''alert_objects.txt');
define('notifiers''notifiers.txt');
//! db files//

// pilots db //
define('AP_ID'0);
define('AP_TYPE'1);
define('AP_NAME'2);
define('AP_DATE'3);
//! pilots db //

// objects db //
define('OBJ_ID'0);
define('OBJ_OBJ'1);
define('OBJ_TYPE'2);
define('OBJ_INFO'3);
define('OBJ_CRITICALITY'4);
define('OBJ_STATUS'5);
define('OBJ_TIME'6);
//! objects db //

// notifiers db //
define('N_ID'0);
define('N_LINK'1);
define('N_TITLE'2);
define('N_DATE'3);
define('N_STATUS'4);
//! notifiers db //

$db = new Flatfile();
$db->datadir SANTI_SERVERPATH.'/'.SANTI_PATH.'/datas/db/';

//обработка AJAX запросов
if(isset($_POST['nd']))
    
notifiers_delete(addslashes(htmlspecialchars(strip_tags(trim($_POST['nd'])))));

if(isset(
$_POST['oi']))
    
objects_ignore(addslashes(htmlspecialchars(strip_tags(trim($_POST['oi'])))));

if(isset(
$_POST['oh']))
    
objects_healed(addslashes(htmlspecialchars(strip_tags(trim($_POST['oh'])))));

if(isset(
$_POST['on']))
    
objects_null(addslashes(htmlspecialchars(strip_tags(trim($_POST['on'])))));

if(isset(
$_POST['uf']))
    
objects_add(htmlspecialchars(strip_tags($_POST['uf'])), 22"добавление файла от утилиты"11);
//обработка AJAX запросов

function objects_add($obj$type$info$criticality$status//добавляем объект
{
    global 
$db;

    
$new_obj[OBJ_ID] = 0;
    
$new_obj[OBJ_OBJ] = $obj;
    
$new_obj[OBJ_TYPE] = $type;
    
$new_obj[OBJ_INFO]  = $info;
    
$new_obj[OBJ_CRITICALITY]  = $criticality;
    
$new_obj[OBJ_STATUS]  = $status;
    
$new_obj[OBJ_TIME]  = time();

    
$newId $db->insertWithAutoId(objectsOBJ_ID$new_obj);

    if(
$type == 22)
        die(
"$newId");
}

function 
objects_get() // получаем все найденные объекты
{
    global 
$db;
    
$allrows $db->selectWhere(objectsNULL, -1, new OrderBy(OBJ_IDDESCENDINGINTEGER_COMPARISON));

    return 
$allrows;
}

function 
objects_null($id//обнуляем статус подозрительного объекта
{
    global 
$db;

    
$db->updateSetWhere(objects, array(OBJ_STATUS => '0'), new SimpleWhereClause(OBJ_ID'='$id));

    die(
1);
}

function 
objects_healed($id//объект вылечен
{
    global 
$db;

    
$db->updateSetWhere(objects, array(OBJ_STATUS => '1'), new SimpleWhereClause(OBJ_ID'='$id));

    die(
1);
}

function 
get_objects_path($id//получаем путь к файлу
{
    global 
$db;

    
$rows $db->selectWhere(objects, new SimpleWhereClause(OBJ_ID'='$id));
    return 
$rows[0][1];
}

function 
objects_ignore($id//добавляем файл в игнорируемые
{
    global 
$db;

    
$db->updateSetWhere(objects, array(OBJ_STATUS => '2'), new SimpleWhereClause(OBJ_ID'='$id));

    die(
1);
}

function 
autopilots_add_time($autotype//помечаем последнее время выполнения скрипта
{
    global 
$db;

    
$nt date('d-m-Y H:i:s',time());
    
$db->updateSetWhere(pilots, array(AP_DATE => $nt), new SimpleWhereClause(AP_TYPE'='$autotype));
}

function 
autopilots_get_time($autotype//получаем последнее время запуска автопилота
{
    global 
$db;

    
$rows $db->selectWhere(pilots, new SimpleWhereClause(AP_TYPE'='$autotype));
    return 
$rows[0][3];
}

function 
notifiers_add($link$title$date$status//добавляем уведомления
{
    global 
$db;

    
$rows $db->selectUnique(notifiersN_LINK$link);

    if(empty(
$rows))
    {
        
$new_not[N_ID] = 0;
        
$new_not[N_LINK] = $link;
        
$new_not[N_TITLE] = $title;
        
$new_not[N_DATE]  = $date;
        
$new_not[N_STATUS]  = 0;

        
$newId $db->insertWithAutoId(notifiersN_ID$new_not);
    }
}

function 
notifiers_get($status 0//получаем уведомления
{
    global 
$db;

    
$rows $db->selectWhere(notifiers, new SimpleWhereClause(N_STATUS'='$status));
    return 
$rows;
}

function 
notifiers_delete($id//убираем из видимых уведомления
{
    global 
$db;

    
$db->updateSetWhere(notifiers, array(N_STATUS => '1'), new SimpleWhereClause(N_ID'='$id));

    die(
1);
}

function 
get_alert_stat($criticality//берем данные для построени графика
{
    global 
$db;

    
$alerts = new AndWhereClause();
    
$alerts->add(new SimpleWhereClause(OBJ_CRITICALITY'='$criticalityINTEGER_COMPARISON));
    
$alerts->add(new SimpleWhereClause(OBJ_TIME'>',  mktime('0','0','0'date("m"), date("d")-'30'date("Y")), INTEGER_COMPARISON));
    
$result $db->selectWhere(objects$alerts);

    
$stat_array = array();
    for(
$i 0$i 30$i++)
    {
        
$stat_array[$i][0] = date('d-m-Y'mktime('0','0','0'date("m"), date("d")-(string)(30 $i), date("Y")));
        
$stat_array[$i][1] = 0;
    }

    foreach (
$result as $stats)
    {
        for(
$ii 0$ii 30$ii++)
            if ((
$stat_array[$ii][0]) == (date('d-m-Y'$stats[6])))
                
$stat_array[$ii][1] = $stat_array[$ii][1] + 1;
    }

    return 
$stat_array;
}

?>
Онлайн: 1
Реклама