= 0)) {
die('Organizr needs PHP Version: ' . $GLOBALS['minimumPHP'] . '
You have PHP Version: ' . PHP_VERSION);
}
// Set GLOBALS from config file
$GLOBALS['userConfigPath'] = dirname(__DIR__, 1) . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'config.php';
$GLOBALS['defaultConfigPath'] = dirname(__DIR__, 1) . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'default.php';
$GLOBALS['currentTime'] = gmdate("Y-m-d\TH:i:s\Z");
// Quick function for plugins
function pluginFiles($type)
{
$files = '';
switch ($type) {
case 'js':
foreach (glob(dirname(__DIR__, 1) . DIRECTORY_SEPARATOR . 'plugins' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . "*.js") as $filename) {
$files .= '';
}
break;
case 'css':
foreach (glob(dirname(__DIR__, 1) . DIRECTORY_SEPARATOR . 'plugins' . DIRECTORY_SEPARATOR . 'css' . DIRECTORY_SEPARATOR . "*.js") as $filename) {
$files .= '';
}
break;
default:
break;
}
return $files;
}
function loadConfigOnce($path = null)
{
$path = ($path) ? $path : $GLOBALS['userConfigPath'];
if (!is_file($path)) {
return null;
} else {
return (array)call_user_func(function () use ($path) {
return include($path);
});
}
}
function favIcons()
{
$favicon = '
';
if (file_exists($GLOBALS['userConfigPath'])) {
$config = loadConfigOnce($GLOBALS['userConfigPath']);
if (isset($config['favIcon'])) {
if ($config['favIcon'] !== '') {
$favicon = $config['favIcon'];
}
}
}
return $favicon;
}
function languagePacks($encode = false)
{
$files = array();
foreach (glob(dirname(__DIR__, 2) . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'langpack' . DIRECTORY_SEPARATOR . "*.json") as $filename) {
if (strpos(basename($filename), '[') !== false) {
$explode = explode('[', basename($filename));
$files[] = array(
'filename' => basename($filename),
'code' => $explode[0],
'language' => matchBrackets(basename($filename))
);
}
}
usort($files, function ($a, $b) {
return $a['language'] <=> $b['language'];
});
return ($encode) ? json_encode($files) : $files;
}
function matchBrackets($text, $brackets = 's')
{
switch ($brackets) {
case 's':
case 'square':
$pattern = '#\[(.*?)\]#';
break;
case 'c':
case 'curly':
$pattern = '#\((.*?)\)#';
break;
default:
return null;
}
preg_match($pattern, $text, $match);
return $match[1];
}