247 lines
10 KiB
Text
247 lines
10 KiB
Text
<% #main %>
|
|
<h1>
|
|
<% response.title %>
|
|
<% members.link add ' ' class='uk-icon-button uk-icon-plus uk-text-middle' %>
|
|
</h1>
|
|
<% members.link . <% gettext All %> %>
|
|
<% members.link subscribers <% gettext Subscribers %> prefix='| ' %>
|
|
<% members.link contributors <% gettext Contributors %> prefix="| " %>
|
|
<% members.link managers <% gettext Managers %> prefix="| " %>
|
|
<% members.link owners <% gettext Owners %> prefix="| " %>
|
|
<% response.pager %>
|
|
<table class='uk-table uk-table-striped uk-table-hover uk-table-condensed'>
|
|
<thead>
|
|
<tr>
|
|
<th><% gettext Name %></th>
|
|
<th><% gettext Role %></th>
|
|
<th><% gettext Subscribed %></th>
|
|
<th></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<% response.list %>
|
|
</tbody>
|
|
</table>
|
|
<% response.pager %>
|
|
|
|
<% #login %>
|
|
<h1><% response.title %></h1>
|
|
|
|
<form class='uk-form uk-form-stacked' id="login" method="post" action="<% response.action %>" @submit='submit($refs)' x-data='{
|
|
submit: function($refs) {
|
|
const options = {
|
|
data: { user: $refs.username.value },
|
|
|
|
callback: function(salt, error) {
|
|
if (error) return console.error(error);
|
|
$refs.digest.value = Antville.hash(Antville.hash($refs.password.value + salt) + "<% session.token %>");
|
|
$refs.password.value = "";
|
|
}
|
|
};
|
|
|
|
Antville.http("get", "<% members.href salt.txt %>", options);
|
|
}
|
|
}'>
|
|
<input type="hidden" name="digest" id="digest" x-ref='digest'/>
|
|
<div class='uk-form-row'>
|
|
<label class='uk-form-label' for='name'>
|
|
<% gettext Account %>
|
|
</label>
|
|
<div class='uk-form-controls'>
|
|
<input name="name" id="name" tabindex=1 value="<% request.name encoding="form" %>" class='uk-width-1-2' required x-ref='username'>
|
|
<% members.link register <% gettext "Not registered yet\?" %> class='uk-button uk-button-link' tabindex=6 %>
|
|
</div>
|
|
</div>
|
|
<div class='uk-form-row'>
|
|
<label class='uk-form-label' for='password'>
|
|
<% gettext Password %>
|
|
</label>
|
|
<div class='uk-form-controls uk-form-password uk-width-1-2'>
|
|
<input type="password" name="password" id="password" class='uk-width-1-1' tabindex=2 required x-ref='password'>
|
|
<a href='javascript:' class='uk-form-password-toggle' data-uk-form-password="{
|
|
lblHide: '<% gettext Hide %>',
|
|
lblShow: '<% gettext Show %>'
|
|
}"><% gettext Show %></a>
|
|
</div>
|
|
<% members.link reset <% gettext 'Password forgotten\?' %> class='uk-button uk-button-link' tabindex="7" %>
|
|
</div>
|
|
<div class='uk-form-row'>
|
|
<label>
|
|
<input type="checkbox" id="remember" name="remember" tabindex="3" <% if <% request.remember %> is on then 'checked="checked"' %> >
|
|
<% gettext "Remember Login" %>
|
|
</label>
|
|
</div>
|
|
<div class='uk-form-row'>
|
|
<input hidden name='login' value='1'>
|
|
<button class='uk-button uk-button-primary' type="submit" tabindex=4>
|
|
<% gettext Login context=verb %>
|
|
</button>
|
|
<a href='<% site.href %>' class="uk-button uk-button-link" tabindex=5><% gettext Cancel %></a>
|
|
</div>
|
|
</form>
|
|
|
|
<% story <% root.termsStory %> link text=<% gettext "Terms and Conditions" %> prefix='<div class="uk-margin-top"><i class="uk-icon-legal"></i> ' suffix=</div> %>
|
|
<% story <% root.privacyStory %> link text=<% gettext "Data Privacy Statement" %> prefix='<div><i class="uk-icon-cloud-upload"></i> ' suffix=</div> %>
|
|
|
|
<% #register %>
|
|
<h1><% response.title %></h1>
|
|
<form class='uk-form uk-form-stacked' method="post" action="<% response.action %>" x-data='{ hash: "" }' @submit='$refs.hash.value = Antville.hash($refs.password.value + "<% session.token %>"); $refs.password.value = "";'>
|
|
<input type="hidden" name="hash" id="hash" x-ref='hash' />
|
|
<div class='uk-form-row'>
|
|
<label class='uk-form-label' for='name'>
|
|
<% gettext Account %>
|
|
</label>
|
|
<div class='uk-form-controls'>
|
|
<input type="text" name="name" id="name" maxlength=25 value="<% request.name encoding="form" %>" class=uk-width-1-2 tabindex=1 required>
|
|
</div>
|
|
</div>
|
|
<div class='uk-form-row'>
|
|
<label class='uk-form-label' for='email'>
|
|
<% gettext e-mail %>
|
|
</label>
|
|
<div class='uk-form-controls'>
|
|
<input type="email" name="email" id="email" value="<% request.email encoding="form" %>" class=uk-width-1-2 tabindex=2 required>
|
|
</div>
|
|
</div>
|
|
<div class='uk-form-row'>
|
|
<label class='uk-form-label' for='password'>
|
|
<% gettext Password %>
|
|
</label>
|
|
<div class='uk-form-controls uk-form-password uk-width-1-2'>
|
|
<input type="password" name="password" id="password" class='uk-width-1-1' required tabindex=3 x-ref='password'>
|
|
<a href='javascript:' class='uk-form-password-toggle' data-uk-form-password="{
|
|
lblHide: '<% gettext Hide %>',
|
|
lblShow: '<% gettext Show %>'
|
|
}"><% gettext Show %></a>
|
|
</div>
|
|
</div>
|
|
<% if <% root.termsStory %> is null then '' else <% members.skin $Members#terms %> %>
|
|
<% if <% root.privacyStory %> is null then '' then <% members.skin $Members#privacy %> %>
|
|
<% param.captcha prefix="<div class='uk-form-row'>" suffix="</div>" %>
|
|
<div class='uk-form-row uk-margin-top'>
|
|
<button class='uk-button uk-button-primary' type="submit" id="submit" name="register" value="1" tabindex=6>
|
|
<% gettext Register %>
|
|
</button>
|
|
<a href='<% members.href login %>' class="uk-button uk-button-link" tabindex=7><% gettext Cancel %></a>
|
|
</div>
|
|
</form>
|
|
|
|
<% #terms %>
|
|
<div class='uk-form-row'>
|
|
<label>
|
|
<input type="checkbox" name="terms" tabindex="4" required>
|
|
<% gettext "I understand and accept the {0}terms and conditions{1}" <% story <% root.termsStory %> url prefix='<a href="' suffix='">' %> '</a>' %>
|
|
</label>
|
|
</div>
|
|
|
|
<% #privacy %>
|
|
<div class='uk-form-row'>
|
|
<label>
|
|
<input type="checkbox" name="privacy" tabindex="5" required>
|
|
<% gettext "I understand and accept the {0}data privacy statement{1}" <% story <% root.privacyStory %> url prefix='<a href="' suffix='">' %> '</a>' %>
|
|
</label>
|
|
</div>
|
|
|
|
<% #accept %>
|
|
<h1><% response.title %></h1>
|
|
<% gettext "We have updated our terms and conditions. Please reaffirm you understand and accept the following:" %>
|
|
<form class='uk-margin-top uk-form uk-form-stacked' method="post" action="<% response.action %>">
|
|
<% if <% root.termsStory %> is null then '' else <% members.skin $Members#terms %> %>
|
|
<% if <% root.privacyStory %> is null then '' then <% members.skin $Members#privacy %> %>
|
|
<div class='uk-form-row uk-margin-top'>
|
|
<button class='uk-button uk-button-primary' type="submit" name="accept" value="1" tabindex=6>
|
|
<% gettext Accept %>
|
|
</button>
|
|
<a href='<% site.href %>' class="uk-button uk-button-link" tabindex=7><% gettext Cancel %></a>
|
|
</div>
|
|
</form>
|
|
|
|
<% #reset %>
|
|
<h1><% response.title %></h1>
|
|
<% gettext "Enter your username and the e-mail address you have used when you registered. You will then receive a confirmation e-mail containing further instructions." %>
|
|
<form class='uk-margin-top uk-form uk-form-stacked' id="login" method="post" action="<% response.action %>">
|
|
<div class='uk-form-row'>
|
|
<label class='uk-form-label' for='name'>
|
|
<% gettext Account %>
|
|
</label>
|
|
<input type="text" name="name" id="name" value="<% request.name encoding="form" %>" class='uk-width-1-2' required tabindex=1>
|
|
</div>
|
|
<div class='uk-form-row'>
|
|
<label class='uk-form-label' for='email'>
|
|
<% gettext E-mail %>
|
|
</label>
|
|
<input type="email" name="email" id="email" value="<% request.email encoding="form" %>" class='uk-width-1-2' required tabindex=2>
|
|
</div>
|
|
<div class='uk-form-row uk-margin-top'>
|
|
<button class='uk-button uk-button-primary' type="submit" id="submit" name="reset" value="1" tabindex=3><% gettext "Send Request" %></button>
|
|
<a href='<% members.href login %>' class="uk-button uk-button-link" tabindex=4><% gettext Cancel %></a>
|
|
</div>
|
|
</form>
|
|
|
|
<% #password %>
|
|
<h1><% response.title %></h1>
|
|
<form class='uk-form uk-form-stacked' id="login" method="post" action="<% response.action %>">
|
|
<div class='uk-form-row'>
|
|
<div class='uk-form-controls uk-form-password uk-width-1-2'>
|
|
<input type="password" name="password" id="password" class='uk-width-1-1'>
|
|
<a href='javascript:' class='uk-form-password-toggle' data-uk-form-password="{
|
|
lblHide: '<% gettext Hide %>',
|
|
lblShow: '<% gettext Show %>'
|
|
}"><% gettext Show %></a>
|
|
</div>
|
|
</div>
|
|
<div class='uk-form-row'>
|
|
<button class='uk-button uk-button-primary' type="submit" id="submit" name="save" value="1" tabindex="4"><% gettext Save %></button>
|
|
<a href='<% members.href login %>' class="uk-button uk-button-link"><% gettext Cancel %></a>
|
|
</div>
|
|
</form>
|
|
|
|
<% #add %>
|
|
<h1><% response.title %></h1>
|
|
<form class='uk-form uk-form-stacked' method='post' action='<% response.action %>'>
|
|
<div class='uk-form-row'>
|
|
<div class='uk-form-label'>
|
|
<% gettext Name %>
|
|
<i class='uk-icon-info-circle uk-text-muted' data-uk-tooltip="{pos: 'right'}" title='<% gettext 'You can use the asterisk * as wildcard.' %>'></i>
|
|
</div>
|
|
<div class='uk-form-controls'>
|
|
<input type='text' name='term' id='term' value='<% request.term encoding='form' %>' class='uk-width-1-2' required>
|
|
<button class='uk-button uk-button-primary' type='submit' id='submit' name='Find' value='1'>
|
|
<% gettext Find %>
|
|
</button>
|
|
<a href='<% members.href %>' class='uk-button uk-button-link'><% gettext Cancel %></a>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
<p>
|
|
<% if <% response.count %> is null then '' else <% ngettext 'Showing {0} result' 'Showing {0} results' <% response.count %> suffix=. %> %>
|
|
</p>
|
|
<% response.result %>
|
|
|
|
<% #results %>
|
|
<table class='uk-table uk-table-striped uk-table-hover uk-table-condensed'>
|
|
<thead>
|
|
<tr>
|
|
<th><% gettext Account %></th>
|
|
<th><% gettext Registered %></th>
|
|
<!--th><% gettext Role %></th-->
|
|
<th></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<% param.result %>
|
|
</tbody>
|
|
</table>
|
|
|
|
<% #result %>
|
|
<tr>
|
|
<td><% param.name %></td>
|
|
<td title='<% param.created | format short %>' data-uk-tooltip="{pos: 'top-left'}"><% param.created | format text %></td>
|
|
<td class='uk-text-right'>
|
|
<a href='?name=<% param.name encoding=form %>'><i class='uk-icon-plus'></i></a>
|
|
</td>
|
|
</tr>
|
|
|
|
<% #captcha %>
|
|
<div class='uk-margin-top h-captcha' data-sitekey='<% property captcha.sitekey %>'></div>
|
|
<script src='https://hcaptcha.com/1/api.js?hl=<% site.locale %>' async defer></script>
|