posts.tx 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. : if ( $can_edit ) {
  2. <script type="text/javascript" src="/scripts/post.js"></script>
  3. : if (!$direct) {
  4. : if ($to) {
  5. : include "jsalert.tx";
  6. : }
  7. <script type="text/javascript" src="/scripts/fgEmojiPicker.js"></script>
  8. <script type="text/javascript">
  9. new FgEmojiPicker({
  10. trigger: ['button.emojiPicker'],
  11. position: ['bottom'],
  12. dir: `/scripts/`,
  13. emit(obj, triggerElement) {
  14. const emoji = obj.emoji;
  15. document.querySelector('textarea').value += emoji;
  16. }
  17. });
  18. </script>
  19. : }
  20. : include "forms/" ~ $post.form;
  21. : }
  22. <script type="text/javascript" src="/scripts/highlight.min.js"></script>
  23. <script>
  24. document.addEventListener("DOMContentLoaded", function(){
  25. hljs.highlightAll();
  26. });
  27. </script>
  28. <span class="title">
  29. : if ( $rss ) {
  30. <a title="RSS" class="rss" href="<: $route :>?format=rss"></a>
  31. <: $category :>:
  32. : }
  33. </span>
  34. : if ( $in_series && $rss ) {
  35. <div class="subhead">
  36. <: $subhead | mark_raw :>
  37. </div>
  38. : }
  39. : if ( $header ) {
  40. <: $header | mark_raw :>
  41. : }
  42. : if (!$style) {
  43. <hr class="divider" />
  44. : }
  45. : for $posts -> $post {
  46. : if ( !$post.form ) {
  47. : next;
  48. : }
  49. : include "forms/" ~ $post.form { post => $post };
  50. : if ($posts.size() > 1 && !$tiled ) {
  51. <hr class="divider" />
  52. : }
  53. <script type="text/javascript">
  54. document.addEventListener("DOMContentLoaded", function(event) {
  55. // Fix post dates to be localized
  56. var e = document.getElementById("<: $post.id :>-<: $post.version :>-time");
  57. if (!e) {
  58. return;
  59. }
  60. var d = new Date(0);
  61. d.setUTCSeconds(e.innerText);
  62. e.innerHTML = "&nbsp;" + d.toDateString();
  63. //Make the version switcher do things
  64. var swit = document.getElementById("<: $post.id :>-<: $post.version :>-version");
  65. if (swit) {
  66. swit.onchange = function (evt) {
  67. this.form.submit();
  68. };
  69. }
  70. });
  71. </script>
  72. : }
  73. : if ( !$direct && ( $rss || $older ) ) {
  74. : include "paginator.tx";
  75. : }
  76. : if ( $footer ) {
  77. <: $footer | mark_raw :>
  78. : }
  79. <script>
  80. document.addEventListener("DOMContentLoaded", function(event) {
  81. var pagin = document.getElementById("paginatorTime");
  82. if (pagin) {
  83. var dracula = new Date(0);
  84. dracula.setUTCSeconds(pagin.innerText);
  85. pagin.innerHTML = "&nbsp;" + dracula.toDateString();
  86. }
  87. });
  88. </script>