summaryrefslogtreecommitdiff
path: root/templates/displayheaders/_main_table.html.ep
diff options
context:
space:
mode:
authorJannis M. Hoffmann <jannis@fehcom.de>2023-03-10 13:54:57 +0100
committerJannis M. Hoffmann <jannis@fehcom.de>2023-03-10 13:54:57 +0100
commitfcf5549584b69e62b6c2f0eb919f6799c7904211 (patch)
treee5f0e480af0f39f1c0f457ea0aca8d33f8fb4d0b /templates/displayheaders/_main_table.html.ep
parentdf59f9dec32d7f8f08706fd3eb5b784deaa0abfc (diff)
Proper recursive rendering of mails to html
1. Added raw mode to model 2. Added raw route 3. Moved readmail view parts to RenderMail plugin 4. Renamed displayheaders partial templates
Diffstat (limited to 'templates/displayheaders/_main_table.html.ep')
-rw-r--r--templates/displayheaders/_main_table.html.ep112
1 files changed, 112 insertions, 0 deletions
diff --git a/templates/displayheaders/_main_table.html.ep b/templates/displayheaders/_main_table.html.ep
new file mode 100644
index 0000000..5430c15
--- /dev/null
+++ b/templates/displayheaders/_main_table.html.ep
@@ -0,0 +1,112 @@
+% my $sort_param = begin
+ % my $param = shift;
+
+ %= link_to url_with->query(sort => $param eq (param('sort') || '') ? '!' . $param : $param) => begin
+ % no warnings qw(experimental::smartmatch);
+ %= do { given (param('sort')) { '↑' when ($param); '↓' when ('!' . $param) } }
+ %= ucfirst l $param;
+ % end
+
+% end
+
+<table id=mail-headers class="pure-table pure-table-horizontal">
+
+ <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">
+ %= $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 = 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 class="pure-u-1 pure-u-md-12-24">
+ %= link_to $msg->{head}{subject} || '_' => read => {id => $msg->{message_handle}}
+ </div>
+
+ </div>
+ </td>
+
+ <td class="hide-small" style="text-align: right; white-space: nowrap">
+ %= print_sizes10 $msg->{byte_size};
+ </td>
+
+ <td>
+ %= check_box mail => $msg->{message_handle} => (form => 'move-mail')
+ </td>
+ % end
+
+ % }
+ </tbody>
+
+</table>