idle.phtml 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?php
  2. declare(strict_types=1);
  3. /** @var FreshRSS_ViewStats $this */
  4. $this->partial('aside_subscription');
  5. ?>
  6. <main class="post">
  7. <h1><?= _t('admin.stats.idle') ?></h1>
  8. <?php
  9. $current_url = Minz_Url::display(
  10. ['c' => 'stats', 'a' => 'idle'],
  11. 'php', true
  12. );
  13. $nothing = true;
  14. foreach ($this->idleFeeds as $period => $feedsInPeriod) {
  15. if (!empty($feedsInPeriod)) {
  16. $nothing = false;
  17. ?>
  18. <div class="box">
  19. <div class="box-title"><h2><?= _t('gen.date.' . $period) ?></h2></div>
  20. <ul class="box-content scrollbar-thin">
  21. <?php
  22. foreach ($feedsInPeriod as $feedInPeriod) {
  23. $feed = $this->feeds[$feedInPeriod['id']] ?? null;
  24. $error_class = '';
  25. $error_title = '';
  26. if ($feed === null || $feed->inError()) {
  27. $error_class = ' error';
  28. $error_title = _t('sub.feed.error');
  29. }
  30. $empty_class = '';
  31. $empty_title = '';
  32. if ($feed !== null && $feed->nbEntries() == 0) {
  33. $empty_class = ' empty';
  34. $empty_title = _t('sub.feed.empty');
  35. }
  36. $mute_class = ($feed !== null && $feed->mute()) ? ' mute' : '';
  37. ?>
  38. <li class="item feed<?= $error_class, $empty_class, $mute_class ?>" title="<?= $error_title, $empty_title ?>">
  39. <a class="configure open-slider" href="<?= _url('stats', 'feed', 'id', $feedInPeriod['id'], 'sub', 'idle') ?>" title="<?= _t('gen.action.manage') ?>"><?= _i('configure') ?></a><?php
  40. if (FreshRSS_Context::userConf()->show_favicons): ?><img class="favicon" src="<?= $feedInPeriod['favicon'] ?>" alt="✇" loading="lazy" /><?php
  41. endif; ?><span title="<?= timestamptodate((int)($feedInPeriod['last_date']), false) ?>"><?= $feedInPeriod['name'] ?>
  42. (<?= _t('admin.stats.number_entries', $feedInPeriod['nb_articles']) ?>)</span>
  43. </li>
  44. <?php } ?>
  45. </ul>
  46. </div>
  47. <?php
  48. }
  49. }
  50. if ($nothing) {
  51. ?>
  52. <p class="alert alert-warn">
  53. <span class="alert-head"><?= _t('admin.stats.no_idle') ?></span>
  54. </p>
  55. <?php } ?>
  56. </main>
  57. <?php $class = isset($this->feed) ? ' active' : ''; ?>
  58. <aside id="slider" class="<?= $class ?>">
  59. <a class="toggle_aside" href="#close"><img class="icon" src="../themes/icons/close.svg" loading="lazy" alt="❌"></a>
  60. <div id="slider-content">
  61. <?php
  62. if (isset($this->feed)) {
  63. $this->renderHelper('feed/update');
  64. }
  65. ?>
  66. </div>
  67. </aside>
  68. <a href="#" id="close-slider" class="<?= $class ?>">
  69. <?= _i('close') ?>
  70. </a>