2015-07-21 14:26:50 +02:00
|
|
|
<?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:label="OGo:label">
|
2015-12-04 21:00:58 +01:00
|
|
|
<md-dialog flex="40" flex-sm="80" flex-xs="100">
|
2015-09-28 17:27:20 +02:00
|
|
|
<md-toolbar ng-class="editor.component.getClassName('bg')">
|
|
|
|
<div class="md-toolbar-tools">
|
|
|
|
<md-icon class="material-icons sg-icon-toolbar-bg">event</md-icon>
|
|
|
|
<div class="sg-md-title md-flex">
|
|
|
|
<!-- classification -->
|
|
|
|
<md-icon ng-if="editor.component.classification == 'confidential'">visibility_off</md-icon>
|
|
|
|
<md-icon ng-if="editor.component.classification == 'private'">vpn_key</md-icon>
|
|
|
|
<!-- summary -->
|
|
|
|
{{::editor.component.summary}}
|
|
|
|
<!-- priority -->
|
|
|
|
<md-icon ng-repeat="i in ::editor.component.priority | range">star</md-icon>
|
2015-07-21 14:26:50 +02:00
|
|
|
</div>
|
2015-10-02 22:49:08 +02:00
|
|
|
<md-menu>
|
|
|
|
<md-button label:aria-label="More options" class="sg-icon-button" ng-click="$mdOpenMenu($event)">
|
|
|
|
<md-icon>more_vert</md-icon>
|
|
|
|
</md-button>
|
|
|
|
<md-menu-content>
|
|
|
|
<md-menu-item>
|
|
|
|
<md-button label:aria-label="View Raw Source"
|
2015-12-04 21:00:58 +01:00
|
|
|
ng-click="editor.toggleRawSource($event)">
|
2015-10-02 22:49:08 +02:00
|
|
|
<var:string label:value="View Raw Source"/>
|
|
|
|
</md-button>
|
|
|
|
</md-menu-item>
|
|
|
|
</md-menu-content>
|
|
|
|
</md-menu>
|
2015-09-28 17:27:20 +02:00
|
|
|
<md-button class="md-icon-button" ng-click="editor.close()">
|
|
|
|
<md-icon label:aria-label="Close">close</md-icon>
|
|
|
|
</md-button>
|
|
|
|
</div>
|
|
|
|
</md-toolbar>
|
|
|
|
<md-dialog-content>
|
2015-07-21 14:26:50 +02:00
|
|
|
<md-list>
|
|
|
|
<!-- categories -->
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-list-item ng-show="editor.component.categories.length > 0">
|
|
|
|
<md-chips class="sg-readonly" ng-model="::editor.component.categories" readonly="true">
|
2015-07-21 14:26:50 +02:00
|
|
|
<md-chip-template>
|
|
|
|
<span>{{$chip}}</span>
|
|
|
|
</md-chip-template>
|
|
|
|
</md-chips>
|
|
|
|
</md-list-item>
|
|
|
|
<!-- location -->
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-list-item ng-show="editor.component.location">
|
2015-07-21 14:26:50 +02:00
|
|
|
<md-icon>place</md-icon>
|
2015-08-05 22:44:25 +02:00
|
|
|
<p>{{::editor.component.location}}</p>
|
2015-07-21 14:26:50 +02:00
|
|
|
</md-list-item>
|
|
|
|
<!-- calendar -->
|
|
|
|
<md-list-item>
|
|
|
|
<md-icon>event</md-icon>
|
2015-08-05 22:44:25 +02:00
|
|
|
<p>{{editor.component.calendar}}</p>
|
2015-07-21 14:26:50 +02:00
|
|
|
</md-list-item>
|
|
|
|
<!-- start/end dates -->
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-list-item ng-class="{ 'md-2-line': editor.component.isAllDay, 'md-3-line': !editor.component.isAllDay }">
|
2015-07-21 14:26:50 +02:00
|
|
|
<md-icon>access_time</md-icon>
|
2015-11-26 18:03:35 +01:00
|
|
|
<div class="md-list-item-text" ng-show="editor.component.startDate">
|
|
|
|
<p><var:string label:value="Start"/></p>
|
|
|
|
<h3>{{::editor.component.localizedStartDate}}</h3>
|
|
|
|
<h3 ng-hide="editor.component.isAllDay">{{::editor.component.localizedStartTime}}</h3>
|
|
|
|
</div>
|
|
|
|
<div class="md-list-item-text" ng-show="editor.component.endDate">
|
|
|
|
<p><var:string label:value="End"/></p>
|
|
|
|
<h3>{{::editor.component.localizedEndDate}}</h3>
|
|
|
|
<h3 ng-hide="editor.component.isAllDay">{{::editor.component.localizedEndTime}}</h3>
|
2015-07-21 14:26:50 +02:00
|
|
|
</div>
|
|
|
|
</md-list-item>
|
|
|
|
<!-- is transparent -->
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-list-item ng-show="editor.component.isTransparent">
|
2015-07-21 14:26:50 +02:00
|
|
|
<md-icon>event_available</md-icon>
|
|
|
|
<p><var:string label:value="Show Time as Free"/></p>
|
|
|
|
</md-list-item>
|
|
|
|
<!-- send appointment notifications -->
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-list-item ng-show="editor.component.sendAppointmentNotifications">
|
2015-07-21 14:26:50 +02:00
|
|
|
<md-icon>send</md-icon>
|
|
|
|
<p><var:string label:value="Send Appointment Notifications"/></p>
|
|
|
|
</md-list-item>
|
|
|
|
<!-- attach urls -->
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-list-item ng-show="editor.component.attachUrls.length > 0">
|
2015-07-21 14:26:50 +02:00
|
|
|
<md-icon>link</md-icon>
|
2016-01-15 15:25:28 +01:00
|
|
|
<p ng-repeat="url in ::editor.component.attachUrls"><a target="_new" ng-href="{{url.value}}">{{url.value}}</a></p>
|
2015-07-21 14:26:50 +02:00
|
|
|
</md-list-item>
|
|
|
|
<!-- comment -->
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-list-item ng-show="editor.component.comment">
|
2015-07-21 14:26:50 +02:00
|
|
|
<md-icon>mode_comment</md-icon>
|
2015-08-05 22:44:25 +02:00
|
|
|
<p>{{::editor.component.comment}}</p>
|
2015-07-21 14:26:50 +02:00
|
|
|
</md-list-item>
|
|
|
|
<!-- repeat -->
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-list-item ng-show="editor.component.$isRecurrent">
|
2015-07-21 14:26:50 +02:00
|
|
|
<md-icon>repeat</md-icon>
|
2015-11-12 18:29:10 +01:00
|
|
|
<p>{{editor.component.repeatDescription()}}</p>
|
2015-07-21 14:26:50 +02:00
|
|
|
</md-list-item>
|
|
|
|
<!-- reminder -->
|
2015-11-12 18:29:10 +01:00
|
|
|
<md-list-item ng-hide="!editor.component.$hasAlarm || editor.component.userHasRSVP">
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-icon>alarm_on</md-icon>
|
2015-11-12 18:29:10 +01:00
|
|
|
<p>{{editor.component.alarmDescription()}}</p>
|
2015-07-21 14:26:50 +02:00
|
|
|
</md-list-item>
|
2015-10-02 17:15:26 +02:00
|
|
|
<md-list-item layout-align="start start" ng-show="editor.component.organizer">
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-icon>people</md-icon>
|
|
|
|
<div layout="column" layout-fill="layout-fill">
|
|
|
|
<!-- organizer -->
|
|
|
|
<div class="pseudo-input-container" ng-show="editor.component.organizer">
|
|
|
|
<label class="pseudo-input-label"><var:string label:value="Organizer"/></label>
|
|
|
|
<md-chips class="md-contact-chips sg-readonly"
|
|
|
|
ng-model="::editor.organizer"
|
|
|
|
readonly="true">
|
|
|
|
<md-chip-template>
|
2015-09-04 15:09:43 +02:00
|
|
|
<div class="md-contact-avatar">
|
|
|
|
<sg-avatar-image sg-email="$chip.email" size="32"><!-- avatar --></sg-avatar-image>
|
|
|
|
</div>
|
2015-08-05 22:44:25 +02:00
|
|
|
<div class="md-contact-name">{{$chip.name}}</div>
|
|
|
|
</md-chip-template>
|
|
|
|
</md-chips>
|
|
|
|
</div>
|
|
|
|
<!-- attendees -->
|
|
|
|
<div class="pseudo-input-container" ng-show="editor.component.attendees.length > 0">
|
|
|
|
<label class="pseudo-input-label"><var:string label:value="Attendees"/></label>
|
|
|
|
<!-- md-contact-chips don't support "readonly", so we build them using md-chips
|
|
|
|
in readonly mode and a template similar to the one of md-contact-chips -->
|
|
|
|
<md-chips class="md-contact-chips sg-readonly"
|
|
|
|
ng-model="::editor.component.attendees"
|
|
|
|
readonly="true">
|
|
|
|
<md-chip-template>
|
2015-09-04 15:09:43 +02:00
|
|
|
<div class="md-contact-avatar">
|
|
|
|
<sg-avatar-image sg-email="$chip.email" size="32"><!-- avatar --></sg-avatar-image>
|
|
|
|
</div>
|
2015-08-05 22:44:25 +02:00
|
|
|
<div class="md-contact-name">{{$chip.name}}</div>
|
|
|
|
<md-icon ng-class="'icon-' + $chip.status"><!-- partstat --></md-icon>
|
|
|
|
</md-chip-template>
|
|
|
|
</md-chips>
|
|
|
|
</div>
|
2015-07-21 14:26:50 +02:00
|
|
|
</div>
|
|
|
|
</md-list-item>
|
2015-07-29 22:23:41 +02:00
|
|
|
</md-list>
|
2015-08-05 22:44:25 +02:00
|
|
|
<!-- invitation -->
|
|
|
|
<md-list ng-show="editor.component.userHasRSVP">
|
2015-10-02 17:15:26 +02:00
|
|
|
<md-divider><!-- divider --></md-divider>
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-subheader class="md-no-sticky sg-padded--top"><var:string label:value="You are invited to participate"/></md-subheader>
|
|
|
|
<!-- participation status -->
|
|
|
|
<md-list-item>
|
|
|
|
<md-icon>insert_invitation</md-icon>
|
2015-12-18 17:41:48 +01:00
|
|
|
<md-input-container>
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-select ng-model="editor.component.reply">
|
|
|
|
<var:foreach list="replyList" item="item">
|
|
|
|
<md-option var:value="item">
|
|
|
|
<var:string value="itemReplyText"/>
|
|
|
|
</md-option>
|
|
|
|
</var:foreach>
|
|
|
|
</md-select>
|
|
|
|
</md-input-container>
|
|
|
|
</md-list-item>
|
|
|
|
<md-list-item ng-show="editor.component.reply == 4">
|
|
|
|
<md-icon><!-- space --></md-icon>
|
|
|
|
<md-autocomplete
|
|
|
|
class="md-flex"
|
|
|
|
md-input-name="delegatedTo"
|
|
|
|
md-search-text="editor.component.delegatedTo"
|
2015-08-07 17:22:24 +02:00
|
|
|
md-selected-item="cardToAdd"
|
2015-08-05 22:44:25 +02:00
|
|
|
md-items="card in editor.cardFilter(editor.component.delegatedTo)"
|
|
|
|
md-item-text="card.$$email"
|
|
|
|
md-min-length="3"
|
|
|
|
md-no-cache="true"
|
|
|
|
label:md-floating-label="Delegated to">
|
|
|
|
<span class="md-contact-suggestion" layout="row" layout-align="space-between center">
|
|
|
|
<span class="md-contact-name"
|
|
|
|
md-highlight-text="editor.component.delegatedTo"
|
|
|
|
md-highlight-flags="^i">{{card.$$fullname}}</span> <span class="md-contact-email"
|
|
|
|
md-highlight-text="editor.component.delegatedTo"
|
|
|
|
md-highlight-flags="^i">{{card.$$email}}</span>
|
|
|
|
</span>
|
|
|
|
</md-autocomplete>
|
|
|
|
</md-list-item>
|
|
|
|
<!-- reminder -->
|
|
|
|
<md-list-item ng-show="editor.component.userHasRSVP">
|
|
|
|
<md-checkbox ng-model="editor.component.$hasAlarm"
|
|
|
|
label:aria-label="Reminder"><!-- reminder --></md-checkbox>
|
|
|
|
<p><var:string label:value="Reminder"/></p>
|
|
|
|
</md-list-item>
|
|
|
|
</md-list>
|
|
|
|
<div class="sg-inset" ng-show="editor.component.userHasRSVP">
|
|
|
|
<span ng-show="editor.component.$hasAlarm"><var:component className="UIxReminderEditor" /></span>
|
|
|
|
</div>
|
2015-07-21 14:26:50 +02:00
|
|
|
</md-dialog-content>
|
2015-11-23 22:34:02 +01:00
|
|
|
|
2015-07-27 22:02:05 +02:00
|
|
|
<!-- actions -->
|
2015-11-23 22:34:02 +01:00
|
|
|
|
|
|
|
<!-- editable but not recurrent -->
|
|
|
|
<md-dialog-actions ng-show="editor.component.isEditable()">
|
|
|
|
<md-button class="md-warn"
|
|
|
|
label:aria-label="Delete Event"
|
|
|
|
ng-click="editor.deleteAllOccurrences()">
|
|
|
|
<var:string label:value="Delete"/>
|
|
|
|
</md-button>
|
|
|
|
<div class="md-flex"><!-- spacer --></div>
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-button type="button" ng-click="editor.edit()">
|
2015-07-21 14:26:50 +02:00
|
|
|
<var:string label:value="Edit"/>
|
|
|
|
</md-button>
|
2015-11-23 22:34:02 +01:00
|
|
|
</md-dialog-actions>
|
|
|
|
<!-- editable and recurrent -->
|
|
|
|
<md-dialog-actions ng-show="editor.component.isEditableOccurrence()">
|
|
|
|
<md-menu>
|
|
|
|
<md-button class="md-warn"
|
|
|
|
label:aria-label="Delete Event"
|
|
|
|
ng-click="$mdOpenMenu()"
|
|
|
|
md-menu-origin="md-menu-origin">
|
|
|
|
<var:string label:value="Delete"/> <md-icon>arrow_drop_down</md-icon>
|
|
|
|
</md-button>
|
|
|
|
<md-menu-content>
|
|
|
|
<md-menu-item>
|
|
|
|
<md-button class="md-warn"
|
|
|
|
ng-click="editor.deleteOccurrence()">
|
|
|
|
<var:string label:value="Delete This Occurrence"/>
|
|
|
|
</md-button>
|
|
|
|
</md-menu-item>
|
|
|
|
<md-menu-item>
|
|
|
|
<md-button class="md-warn"
|
|
|
|
ng-click="editor.deleteAllOccurrences()">
|
|
|
|
<var:string label:value="Delete All Occurrences"/>
|
|
|
|
</md-button>
|
|
|
|
</md-menu-item>
|
|
|
|
</md-menu-content>
|
|
|
|
</md-menu>
|
|
|
|
<div class="md-flex"><!-- spacer --></div>
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-button type="button" ng-click="editor.editAllOccurrences()">
|
2015-07-27 22:02:05 +02:00
|
|
|
<var:string label:value="Edit All Occurrences"/>
|
|
|
|
</md-button>
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-button type="button" ng-click="editor.edit()">
|
2015-07-27 22:02:05 +02:00
|
|
|
<var:string label:value="Edit This Occurrence"/>
|
|
|
|
</md-button>
|
2015-11-23 22:34:02 +01:00
|
|
|
</md-dialog-actions>
|
|
|
|
<!-- invitation but not recurrent -->
|
|
|
|
<md-dialog-actions ng-show="editor.component.isInvitation()">
|
|
|
|
<md-button class="md-warn"
|
|
|
|
label:aria-label="Delete Event"
|
|
|
|
ng-click="editor.deleteAllOccurrences()">
|
|
|
|
<var:string label:value="Delete"/>
|
|
|
|
</md-button>
|
|
|
|
<div class="md-flex"><!-- spacer --></div>
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-button type="button" ng-click="editor.reply()">
|
|
|
|
<var:string label:value="Update"/>
|
|
|
|
</md-button>
|
2015-11-23 22:34:02 +01:00
|
|
|
</md-dialog-actions>
|
|
|
|
<!-- invitation and recurrent -->
|
|
|
|
<md-dialog-actions ng-show="editor.component.isInvitationOccurrence()">
|
|
|
|
<md-menu>
|
|
|
|
<md-button class="md-warn"
|
|
|
|
label:aria-label="Delete Event"
|
|
|
|
ng-click="$mdOpenMenu()"
|
|
|
|
md-menu-origin="md-menu-origin">
|
|
|
|
<var:string label:value="Delete"/>
|
|
|
|
</md-button>
|
|
|
|
<md-menu-content>
|
|
|
|
<md-menu-item>
|
|
|
|
<md-button class="md-warn"
|
|
|
|
ng-click="editor.deleteOccurrence()">
|
|
|
|
<var:string label:value="Delete This Occurrence"/>
|
|
|
|
</md-button>
|
|
|
|
</md-menu-item>
|
|
|
|
<md-menu-item>
|
|
|
|
<md-button class="md-warn"
|
|
|
|
ng-click="editor.deleteAllOccurrences()">
|
|
|
|
<var:string label:value="Delete All Occurrences"/>
|
|
|
|
</md-button>
|
|
|
|
</md-menu-item>
|
|
|
|
</md-menu-content>
|
|
|
|
</md-menu>
|
|
|
|
<div class="md-flex"><!-- spacer --></div>
|
2015-08-05 22:44:25 +02:00
|
|
|
<md-button type="button" ng-click="editor.replyAllOccurrences()">
|
|
|
|
<var:string label:value="Update All Occurrences"/>
|
|
|
|
</md-button>
|
|
|
|
<md-button type="button" ng-click="editor.reply()">
|
|
|
|
<var:string label:value="Update This Occurrence"/>
|
|
|
|
</md-button>
|
2015-11-23 22:34:02 +01:00
|
|
|
</md-dialog-actions>
|
2015-08-05 22:44:25 +02:00
|
|
|
</md-dialog>
|
2015-07-21 14:26:50 +02:00
|
|
|
</container>
|