You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

mail.html 18KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270
  1. <roundcube:object name="doctype" value="html5" />
  2. <html>
  3. <head>
  4. <title><roundcube:object name="pagetitle" /></title>
  5. <roundcube:include file="/includes/links.html" />
  6. <style type="text/css">
  7. <roundcube:if condition="env:layout != 'list'" />
  8. #mailview-top { height: 270px; }
  9. #mailview-bottom { top: 284px; height: auto; display: block; }
  10. #mailpreviewframe { display: block; }
  11. <roundcube:endif />
  12. </style>
  13. </head>
  14. <body class="minwidth">
  15. <roundcube:include file="/includes/header.html" />
  16. <div id="mainscreen">
  17. <h1 class="voice"><roundcube:label name="mail" /></h1>
  18. <!-- toolbar -->
  19. <h2 id="aria-label-toolbar" class="voice"><roundcube:label name="arialabeltoolbar" /></h2>
  20. <div id="messagetoolbar" class="toolbar" role="toolbar" aria-labelledby="aria-label-toolbar">
  21. <roundcube:button command="checkmail" type="link" class="button checkmail disabled" classAct="button checkmail" classSel="button checkmail pressed" label="refresh" title="checkmail" />
  22. <roundcube:include file="/includes/mailtoolbar.html" />
  23. </div>
  24. <div id="messagesearchtools">
  25. <!-- search filter -->
  26. <div id="searchfilter">
  27. <label for="messagessearchfilter" class="voice"><roundcube:label name="arialabelmessagessearchfilter" /></label>
  28. <roundcube:object name="searchfilter" class="searchfilter decorated" id="messagessearchfilter" aria-controls="messagelist" />
  29. </div>
  30. <!-- search box -->
  31. <div id="quicksearchbar" class="searchbox" role="search" aria-labelledby="aria-label-searchform">
  32. <h2 id="aria-label-searchform" class="voice"><roundcube:label name="arialabelmailsearchform" /></h2>
  33. <label for="quicksearchbox" class="voice"><roundcube:label name="arialabelmailquicksearchbox" /></label>
  34. <roundcube:button command="menu-open" prop="searchmenu" id="searchmenulink" class="iconbutton searchoptions" title="searchmod" label="options" aria-haspopup="true" aria-expanded="false" aria-owns="searchmenu-menu" />
  35. <roundcube:object name="searchform" id="quicksearchbox" />
  36. <roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" label="resetsearch" />
  37. <div id="searchmenu" class="popupmenu" data-editable="true">
  38. <h3 id="aria-label-searchmenu" class="voice"><roundcube:label name="searchmod" /></h3>
  39. <ul class="toolbarmenu" id="searchmenu-menu" role="menu" aria-labelledby="aria-label-searchmenu">
  40. <li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="subject" id="s_mod_subject" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="subject" /></span></label></li>
  41. <li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="from" id="s_mod_from" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="from" /></span></label></li>
  42. <li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="to" id="s_mod_to" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="to" /></span></label></li>
  43. <li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="cc" id="s_mod_cc" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="cc" /></span></label></li>
  44. <li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="bcc" id="s_mod_bcc" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="bcc" /></span></label></li>
  45. <li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="body" id="s_mod_body" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="body" /></span></label></li>
  46. <li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="text" id="s_mod_text" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="msgtext" /></span></label></li>
  47. <li role="separator" class="separator"><label><roundcube:label name="date" /></label></li>
  48. <li role="menuitem"><roundcube:object name="searchinterval" id="s_interval" onchange="rcmail.set_searchinterval($(this).val())" /></li>
  49. <li role="separator" class="separator"><label><roundcube:label name="searchscope" /></label></li>
  50. <li role="menuitem"><label><input type="radio" name="s_scope" value="base" id="s_scope_base" onclick="UI.set_searchscope(this)" /> <span><roundcube:label name="currentfolder" /></span></label></li>
  51. <li role="menuitem"><label><input type="radio" name="s_scope" value="sub" id="s_scope_sub" onclick="UI.set_searchscope(this)" /> <span><roundcube:label name="subfolders" /></span></label></li>
  52. <li role="menuitem"><label><input type="radio" name="s_scope" value="all" id="s_scope_all" onclick="UI.set_searchscope(this)" /> <span><roundcube:label name="allfolders" /></span></label></li>
  53. </ul>
  54. <div class="buttons"><a class="button" href="#" onclick="if (rcmail.command('search')) UI.show_popup('searchmenu',false)"><roundcube:label name="search" /></a></div>
  55. </div>
  56. </div>
  57. </div>
  58. <div id="mainscreencontent" class="<roundcube:var name="env:layout" />">
  59. <div id="mailview-left">
  60. <!-- folders list -->
  61. <div id="mailboxcontainer" class="uibox listbox" role="navigation" aria-labelledby="aria-label-folderlist">
  62. <h2 id="aria-label-folderlist" class="voice"><roundcube:label name="arialabelfolderlist" /></h2>
  63. <div id="folderlist-content" class="scroller withfooter">
  64. <roundcube:object name="mailboxlist" id="mailboxlist" class="treelist listing folderlist" folder_filter="mail" unreadwrap="%s" />
  65. </div>
  66. <div id="folderlist-footer" class="boxfooter">
  67. <roundcube:button name="mailboxmenulink" id="mailboxmenulink" type="link" title="folderactions" class="listbutton groupactions" onclick="UI.toggle_popup('mailboxmenu',event);return false" innerClass="inner" content="&#9881;" aria-haspopup="true" aria-expanded="false" aria-owns="mailboxoptionsmenu" />
  68. <roundcube:if condition="env:quota" />
  69. <span class="voice"><roundcube:label name="quota"></span>
  70. <roundcube:object name="quotaDisplay" id="quotadisplay" class="countdisplay" display="text" />
  71. <roundcube:endif />
  72. </div>
  73. </div>
  74. </div>
  75. <div id="mailview-right" role="main">
  76. <roundcube:if condition="env:layout == 'desktop'" />
  77. <div id="mailview-top" class="uibox">
  78. <roundcube:else />
  79. <div id="mailview-top" class="uibox fullheight">
  80. <roundcube:endif />
  81. <!-- messagelist -->
  82. <div id="messagelistheader"><roundcube:object name="listmenulink" optionsmenuIcon="true" /></div>
  83. <div id="messagelistcontainer" class="boxlistcontent" tabindex="-1">
  84. <h2 id="aria-label-messagelist" class="voice"><roundcube:label name="arialabelmessagelist" /></h2>
  85. <roundcube:object name="messages"
  86. id="messagelist"
  87. class="records-table messagelist sortheader fixedheader"
  88. optionsmenuIcon="true"
  89. aria-labelledby="aria-label-messagelist" />
  90. </div>
  91. <div class="voice" role="note">
  92. <h3><roundcube:label name="helplistnavigation" /></h3>
  93. <pre>
  94. <roundcube:label name="helplistkeyboardnavigation" />
  95. <roundcube:label name="helplistkeyboardnavmessages" />
  96. </pre>
  97. </div>
  98. <!-- list footer -->
  99. <div id="messagelistfooter">
  100. <div id="listcontrols">
  101. <roundcube:button href="#list" command="set-listmode" prop="list" class="iconbutton listmode disabled" classAct="iconbutton listmode" id="maillistmode" title="list" content="List" />
  102. <roundcube:button href="#threads" command="set-listmode" prop="threads" class="iconbutton threadmode disabled" classAct="iconbutton threadmode" id="mailthreadmode" title="threads" content="Threads" />
  103. </div>
  104. <div id="listselectors">
  105. <a href="#select" id="listselectmenulink" class="menuselector" onclick="UI.toggle_popup('listselectmenu', event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="listselectmenu-menu"><span class="handle"><roundcube:label name="select" /></span></a>
  106. <roundcube:if condition="env:threads" />
  107. &nbsp; <a href="#threads" id="threadselectmenulink" class="menuselector" onclick="UI.toggle_popup('threadselectmenu', event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="threadselectmenu-menu"><span class="handle"><roundcube:label name="threads" /></span></a>
  108. <roundcube:endif />
  109. </div>
  110. <div id="countcontrols" class="pagenav dark">
  111. <roundcube:object name="messageCountDisplay" class="countdisplay" aria-live="polite" aria-relevant="text" />
  112. <span class="pagenavbuttons">
  113. <roundcube:button command="firstpage" type="link" class="button firstpage disabled" classAct="button firstpage" classSel="button firstpage pressed" innerClass="inner" title="firstpage" label="first" />
  114. <roundcube:button command="previouspage" type="link" class="button prevpage disabled" classAct="button prevpage" classSel="button prevpage pressed" innerClass="inner" title="previouspage" label="previous" />
  115. <input id="pagejumper" class="pagejumper" type="text" size="3" disabled title="<roundcube:label name="currpage" />" />
  116. <roundcube:button command="nextpage" type="link" class="button nextpage disabled" classAct="button nextpage" classSel="button nextpage pressed" innerClass="inner" title="nextpage" label="next" />
  117. <roundcube:button command="lastpage" type="link" class="button lastpage disabled" classAct="button lastpage" classSel="button lastpage pressed" innerClass="inner" title="lastpage" label="last" />
  118. </span>
  119. </div>
  120. <roundcube:container name="listcontrols" id="listcontrols" />
  121. </div>
  122. </div><!-- end mailview-top -->
  123. <div id="mailview-bottom" class="uibox">
  124. <div id="mailpreviewframe" class="iframebox" role="complementary" aria-labelledby="aria-label-mailpreviewframe">
  125. <h2 id="aria-label-mailpreviewframe" class="voice"><roundcube:label name="arialabelmailpreviewframe" /></h2>
  126. <roundcube:object name="messagecontentframe" id="messagecontframe" style="width:100%; height:100%" frameborder="0" src="/watermark.html" title="arialabelmailpreviewframe" />
  127. </div>
  128. </div><!-- end mailview-bottom -->
  129. </div><!-- end mailview-right -->
  130. </div><!-- end mainscreencontent -->
  131. </div><!-- end mainscreen -->
  132. <div id="dragmessagemenu" class="popupmenu" aria-hidden="true">
  133. <ul class="toolbarmenu" role="menu">
  134. <roundcube:button command="move" type="link-menuitem" onclick="return rcmail.drag_menu_action('move')" label="move" classAct="active" />
  135. <roundcube:button command="copy" type="link-menuitem" onclick="return rcmail.drag_menu_action('copy')" label="copy" classAct="active" />
  136. </ul>
  137. </div>
  138. <div id="mailboxmenu" class="popupmenu" aria-hidden="true">
  139. <h3 id="aria-label-mailboxmenu" class="voice"><roundcube:label name="arialabelmailboxmenu" /></h3>
  140. <ul class="toolbarmenu" id="mailboxoptionsmenu" role="menu" aria-labelledby="aria-label-mailboxmenu">
  141. <roundcube:button command="expunge" type="link-menuitem" label="compact" classAct="active" />
  142. <roundcube:button command="purge" type="link-menuitem" label="empty" classAct="active" />
  143. <roundcube:button command="mark-all-read" type="link-menuitem" label="markallread" classAct="active" />
  144. <roundcube:button command="import-messages" type="link-menuitem" name="messageimport" classAct="active" label="importmessages" onclick="if (rcmail.command_enabled('import-messages')) rcmail.upload_input('uploadform')" />
  145. <roundcube:button command="folders" task="settings" type="link-menuitem" label="managefolders" classAct="active" />
  146. <roundcube:container name="mailboxoptions" id="mailboxoptionsmenu" />
  147. </ul>
  148. </div>
  149. <div id="listselectmenu" class="popupmenu dropdown" aria-hidden="true">
  150. <h3 id="aria-label-listselectmenu" class="voice"><roundcube:label name="arialabellistselectmenu" /></h3>
  151. <ul id="listselectmenu-menu" class="toolbarmenu iconized" role="menu" aria-labelledby="aria-label-listselectmenu">
  152. <roundcube:button command="select-all" type="link-menuitem" label="all" class="icon" classAct="icon active" innerclass="icon mail" />
  153. <roundcube:button command="select-all" type="link-menuitem" prop="page" label="currpage" class="icon" classAct="icon active" innerclass="icon list" />
  154. <roundcube:button command="select-all" type="link-menuitem" prop="unread" label="unread" class="icon" classAct="icon active" innerclass="icon unread" />
  155. <roundcube:button command="select-all" type="link-menuitem" prop="flagged" label="flagged" class="icon" classAct="icon active" innerclass="icon flagged" />
  156. <roundcube:button command="select-all" type="link-menuitem" prop="invert" label="invert" class="icon" classAct="icon active" innerclass="icon invert" />
  157. <roundcube:button command="select-none" type="link-menuitem" label="none" class="icon" classAct="icon active" innerclass="icon cross" />
  158. </ul>
  159. </div>
  160. <div id="threadselectmenu" class="popupmenu dropdown" aria-hidden="true">
  161. <h3 id="aria-label-threadselectmenu" class="voice"><roundcube:label name="arialabelthreadselectmenu" /></h3>
  162. <ul id="threadselectmenu-menu" class="toolbarmenu" role="menu" aria-labelledby="aria-label-threadselectmenu">
  163. <roundcube:button command="expand-all" type="link-menuitem" label="expand-all" class="icon" classAct="icon active" innerclass="icon conversation" />
  164. <roundcube:button command="expand-unread" type="link-menuitem" label="expand-unread" class="icon" classAct="icon active" innerclass="icon conversation" />
  165. <roundcube:button command="collapse-all" type="link-menuitem" label="collapse-all" class="icon" classAct="icon active" innerclass="icon conversation" />
  166. </ul>
  167. </div>
  168. <div id="listoptions" class="propform popupdialog" role="dialog" aria-labelledby="aria-label-listoptions" aria-hidden="true">
  169. <h2 id="aria-label-listoptions" class="voice"><roundcube:label name="arialabelmessagelistoptions" /></h2>
  170. <roundcube:if condition="!in_array('layout', (array)config:dont_override)" />
  171. <fieldset id="listoptions-layout" class="floating">
  172. <legend><roundcube:label name="layout" /></legend>
  173. <ul class="proplist">
  174. <li><label><input type="radio" name="layout" value="widescreen" /> <span><roundcube:label name="layoutwidescreen" /></span></label></li>
  175. <li><label><input type="radio" name="layout" value="desktop" /> <span><roundcube:label name="layoutdesktop" /></span></label></li>
  176. <li><label><input type="radio" name="layout" value="list" /> <span><roundcube:label name="layoutlist" /></span></label></li>
  177. </ul>
  178. </fieldset>
  179. <roundcube:endif />
  180. <roundcube:if condition="!in_array('list_cols', (array)config:dont_override)" />
  181. <fieldset id="listoptions-columns" class="floating">
  182. <legend><roundcube:label name="listcolumns" /></legend>
  183. <ul class="proplist">
  184. <li><label class="disabled"><input type="checkbox" name="list_col[]" value="threads" checked disabled /> <span><roundcube:label name="threads" /></span></label></li>
  185. <li><label class="disabled"><input type="checkbox" name="list_col[]" value="subject" checked disabled /> <span><roundcube:label name="subject" /></span></label></li>
  186. <li><label><input type="checkbox" name="list_col[]" value="fromto" /> <span><roundcube:label name="fromto" /></span></label></li>
  187. <li><label><input type="checkbox" name="list_col[]" value="from" /> <span><roundcube:label name="from" /></span></label></li>
  188. <li><label><input type="checkbox" name="list_col[]" value="to" /> <span><roundcube:label name="to" /></span></label></li>
  189. <li><label><input type="checkbox" name="list_col[]" value="replyto" /> <span><roundcube:label name="replyto" /></span></label></li>
  190. <li><label><input type="checkbox" name="list_col[]" value="cc" /> <span><roundcube:label name="cc" /></span></label></li>
  191. <li><label><input type="checkbox" name="list_col[]" value="date" /> <span><roundcube:label name="date" /></span></label></li>
  192. <li><label><input type="checkbox" name="list_col[]" value="size" /> <span><roundcube:label name="size" /></span></label></li>
  193. <li><label><input type="checkbox" name="list_col[]" value="status" /> <span><roundcube:label name="readstatus" /></span></label></li>
  194. <li><label><input type="checkbox" name="list_col[]" value="attachment" /> <span><roundcube:label name="attachment" /></span></label></li>
  195. <li><label><input type="checkbox" name="list_col[]" value="flag" /> <span><roundcube:label name="flag" /></span></label></li>
  196. <li><label><input type="checkbox" name="list_col[]" value="priority" /> <span><roundcube:label name="priority" /></span></label></li>
  197. </ul>
  198. </fieldset>
  199. <roundcube:endif />
  200. <roundcube:if condition="!in_array('message_sort_col', (array)config:dont_override)" />
  201. <fieldset id="listoptions-sortcol" class="floating">
  202. <legend><roundcube:label name="listsorting" /></legend>
  203. <ul class="proplist">
  204. <li><label><input type="radio" name="sort_col" value="" /> <span><roundcube:label name="nonesort" /></span></label></li>
  205. <li><label><input type="radio" name="sort_col" value="arrival" /> <span><roundcube:label name="arrival" /></span></label></li>
  206. <li><label><input type="radio" name="sort_col" value="date" /> <span><roundcube:label name="sentdate" /></span></label></li>
  207. <li><label><input type="radio" name="sort_col" value="subject" /> <span><roundcube:label name="subject" /></span></label></li>
  208. <li><label><input type="radio" name="sort_col" value="fromto" /> <span><roundcube:label name="fromto" /></span></label></li>
  209. <li><label><input type="radio" name="sort_col" value="from" /> <span><roundcube:label name="from" /></span></label></li>
  210. <li><label><input type="radio" name="sort_col" value="to" /> <span><roundcube:label name="to" /></span></label></li>
  211. <li><label><input type="radio" name="sort_col" value="cc" /> <span><roundcube:label name="cc" /></span></label></li>
  212. <li><label><input type="radio" name="sort_col" value="size" /> <span><roundcube:label name="size" /></span></label></li>
  213. </ul>
  214. </fieldset>
  215. <roundcube:endif />
  216. <roundcube:if condition="!in_array('message_sort_order', (array)config:dont_override)" />
  217. <fieldset id="listoptions-sortord" class="floating">
  218. <legend><roundcube:label name="listorder" /></legend>
  219. <ul class="proplist">
  220. <li><label><input type="radio" name="sort_ord" value="ASC" /> <span><roundcube:label name="asc" /></span></label></li>
  221. <li><label><input type="radio" name="sort_ord" value="DESC" /> <span><roundcube:label name="desc" /></span></label></li>
  222. </ul>
  223. </fieldset>
  224. <roundcube:endif />
  225. <br style="clear:both" />
  226. <div class="formbuttons">
  227. <roundcube:button command="menu-save" id="listmenusave" type="input" class="button mainaction" label="save" />
  228. <roundcube:button command="menu-close" prop="messagelistmenu" id="listmenucancel" type="input" class="button" label="cancel" />
  229. </div>
  230. </div>
  231. <roundcube:object name="messageimportform" id="uploadform" mode="smart" />
  232. <roundcube:include file="/includes/footer.html" />
  233. </body>
  234. </html>