sogo/UI/Templates/MailerUI/UIxMailMainFrame.wox
2015-06-11 15:42:32 -04:00

322 lines
14 KiB
XML

<?xml version="1.0" standalone="yes"?>
<!DOCTYPE var:component>
<var:component
xmlns="http://www.w3.org/1999/xhtml"
xmlns:var="http://www.skyrix.com/od/binding"
xmlns:const="http://www.skyrix.com/od/constant"
xmlns:rsrc="OGo:url"
xmlns:label="OGo:label"
className="UIxPageFrame"
title="title"
const:userDefaultsKeys="SOGoMailMessageCheck,SOGoRefreshViewCheck,SOGoMailSortByThreads,SOGoMailListViewColumnsOrder,SOGoMailDisplayRemoteInlineImages,SOGoMailComposeMessageType,SOGoMailReplyPlacement"
const:userSettingsKeys="Mail"
const:jsFiles="Common/resource.js, Mailer/message-model.js, Mailer/mailbox-model.js, Mailer/account-model.js, vendor/ckeditor/ckeditor.js, vendor/ckeditor/ck.js">
<script type="text/javascript">
var mailAccounts = <var:string value="mailAccounts" const:escapeHTML="NO"/>;
var userNames = <var:string value="userNames" const:escapeHTML="NO" />;
var unseenCountFolders = <var:string value="unseenCountFolders" const:escapeHTML="NO"/>;
</script>
<style type="text/css">
<var:foreach list="availableLabels" item="currentLabel">
#label-menu LI.<var:string value="currentLabel.name.asCSSIdentifier"/>,
TABLE.messageList TR[labels~=<var:string const:value='"' const:escapeHTML="NO"
/><var:string value="currentLabel.name"/><var:string const:value='"' const:escapeHTML="NO"/>] TD
{ color: <var:string value="currentLabel.color"/>; }
TABLE.messageList TR[labels~=<var:string const:value='"' const:escapeHTML="NO"
/><var:string value="currentLabel.name"/><var:string const:value='"' const:escapeHTML="NO"/>]._selected TD
{ color: #fff;
background-color: <var:string value="currentLabel.color"/> !important; }
</var:foreach>
</style>
<div id="signatureFlagMessage" style="display: none" class="dialog right">
</div>
<div class="f-dropdown" id="accountIconMenu">
<ul>
<li><var:string label:value="Subscribe..." /></li>
<li><var:string label:value="Get Messages for Account" /></li>
<li><var:string label:value="New Folder..." /></li>
<li><var:string label:value="Search Messages..." /></li>
<li><var:string label:value="Properties..." /></li>
<li><var:string label:value="Delegation..." /></li>
</ul>
</div>
<div class="f-dropdown" id="inboxIconMenu">
<ul>
<li><var:string label:value="Open in New Mail Window" /></li>
<li><var:string label:value="Copy Folder Location" /></li>
<li><var:string label:value="Subscribe..." /></li>
<li><!-- separator --></li>
<li><var:string label:value="Mark Folder Read" /></li>
<li><var:string label:value="New Folder..." /></li>
<li><var:string label:value="Compact This Folder" /></li>
<li><var:string label:value="Export This Folder" /></li>
<li><!-- separator --></li>
<li><var:string label:value="Search Messages..." /></li>
<li><var:string label:value="Sharing..." /></li>
</ul>
</div>
<div class="f-dropdown" id="trashIconMenu">
<ul>
<li><var:string label:value="Open in New Mail Window" /></li>
<li><var:string label:value="Copy Folder Location" /></li>
<li><var:string label:value="Subscribe..." /></li>
<li><!-- separator --></li>
<li><var:string label:value="Mark Folder Read" /></li>
<li><var:string label:value="New Subfolder..." /></li>
<li><var:string label:value="Compact This Folder" /></li>
<li><var:string label:value="Export This Folder" /></li>
<li><var:string label:value="Empty Trash" /></li>
<li><!-- separator --></li>
<li><var:string label:value="Search Messages..." /></li>
<li><var:string label:value="Sharing..." /></li>
</ul>
</div>
<div class="f-dropdown" id="mailboxIconMenu">
<ul>
<li><var:string label:value="Open in New Mail Window" /></li>
<li><var:string label:value="Copy Folder Location" /></li>
<li><var:string label:value="Subscribe..." /></li>
<li><!-- separator --></li>
<li><var:string label:value="Mark Folder Read" /></li>
<li><var:string label:value="New Subfolder..." /></li>
<li><var:string label:value="Rename Folder..." /></li>
<li><var:string label:value="Compact This Folder" /></li>
<li><var:string label:value="Export This Folder" /></li>
<li><var:string label:value="Delete Folder" /></li>
<li><var:string label:value="Use This Folder For" /></li>
<li><!-- separator --></li>
<li><var:string label:value="Search Messages..." /></li>
<li><var:string label:value="Sharing..." /></li>
</ul>
</div>
<div class="f-dropdown" id="folderTypeMenu">
<ul>
<li><var:string label:value="Sent Messages" /></li>
<li><var:string label:value="Drafts" /></li>
<li><var:string label:value="Deleted Messages" /></li>
</ul>
</div>
<div class="f-dropdown" id="moveMailboxMenu">
<ul>
<var:foreach list="clientObject.mailAccounts" item="currentLabel">
<li><img rsrc:src="tbtv_account_17x17.png"/> <var:string value="currentLabel.name"/></li>
</var:foreach>
</ul>
</div>
<div class="f-dropdown" id="copyMailboxMenu">
<ul>
<var:foreach list="clientObject.mailAccounts" item="currentLabel">
<li><img rsrc:src="tbtv_account_17x17.png"/> <var:string value="currentLabel.name"/></li>
</var:foreach>
</ul>
</div>
<div class="f-dropdown" id="messageListMenu">
<ul>
<li><var:string label:value="Open Message In New Window"/></li>
<li><!-- separator --></li>
<li><var:string label:value="Reply to Sender Only"/></li>
<li><var:string label:value="Reply to All"/></li>
<li><var:string label:value="Forward"/></li>
<li><var:string label:value="Edit As New..."/></li>
<li><!-- separator --></li>
<li><var:string label:value="Move To"/></li>
<li><var:string label:value="Copy To"/></li>
<li><var:string label:value="Label"/></li>
<li><var:string label:value="Mark"/></li>
<li><!-- separator --></li>
<li><var:string label:value="Save As..."/></li>
<li><var:string label:value="View Message Source"/></li>
<li><var:string label:value="Print Preview"/></li>
<li><var:string label:value="Print..."/></li>
<li><var:string label:value="Delete Message"/></li>
</ul>
</div>
<div class="f-dropdown" id="messagesListMenu">
<ul>
<li><var:string label:value="Forward"/></li>
<li><!-- separator --></li>
<li><var:string label:value="Move To"/></li>
<li><var:string label:value="Copy To"/></li>
<li><var:string label:value="Label"/></li>
<li><var:string label:value="Mark"/></li>
<li><!-- separator --></li>
<li><var:string label:value="Save As..."/></li>
<li><var:string label:value="Print Preview"/></li>
<li><var:string label:value="Print..."/></li>
<li><var:string label:value="Delete Selected Messages"/></li>
</ul>
</div>
<div class="f-dropdown" id="messageContentMenu">
<ul>
<li><var:string label:value="Reply to Sender Only"/></li>
<li><var:string label:value="Reply to All"/></li>
<li><var:string label:value="Forward"/></li>
<li><var:string label:value="Edit As New..."/></li>
<li><var:string label:value="Move To"/></li>
<li><var:string label:value="Copy To"/></li>
<li><!-- separator --></li>
<li><var:string label:value="Label"/></li>
<li><var:string label:value="Mark"/></li>
<li><!-- separator --></li>
<li><var:string label:value="Save As..."/></li>
<li><var:string label:value="View Message Source"/></li>
<li><var:string label:value="Print Preview"/></li>
<li><var:string label:value="Print..."/></li>
<li><var:string label:value="Delete Message"/></li>
</ul>
</div>
<div class="f-dropdown" id="label-menu">
<ul id="" class="choiceMenu">
<li><var:string label:value="None" /></li>
<li><!-- separator --></li>
<var:foreach list="availableLabels" item="currentLabel">
<li var:class="currentLabel.name.asCSSIdentifier" var:data-name="currentLabel.name"> <var:string value="currentLabel.label"/></li>
</var:foreach>
</ul>
</div>
<div class="f-dropdown" id="mark-menu">
<ul id="" class="choiceMenu">
<li><var:string label:value="As Read" /></li>
<li><var:string label:value="Thread As Read" /></li>
<li><var:string label:value="As Read By Date..." /></li>
<li><var:string label:value="All Read" /></li>
<li><!-- separator --></li>
<li><var:string label:value="Flag" /></li>
</ul>
</div>
<div class="f-dropdown" id="addressMenu">
<ul>
<li id="add_to_addressbook"><var:string label:value="Add to Address Book..."/></li>
<li id="compose_mailto"><var:string label:value="Compose Mail To"/></li>
</ul>
</div>
<div class="f-dropdown" id="imageMenu">
<ul>
<li id="save_image"><var:string label:value="Save Image"/></li>
</ul>
</div>
<div data-ui-view="mailboxes"><!-- mailboxes list --></div>
<script type="text/ng-template" id="mailboxes.html">
<!-- dropdown menu for addressbook options button -->
<div id="folderProperties" class="f-dropdown icons-dropdown" data-dropdown-content="dropdown-content">
<ul class="button-group">
<li data-ng-show="currentFolder.type == 'folder'">
<span class="button" data-ng-click="edit()"><i class="icon-pencil"><!-- rename --></i></span>
</li>
<li data-ng-show="currentFolder.type == 'folder'">
<span class="button" data-ng-click="share()"><i class="icon-earth"><!-- share --></i></span>
</li>
<li>
<span class="button" data-ng-click="exportMails()"><i class="icon-ion-ios7-upload-outline"><!-- export --></i></span>
</li>
<li data-ng-show="currentFolder.type == 'folder'">
<span class="button" data-ng-click="confirmDelete()"><i class="icon-trash"><!-- delete --></i></span>
</li>
</ul>
</div>
<div id="mailboxesList" class="folders-list">
<div class="newItemsToolbar">
<a class="button tiny radius split" data-ui-sref="mail.newMessage()"><var:string label:value="Compose"/><span data-dropdown-toggle="#draftsDrop"></span></a><br/>
</div>
<div class="scrollView">
<ul data-ng-repeat="account in accounts track by account.id">
<li><label>{{account.name}}</label></li>
<li data-ng-repeat="folder in account.$flattenMailboxes() track by folder.path"
data-ng-class="{_selected: folder.id == currentFolder.id}"
data-ng-click="setCurrentFolder(account, folder)">
<span class="folder-container">
<span class="folder-content">
<i class="icon icon-ion-folder"
data-ng-class="'childLevel' + folder.level"><!-- folder --></i>
<form>
<a data-ng-cloak="ng-cloak">{{folder.name}}</a>
</form>
<span class="icon ng-hide" data-ng-cloak="ng-cloak">
<a class="icon" href="#"
data-dropdown-toggle="#folderProperties"
data-options="align:right"><i class="icon-cog"><!-- options --></i></a>
</span>
</span>
</span>
</li>
<!--<sg-folder-tree data-ng-repeat="folder in account.$mailboxes track by folder.id"
data-sg-root="account"
data-sg-folder="folder"
data-sg-set-folder="setCurrentFolder"> tree </sg-folder-tree>-->
</ul>
</div>
</div>
<div data-ui-view="mailbox"><!-- messages list --></div>
</script>
<script type="text/ng-template" id="mailbox.html">
<div id="messagesList">
<ul data-vs-repeat="56"
data-vs-scroll-parent="#messagesList">
<li ng-repeat="currentMessage in mailbox.$messages track by currentMessage.id"
data-ng-class="{unread: !currentMessage.isread, _selected: message.id == currentMessage.id}">
<a data-ui-sref="mail.account.mailbox.message({accountId: account.id, mailboxId: (mailbox.path | encodeUri), messageId: currentMessage.uid})">
<div class="name">
{{currentMessage.$shortAddress('from')}}
<span class="right" data-ng-bind-html="currentMessage.relativedate"><!-- date --></span>
</div>
<div class="subject">{{currentMessage.subject}}</div>
<i class="icon-ion-refresh"
data-ng-hide="mailbox.$loadMessage(currentMessage.uid)"><!-- loading --></i>
</a>
</li>
</ul>
</div>
<div id="messageView" data-ui-view="message"><!-- message view --></div>
</script>
<script type="text/ng-template" id="message.html">
<div class="header">
<h2 data-ng-bind="message.subject"><!-- subject --></h2>
<h6>
<a data-ng-href="mailto:{{message.from[0].email}}"
data-ng-bind="message.from[0].full"><!-- from --></a>
-
<a data-ng-href="mailto:{{message.to[0].email}}"
data-ng-bind="message.to[0].full"><!-- to --></a>
</h6>
<p class="flags">
<span class="label radius" data-ng-repeat="flag in message.flags">{{flag}}</span>
</p>
<h6 data-ng-bind="message.date"><!-- date --></h6>
</div>
<div class="buttonsToolbar">
<span>
<a class="button tiny radius"
data-ui-sref="mail.account.mailbox.message.editMessage({accountId: account.id, mailboxId: (mailbox.path | encodeUri), messageId: message.uid})"
data-ng-show="message.isDraft"><i class="icon-pencil"><!-- edit --></i></a>
<span class="button tiny radius alert"
data-ng-click="doDelete(message)"><i class="icon-trash"><!-- delete --></i></span>
</span>
</div>
<div class="mailer_mailcontent"
data-ng-bind-html="message.$content()"><!-- msg --></div>
</script>
</var:component>