<?php
/**
 * Created by PhpStorm.
 * User: Serezha Kalitin
 * Date: 06.12.2018
 * Time: 17:02
 */

if (!isset($user['id'])) {
    header("Location: /index.php");
    exit;
}
 
$title = $l = "Новости"; #Тайтл
$lBack = profile :: getLink($user); //Ссылка на профиль
require (CORE."head.php"); // Шапка

//Переключатель
$type = (isset($_GET['type']) ? $_GET['type'] : 'all'); 
//Не ясно зачем ,но возможно пригодиться
$usid = $user['id'];
//Пагинация
$PageNumLimit = 10;
//Название ссылок
$typeData = [
	'all',
	'notes',
	'groups',
	'photos'
];
//Если в массиве нету такого значения сбрасываем на -> all
if (!in_array($type, $typeData)) {
	$type = 'all';
}
if (isset($_GET['del'])) {
	DB:: $pdo->query("DELETE FROM `events` WHERE `key` = ? AND `id_user` = ?  LIMIT 1;", array($_GET['del'] ,$usid));
	system::redirect("Успешно", "?type={$type}");
}
if (isset($_GET['delall'])) {
	DB:: $pdo->query("DELETE FROM `events` WHERE `id_user` = ?;", array($usid));
	system::redirect("Успешно", "?");
}
DB:: $pdo->query("UPDATE `events` SET `act` = '1' WHERE `id_user` = ? LIMIT 1;", array($usid));
#------------------------------#
$hfile = ROOT.'system/cron_news.json';
if (@filectime($hfile) < time() - 86400) {
	@unlink($hfile);
}
if (!file_exists($hfile)) {
	$query = DB::$pdo->query("SELECT * FROM `events` where `date_create` < '".(time() - (86400 * 30))."' ORDER BY `id` DESC LIMIT 999");
	while($p = $query->fetch())	{
		DB:: $pdo->query("DELETE FROM `events` WHERE `id` = '" . $p['id'] . "'");
	}
	$zod = ['time' => time()];
	file_put_contents($hfile, json_encode($zod, true));
}	
#------------------------------#
?>
<div class="app-block"><div class="list">
    <div class="sw-block_">
        <div class="sw-cont sw-4">
            <div class="sw-item"><a href="?type=all" class="sw-c <?=($type == 'all' ? 'sw-act ' : false)?>">Все</a>
            </div>
              <div class="sw-item"><a href="?type=notes" class="sw-c <?=($type == 'notes' ? 'sw-act ' : false)?>">Записи</a>
            </div>
              <div class="sw-item"><a href="?type=groups" class="sw-c <?=($type == 'groups' ? 'sw-act ' : false)?>">Группы</a>
            </div>
             <div class="sw-item"><a href="?type=photos" class="sw-c <?=($type == 'photos' ? 'sw-act ' : false)?>">Фото</a>
            </div>
        </div>
    </div>
    

</div>
<div class="list _lh-n _l-padd ">
	<a href="?delall" class="action-btn _dbl _center">Удалить все записи</a>
</div>
<?

$SqlType = "`type` = '{$type}' AND";
if ($type == 'all') {
	$SqlType = false;
}
//Выводим обновленные и новые одним запросом (ссылкой) 
if ($type == 'photos') {
	$SqlType = "`type` LIKE '%photos%'  AND";
}
$total = DB::$pdo -> querySingle("SELECT COUNT(*) FROM `events` where {$SqlType} `id_user` = ". $usid);
if ($total == 0) {
?>
<div class="list _center _gray _font-s">Новостная лента пуста.<br />Подпишитесь на группы, добавьте друзей и получайте новости от них!</div>
<?
} else {
    if ($total > $PageNumLimit) {
        $p = (($_GET['p']) ? intval($_GET['p']) : 1);
        $pagination = new pagination($PageNumLimit, $total, $p);
        $total_lin = $pagination -> limit;
    } else {
        $total_lin = '';
    }
	
	$query = DB::$pdo->query("SELECT * FROM `events` where {$SqlType} `id_user` = '{$usid}' ORDER BY `id` DESC  ". $total_lin);
	while($p = $query->fetch())
	{
		$file = MODULE."news/inc/{$p['type']}.php";
		if (file_exists($file)) {
			include $file;
		}
	}
    if ($total > $PageNumLimit) {
        echo $pagination->printPages("/news?type={$type}&"); 
    }
}
require (CORE."foot.php"); //Низ
exit;