mirror of
https://bitbucket.org/jsuto/piler.git
synced 2024-12-26 06:00:12 +01:00
Mobile improvement attempt
Signed-off-by: Janos SUTO <sj@acts.hu>
This commit is contained in:
parent
162f16ee53
commit
78a12afa17
11
webui/view/theme/default/assets/css/piler.css
Normal file
11
webui/view/theme/default/assets/css/piler.css
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#mainscreen{position:absolute;top:40px;right:15px;bottom:20px;left:15px;min-width:320px;z-index:0;}
|
||||||
|
#mailleftcontainer{position:absolute;top:0;left:0;bottom:0;width:195px;}
|
||||||
|
#mailrightcontent{position:absolute;top:0px;left:0;right:0;bottom:0;}
|
||||||
|
#mailcontframe{border:1px solid #999999;position:absolute;width:100%;top:1px;bottom:0;background-color:#F9F9F9;overflow:hidden;}
|
||||||
|
#mailpreviewframe{border:1px solid #999999;position:absolute;width:100%;bottom:0px;background-color:#F9F9F9;text-align:left;overflow:auto;}
|
||||||
|
.boxlistcontent{position:absolute;top:0px;bottom:34px;left:0;right:0;width:100%;overflow-y:auto;overflow-x:hidden;height:auto;}
|
||||||
|
.top0{top:0;}
|
||||||
|
.boxfooter{position:absolute;bottom:0px;left:0px;right:0px;overflow:hidden;height:33px;border-top:1px solid #ccc;background-color:#f6f6f6;min-width:320px;}
|
||||||
|
#pagingrow{height:33px;overflow:hidden;}
|
||||||
|
#pagingbox{background-color:#eeeeee;border-right:1px solid #ccc;padding:4px;height:25px;overflow:hidden;min-width:180px;}
|
||||||
|
#notesbox{display:none;}
|
@ -0,0 +1,91 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php print DEFAULT_LANG; ?>" lang="<?php print DEFAULT_LANG; ?>">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title><?php print $title; ?></title>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
||||||
|
<meta http-equiv="Content-Language" content="<?php print DEFAULT_LANG; ?>" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
|
||||||
|
<?php if(SITE_KEYWORDS) { ?><meta name="keywords" content="<?php print SITE_KEYWORDS; ?>" /><?php } ?>
|
||||||
|
<?php if(SITE_DESCRIPTION) { ?><meta name="description" content="<?php print SITE_DESCRIPTION; ?>" /><?php } ?>
|
||||||
|
<?php if(PROVIDED_BY) { ?><meta name="author" content="<?php print PROVIDED_BY; ?>" /><?php } ?>
|
||||||
|
<meta name="rating" content="general" />
|
||||||
|
<meta name="robots" content="all" />
|
||||||
|
<meta http-equiv="x-ua-compatible" content="IE=edge">
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css" integrity="sha384-HSMxcRTRxnN+Bdg0JdbxYKrThecOKuH5zCYotlSAcp1+c8xmyTe9GYg1l9a69psu"
|
||||||
|
crossorigin="anonymous">
|
||||||
|
<link rel="stylesheet" href="/view/theme/default/assets/css/piler.css" />
|
||||||
|
|
||||||
|
<?php if(BRANDING_FAVICON) { ?><link rel="shortcut icon" href="<?php print BRANDING_FAVICON; ?>" /><?php } ?>
|
||||||
|
|
||||||
|
<?php print JS_CODE; ?>
|
||||||
|
<?php print CSS_CODE; ?>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body onload="Piler.add_shortcuts();">
|
||||||
|
|
||||||
|
<div id="deleteconfirm-modal" class="modal hide fade">
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button" class="close" data-dismiss="modal" role="dialog" aria-hidden="true"><i class="glyphicon glyphicon-remove"></i></button>
|
||||||
|
<h3><?php print $text_forward_selected_emails_to; ?></h3>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<input type="text" id="restore_address" name="restore_address" />
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<a href="#" class="btn" data-dismiss="modal" aria-hidden="true"><?php print $text_close; ?></a>
|
||||||
|
<a href="#" onclick="var addr = $('#restore_address').val(); if(addr) { Piler.bulk_restore_messages('<?php print $text_restored; ?>', addr); }" class="btn btn-primary" data-dismiss="modal" aria-hidden="true">OK</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="piler1" class="container-fluid">
|
||||||
|
<input type="hidden" name="searchtype" id="searchtype" value="expert" />
|
||||||
|
<input type="hidden" name="sort" id="sort" value="date" />
|
||||||
|
<input type="hidden" name="order" id="order" value="0" />
|
||||||
|
<input type="hidden" name="ref" id="ref" value="" />
|
||||||
|
<input type="hidden" name="prefix" id="prefix" value="" />
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-xs-8"><input type="text" id="_search" name="_search" class="form-control" placeholder="Search" /></div>
|
||||||
|
<div class="col-xs-4"><button id="button_search" class="btn btn-default btn-danger" onclick="Piler.expert(this); return false;"><span class="glyphicon glyphicon-search" aria-hidden="true"></span></button></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div id="mainscreen">
|
||||||
|
<div id="mailleftcontainer">
|
||||||
|
</div>
|
||||||
|
<div id="mailrightcontainer">
|
||||||
|
|
||||||
|
<div id="mailrightcontent">
|
||||||
|
<div id="mailcontframe">
|
||||||
|
<div id="messagelistcontainer" class="boxlistcontent top0">
|
||||||
|
<?php print $content; ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
var mailviewsplit = new rcube_splitter({id:'splitter2', p1: 'mailcontframe', p2: 'mailpreviewframe', orientation: 'h', relative: true, start: (document.getElementById('mainscreen').clientHeight / 2)});
|
||||||
|
split.add_onload('mailviewsplit.init()');
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<div id="mailpreviewframe"></div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
$(document).ready(function(){
|
||||||
|
split.init();
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<?php if(TRACKING_CODE) { print TRACKING_CODE; } ?>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
90
webui/view/theme/default/templates/message/view-mobile.tpl
Normal file
90
webui/view/theme/default/templates/message/view-mobile.tpl
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
<div id="restorebox" class="alert alert-general" style="display:none;">
|
||||||
|
<?php if(Registry::get('auditor_user') == 1 && count($rcpt) > 0) { ?>
|
||||||
|
<?php foreach($rcpt as $r) { ?>
|
||||||
|
<input type="checkbox" class="restorebox" id="rcpt_<?php print $r; ?>" name="rcpt_<?php print $r; ?>" value="1" /> <?php print $r; ?><br />
|
||||||
|
<?php } ?>
|
||||||
|
<br />
|
||||||
|
<input type="button" id="restore_button" name="restore_button" value="<?php print $text_restore; ?>" class="btn btn-primary" onclick="Piler.restore_message_for_recipients(<?php print $id; ?>, '<?php print $text_restored; ?>', '<?php print $text_select_recipients; ?>');" />
|
||||||
|
<input type="button" value="<?php print $text_cancel; ?>" class="btn btn-inverse" onclick="$('#restorebox').hide();" />
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="messageheader">
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<?php if($can_download == 1) { ?>
|
||||||
|
<a class="messagelink" href="index.php?route=message/download&id=<?php print $id; ?>"><i class="icon-cloud-download"></i> <?php print $text_download_message; ?></a> |
|
||||||
|
<?php } ?>
|
||||||
|
<?php if(SMARTHOST || ENABLE_IMAP_AUTH == 1) { if(Registry::get('auditor_user') == 1) { ?>
|
||||||
|
<a class="messagelink" href="#" onclick="$('#restorebox').show();"><i class="icon-reply"></i> <?php print $text_restore_to_mailbox; ?></a> |
|
||||||
|
<?php } else if($can_restore == 1) { ?>
|
||||||
|
<a class="messagelink" href="#" onclick="Piler.restore_message(<?php print $id; ?>);"><i class="icon-reply"></i> <?php print $text_restore_to_mailbox; ?></a> |
|
||||||
|
<?php } } ?>
|
||||||
|
<a class="messagelink" href="#" onclick="Piler.view_headers(<?php print $id; ?>);"><i class="icon-envelope-alt"></i> <?php print $text_view_headers; ?></a>
|
||||||
|
|
||||||
|
<?php if(ENABLE_PDF_DOWNLOAD) { ?>
|
||||||
|
| <a class="messagelink" href="index.php?route=message/pdf&id=<?php print $id; ?>"><img src="/view/theme/default/assets/images/fileicons/pdf.png" /> <?php print "PDF"; ?></a>
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
<?php if($message['has_journal'] == 1 && Registry::get('auditor_user') == 1 && SHOW_ENVELOPE_JOURNAL == 1) { ?>
|
||||||
|
| <a class="messagelink" href="#" onclick="Piler.view_journal(<?php print $id; ?>);"><i class="icon-envelope-alt"></i> <?php print $text_view_journal_envelope; ?></a>
|
||||||
|
<?php } ?>
|
||||||
|
<?php if(Registry::get('auditor_user') == 1) { ?>
|
||||||
|
| <a class="messagelink" href="#" onclick="Piler.mark_as_private(<?php print $id; ?>, <?php $message['private'] == 1 ? print "0" : print "1" ?>);"><i class="icon-bookmark<?php if($message['private'] == 0) { ?>-empty<?php } ?>"></i> <?php print "private"; ?></a>
|
||||||
|
<?php } ?>
|
||||||
|
<?php if($spam == 1) { ?>
|
||||||
|
| <a class="messagelink" href="#" onclick="Piler.not_spam(<?php print $id; ?>);"><i class="icon-exclamation-sign"></i> <?php print $text_not_spam; ?></a>
|
||||||
|
<?php } ?>
|
||||||
|
| <a href="#" onclick="Piler.print_div('messageblock');"><i class="glyphicon glyphicon-print"></i> <?php print $text_print_message; ?></a>
|
||||||
|
|
||||||
|
<?php if(ENABLE_ON_THE_FLY_VERIFICATION == 0) {
|
||||||
|
if ($message['verification'] == 1) { ?><?php print $text_verified_flag; ?> <i class="glyphicon glyphicon-ok-sign icon-large" title="<?php print $text_verified_flag; ?>"></i><?php } else { ?><?php print $text_unverified_flag; ?> <i class="glyphicon glyphicon-remove-sign icon-large" title="<?php print $text_unverified_flag; ?>"></i><?php }
|
||||||
|
} ?>
|
||||||
|
|
||||||
|
| <a href="#" onclick="($('#notesbox').is(':hidden'))?$('#notesbox').show():$('#notesbox').hide();"><i class="glyphicon glyphicon-file"></i> <?php print $text_create_note; ?></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="notesbox" class="input-prepend input-append" style="display:none;">
|
||||||
|
<span class="add-on"><i class="icon-file-alt icon-large"></i> <?php print $text_notes; ?>:</span>
|
||||||
|
<input type="text" size="60" id="note" name="note" class="mynote" value="<?php print preg_replace("/\"/", """, $message['note']); ?>" />
|
||||||
|
<input type="button" class="btn btn-info" value="<?php print $text_save; ?>" class="message_button" onclick="Piler.add_note_to_message(<?php print $id; ?>, '<?php print $text_saved; ?>'); " />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<?php if(ENABLE_FOLDER_RESTRICTIONS == 1) { ?>
|
||||||
|
<div id="folderbox" class="input-prepend input-append">
|
||||||
|
<span class="add-on"><i class="icon-folder-open-alt icon-large"></i> <?php print $text_folder; ?>:</span>
|
||||||
|
<select name="folder_id" id="folder_id" class="span2">
|
||||||
|
<option value="0" <?php if($folder_id == 0) { ?>selected="selected"<?php } ?>>---</option>
|
||||||
|
<?php foreach ($folders as $folder) { ?>
|
||||||
|
<option value="<?php print $folder['id']; ?>" <?php if($folder_id == $folder['id']) { ?>selected="selected"<?php } ?>><?php print $folder['name']; ?></option>
|
||||||
|
<?php } ?>
|
||||||
|
</select>
|
||||||
|
<input type="button" class="btn btn-info" value="<?php print $text_save; ?>" class="message_button" onclick="Piler.update_message_folder(<?php print $id; ?>, '<?php print $text_saved; ?>'); " />
|
||||||
|
</div>
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
<div id="messageblock">
|
||||||
|
|
||||||
|
<div class="messageheader">
|
||||||
|
<strong><?php if($message['subject'] == "" || $message['subject'] == "Subject:") { print "<" . $text_no_subject . ">"; } else { print $message['subject']; } ?></strong><br />
|
||||||
|
<strong><?php print $message['from']; ?></strong><br />
|
||||||
|
<strong><?php print $message['to']; ?></strong><br />
|
||||||
|
<?php if(strlen($message['cc']) > 6) { ?><strong><?php print $message['cc']; ?></strong><br /><?php } ?>
|
||||||
|
<strong><?php print $message['date']; ?></strong><br />
|
||||||
|
<?php foreach($attachments as $a) { ?>
|
||||||
|
<span><i class="attachment icon-paper-clip icon-large" title="Message Attachment"></i> <a href="index.php?route=message/attachment&id=<?php print $a['id']; ?>"><?php print $a['name']; ?></a></span>
|
||||||
|
<?php } ?><?php if(count($attachments) > 1) { ?>| <a href="index.php?route=message/attachments&id=<?php print $id; ?>"><i class="icon-briefcase"></i></a><?php } ?><br/>
|
||||||
|
</div>
|
||||||
|
<div class="messagecontents">
|
||||||
|
<?php print $message['message']; ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<?php foreach($images as $img) { ?>
|
||||||
|
<p><img src="<?php print SITE_URL; ?>/tmp/<?php print $img['name']; ?>" alt="" /></p>
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
48
webui/view/theme/default/templates/search/helper-mobile.tpl
Normal file
48
webui/view/theme/default/templates/search/helper-mobile.tpl
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
|
||||||
|
<div id="messagelistcontainer" class="boxlistcontent">
|
||||||
|
<?php if($n > 0) { ?>
|
||||||
|
<table id="results" class="table table-striped table-condensed">
|
||||||
|
<tbody>
|
||||||
|
<?php $i=0; foreach ($messages as $message) { ?>
|
||||||
|
|
||||||
|
<tr onmouseover="Piler.current_message_id = <?php print $message['id']; ?>; return false;" id="e_<?php print $message['id']; ?>" class="resultrow new <?php if($message['deleted'] == 1) { ?>xxx<?php } ?>" onclick="Piler.view_message_by_pos(<?php print $i; ?>);">
|
||||||
|
<td id="c2_r<?php print $i; ?>" class="resultcell"><?php print ($page*$page_len) + $i + 1; ?>.</td>
|
||||||
|
<td id="c3_r<?php print $i; ?>" class="resultcell"><?php print $message['date']; ?><br /><?php print $message['shortfrom']; ?><br /><?php print $message['shortsubject']; ?></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<?php $i++; } ?>
|
||||||
|
</tbody>
|
||||||
|
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<?php } else if($n == 0) { ?>
|
||||||
|
<div class="alert alert-block alert-error lead"><i class="glyphicon glyphicon-exclamation-sign icon-2x pull-left"></i> <?php print $text_empty_search_result; ?></div>
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="messagelistfooter" class="boxfooter">
|
||||||
|
<div class="row-fluid">
|
||||||
|
<div id="pagingrow" class="span4">
|
||||||
|
<div id="pagingbox">
|
||||||
|
<?php if($n > 0){ ?>
|
||||||
|
|
||||||
|
<?php if($page > 0) { ?><a href="#" class="navlink" onclick="Piler.navigation(0);"><i class="glyphicon glyphicon-chevron-left"></i></a><?php } else { ?><span class="navlink"><i class="glyphicon glyphicon-chevron-left muted"></i></span><?php } ?>
|
||||||
|
|
||||||
|
<?php if($page > 0) { ?><a href="#" class="navlink" onclick="Piler.navigation(<?php print $prev_page; ?>);"><i class="glyphicon glyphicon-menu-left"></i></a><?php } else { ?><span class="navlink"><i class="glyphicon glyphicon-menu-left"></i></span><?php } ?>
|
||||||
|
|
||||||
|
|
||||||
|
<?php print $hits_from; ?>-<?php print $hits_to; ?>, <?php print $text_total; ?>: <?php print $hits; ?><?php if($total_found > MAX_SEARCH_HITS) { ?> (<?php print $total_found; ?>)<?php } ?>
|
||||||
|
|
||||||
|
|
||||||
|
<?php if($next_page <= $total_pages){ ?><a href="#" class="navlink" onclick="Piler.navigation(<?php print $next_page; ?>);"><i class="glyphicon glyphicon-menu-right"></i></a> <?php } else { ?><span class="navlink"><i class="glyphicon glyphicon-menu-right muted"></i></span><?php } ?>
|
||||||
|
|
||||||
|
<?php if($page < $total_pages) { ?><a href="#" class="navlink" onclick="Piler.navigation(<?php print $total_pages; ?>);"><i class="glyphicon glyphicon-chevron-right"></i></a><?php } else { ?> <span class="navlink"><i class="glyphicon glyphicon-chevron-right muted"></i></span><?php } ?>
|
||||||
|
|
||||||
|
|
||||||
|
<?php } else { print $text_none_found; } ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
Loading…
Reference in New Issue
Block a user