header.ejs 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. <header class="header">
  2. <div class="header-left">
  3. <div class="mobi-only dropdown">
  4. <svg class="dropbtn" style="margin-right: 5px;" width="24px" height="24px" viewBox="0 0 24 24" fill="none"
  5. xmlns="http://www.w3.org/2000/svg">
  6. <path opacity="0.5" d="M21 6L3 6" stroke="#1C274C" stroke-width="2.0" stroke-linecap="round" />
  7. <path opacity="0.5" d="M21 10L3 10" stroke="#1C274C" stroke-width="2.0" stroke-linecap="round" />
  8. <path opacity="0.5" d="M10 14H3" stroke="#1C274C" stroke-width="2.0" stroke-linecap="round" />
  9. <path opacity="0.5" d="M10 18H3" stroke="#1C274C" stroke-width="2.0" stroke-linecap="round" />
  10. <path d="M14 15L17.5 18L21 15" stroke="#1C274C" stroke-width="2.5" stroke-linecap="round"
  11. stroke-linejoin="round" />
  12. </svg>
  13. <div class="dropdown-home-content">
  14. <a href="/<%= lang %>" class="<%= uri == `/${lang}` ? 'selected' : '' %>">
  15. <%= translate.homePage[lang] %>
  16. </a>
  17. <a href="/<%= lang %>/gallery" class="<%= uri.includes(`/${lang}/gallery`) ? 'selected' : '' %>">
  18. <%= translate.gallery[lang] %>
  19. </a>
  20. <a href="/<%= lang %>/videos" class="<%= uri.includes(`/${lang}/videos`) ? 'selected' : '' %>">
  21. <%= translate.videoPage[lang] %>
  22. </a>
  23. <!-- <a href="/<%= lang %>/category/latest" class="<%= uri.includes(`/${lang}/category`) ? 'selected' : '' %>">
  24. <%= translate.categoryPage[lang] %>
  25. </a> -->
  26. <a href="/<%= lang %>/tag" class="<%= uri.includes(`/${lang}/tag`) ? 'selected' : '' %>">
  27. <%= translate.coloringPageCategories[lang] %>
  28. </a>
  29. <a href="/<%= lang %>/albums" class="<%= uri.includes(`/${lang}/albums`) ? 'selected' : '' %>">
  30. <%= translate.album[lang] %>
  31. </a>
  32. <a href="/<%= lang %>/special" class="<%= uri.includes(`/${lang}/special`) ? 'selected' : '' %>">
  33. <%= translate.special[lang] %>
  34. </a>
  35. <a href="/<%= lang %>/artists" class="<%= uri.includes(`/${lang}/artist`) ? 'selected' : '' %>">
  36. <%= translate.coloringPageArtists[lang] %>
  37. </a>
  38. <div class="divider"></div>
  39. <!--
  40. <a href="/<%= lang %>/my-works"><%= translate.my[lang] %></a>
  41. <div class="divider"></div>
  42. -->
  43. <a href="/<%= lang %>/info#app" target="_blank"
  44. class="<%= uri.includes(`/${lang}/info#app`) ? 'selected' : '' %>">
  45. <%= translate.app[lang] %>
  46. </a>
  47. <a href="/<%= lang %>/info#about" target="_blank"
  48. class="<%= uri.includes(`/${lang}/info#about`) ? 'selected' : '' %>">
  49. <%= translate.about[lang] %>
  50. </a>
  51. <a href="/<%= lang %>/info#contact" target="_blank"
  52. class="<%= uri.includes(`/${lang}/info#contact`) ? 'selected' : '' %>">
  53. <%= translate.contactUs[lang] %>
  54. </a>
  55. <a href="/policy.html" target="_blank">
  56. <%= translate.policy[lang] %>
  57. </a>
  58. <div class="divider"></div>
  59. <p class="copyright">Copyright &copy; 2025 Art Color All Rights Reserved</p>
  60. </div>
  61. </div>
  62. <!-- <a href="/<%= lang %>"><img src="/assets/svg/logo.svg" , alt="Art Color"></a> -->
  63. <a href="/<%= lang %>"><img src="/assets/icon/icon.webp" , class="logo" , width="42px" height="42px"
  64. alt="Art Color Logo"></a>
  65. <a href="/<%= lang %>"><img src="/assets/svg/logo.svg" , width="160px" height="60px" alt="Art Color"></a>
  66. </div>
  67. <div class="header-center">
  68. <div class="menu">
  69. <div>
  70. <span>
  71. <%= translate.COLORINGPAGES[lang] %>
  72. </span>
  73. <span><svg class="ast-arrow-svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
  74. version="1.1" x="0px" y="0px" width="15px" height="10px" viewBox="57 35.171 26 16.043"
  75. enable-background="new 57 35.171 26 16.043" xml:space="preserve">
  76. <path d="M57.5,38.193l12.5,12.5l12.5-12.5l-2.5-2.5l-10,10l-10-10L57.5,38.193z"></path>
  77. </svg></span>
  78. </div>
  79. <div class="pc-dropdown-content">
  80. <a href="/<%= lang %>" class="<%= uri == `/${lang}` ? 'selected' : '' %>">
  81. <%= translate.homePage[lang] %>
  82. </a>
  83. <a href="/<%= lang %>/gallery" class="<%= uri.includes(`/${lang}/gallery`) ? 'selected' : '' %>">
  84. <%= translate.gallery[lang] %>
  85. </a>
  86. <a href="/<%= lang %>/videos" class="<%= uri.includes(`/${lang}/videos`) ? 'selected' : '' %>">
  87. <%= translate.videoPage[lang] %>
  88. </a>
  89. <a href="/<%= lang %>/tag" class="<%= uri.includes(`/${lang}/tag`) ? 'selected' : '' %>">
  90. <%= translate.coloringPageCategories[lang] %>
  91. </a>
  92. <a href="/<%= lang %>/albums" class="<%= uri.includes(`/${lang}/albums`) ? 'selected' : '' %>">
  93. <%= translate.album[lang] %>
  94. </a>
  95. <a href="/<%= lang %>/special" class="<%= uri.includes(`/${lang}/special`) ? 'selected' : '' %>">
  96. <%= translate.special[lang] %>
  97. </a>
  98. <a href="/<%= lang %>/artists" class="<%= uri.includes(`/${lang}/artist`) ? 'selected' : '' %>">
  99. <%= translate.coloringPageArtists[lang] %>
  100. </a>
  101. </div>
  102. </div>
  103. <div class="menu">
  104. <%= translate.TOOLSTRICKS[lang] %>
  105. </div>
  106. <a class="menu" href="/<%= lang %>/info#app">
  107. <%= translate.app[lang] %>
  108. </a>
  109. <div class="search-container">
  110. <form action="/<%= lang %>/search" method="GET" class="search-box">
  111. <input type="text" name="search" placeholder="Search...">
  112. <button type="submit">
  113. <svg fill="#000000" width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
  114. <path
  115. d="M12.027 9.92L16 13.95 14 16l-4.075-3.976A6.465 6.465 0 0 1 6.5 13C2.91 13 0 10.083 0 6.5 0 2.91 2.917 0 6.5 0 10.09 0 13 2.917 13 6.5a6.463 6.463 0 0 1-.973 3.42zM1.997 6.452c0 2.48 2.014 4.5 4.5 4.5 2.48 0 4.5-2.015 4.5-4.5 0-2.48-2.015-4.5-4.5-4.5-2.48 0-4.5 2.014-4.5 4.5z"
  116. fill-rule="evenodd" />
  117. </svg>
  118. </button>
  119. </form>
  120. </div>
  121. </div>
  122. <div class="header-right">
  123. <div class="dropdown">
  124. <svg class="dropbtn" width="24px" height="24px" viewBox="0 0 24 24" role="img" xmlns="http://www.w3.org/2000/svg"
  125. aria-labelledby="languageIconTitle" stroke="#000000" stroke-width="1.5" stroke-linecap="round"
  126. stroke-linejoin="round" fill="none" color="#000000">
  127. <title id="languageIconTitle">Language</title>
  128. <circle cx="12" cy="12" r="10" />
  129. <path stroke-linecap="round"
  130. d="M12,22 C14.6666667,19.5757576 16,16.2424242 16,12 C16,7.75757576 14.6666667,4.42424242 12,2 C9.33333333,4.42424242 8,7.75757576 8,12 C8,16.2424242 9.33333333,19.5757576 12,22 Z" />
  131. <path stroke-linecap="round" d="M2.5 9L21.5 9M2.5 15L21.5 15" />
  132. </svg>
  133. <div class="dropdown-content">
  134. <% languages.forEach(lg=> { %>
  135. <a href="<%=`/${lg.code}${uri.substring(3)}` %>" class="<%= lg.code == lang ? 'selected' : '' %>"
  136. style="font-size: 16px">
  137. <%= lg.title %>
  138. </a>
  139. <% }); %>
  140. </div>
  141. <!-- <div class="dropdown-content">
  142. <form id="languageForm" action="/set-lang" method="post">
  143. <select name="lang" onchange="submitLanguageForm()">
  144. <% languages.forEach(lg=> { %>
  145. <option value="<%= lg.code %>" <%=lg.code==lang ? 'selected' : '' %> >
  146. <%= lg.title %>
  147. </option>
  148. <% }); %>
  149. </select>
  150. <input type="hidden" name="uri" value="<%= uri%>">
  151. </form>
  152. </div> -->
  153. </div>
  154. <!-- <a href="/<%= lang %>/app" class="header-right-btn"><%= translate.app[lang] %></a>-->
  155. <a href="/<%= lang %>/myworks" class="header-right-btn">
  156. <%= translate.my[lang] %>
  157. </a>
  158. </div>
  159. </header>
  160. <script>
  161. // 当用户选择语言时提交表单
  162. function submitLanguageForm() {
  163. document.getElementById('languageForm').submit();
  164. }
  165. </script>