static-globals.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <?php
  2. // ===================================
  3. // Organizr Version
  4. $GLOBALS['installedVersion'] = '2.0.0-beta.100';
  5. // ===================================
  6. // Set GLOBALS from config file
  7. $GLOBALS['userConfigPath'] = dirname(__DIR__, 1) . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'config.php';
  8. $GLOBALS['defaultConfigPath'] = dirname(__DIR__, 1) . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'default.php';
  9. $GLOBALS['currentTime'] = gmdate("Y-m-d\TH:i:s\Z");
  10. // Quick function for plugins
  11. function pluginFiles($type)
  12. {
  13. $files = '';
  14. switch ($type) {
  15. case 'js':
  16. foreach (glob(dirname(__DIR__, 1) . DIRECTORY_SEPARATOR . 'plugins' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . "*.js") as $filename) {
  17. $files .= '<script src="api/plugins/js/' . basename($filename) . '?v=' . $GLOBALS['installedVersion'] . '" defer="true"></script>';
  18. }
  19. break;
  20. case 'css':
  21. foreach (glob(dirname(__DIR__, 1) . DIRECTORY_SEPARATOR . 'plugins' . DIRECTORY_SEPARATOR . 'css' . DIRECTORY_SEPARATOR . "*.js") as $filename) {
  22. $files .= '<link href="api/plugins/css/' . basename($filename) . $GLOBALS['installedVersion'] . '" rel="stylesheet">';
  23. }
  24. break;
  25. default:
  26. break;
  27. }
  28. return $files;
  29. }
  30. function loadConfigOnce($path = null)
  31. {
  32. $path = ($path) ? $path : $GLOBALS['userConfigPath'];
  33. if (!is_file($path)) {
  34. return null;
  35. } else {
  36. return (array)call_user_func(function () use ($path) {
  37. return include($path);
  38. });
  39. }
  40. }
  41. function favIcons()
  42. {
  43. $favicon = '
  44. <link rel="apple-touch-icon" sizes="180x180" href="plugins/images/favicon/apple-touch-icon.png">
  45. <link rel="icon" type="image/png" sizes="32x32" href="plugins/images/favicon/favicon-32x32.png">
  46. <link rel="icon" type="image/png" sizes="16x16" href="plugins/images/favicon/favicon-16x16.png">
  47. <link rel="manifest" href="plugins/images/favicon/site.webmanifest">
  48. <link rel="mask-icon" href="plugins/images/favicon/safari-pinned-tab.svg" color="#5bbad5">
  49. <link rel="shortcut icon" href="plugins/images/favicon/favicon.ico">
  50. <meta name="msapplication-TileColor" content="#da532c">
  51. <meta name="msapplication-TileImage" content="plugins/images/favicon/mstile-144x144.png">
  52. <meta name="msapplication-config" content="plugins/images/favicon/browserconfig.xml">
  53. <meta name="theme-color" content="#ffffff">
  54. ';
  55. if (file_exists($GLOBALS['userConfigPath'])) {
  56. $config = loadConfigOnce($GLOBALS['userConfigPath']);
  57. if (isset($config['favIcon'])) {
  58. if ($config['favIcon'] !== '') {
  59. $favicon = $config['favIcon'];
  60. }
  61. }
  62. }
  63. return $favicon;
  64. }