View file system/AJAX/php/ajax_count.php

File size: 2.61Kb
<?php  
require ($_SERVER['DOCUMENT_ROOT'].'/system/connections/core.php');

if (ajax() == true && user('ID') > 0 && config('AJAX_COUNT') == 1) {
  
  $time = (config('AJAX_INTERVAL') / 1000) + 1;
  $mess = 0;
  $notif = 0;
  $tape = 0;
  $title = 'none';
  $melody = 'none';
  
  /*
  -----------------
  Уведомления почты
  -----------------
  */
  
  if (config('AJAX_COUNT_MAIL') == 1 || config('AJAX_COUNT_MELODY_MAIL') == 1) {
    
    $mess = db::get_column("SELECT `TID` FROM `MAIL_MESSAGE` WHERE `USER_ID` = ? AND `USER` = ? AND `READ` = '0' AND `TIME` > ? ORDER BY `TIME` DESC LIMIT 1", [user('ID'), user('ID'), (TM - $time)]);
    
    if ($mess > 0) {
      
      $title = (config('AJAX_COUNT_MAIL') == 1 ? lg('Почта').' +'.db::get_column("SELECT COUNT(*) FROM `MAIL_MESSAGE` WHERE `USER_ID` = ? AND `USER` = ? AND `READ` = '0'", [user('ID'), user('ID')]) : 'none');
      $melody = (config('AJAX_COUNT_MELODY_MAIL') == 1 && settings('AJAX_COUNT_MELODY') == 1 ? config('AJAX_COUNT_MELODY') : 'none');
    
    }
    
  }
  
  /*
  -------------------
  Уведомления журнала
  -------------------
  */
  
  if (config('AJAX_COUNT_NOTIFICATION') == 1 || config('AJAX_COUNT_MELODY_NOTIF') == 1) {
    
    $notif = db::get_column("SELECT `ID` FROM `NOTIFICATIONS` WHERE `USER_ID` = ? AND `READ` = '1' AND `TIME` > ? ORDER BY `TIME` DESC LIMIT 1", [user('ID'), (TM - $time)]);
    
    if ($notif > 0) {
      
      $title = (config('AJAX_COUNT_NOTIFICATION') == 1 ? lg('Журнал').' +'.db::get_column("SELECT COUNT(*) FROM `NOTIFICATIONS` WHERE `USER_ID` = ? AND `READ` = '1'", [user('ID')]) : 'none');
      $melody = (config('AJAX_COUNT_MELODY_NOTIF') == 1 && settings('AJAX_COUNT_MELODY') == 1 ? config('AJAX_COUNT_MELODY') : 'none');
    
    }
    
  }
  
  /*
  ---------------
  События в ленте
  ---------------
  */
  
  if (config('AJAX_COUNT_TAPE') == 1 || config('AJAX_COUNT_MELODY_TAPE') == 1) {
    
    $tape = db::get_column("SELECT `ID` FROM `TAPE` WHERE `USER_ID` = ? AND `READ` = '1' AND `TIME` > ? ORDER BY `TIME` DESC LIMIT 1", [user('ID'), (TM - $time)]);
    
    if ($tape > 0) {
      
      $title = (config('AJAX_COUNT_TAPE') == 1 ? lg('Лента').' +'.db::get_column("SELECT COUNT(*) FROM `TAPE` WHERE `USER_ID` = ? AND `READ` = '1'", [user('ID')]) : 'none');
      $melody = (config('AJAX_COUNT_MELODY_TAPE') == 1 && settings('AJAX_COUNT_MELODY') == 1 ? config('AJAX_COUNT_MELODY') : 'none');
    
    }
    
  }
  
  if ($notif == 0 && $mess == 0 && $tape == 0) { exit; }
  
  echo json_encode(array(
    
    'melody' => tabs($melody),
    'title' => tabs($title)
  
  ));
  
}