355 lines
15 KiB
XML
355 lines
15 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:label="OGo:label"
|
|
className="UIxPageFrame"
|
|
title="title"
|
|
const:userDefaultsKeys="SOGoMailMessageCheck,SOGoRefreshViewCheck,SOGoMailSortByThreads,SOGoMailListViewColumnsOrder,SOGoMailDisplayRemoteInlineImages,SOGoMailComposeMessageType,SOGoMailReplyPlacement,SOGoMailLabelsColors"
|
|
const:userSettingsKeys="Mail"
|
|
const:jsFiles="Common/resource.js, Common/user-model.js, Common/acl-model.js, Contacts/card-model.js, Contacts/addressbook-model.js, Mailer/message-model.js, Mailer/mailbox-model.js, Mailer/account-model.js, vendor/ckeditor/ckeditor.js, vendor/ckeditor/ck.js, vendor/angular-file-upload.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: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>
|
|
-->
|
|
<!--
|
|
MAIN CONTENT ROW
|
|
Content of the application view injected injected in the element bellow
|
|
MUST be the first html element after body
|
|
SHOULD be a main tag (with role="main")
|
|
|
|
Templates script tag wrappers goes next
|
|
-->
|
|
<main class="view md-layout-fill" ui-view="mailboxes" layout="row" ng-controller="navController"><!-- mailboxes list --></main>
|
|
|
|
<!-- TEMPLATE SCRIPT WRAPPER -->
|
|
<script type="text/ng-template" id="UIxMailMainFrame">
|
|
<!-- dropdown menu for mailbox options button -->
|
|
<div id="folderProperties" class ="f-dropdown icons-dropdown" dropdown-content="dropdown-content" ng-hide="true">
|
|
<ul class="button-group">
|
|
<li ng-show="currentFolder.isEditable">
|
|
<span class="button" ng-click="editFolder(currentFolder)">
|
|
<i class="icon-pencil"><!-- rename --></i>
|
|
</span>
|
|
</li>
|
|
<li ng-show="currentFolder.isEditable">
|
|
<span class="button" ng-click="newFolder(currentFolder)">
|
|
<i class="icon-plus"><!-- new mailbox --></i>
|
|
</span>
|
|
</li>
|
|
<li ng-show="currentFolder.isEditable">
|
|
<span class="button" ng-click="share()">
|
|
<i class="icon-earth"><!-- share --></i>
|
|
</span>
|
|
</li>
|
|
<li>
|
|
<span class="button" ng-click="exportMails()">
|
|
<i class="icon-ion-ios7-upload-outline"><!-- export --></i>
|
|
</span>
|
|
</li>
|
|
<li ng-show="currentFolder.isEditable">
|
|
<span class="button" ng-click="confirmDelete()">
|
|
<i class="icon-trash"><!-- delete --></i>
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<!-- Sidenav -->
|
|
<md-sidenav id="left-sidenav" class="md-sidenav-left md-whiteframe-z1 md-layout-fill" md-component-id="left" md-is-locked-open="isGtMedium" layout="column">
|
|
<var:component className="UIxSidenavToolbarTemplate" />
|
|
<md-content md-scroll-y="md-scroll-y" class="md-flex">
|
|
<section ng-repeat="account in accounts track by account.id">
|
|
<md-subheader class="sg-md-subheader">
|
|
<div layout="row" layout-align="space-between center">
|
|
<span>{{account.name}}</span>
|
|
<md-button class="iconButton"
|
|
label:aria-label="New Folder..."
|
|
ng-click="newFolder(account)">
|
|
<i class="md-icon-add-circle-outline"><!-- add --></i>
|
|
</md-button>
|
|
</div>
|
|
</md-subheader>
|
|
<md-list>
|
|
<md-list-item ng-repeat="folder in account.$flattenMailboxes() track by folder.path"
|
|
ng-click="selectFolder(account, folder)"
|
|
ng-dblclick="editFolder(folder)"
|
|
ui-sref="mail.account.mailbox({accountId: account.id, mailboxId: (folder.path | encodeUri)})"
|
|
ui-sref-active="sg-active">
|
|
<i class="md-icon-folder" ng-class="'sg-child-level-' + folder.level"><!-- icon --></i>
|
|
<p class="sg-item-name"
|
|
ng-show="editMode != folder.path">{{folder.name}}</p>
|
|
<md-input-container class="md-flex md-tile-content"
|
|
ng-show="editMode == folder.path">
|
|
<input class="folder-name" type="text"
|
|
label:aria-label="Enter the new name of your folder :"
|
|
ng-model="folder.name"
|
|
ng-blur="saveFolder(folder)"
|
|
sg-focus-on="mailboxName_{{folder.path}}"
|
|
sg-enter="saveFolder(folder)"
|
|
sg-escape="revertEditing(folder)"/>
|
|
</md-input-container>
|
|
<md-button class="iconButton md-secondary" label:aria-label="Options"
|
|
ng-show="currentFolder.path == folder.path"
|
|
ng-click="confirmDelete(folder)">
|
|
<i class="md-icon-more-vert"><!-- options --></i>
|
|
</md-button>
|
|
</md-list-item>
|
|
</md-list>
|
|
</section>
|
|
</md-content>
|
|
</md-sidenav>
|
|
|
|
<!-- Main section -->
|
|
<section layout="column" class="sg-app-content md-layout-fill">
|
|
<md-toolbar layout="column" layout-align="space-between start" class="md-tall toolbar-main">
|
|
<div class="md-toolbar-tools md-toolbar-tools-top sg-padded" layout="row" layout-align="space-between start">
|
|
<var:component className="UIxTopnavToolbarTemplate" />
|
|
<div class="sg-toolbar-group-last">
|
|
<md-button class="iconButton" label:aria-label="More">
|
|
<i class="md-icon-more-vert"><!--icon--></i>
|
|
</md-button>
|
|
</div>
|
|
</div>
|
|
<div class="md-toolbar-tools md-toolbar-tools-bottom" layout="row" layout-align="space-between center">
|
|
<div class="view-list cols-6 sg-padded" layout="row" layout-align="space-between center"
|
|
sg-search="mailbox.$filter({ sort: 'date', asc: false }, [{ searchBy: searchField, searchInput: searchText }])">
|
|
<md-input-container class="sg-search-field-container">
|
|
<label style="color: white"><i class="md-icon-search"><!--icon--></i><var:string label:value="Search"/></label>
|
|
<input name="folderSearch" type="search" style="color: white"/>
|
|
</md-input-container>
|
|
|
|
<div class="sg-toolbar-group">
|
|
<md-select class="sg-toolbar-sort md-contrast-light">
|
|
<md-option value="subject"><var:string label:value="Subject"/></md-option>
|
|
<md-option value="from"><var:string label:value="Sender"/></md-option>
|
|
<md-option value="subject_or_from"><var:string label:value="Subject or Sender"/></md-option>
|
|
<md-option value="to_or_cc"><var:string label:value="To or Cc"/></md-option>
|
|
<md-option value="body"><var:string label:value="Entire Message"/></md-option>
|
|
</md-select>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</md-toolbar>
|
|
<div layout="row" ui-view="mailbox"><!-- messages list --></div>
|
|
</section>
|
|
</script>
|
|
|
|
<script type="text/ng-template" id="UIxMailFolderTemplate">
|
|
<var:component className="UIxMailFolderTemplate" />
|
|
</script>
|
|
|
|
<script type="text/ng-template" id="UIxMailViewTemplate">
|
|
<var:component className="UIxMailViewTemplate" />
|
|
</script>
|
|
|
|
</var:component>
|