haraka-wildduck
Este commit está contenido en:
3
production/haraka-wildduck/webmail/views/partials/accountmenu.hbs
Archivo normal
3
production/haraka-wildduck/webmail/views/partials/accountmenu.hbs
Archivo normal
@@ -0,0 +1,3 @@
|
||||
<li role="presentation" class="{{#if accMenuOverview}}active{{/if}}"><a href="/account/">Overview</a></li>
|
||||
<li role="presentation" class="{{#if accMenuProfile}}active{{/if}}"><a href="/account/profile">Profile</a></li>
|
||||
<li role="presentation" class="{{#if accMenuIdentities}}active{{/if}}"><a href="/account/identities">Identities</a></li>
|
||||
150
production/haraka-wildduck/webmail/views/partials/filter.hbs
Archivo normal
150
production/haraka-wildduck/webmail/views/partials/filter.hbs
Archivo normal
@@ -0,0 +1,150 @@
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Search messages by:</div>
|
||||
<div class="panel-body">
|
||||
|
||||
<div class="form-group{{#if errors.query_from}} has-error{{/if}}">
|
||||
<label for="query_from">From</label>
|
||||
<input type="text" class="form-control input-sm" name="query_from" id="query_from" value="{{values.query_from}}">
|
||||
{{#if errors.query_from}}
|
||||
<span class="help-block">{{errors.query_from}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="form-group{{#if errors.query_to}} has-error{{/if}}">
|
||||
<label for="query_to">To</label>
|
||||
<input type="text" class="form-control input-sm" name="query_to" id="query_to" value="{{values.query_to}}">
|
||||
{{#if errors.query_to}}
|
||||
<span class="help-block">{{errors.query_to}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="form-group{{#if errors.query_subject}} has-error{{/if}}">
|
||||
<label for="query_subject">Subject</label>
|
||||
<input type="text" class="form-control input-sm" name="query_subject" id="query_subject" value="{{values.query_subject}}">
|
||||
{{#if errors.query_subject}}
|
||||
<span class="help-block">{{errors.query_subject}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="form-group{{#if errors.query_text}} has-error{{/if}}">
|
||||
<label for="query_text">Includes the following text</label>
|
||||
<input type="text" class="form-control input-sm" name="query_text" id="query_text" value="{{values.query_text}}">
|
||||
{{#if errors.query_text}}
|
||||
<span class="help-block">{{errors.query_text}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="form-group{{#if errors.query_listId}} has-error{{/if}}">
|
||||
<label for="query_listId">List-ID</label>
|
||||
<input type="text" class="form-control input-sm" name="query_listId" id="query_listId" value="{{values.query_listId}}">
|
||||
{{#if errors.query_listId}}
|
||||
<span class="help-block">{{errors.query_listId}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="form-group{{#if errors.query_ha}} has-error{{/if}}">
|
||||
<label>Attachments</label>
|
||||
<div>
|
||||
<label class="checkbox-inline">
|
||||
<input type="checkbox" name="query_haYes" id="query_haYes" value="true" {{#if values.query_haYes}}checked{{/if}}> Has attachments
|
||||
</label>
|
||||
<label class="checkbox-inline">
|
||||
<input type="checkbox" name="query_haNo" id="query_haNo" value="true" {{#if values.query_haNo}}checked{{/if}}> Doesn't have attachments
|
||||
</label>
|
||||
</div>
|
||||
{{#if errors.query_ha}}
|
||||
<span class="help-block">{{errors.query_ha}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="form-group{{#if errors.query_size}} has-error{{/if}}">
|
||||
<label for="query_sizeValue">Size</label>
|
||||
<div class="form-inline">
|
||||
<div class="form-group">
|
||||
<span>Message size is</span>
|
||||
<select class="form-control input-sm" id="query_sizeType" name="query_sizeType">
|
||||
<option value="1" {{#if values.query_sizeTypeGt}}selected{{/if}}>greater than</option>
|
||||
<option value="-1" {{#if values.query_sizeTypeLt}}selected{{/if}}>smaller than</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="number" class="form-control input-sm" id="query_sizeValue" name="query_sizeValue" value="{{values.query_sizeValue}}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<select class="form-control input-sm" id="query_sizeUnit" name="query_sizeUnit">
|
||||
<option value="MB" {{#if values.query_sizeUnitMB}}selected{{/if}}>MB</option>
|
||||
<option value="kB" {{#if values.query_sizeUnitKB}}selected{{/if}}>kB</option>
|
||||
<option value="B" {{#if values.query_sizeUnitB}}selected{{/if}}>baiti</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{{#if errors.query_size}}
|
||||
<span class="help-block">{{errors.query_size}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">When a message arrives that matches this search:</div>
|
||||
<div class="panel-body">
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" name="action_seenYes" id="action_seenYes" value="true" {{#if values.action_seenYes}}checked{{/if}}> Mark as seen
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" name="action_flagYes" id="action_flagYes" value="true" {{#if values.action_flagYes}}checked{{/if}}> Flag it
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="form-group{{#if errors.action_mailbox}} has-error{{/if}}">
|
||||
<label for="action_mailbox">Move to mailbox:</label>
|
||||
<select class="form-control input-sm" id="action_mailbox" name="action_mailbox">
|
||||
<option value=""></option>
|
||||
{{#each mailboxes}}
|
||||
<option value="{{id}}" {{#if selected}}selected{{/if}}>{{path}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
{{#if errors.action_mailbox}}
|
||||
<span class="help-block">{{errors.action_mailbox}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="form-group{{#if errors.action_targets}} has-error{{/if}}">
|
||||
<label for="action_targets">Forward it to address:</label>
|
||||
<input type="text" class="form-control input-sm" name="action_targets" id="action_targets" value="{{values.action_targets}}" placeholder="user@example.com">
|
||||
<span class="help-block">Somma separated list of email addresses or URLs</span>
|
||||
{{#if errors.action_targets}}
|
||||
<span class="help-block">{{errors.action_targets}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" name="action_spamYes" id="action_spamYes" value="true" {{#if values.action_spamYes}}checked{{/if}}> Mark as spam
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" name="action_spamNo" id="action_spamNo" value="true" {{#if values.action_spamNo}}checked{{/if}}> Don't mark as spam
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" name="action_deleteYes" id="action_deleteYes" value="true" {{#if values.action_deleteYes}}checked{{/if}}> Delete it
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
18
production/haraka-wildduck/webmail/views/partials/header.hbs
Archivo normal
18
production/haraka-wildduck/webmail/views/partials/header.hbs
Archivo normal
@@ -0,0 +1,18 @@
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<meta name="description" content="{{serviceName}} web client">
|
||||
<meta name="author" content="Andris Reinman">
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/favicon-96x96.png">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||
|
||||
<title>{{serviceName}}
|
||||
{{#if title}} | {{title}}{{/if}}
|
||||
</title>
|
||||
|
||||
<!--<link rel="stylesheet" href="/bootstrap-3.3.7/css/bootstrap.min.css">-->
|
||||
<link rel="stylesheet" href="/bootstrap-3.3.7/css/lumen.css">
|
||||
<link rel="stylesheet" href="/css/wildduck.css">
|
||||
68
production/haraka-wildduck/webmail/views/partials/identity.hbs
Archivo normal
68
production/haraka-wildduck/webmail/views/partials/identity.hbs
Archivo normal
@@ -0,0 +1,68 @@
|
||||
<div class="form-group{{#if errors.name}} has-error{{/if}}">
|
||||
<label for="name">Name</label>
|
||||
<input type="text" class="form-control" name="name" id="name" placeholder="eg "John Smith" or "Accounting Department"" value="{{#if values.name}}{{values.name}}{{/if}}" >
|
||||
{{#if errors.name}}
|
||||
<span class="help-block">{{errors.name}}</span>
|
||||
{{else}}
|
||||
<span class="help-block">This name is used as the sender name when using this identity. Keep blank to default to your account name</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="form-group{{#if errors.address}} has-error{{/if}}">
|
||||
<label for="name">Alias address</label>
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="address" id="address" placeholder="eg. "username" or "user.name" or "андрис"" value="{{values.address}}" required>
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
@<span class="selected-domain" style="text-transform: lowercase;">{{values.domain}}</span><span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-right">
|
||||
{{#each domains}}
|
||||
<li><a href="#" class="change-domain-link" data-domain="{{this}}">{{this}}</a></li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
{{#if errors.address}}
|
||||
<span class="help-block">{{errors.address}}</span>
|
||||
{{else}}
|
||||
<span class="help-block">Unicode characters are allowed in alias addresses.<span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
{{#unless isMain}}
|
||||
<div class="form-group">
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" name="main" {{#if values.main}}checked{{/if}}> Set as default
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
{{/unless}}
|
||||
|
||||
<script>
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
|
||||
var domainElement = document.getElementById('domain');
|
||||
|
||||
var updateDomain = function(e,elm){
|
||||
e.preventDefault();
|
||||
var domain = elm.dataset.domain;
|
||||
if(domain){
|
||||
domainElement.value = domain;
|
||||
document.querySelector('.selected-domain').textContent = domain;
|
||||
}
|
||||
};
|
||||
|
||||
var setupDomainButton = function(elm){
|
||||
elm.addEventListener('click', function(e){updateDomain(e,elm)}, false);
|
||||
elm.addEventListener('touch', function(e){updateDomain(e,elm)}, false);
|
||||
}
|
||||
|
||||
var domainLinks = document.querySelectorAll('.change-domain-link');
|
||||
for(var i=0, len = domainLinks.length; i<len; i++){
|
||||
setupDomainButton(domainLinks[i]);
|
||||
}
|
||||
}, false);
|
||||
</script>
|
||||
44
production/haraka-wildduck/webmail/views/partials/mailbox.hbs
Archivo normal
44
production/haraka-wildduck/webmail/views/partials/mailbox.hbs
Archivo normal
@@ -0,0 +1,44 @@
|
||||
<fieldset>
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">Mailbox settings</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
|
||||
{{#if isInbox}}
|
||||
|
||||
<div class="form-group">
|
||||
<label for="name">Mailbox name</label>
|
||||
<input type="text" class="form-control" name="name" id="name" placeholder="eg. "Important Stuff"" value="{{values.name}}" disabled>
|
||||
<span class="help-block">INBOX folder can not be modified</span>
|
||||
</div>
|
||||
|
||||
{{else}}
|
||||
|
||||
<div class="form-group{{#if errors.parent}} has-error{{/if}}">
|
||||
<label for="parent">Mailbox Parent</label>
|
||||
<select class="form-control" name="parent" id="parent">
|
||||
<option value="">[No parent]</option>
|
||||
{{#each parents}}
|
||||
<option value="{{path}}" {{#if isParent}} selected {{/if}} >
|
||||
{{name}}
|
||||
</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
|
||||
{{#if errors.parent}}
|
||||
<span class="help-block">{{errors.parent}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="form-group{{#if errors.name}} has-error{{/if}}">
|
||||
<label for="name">Mailbox name</label>
|
||||
<input type="text" class="form-control" name="name" id="name" placeholder="eg. "Important Stuff"" value="{{values.name}}" required>
|
||||
{{#if errors.name}}
|
||||
<span class="help-block">{{errors.name}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
51
production/haraka-wildduck/webmail/views/partials/messagerow.hbs
Archivo normal
51
production/haraka-wildduck/webmail/views/partials/messagerow.hbs
Archivo normal
@@ -0,0 +1,51 @@
|
||||
<tr id="msg_{{id}}" class="messagerow messagerow-{{mailbox}}-{{id}} {{#if seen}}message-seen{{else}}message-unseen{{/if}}">
|
||||
<td class="messagerow-spacer"></td>
|
||||
|
||||
<td class="messagerow-checkbox">
|
||||
<input type="checkbox" data-mailbox="{{mailbox}}" data-message="{{id}}" class="message-checkbox"/>
|
||||
</td>
|
||||
|
||||
<td class="messagerow-star">
|
||||
<a href="#" class="message-star {{#if flagged}}flagged{{else}}unflagged{{/if}}" data-mailbox="{{mailbox}}" data-message="{{id}}"><span class="glyphicon glyphicon-{{#if flagged}}star{{else}}star-empty{{/if}}" aria-hidden="true"></span></a>
|
||||
</td>
|
||||
|
||||
<td class="messagerow-from">
|
||||
<a href="/webmail/{{mailbox}}/message/{{id}}" class="messagerow-link">
|
||||
{{{fromHtml}}}
|
||||
</a>
|
||||
</td>
|
||||
|
||||
<td class="messagerow-subject">
|
||||
<a href="/webmail/{{mailbox}}/message/{{id}}" class="messagerow-link">
|
||||
<span class="messagerow-subject-content">
|
||||
{{#if mailboxName}}
|
||||
<span class="label label-default">{{mailboxName}}</span>
|
||||
{{/if}}
|
||||
|
||||
{{subject}}{{#if intro}} <span class="text-muted" style="font-weight: normal;">– {{intro}}</span>{{/if}}
|
||||
</span>
|
||||
</a>
|
||||
</td>
|
||||
|
||||
<td class="messagerow-info">
|
||||
<a href="/webmail/{{mailbox}}/message/{{id}}" class="messagerow-link">
|
||||
{{#if encrypted}}
|
||||
<span class="glyphicon glyphicon-lock" aria-hidden="true"></span>
|
||||
{{else}}
|
||||
{{#if attachments}}
|
||||
<span class="glyphicon glyphicon-paperclip" aria-hidden="true"></span>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
</a>
|
||||
</td>
|
||||
|
||||
<td class="messagerow-date">
|
||||
<a href="/webmail/{{mailbox}}/message/{{id}}" class="messagerow-link">
|
||||
<span class="datestring-fixed" title="{{date}}">
|
||||
{{date}}
|
||||
</span>
|
||||
</a>
|
||||
</td>
|
||||
|
||||
<td class="messagerow-spacer"></td>
|
||||
</tr>
|
||||
85
production/haraka-wildduck/webmail/views/partials/navbar.hbs
Archivo normal
85
production/haraka-wildduck/webmail/views/partials/navbar.hbs
Archivo normal
@@ -0,0 +1,85 @@
|
||||
<nav class="navbar navbar-default navbar-static-top">
|
||||
<div class="container">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="{{#if user}}/webmail{{else}}/{{/if}}">
|
||||
<img alt="{{serviceName}}" src="/favicon-32x32.png" width="20" height="20">
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
|
||||
<ul class="nav navbar-nav navbar-right">
|
||||
|
||||
{{#if user}}
|
||||
<li {{#if activeWebmail}} class="active" {{/if}}>
|
||||
<a href="/webmail/">
|
||||
<span class="glyphicon glyphicon-inbox" aria-hidden="true"></span> Webmail
|
||||
<span class="badge pull-right unseen-counter-{{inboxId}}" {{#if inboxUnseen}}style="display: block;"{{else}}style="display: none;"{{/if}}>{{inboxUnseen}}</span>
|
||||
</a>
|
||||
</li>
|
||||
<li {{#if activeFilters}} class="active" {{/if}}>
|
||||
<a href="/account/filters">
|
||||
<span class="glyphicon glyphicon-filter" aria-hidden="true"></span> Filters
|
||||
</a>
|
||||
</li>
|
||||
<li {{#if activeAutoreply}} class="active" {{/if}}>
|
||||
<a href="/account/autoreply">
|
||||
<span class="glyphicon glyphicon-calendar" aria-hidden="true"></span> Autoreply
|
||||
</a>
|
||||
</li>
|
||||
<li {{#if activeHelp}} class="active" {{/if}}>
|
||||
<a href="/help">
|
||||
<span class="glyphicon glyphicon glyphicon-question-sign" aria-hidden="true"></span> Help
|
||||
</a>
|
||||
</li>
|
||||
<li class="dropdown">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
|
||||
<img src="{{user.gravatar}}" class="profile-image img-circle" width="20" height="20">
|
||||
|
||||
{{#if user.name}}
|
||||
{{user.name}}
|
||||
{{else}}
|
||||
{{user.username}}
|
||||
{{/if}}
|
||||
|
||||
<span class="caret"></span></a>
|
||||
<ul class="dropdown-menu">
|
||||
<li {{#if activeHome}} class="active" {{/if}}>
|
||||
<a href="/account/">
|
||||
<span class="glyphicon glyphicon-user" aria-hidden="true"></span> Account
|
||||
</a>
|
||||
</li>
|
||||
<li {{#if activeSecurity}} class="active" {{/if}}>
|
||||
<a href="/account/security">
|
||||
<span class="glyphicon glyphicon-lock" aria-hidden="true"></span> Security
|
||||
</a>
|
||||
</li>
|
||||
<li role="separator" class="divider"></li>
|
||||
<li><a href="/account/logout"><span class="glyphicon glyphicon-log-out" aria-hidden="true"></span> Log out</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
{{else}}
|
||||
{{#if allowJoin}}
|
||||
<li {{#if activeCreate}} class="active" {{/if}}>
|
||||
<a href="/account/create">
|
||||
<span class="glyphicon glyphicon-user" aria-hidden="true"></span> Create account
|
||||
</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
<li {{#if activeLogin}} class="active" {{/if}}>
|
||||
<a href="/account/login">
|
||||
<span class="glyphicon glyphicon-log-in" aria-hidden="true"></span> Log in
|
||||
</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
71
production/haraka-wildduck/webmail/views/partials/scripts.hbs
Archivo normal
71
production/haraka-wildduck/webmail/views/partials/scripts.hbs
Archivo normal
@@ -0,0 +1,71 @@
|
||||
<script src="/components/underscore/underscore-min.js"></script>
|
||||
<script src="/components/jquery/dist/jquery.min.js"></script>
|
||||
<script src="/components/promise-polyfill/dist/promise.min.js"></script>
|
||||
|
||||
<script src="/components/moment/min/moment-with-locales.min.js"></script>
|
||||
|
||||
<script src="/bootstrap-3.3.7/js/bootstrap.js"></script>
|
||||
|
||||
<link href="/components/bootstrap-daterangepicker/daterangepicker.css" rel="stylesheet">
|
||||
<script src="/components/bootstrap-daterangepicker/daterangepicker.js"></script>
|
||||
|
||||
<link href="/components/summernote/dist/summernote.css" rel="stylesheet">
|
||||
<script src="/components/summernote/dist/summernote.min.js"></script>
|
||||
|
||||
<script src="/components/fetch/fetch.js"></script>
|
||||
<script src="/components/event-source-polyfill/src/eventsource.min.js"></script>
|
||||
<script src="/components/handlebars/handlebars.min.js"></script>
|
||||
|
||||
<script src="/components/favico.js/favico.js"></script>
|
||||
|
||||
<script src="/wd.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$("[rel='tooltip']").tooltip();
|
||||
});
|
||||
</script>
|
||||
|
||||
{{#if inboxId}}
|
||||
<script>
|
||||
var INBOX_ID = '{{inboxId}}';
|
||||
var INBOX_UNSEEN = {{inboxUnseen}};
|
||||
var FAVICON = new Favico({
|
||||
animation:'slide'
|
||||
});
|
||||
|
||||
if(INBOX_UNSEEN){
|
||||
FAVICON.badge(INBOX_UNSEEN);
|
||||
}
|
||||
</script>
|
||||
{{else}}
|
||||
<script>
|
||||
var INBOX_ID = -1;
|
||||
var INBOX_UNSEEN = 0;
|
||||
var FAVICON = false;
|
||||
</script>
|
||||
{{/if}}
|
||||
|
||||
{{#if successlog}}
|
||||
<script src="/login-key-handler.js"></script>
|
||||
<script>
|
||||
$(function() {
|
||||
// store token about successful auth in this browser
|
||||
var successlog = {{{successlog}}};
|
||||
loginKeyHandler.set(successlog.username, successlog.value, 'recovery', successlog.days);
|
||||
});
|
||||
</script>
|
||||
{{/if}}
|
||||
|
||||
<script>
|
||||
window.setTimeout(function(){
|
||||
var alerts = document.querySelectorAll('.flash-messages');
|
||||
var elm;
|
||||
for(var i=0, len = alerts.length; i<len; i++){
|
||||
elm = alerts[i];
|
||||
if(elm.parentNode){
|
||||
elm.parentNode.removeChild(elm);
|
||||
}
|
||||
}
|
||||
}, 10 * 1000);
|
||||
|
||||
</script>
|
||||
8
production/haraka-wildduck/webmail/views/partials/searchfield.hbs
Archivo normal
8
production/haraka-wildduck/webmail/views/partials/searchfield.hbs
Archivo normal
@@ -0,0 +1,8 @@
|
||||
<form method="get" action="/webmail/search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control input" name="query" placeholder="from:val to:val subject:val "phrase" word" value="{{query}}" required>
|
||||
<span class="input-group-btn">
|
||||
<button class="btn btn-default btn" type="submit"><span class="glyphicon glyphicon-search" aria-hidden="true"></span></button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
5
production/haraka-wildduck/webmail/views/partials/securitymenu.hbs
Archivo normal
5
production/haraka-wildduck/webmail/views/partials/securitymenu.hbs
Archivo normal
@@ -0,0 +1,5 @@
|
||||
<li role="presentation" class="{{#if secMenu2fa}}active{{/if}}"><a href="/account/security/2fa">Two factor authentication</a></li>
|
||||
<li role="presentation" class="{{#if secMenuPassword}}active{{/if}}"><a href="/account/security/password">Account Password</a></li>
|
||||
<li role="presentation" class="{{#if secMenuAsps}}active{{/if}}"><a href="/account/security/asps">Application specific passwords</a></li>
|
||||
<li role="presentation" class="{{#if secMenuGpg}}active{{/if}}"><a href="/account/security/gpg">GPG Encryption</a></li>
|
||||
<li role="presentation" class="{{#if secMenuEvents}}active{{/if}}"><a href="/account/security/events">Security events</a></li>
|
||||
57
production/haraka-wildduck/webmail/views/partials/tos.hbs
Archivo normal
57
production/haraka-wildduck/webmail/views/partials/tos.hbs
Archivo normal
@@ -0,0 +1,57 @@
|
||||
<p>Last updated: January 24, 2018</p>
|
||||
|
||||
|
||||
<p>Please read these Terms and Conditions ("Terms", "Terms and Conditions") carefully before using the http://{{serviceDomain}} website (the "Service") operated by {{serviceName}} ("us", "we", or "our").</p>
|
||||
|
||||
<p>Your access to and use of the Service is conditioned on your acceptance of and compliance with these Terms. These Terms apply to all visitors, users and others who access or use the Service.</p>
|
||||
|
||||
<p>By accessing or using the Service you agree to be bound by these Terms. If you disagree with any part of the terms then you may not access the Service. Terms and Conditions for {{serviceName}} based on the <a href="https://termsfeed.com/blog/sample-terms-and-conditions-template/">T&C example from TermsFeed</a>.</p>
|
||||
|
||||
<h2>Accounts</h2>
|
||||
|
||||
<p>When you create an account with us, you must provide us information that is accurate, complete, and current at all times. Failure to do so constitutes a breach of the Terms, which may result in immediate termination of your account on our Service.</p>
|
||||
|
||||
<p>You are responsible for safeguarding the password that you use to access the Service and for any activities or actions under your password, whether your password is with our Service or a third-party service.</p>
|
||||
|
||||
<p>You agree not to disclose your password to any third party. You must notify us immediately upon becoming aware of any breach of security or unauthorized use of your account.</p>
|
||||
|
||||
|
||||
<h2>Links To Other Web Sites</h2>
|
||||
|
||||
<p>Our Service may contain links to third-party web sites or services that are not owned or controlled by {{serviceName}}.</p>
|
||||
|
||||
<p>{{serviceName}} has no control over, and assumes no responsibility for, the content, privacy policies, or practices of any third party web sites or services. You further acknowledge and agree that {{serviceName}} shall not be responsible or liable, directly or indirectly, for any damage or loss caused or alleged to be caused by or in connection with use of or reliance on any such content, goods or services available on or through any such web sites or services.</p>
|
||||
|
||||
<p>We strongly advise you to read the terms and conditions and privacy policies of any third-party web sites or services that you visit.</p>
|
||||
|
||||
|
||||
<h2>Termination</h2>
|
||||
|
||||
<p>We may terminate or suspend access to our Service immediately, without prior notice or liability, for any reason whatsoever, including without limitation if you breach the Terms.</p>
|
||||
|
||||
<p>All provisions of the Terms which by their nature should survive termination shall survive termination, including, without limitation, ownership provisions, warranty disclaimers, indemnity and limitations of liability.</p>
|
||||
|
||||
<p>We may terminate or suspend your account immediately, without prior notice or liability, for any reason whatsoever, including without limitation if you breach the Terms.</p>
|
||||
|
||||
<p>Upon termination, your right to use the Service will immediately cease. If you wish to terminate your account, you may simply discontinue using the Service.</p>
|
||||
|
||||
<p>All provisions of the Terms which by their nature should survive termination shall survive termination, including, without limitation, ownership provisions, warranty disclaimers, indemnity and limitations of liability.</p>
|
||||
|
||||
|
||||
<h2>Governing Law</h2>
|
||||
|
||||
<p>These Terms shall be governed and construed in accordance with the laws of Estonia, without regard to its conflict of law provisions.</p>
|
||||
|
||||
<p>Our failure to enforce any right or provision of these Terms will not be considered a waiver of those rights. If any provision of these Terms is held to be invalid or unenforceable by a court, the remaining provisions of these Terms will remain in effect. These Terms constitute the entire agreement between us regarding our Service, and supersede and replace any prior agreements we might have between us regarding the Service.</p>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>We reserve the right, at our sole discretion, to modify or replace these Terms at any time. If a revision is material we will try to provide at least 30 days notice prior to any new terms taking effect. What constitutes a material change will be determined at our sole discretion.</p>
|
||||
|
||||
<p>By continuing to access or use our Service after those revisions become effective, you agree to be bound by the revised terms. If you do not agree to the new terms, please stop using the Service.</p>
|
||||
|
||||
|
||||
<h2>Contact Us</h2>
|
||||
|
||||
<p>If you have any questions about these Terms, please contact us.</p>
|
||||
Referencia en una nueva incidencia
Block a user