Fallback for legacy settings. They are placed into Additional Settings
This commit is contained in:
parent
bbb086f0d2
commit
a548902d5f
|
@ -1,75 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @copyright Copyright (c) 2016, ownCloud, Inc.
|
||||
*
|
||||
* @author Arthur Schiwon <blizzz@arthur-schiwon.de>
|
||||
* @author Dominik Schmidt <dev@dominik-schmidt.de>
|
||||
* @author Joas Schilling <coding@schilljs.com>
|
||||
* @author Lukas Reschke <lukas@statuscode.ch>
|
||||
* @author Morris Jobke <hey@morrisjobke.de>
|
||||
* @author Robin Appelman <robin@icewind.nl>
|
||||
* @author Robin McCorkell <robin@mccorkell.me.uk>
|
||||
* @author Volkan Gezer <volkangezer@gmail.com>
|
||||
*
|
||||
* @license AGPL-3.0
|
||||
*
|
||||
* This code is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License, version 3,
|
||||
* as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License, version 3,
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
*/
|
||||
|
||||
// fill template
|
||||
$tmpl = new OCP\Template('user_ldap', 'settings');
|
||||
|
||||
$helper = new \OCA\User_LDAP\Helper();
|
||||
$prefixes = $helper->getServerConfigurationPrefixes();
|
||||
$hosts = $helper->getServerConfigurationHosts();
|
||||
|
||||
$wizardHtml = '';
|
||||
$toc = array();
|
||||
|
||||
$wControls = new OCP\Template('user_ldap', 'part.wizardcontrols');
|
||||
$wControls = $wControls->fetchPage();
|
||||
$sControls = new OCP\Template('user_ldap', 'part.settingcontrols');
|
||||
$sControls = $sControls->fetchPage();
|
||||
|
||||
$l = \OC::$server->getL10N('user_ldap');
|
||||
|
||||
$wizTabs = array();
|
||||
$wizTabs[] = array('tpl' => 'part.wizard-server', 'cap' => $l->t('Server'));
|
||||
$wizTabs[] = array('tpl' => 'part.wizard-userfilter', 'cap' => $l->t('Users'));
|
||||
$wizTabs[] = array('tpl' => 'part.wizard-loginfilter', 'cap' => $l->t('Login Attributes'));
|
||||
$wizTabs[] = array('tpl' => 'part.wizard-groupfilter', 'cap' => $l->t('Groups'));
|
||||
$wizTabsCount = count($wizTabs);
|
||||
for($i = 0; $i < $wizTabsCount; $i++) {
|
||||
$tab = new OCP\Template('user_ldap', $wizTabs[$i]['tpl']);
|
||||
if($i === 0) {
|
||||
$tab->assign('serverConfigurationPrefixes', $prefixes);
|
||||
$tab->assign('serverConfigurationHosts', $hosts);
|
||||
}
|
||||
$tab->assign('wizardControls', $wControls);
|
||||
$wizardHtml .= $tab->fetchPage();
|
||||
$toc['#ldapWizard'.($i+1)] = $wizTabs[$i]['cap'];
|
||||
}
|
||||
|
||||
$tmpl->assign('tabs', $wizardHtml);
|
||||
$tmpl->assign('toc', $toc);
|
||||
$tmpl->assign('settingControls', $sControls);
|
||||
|
||||
// assign default values
|
||||
$config = new \OCA\User_LDAP\Configuration('', false);
|
||||
$defaults = $config->getDefaults();
|
||||
foreach($defaults as $key => $default) {
|
||||
$tmpl->assign($key.'_default', $default);
|
||||
}
|
||||
|
||||
return $tmpl->fetchPage();
|
|
@ -83,6 +83,10 @@ class AdminSettingsController extends Controller {
|
|||
}
|
||||
|
||||
private function getSettings($section) {
|
||||
if($section === 'additional') {
|
||||
return $this->getLegacyForms();
|
||||
}
|
||||
|
||||
$settings = $this->settingsManager->getAdminSettings($section);
|
||||
$html = '';
|
||||
foreach ($settings as $prioritizedSettings) {
|
||||
|
@ -95,6 +99,33 @@ class AdminSettingsController extends Controller {
|
|||
return ['content' => $html];
|
||||
}
|
||||
|
||||
private function getLegacyForms() {
|
||||
$forms = \OC_App::getForms('admin');
|
||||
|
||||
$forms = array_map(function ($form) {
|
||||
if (preg_match('%(<h2(?P<class>[^>]*)>.*?</h2>)%i', $form, $regs)) {
|
||||
$sectionName = str_replace('<h2' . $regs['class'] . '>', '', $regs[0]);
|
||||
$sectionName = str_replace('</h2>', '', $sectionName);
|
||||
$anchor = strtolower($sectionName);
|
||||
$anchor = str_replace(' ', '-', $anchor);
|
||||
|
||||
return array(
|
||||
'anchor' => $anchor,
|
||||
'section-name' => $sectionName,
|
||||
'form' => $form
|
||||
);
|
||||
}
|
||||
return array(
|
||||
'form' => $form
|
||||
);
|
||||
}, $forms);
|
||||
|
||||
$out = new \OCP\Template('settings', 'admin/additional');
|
||||
$out->assign('forms', $forms);
|
||||
|
||||
return ['content' => $out->fetchPage()];
|
||||
}
|
||||
|
||||
private function getNavigationParameters() {
|
||||
$a = 'anchor';
|
||||
$name = 'section-name';
|
||||
|
|
|
@ -0,0 +1,36 @@
|
|||
<?php
|
||||
/**
|
||||
* @copyright Copyright (c) 2016 Arthur Schiwon <blizzz@arthur-schiwon.de>
|
||||
*
|
||||
* @author Arthur Schiwon <blizzz@arthur-schiwon.de>
|
||||
*
|
||||
* @license GNU AGPL version 3 or any later version
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
/** @var \OCP\IL10N $l */
|
||||
/** @var array $_ */
|
||||
|
||||
?>
|
||||
|
||||
<div class="section" id="additional">
|
||||
<h2><?php p($l->t('Additional Settings'));?></h2>
|
||||
<?php foreach($_['forms'] as $form) {
|
||||
if (isset($form['form'])) {?>
|
||||
<div id="<?php isset($form['anchor']) ? p($form['anchor']) : p('');?>"><?php print_unescaped($form['form']);?></div>
|
||||
<?php }
|
||||
};?>
|
||||
</div>
|
Loading…
Reference in New Issue