public static function staticFile($file, $app = null) { $external = self::$_config->get('staticpath'); $theme = self::$_config->get('theme'); if (!$theme) $theme = 'default'; if ($app == null) { $baseVersion = null; if (! array_key_exists($file, self::$_resources['/'])) { $theme = 'default'; $version = ''; } else { if (!array_key_exists($theme, self::$_resources['/'][$file])) { $theme = 'default'; } if (self::$_resources['/'][$file][$theme][1]) { $baseVersion = self::$_resources['/'][$file]['default'][0]; } $version = self::$_resources['/'][$file][$theme][0]; } if (!$baseVersion) { return self::createStaticPath($file, $version, $theme, $external); } else { return array( self::createStaticPath($file, $baseVersion, 'default', $external), self::createStaticPath($file, $version, $theme, $external) ); } } else { $isPlugin = in_array($app, self::$_config->get('enabled_plugins')); if (!array_key_exists($app, self::$_resources)) { $path = $isPlugin ? self::$_pluginDir : self::$_appdir; $appPath = $path . '/'.$app.'/static/'; self::$_resourceTheme = 'default'; include $appPath.'default/resources.coorg.php'; if ($theme != 'default') { self::$_resourceTheme = $theme; if (file_exists($appPath.$theme.'/resources.coorg.php')) { include $appPath.$theme.'/resources.coorg.php'; } } } if (array_key_exists($file, self::$_resources[$app])) { $versions = self::$_resources[$app][$file]; $defaultVersion = null; if (array_key_exists($theme, $versions)) { $version = self::$_resources[$app][$file][$theme][0]; if (self::$_resources[$app][$file][$theme][1]) { $defaultVersion = self::$_resources[$app][$file]['default'][0]; } } else { $theme = 'default'; $version = self::$_resources[$app][$file][$theme][0]; } } else { throw new Exception('No version specified for '.$file.'::'.$app); } if (!$defaultVersion) { return self::createStaticPath($file, $version, $theme, $external, $app, $isPlugin); } else { return array(self::createStaticPath($file, $defaultVersion, 'default', $external, $app, $isPlugin), self::createStaticPath($file, $version, $theme, $external, $app, $isPlugin)); } } }