Add stub mail settings section

This commit is contained in:
Johannes Zellner
2020-08-17 22:44:01 +02:00
committed by Girish Ramakrishnan
parent 517db50712
commit 5f8b141f62
2 changed files with 191 additions and 0 deletions

View File

@@ -1,3 +1,82 @@
<!-- Modal change mail server domain -->
<div class="modal fade" id="mailDomainChangeModal" tabindex="-1" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Change Email Server Domain</h4>
</div>
<div class="modal-body">
<form name="mailDomainChangeForm" role="form" novalidate ng-submit="mailDomainChange.submit()" autocomplete="off">
<div class="form-group" ng-class="{ 'has-error': (mailDomainChangeForm.mailDomain.$dirty && mailDomainChangeForm.mailDomain.$invalid) || (!mailDomainChangeForm.mailDomain.$dirty && mailDomainChange.error)}">
<label class="control-label">Domain</label>
<input type="text" class="form-control" ng-model="mailDomainChange.mailDomain" name="mailDomain" required autofocus>
<div class="control-label" ng-show="(!mailDomainChangeForm.mailDomain.$dirty && mailDomainChange.error) || (mailDomainChangeForm.mailDomain.$dirty && mailDomainChangeForm.mailDomain.$invalid)">
<small ng-show="mailDomainChangeForm.mailDomain.$error.required">A valid domain is required</small>
<small ng-show="!mailDomainChangeForm.email.$dirty && mailDomainChange.error">{{ mailDomainChange.error }}</small>
</div>
</div>
<input class="ng-hide" type="submit" ng-disabled="mailDomainChangeForm.$invalid"/>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-success" ng-click="mailDomainChange.submit()" ng-disabled="mailDomainChangeForm.$invalid || mailDomainChange.busy"><i class="fa fa-circle-notch fa-spin" ng-show="mailDomainChange.busy"></i> Change</button>
</div>
</div>
</div>
</div>
<!-- Modal change max email size -->
<div class="modal fade" id="maxEmailSizeChangeModal" tabindex="-1" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Change Maximum Email Size</h4>
</div>
<div class="modal-body">
<form name="maxEmailSizeChangeForm" role="form" novalidate ng-submit="maxEmailSize.submit()" autocomplete="off">
<div class="form-group">
<label class="control-label">Maximum size in megabytes : <b>{{ maxEmailSize.size | prettyDiskSize }}</b></label>
<slider ng-model="maxEmailSize.size" tooltip="hide" min="1048576" max="1073741824" step="10485760"></slider>
</div>
<input class="ng-hide" type="submit"/>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-success" ng-click="mailDomainChange.submit()" ng-disabled="maxEmailSize.size === maxEmailSize.currentSize"><i class="fa fa-circle-notch fa-spin" ng-show="mailDomainChange.busy"></i> Change</button>
</div>
</div>
</div>
</div>
<!-- Modal change block/allow lists -->
<div class="modal fade" id="blockAllowListsChangeModal" tabindex="-1" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Change Lists</h4>
</div>
<div class="modal-body">
<form name="blockAllowListsChangeForm" role="form" novalidate ng-submit="maxEmailSize.submit()" autocomplete="off">
<div class="form-group">
<label class="control-label">Always allowed origins</label>
<textarea ng-model="blockAllowLists.allowList" placeholder="Line separated allowed origins" class="form-control" rows="4"></textarea>
</div>
<div class="form-group">
<label class="control-label">Blocked Origins</label>
<textarea ng-model="blockAllowLists.blockList" placeholder="Line separated blocked origins" class="form-control" rows="4"></textarea>
</div>
<input class="ng-hide" type="submit"/>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-success" ng-click="blockAllowLists.submit()"><i class="fa fa-circle-notch fa-spin" ng-show="blockAllowLists.busy"></i> Change</button>
</div>
</div>
</div>
</div>
<!-- Test email -->
<div class="modal fade" id="testEmailModal" tabindex="-1" role="dialog">
@@ -91,6 +170,51 @@
<br/>
<div class="text-left" ng-show="user.role === 'owner'">
<h3>Settings</h3>
</div>
<div class="card card-large" style="margin-bottom: 15px;">
<p>These settings apply to all domains.</p>
<div class="row">
<div class="col-xs-6">
<span class="text-muted">Email domain</span>
</div>
<div class="col-xs-6 text-right">
<span>{{ config.mailFqdn }} <a href="" ng-click="mailDomainChange.show()"><i class="fa fa-edit text-small"></i></a></span>
</div>
<div class="col-xs-6">
<span class="text-muted">Maximum email size</span>
</div>
<div class="col-xs-6 text-right">
<span>25MB <a href="" ng-click="maxEmailSize.show()"><i class="fa fa-edit text-small"></i></a></span>
</div>
<div class="col-xs-6">
<span class="text-muted">Always allowed origins</span>
</div>
<div class="col-xs-6 text-right">
<span>0</span>
</div>
<div class="col-xs-6">
<span class="text-muted">Blocked origins</span>
</div>
<div class="col-xs-6 text-right">
<span>0</span>
</div>
</div>
<br/>
<div class="row">
<div class="col-md-12 text-right">
<button class="btn btn-outline btn-primary pull-right" ng-click="blockAllowLists.show()">Change Block/Allowlists</button>
</div>
</div>
</div>
<br/>
<div class="text-left" ng-show="user.role === 'owner'">
<h3>Event Log</h3>
</div>