sogo/UI/Templates/MailerUI/UIxMailViewTemplate.wox
2015-08-26 17:28:03 -04:00

182 lines
8.2 KiB
XML

<?xml version='1.0' standalone='yes'?>
<container
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"
xmlns:uix="OGo:uix">
<md-content md-scroll-y="md-scroll-y" class="viewer md-padding md-flex bg-sogoPaper-50 md-whiteframe-z1">
<header class="msg-header">
<div class="msg-header-content">
<div layout="row" layout-align="start center">
<md-button class="sg-icon-button sg-msg-flag" label:aria-label="flagged" ng-click="viewer.message.toggleFlag()">
<md-icon ng-class="{'flagged': viewer.message.isflagged}">star</md-icon>
</md-button>
<h3 class="sg-md-title-msg" ng-bind="viewer.message.subject"><!-- subject --></h3>
</div>
<div class="pseudo-input-container--compact">
<label class="pseudo-input-label">
<var:string label:value="From"/>
</label>
<div layout="row" layout-align="start center">
<sg-avatar-image class="md-tile-left"
sg-email="viewer.message.from[0].email"
size="48">
<!-- contact avatar -->
</sg-avatar-image>
<div class="md-list-item-text">
<span>{{ viewer.message.from[0].name }}</span><br/>
<a class="md-caption" href="#"
ng-bind="viewer.message.from[0].email"
ng-click="viewer.newMessage($event, viewer.message.from[0])"><!-- from --></a>
</div>
</div>
</div>
<div class="pseudo-input-container--compact">
<label class="pseudo-input-label">
<var:string label:value="To"/>
</label>
<div class="pseudo-input-field" ng-hide="viewer.message.$showDetailedRecipients">
<a href="#" ng-click="viewer.message.showDetailedRecipients()">{{viewer.message.$shortRecipients()}}</a>
</div>
<div class="pseudo-input-field" ng-show="viewer.message.$showDetailedRecipients">
<span ng-repeat="recipient in viewer.message.to">
<a href="#" ng-bind="recipient.full"
ng-click="viewer.newMessage($event, recipient)"><!-- recipient --></a>
</span>
</div>
</div>
<div class="pseudo-input-container--compact" ng-show="viewer.message.$showDetailedRecipients">
<label class="pseudo-input-label" ng-show="viewer.message.cc.length > 0">
<var:string label:value="Cc"/>
</label>
<div class="pseudo-input-field">
<span ng-repeat="recipient in viewer.message.cc">
<a href="#" ng-bind="recipient.full"
ng-click="viewer.newMessage($event, recipient)"><!-- recipient --></a>
</span>
</div>
</div>
<md-chips class="sg-readonly" ng-model="viewer.message.flags" ng-change="viewer.changeFlags()">
<md-chip-template>{{viewer.service.$tags[$chip][0]}}</md-chip-template>
<md-autocomplete
md-selected-item="viewer.tags.selected"
md-selected-item-change="viewer.message.addTag(viewer.tags.selected)"
md-search-text="viewer.tags.searchText"
md-items="tag in viewer.service.filterTags(viewer.tags.searchText)"
label:placeholder="Add a tag">
<span md-highlight-text="viewer.tags.searchText">{{viewer.service.$tags[tag][0]}}</span>
</md-autocomplete>
</md-chips>
</div>
<!-- <p class="flags">
&lt;!&ndash; Todo: change the text for an icon (conditional ?) The read/unread flag doesn't make sense at his place&ndash;&gt;
<span class="pseudo-input-label" ng-repeat="flag in message.flags">{{flag}}</span>
</p>
-->
<div class="sg-icon-bar--vertical">
<md-button class="sg-icon-button show-sm"
label:aria-label="Close"
ng-click="viewer.close()">
<md-icon>close</md-icon>
</md-button>
<!-- todo: Replace md-tooltip values by localizable string variable -->
<md-button class="sg-icon-button"
ng-hide="viewer.message.isDraft"
ng-click="viewer.reply($event)"
label:aria-label="reply">
<md-tooltip md-direction="left"><var:string label:value="Reply to Sender Only"/></md-tooltip>
<md-icon>reply</md-icon>
</md-button>
<md-button class="sg-icon-button" label:aria-label="Forward"
ng-hide="viewer.message.isDraft"
ng-click="viewer.forward($event)">
<md-tooltip md-direction="left"><var:string label:value="Forward selected message"/></md-tooltip>
<md-icon>forward</md-icon>
</md-button>
<md-button class="sg-icon-button" label:aria-label="Edit"
ng-show="viewer.message.isDraft"
ng-click="viewer.edit($event)">
<md-icon>create</md-icon>
</md-button>
<md-button class="sg-icon-button" label:aria-label="Delete"
ng-click="viewer.doDelete()">
<md-tooltip md-direction="left"><var:string label:value="Delete selected message or folder"/></md-tooltip>
<md-icon>delete</md-icon>
</md-button>
<md-menu>
<md-button label:aria-label="More mail options" class="sg-icon-button" ng-click="$mdOpenMenu($event)">
<md-icon>more_vert</md-icon>
</md-button>
<md-menu-content width="4">
<md-menu-item ng-hide="viewer.message.isDraft">
<md-button label:aria-label="Reply All"
ng-click="viewer.replyAll($event)">
<var:string label:value="Reply All"/>
</md-button>
</md-menu-item>
<md-menu-item ng-show="viewer.message.$hasUnsafeContent">
<md-button label:aria-label="Load Images"
ng-click="viewer.message.loadUnsafeContent()">
<var:string label:value="Load Images"/>
</md-button>
</md-menu-item>
<md-menu-item>
<md-button label:aria-label="Save As..."
ng-click="viewer.saveMessage()">
<var:string label:value="Save As..."/>
</md-button>
</md-menu-item>
<md-menu-item>
<md-button label:aria-label="View Message Source"
ng-click="viewer.viewRawSource($event)">
<var:string label:value="View Message Source"/>
</md-button>
</md-menu-item>
</md-menu-content>
</md-menu>
</div>
</header>
<md-divider><!-- divider --></md-divider>
<div ng-show="viewer.message.shouldAskReceipt == 1"
layout-padding="layout-padding">
<md-whiteframe class="md-whiteframe-z2" layout="column"
layout-align="center start">
<md-icon>warning</md-icon>
<span><var:string label:value="The sender of this message has asked to be notified when you read this message. Do you with to notify the sender?"/></span>
<div class="md-actions" layout="row">
<md-button label:aria-label="Yes"
type="button" class="md-primary"
ng-click="viewer.message.$sendMDN()"><var:string label:value="Yes"/></md-button>
<md-button label:aria-label="No"
type="button"
ng-click="viewer.message.shouldAskReceipt = 0"><var:string label:value="No"/></md-button>
</div>
</md-whiteframe>
</div>
<div class="msg-body">
<div class="msg-date sg-md-body-multi">
<time datetime="viewer.message.date" ng-bind="viewer.message.date"><!-- date --></time>
</div>
<div layout="row" layout-wrap="layout-wrap">
<div ng-class="part.msgclass" layout="row" layout-wrap="layout-wrap" class="mailer_mailcontent" ng-repeat="part in viewer.message.$content()">
<div ng-if="part.html" ng-bind-html="part.content"><!-- msg --></div>
<div ng-if="part.compile" sg-compile="part.content"><!-- msg --></div>
</div>
</div>
</div>
</md-content>
</container>