header.inc.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. // CSS
  3. if (preg_match("/mailbox/i", $_SERVER['REQUEST_URI'])) {
  4. $css_minifier->add('/web/css/site/mailbox.css');
  5. }
  6. if (preg_match("/admin/i", $_SERVER['REQUEST_URI'])) {
  7. $css_minifier->add('/web/css/site/admin.css');
  8. }
  9. if (preg_match("/user/i", $_SERVER['REQUEST_URI'])) {
  10. $css_minifier->add('/web/css/site/user.css');
  11. }
  12. if (preg_match("/edit/i", $_SERVER['REQUEST_URI'])) {
  13. $css_minifier->add('/web/css/site/edit.css');
  14. }
  15. if (preg_match("/(quarantine|qhandler)/i", $_SERVER['REQUEST_URI'])) {
  16. $css_minifier->add('/web/css/site/quarantine.css');
  17. }
  18. if (preg_match("/debug/i", $_SERVER['REQUEST_URI'])) {
  19. $css_minifier->add('/web/css/site/debug.css');
  20. }
  21. if ($_SERVER['REQUEST_URI'] == '/') {
  22. $css_minifier->add('/web/css/site/index.css');
  23. }
  24. $hash = $css_minifier->getDataHash();
  25. $CSSPath = '/tmp/' . $hash . '.css';
  26. if(!file_exists($CSSPath)) {
  27. $css_minifier->minify($CSSPath);
  28. cleanupCSS($hash);
  29. }
  30. $globalVariables = [
  31. 'mailcow_hostname' => getenv('MAILCOW_HOSTNAME'),
  32. 'mailcow_locale' => @$_SESSION['mailcow_locale'],
  33. 'mailcow_cc_role' => @$_SESSION['mailcow_cc_role'],
  34. 'mailcow_cc_username' => @$_SESSION['mailcow_cc_username'],
  35. 'is_master' => preg_match('/y|yes/i', getenv('MASTER')),
  36. 'dual_login' => @$_SESSION['dual-login'],
  37. 'ui_texts' => $UI_TEXTS,
  38. 'css_path' => '/cache/'.basename($CSSPath),
  39. 'logo' => customize('get', 'main_logo'),
  40. 'logo_dark' => customize('get', 'main_logo_dark'),
  41. 'available_languages' => $AVAILABLE_LANGUAGES,
  42. 'lang' => $lang,
  43. 'skip_sogo' => (getenv('SKIP_SOGO') == 'y'),
  44. 'allow_admin_email_login' => (getenv('ALLOW_ADMIN_EMAIL_LOGIN') == 'n'),
  45. 'mailcow_apps' => $MAILCOW_APPS,
  46. 'app_links' => customize('get', 'app_links'),
  47. 'is_root_uri' => (parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH) == '/'),
  48. 'uri' => $_SERVER['REQUEST_URI'],
  49. 'last_login' => last_login('get', $_SESSION['mailcow_cc_username'], 7, 0)['ui']['time']
  50. ];
  51. foreach ($globalVariables as $globalVariableName => $globalVariableValue) {
  52. $twig->addGlobal($globalVariableName, $globalVariableValue);
  53. }