diff options
author | Simon Rettberg | 2014-12-12 18:28:38 +0100 |
---|---|---|
committer | Simon Rettberg | 2014-12-12 18:28:38 +0100 |
commit | 97a0f7dcfdcf4a5263c1cc6c19160a0868abb5f2 (patch) | |
tree | cf735055cfb785ac64e60ab477e215f5f50ad767 /modules/sysconfig | |
parent | [news] fix xml tags of news api (diff) | |
download | slx-admin-97a0f7dcfdcf4a5263c1cc6c19160a0868abb5f2.tar.gz slx-admin-97a0f7dcfdcf4a5263c1cc6c19160a0868abb5f2.tar.xz slx-admin-97a0f7dcfdcf4a5263c1cc6c19160a0868abb5f2.zip |
Rework config module class structure. Still some TODOs though....
Diffstat (limited to 'modules/sysconfig')
-rw-r--r-- | modules/sysconfig/addconfig.inc.php | 2 | ||||
-rw-r--r-- | modules/sysconfig/addmodule.inc.php | 2 | ||||
-rw-r--r-- | modules/sysconfig/addmodule_adauth.inc.php (renamed from modules/sysconfig/addmodule_ad.inc.php) | 35 | ||||
-rw-r--r-- | modules/sysconfig/addmodule_branding.inc.php | 4 | ||||
-rw-r--r-- | modules/sysconfig/addmodule_custommodule.inc.php (renamed from modules/sysconfig/addmodule_custom.inc.php) | 6 |
5 files changed, 23 insertions, 26 deletions
diff --git a/modules/sysconfig/addconfig.inc.php b/modules/sysconfig/addconfig.inc.php index 1e2e870a..0f35095f 100644 --- a/modules/sysconfig/addconfig.inc.php +++ b/modules/sysconfig/addconfig.inc.php @@ -108,7 +108,7 @@ class AddConfig_Start extends AddConfig_Base protected function renderInternal() { - $mods = Page_SysConfig::getModuleTypes(); + $mods = ConfigModules::getList(); $res = Database::simpleQuery("SELECT moduleid, title, moduletype, filepath FROM configtgz_module" . " ORDER BY title ASC"); while ($row = $res->fetch(PDO::FETCH_ASSOC)) { diff --git a/modules/sysconfig/addmodule.inc.php b/modules/sysconfig/addmodule.inc.php index 1191570d..7fa5b5b9 100644 --- a/modules/sysconfig/addmodule.inc.php +++ b/modules/sysconfig/addmodule.inc.php @@ -109,7 +109,7 @@ class AddModule_Start extends AddModule_Base protected function renderInternal() { $title = $order = array(); - $mods = Page_SysConfig::getModuleTypes(); + $mods = ConfigModules::getList(); foreach ($mods as $module) { $title[] = $module['title']; $order[] = $module['sortOrder']; diff --git a/modules/sysconfig/addmodule_ad.inc.php b/modules/sysconfig/addmodule_adauth.inc.php index d43c9129..4873d505 100644 --- a/modules/sysconfig/addmodule_ad.inc.php +++ b/modules/sysconfig/addmodule_adauth.inc.php @@ -4,10 +4,7 @@ * Wizard for setting up active directory integration for authentication. */ -Page_SysConfig::addModule('AD_AUTH', 'AdModule_Start', Dictionary::translate('lang_adAuthentication'), Dictionary::translate('lang_adModule'), Dictionary::translate('lang_authentication'), true -); - -class AdModule_Start extends AddModule_Base +class AdAuth_Start extends AddModule_Base { protected function renderInternal() @@ -15,7 +12,7 @@ class AdModule_Start extends AddModule_Base Session::set('ad_check', false); Session::save(); Render::addDialog(Dictionary::translate('lang_adAuthentication'), false, 'sysconfig/ad-start', array( - 'step' => 'AdModule_CheckConnection', + 'step' => 'AdAuth_CheckConnection', 'title' => Request::post('title'), 'server' => Request::post('server'), 'searchbase' => Request::post('searchbase'), @@ -27,7 +24,7 @@ class AdModule_Start extends AddModule_Base } -class AdModule_CheckConnection extends AddModule_Base +class AdAuth_CheckConnection extends AddModule_Base { private $taskIds; @@ -41,7 +38,7 @@ class AdModule_CheckConnection extends AddModule_Base $bindpw = Request::post('bindpw'); if (empty($server) || empty($binddn)) { Message::addError('empty-field'); - AddModule_Base::setStep('AdModule_Start'); // Continues with AdModule_Start for render() + AddModule_Base::setStep('AdAuth_Start'); // Continues with AdAuth_Start for render() return; } $parent = null; @@ -57,7 +54,7 @@ class AdModule_CheckConnection extends AddModule_Base 'username' => $user )); if (!isset($selfSearch['id'])) { - AddModule_Base::setStep('AdModule_Start'); // Continues with AdModule_Start for render() + AddModule_Base::setStep('AdAuth_Start'); // Continues with AdAuth_Start for render() return; } $parent = $selfSearch['id']; @@ -70,7 +67,7 @@ class AdModule_CheckConnection extends AddModule_Base 'bindpw' => $bindpw )); if (!isset($ldapSearch['id'])) { - AddModule_Base::setStep('AdModule_Start'); // Continues with AdModule_Start for render() + AddModule_Base::setStep('AdAuth_Start'); // Continues with AdAuth_Start for render() return; } $this->taskIds = array( @@ -90,14 +87,14 @@ class AdModule_CheckConnection extends AddModule_Base 'bindpw' => Request::post('bindpw'), 'home' => Request::post('home'), 'originalbinddn' => $this->originalBindDn, - 'step' => 'AdModule_Finish' + 'step' => 'AdAuth_Finish' )) ); } } -class AdModule_Finish extends AddModule_Base +class AdAuth_Finish extends AddModule_Base { private $taskIds; @@ -107,26 +104,32 @@ class AdModule_Finish extends AddModule_Base $binddn = Request::post('binddn'); $searchbase = Request::post('searchbase'); if (empty($searchbase)) { + // If no search base was given, determine it from the dn $originalBindDn = str_replace('\\', '/', trim(Request::post('originalbinddn'))); if (!preg_match('#^([^/]+)/[^/]+$#', $originalBindDn, $out)) { Message::addError('value-invalid', 'binddn', $originalBindDn); - Util::redirect('?do=SysConfig&action=addmodule&step=AdModule_Start'); - } + Util::redirect('?do=SysConfig&action=addmodule&step=AdAuth_Start'); + } // $out[1] is the domain + // Find the domain in the dn $i = mb_stripos($binddn, '=' . $out[1] . ','); if ($i === false) { Message::addError('value-invalid', 'binddn', $out[1]); - Util::redirect('?do=SysConfig&action=addmodule&step=AdModule_Start'); + Util::redirect('?do=SysConfig&action=addmodule&step=AdAuth_Start'); } + // Now find ',' before it so we get the key + $i = mb_strrpos(mb_substr($binddn, 0, $i), ','); + if ($i === false) + $i = -1; $searchbase = mb_substr($binddn, $i + 1); } $title = Request::post('title'); if (empty($title)) $title = 'AD: ' . Request::post('server'); - $config = ConfigModule::insertAdConfig($title, Request::post('server'), $searchbase, $binddn, Request::post('bindpw', ''), Request::post('home', '')); + $config = ConfigModule_AdAuth::insert($title, Request::post('server'), $searchbase, $binddn, Request::post('bindpw', ''), Request::post('home', '')); $config['proxyip'] = Property::getServerIp(); $tgz = Taskmanager::submit('CreateAdConfig', $config); if (!isset($tgz['id'])) { - AddModule_Base::setStep('AdModule_Start'); // Continues with AdModule_Start for render() + AddModule_Base::setStep('AdAuth_Start'); // Continues with AdAuth_Start for render() return; } $this->taskIds = array( diff --git a/modules/sysconfig/addmodule_branding.inc.php b/modules/sysconfig/addmodule_branding.inc.php index 9612bedb..a6c16d9d 100644 --- a/modules/sysconfig/addmodule_branding.inc.php +++ b/modules/sysconfig/addmodule_branding.inc.php @@ -4,8 +4,6 @@ * Wizard for including a branding logo. */ -Page_SysConfig::addModule('BRANDING', 'Branding_Start', Dictionary::translate('lang_institutionLogo'), Dictionary::translate('lang_institutionLogo'), 'Branding', true); - class Branding_Start extends AddModule_Base { @@ -199,7 +197,7 @@ class Branding_Finish extends AddModule_Base Message::addError('missing-file'); Util::redirect('?do=SysConfig&action=addmodule&step=Branding_Start'); } - if (!ConfigModule::insertBrandingModule($title, $tgz)) + if (!ConfigModule_Branding::insert($title, $tgz)) Util::redirect('?do=SysConfig&action=addmodule&step=Branding_Start'); Session::set('logo_tgz', false); Session::save(); diff --git a/modules/sysconfig/addmodule_custom.inc.php b/modules/sysconfig/addmodule_custommodule.inc.php index f79313e8..66ba33a5 100644 --- a/modules/sysconfig/addmodule_custom.inc.php +++ b/modules/sysconfig/addmodule_custommodule.inc.php @@ -6,11 +6,7 @@ * fancy is happening. */ -Page_SysConfig::addModule('custom', 'CustomModule_UploadForm', Dictionary::translate('lang_generic'), - Dictionary::translate('lang_addCustomModuleInfo'), Dictionary::translate('lang_generic'), false, 100 -); - -class CustomModule_UploadForm extends AddModule_Base +class CustomModule_Start extends AddModule_Base { protected function renderInternal() |