[various] Convert addon_settings hook functions to the new data array format

- Add separate template files to several addons
- Remove superfluous addon settings CSS files
This commit is contained in:
Hypolite Petovan 2021-11-20 04:56:55 -05:00
parent f0522a998b
commit 779b38ec09
68 changed files with 444 additions and 953 deletions

View file

@ -36,24 +36,30 @@ function securemail_install()
*
* @see App
*/
function securemail_settings(App &$a, &$s)
function securemail_settings(App &$a, array &$data)
{
if (!local_user()) {
return;
}
$enable = intval(DI::pConfig()->get(local_user(), 'securemail', 'enable'));
$enabled = intval(DI::pConfig()->get(local_user(), 'securemail', 'enable'));
$publickey = DI::pConfig()->get(local_user(), 'securemail', 'pkey');
$t = Renderer::getMarkupTemplate('admin.tpl', 'addon/securemail/');
$s .= Renderer::replaceMacros($t, [
'$title' => DI::l10n()->t('"Secure Mail" Settings'),
'$submit' => DI::l10n()->t('Save Settings'),
'$test' => DI::l10n()->t('Save and send test'), //NOTE: update also in 'post'
'$enable' => ['securemail-enable', DI::l10n()->t('Enable Secure Mail'), $enable, ''],
$t = Renderer::getMarkupTemplate('settings.tpl', 'addon/securemail/');
$html = Renderer::replaceMacros($t, [
'$enabled' => ['securemail-enable', DI::l10n()->t('Enable Secure Mail'), $enabled],
'$publickey' => ['securemail-pkey', DI::l10n()->t('Public key'), $publickey, DI::l10n()->t('Your public PGP key, ascii armored format')]
]);
$data = [
'addon' => 'securemail',
'title' => DI::l10n()->t('"Secure Mail" Settings'),
'html' => $html,
'submit' => [
'securemail-submit' => DI::l10n()->t('Save Settings'),
'securemail-test' => DI::l10n()->t('Save and send test'),
],
];
}
/**
@ -72,13 +78,12 @@ function securemail_settings_post(App &$a, array &$b)
return;
}
if ($_POST['securemail-submit']) {
if (!empty($_POST['securemail-submit']) || !empty($_POST['securemail-test'])) {
DI::pConfig()->set(local_user(), 'securemail', 'pkey', trim($_POST['securemail-pkey']));
$enable = (!empty($_POST['securemail-enable']) ? 1 : 0);
DI::pConfig()->set(local_user(), 'securemail', 'enable', $enable);
if ($_POST['securemail-submit'] == 'test') {
if (!empty($_POST['securemail-test'])) {
$res = DI::emailer()->send(new SecureTestEmail(DI::app(), DI::config(), DI::pConfig(), DI::baseUrl()));
// revert to saved value

View file

@ -1,16 +0,0 @@
<span id="settings_securemail_inflated" class="settings-block fakelink" style="display: block" onclick="openClose('settings_securemail_expanded'); openClose('settings_securemail_inflated');">
<h3>{{$title}}</h3>
</span>
<div id="settings_securemail_expanded" class="settings-block" style="display: none">
<span class="fakelink" onclick="openClose('settings_securemail_expanded'); openClose('settings_securemail_inflated');"><h3>{{$title}}</h3></span>
<div id="securemail-wrapper">
{{include file="field_checkbox.tpl" field=$enable}}
{{include file="field_textarea.tpl" field=$publickey}}
<div class="form-group pull-right settings-submit-wrapper" >
<button type="submit" name="securemail-submit" class="btn btn-primary" value="submit">{{$submit}}</button>
<button type="submit" name="securemail-submit" class="btn btn-default" value="test">{{$test}}</button>
</div>
<div class="clear"></div>
</div>
</div>

View file

@ -0,0 +1,2 @@
{{include file="field_checkbox.tpl" field=$enabled}}
{{include file="field_textarea.tpl" field=$publickey}}