summaryrefslogtreecommitdiff
path: root/templates
diff options
context:
space:
mode:
Diffstat (limited to 'templates')
-rw-r--r--templates/displayheaders/_bot_nav.html.ep53
-rw-r--r--templates/displayheaders/_folders.html.ep49
-rw-r--r--templates/displayheaders/_main_table.html.ep115
-rw-r--r--templates/displayheaders/_pagination1.html.ep12
-rw-r--r--templates/displayheaders/_pagination3.html.ep10
-rw-r--r--templates/displayheaders/_top_nav.html.ep71
-rw-r--r--templates/layouts/mainlayout.html.ep22
-rw-r--r--templates/not_found.html.ep25
-rw-r--r--templates/not_found.production.html.ep16
-rw-r--r--templates/webmail/about.html.ep14
-rw-r--r--templates/webmail/displayheaders.html.ep8
-rw-r--r--templates/webmail/login.html.ep67
-rw-r--r--templates/webmail/readmail.html.ep6
-rw-r--r--templates/webmail/writemail.html.ep95
14 files changed, 307 insertions, 256 deletions
diff --git a/templates/displayheaders/_bot_nav.html.ep b/templates/displayheaders/_bot_nav.html.ep
index 454941b..a6d089c 100644
--- a/templates/displayheaders/_bot_nav.html.ep
+++ b/templates/displayheaders/_bot_nav.html.ep
@@ -1,36 +1,39 @@
-<div class="pure-g jwm-nav">
+<div class="columns">
- <div class="pure-u-3-4">
- <div class="pure-u-1 pure-u-md-1-2">
+ <div class="column">
%= include 'displayheaders/_pagination1'
- </div><div class="pure-u-1 pure-u-md-1-2">
+ </div>
+
+ <div class="column">
% if (grep {$_ ne $folder} @$mail_folders) {
- %= form_for move => (id => 'move-mail') => (class => 'pure-form') => begin
- <fieldset>
- %= label_for 'select-folder' => l('move to')
- %= select_field folder => [map { $_ ? $_ : l 'Home' } grep {$_ ne $folder} @$mail_folders] => (id => 'select-folder')
- %= csrf_field
- %= submit_button l('move') => (class => 'pure-button')
- </fieldset>
+ %= form_for move => (id => 'move-mail') => begin
+
+ <div class="field is-horizontal">
+ <div class=field-label>
+ %= label_for 'select-folder' => l('move to') => (class => 'label')
+ </div>
+ <div class=field-body>
+ <div class="field is-grouped">
+ <div class=control>
+ <div class='select'>
+ %= select_field folder => [map { $_ ? $_ : l 'Home' } grep {$_ ne $folder} @$mail_folders]
+ </div>
+ </div>
+ %= csrf_field
+ <div class=control>
+ %= submit_button l('move') => (class => 'button')
+ </div>
+ </div>
+ </div>
+ </div>
+
% end
% }
</div>
- </div>
- <div class="pure-u-1-4">
+ <div class="column has-text-right">
<label for=allbox><%= l 'check all' %></label>
- <input name=allbox type=checkbox onclick="check_all(this)">
+ <input name=allbox type=checkbox id=check-all>
</div>
</div>
-
-<script type="text/javascript">
-function check_all(box) {
- const setTo = box.checked;
- const mails = document.getElementById('mail-headers').tBodies[0].rows;
-
- for (const m of mails) {
- m.lastElementChild.children[0].checked = setTo;
- }
-}
-</script>
diff --git a/templates/displayheaders/_folders.html.ep b/templates/displayheaders/_folders.html.ep
index b341768..457a838 100644
--- a/templates/displayheaders/_folders.html.ep
+++ b/templates/displayheaders/_folders.html.ep
@@ -1,29 +1,44 @@
-<div id=display-folders class="pure-g jwm-nav">
+<div class="columns">
- <div class="pure-u-1-1 pure-u-md-1-2">
- <nav class="pure-menu pure-menu-horizontal">
+ <div class="column">
+ <nav class="navbar">
- <strong class="pure-menu-heading">
- %= l($folder || '_mailbox_root')
- </strong>
+ <div class="navbar-brand">
+ <span class=navbar-item>
+ <%= l($folder || '_mailbox_root') %>
+ </span>
+ <a role="button" class="navbar-burger" data-target="navMenu" id=navbar-toggle>
+ <span aria-hidden="true"></span>
+ <span aria-hidden="true"></span>
+ <span aria-hidden="true"></span>
+ </a>
+ </div>
- <ul class="pure-menu-list">
+ <div class="navbar-menu" id="navMenu">
+ <div class=navbar-start>
% for (grep {$_ ne $folder} @$mail_folders) {
- <li class="pure-menu-item">
- %= link_to '' => {folder => $_} => (class => 'bright') => begin
+ %= link_to '' => {folder => $_} => (class => 'navbar-item') => begin
%= l($_ || '_mailbox_root')
% end
- </li>
% }
- </ul>
-
+ </div>
+ </div>
</nav>
</div>
- <p class="pure-u-1-1 pure-u-md-1-2">
- <%= l('[_1] of [_2] messages', $pgn->{this_page}[1] - $pgn->{this_page}[0], $pgn->{total_items}) %>\
- <%= l(', [_1] new', $total_new_mails) if $total_new_mails > 0 =%>
- <%= l(' - mailbox size: [_1]', $v->print_sizes10($total_size)) if $total_size %>
- </p>
+ <div class="column">
+ <div class="columns is-multiline is-mobile">
+ <span class="column is-half-mobile has-text-centered"><%= l('[_1] of [_2] messages', $pgn->{this_page}[1] - $pgn->{this_page}[0], $pgn->{total_items}) %>
+ </span>
+ <span class="column is-half-mobile has-text-centered"><%= l('[_1] new', $total_new_mails) if $total_new_mails > 0 =%>
+ </span>
+ <span class="column has-text-centered">
+ % if ($total_size) {
+ %= l('mailbox size: ')
+ %= $v->print_sizes10($total_size)
+ % }
+ </span>
+ </div>
+ </div>
</div>
diff --git a/templates/displayheaders/_main_table.html.ep b/templates/displayheaders/_main_table.html.ep
index 06bbbfc..e06e925 100644
--- a/templates/displayheaders/_main_table.html.ep
+++ b/templates/displayheaders/_main_table.html.ep
@@ -9,104 +9,43 @@
% end
-<table id=mail-headers class="pure-table pure-table-horizontal">
+<section class="box">
- <thead>
- <tr id=sort>
- <th class="hide-small">
- #
- </th>
-
- <th>
- <div class="pure-g">
-
- %# $sort_param->('status');
-
- <div class="pure-u-1 pure-u-md-4-24">
- %= $sort_param->('date');
- </div>
-
-% if ($folder ne "SENT") {
- <div class="pure-u-1 pure-u-md-8-24">
- %= $sort_param->('sender');
- </div>
-% }
-% else {
- <th class=sort-param>
- %= link_to url_with->query(sort => param('sort') ne '!sender' ? 'sender' : '!sender' ) => begin
- %= ucfirst l 'recipient'
- % if (param('sort') eq "sender") {
- %= image '/down.gif' => (width => 12) => (height => 12) => (border => 0) => (alt => 'v')
- % }
- % elsif (param('sort') eq "recipient_rev") {
- %= image '/up.gif' => (width => 12) => (height => 12) => (border => 0) => (alt => '^')
- % }
- % end
- </th>
-% }
-
- <div class="pure-u-1 pure-u-md-12-24">
- %= $sort_param->('subject');
- </div>
-
- </div>
- </th>
-
- <th class="hide-small">
- %= $sort_param->('size');
- </th>
-
- <th>
- <input type=checkbox checked=1 disabled=1>
- </th>
- </tr>
- </thead>
-
- <tbody>
% foreach my $msgnum ($pgn->{first_item} .. $pgn->{last_item}) {
% my $msg = $msgs->[$msgnum - $pgn->{first_item}];
- %= tag tr => (class => $msg->{unread} ? 'new-mail' : '') => (id => $msg->{message_handle}) => begin
- <td class="hide-small" style="text-align: right">
+ %= tag div => (class => $msg->{unread} ? 'media jwm-new-mail' : 'media') => (id => $msg->{message_handle}) => begin
+ <div class="media-left is-hidden-mobile">
%= $msgnum + 1
- </td>
-
- <td>
- <div class="pure-g">
-
- <!--
- <div class="pure-u-1-4">
- %# ucfirst($msg->{head}{mime}{content_maintype} eq 'multipart' ? l('yes') : l('no'));
- </div>
- -->
-
- <div class="pure-u-1 pure-u-md-4-24">
- % my $date = $v->parse_iso_date($msg->{head}{date});
- %= join('/', $date->{mday}, $date->{month}, $date->{year}) . " $date->{hour}:$date->{min}";
- </div>
-
- <div class="pure-u-1 pure-u-md-8-24">
- <%= $msg->{head}{sender}[0]{display_name} || $msg->{head}{sender}[0]{address} ||
- $msg->{head}{from}[0]{display_name} || $msg->{head}{from}[0]{address}; %>
- </div>
+ </div>
- <div class="pure-u-1 pure-u-md-12-24">
- %= link_to $msg->{head}{subject} || '_' => read => {id => $msg->{message_handle}}
+ <div class="media-content">
+ <div class=" columns is-gapless is-multiline">
+ <div class="column is-10">
+ <%= $msg->{head}{sender}[0]{display_name} || $msg->{head}{sender}[0]{address} ||
+ $msg->{head}{from}[0]{display_name} || $msg->{head}{from}[0]{address}; %>
+ </div>
+
+ <div class="column is-2">
+ % my $date = $v->parse_iso_date($msg->{head}{date});
+ %= join('/', $date->{mday}, $date->{month}, $date->{year}) . " $date->{hour}:$date->{min}";
+ </div>
+
+ <div class="column is-10">
+ %= link_to $msg->{head}{subject} || '_' => read => {id => $msg->{message_handle}}
+ </div>
+
+ <div class="column is-2">
+ %= $v->print_sizes10($msg->{byte_size});
+ </div>
</div>
-
</div>
- </td>
-
- <td class="hide-small" style="text-align: right; white-space: nowrap">
- %= $v->print_sizes10($msg->{byte_size});
- </td>
- <td>
- %= check_box mail => $msg->{message_handle} => (form => 'move-mail')
- </td>
+ <div class=media-right>
+ %= check_box mail => $msg->{message_handle} => (form => 'move-mail') => (class => 'jwm-mail-checkbox')
+ </div>
% end
% }
- </tbody>
-</table>
+</section>
diff --git a/templates/displayheaders/_pagination1.html.ep b/templates/displayheaders/_pagination1.html.ep
index a32afe1..6a22ba5 100644
--- a/templates/displayheaders/_pagination1.html.ep
+++ b/templates/displayheaders/_pagination1.html.ep
@@ -1,14 +1,14 @@
<nav>
- <ul class="pagination-box">
+ <ul class="pagination-list">
<li>
- %= $c->_paginate->make_link('←', 'prev_page')
+ %= $c->_paginate->make_link('←', 'prev_page', class => 'pagination-link', class_disabled => 'is-disabled')
<li>
- %= $c->_paginate->make_link('↞', 'first_page')
+ %= $c->_paginate->make_link('↞', 'first_page', class => 'pagination-link', class_disabled => 'is-disabled')
<li>
- <span><%= l('page [_1] of [_2]', $pgn->{current_page}+1, $pgn->{total_pages}) %></span>
+ <span class="pagination-link is-current"><%= l('page [_1] of [_2]', $pgn->{current_page}+1, $pgn->{total_pages}) %></span>
<li>
- %= $c->_paginate->make_link('↠', 'last_page')
+ %= $c->_paginate->make_link('↠', 'last_page', class => 'pagination-link', class_disabled => 'is-disabled')
<li>
- %= $c->_paginate->make_link('→', 'next_page')
+ %= $c->_paginate->make_link('→', 'next_page', class => 'pagination-link', class_disabled => 'is-disabled')
</ul>
</nav>
diff --git a/templates/displayheaders/_pagination3.html.ep b/templates/displayheaders/_pagination3.html.ep
index fe573ce..846a285 100644
--- a/templates/displayheaders/_pagination3.html.ep
+++ b/templates/displayheaders/_pagination3.html.ep
@@ -1,6 +1,6 @@
% my $make_link_num = begin
% my ($txt, $to) = @_;
-%= link_to $txt => url_with->query({start => $to}) => (class => (param('start')//0) == $to ? 'current' : '')
+%= link_to $txt => url_with->query({start => $to}) => (class => (param('start')//0) == $to ? 'pagination-link is-current' : 'pagination-link')
% end
% my $nbh = begin
@@ -15,13 +15,13 @@
% }
% end
-<nav>
- <ul class="pagination-box">
+<nav class="pagination is-centered">
+ <ul class="pagination-list">
<li>
- %= $c->_paginate->make_link('Prev' => 'prev_page')
+ %= $c->_paginate->make_link('Prev' => 'prev_page', class => 'pagination-link', class_disabled => 'is-disabled')
</li>
%= $nbh->()
<li>
- %= $c->_paginate->make_link('Next' => 'next_page')
+ %= $c->_paginate->make_link('Next' => 'next_page', class => 'pagination-link', class_disabled => 'is-disabled')
</ul>
</nav>
diff --git a/templates/displayheaders/_top_nav.html.ep b/templates/displayheaders/_top_nav.html.ep
index f4c66d2..e5eaab8 100644
--- a/templates/displayheaders/_top_nav.html.ep
+++ b/templates/displayheaders/_top_nav.html.ep
@@ -1,35 +1,52 @@
-<div class="pure-g">
+<div class="columns">
- <div class="pure-u-1 pure-u-md-1-4">
- <div class="pure-menu pure-menu-horizontal">
- <ul class="pure-menu-list">
- %# <a href="<%= url_with($prefsurl) %>"><%= TXT 'userconfig' %></a>
- %# <a href="<%=$prefsurl%>?action=editaddresses&folder=<%=$folder%>&sessionid=<%=$thissession%>&sort=<%=$sort%>&firstmessage=<%=$firstmessage+1%>&lang=<%=$lang%>" ><%= TXT 'addressbook' %></a>
- <li class="pure-menu-item">
- %= link_to ucfirst(l 'logout') => 'logout'
- </li>
- <li class="pure-menu-item">
- %= link_to ucfirst(l 'compose') => 'write'
- </li>
- </ul>
+ <nav class="column">
+ %# <a href="<%= url_with($prefsurl) %>"><%= TXT 'userconfig' %></a>
+ %# <a href="<%=$prefsurl%>?action=editaddresses&folder=<%=$folder%>&sessionid=<%=$thissession%>&sort=<%=$sort%>&firstmessage=<%=$firstmessage+1%>&lang=<%=$lang%>" ><%= TXT 'addressbook' %></a>
+ %= link_to ucfirst(l 'logout') => 'logout' => (class => 'button')
+ %= link_to ucfirst(l 'compose') => 'write' => (class => 'button')
+ </nav>
+
+ %# <td> <form action="<%= url_for('delete_msg') %>" name=Formdel onsubmit="return confirm('<%= TXT q(js_confirm_delete) %>')" > </form> </td>
+
+ %= form_for '' => (class => 'column') => begin
+ <div class="field is-horizontal">
+ <div class=field-label>
+ %= label_for search => ucfirst(l 'search') => (class => 'label')
+ </div>
+ <div class=field-body>
+ <div class=field>
+ <div class="control">
+ %= search_field search => (size => 8) => (class => 'input')
+ </div>
+ </div>
+ </div>
</div>
- </div>
+ % end
- <div class="pure-u-1 pure-u-md-1-4">
- %= form_for '' => (class => 'pure-form') => begin
- %= label_for search => ucfirst(l 'search')
- %= search_field search => (size => 8)
- % end
- </div>
+ %= form_for '' => (class => 'column') => begin
+ <div class="field is-horizontal">
+ <div class=field-label>
+ %= label_for sort => ucfirst(l 'sort') => (class => 'label')
+ </div>
+ <div class=field-body>
+ <div class=field>
+ <div class="select" id=sort-select>
+ <select name=sort id=sort>
+ <option value="!date">Date - Descending</option>
+ <option value="date" >Date - Ascending</option>
+ <option value="!size">Size - Descending</option>
+ <option value="!sender">Sender - Descending</option>
+ <option value="sender" >Sender - Ascending</option>
+ </select>
+ </div>
+ </div>
+ </div>
+ </div>
+ % end
- <div class="pure-u-1-1 pure-u-md-1-2">
+ <div class="column">
%= include 'displayheaders/_pagination3';
</div>
- <!-- delete button
- <td>
- %# <form action="<%= url_for('delete_msg') %>" name=Formdel onsubmit="return confirm('<%= TXT q(js_confirm_delete) %>')" > </form>
- </td>
- -->
-
</div>
diff --git a/templates/layouts/mainlayout.html.ep b/templates/layouts/mainlayout.html.ep
index 2cd4671..8cf822c 100644
--- a/templates/layouts/mainlayout.html.ep
+++ b/templates/layouts/mainlayout.html.ep
@@ -6,9 +6,7 @@
<meta charset=utf-8>
<meta name="viewport" content="width=device-width, initial-scale=1">
- %# <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/purecss@3.0.0/build/pure-min.css" integrity="sha384-X38yfunGUhNzHpBaEBsWLO+A0HDYOQi8ufWDkZ0k9e0eXz/tH3II7uKZ9msv++Ls" crossorigin="anonymous">
- %# <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/purecss@3.0.0/build/grids-responsive-min.css">
- %= stylesheet '/css/style.css'
+ %= stylesheet '/css/my_bulma.css'
<title>
%= title || 'JWebmail'
@@ -18,14 +16,16 @@
<body>
%= content
- <footer>
- %= link_to about => begin
- %= ucfirst l 'about'
- JWebmail
- % end
- <br>
- %= ucfirst l 'version'
- %= $version
+ <footer class=footer>
+ <div class="content has-text-centered">
+ %= link_to about => begin
+ %= ucfirst l 'about'
+ JWebmail
+ % end
+ <br>
+ %= ucfirst l 'version'
+ %= $version
+ </div>
</footer>
</body>
diff --git a/templates/not_found.html.ep b/templates/not_found.html.ep
new file mode 100644
index 0000000..a8eafc0
--- /dev/null
+++ b/templates/not_found.html.ep
@@ -0,0 +1,25 @@
+<html>
+
+ <head>
+ <meta charset=utf-8>
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+
+ <title>Not Found</title>
+
+ %= stylesheet '/css/my_bulma.css'
+ </head>
+
+ <body>
+ <section class=hero>
+ <div class=hero-body>
+ <h1 class=title>
+ Not the page you are looking for.
+ </h1>
+ <p>
+ Go back or go to the <%= link_to 'start page' => 'login' %>.
+ </p>
+ </div>
+ </section>
+ </body>
+
+</html>
diff --git a/templates/not_found.production.html.ep b/templates/not_found.production.html.ep
deleted file mode 100644
index b96e46e..0000000
--- a/templates/not_found.production.html.ep
+++ /dev/null
@@ -1,16 +0,0 @@
-<html>
-
- <head>
- <title>Not Found</title>
- </head>
-
- <body>
- <p class=center>
- Not the page you are looking for.
- </p>
- <p class=center>
- Go back or go to the <%= link_to 'start page' => 'login' %>.
- </p>
- </body>
-
-</html>
diff --git a/templates/webmail/about.html.ep b/templates/webmail/about.html.ep
index 6221bcc..a5cd4a7 100644
--- a/templates/webmail/about.html.ep
+++ b/templates/webmail/about.html.ep
@@ -2,9 +2,9 @@
% layout 'mainlayout';
-<div class="jwm-base">
+<div class="section container">
- <div class="jwm-post">
+ <article class=content>
<h1>About JWebmail <%= $version %></h1>
@@ -38,7 +38,7 @@
and currently maintained by
<a href="mailto:jannis@fehcom.de">Jannis M. Hoffmann</a>
</p>
-
+
<p>
<h3>Supported languages</h3>
@@ -56,10 +56,12 @@
a complete rewrite of oMail-webmail.
</p>
- </div>
+ </article>
- <nav>
- %= link_to login => 'login' => (class => 'pure-button')
+ <nav class=navbar>
+ <div class=navbar-item>
+ %= link_to login => 'login' => (class => 'button')
+ </div>
</nav>
</div>
diff --git a/templates/webmail/displayheaders.html.ep b/templates/webmail/displayheaders.html.ep
index 3f650c0..8446e00 100644
--- a/templates/webmail/displayheaders.html.ep
+++ b/templates/webmail/displayheaders.html.ep
@@ -1,6 +1,8 @@
% layout 'mainlayout';
-<div id=displayheaders>
+<section class="section container">
+
+ %= javascript '/src/displayheaders.js' => (defer => undef)
%= include 'displayheaders/_folders';
@@ -16,11 +18,11 @@
%= include 'displayheaders/_main_table';
% }
% else {
- <p id=empty-folder>
+ <p class="section">
%= l 'This folder is empty!'
</p>
% }
%= include 'displayheaders/_bot_nav';
-</div>
+</section>
diff --git a/templates/webmail/login.html.ep b/templates/webmail/login.html.ep
index 706dc1c..54ab40a 100644
--- a/templates/webmail/login.html.ep
+++ b/templates/webmail/login.html.ep
@@ -2,38 +2,69 @@
% my $uses_cram = config->{session}{secure} eq 'cram';
-<div id=login class="jwm-base">
+<section class=section>
+ <div class="container is-max-desktop box">
- <h1>
- JWebmail – <%= ucfirst l 'login' %>
- </h1>
+ <h1 class=title>
+ <%= ucfirst l 'login' %>
+ </h1>
+ <h2 class=subtitle>
+ JWebmail
+ </h2>
% if (my $msg = flash('message') || stash('warning')) {
- <p class="jwm-warning">
- %= $msg
- </p>
+ <div class="message is-warning">
+ <div class=message-header>
+ %= $msg
+ </div>
+ </div>
% }
%= form_for login => (name => 'login1') => (method => 'post') => (class => 'pure-form pure-form-aligned jwm-round') => begin
- <fieldset>
- <div class="pure-control-group">
- %= label_for userid => ucfirst l 'userid'
- %= text_field 'userid' => '' => (required => '')
+
+ <div class="field is-horizontal">
+ <div class=field-label>
+ %= label_for userid => ucfirst l 'userid' => (class => 'label')
+ </div>
+ <div class=field-body>
+ <div class=field>
+ <div class=control>
+ %= text_field 'userid' => '' => (required => undef) => (class => 'input')
+ </div>
+ </div>
</div>
- <div class="pure-control-group">
- %= label_for password => ucfirst l 'password'
- %= password_field 'password' => (required => '')
+ </div>
+
+ <div class="field is-horizontal">
+ <div class=field-label>
+ %= label_for password => ucfirst l 'password' => (class => 'label')
</div>
+ <div class=field-body>
+ <div class=field>
+ <div class=control>
+ %= password_field 'password' => (required => undef) => (class => 'input')
+ </div>
+ </div>
+ </div>
+ </div>
% if ($uses_cram) {
%= hidden_field challenge => rand
% }
- <div class="pure-controls">
- %= submit_button ucfirst l('login') => (class => 'pure-button pure-button-primary') => (name => 'submit_button') => $uses_cram ? (disabled => undef) : ()
+ <div class="field is-horizontal">
+ <div class=field-label>
+ </div>
+ <div class=field-body>
+ <div class=field>
+ <div class=control>
+ %= submit_button ucfirst l('login') => (class => 'button is-primary') => (name => 'submit_button') => $uses_cram ? (disabled => undef) : ()
+ </div>
+ </div>
</div>
- </fieldset>
+ </div>
% end
-</div>
+ </div>
+</section>
% if ($uses_cram) {
%= javascript '/src/login_cram.js'
diff --git a/templates/webmail/readmail.html.ep b/templates/webmail/readmail.html.ep
index 529bbe6..c9586ac 100644
--- a/templates/webmail/readmail.html.ep
+++ b/templates/webmail/readmail.html.ep
@@ -1,14 +1,14 @@
% layout 'mainlayout';
-<div class="jwm-base">
+<div class="section container">
- <h1>Read Mail</h1>
+ <h1 class=title>Read Mail</h1>
%= $v->format_mail($msg)
<nav>
- <a href="javascript:history.back()" class="pure-button">
+ <a href="javascript:history.back()" class="button">
%= l 'back'
</a>
</nav>
diff --git a/templates/webmail/writemail.html.ep b/templates/webmail/writemail.html.ep
index 9d148c1..95b9cf8 100644
--- a/templates/webmail/writemail.html.ep
+++ b/templates/webmail/writemail.html.ep
@@ -1,47 +1,80 @@
% layout 'mainlayout';
-<div class="jwm-base">
+<div class="section container">
- <h1>Write Message</h1>
+ <h1 class=title>Write Message</h1>
% if (my $msg = stash('warning')) {
- <p class=warn> <%= $msg %> </p>
+ <p class=message> <%= $msg %> </p>
% }
- %= form_for '' => (method => 'post') => (enctype => 'multipart/form-data') => (class => 'pure-form pure-form-stacked') => begin
- <fieldset>
-
- %= label_for mail => ucfirst l 'send_to'
- %= email_field 'to' => (id => 'mail') => (multiple => '') => (required => '')
-
- %= label_for subject => ucfirst l 'subject'
- %= text_field 'subject' => (required => '')
-
- %= label_for cc => 'CC'
- %= email_field 'cc' => (multiple => '')
-
- %= label_for bcc => 'BCC'
- %= email_field 'bcc' => (multiple => '')
-
- %= label_for back_to => ucfirst l 'answer_to'
- %= email_field 'back_to'
-
- %= label_for txt => ucfirst l 'content'
- %# text_area body => (cols => 80) => (rows => 24) => (name => 'txt')
- %= text_area body => (style => 'width: 100%') => (rows => 24) => (name => 'txt')
-
- %= label_for attach => ucfirst l 'attach file'
- %= file_field 'attach'
-
- %= submit_button l('send') => (class => 'pure-button pure-button-primary')
+ %= form_for '' => (method => 'post') => (enctype => 'multipart/form-data') => (class => '') => begin
+
+ <div class=field>
+ %= label_for mail => ucfirst l('send_to') => (class => 'label')
+ <div class=control>
+ %= email_field 'to' => (id => 'mail') => (multiple => '') => (required => '') => (class => 'input')
+ </div>
+ </div>
+
+ <div class=field>
+ %= label_for subject => ucfirst l('subject') => (class => 'label')
+ <div class=control>
+ %= text_field 'subject' => (required => '') => (class => 'input')
+ </div>
+ </div>
+
+ <div class=field>
+ %= label_for cc => 'CC' => (class => 'label')
+ <div class=control>
+ %= email_field 'cc' => (multiple => '') => (class => 'input')
+ </div>
+ </div>
+
+ <div class=field>
+ %= label_for bcc => 'BCC' => (class => 'label')
+ <div class=control>
+ %= email_field 'bcc' => (multiple => '') => (class => 'input')
+ </div>
+ </div>
+
+ <div class=field>
+ %= label_for back_to => ucfirst l('answer_to') => (class => 'label')
+ <div class=control>
+ %= email_field 'back_to' => (class => 'input')
+ </div>
+ </div>
+
+ <div class=field>
+ %= label_for txt => ucfirst l('content') => (class => 'label')
+ %= text_area body => (rows => 24) => (name => 'txt') => (class => 'textarea')
+ </div>
+
+ <div class=field>
+ <div class=file>
+ <label class=file-label>
+ %= file_field 'attach' => (class => 'file-input')
+ <div class="file-cta">
+ %= tag span => (class => 'file-label') => begin
+ %= ucfirst l('attach file')
+ % end
+ </div>
+ </label>
+ </div>
+ </div>
+
+ <div class=field>
+ <div class=control>
+ %= submit_button l('send') => (class => 'button')
+ </div>
+ </div>
%= csrf_field
- </fieldset>
% end
<nav>
- <a href="javascript:history.back()" class="pure-button"> <%= ucfirst l 'back' %> </a>
+ <a href="javascript:history.back()" class="button"> <%= ucfirst l 'back' %> </a>
</nav>
</div>