overview.php 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. <?php
  2. /**
  3. * Insipid
  4. * Personal web-bookmark-system
  5. *
  6. * Copyright 2016-2019 Johannes Keßler
  7. *
  8. * Development starting from 2011: Johannes Keßler
  9. * https://www.bananas-playground.net/projekt/insipid/
  10. *
  11. * creator:
  12. * Luke Reeves <luke@neuro-tech.net>
  13. *
  14. * This program is free software: you can redistribute it and/or modify
  15. * it under the terms of the GNU General Public License as published by
  16. * the Free Software Foundation, either version 3 of the License, or
  17. * (at your option) any later version.
  18. *
  19. * This program is distributed in the hope that it will be useful,
  20. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  21. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  22. * GNU General Public License for more details.
  23. *
  24. * You should have received a copy of the GNU General Public License
  25. * along with this program. If not, see http://www.gnu.org/licenses/gpl-3.0.
  26. *
  27. */
  28. ?>
  29. <section class="section">
  30. <div class="columns">
  31. <div class="column">
  32. <p class="has-text-right">
  33. <a href="index.php?p=overview&m=tag" title="all tags" class="button">
  34. <span class="icon"><i class="ion-md-pricetags"></i></span>
  35. </a>
  36. <a href="index.php?p=overview&m=category" title="all categories" class="button">
  37. <span class="icon"><i class="ion-md-filing"></i></span>
  38. </a>
  39. <a href="index.php" title="... back to home" class="button">
  40. <span class="icon"><i class="ion-md-home"></i></span>
  41. </a>
  42. </p>
  43. </div>
  44. </div>
  45. <div class="columns">
  46. <div class="column">
  47. <?php if(!empty($subHeadline)) { ?>
  48. <h2 class="is-size-2"><?php echo $subHeadline; ?></h2>
  49. <?php } ?>
  50. </div>
  51. </div>
  52. <?php if($pagination['pages'] > 1) { ?>
  53. <nav class="pagination is-centered" role="navigation" aria-label="pagination">
  54. <?php if($pagination['curPage'] > 1) {
  55. echo '<a href="index.php?p=overview'.$pagination['linkadd'].'&page='.($pagination['curPage']-1).'"
  56. class="pagination-previous">Previous</a>';
  57. }
  58. if($pagination['curPage'] < $pagination['pages']) {
  59. echo '<a href="index.php?p=overview'.$pagination['linkadd'].'&page='.($pagination['curPage']+1).'"
  60. class="pagination-next">Next</a>';
  61. }
  62. ?>
  63. <ul class="pagination-list">
  64. <?php
  65. $ellipsisShown = 0;
  66. for($i=1;$i<=$pagination['pages'];$i++) {
  67. $active = '';
  68. if($i == $pagination['curPage']) $active = 'is-current';
  69. if(in_array($i,$pagination['visibleRange'])) {
  70. echo '<li><a href="index.php?p=overview' . $pagination['linkadd'] . '&page=' . $i . '"
  71. class="pagination-link ' . $active . '"
  72. aria-label="Goto page ' . $i . '">' . $i . '</a></li>';
  73. }
  74. else {
  75. if($i < $pagination['currentRangeStart'] && $ellipsisShown == 0) {
  76. echo '<li><span class="pagination-ellipsis">&hellip;</span></li>';
  77. $ellipsisShown = 1;
  78. }
  79. if($i > $pagination['currentRangeEnd'] && ($ellipsisShown == 0 || $ellipsisShown == 1)) {
  80. echo '<li><span class="pagination-ellipsis">&hellip;</span></li>';
  81. $ellipsisShown = 2;
  82. }
  83. }
  84. }
  85. ?>
  86. </ul>
  87. </nav>
  88. <?php } ?>
  89. </section>
  90. <section class="section">
  91. <?php if(!empty($linkCollection['results'])) { ?>
  92. <div class="columns is-multiline">
  93. <?php foreach ($linkCollection['results'] as $link) { ?>
  94. <div class="column is-one-quarter">
  95. <div class="card">
  96. <div class="card-image">
  97. <figure class="image is-4by3">
  98. <a href="<?php echo $link['link']; ?>" target="_blank">
  99. <?php if(!empty($link['image'])) { ?>
  100. <img class="linkthumbnail" src= "<?php echo $link['imageToShow']; ?>">
  101. <?php } else { ?>
  102. <img class="" src= "asset/img/no-link-picture.png">
  103. <?php } ?>
  104. </a>
  105. </figure>
  106. </div>
  107. <div class="card-content">
  108. <div class="content">
  109. <h4><a href="<?php echo $link['link']; ?>" target="_blank"><?php echo $link['title']; ?></a></h4>
  110. <p><?php echo $link['description']; ?></p>
  111. </div>
  112. </div>
  113. <footer class="card-footer">
  114. <a href="<?php echo $link['link']; ?>" target="_blank" class="card-footer-item">Visit link</a>
  115. <?php if($isAwm === true) { ?>
  116. <a href="index.php?p=editlink&id=<?php echo $link['hash']; ?>&awm=1" class="card-footer-item">Edit</a>
  117. <?php } else { ?>
  118. <a href="index.php?p=linkinfo&id=<?php echo $link['hash']; ?>" class="card-footer-item">More details</a>
  119. <?php } ?>
  120. </footer>
  121. </div>
  122. </div>
  123. <?php } ?>
  124. </div>
  125. <?php } if(!empty($tagCollection)) { ?>
  126. <div class="columns">
  127. <div class="column">
  128. <table class="table">
  129. <tr>
  130. <th>Name</th>
  131. <th># of links</th>
  132. </tr>
  133. <?php foreach ($tagCollection as $k=>$v) { ?>
  134. <tr>
  135. <td><a href="index.php?p=overview&m=tag&id=<?php echo urlencode($k); ?>"><?php echo $v['name']; ?></a></td>
  136. <td><?php echo $v['amount']; ?></td>
  137. </tr>
  138. <?php } ?>
  139. </table>
  140. </div>
  141. <?php if($displayEditButton === true) { ?>
  142. <div class="column">
  143. <div class="content">
  144. <a href="index.php?p=edittags" class="button is-small is-danger">
  145. <span class="icon"><i class="ion-md-create"></i></span>
  146. <span>Edit tags</span>
  147. </a>
  148. </div>
  149. </div>
  150. <?php } ?>
  151. </div>
  152. <?php } if(!empty($categoryCollection)) { ?>
  153. <div class="columns">
  154. <div class="column">
  155. <table class="table">
  156. <tr>
  157. <th>Name</th>
  158. <th># of links</th>
  159. </tr>
  160. <?php foreach ($categoryCollection as $k=>$v) { ?>
  161. <tr>
  162. <td><a href="index.php?p=overview&m=category&id=<?php echo urlencode($k); ?>"><?php echo $v['name']; ?></a></td>
  163. <td><?php echo $v['amount']; ?></td>
  164. </tr>
  165. <?php } ?>
  166. </table>
  167. </div>
  168. <?php if($displayEditButton === true) { ?>
  169. <div class="column">
  170. <div class="content">
  171. <a href="index.php?p=editcategories" class="button is-small is-danger">
  172. <span class="icon"><i class="ion-md-create"></i></span>
  173. <span>Edit categories</span>
  174. </a>
  175. </div>
  176. </div>
  177. <?php } ?>
  178. </div>
  179. <?php } ?>
  180. </section>