@@ -25,6 +25,5 @@ | |||
<settings> | |||
<admin>OCA\Files\Settings\Admin</admin> | |||
<admin-section>OCA\Files\Settings\Section</admin-section> | |||
</settings> | |||
</info> |
@@ -76,7 +76,7 @@ class Admin implements ISettings { | |||
* @return string the section ID, e.g. 'sharing' | |||
*/ | |||
public function getSection() { | |||
return 'files'; | |||
return 'additional'; | |||
} | |||
/** |
@@ -27,5 +27,6 @@ | |||
<settings> | |||
<admin>OCA\Files_External\Settings\Admin</admin> | |||
<admin-section>OCA\Files_External\Settings\Section</admin-section> | |||
</settings> | |||
</info> |
@@ -79,7 +79,7 @@ class Admin implements ISettings { | |||
* @return string the section ID, e.g. 'sharing' | |||
*/ | |||
public function getSection() { | |||
return 'files'; | |||
return 'externalstorages'; | |||
} | |||
/** |
@@ -21,7 +21,7 @@ | |||
* | |||
*/ | |||
namespace OCA\Files\Settings; | |||
namespace OCA\Files_External\Settings; | |||
use OCP\IL10N; | |||
use OCP\Settings\ISection; | |||
@@ -41,7 +41,7 @@ class Section implements ISection { | |||
* @returns string | |||
*/ | |||
public function getID() { | |||
return 'files'; | |||
return 'externalstorages'; | |||
} | |||
/** | |||
@@ -51,7 +51,7 @@ class Section implements ISection { | |||
* @return string | |||
*/ | |||
public function getName() { | |||
return $this->l->t('Files & storages'); | |||
return $this->l->t('External storages'); | |||
} | |||
/** |
@@ -0,0 +1,86 @@ | |||
<?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/>. | |||
* | |||
*/ | |||
namespace OC\Settings\Admin; | |||
use Doctrine\DBAL\Connection; | |||
use Doctrine\DBAL\DBALException; | |||
use Doctrine\DBAL\Platforms\SqlitePlatform; | |||
use OC\Lock\DBLockingProvider; | |||
use OC\Lock\NoopLockingProvider; | |||
use OCP\AppFramework\Http\TemplateResponse; | |||
use OCP\IConfig; | |||
use OCP\IDBConnection; | |||
use OCP\IL10N; | |||
use OCP\Lock\ILockingProvider; | |||
use OCP\Settings\ISettings; | |||
class Additional implements ISettings { | |||
/** @var IConfig */ | |||
private $config; | |||
public function __construct(IConfig $config) { | |||
$this->config = $config; | |||
} | |||
/** | |||
* @return TemplateResponse | |||
*/ | |||
public function getForm() { | |||
$parameters = [ | |||
'sendmail_is_available' => (bool) \OC_Helper::findBinaryPath('sendmail'), | |||
'mail_domain' => $this->config->getSystemValue('mail_domain', ''), | |||
'mail_from_address' => $this->config->getSystemValue('mail_from_address', ''), | |||
'mail_smtpmode' => $this->config->getSystemValue('mail_smtpmode', ''), | |||
'mail_smtpsecure' => $this->config->getSystemValue('mail_smtpsecure', ''), | |||
'mail_smtphost' => $this->config->getSystemValue('mail_smtphost', ''), | |||
'mail_smtpport' => $this->config->getSystemValue('mail_smtpport', ''), | |||
'mail_smtpauthtype' => $this->config->getSystemValue('mail_smtpauthtype', ''), | |||
'mail_smtpauth' => $this->config->getSystemValue('mail_smtpauth', false), | |||
'mail_smtpname' => $this->config->getSystemValue('mail_smtpname', ''), | |||
'mail_smtppassword' => $this->config->getSystemValue('mail_smtppassword', ''), | |||
]; | |||
return new TemplateResponse('settings', 'admin/additional-mail', $parameters, ''); | |||
} | |||
/** | |||
* @return string the section ID, e.g. 'sharing' | |||
*/ | |||
public function getSection() { | |||
return 'additional'; | |||
} | |||
/** | |||
* @return int whether the form should be rather on the top or bottom of | |||
* the admin section. The forms are arranged in ascending order of the | |||
* priority values. It is required to return a value between 0 and 100. | |||
* | |||
* E.g.: 70 | |||
*/ | |||
public function getPriority() { | |||
return 0; | |||
} | |||
} |
@@ -119,19 +119,6 @@ class Server implements ISettings { | |||
'cron_log' => $this->config->getSystemValue('cron_log', true), | |||
'lastcron' => $this->config->getAppValue('core', 'lastcron', false), | |||
'cronErrors' => $this->config->getAppValue('core', 'cronErrors'), | |||
'sendmail_is_available' => (bool) \OC_Helper::findBinaryPath('sendmail'), | |||
'mail_domain' => $this->config->getSystemValue('mail_domain', ''), | |||
'mail_from_address' => $this->config->getSystemValue('mail_from_address', ''), | |||
'mail_smtpmode' => $this->config->getSystemValue('mail_smtpmode', ''), | |||
'mail_smtpsecure' => $this->config->getSystemValue('mail_smtpsecure', ''), | |||
'mail_smtphost' => $this->config->getSystemValue('mail_smtphost', ''), | |||
'mail_smtpport' => $this->config->getSystemValue('mail_smtpport', ''), | |||
'mail_smtpauthtype' => $this->config->getSystemValue('mail_smtpauthtype', ''), | |||
'mail_smtpauth' => $this->config->getSystemValue('mail_smtpauth', false), | |||
'mail_smtpname' => $this->config->getSystemValue('mail_smtpname', ''), | |||
'mail_smtppassword' => $this->config->getSystemValue('mail_smtppassword', ''), | |||
]; | |||
return new TemplateResponse('settings', 'admin/server', $parameters, ''); |
@@ -308,6 +308,11 @@ class Manager implements IManager { | |||
$form = new Admin\Logging($this->config); | |||
$forms[$form->getPriority()] = [$form]; | |||
} | |||
if($section === 'additional') { | |||
/** @var ISettings $form */ | |||
$form = new Admin\Additional($this->config); | |||
$forms[$form->getPriority()] = [$form]; | |||
} | |||
if($section === 'tips-tricks') { | |||
/** @var ISettings $form */ | |||
$form = new Admin\TipsTricks($this->config); |
@@ -34,6 +34,7 @@ use OCP\INavigationManager; | |||
use OCP\IRequest; | |||
use OCP\IUserManager; | |||
use OCP\Settings\IManager as ISettingsManager; | |||
use OCP\Template; | |||
/** | |||
* @package OC\Settings\Controller | |||
@@ -83,12 +84,8 @@ class AdminSettingsController extends Controller { | |||
} | |||
private function getSettings($section) { | |||
if($section === 'additional') { | |||
return $this->getLegacyForms(); | |||
} | |||
$settings = $this->settingsManager->getAdminSettings($section); | |||
$html = ''; | |||
$settings = $this->settingsManager->getAdminSettings($section); | |||
foreach ($settings as $prioritizedSettings) { | |||
foreach ($prioritizedSettings as $setting) { | |||
/** @var \OCP\Settings\ISettings $setting */ | |||
@@ -96,6 +93,9 @@ class AdminSettingsController extends Controller { | |||
$html .= $form->renderAs('')->render(); | |||
} | |||
} | |||
if($section === 'additional') { | |||
$html .= $this->getLegacyForms(); | |||
} | |||
return ['content' => $html]; | |||
} | |||
@@ -120,10 +120,10 @@ class AdminSettingsController extends Controller { | |||
); | |||
}, $forms); | |||
$out = new \OCP\Template('settings', 'admin/additional'); | |||
$out = new Template('settings', 'admin/additional'); | |||
$out->assign('forms', $forms); | |||
return ['content' => $out->fetchPage()]; | |||
return $out->fetchPage(); | |||
} | |||
/** |
@@ -0,0 +1,140 @@ | |||
<?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 $_ */ | |||
$mail_smtpauthtype = [ | |||
'' => $l->t('None'), | |||
'LOGIN' => $l->t('Login'), | |||
'PLAIN' => $l->t('Plain'), | |||
'NTLM' => $l->t('NT LAN Manager'), | |||
]; | |||
$mail_smtpsecure = [ | |||
'' => $l->t('None'), | |||
'ssl' => $l->t('SSL'), | |||
'tls' => $l->t('TLS'), | |||
]; | |||
$mail_smtpmode = [ | |||
['php', 'PHP'], | |||
['smtp', 'SMTP'], | |||
]; | |||
if ($_['sendmail_is_available']) { | |||
$mail_smtpmode[] = ['sendmail', 'Sendmail']; | |||
} | |||
if ($_['mail_smtpmode'] == 'qmail') { | |||
$mail_smtpmode[] = ['qmail', 'qmail']; | |||
} | |||
?> | |||
<div class="section" id="mail_general_settings"> | |||
<form id="mail_general_settings_form" class="mail_settings"> | |||
<h2><?php p($l->t('Email server'));?></h2> | |||
<a target="_blank" rel="noreferrer" class="icon-info" | |||
title="<?php p($l->t('Open documentation'));?>" | |||
href="<?php p(link_to_docs('admin-email')); ?>"></a> | |||
<p><?php p($l->t('This is used for sending out notifications.')); ?> <span id="mail_settings_msg" class="msg"></span></p> | |||
<p> | |||
<label for="mail_smtpmode"><?php p($l->t( 'Send mode' )); ?></label> | |||
<select name='mail_smtpmode' id='mail_smtpmode'> | |||
<?php foreach ($mail_smtpmode as $smtpmode): | |||
$selected = ''; | |||
if ($smtpmode[0] == $_['mail_smtpmode']): | |||
$selected = 'selected="selected"'; | |||
endif; ?> | |||
<option value='<?php p($smtpmode[0])?>' <?php p($selected) ?>><?php p($smtpmode[1]) ?></option> | |||
<?php endforeach;?> | |||
</select> | |||
<label id="mail_smtpsecure_label" for="mail_smtpsecure" | |||
<?php if ($_['mail_smtpmode'] != 'smtp') print_unescaped(' class="hidden"'); ?>> | |||
<?php p($l->t( 'Encryption' )); ?> | |||
</label> | |||
<select name="mail_smtpsecure" id="mail_smtpsecure" | |||
<?php if ($_['mail_smtpmode'] != 'smtp') print_unescaped(' class="hidden"'); ?>> | |||
<?php foreach ($mail_smtpsecure as $secure => $name): | |||
$selected = ''; | |||
if ($secure == $_['mail_smtpsecure']): | |||
$selected = 'selected="selected"'; | |||
endif; ?> | |||
<option value='<?php p($secure)?>' <?php p($selected) ?>><?php p($name) ?></option> | |||
<?php endforeach;?> | |||
</select> | |||
</p> | |||
<p> | |||
<label for="mail_from_address"><?php p($l->t( 'From address' )); ?></label> | |||
<input type="text" name='mail_from_address' id="mail_from_address" placeholder="<?php p($l->t('mail'))?>" | |||
value='<?php p($_['mail_from_address']) ?>' />@ | |||
<input type="text" name='mail_domain' id="mail_domain" placeholder="example.com" | |||
value='<?php p($_['mail_domain']) ?>' /> | |||
</p> | |||
<p id="setting_smtpauth" <?php if ($_['mail_smtpmode'] != 'smtp') print_unescaped(' class="hidden"'); ?>> | |||
<label for="mail_smtpauthtype"><?php p($l->t( 'Authentication method' )); ?></label> | |||
<select name='mail_smtpauthtype' id='mail_smtpauthtype'> | |||
<?php foreach ($mail_smtpauthtype as $authtype => $name): | |||
$selected = ''; | |||
if ($authtype == $_['mail_smtpauthtype']): | |||
$selected = 'selected="selected"'; | |||
endif; ?> | |||
<option value='<?php p($authtype)?>' <?php p($selected) ?>><?php p($name) ?></option> | |||
<?php endforeach;?> | |||
</select> | |||
<input type="checkbox" name="mail_smtpauth" id="mail_smtpauth" class="checkbox" value="1" | |||
<?php if ($_['mail_smtpauth']) print_unescaped('checked="checked"'); ?> /> | |||
<label for="mail_smtpauth"><?php p($l->t( 'Authentication required' )); ?></label> | |||
</p> | |||
<p id="setting_smtphost" <?php if ($_['mail_smtpmode'] != 'smtp') print_unescaped(' class="hidden"'); ?>> | |||
<label for="mail_smtphost"><?php p($l->t( 'Server address' )); ?></label> | |||
<input type="text" name='mail_smtphost' id="mail_smtphost" placeholder="smtp.example.com" | |||
value='<?php p($_['mail_smtphost']) ?>' /> | |||
: | |||
<input type="text" name='mail_smtpport' id="mail_smtpport" placeholder="<?php p($l->t('Port'))?>" | |||
value='<?php p($_['mail_smtpport']) ?>' /> | |||
</p> | |||
</form> | |||
<form class="mail_settings" id="mail_credentials_settings"> | |||
<p id="mail_credentials" <?php if (!$_['mail_smtpauth'] || $_['mail_smtpmode'] != 'smtp') print_unescaped(' class="hidden"'); ?>> | |||
<label for="mail_smtpname"><?php p($l->t( 'Credentials' )); ?></label> | |||
<input type="text" name='mail_smtpname' id="mail_smtpname" placeholder="<?php p($l->t('SMTP Username'))?>" | |||
value='<?php p($_['mail_smtpname']) ?>' /> | |||
<input type="password" name='mail_smtppassword' id="mail_smtppassword" autocomplete="off" | |||
placeholder="<?php p($l->t('SMTP Password'))?>" value='<?php p($_['mail_smtppassword']) ?>' /> | |||
<input id="mail_credentials_settings_submit" type="button" value="<?php p($l->t('Store credentials')) ?>"> | |||
</p> | |||
</form> | |||
<br /> | |||
<em><?php p($l->t( 'Test email settings' )); ?></em> | |||
<input type="submit" name="sendtestemail" id="sendtestemail" value="<?php p($l->t( 'Send email' )); ?>"/> | |||
<span id="sendtestmail_msg" class="msg"></span> | |||
</div> | |||
@@ -26,11 +26,8 @@ | |||
?> | |||
<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> | |||
<?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 } | |||
};?> |
@@ -24,29 +24,6 @@ | |||
/** @var \OCP\IL10N $l */ | |||
/** @var array $_ */ | |||
$mail_smtpauthtype = [ | |||
'' => $l->t('None'), | |||
'LOGIN' => $l->t('Login'), | |||
'PLAIN' => $l->t('Plain'), | |||
'NTLM' => $l->t('NT LAN Manager'), | |||
]; | |||
$mail_smtpsecure = [ | |||
'' => $l->t('None'), | |||
'ssl' => $l->t('SSL'), | |||
'tls' => $l->t('TLS'), | |||
]; | |||
$mail_smtpmode = [ | |||
['php', 'PHP'], | |||
['smtp', 'SMTP'], | |||
]; | |||
if ($_['sendmail_is_available']) { | |||
$mail_smtpmode[] = ['sendmail', 'Sendmail']; | |||
} | |||
if ($_['mail_smtpmode'] == 'qmail') { | |||
$mail_smtpmode[] = ['qmail', 'qmail']; | |||
} | |||
?> | |||
<div id="security-warning" class="section"> | |||
@@ -230,94 +207,6 @@ if ($_['mail_smtpmode'] == 'qmail') { | |||
</p> | |||
</div> | |||
<div class="section" id="mail_general_settings"> | |||
<form id="mail_general_settings_form" class="mail_settings"> | |||
<h2><?php p($l->t('Email server'));?></h2> | |||
<a target="_blank" rel="noreferrer" class="icon-info" | |||
title="<?php p($l->t('Open documentation'));?>" | |||
href="<?php p(link_to_docs('admin-email')); ?>"></a> | |||
<p><?php p($l->t('This is used for sending out notifications.')); ?> <span id="mail_settings_msg" class="msg"></span></p> | |||
<p> | |||
<label for="mail_smtpmode"><?php p($l->t( 'Send mode' )); ?></label> | |||
<select name='mail_smtpmode' id='mail_smtpmode'> | |||
<?php foreach ($mail_smtpmode as $smtpmode): | |||
$selected = ''; | |||
if ($smtpmode[0] == $_['mail_smtpmode']): | |||
$selected = 'selected="selected"'; | |||
endif; ?> | |||
<option value='<?php p($smtpmode[0])?>' <?php p($selected) ?>><?php p($smtpmode[1]) ?></option> | |||
<?php endforeach;?> | |||
</select> | |||
<label id="mail_smtpsecure_label" for="mail_smtpsecure" | |||
<?php if ($_['mail_smtpmode'] != 'smtp') print_unescaped(' class="hidden"'); ?>> | |||
<?php p($l->t( 'Encryption' )); ?> | |||
</label> | |||
<select name="mail_smtpsecure" id="mail_smtpsecure" | |||
<?php if ($_['mail_smtpmode'] != 'smtp') print_unescaped(' class="hidden"'); ?>> | |||
<?php foreach ($mail_smtpsecure as $secure => $name): | |||
$selected = ''; | |||
if ($secure == $_['mail_smtpsecure']): | |||
$selected = 'selected="selected"'; | |||
endif; ?> | |||
<option value='<?php p($secure)?>' <?php p($selected) ?>><?php p($name) ?></option> | |||
<?php endforeach;?> | |||
</select> | |||
</p> | |||
<p> | |||
<label for="mail_from_address"><?php p($l->t( 'From address' )); ?></label> | |||
<input type="text" name='mail_from_address' id="mail_from_address" placeholder="<?php p($l->t('mail'))?>" | |||
value='<?php p($_['mail_from_address']) ?>' />@ | |||
<input type="text" name='mail_domain' id="mail_domain" placeholder="example.com" | |||
value='<?php p($_['mail_domain']) ?>' /> | |||
</p> | |||
<p id="setting_smtpauth" <?php if ($_['mail_smtpmode'] != 'smtp') print_unescaped(' class="hidden"'); ?>> | |||
<label for="mail_smtpauthtype"><?php p($l->t( 'Authentication method' )); ?></label> | |||
<select name='mail_smtpauthtype' id='mail_smtpauthtype'> | |||
<?php foreach ($mail_smtpauthtype as $authtype => $name): | |||
$selected = ''; | |||
if ($authtype == $_['mail_smtpauthtype']): | |||
$selected = 'selected="selected"'; | |||
endif; ?> | |||
<option value='<?php p($authtype)?>' <?php p($selected) ?>><?php p($name) ?></option> | |||
<?php endforeach;?> | |||
</select> | |||
<input type="checkbox" name="mail_smtpauth" id="mail_smtpauth" class="checkbox" value="1" | |||
<?php if ($_['mail_smtpauth']) print_unescaped('checked="checked"'); ?> /> | |||
<label for="mail_smtpauth"><?php p($l->t( 'Authentication required' )); ?></label> | |||
</p> | |||
<p id="setting_smtphost" <?php if ($_['mail_smtpmode'] != 'smtp') print_unescaped(' class="hidden"'); ?>> | |||
<label for="mail_smtphost"><?php p($l->t( 'Server address' )); ?></label> | |||
<input type="text" name='mail_smtphost' id="mail_smtphost" placeholder="smtp.example.com" | |||
value='<?php p($_['mail_smtphost']) ?>' /> | |||
: | |||
<input type="text" name='mail_smtpport' id="mail_smtpport" placeholder="<?php p($l->t('Port'))?>" | |||
value='<?php p($_['mail_smtpport']) ?>' /> | |||
</p> | |||
</form> | |||
<form class="mail_settings" id="mail_credentials_settings"> | |||
<p id="mail_credentials" <?php if (!$_['mail_smtpauth'] || $_['mail_smtpmode'] != 'smtp') print_unescaped(' class="hidden"'); ?>> | |||
<label for="mail_smtpname"><?php p($l->t( 'Credentials' )); ?></label> | |||
<input type="text" name='mail_smtpname' id="mail_smtpname" placeholder="<?php p($l->t('SMTP Username'))?>" | |||
value='<?php p($_['mail_smtpname']) ?>' /> | |||
<input type="password" name='mail_smtppassword' id="mail_smtppassword" autocomplete="off" | |||
placeholder="<?php p($l->t('SMTP Password'))?>" value='<?php p($_['mail_smtppassword']) ?>' /> | |||
<input id="mail_credentials_settings_submit" type="button" value="<?php p($l->t('Store credentials')) ?>"> | |||
</p> | |||
</form> | |||
<br /> | |||
<em><?php p($l->t( 'Test email settings' )); ?></em> | |||
<input type="submit" name="sendtestemail" id="sendtestemail" value="<?php p($l->t( 'Send email' )); ?>"/> | |||
<span id="sendtestmail_msg" class="msg"></span> | |||
</div> | |||
<div class="section"> | |||
<!-- should be the last part, so Updater can follow if enabled (it has no heading therefore). --> | |||
<h2><?php p($l->t('Version'));?></h2> |