js.php 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <script defer src="/js/main.js?<?= JS_LATEST_UPDATE ?>"></script>
  2. <script defer src="/js/vendor/jquery-3.6.4.min.js?<?= JS_LATEST_UPDATE ?>"></script>
  3. <script defer src="/js/shortcuts.js?<?= JS_LATEST_UPDATE ?>"></script>
  4. <script defer src="/js/events.js?<?= JS_LATEST_UPDATE ?>"></script>
  5. <script defer src="/js/init.js?<?= JS_LATEST_UPDATE ?>"></script>
  6. <script defer src="/js/vendor/alpine-3.10.5.min.js?<?= JS_LATEST_UPDATE ?>"></script>
  7. <script>
  8. // TODO: REMOVE
  9. const App = {
  10. Actions: {
  11. DB: {},
  12. WEB: {},
  13. PACKAGE: {},
  14. MAIL_ACC: {},
  15. MAIL: {},
  16. },
  17. Listeners: {
  18. DB: {},
  19. WEB: {},
  20. PACKAGE: {},
  21. MAIL_ACC: {},
  22. }
  23. }
  24. document.documentElement.classList.replace('no-js', 'js');
  25. document.addEventListener('alpine:init', () => {
  26. Alpine.store('globals', {
  27. FTP_USER_PREFIX: '<?= $user_plain ?>_',
  28. DB_USER_PREFIX: '<?= $user_plain ?>_',
  29. DB_DBNAME_PREFIX: '<?= $user_plain ?>_',
  30. UNLIM_VALUE: 'unlimited',
  31. UNLIM_TRANSLATED_VALUE: '<?= _("unlimited") ?>',
  32. NOTIFICATIONS_EMPTY: '<?= _("no notifications") ?>',
  33. NOTIFICATIONS_DELETE_ALL: '<?= _("Delete all notifications") ?>',
  34. isUnlimitedValue(value) {
  35. return value.trim() == this.UNLIM_VALUE || value.trim() == this.UNLIM_TRANSLATED_VALUE;
  36. }
  37. });
  38. })
  39. </script>
  40. <?php
  41. $customScriptDirectory = new DirectoryIterator($_SERVER["HESTIA"] . "/web/js/custom_scripts");
  42. foreach ($customScriptDirectory as $customScript) {
  43. $extension = $customScript->getExtension();
  44. if ($extension === "js") {
  45. $customScriptPath = "/js/custom_scripts/" . rawurlencode($customScript->getBasename());
  46. echo '<script defer src="' . $customScriptPath . '"></script>';
  47. } elseif ($extension === "php") {
  48. require_once $customScript->getPathname();
  49. }
  50. } ?>