public function index() { if (!is_file(APP_PATH . "/Data/install.lock")) { // $this->display("install"); return; } $this->assign("isDebug", APP_DEBUG ? 'true' : 'false'); $this->assign("APP_DEBUG", APP_DEBUG); $this->assign("siteTitle", DBC("site.title")); $loadedApps = F("loadedApp"); $loadedApps = array_merge($loadedApps, getPrimaryApps(true)); unset($loadedApps["install"]); $this->assign("loadedAppsStr", json_encode($loadedApps)); //静态资源 import("@.ORG.staticRuntime"); $runtime = new FrontEndRuntime($loadedApps); if (!APP_DEBUG) { $javascripts = array(U('FrontendRuntime/read?compileJS=compile.js')); } else { $javascripts = $runtime->getJavascripts(); } $javascripts[] = U('FrontendRuntime/read?js=common/base/app.js'); $this->assign("javascripts", $javascripts); if ($this->isLogin()) { $this->assign("APP_PATH", str_replace("index.php", "", __APP__)); $this->assign("userInfo", json_encode($this->user)); $this->display("app"); } else { $this->display("login"); } }
public function echoJS($file) { header("Content-Type:application/javascript;charset=utf-8"); $find = array("'[ones.requirements.placeholder]'"); // foreach($this->loadedApps as $app) { // $loadedApps[] = "ones.".$app; // } $loadedApps = array_merge(getPrimaryApps(), $this->loadedApps); foreach ($loadedApps as $k => $v) { if ($v == "install") { unset($loadedApps[$k]); break; } } $replace = array(sprintf("'ones.%s'", implode("','ones.", $loadedApps))); $file = ROOT_PATH . "/" . $file; if (is_file($file)) { echo $this->doTrim(str_replace($find, $replace, file_get_contents($file))); } }
public function __construct() { //检测是否安装 if (!$_REQUEST["installing"] && !is_file(ENTRY_PATH . "/Data/install.lock")) { header("Location:install.html"); return; } parent::__construct(); import("@.ORG.Auth"); $this->user = $_SESSION["user"]; $appConfCombined = $this->getAppConfig(); //缓存数据 F("appConfCombined", $appConfCombined); F("appConf", $this->appsConf); F("loadedApp", $this->loadedApp); //自动加载路径 foreach ($this->loadedApp as $app => $version) { $autoloadPath[] = sprintf("%s/apps/%s/backend", ROOT_PATH, $app); $autoloadPath[] = sprintf("%s/apps/%s/backend/Action", ROOT_PATH, $app); $autoloadPath[] = sprintf("%s/apps/%s/backend/Model", ROOT_PATH, $app); $autoloadPath[] = sprintf("%s/apps/%s/backend/Lib", ROOT_PATH, $app); $autoloadPath[] = sprintf("%s/apps/%s/backend/Behavior", ROOT_PATH, $app); } $this->primaryApps = getPrimaryApps(); foreach ($this->primaryApps as $app) { $autoloadPath[] = sprintf("%s/common/apps/%s/backend", ROOT_PATH, $app); $autoloadPath[] = sprintf("%s/common/apps/%s/backend/Action", ROOT_PATH, $app); $autoloadPath[] = sprintf("%s/common/apps/%s/backend/Model", ROOT_PATH, $app); $autoloadPath[] = sprintf("%s/common/apps/%s/backend/Lib", ROOT_PATH, $app); $autoloadPath[] = sprintf("%s/common/apps/%s/backend/Behavior", ROOT_PATH, $app); } C("APP_AUTOLOAD_PATH", C("APP_AUTOLOAD_PATH") . "," . implode(",", $autoloadPath)); //CURD权限检测 $this->checkPermission(); tag("action_end_init"); }
function isPrimaryApp($app) { return in_array($app, getPrimaryApps()); }