_layout.jet.html 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="description" content="View this page on PixivFE." />
  6. <meta name="viewport" content="width=device-width, initial-scale=1" />
  7. {{ title := "" }} {{ if isset(Title) }} {{ title = Title }} {{ else }} {{
  8. title = "PixivFE" }} {{ end }}
  9. <title>{{ title }} - PixivFE</title>
  10. <link href="/css/style.css" rel="stylesheet" />
  11. <meta name="htmx-config" content='{"includeIndicatorStyles":false}'>
  12. <script src="/js/htmx@1.9.10.min.js"
  13. integrity="sha384-D1Kt99CQMDuVetoL1lrYwg5t+9QdHe7NLX/SoJYkXDFfX37iInKRy5xLSi8nO7UC"></script>
  14. <meta property="og:title" content="{{ title }}" />
  15. <meta property="og:url" content="{{ PageURL }}" />
  16. <meta property="og:site_name" content="PixivFE" />
  17. <meta property="og:type" content="article" />
  18. <meta content="summary_large_image" name="twitter:card" />
  19. {{ if isset(MetaAuthor) }}
  20. <link rel="alternate" type="application/json+oembed"
  21. href="{{ BaseURL }}/oembed?a={{ MetaAuthor }}&u={{ BaseURL }}/users/{{ MetaAuthorID }}">
  22. {{else}}
  23. <link rel="alternate" type="application/json+oembed" href="{{ BaseURL }}/oembed">
  24. {{end}}
  25. {{ if isset(MetaDescription) }}
  26. <meta property="og:description" content="{{MetaDescription}}" />
  27. {{end}}
  28. {{ if isset(MetaDescription) }}
  29. <meta property="og:image" content="{{ MetaImage }}" />
  30. {{ end }}
  31. </head>
  32. <body data-hx-boost="true" data-hx-swap="outerHTML" data-hx-target="main" data-hx-select="main"
  33. data-hx-indicator="#loading-indicator">
  34. <div id="loading-indicator"></div>
  35. <nav>
  36. <div class="navigation-wrapper">
  37. <span class="navbar-entry">
  38. <span class="sidebar-container">
  39. <input type="checkbox" class="sidebar-toggler" id="sidebar-toggler" />
  40. <label for="sidebar-toggler" class="sidebar-label">
  41. <img src="/assets/menu-thin.png" alt="Menu" width="30" height="30" />
  42. </label>
  43. <div class="sidebar">
  44. <ul class="sidebar-list">
  45. <a class="sidebar-item" href="/discovery">
  46. <img src="/assets/compass.png" alt="compass" />Discovery</a>
  47. <a class="sidebar-item" href="/ranking">
  48. <img src="/assets/crown.png" alt="crown" />Ranking</a>
  49. <a class="sidebar-item" href="/rankingCalendar">
  50. <img src="/assets/calendar.png" alt="calendar" />Ranking history</a>
  51. <a class="sidebar-item" href="/newest">
  52. <img src="/assets/sparkling.png" alt="sparkling" />Newest</a>
  53. <br />
  54. <a class="sidebar-item" href="/self/followingWorks">
  55. <img src="/assets/users.png" alt="users" />Latest by followed</a>
  56. <a class="sidebar-item" href="/self/bookmarks">
  57. <img src="/assets/heart.png" alt="heart" />Your bookmarks</a>
  58. <a class="sidebar-item" href="/self">
  59. <img src="/assets/user.png" alt="user" />Your profile</a>
  60. <br />
  61. <a class="sidebar-item" href="/settings">
  62. <img src="/assets/settings.png" alt="settings" />Settings</a>
  63. <a class="sidebar-item" href="/about">
  64. <img src="/assets/about.svg" alt="about" />About</a>
  65. <br />
  66. <a class="sidebar-item" href="https://codeberg.org/vnpower/pixivfe">
  67. <img src="/assets/globe.png" alt="globe" />Source code</a>
  68. </ul>
  69. </div>
  70. </span>
  71. <a class="navbar-brand" href="/">
  72. <img src="/assets/favicon.ico" alt="PixivFE icon" />
  73. <span>PixivFE</span>
  74. </a>
  75. </span>
  76. <span class="navbar-entry">
  77. <form action="/tags" method="post" class="search-form" autocomplete="off">
  78. <input type="text" name="name" required="true" class="search-form-text" placeholder="⌕ Search artworks..." />
  79. <label class="navbar-entry"><img src="/assets/search.svg" alt="Search" /><input type="submit"
  80. hidden /></label>
  81. </form>
  82. </span>
  83. <a class="navbar-entry" href="/settings">
  84. <img src="/assets/cog.svg" alt="Settings" />
  85. </a>
  86. </div>
  87. <div class="navbar-shadow"></div>
  88. </nav>
  89. <script src="/js/on-page-load.js"></script>
  90. <main>
  91. {{ embed() }}
  92. </main>
  93. </body>
  94. </html>