pull/796/head
parent
d2fcac8300
commit
158d78e1ab
@ -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 = [ |
||||
// Mail |
||||
'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; |
||||
} |
||||
} |
@ -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> |
||||
|
Loading…
Reference in new issue