mirror of
https://git.code.sf.net/p/seeddms/code
synced 2025-11-28 02:20:41 +00:00
rename $extMgr to $extmgr, all global vars can be passed to factory
This commit is contained in:
parent
d15c65f137
commit
b6bdae551c
|
|
@ -30,14 +30,19 @@ class Controller {
|
|||
* @return object an object of a class implementing the view
|
||||
*/
|
||||
static function factory($class, $params=array()) { /* {{{ */
|
||||
global $settings, $session, $extMgr, $request, $logger, $notifier;
|
||||
foreach(['settings', 'session', 'extmgr', 'request', 'logger', 'notifier', 'fulltextservice'] as $vn) {
|
||||
if(isset($params[$vn]))
|
||||
${$vn} = $params[$vn];
|
||||
else
|
||||
${$vn} = $GLOBALS[$vn] ?? null;
|
||||
}
|
||||
if(!$class) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$classname = "SeedDMS_Controller_".$class;
|
||||
$filename = '';
|
||||
foreach($extMgr->getExtensionConfiguration() as $extname=>$extconf) {
|
||||
foreach($extmgr->getExtensionConfiguration() as $extname=>$extconf) {
|
||||
$filename = $settings->_rootDir.'ext/'.$extname.'/controllers/class.'.$class.".php";
|
||||
if(file_exists($filename)) {
|
||||
break;
|
||||
|
|
@ -60,6 +65,7 @@ class Controller {
|
|||
$controller->setParam('settings', $settings);
|
||||
$controller->setParam('logger', $logger);
|
||||
$controller->setParam('notifier', $notifier);
|
||||
$controller->setParam('fulltextservice', $fulltextservice);
|
||||
return $controller;
|
||||
}
|
||||
return null;
|
||||
|
|
|
|||
|
|
@ -45,7 +45,12 @@ class UI extends UI_Default {
|
|||
* @return object an object of a class implementing the view
|
||||
*/
|
||||
static public function factory($theme, $class='', $params=array()) { /* {{{ */
|
||||
global $settings, $session, $extMgr, $request, $logger, $notifier, $fulltextservice;
|
||||
foreach(['settings', 'session', 'extmgr', 'request', 'logger', 'notifier', 'fulltextservice'] as $vn) {
|
||||
if(isset($params[$vn]))
|
||||
${$vn} = $params[$vn];
|
||||
else
|
||||
${$vn} = $GLOBALS[$vn] ?? null;
|
||||
}
|
||||
if(!$class) {
|
||||
$class = 'Bootstrap';
|
||||
$class = 'Style';
|
||||
|
|
@ -55,9 +60,9 @@ class UI extends UI_Default {
|
|||
}
|
||||
/* Collect all decorators */
|
||||
$decorators = array();
|
||||
foreach($extMgr->getExtensionConfiguration() as $extname=>$extconf) {
|
||||
foreach($extmgr->getExtensionConfiguration() as $extname=>$extconf) {
|
||||
if(!$settings->extensionIsDisabled($extname)) {
|
||||
if($extMgr->checkExtensionByName($extname, $extconf)) {
|
||||
if($extmgr->checkExtensionByName($extname, $extconf)) {
|
||||
if(isset($extconf['decorators'][$class])) {
|
||||
$filename = $settings->_rootDir.'ext/'.$extname.'/decorators/'.$theme."/".$extconf['decorators'][$class]['file'];
|
||||
if(file_exists($filename)) {
|
||||
|
|
@ -72,9 +77,9 @@ class UI extends UI_Default {
|
|||
*/
|
||||
$filename = '';
|
||||
$httpbasedir = '';
|
||||
foreach($extMgr->getExtensionConfiguration() as $extname=>$extconf) {
|
||||
foreach($extmgr->getExtensionConfiguration() as $extname=>$extconf) {
|
||||
if(!$settings->extensionIsDisabled($extname)) {
|
||||
if($extMgr->checkExtensionByName($extname, $extconf)) {
|
||||
if($extmgr->checkExtensionByName($extname, $extconf)) {
|
||||
/* Setting the 'views' element in the configuration can be used to
|
||||
* replace an existing view in views/bootstrap/, e.g. class.ViewFolder.php
|
||||
* without providing an out/out.ViewFolder.php. In that case $httpbasedir
|
||||
|
|
|
|||
|
|
@ -16,35 +16,23 @@ global $logger;
|
|||
require "inc.ClassExtensionMgr.php";
|
||||
require_once "inc.ClassExtBase.php";
|
||||
|
||||
$extMgr = new SeedDMS_Extension_Mgr($settings->_rootDir."/ext", $settings->_cacheDir, $settings->_repositoryUrl, $settings->_proxyUrl, $settings->_proxyUser, $settings->_proxyPassword);
|
||||
$extmgr = new SeedDMS_Extension_Mgr($settings->_rootDir."/ext", $settings->_cacheDir, $settings->_repositoryUrl, $settings->_proxyUrl, $settings->_proxyUser, $settings->_proxyPassword);
|
||||
|
||||
$version = new SeedDMS_Version;
|
||||
|
||||
foreach($extMgr->getExtensionConfiguration() as $extname=>$extconf) {
|
||||
foreach($extmgr->getExtensionConfiguration() as $extname=>$extconf) {
|
||||
if($extconf['disable']) {
|
||||
$settings->disableExtension($extname);
|
||||
continue;
|
||||
}
|
||||
if(!$settings->extensionIsDisabled($extname)) {
|
||||
$disabled = false;
|
||||
if($extMgr->checkExtensionByName($extname, $extconf)) {
|
||||
if($extmgr->checkExtensionByName($extname, $extconf)) {
|
||||
$disabled = false;
|
||||
$settings->enableExtension($extname);
|
||||
} else {
|
||||
$disabled = true;
|
||||
$settings->disableExtension($extname);
|
||||
// echo $extMgr->getErrorMsg();
|
||||
// echo $extmgr->getErrorMsg();
|
||||
}
|
||||
/* check for requirements */
|
||||
/*
|
||||
if(!empty($extconf['constraints']['depends']['seeddms'])) {
|
||||
$t = explode('-', $extconf['constraints']['depends']['seeddms'], 2);
|
||||
if(SeedDMS_Extension_Mgr::cmpVersion($t[0], $version->version()) > 0 || ($t[1] && SeedDMS_Extension_Mgr::cmpVersion($t[1], $version->version()) < 0))
|
||||
$disabled = true;
|
||||
else
|
||||
$disabled = false;
|
||||
}
|
||||
*/
|
||||
if(!$disabled) {
|
||||
if(isset($extconf['class']) && isset($extconf['class']['file']) && isset($extconf['class']['name'])) {
|
||||
$classfile = $settings->_rootDir."/ext/".$extname."/".$extconf['class']['file'];
|
||||
|
|
@ -52,7 +40,7 @@ foreach($extMgr->getExtensionConfiguration() as $extname=>$extconf) {
|
|||
include($classfile);
|
||||
$obj = new $extconf['class']['name']($settings, null, $logger);
|
||||
if(method_exists($obj, 'init'))
|
||||
$obj->init($extMgr);
|
||||
$obj->init($extmgr);
|
||||
}
|
||||
}
|
||||
if(isset($extconf['language']['file'])) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user