<?php
/**
 * Home Page
 *
 * Displays a list of unread feed items for the current user
 */

include '../start.php';

$db = Data::getConnection();
Security::verifyUser($db);

if (array_key_exists('refresh', $_GET)) {
    $refreshResult = Feed::refreshAll($db);
    if (array_key_exists('ok', $refreshResult)) {
        add_info('All feeds refreshed successfully');
    } else {
        add_error(nl2br($refreshResult['error']));
    }
}

$query = $db->prepare(<<<'SQL'
    SELECT item.id, item.title AS item_title, coalesce(item.updated_on, item.published_on) AS as_of,
           feed.title AS feed_title
      FROM item
           INNER JOIN feed ON feed.id = item.feed_id
     WHERE feed.user_id = :userId 
       AND item.is_read = 0
     ORDER BY coalesce(item.updated_on, item.published_on) DESC
    SQL);
$query->bindValue(':userId', $_SESSION[Key::USER_ID]);
$result = $query->execute();
$item   = $result ? $result->fetchArray(SQLITE3_ASSOC) : false;

page_head('Welcome'); ?>
<h1>Your Unread Items &nbsp; <a href=/?refresh><small><small><em>(Refresh All Feeds)</em></small></small></a></h1>
<article><?php
if ($item) {
    while ($item) { ?>
        <p><a href=/item?id=<?=$item['id']?>><?=strip_tags($item['item_title'])?></a><br>
            <?=htmlentities($item['feed_title'])?><br><small><em><?=date_time($item['as_of'])?></em></small><?php
        $item = $result->fetchArray(SQLITE3_ASSOC);
    }
} else { ?>
    <p>There are no unread items</p><?php
} ?>
</article><?php

page_foot();
$db->close();