parent
0b10e20d37
commit
4b5abdb5ce
|
@ -8,18 +8,18 @@
|
||||||
<div layout="column" class="layout-fill sg-reversible">
|
<div layout="column" class="layout-fill sg-reversible">
|
||||||
<md-card style="overflow: hidden">
|
<md-card style="overflow: hidden">
|
||||||
<md-card-actions layout="row" layout-align="end center">
|
<md-card-actions layout="row" layout-align="end center">
|
||||||
<md-button class="sg-icon-button"
|
<md-button class="md-icon-button"
|
||||||
label:aria-label="Cancel"
|
label:aria-label="Cancel"
|
||||||
ng-click="editor.cancel()">
|
ng-click="editor.cancel()">
|
||||||
<md-icon>close</md-icon>
|
<md-icon>close</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<div class="md-flex"><!-- spacer --></div>
|
<div class="md-flex"><!-- spacer --></div>
|
||||||
<md-button class="sg-icon-button"
|
<md-button class="md-icon-button"
|
||||||
label:aria-label="Reset"
|
label:aria-label="Reset"
|
||||||
ng-click="editor.reset()">
|
ng-click="editor.reset()">
|
||||||
<md-icon>undo</md-icon>
|
<md-icon>undo</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<md-button class="sg-icon-button"
|
<md-button class="md-icon-button"
|
||||||
label:aria-label="Save"
|
label:aria-label="Save"
|
||||||
ng-click="editor.save(editor.card.$isCard()?cardForm:listForm)">
|
ng-click="editor.save(editor.card.$isCard()?cardForm:listForm)">
|
||||||
<md-icon>save</md-icon>
|
<md-icon>save</md-icon>
|
||||||
|
@ -33,7 +33,7 @@
|
||||||
|
|
||||||
<!-- contact editor -->
|
<!-- contact editor -->
|
||||||
<form name="cardForm" ng-show="editor.card.$isCard()" ng-submit="editor.save(cardForm)">
|
<form name="cardForm" ng-show="editor.card.$isCard()" ng-submit="editor.save(cardForm)">
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<var:entity const:name="nbsp"/>
|
<var:entity const:name="nbsp"/>
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="Display"/>
|
<var:string label:value="Display"/>
|
||||||
|
@ -85,20 +85,20 @@
|
||||||
<!-- org units -->
|
<!-- org units -->
|
||||||
<div class="attr" ng-repeat="unit in editor.card.orgUnits">
|
<div class="attr" ng-repeat="unit in editor.card.orgUnits">
|
||||||
<div layout="row" layout-align="center end">
|
<div layout="row" layout-align="center end">
|
||||||
<md-input-container>
|
<md-input-container class="md-flex">
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="Organization Unit"/>
|
<var:string label:value="Organization Unit"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="text" ng-model="unit.value"
|
<input type="text" ng-model="unit.value"
|
||||||
sg-focus-on="orgUnit_{{$index}}"/>
|
sg-focus-on="orgUnit_{{$index}}"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.card.$delete('orgUnits', $index)">
|
<md-button class="md-icon-button" type="button" ng-click="editor.card.$delete('orgUnits', $index)">
|
||||||
<md-icon>remove_circle</md-icon>
|
<md-icon>remove_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-layout-margin" layout="row" layout-align="start center">
|
<div class="md-layout-margin" layout="row" layout-align="start center">
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.addOrgUnit($event)">
|
<md-button class="md-icon-button" type="button" ng-click="editor.addOrgUnit($event)">
|
||||||
<md-icon>add_circle</md-icon>
|
<md-icon>add_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<label class="button-label">
|
<label class="button-label">
|
||||||
|
@ -108,14 +108,13 @@
|
||||||
|
|
||||||
<!-- categories -->
|
<!-- categories -->
|
||||||
<md-chips ng-model="editor.card.categories">
|
<md-chips ng-model="editor.card.categories">
|
||||||
<md-chip-template>
|
<md-chip-template>{{$chip.value}}</md-chip-template>
|
||||||
{{$chip.value}}
|
|
||||||
</md-chip-template>
|
|
||||||
<md-autocomplete
|
<md-autocomplete
|
||||||
md-selected-item="editor.categories.selected"
|
md-selected-item="editor.categories.selected"
|
||||||
md-selected-item-change="editor.card.$addCategory(category)"
|
md-selected-item-change="editor.card.$addCategory(category)"
|
||||||
md-search-text="editor.categories.searchText"
|
md-search-text="editor.categories.searchText"
|
||||||
md-items="category in editor.card.constructor.filterCategories(editor.categories.searchText)"
|
md-items="category in editor.card.constructor.filterCategories(editor.categories.searchText)"
|
||||||
|
md-min-length="0"
|
||||||
label:placeholder="Add a category">
|
label:placeholder="Add a category">
|
||||||
<span md-highlight-text="editor.categories.searchText">{{category}}</span>
|
<span md-highlight-text="editor.categories.searchText">{{category}}</span>
|
||||||
</md-autocomplete>
|
</md-autocomplete>
|
||||||
|
@ -124,26 +123,26 @@
|
||||||
<!-- emails -->
|
<!-- emails -->
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<div class="attr" ng-repeat="email in editor.card.emails">
|
<div class="attr" ng-repeat="email in editor.card.emails">
|
||||||
<div class="md-layout-margin" layout="row" layout-align="space-between end">
|
<div layout="row">
|
||||||
<md-input-container flex="20">
|
<md-input-container flex="20">
|
||||||
<md-select ng-model="email.type" label:placeholder="Type">
|
<md-select ng-model="email.type" label:placeholder="Type">
|
||||||
<md-option ng-repeat="type in ::editor.allEmailTypes" ng-value="type">{{ type }}</md-option>
|
<md-option ng-repeat="type in ::editor.allEmailTypes" ng-value="type">{{ type }}</md-option>
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container>
|
<md-input-container class="md-flex">
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="Email Address"/>
|
<var:string label:value="Email Address"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="email" ng-model="email.value"
|
<input type="email" ng-model="email.value"
|
||||||
sg-focus-on="email_{{$index}}"/>
|
sg-focus-on="email_{{$index}}"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.card.$delete('emails', $index)">
|
<md-button class="md-icon-button" type="button" ng-click="editor.card.$delete('emails', $index)">
|
||||||
<md-icon>remove_circle</md-icon>
|
<md-icon>remove_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-layout-margin" layout="row" layout-align="start center">
|
<div class="md-layout-margin" layout="row" layout-align="start center">
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.addEmail()">
|
<md-button class="md-icon-button" type="button" ng-click="editor.addEmail()">
|
||||||
<md-icon>add_circle</md-icon>
|
<md-icon>add_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<label class="button-label">
|
<label class="button-label">
|
||||||
|
@ -152,20 +151,21 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- screenname -->
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<div layout="row" layout-align="space-between end" ng-show="editor.card.c_screenname != null">
|
<div layout="row" ng-show="editor.card.c_screenname != null">
|
||||||
<md-input-container>
|
<md-input-container class="md-flex">
|
||||||
<label class="pseudo-input-label">
|
<label class="pseudo-input-label">
|
||||||
<var:string label:value="Screen Name"/>
|
<var:string label:value="Screen Name"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="text" ng-model="editor.card.c_screenname"/>
|
<input type="text" ng-model="editor.card.c_screenname"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.card.$delete('c_screenname', -1)">
|
<md-button class="md-icon-button" type="button" ng-click="editor.card.$delete('c_screenname', -1)">
|
||||||
<md-icon>remove_circle</md-icon>
|
<md-icon>remove_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-layout-margin" layout="row" layout-align="start center" ng-show="editor.card.c_screenname == null">
|
<div class="md-layout-margin" layout="row" layout-align="start center" ng-show="editor.card.c_screenname == null">
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.addScreenName($event)">
|
<md-button class="md-icon-button" type="button" ng-click="editor.addScreenName($event)">
|
||||||
<md-icon>add_circle</md-icon>
|
<md-icon>add_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<label class="button-label">
|
<label class="button-label">
|
||||||
|
@ -184,12 +184,12 @@
|
||||||
<md-datepicker class="pseudo-input-field"
|
<md-datepicker class="pseudo-input-field"
|
||||||
ng-model="editor.card.birthday"><!-- birthday --></md-datepicker>
|
ng-model="editor.card.birthday"><!-- birthday --></md-datepicker>
|
||||||
</div>
|
</div>
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.card.$delete('birthday', -1)">
|
<md-button class="md-icon-button" type="button" ng-click="editor.card.$delete('birthday', -1)">
|
||||||
<md-icon>remove_circle</md-icon>
|
<md-icon>remove_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-layout-margin" layout="row" layout-align="start center" ng-hide="editor.card.birthday">
|
<div class="md-layout-margin" layout="row" layout-align="start center" ng-hide="editor.card.birthday">
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.addBirthday()">
|
<md-button class="md-icon-button" type="button" ng-click="editor.addBirthday()">
|
||||||
<md-icon>add_circle</md-icon>
|
<md-icon>add_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<label class="button-label">
|
<label class="button-label">
|
||||||
|
@ -201,27 +201,26 @@
|
||||||
<!-- phones -->
|
<!-- phones -->
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<div class="attr" ng-repeat="phone in editor.card.phones">
|
<div class="attr" ng-repeat="phone in editor.card.phones">
|
||||||
<div class="md-layout-margin" layout="row" layout-align="space-between end">
|
<div layout="row">
|
||||||
<md-input-container flex="20">
|
<md-input-container flex="20">
|
||||||
<md-select ng-model="phone.type" label:placeholder="Type">
|
<md-select ng-model="phone.type" label:placeholder="Type">
|
||||||
<md-option ng-repeat="type in ::editor.allTelTypes" ng-value="type">{{ type }}</md-option>
|
<md-option ng-repeat="type in ::editor.allTelTypes" ng-value="type">{{ type }}</md-option>
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container>
|
<md-input-container class="md-flex">
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="Phone Number"/>
|
<var:string label:value="Phone Number"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="text" ng-model="phone.value"
|
<input type="text" ng-model="phone.value"
|
||||||
sg-focus-on="phone_{{$index}}"/>
|
sg-focus-on="phone_{{$index}}"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.card.$delete('phones', $index)">
|
<md-button class="md-icon-button" type="button" ng-click="editor.card.$delete('phones', $index)">
|
||||||
<md-icon>remove_circle</md-icon>
|
<md-icon>remove_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div layout="row" layout-align="start center">
|
||||||
<div class="md-layout-margin" layout="row" layout-align="start center">
|
<md-button class="md-icon-button" type="button" ng-click="editor.addPhone()">
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.addPhone()">
|
|
||||||
<md-icon>add_circle</md-icon>
|
<md-icon>add_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<label class="button-label">
|
<label class="button-label">
|
||||||
|
@ -233,25 +232,25 @@
|
||||||
<!-- urls -->
|
<!-- urls -->
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<div class="attr" ng-repeat="url in editor.card.urls">
|
<div class="attr" ng-repeat="url in editor.card.urls">
|
||||||
<div class="md-layout-margin" layout="row" layout-align="space-between end">
|
<div layout="row">
|
||||||
<md-input-container flex="20">
|
<md-input-container flex="20">
|
||||||
<md-select ng-model="url.type" label:placeholder="Type">
|
<md-select ng-model="url.type" label:placeholder="Type">
|
||||||
<md-option ng-repeat="type in ::editor.allUrlTypes" ng-value="type">{{ type }}</md-option>
|
<md-option ng-repeat="type in ::editor.allUrlTypes" ng-value="type">{{ type }}</md-option>
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container>
|
<md-input-container class="md-flex">
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="URL"/>
|
<var:string label:value="URL"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="url" ng-model="url.value" sg-focus-on="url_{{$index}}"/>
|
<input type="url" ng-model="url.value" sg-focus-on="url_{{$index}}"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.card.$delete('urls', $index)">
|
<md-button class="md-icon-button" type="button" ng-click="editor.card.$delete('urls', $index)">
|
||||||
<md-icon>remove_circle</md-icon>
|
<md-icon>remove_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-layout-margin" layout="row" layout-align="start center">
|
<div class="md-layout-margin" layout="row" layout-align="start center">
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.addUrl()">
|
<md-button class="md-icon-button" type="button" ng-click="editor.addUrl()">
|
||||||
<md-icon>add_circle</md-icon>
|
<md-icon>add_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<label class="button-label">
|
<label class="button-label">
|
||||||
|
@ -263,72 +262,68 @@
|
||||||
<!-- addresses -->
|
<!-- addresses -->
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<div class="attr" ng-repeat="address in editor.card.addresses">
|
<div class="attr" ng-repeat="address in editor.card.addresses">
|
||||||
<div layout="row" layout-align="center end">
|
<div layout="row">
|
||||||
<md-input-container flex="20">
|
<md-input-container flex="20">
|
||||||
<md-select ng-model="address.type" label:placeholder="Type">
|
<md-select ng-model="address.type" label:placeholder="Type">
|
||||||
<md-option ng-repeat="type in ::editor.allAddressTypes" ng-value="type">{{ type }}</md-option>
|
<md-option ng-repeat="type in ::editor.allAddressTypes" ng-value="type">{{ type }}</md-option>
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container>
|
<md-input-container class="md-flex">
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="street"/>
|
<var:string label:value="street"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="text" ng-model="address.street"
|
<input type="text" ng-model="address.street"
|
||||||
sg-focus-on="address_{{$index}}"/>
|
sg-focus-on="address_{{$index}}"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container>
|
|
||||||
<label>
|
|
||||||
<var:string label:value=""/>
|
|
||||||
</label>
|
|
||||||
<input type="text" ng-model="address.street2"/>
|
|
||||||
</md-input-container>
|
|
||||||
</div>
|
</div>
|
||||||
<div layout="row" layout-align="center end">
|
<div layout="row">
|
||||||
<md-input-container>
|
<md-input-container flex="20">
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="Postoffice"/>
|
<var:string label:value="Postoffice"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="text" ng-model="address.postoffice"/>
|
<input type="text" ng-model="address.postoffice"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
<md-input-container class="md-flex">
|
||||||
|
<label>
|
||||||
|
<var:string label:value="street (continued)"/>
|
||||||
|
</label>
|
||||||
|
<input type="text" ng-model="address.street2"/>
|
||||||
|
</md-input-container>
|
||||||
</div>
|
</div>
|
||||||
<div layout="row" layout-align="center end">
|
<div layout="row">
|
||||||
<md-input-container>
|
<md-input-container flex="50" flex-xs="100">
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="City"/>
|
<var:string label:value="City"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="text" ng-model="address.locality"/>
|
<input type="text" ng-model="address.locality"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
</div>
|
<md-input-container flex="50" flex-xs="100">
|
||||||
<div layout="row" layout-align="center end">
|
|
||||||
<md-input-container>
|
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="Region"/>
|
<var:string label:value="Region"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="text" ng-model="address.region"/>
|
<input type="text" ng-model="address.region"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
</div>
|
</div>
|
||||||
<div layout="row" layout-align="center end">
|
<div layout="row">
|
||||||
<md-input-container>
|
<md-input-container flex="50" flex-xs="100">
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="Country"/>
|
<var:string label:value="Country"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="text" ng-model="address.country"/>
|
<input type="text" ng-model="address.country"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
</div>
|
<md-input-container class="md-flex">
|
||||||
<div layout="row" layout-align="center end">
|
|
||||||
<md-input-container>
|
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="Postal Code"/>
|
<var:string label:value="Postal Code"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="text" ng-model="address.postalcode"/>
|
<input type="text" ng-model="address.postalcode"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.card.$delete('addresses', $index)">
|
<md-button class="md-icon-button" type="button" ng-click="editor.card.$delete('addresses', $index)">
|
||||||
<md-icon>remove_circle</md-icon>
|
<md-icon>remove_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="md-layout-margin" layout="row" layout-align="start center">
|
<div class="md-layout-margin" layout="row" layout-align="start center">
|
||||||
<md-button class="sg-icon-button" type="button" ng-click="editor.addAddress()">
|
<md-button class="md-icon-button" type="button" ng-click="editor.addAddress()">
|
||||||
<md-icon>add_circle</md-icon>
|
<md-icon>add_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<label class="button-label">
|
<label class="button-label">
|
||||||
|
@ -338,7 +333,7 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- note -->
|
<!-- note -->
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label class="right inline">
|
<label class="right inline">
|
||||||
<var:string label:value="Note"/>
|
<var:string label:value="Note"/>
|
||||||
</label>
|
</label>
|
||||||
|
|
|
@ -23,15 +23,15 @@
|
||||||
<md-dialog-content class="md-padding">
|
<md-dialog-content class="md-padding">
|
||||||
<div layout="column">
|
<div layout="column">
|
||||||
<div class="sg-md-title"><var:string label:value="Authenticated User Access"/></div>
|
<div class="sg-md-title"><var:string label:value="Authenticated User Access"/></div>
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="CardDAV URL"/></label>
|
<label><var:string label:value="CardDAV URL"/></label>
|
||||||
<input type="text" ng-model="links.addressbook.urls.cardDavURL" ng-readonly="true"/>
|
<input type="text" ng-model="links.addressbook.urls.cardDavURL" ng-readonly="true"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
</div>
|
</div>
|
||||||
<var:if condition="isPublicAccessEnabled">
|
<var:if condition="isPublicAccessEnabled">
|
||||||
<div layout="column" layout-padding="layout-padding">
|
<div layout="column">
|
||||||
<div class="sg-md-title"><var:string label:value="Public Access"/></div>
|
<div class="sg-md-title"><var:string label:value="Public Access"/></div>
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="CardDAV URL"/></label>
|
<label><var:string label:value="CardDAV URL"/></label>
|
||||||
<input type="text" ng-model="links.addressbook.urls.publicCardDavURL" ng-readonly="true"/>
|
<input type="text" ng-model="links.addressbook.urls.publicCardDavURL" ng-readonly="true"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<md-toolbar>
|
<md-toolbar>
|
||||||
<div class="md-toolbar-tools">
|
<div class="md-toolbar-tools">
|
||||||
<!-- name -->
|
<!-- name -->
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Name"/></label>
|
<label><var:string label:value="Name"/></label>
|
||||||
<input type="text"
|
<input type="text"
|
||||||
class="md-title"
|
class="md-title"
|
||||||
|
|
|
@ -275,14 +275,15 @@
|
||||||
</div>
|
</div>
|
||||||
<!-- search mode -->
|
<!-- search mode -->
|
||||||
<div class="md-toolbar-tools sg-toolbar-secondary"
|
<div class="md-toolbar-tools sg-toolbar-secondary"
|
||||||
|
layout="row"
|
||||||
ng-show="addressbook.mode.search"
|
ng-show="addressbook.mode.search"
|
||||||
sg-search="addressbook.selectedFolder.$filter(searchText, { search: searchField })">
|
sg-search="addressbook.selectedFolder.$filter(searchText, { search: searchField })">
|
||||||
<md-button class="sg-icon-button"
|
<md-button class="md-icon-button"
|
||||||
sg-search-cancel="addressbook.cancelSearch()"
|
sg-search-cancel="addressbook.cancelSearch()"
|
||||||
label:aria-label="Back">
|
label:aria-label="Back">
|
||||||
<md-icon>arrow_back</md-icon>
|
<md-icon>arrow_back</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<md-input-container md-no-float="md-no-float">
|
<md-input-container class="md-flex" md-no-float="md-no-float">
|
||||||
<input name="folderSearch" type="search" label:placeholder="Search"/>
|
<input name="folderSearch" type="search" label:placeholder="Search"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container flex="25">
|
<md-input-container flex="25">
|
||||||
|
|
|
@ -16,8 +16,9 @@
|
||||||
</div>
|
</div>
|
||||||
</md-toolbar>
|
</md-toolbar>
|
||||||
<md-dialog-content class="md-dialog-content">
|
<md-dialog-content class="md-dialog-content">
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><md-icon>search</md-icon><var:string label:value="Search User"/></label>
|
<md-icon>search</md-icon>
|
||||||
|
<label><var:string label:value="Search User"/></label>
|
||||||
<input type="input"
|
<input type="input"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
ng-model="subscribe.searchText"
|
ng-model="subscribe.searchText"
|
||||||
|
|
|
@ -117,6 +117,7 @@
|
||||||
</div>
|
</div>
|
||||||
<!-- search mode -->
|
<!-- search mode -->
|
||||||
<div class="md-toolbar-tools sg-toolbar-secondary"
|
<div class="md-toolbar-tools sg-toolbar-secondary"
|
||||||
|
layout="row"
|
||||||
ng-show="mailbox.mode.search"
|
ng-show="mailbox.mode.search"
|
||||||
sg-search="mailbox.selectedFolder.$filter({ sort: 'date', asc: false }, [{ searchBy: searchField, searchInput: searchText }])">
|
sg-search="mailbox.selectedFolder.$filter({ sort: 'date', asc: false }, [{ searchBy: searchField, searchInput: searchText }])">
|
||||||
<md-button class="sg-icon-button"
|
<md-button class="sg-icon-button"
|
||||||
|
@ -124,7 +125,7 @@
|
||||||
label:aria-label="Back">
|
label:aria-label="Back">
|
||||||
<md-icon>arrow_back</md-icon>
|
<md-icon>arrow_back</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<md-input-container md-no-float="md-no-float">
|
<md-input-container class="md-flex" md-no-float="md-no-float">
|
||||||
<input name="folderSearch" type="search" ng-minlength="3" label:placeholder="Search"/>
|
<input name="folderSearch" type="search" ng-minlength="3" label:placeholder="Search"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container flex="25">
|
<md-input-container flex="25">
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<md-toolbar>
|
<md-toolbar>
|
||||||
<div class="md-toolbar-tools">
|
<div class="md-toolbar-tools">
|
||||||
<md-icon class="material-icons sg-icon-toolbar-bg">account_box</md-icon>
|
<md-icon class="material-icons sg-icon-toolbar-bg">account_box</md-icon>
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Account Name"/></label>
|
<label><var:string label:value="Account Name"/></label>
|
||||||
<input type="text" required="required"
|
<input type="text" required="required"
|
||||||
ng-readonly="$AccountDialogController.accountId == 0"
|
ng-readonly="$AccountDialogController.accountId == 0"
|
||||||
|
@ -26,69 +26,79 @@
|
||||||
|
|
||||||
<form id="mainForm" name="accountForm" var:href="ownPath">
|
<form id="mainForm" name="accountForm" var:href="ownPath">
|
||||||
|
|
||||||
<md-input-container>
|
<div layout="row">
|
||||||
<label><var:string label:value="Server Name"/></label>
|
<md-input-container class="md-block md-flex">
|
||||||
<input type="text" required="required"
|
<label><var:string label:value="Server Name"/></label>
|
||||||
ng-readonly="$AccountDialogController.accountId == 0"
|
<input type="text" required="required"
|
||||||
ng-model="$AccountDialogController.account.serverName"/>
|
ng-disabled="$AccountDialogController.accountId == 0"
|
||||||
|
ng-model="$AccountDialogController.account.serverName"/>
|
||||||
|
</md-input-container>
|
||||||
|
|
||||||
|
<md-input-container class="md-block" flex="30">
|
||||||
|
<label><var:string label:value="Port"/></label>
|
||||||
|
<input type="number" required="required" min="1" max="65535"
|
||||||
|
ng-disabled="$AccountDialogController.accountId == 0"
|
||||||
|
ng-model="$AccountDialogController.account.port"/>
|
||||||
|
</md-input-container>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<md-input-container class="md-block md-input-has-value">
|
||||||
|
<label><var:string label:value="Encryption"/></label>
|
||||||
|
<md-radio-group ng-model="$AccountDialogController.account.encryption">
|
||||||
|
<md-radio-button ng-disabled="$AccountDialogController.accountId == 0" value="none" class="md-primary"><var:string label:value="None"/></md-radio-button>
|
||||||
|
<md-radio-button ng-disabled="$AccountDialogController.accountId == 0" value="ssl"><var:string label:value="SSL"/></md-radio-button>
|
||||||
|
<md-radio-button ng-disabled="$AccountDialogController.accountId == 0" value="tls"><var:string label:value="TLS"/></md-radio-button>
|
||||||
|
</md-radio-group>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<div layout="row">
|
||||||
<label><var:string label:value="Port"/></label>
|
<md-input-container class="md-block" flex="50">
|
||||||
<input type="number" required="required" min="1" max="65535"
|
<label><var:string label:value="User Name"/></label>
|
||||||
ng-readonly="$AccountDialogController.accountId == 0"
|
<input type="text" required="required"
|
||||||
ng-model="$AccountDialogController.account.port"/>
|
ng-disabled="$AccountDialogController.accountId == 0"
|
||||||
</md-input-container>
|
ng-model="$AccountDialogController.account.userName"/>
|
||||||
|
</md-input-container>
|
||||||
|
|
||||||
<label><var:string label:value="Encryption"/></label>
|
<md-input-container class="md-block" flex="50"
|
||||||
<md-radio-group ng-model="$AccountDialogController.account.encryption">
|
ng-hide="$AccountDialogController.accountId == 0">
|
||||||
<md-radio-button ng-disabled="$AccountDialogController.accountId == 0" value="none" class="md-primary"><var:string label:value="None"/></md-radio-button>
|
<label><var:string label:value="Password"/></label>
|
||||||
<md-radio-button ng-disabled="$AccountDialogController.accountId == 0" value="ssl"><var:string label:value="SSL"/></md-radio-button>
|
<input type="password"
|
||||||
<md-radio-button ng-disabled="$AccountDialogController.accountId == 0" value="tls"><var:string label:value="TLS"/></md-radio-button>
|
ng-model="$AccountDialogController.account.password"/>
|
||||||
</md-radio-group>
|
</md-input-container>
|
||||||
|
</div>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="User Name"/></label>
|
|
||||||
<input type="text" required="required"
|
|
||||||
ng-readonly="$AccountDialogController.accountId == 0"
|
|
||||||
ng-model="$AccountDialogController.account.userName"/>
|
|
||||||
</md-input-container>
|
|
||||||
|
|
||||||
<md-input-container>
|
|
||||||
<label><var:string label:value="Password"/></label>
|
|
||||||
<input type="password"
|
|
||||||
ng-readonly="$AccountDialogController.accountId == 0"
|
|
||||||
ng-model="$AccountDialogController.account.password"/>
|
|
||||||
</md-input-container>
|
|
||||||
|
|
||||||
<md-input-container>
|
|
||||||
<label><var:string label:value="Full Name"/></label>
|
<label><var:string label:value="Full Name"/></label>
|
||||||
<input type="text" required="required"
|
<input type="text" required="required"
|
||||||
ng-readonly="$AccountDialogController.customFromIsReadonly()"
|
ng-disabled="$AccountDialogController.customFromIsReadonly()"
|
||||||
ng-model="$AccountDialogController.account.identities[0].fullName"/>
|
ng-model="$AccountDialogController.account.identities[0].fullName"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<div layout="row">
|
||||||
<label><var:string label:value="Email"/></label>
|
<md-input-container class="md-block" flex="50">
|
||||||
<input type="email" required="required"
|
<label><var:string label:value="Email"/></label>
|
||||||
ng-readonly="$AccountDialogController.customFromIsReadonly()"
|
<input type="email" required="required"
|
||||||
ng-model="$AccountDialogController.account.identities[0].email"/>
|
ng-disabled="$AccountDialogController.customFromIsReadonly()"
|
||||||
</md-input-container>
|
ng-model="$AccountDialogController.account.identities[0].email"/>
|
||||||
|
</md-input-container>
|
||||||
<md-input-container>
|
<md-input-container class="md-block" flex="50"
|
||||||
<label><var:string label:value="Reply To Email"/></label>
|
ng-hide="$AccountDialogController.customFromIsReadonly()">
|
||||||
<input type="email" ng-model="$AccountDialogController.account.identities[0].replyTo"/>
|
<label><var:string label:value="Reply To Email"/></label>
|
||||||
</md-input-container>
|
<input type="email"
|
||||||
|
ng-model="$AccountDialogController.account.identities[0].replyTo"/>
|
||||||
|
</md-input-container>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- To switch between a simple text editor and the CK/HTML editor, we use a ng-if and not
|
<!-- To switch between a simple text editor and the CK/HTML editor, we use a ng-if and not
|
||||||
a ng-class as it doesn't get initialized by the ckEditor class directive -->
|
a ng-class as it doesn't get initialized by the ckEditor class directive -->
|
||||||
<md-input-container ng-if="$AccountDialogController.defaults.SOGoMailComposeMessageType == 'text'">
|
<md-input-container class="md-block md-flex"
|
||||||
<label><var:string label:value="Signature"/> {{$AccountDialogController.defaults.SOGoMailComposeMessageType}}</label>
|
ng-if="$AccountDialogController.defaults.SOGoMailComposeMessageType == 'text'">
|
||||||
|
<label><var:string label:value="Signature"/></label>
|
||||||
<textarea ng-model="$AccountDialogController.account.identities[0].signature"><!-- signature --></textarea>
|
<textarea ng-model="$AccountDialogController.account.identities[0].signature"><!-- signature --></textarea>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<div class="pseudo-input-container"
|
<div class="pseudo-input-container"
|
||||||
ng-if="$AccountDialogController.defaults.SOGoMailComposeMessageType == 'html'">
|
ng-if="$AccountDialogController.defaults.SOGoMailComposeMessageType == 'html'">
|
||||||
<label class="pseudo-input-label"><var:string label:value="Signature"/> {{$AccountDialogController.defaults.LocaleCode}}</label>
|
<label class="pseudo-input-label"><var:string label:value="Signature"/></label>
|
||||||
<textarea class="ck-editor"
|
<textarea class="ck-editor"
|
||||||
ck-locale="$AccountDialogController.defaults.LocaleCode"
|
ck-locale="$AccountDialogController.defaults.LocaleCode"
|
||||||
ck-options="{ 'height': '70px',
|
ck-options="{ 'height': '70px',
|
||||||
|
@ -98,39 +108,43 @@
|
||||||
ng-model="$AccountDialogController.account.identities[0].signature"><!-- signature --></textarea>
|
ng-model="$AccountDialogController.account.identities[0].signature"><!-- signature --></textarea>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<md-radio-group ng-model="$AccountDialogController.account.receipts.receiptAction">
|
<md-input-container class="md-block md-input-has-value">
|
||||||
<label><var:string label:value="When I receive a request for a return receipt"/></label>
|
<label><var:string label:value="When I receive a request for a return receipt"/></label>
|
||||||
<md-radio-button value="ignore"><var:string label:value="Never send a return receipt"/></md-radio-button>
|
<md-radio-group ng-model="$AccountDialogController.account.receipts.receiptAction">
|
||||||
<md-radio-button value="allow"><var:string label:value="Allow return receipts for some messages"/></md-radio-button>
|
<md-radio-button value="ignore"><var:string label:value="Never send a return receipt"/></md-radio-button>
|
||||||
</md-radio-group>
|
<md-radio-button value="allow"><var:string label:value="Allow return receipts for some messages"/></md-radio-button>
|
||||||
|
</md-radio-group>
|
||||||
|
</md-input-container>
|
||||||
|
|
||||||
<label>
|
<div layout="column" flex-offset="5"
|
||||||
<var:string label:value="If I'm not in the To or Cc of the message"/>
|
ng-show="$AccountDialogController.account.receipts.receiptAction == 'allow'">
|
||||||
<md-select ng-model="$AccountDialogController.account.receipts.receiptNonRecipientAction">
|
<md-input-container class="md-block md-flex">
|
||||||
<md-option const:value="ignore"><var:string label:value="Never send"/></md-option>
|
<label><var:string label:value="If I'm not in the To or Cc of the message"/></label>
|
||||||
<md-option const:value="send"><var:string label:value="Always send"/></md-option>
|
<md-select ng-model="$AccountDialogController.account.receipts.receiptNonRecipientAction">
|
||||||
<md-option const:value="ask"><var:string label:value="Ask me"/></md-option>
|
<md-option const:value="ignore"><var:string label:value="Never send"/></md-option>
|
||||||
</md-select>
|
<md-option const:value="send"><var:string label:value="Always send"/></md-option>
|
||||||
</label>
|
<md-option const:value="ask"><var:string label:value="Ask me"/></md-option>
|
||||||
|
</md-select>
|
||||||
|
</md-input-container>
|
||||||
|
|
||||||
<label>
|
<md-input-container class="md-block md-flex">
|
||||||
<var:string label:value="If the sender is outside my domain"/>
|
<label><var:string label:value="If the sender is outside my domain"/></label>
|
||||||
<md-select ng-model="$AccountDialogController.account.receipts.receiptOutsideDomainAction">
|
<md-select ng-model="$AccountDialogController.account.receipts.receiptOutsideDomainAction">
|
||||||
<md-option const:value="ignore"><var:string label:value="Never send"/></md-option>
|
<md-option const:value="ignore"><var:string label:value="Never send"/></md-option>
|
||||||
<md-option const:value="send"><var:string label:value="Always send"/></md-option>
|
<md-option const:value="send"><var:string label:value="Always send"/></md-option>
|
||||||
<md-option const:value="ask"><var:string label:value="Ask me"/></md-option>
|
<md-option const:value="ask"><var:string label:value="Ask me"/></md-option>
|
||||||
</md-select>
|
</md-select>
|
||||||
</label>
|
</md-input-container>
|
||||||
|
|
||||||
<label>
|
|
||||||
<var:string label:value="In all other cases"/>
|
|
||||||
<md-select ng-model="$AccountDialogController.account.receipts.receiptAnyAction">
|
|
||||||
<md-option const:value="ignore"><var:string label:value="Never send"/></md-option>
|
|
||||||
<md-option const:value="send"><var:string label:value="Always send"/></md-option>
|
|
||||||
<md-option const:value="ask"><var:string label:value="Ask me"/></md-option>
|
|
||||||
</md-select>
|
|
||||||
</label>
|
|
||||||
|
|
||||||
|
<md-input-container class="md-block md-flex">
|
||||||
|
<label><var:string label:value="In all other cases"/></label>
|
||||||
|
<md-select ng-model="$AccountDialogController.account.receipts.receiptAnyAction">
|
||||||
|
<md-option const:value="ignore"><var:string label:value="Never send"/></md-option>
|
||||||
|
<md-option const:value="send"><var:string label:value="Always send"/></md-option>
|
||||||
|
<md-option const:value="ask"><var:string label:value="Ask me"/></md-option>
|
||||||
|
</md-select>
|
||||||
|
</md-input-container>
|
||||||
|
</div>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
</md-dialog-content>
|
</md-dialog-content>
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
<md-toolbar>
|
<md-toolbar>
|
||||||
<div class="md-toolbar-tools">
|
<div class="md-toolbar-tools">
|
||||||
<md-icon class="material-icons sg-icon-toolbar-bg">filter_list</md-icon>
|
<md-icon class="material-icons sg-icon-toolbar-bg">filter_list</md-icon>
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Filter name"/></label>
|
<label><var:string label:value="Filter name"/></label>
|
||||||
<input class="md-title" type="text" ng-model="filterEditor.filter.name" required="required"/>
|
<input class="md-title" type="text" ng-model="filterEditor.filter.name" required="required"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
@ -29,7 +29,7 @@
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div layout="row" layout-align="start center">
|
<div layout="row" layout-align="start center">
|
||||||
<var:string label:value="For incoming messages that"/>
|
<p><var:string label:value="For incoming messages that"/></p>
|
||||||
<md-input-container class="md-flex">
|
<md-input-container class="md-flex">
|
||||||
<md-select ng-model="filterEditor.filter.match" required="required">
|
<md-select ng-model="filterEditor.filter.match" required="required">
|
||||||
<md-option const:value="all">
|
<md-option const:value="all">
|
||||||
|
@ -47,51 +47,50 @@
|
||||||
|
|
||||||
<!-- CONDITIONS -->
|
<!-- CONDITIONS -->
|
||||||
<div layout="column">
|
<div layout="column">
|
||||||
<div id="filterRules"><!-- empty -->
|
<div id="filterRules"><!-- empty --></div>
|
||||||
<md-list>
|
<div layout="row"
|
||||||
<md-list-item ng-repeat="rule in filterEditor.filter.rules">
|
ng-repeat="rule in filterEditor.filter.rules">
|
||||||
<md-input-container flex="25">
|
|
||||||
<md-select ng-model="rule.field">
|
|
||||||
<md-option ng-value="key" ng-repeat="(key, value) in filterEditor.fieldLabels">{{ value }}</md-option>
|
|
||||||
</md-select>
|
|
||||||
</md-input-container>
|
|
||||||
|
|
||||||
<md-input-container flex="25" ng-show="rule.field == 'header'">
|
<md-input-container class="md-block" flex="25">
|
||||||
<input type="text" ng-model="rule.custom_header"/>
|
<md-select ng-model="rule.field">
|
||||||
</md-input-container>
|
<md-option ng-value="key" ng-repeat="(key, value) in filterEditor.fieldLabels">{{ value }}</md-option>
|
||||||
|
</md-select>
|
||||||
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container flex="25" ng-show="rule.field == 'size'">
|
<md-input-container class="md-block" flex="25" ng-show="rule.field == 'header'">
|
||||||
<md-select ng-model="rule.operator">
|
<input type="text" ng-model="rule.custom_header"/>
|
||||||
<md-option ng-value="key" ng-repeat="(key, value) in filterEditor.numberOperatorLabels">
|
</md-input-container>
|
||||||
{{ value }}
|
|
||||||
</md-option>
|
|
||||||
</md-select>
|
|
||||||
</md-input-container>
|
|
||||||
|
|
||||||
<md-input-container flex="25" ng-show="rule.field != 'size'">
|
<md-input-container class="md-block" flex="25" ng-show="rule.field == 'size'">
|
||||||
<md-select ng-model="rule.operator">
|
<md-select ng-model="rule.operator">
|
||||||
<md-option ng-value="key" ng-repeat="(key, value) in filterEditor.textOperatorLabels">
|
<md-option ng-value="key" ng-repeat="(key, value) in filterEditor.numberOperatorLabels">
|
||||||
{{ value }}
|
{{ value }}
|
||||||
</md-option>
|
</md-option>
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container class="md-flex" md-no-float="md-no-float">
|
<md-input-container class="md-block" flex="25" ng-show="rule.field != 'size'">
|
||||||
<input type="text" label:placeholder="Value" ng-model="rule.value"/>
|
<md-select ng-model="rule.operator">
|
||||||
</md-input-container>
|
<md-option ng-value="key" ng-repeat="(key, value) in filterEditor.textOperatorLabels">
|
||||||
|
{{ value }}
|
||||||
|
</md-option>
|
||||||
|
</md-select>
|
||||||
|
</md-input-container>
|
||||||
|
|
||||||
<md-button class="sg-icon-button" type="button"
|
<md-input-container class="md-block md-flex" md-no-float="md-no-float">
|
||||||
ng-click="filterEditor.removeMailFilterRule($index)">
|
<label><var:string label:value="Value"/></label>
|
||||||
<md-icon>remove_circle</md-icon>
|
<input type="text" ng-model="rule.value"/>
|
||||||
</md-button>
|
</md-input-container>
|
||||||
|
|
||||||
</md-list-item>
|
<md-button class="md-icon-button" type="button"
|
||||||
</md-list>
|
ng-click="filterEditor.removeMailFilterRule($index)">
|
||||||
</div>
|
<md-icon>remove_circle</md-icon>
|
||||||
|
</md-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div layout="row" layout-align="end center">
|
<div layout="row" layout-align="end center">
|
||||||
<label class="button-label"><var:string label:value="Add a condition"/></label>
|
<label class="button-label"><var:string label:value="Add a condition"/></label>
|
||||||
<md-button class="sg-icon-button" type="button"
|
<md-button class="md-icon-button" type="button"
|
||||||
ng-click="filterEditor.addMailFilterRule($event)">
|
ng-click="filterEditor.addMailFilterRule($event)">
|
||||||
<md-icon>add_circle</md-icon>
|
<md-icon>add_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
|
@ -100,72 +99,74 @@
|
||||||
|
|
||||||
<!-- ACTIONS -->
|
<!-- ACTIONS -->
|
||||||
<div layout="column">
|
<div layout="column">
|
||||||
<var:string label:value="Perform these actions"/>
|
<p><var:string label:value="Perform these actions"/></p>
|
||||||
<div id="filterActions"><!-- empty --></div>
|
<div id="filterActions"><!-- empty --></div>
|
||||||
|
<div layout="row"
|
||||||
|
ng-repeat="action in filterEditor.filter.actions">
|
||||||
|
|
||||||
<md-list>
|
<md-input-container class="md-block md-flex">
|
||||||
<md-list-item layout="row" layout-align="space-between center"
|
<md-select ng-model="action.method">
|
||||||
ng-repeat="action in filterEditor.filter.actions">
|
<md-option ng-value="key" ng-repeat="(key, value) in filterEditor.methodLabels">{{ value }}</md-option>
|
||||||
<md-input-container>
|
</md-select>
|
||||||
<md-select ng-model="action.method">
|
</md-input-container>
|
||||||
<md-option ng-value="key" ng-repeat="(key, value) in filterEditor.methodLabels">{{ value }}</md-option>
|
|
||||||
</md-select>
|
|
||||||
</md-input-container>
|
|
||||||
|
|
||||||
<!-- FORWARD MESSAGE TO -->
|
<!-- FORWARD MESSAGE TO -->
|
||||||
<md-input-container ng-show="action.method == 'redirect'" >
|
<md-input-container class="md-block" flex="50" ng-show="action.method == 'redirect'" >
|
||||||
<input type="text" ng-model="action.argument"/>
|
<label><var:string label:value="Email"/></label>
|
||||||
</md-input-container>
|
<input type="text" ng-model="action.argument"/>
|
||||||
|
</md-input-container>
|
||||||
|
|
||||||
<!-- DISCARD -->
|
<!-- DISCARD -->
|
||||||
<!-- nada -->
|
<!-- nada -->
|
||||||
|
|
||||||
<!-- KEEP -->
|
<!-- KEEP -->
|
||||||
<!-- nada -->
|
<!-- nada -->
|
||||||
|
|
||||||
<!-- SEND REJECT MESSAGE -->
|
<!-- SEND REJECT MESSAGE -->
|
||||||
<md-input-container ng-show="action.method == 'reject'">
|
<md-input-container class="md-block" flex="50" ng-show="action.method == 'reject'">
|
||||||
<input type="text" ng-model="action.argument"/>
|
<label><var:string label:value="Message"/></label>
|
||||||
</md-input-container>
|
<input type="text" ng-model="action.argument"/>
|
||||||
|
</md-input-container>
|
||||||
|
|
||||||
<!-- FILE INTO -->
|
<!-- FILE INTO -->
|
||||||
<md-input-container ng-show="action.method == 'fileinto'" >
|
<md-input-container class="md-block" flex="50" ng-show="action.method == 'fileinto'" >
|
||||||
<md-select ng-model="action.argument">
|
<label><var:string label:value="Mailbox"/></label>
|
||||||
<md-option ng-value="item.path" ng-repeat="item in filterEditor.mailboxes">
|
<md-select ng-model="action.argument">
|
||||||
<div ng-class="'sg-child-level-' + item.level">
|
<md-option ng-value="item.path" ng-repeat="item in filterEditor.mailboxes">
|
||||||
{{ item.name }}
|
<div ng-class="'sg-child-level-' + item.level">
|
||||||
</div>
|
{{ item.name }}
|
||||||
</md-option>
|
</div>
|
||||||
</md-select>
|
</md-option>
|
||||||
</md-input-container>
|
</md-select>
|
||||||
|
</md-input-container>
|
||||||
|
|
||||||
<!-- FLAG WITH -->
|
<!-- FLAG WITH -->
|
||||||
<md-input-container ng-show="action.method == 'addflag'" >
|
<md-input-container class="md-block" flex="50" ng-show="action.method == 'addflag'" >
|
||||||
<md-select ng-model="action.argument" >
|
<label><var:string label:value="Flag"/></label>
|
||||||
<md-option value="seen"><var:string label:value="Seen"/></md-option>
|
<md-select ng-model="action.argument" >
|
||||||
<md-option value="deleted"><var:string label:value="Deleted"/></md-option>
|
<md-option value="seen"><var:string label:value="Seen"/></md-option>
|
||||||
<md-option value="answered"><var:string label:value="Answered"/></md-option>
|
<md-option value="deleted"><var:string label:value="Deleted"/></md-option>
|
||||||
<md-option value="flagged"><var:string label:value="Flagged"/></md-option>
|
<md-option value="answered"><var:string label:value="Answered"/></md-option>
|
||||||
<md-option value="junk"><var:string label:value="Junk"/></md-option>
|
<md-option value="flagged"><var:string label:value="Flagged"/></md-option>
|
||||||
<md-option value="not_junk"><var:string label:value="Not Junk"/></md-option>
|
<md-option value="junk"><var:string label:value="Junk"/></md-option>
|
||||||
<md-option ng-value="key" ng-repeat="(key, value) in labels">{{ value[0] }}</md-option>
|
<md-option value="not_junk"><var:string label:value="Not Junk"/></md-option>
|
||||||
</md-select>
|
<md-option ng-value="key" ng-repeat="(key, value) in labels">{{ value[0] }}</md-option>
|
||||||
</md-input-container>
|
</md-select>
|
||||||
|
</md-input-container>
|
||||||
|
|
||||||
<!-- STOP -->
|
<!-- STOP -->
|
||||||
<!-- nada -->
|
<!-- nada -->
|
||||||
|
|
||||||
<md-button class="sg-icon-button" type="button"
|
<md-button class="md-icon-button" type="button"
|
||||||
ng-click="filterEditor.removeMailFilterAction($index)">
|
ng-click="filterEditor.removeMailFilterAction($index)">
|
||||||
<md-icon>remove_circle</md-icon>
|
<md-icon>remove_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
|
|
||||||
</md-list-item>
|
</div>
|
||||||
</md-list>
|
|
||||||
|
|
||||||
<div layout="row" layout-align="end center">
|
<div layout="row" layout-align="end center">
|
||||||
<label class="button-label"><var:string label:value="Add an action"/></label>
|
<label class="button-label"><var:string label:value="Add an action"/></label>
|
||||||
<md-button class="sg-icon-button" type="button"
|
<md-button class="md-icon-button" type="button"
|
||||||
ng-click="filterEditor.addMailFilterAction($event)">
|
ng-click="filterEditor.addMailFilterAction($event)">
|
||||||
<md-icon>add_circle</md-icon>
|
<md-icon>add_circle</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
|
|
|
@ -97,71 +97,62 @@
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<div layout="row">
|
<div layout="row">
|
||||||
<div flex="50">
|
<md-input-container class="md-block" flex="50">
|
||||||
<md-input-container>
|
<label><var:string label:value="Language"/></label>
|
||||||
<label><var:string label:value="Language"/></label>
|
<md-select ng-model="app.preferences.defaults.SOGoLanguage"
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoLanguage"
|
ng-change="app.onLanguageChange()">
|
||||||
ng-change="app.onLanguageChange()">
|
<var:foreach list="languages" item="item">
|
||||||
<var:foreach list="languages" item="item">
|
<md-option var:value="item">
|
||||||
<md-option var:value="item">
|
<var:string value="languageText"/>
|
||||||
<var:string value="languageText"/>
|
</md-option>
|
||||||
</md-option>
|
</var:foreach>
|
||||||
</var:foreach>
|
</md-select>
|
||||||
</md-select>
|
</md-input-container>
|
||||||
</md-input-container>
|
<md-autocomplete
|
||||||
</div>
|
class="md-block" flex="50"
|
||||||
<div flex="50">
|
style="padding-bottom: 0"
|
||||||
<md-autocomplete
|
md-search-text="app.timeZonesSearchText"
|
||||||
style="padding-bottom: 0"
|
md-selected-item="app.preferences.defaults.SOGoTimeZone"
|
||||||
md-search-text="app.timeZonesSearchText"
|
md-items="timezone in app.timeZonesListFilter(app.timeZonesSearchText)"
|
||||||
md-selected-item="app.preferences.defaults.SOGoTimeZone"
|
md-item-text="timezone"
|
||||||
md-items="timezone in app.timeZonesListFilter(app.timeZonesSearchText)"
|
md-min-length="3"
|
||||||
md-item-text="timezone"
|
md-select-on-match="true"
|
||||||
md-min-length="3"
|
label:md-floating-label="Current Time Zone">
|
||||||
md-select-on-match="true"
|
<span md-highlight-text="app.timeZonesSearchText">{{timezone}}</span>
|
||||||
label:md-floating-label="Current Time Zone">
|
</md-autocomplete>
|
||||||
<span md-highlight-text="app.timeZonesSearchText">{{timezone}}</span>
|
|
||||||
</md-autocomplete>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div layout="row">
|
<div layout="row">
|
||||||
<div flex="30">
|
<md-input-container class="md-block" flex="30">
|
||||||
<md-input-container>
|
<label><var:string label:value="Short Date Format"/></label>
|
||||||
<label><var:string label:value="Short Date Format"/></label>
|
<md-select ng-model="app.preferences.defaults.SOGoShortDateFormat">
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoShortDateFormat">
|
<var:foreach list="shortDateFormatsList" item="item">
|
||||||
<var:foreach list="shortDateFormatsList" item="item">
|
<md-option var:value="item">
|
||||||
<md-option var:value="item">
|
<var:string value="itemShortDateFormatText"/>
|
||||||
<var:string value="itemShortDateFormatText"/>
|
</md-option>
|
||||||
</md-option>
|
</var:foreach>
|
||||||
</var:foreach>
|
</md-select>
|
||||||
</md-select>
|
</md-input-container>
|
||||||
</md-input-container>
|
<md-input-container class="md-block" flex="40">
|
||||||
</div>
|
<label><var:string label:value="Long Date Format"/></label>
|
||||||
<div flex="40">
|
<md-select ng-model="app.preferences.defaults.SOGoLongDateFormat">
|
||||||
<md-input-container>
|
<var:foreach list="longDateFormatsList" item="item">
|
||||||
<label><var:string label:value="Long Date Format"/></label>
|
<md-option var:value="item">
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoLongDateFormat">
|
<var:string value="itemLongDateFormatText"/>
|
||||||
<var:foreach list="longDateFormatsList" item="item">
|
</md-option>
|
||||||
<md-option var:value="item">
|
</var:foreach>
|
||||||
<var:string value="itemLongDateFormatText"/>
|
</md-select>
|
||||||
</md-option>
|
</md-input-container>
|
||||||
</var:foreach>
|
<md-input-container class="md-block" flex="30">
|
||||||
</md-select>
|
<label><var:string label:value="Time Format"/></label>
|
||||||
</md-input-container>
|
<md-select ng-model="app.preferences.defaults.SOGoTimeFormat">
|
||||||
</div>
|
<var:foreach list="timeFormatsList" item="item">
|
||||||
<div flex="30">
|
<md-option var:value="item">
|
||||||
<md-input-container>
|
<var:string value="itemTimeFormatText"/>
|
||||||
<label><var:string label:value="Time Format"/></label>
|
</md-option>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoTimeFormat">
|
</var:foreach>
|
||||||
<var:foreach list="timeFormatsList" item="item">
|
</md-select>
|
||||||
<md-option var:value="item">
|
</md-input-container>
|
||||||
<var:string value="itemTimeFormatText"/>
|
|
||||||
</md-option>
|
|
||||||
</var:foreach>
|
|
||||||
</md-select>
|
|
||||||
</md-input-container>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container>
|
||||||
|
@ -207,13 +198,13 @@
|
||||||
label:label="Password">
|
label:label="Password">
|
||||||
<md-content id="passwordView" class="md-padding">
|
<md-content id="passwordView" class="md-padding">
|
||||||
<div layout="row">
|
<div layout="row">
|
||||||
<md-input-container>
|
<md-input-container class="md-block" flex="50">
|
||||||
<label><var:string label:value="New password"/>
|
<label><var:string label:value="New password"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="password" ng-model="app.passwords.newPassword"/>
|
<input type="password" ng-model="app.passwords.newPassword"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block" flex="50">
|
||||||
<label><var:string label:value="Confirmation"/>
|
<label><var:string label:value="Confirmation"/>
|
||||||
</label>
|
</label>
|
||||||
<input type="password" ng-model="app.passwords.newPasswordConfirmation"/>
|
<input type="password" ng-model="app.passwords.newPasswordConfirmation"/>
|
||||||
|
@ -248,7 +239,7 @@
|
||||||
id="calendarOptionsView-content">
|
id="calendarOptionsView-content">
|
||||||
<div layout="column" flex="100">
|
<div layout="column" flex="100">
|
||||||
<div layout="row">
|
<div layout="row">
|
||||||
<md-input-container>
|
<md-input-container class="md-block" flex="33">
|
||||||
<label><var:string label:value="Week begins on" /></label>
|
<label><var:string label:value="Week begins on" /></label>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoFirstDayOfWeek">
|
<md-select ng-model="app.preferences.defaults.SOGoFirstDayOfWeek">
|
||||||
<var:foreach list="daysList" item="item">
|
<var:foreach list="daysList" item="item">
|
||||||
|
@ -259,7 +250,7 @@
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block" flex="33">
|
||||||
<label><var:string label:value="Day start time" /></label>
|
<label><var:string label:value="Day start time" /></label>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoDayStartTime">
|
<md-select ng-model="app.preferences.defaults.SOGoDayStartTime">
|
||||||
<var:foreach list="hoursList" item="item">
|
<var:foreach list="hoursList" item="item">
|
||||||
|
@ -270,7 +261,7 @@
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block" flex="33">
|
||||||
<label><var:string label:value="Day end time" /></label>
|
<label><var:string label:value="Day end time" /></label>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoDayEndTime">
|
<md-select ng-model="app.preferences.defaults.SOGoDayEndTime">
|
||||||
<var:foreach list="hoursList" item="item">
|
<var:foreach list="hoursList" item="item">
|
||||||
|
@ -313,7 +304,7 @@
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<div layout="row">
|
<div layout="row">
|
||||||
<md-input-container>
|
<md-input-container class="md-block" flex="50">
|
||||||
<label><var:string label:value="Default events classification" /></label>
|
<label><var:string label:value="Default events classification" /></label>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoCalendarEventsDefaultClassification">
|
<md-select ng-model="app.preferences.defaults.SOGoCalendarEventsDefaultClassification">
|
||||||
<var:foreach list="calendarClassificationsList" item="item">
|
<var:foreach list="calendarClassificationsList" item="item">
|
||||||
|
@ -324,7 +315,7 @@
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block" flex="50">
|
||||||
<label><var:string label:value="Default tasks classification"/></label>
|
<label><var:string label:value="Default tasks classification"/></label>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoCalendarTasksDefaultClassification">
|
<md-select ng-model="app.preferences.defaults.SOGoCalendarTasksDefaultClassification">
|
||||||
<var:foreach list="calendarClassificationsList" item="item">
|
<var:foreach list="calendarClassificationsList" item="item">
|
||||||
|
@ -362,7 +353,7 @@
|
||||||
app.preferences.defaults.SOGoCalendarCategories
|
app.preferences.defaults.SOGoCalendarCategories
|
||||||
track by $index">
|
track by $index">
|
||||||
<sg-color-picker ng-model="app.preferences.defaults.SOGoCalendarCategoriesColors[item]"><!-- color picker--></sg-color-picker>
|
<sg-color-picker ng-model="app.preferences.defaults.SOGoCalendarCategoriesColors[item]"><!-- color picker--></sg-color-picker>
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<input type="text" label:aria-label="Calendar Category"
|
<input type="text" label:aria-label="Calendar Category"
|
||||||
ng-model="app.preferences.defaults.SOGoCalendarCategories[$index]"
|
ng-model="app.preferences.defaults.SOGoCalendarCategories[$index]"
|
||||||
sg-focus-on="calendarCategory_{{$index}}"/>
|
sg-focus-on="calendarCategory_{{$index}}"/>
|
||||||
|
@ -445,7 +436,7 @@
|
||||||
ng-repeat="item in
|
ng-repeat="item in
|
||||||
app.preferences.defaults.SOGoContactsCategories
|
app.preferences.defaults.SOGoContactsCategories
|
||||||
track by $index">
|
track by $index">
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<input type="text"
|
<input type="text"
|
||||||
label:aria-label="Contact Category"
|
label:aria-label="Contact Category"
|
||||||
ng-model="app.preferences.defaults.SOGoContactsCategories[$index]"
|
ng-model="app.preferences.defaults.SOGoContactsCategories[$index]"
|
||||||
|
@ -508,7 +499,7 @@
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div layout="row" layout-align="space-around end">
|
<div>
|
||||||
<md-checkbox
|
<md-checkbox
|
||||||
class="md-align-top-left" ng-model="app.preferences.defaults.SOGoMailAddOutgoingAddresses"
|
class="md-align-top-left" ng-model="app.preferences.defaults.SOGoMailAddOutgoingAddresses"
|
||||||
ng-true-value="1"
|
ng-true-value="1"
|
||||||
|
@ -531,7 +522,7 @@
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="Forward messages"/></label>
|
<label><var:string label:value="Forward messages"/></label>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoMailMessageForwarding">
|
<md-select ng-model="app.preferences.defaults.SOGoMailMessageForwarding">
|
||||||
<var:foreach list="messageForwardingList" item="item">
|
<var:foreach list="messageForwardingList" item="item">
|
||||||
|
@ -542,8 +533,8 @@
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<div layout="row">
|
<div layout="row" layout-wrap="layout-wrap">
|
||||||
<md-input-container>
|
<md-input-container class="md-block" flex="50" flex-xs="100">
|
||||||
<label><var:string label:value="When replying to a message"/></label>
|
<label><var:string label:value="When replying to a message"/></label>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoMailReplyPlacement">
|
<md-select ng-model="app.preferences.defaults.SOGoMailReplyPlacement">
|
||||||
<var:foreach list="replyPlacementList" item="item">
|
<var:foreach list="replyPlacementList" item="item">
|
||||||
|
@ -554,7 +545,7 @@
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block" flex="50" flex-xs="100">
|
||||||
<label><var:string label:value="And place my signature"/></label>
|
<label><var:string label:value="And place my signature"/></label>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoMailSignaturePlacement">
|
<md-select ng-model="app.preferences.defaults.SOGoMailSignaturePlacement">
|
||||||
<var:foreach list="signaturePlacementList" item="item">
|
<var:foreach list="signaturePlacementList" item="item">
|
||||||
|
@ -566,7 +557,7 @@
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="Compose messages in"/></label>
|
<label><var:string label:value="Compose messages in"/></label>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoMailComposeMessageType">
|
<md-select ng-model="app.preferences.defaults.SOGoMailComposeMessageType">
|
||||||
<var:foreach list="composeMessagesType" item="item">
|
<var:foreach list="composeMessagesType" item="item">
|
||||||
|
@ -577,7 +568,7 @@
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="Display remote inline images"/></label>
|
<label><var:string label:value="Display remote inline images"/></label>
|
||||||
<md-select ng-model="app.preferences.defaults.SOGoMailDisplayRemoteInlineImages">
|
<md-select ng-model="app.preferences.defaults.SOGoMailDisplayRemoteInlineImages">
|
||||||
<var:foreach list="displayRemoteInlineImages" item="item">
|
<var:foreach list="displayRemoteInlineImages" item="item">
|
||||||
|
@ -589,8 +580,8 @@
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<div layout="row" layout-align="start center">
|
<div layout="row" layout-align="start center">
|
||||||
<var:string label:value="Auto save every"/>
|
<p><var:string label:value="Auto save every"/></p>
|
||||||
<md-input-container class="md-input-number">
|
<md-input-container class="md-input-number" md-no-float="md-no-float">
|
||||||
<input type="number" min="0" label:aria-label="minutes" ng-model="preferences.defaults.SOGoMailAutoSave"/>
|
<input type="number" min="0" label:aria-label="minutes" ng-model="preferences.defaults.SOGoMailAutoSave"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<var:string label:value="minutes"/>
|
<var:string label:value="minutes"/>
|
||||||
|
@ -619,7 +610,7 @@
|
||||||
ng-false-value="0">
|
ng-false-value="0">
|
||||||
<!-- active or not-->
|
<!-- active or not-->
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
<md-input-container>
|
<md-input-container class="md-flex">
|
||||||
<input type="text" ng-model="app.preferences.defaults.SOGoSieveFilters[$index].name"/>
|
<input type="text" ng-model="app.preferences.defaults.SOGoSieveFilters[$index].name"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-button class="sg-icon-button" type="button"
|
<md-button class="sg-icon-button" type="button"
|
||||||
|
@ -656,17 +647,17 @@
|
||||||
|
|
||||||
<md-content role="tabpanel" aria-labelledby="mailLabelsView"
|
<md-content role="tabpanel" aria-labelledby="mailLabelsView"
|
||||||
id="mailLabelsView-content" class="md-padding">
|
id="mailLabelsView-content" class="md-padding">
|
||||||
<md-list layout="row" layout-wrap="layout-wrap">
|
<md-list layout="row" layout-xs="column" layout-wrap="layout-wrap">
|
||||||
<md-list-item flex="50"
|
<md-list-item flex="50" flex-xs="100"
|
||||||
ng-repeat="(key, value) in
|
ng-repeat="(key, value) in
|
||||||
app.preferences.defaults.SOGoMailLabelsColors">
|
app.preferences.defaults.SOGoMailLabelsColors">
|
||||||
<sg-color-picker ng-model="value[1]"><!-- color picker--></sg-color-picker>
|
<sg-color-picker ng-model="value[1]"><!-- color picker--></sg-color-picker>
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<input type="text"
|
<input type="text"
|
||||||
label:aria-label="Label"
|
label:aria-label="Label"
|
||||||
ng-model="value[0]"/>
|
ng-model="value[0]"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-button class="sg-icon-button" type="button"
|
<md-button class="md-icon-button" type="button"
|
||||||
layout="row" layout-align="end center"
|
layout="row" layout-align="end center"
|
||||||
label:aria-label="Delete Label"
|
label:aria-label="Delete Label"
|
||||||
ng-click="app.removeMailLabel(key)">
|
ng-click="app.removeMailLabel(key)">
|
||||||
|
@ -695,7 +686,7 @@
|
||||||
<md-list-item ng-repeat="item in
|
<md-list-item ng-repeat="item in
|
||||||
app.preferences.defaults.AuxiliaryMailAccounts
|
app.preferences.defaults.AuxiliaryMailAccounts
|
||||||
track by $index">
|
track by $index">
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<input type="text"
|
<input type="text"
|
||||||
label:aria-label="Mail Account"
|
label:aria-label="Mail Account"
|
||||||
ng-model="app.preferences.defaults.AuxiliaryMailAccounts[$index].name"
|
ng-model="app.preferences.defaults.AuxiliaryMailAccounts[$index].name"
|
||||||
|
@ -747,28 +738,28 @@
|
||||||
<var:string label:value="Enable vacation auto reply"/>
|
<var:string label:value="Enable vacation auto reply"/>
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
|
|
||||||
<div flex-offset="5" ng-show="app.preferences.defaults.Vacation.enabled == 1">
|
<div layout="column" flex-offset="5" ng-show="app.preferences.defaults.Vacation.enabled == 1">
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Auto reply message"/></label>
|
<label><var:string label:value="Auto reply message"/></label>
|
||||||
<textarea const:name="autoReplyText"
|
<textarea const:name="autoReplyText"
|
||||||
const:id="autoReplyText"
|
const:id="autoReplyText"
|
||||||
ng-model="app.preferences.defaults.Vacation.autoReplyText"/>
|
ng-model="app.preferences.defaults.Vacation.autoReplyText"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<div layout="row" layout-align="start center">
|
||||||
<label><var:string label:value="Email addresses (separated by commas)"/></label>
|
<md-input-container class="md-block md-flex">
|
||||||
<textarea const:name="autoReplyEmailAddresses"
|
<label><var:string label:value="Email addresses (separated by commas)"/></label>
|
||||||
required="required"
|
<textarea const:name="autoReplyEmailAddresses"
|
||||||
const:id="autoReplyEmailAddresses"
|
required="required"
|
||||||
ng-model="app.preferences.defaults.Vacation.autoReplyEmailAddresses"/>
|
const:id="autoReplyEmailAddresses"
|
||||||
</md-input-container>
|
ng-model="app.preferences.defaults.Vacation.autoReplyEmailAddresses"/>
|
||||||
<div layout="row" layout-align="end center">
|
</md-input-container>
|
||||||
<md-button ng-click="app.addDefaultEmailAddresses()">
|
<md-button ng-click="app.addDefaultEmailAddresses()">
|
||||||
<var:string label:value="Add default email addresses" type="button"/>
|
<var:string label:value="Add default email addresses" type="button"/>
|
||||||
</md-button>
|
</md-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Days between responses"/></label>
|
<label><var:string label:value="Days between responses"/></label>
|
||||||
<md-select label:aria-label="Days between responses"
|
<md-select label:aria-label="Days between responses"
|
||||||
ng-model="app.preferences.defaults.Vacation.daysBetweenResponse">
|
ng-model="app.preferences.defaults.Vacation.daysBetweenResponse">
|
||||||
|
@ -789,7 +780,7 @@
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div layout="row" layout-align="start center">
|
<div layout="row">
|
||||||
<md-checkbox
|
<md-checkbox
|
||||||
ng-model="app.preferences.defaults.Vacation.endDateEnabled"
|
ng-model="app.preferences.defaults.Vacation.endDateEnabled"
|
||||||
ng-true-value="1"
|
ng-true-value="1"
|
||||||
|
@ -830,7 +821,7 @@
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
|
|
||||||
<div flex-offset="5" ng-show="app.preferences.defaults.Forward.enabled == 1">
|
<div flex-offset="5" ng-show="app.preferences.defaults.Forward.enabled == 1">
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Email addresses (separated by commas)"/></label>
|
<label><var:string label:value="Email addresses (separated by commas)"/></label>
|
||||||
<textarea const:name="forwardAddress"
|
<textarea const:name="forwardAddress"
|
||||||
const:id="forwardAddress"
|
const:id="forwardAddress"
|
||||||
|
|
|
@ -24,19 +24,21 @@
|
||||||
</div>
|
</div>
|
||||||
</md-toolbar>
|
</md-toolbar>
|
||||||
<md-dialog-content class="md-dialog-content">
|
<md-dialog-content class="md-dialog-content">
|
||||||
<!-- location -->
|
<div layout="row" layout-wrap="layout-wrap">
|
||||||
<md-input-container>
|
<!-- location -->
|
||||||
<label><var:string label:value="Location"/></label>
|
<md-input-container flex="50" flex-xs="100">
|
||||||
<input type="text" ng-model="editor.component.location"/>
|
<label><var:string label:value="Location"/></label>
|
||||||
</md-input-container>
|
<input type="text" ng-model="editor.component.location"/>
|
||||||
<!-- calendar -->
|
</md-input-container>
|
||||||
<md-input-container>
|
<!-- calendar -->
|
||||||
<label><var:string label:value="Calendar"/></label>
|
<md-input-container flex="50" flex-xs="100">
|
||||||
<md-select ng-model="editor.component.destinationCalendar">
|
<label><var:string label:value="Calendar"/></label>
|
||||||
<md-option ng-repeat="calendar in editor.service.$findAll(null, true)"
|
<md-select ng-model="editor.component.destinationCalendar">
|
||||||
ng-value="calendar.id">{{calendar.name}}</md-option>
|
<md-option ng-repeat="calendar in editor.service.$findAll(null, true)"
|
||||||
</md-select>
|
ng-value="calendar.id">{{calendar.name}}</md-option>
|
||||||
</md-input-container>
|
</md-select>
|
||||||
|
</md-input-container>
|
||||||
|
</div>
|
||||||
<!-- categories -->
|
<!-- categories -->
|
||||||
<md-chips ng-model="editor.component.categories">
|
<md-chips ng-model="editor.component.categories">
|
||||||
<md-autocomplete
|
<md-autocomplete
|
||||||
|
@ -73,6 +75,7 @@
|
||||||
label:aria-label="Priority"><!-- slider --></md-slider>
|
label:aria-label="Priority"><!-- slider --></md-slider>
|
||||||
</div>
|
</div>
|
||||||
<!-- is all day -->
|
<!-- is all day -->
|
||||||
|
<div layout="row">
|
||||||
<md-checkbox
|
<md-checkbox
|
||||||
ng-model="editor.component.isAllDay"
|
ng-model="editor.component.isAllDay"
|
||||||
ng-true-value="1"
|
ng-true-value="1"
|
||||||
|
@ -80,7 +83,9 @@
|
||||||
label:aria-label="All day Event">
|
label:aria-label="All day Event">
|
||||||
<var:string label:value="All day Event"/>
|
<var:string label:value="All day Event"/>
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
|
</div>
|
||||||
<!-- is transparent -->
|
<!-- is transparent -->
|
||||||
|
<div layout="row">
|
||||||
<md-checkbox
|
<md-checkbox
|
||||||
ng-model="editor.component.isTransparent"
|
ng-model="editor.component.isTransparent"
|
||||||
ng-true-value="1"
|
ng-true-value="1"
|
||||||
|
@ -88,7 +93,9 @@
|
||||||
label:aria-label="Show Time as Free">
|
label:aria-label="Show Time as Free">
|
||||||
<var:string label:value="Show Time as Free"/>
|
<var:string label:value="Show Time as Free"/>
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
|
</div>
|
||||||
<!-- send appointment notifications -->
|
<!-- send appointment notifications -->
|
||||||
|
<div layout="row">
|
||||||
<md-checkbox
|
<md-checkbox
|
||||||
ng-model="editor.component.sendAppointmentNotifications"
|
ng-model="editor.component.sendAppointmentNotifications"
|
||||||
ng-true-value="1"
|
ng-true-value="1"
|
||||||
|
@ -96,6 +103,7 @@
|
||||||
label:aria-label="Send Appointment Notifications">
|
label:aria-label="Send Appointment Notifications">
|
||||||
<var:string label:value="Send Appointment Notifications"/>
|
<var:string label:value="Send Appointment Notifications"/>
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
|
</div>
|
||||||
<!-- start + end -->
|
<!-- start + end -->
|
||||||
<div layout="row">
|
<div layout="row">
|
||||||
<div flex="50">
|
<div flex="50">
|
||||||
|
@ -127,8 +135,8 @@
|
||||||
</div>
|
</div>
|
||||||
<!-- attach urls -->
|
<!-- attach urls -->
|
||||||
<div class="attr" ng-repeat="attach in editor.component.attachUrls">
|
<div class="attr" ng-repeat="attach in editor.component.attachUrls">
|
||||||
<div layout="row" layout-align="center end">
|
<div layout="row">
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="URL"/>
|
<var:string label:value="URL"/>
|
||||||
</label>
|
</label>
|
||||||
|
@ -149,14 +157,14 @@
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<!-- comment -->
|
<!-- comment -->
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Description"/></label>
|
<label><var:string label:value="Description"/></label>
|
||||||
<textarea ng-model="editor.component.comment"><!-- comment --></textarea>
|
<textarea ng-model="editor.component.comment"><!-- comment --></textarea>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<!-- repeat -->
|
<!-- repeat -->
|
||||||
<div layout="row" layout-align="start end">
|
<div layout="row" layout-align="start end">
|
||||||
<div class="md-flex">
|
<div class="md-flex">
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Repeat"/></label>
|
<label><var:string label:value="Repeat"/></label>
|
||||||
<md-select ng-model="editor.component.repeat.frequency" ng-disabled="editor.component.occurrenceId">
|
<md-select ng-model="editor.component.repeat.frequency" ng-disabled="editor.component.occurrenceId">
|
||||||
<var:foreach list="repeatList" item="item">
|
<var:foreach list="repeatList" item="item">
|
||||||
|
@ -177,28 +185,25 @@
|
||||||
<var:component className="UIxRecurrenceEditor" />
|
<var:component className="UIxRecurrenceEditor" />
|
||||||
</div>
|
</div>
|
||||||
<!-- end repeat -->
|
<!-- end repeat -->
|
||||||
<div layout="row" layout-align="start end">
|
<div layout="row">
|
||||||
<div flex="50" flex-xs="100"
|
<md-input-container class="md-block" flex="50" flex-xs="100"
|
||||||
ng-show="editor.component.repeat.frequency != 'never'">
|
ng-show="editor.component.repeat.frequency != 'never'">
|
||||||
<md-input-container>
|
<label><var:string label:value="End Repeat"/></label>
|
||||||
<label><var:string label:value="End Repeat"/></label>
|
<md-select ng-model="editor.component.repeat.end"
|
||||||
<md-select ng-model="editor.component.repeat.end"
|
ng-disabled="editor.component.occurrenceId">
|
||||||
ng-disabled="editor.component.occurrenceId">
|
<md-option value="never"><var:string label:value="Never"/></md-option>
|
||||||
<md-option value="never"><var:string label:value="Never"/></md-option>
|
<md-option value="count"><var:string label:value="After"/></md-option>
|
||||||
<md-option value="count"><var:string label:value="After"/></md-option>
|
<md-option value="until"><var:string label:value="On Date"/></md-option>
|
||||||
<md-option value="until"><var:string label:value="On Date"/></md-option>
|
</md-select>
|
||||||
</md-select>
|
|
||||||
</md-input-container>
|
|
||||||
</div>
|
|
||||||
<div layout="row" layout-align="start center" ng-show="editor.component.repeat.end == 'count'">
|
|
||||||
<md-input-container class="md-input-number">
|
|
||||||
<input type="number" label:aria-label="times" ng-model="editor.component.repeat.count"/>
|
|
||||||
</md-input-container>
|
|
||||||
<var:string label:value="times"/>
|
|
||||||
</div>
|
|
||||||
<md-input-container ng-show="editor.component.repeat.end == 'until'">
|
|
||||||
<input type="date" label:aria-label="Repeat until" ng-model="editor.component.repeat.until"/>
|
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
<md-input-container class="md-block md-input-number"
|
||||||
|
ng-show="editor.component.repeat.end == 'count'">
|
||||||
|
<label><var:string label:value="times"/></label>
|
||||||
|
<input type="number" label:aria-label="times" ng-model="editor.component.repeat.count"/>
|
||||||
|
</md-input-container>
|
||||||
|
<md-datepicker ng-show="editor.component.repeat.end == 'until'"
|
||||||
|
ng-model="editor.component.repeat.until"
|
||||||
|
label:md-placeholder="On Date"><!-- date picker --></md-datepicker>
|
||||||
</div>
|
</div>
|
||||||
<!-- attendees -->
|
<!-- attendees -->
|
||||||
<div layout="row" layout-align="start start">
|
<div layout="row" layout-align="start start">
|
||||||
|
@ -255,7 +260,7 @@
|
||||||
label:aria-label="Reminder">
|
label:aria-label="Reminder">
|
||||||
<var:string label:value="Reminder"/>
|
<var:string label:value="Reminder"/>
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
<div class="sg-subcontent"
|
<div flex-offset="5"
|
||||||
ng-show="editor.component.$hasAlarm">
|
ng-show="editor.component.$hasAlarm">
|
||||||
<var:component className="UIxReminderEditor" />
|
<var:component className="UIxReminderEditor" />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -539,15 +539,16 @@
|
||||||
</div>
|
</div>
|
||||||
<!-- search mode -->
|
<!-- search mode -->
|
||||||
<div class="md-toolbar-tools sg-toolbar-secondary"
|
<div class="md-toolbar-tools sg-toolbar-secondary"
|
||||||
|
layout="row"
|
||||||
ng-show="list.mode.search"
|
ng-show="list.mode.search"
|
||||||
sg-search="list.component.$filter(list.componentType, { value: searchText, search: searchField })">
|
sg-search="list.component.$filter(list.componentType, { value: searchText, search: searchField })">
|
||||||
<md-button class="sg-icon-button"
|
<md-button class="md-icon-button"
|
||||||
sg-search-cancel="list.cancelSearch()"
|
sg-search-cancel="list.cancelSearch()"
|
||||||
label:aria-label="Back">
|
label:aria-label="Back">
|
||||||
<md-icon>arrow_back</md-icon>
|
<md-icon>arrow_back</md-icon>
|
||||||
</md-button>
|
</md-button>
|
||||||
<md-input-container>
|
<md-input-container class="md-flex" md-no-float="md-no-float">
|
||||||
<input name="folderSearch" type="search" />
|
<input name="folderSearch" type="search" label:placeholder="Search"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container flex="25">
|
<md-input-container flex="25">
|
||||||
<md-select>
|
<md-select>
|
||||||
|
|
|
@ -9,9 +9,9 @@
|
||||||
xmlns:uix="OGo:uix">
|
xmlns:uix="OGo:uix">
|
||||||
<div layout="column">
|
<div layout="column">
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="label_Public"/></label>
|
<label><var:string label:value="label_Public"/></label>
|
||||||
<md-select flex="50" label:aria-label="Public"
|
<md-select label:aria-label="Public"
|
||||||
ng-model="acl.selectedUser.rights.Public"
|
ng-model="acl.selectedUser.rights.Public"
|
||||||
ng-change="acl.confirmChange(acl.selectedUser)">
|
ng-change="acl.confirmChange(acl.selectedUser)">
|
||||||
<var:foreach list="objectRights" item="currentRight">
|
<var:foreach list="objectRights" item="currentRight">
|
||||||
|
@ -22,9 +22,9 @@
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="label_Confidential"/></label>
|
<label><var:string label:value="label_Confidential"/></label>
|
||||||
<md-select flex="50" label:aria-label="Confidential"
|
<md-select label:aria-label="Confidential"
|
||||||
ng-model="acl.selectedUser.rights.Confidential"
|
ng-model="acl.selectedUser.rights.Confidential"
|
||||||
ng-change="acl.confirmChange(acl.selectedUser)">
|
ng-change="acl.confirmChange(acl.selectedUser)">
|
||||||
<var:foreach list="objectRights" item="currentRight">
|
<var:foreach list="objectRights" item="currentRight">
|
||||||
|
@ -35,9 +35,9 @@
|
||||||
</md-select>
|
</md-select>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="label_Private"/></label>
|
<label><var:string label:value="label_Private"/></label>
|
||||||
<md-select flex="50" label:aria-label="Private"
|
<md-select label:aria-label="Private"
|
||||||
ng-model="acl.selectedUser.rights.Private"
|
ng-model="acl.selectedUser.rights.Private"
|
||||||
ng-change="acl.confirmChange(acl.selectedUser)">
|
ng-change="acl.confirmChange(acl.selectedUser)">
|
||||||
<var:foreach list="objectRights" item="currentRight">
|
<var:foreach list="objectRights" item="currentRight">
|
||||||
|
|
|
@ -24,46 +24,44 @@
|
||||||
<md-dialog-content class="md-padding">
|
<md-dialog-content class="md-padding">
|
||||||
<div layout="column">
|
<div layout="column">
|
||||||
|
|
||||||
<div layout="column" layout-padding="layout-padding">
|
<md-input-container class="md-block" ng-show="links.calendar.isWebCalendar">
|
||||||
<md-input-container ng-show="links.calendar.isWebCalendar">
|
<label><var:string label:value="URL"/></label>
|
||||||
<label><var:string label:value="URL"/></label>
|
<input type="text" ng-model="links.calendar.urls.webCalendarURL" ng-readonly="true"/>
|
||||||
<input type="text" ng-model="links.calendar.urls.webCalendarURL" ng-readonly="true"/>
|
</md-input-container>
|
||||||
</md-input-container>
|
|
||||||
|
|
||||||
<div ng-hide="links.calendar.isWebCalendar">
|
<div layout="column" ng-hide="links.calendar.isWebCalendar">
|
||||||
<div class="sg-md-title"><var:string label:value="Authenticated User Access"/></div>
|
<div class="sg-md-title"><var:string label:value="Authenticated User Access"/></div>
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="CalDAV URL"/></label>
|
<label><var:string label:value="CalDAV URL"/></label>
|
||||||
<input type="text" ng-model="links.calendar.urls.calDavURL" ng-readonly="true"/>
|
<input type="text" ng-model="links.calendar.urls.calDavURL" ng-readonly="true"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="WebDAV ICS URL"/></label>
|
<label><var:string label:value="WebDAV ICS URL"/></label>
|
||||||
<input type="text" ng-model="links.calendar.urls.webDavICSURL" ng-readonly="true"/>
|
<input type="text" ng-model="links.calendar.urls.webDavICSURL" ng-readonly="true"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="WebDAV XML URL"/></label>
|
<label><var:string label:value="WebDAV XML URL"/></label>
|
||||||
<input type="text" ng-model="links.calendar.urls.webDavXMLURL" ng-readonly="true"/>
|
<input type="text" ng-model="links.calendar.urls.webDavXMLURL" ng-readonly="true"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<var:if condition="isPublicAccessEnabled">
|
<var:if condition="isPublicAccessEnabled">
|
||||||
<div layout="column" layout-padding="layout-padding" ng-hide="links.calendar.isWebCalendar">
|
<div layout="column" ng-hide="links.calendar.isWebCalendar">
|
||||||
<div class="sg-md-title"><var:string label:value="Public Access"/></div>
|
<div class="sg-md-title"><var:string label:value="Public Access"/></div>
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="CalDAV URL"/></label>
|
<label><var:string label:value="CalDAV URL"/></label>
|
||||||
<input type="text" ng-model="links.calendar.urls.publicCalDavURL" ng-readonly="true"/>
|
<input type="text" ng-model="links.calendar.urls.publicCalDavURL" ng-readonly="true"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="WebDAV ICS URL"/></label>
|
<label><var:string label:value="WebDAV ICS URL"/></label>
|
||||||
<input type="text" ng-model="links.calendar.urls.publicWebDavICSURL" ng-readonly="true"/>
|
<input type="text" ng-model="links.calendar.urls.publicWebDavICSURL" ng-readonly="true"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<md-input-container>
|
<md-input-container class="md-block">
|
||||||
<label><var:string label:value="WebDAV XML URL"/></label>
|
<label><var:string label:value="WebDAV XML URL"/></label>
|
||||||
<input type="text" ng-model="links.calendar.urls.publicWebDavXMLURL" ng-readonly="true"/>
|
<input type="text" ng-model="links.calendar.urls.publicWebDavXMLURL" ng-readonly="true"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
</div>
|
</div>
|
||||||
</var:if>
|
</var:if>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</md-dialog-content>
|
</md-dialog-content>
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
<!-- color -->
|
<!-- color -->
|
||||||
<sg-color-picker ng-model="properties.calendar.color"><!-- color picker --></sg-color-picker>
|
<sg-color-picker ng-model="properties.calendar.color"><!-- color picker --></sg-color-picker>
|
||||||
<!-- name -->
|
<!-- name -->
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Name"/></label>
|
<label><var:string label:value="Name"/></label>
|
||||||
<input type="text"
|
<input type="text"
|
||||||
class="md-title"
|
class="md-title"
|
||||||
|
@ -60,7 +60,7 @@
|
||||||
<var:string label:value="Reload on login"/>
|
<var:string label:value="Reload on login"/>
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
<div ng-hide="properties.calendar.isWebCalendar || !properties.calendar.isOwned" layout="column">
|
<div ng-hide="properties.calendar.isWebCalendar || !properties.calendar.isOwned" layout="column">
|
||||||
<md-divider><!-- divider --></md-divider>
|
<md-divider class="md-padding"><!-- divider --></md-divider>
|
||||||
<md-checkbox
|
<md-checkbox
|
||||||
ng-model="properties.calendar.notifications.notifyOnPersonalModifications"
|
ng-model="properties.calendar.notifications.notifyOnPersonalModifications"
|
||||||
ng-true-value="1"
|
ng-true-value="1"
|
||||||
|
@ -79,7 +79,7 @@
|
||||||
ng-false-value="0">
|
ng-false-value="0">
|
||||||
<var:string label:value="When I modify my calendar, send a mail to"/>
|
<var:string label:value="When I modify my calendar, send a mail to"/>
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
<md-input-container md-no-float="md-no-float">
|
<md-input-container flex-offset="5" md-no-float="md-no-float">
|
||||||
<input type="text"
|
<input type="text"
|
||||||
label:placeholder="Email Address"
|
label:placeholder="Email Address"
|
||||||
ng-value="properties.calendar.notifications.notifiedUserOnPersonalModifications"
|
ng-value="properties.calendar.notifications.notifiedUserOnPersonalModifications"
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
xmlns:var="http://www.skyrix.com/od/binding"
|
xmlns:var="http://www.skyrix.com/od/binding"
|
||||||
xmlns:const="http://www.skyrix.com/od/constant"
|
xmlns:const="http://www.skyrix.com/od/constant"
|
||||||
xmlns:label="OGo:label">
|
xmlns:label="OGo:label">
|
||||||
<div layout="row" layout-align="start center" layout-wrap="layout-wrap">
|
<div layout="row" layout-wrap="layout-wrap">
|
||||||
<md-input-container class="md-input-number">
|
<md-input-container class="md-input-number">
|
||||||
<input type="number" label:aria-label="quantity" ng-model="editor.component.alarm.quantity"/>
|
<input type="number" label:aria-label="quantity" ng-model="editor.component.alarm.quantity"/>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
@ -32,18 +32,16 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<var:if condition="emailAlarmsEnabled">
|
<var:if condition="emailAlarmsEnabled">
|
||||||
<div layout="row" layout-align="space-around center">
|
<md-radio-group layout="column"
|
||||||
<md-radio-group layout="row" layout-align="space-around center"
|
ng-model="editor.component.alarm.action">
|
||||||
ng-model="editor.component.alarm.action">
|
<md-radio-button value="display">
|
||||||
<md-radio-button value="display">
|
<var:string label:value="Show an Alert"/>
|
||||||
<var:string label:value="Show an Alert"/>
|
</md-radio-button>
|
||||||
</md-radio-button>
|
<md-radio-button value="email">
|
||||||
<md-radio-button value="email">
|
<var:string label:value="Send an E-mail"/>
|
||||||
<var:string label:value="Send an E-mail"/>
|
</md-radio-button>
|
||||||
</md-radio-button>
|
</md-radio-group>
|
||||||
</md-radio-group>
|
<div layout="row" flex-offset="5"
|
||||||
</div>
|
|
||||||
<div layout="row" layout-align="space-around center"
|
|
||||||
ng-show="editor.component.canRemindAttendeesByEmail()">
|
ng-show="editor.component.canRemindAttendeesByEmail()">
|
||||||
<md-checkbox ng-model="editor.component.alarm.organizer"
|
<md-checkbox ng-model="editor.component.alarm.organizer"
|
||||||
ng-true-value="1"
|
ng-true-value="1"
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<!-- summary -->
|
<!-- summary -->
|
||||||
<md-icon ng-if="editor.component.classification == 'confidential'">visibility_off</md-icon>
|
<md-icon ng-if="editor.component.classification == 'confidential'">visibility_off</md-icon>
|
||||||
<md-icon ng-if="editor.component.classification == 'private'">vpn_key</md-icon>
|
<md-icon ng-if="editor.component.classification == 'private'">vpn_key</md-icon>
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Title"/></label>
|
<label><var:string label:value="Title"/></label>
|
||||||
<input type="text"
|
<input type="text"
|
||||||
class="md-title"
|
class="md-title"
|
||||||
|
@ -24,11 +24,21 @@
|
||||||
</div>
|
</div>
|
||||||
</md-toolbar>
|
</md-toolbar>
|
||||||
<md-dialog-content class="md-dialog-content">
|
<md-dialog-content class="md-dialog-content">
|
||||||
<!-- location -->
|
<div layout="row" layout-wrap="layout-wrap">
|
||||||
<md-input-container>
|
<!-- location -->
|
||||||
<label><var:string label:value="Location"/></label>
|
<md-input-container flex="50" flex-xs="100">
|
||||||
<input type="text" ng-model="editor.component.location"/>
|
<label><var:string label:value="Location"/></label>
|
||||||
</md-input-container>
|
<input type="text" ng-model="editor.component.location"/>
|
||||||
|
</md-input-container>
|
||||||
|
<!-- calendar -->
|
||||||
|
<md-input-container flex="50" flex-xs="100">
|
||||||
|
<label><var:string label:value="Calendar"/></label>
|
||||||
|
<md-select ng-model="editor.component.destinationCalendar">
|
||||||
|
<md-option ng-repeat="calendar in editor.service.$findAll(null, true)"
|
||||||
|
ng-value="calendar.id">{{calendar.name}}</md-option>
|
||||||
|
</md-select>
|
||||||
|
</md-input-container>
|
||||||
|
</div>
|
||||||
<!-- categories -->
|
<!-- categories -->
|
||||||
<md-chips ng-model="editor.component.categories">
|
<md-chips ng-model="editor.component.categories">
|
||||||
<md-autocomplete
|
<md-autocomplete
|
||||||
|
@ -40,16 +50,8 @@
|
||||||
<span md-highlight-text="editor.categories.searchText">{{category}}</span>
|
<span md-highlight-text="editor.categories.searchText">{{category}}</span>
|
||||||
</md-autocomplete>
|
</md-autocomplete>
|
||||||
</md-chips>
|
</md-chips>
|
||||||
<!-- calendar -->
|
|
||||||
<md-input-container>
|
|
||||||
<label><var:string label:value="Calendar"/></label>
|
|
||||||
<md-select ng-model="editor.component.destinationCalendar">
|
|
||||||
<md-option ng-repeat="calendar in editor.service.$findAll(null, true)"
|
|
||||||
ng-value="calendar.id">{{calendar.name}}</md-option>
|
|
||||||
</md-select>
|
|
||||||
</md-input-container>
|
|
||||||
<!-- classification -->
|
<!-- classification -->
|
||||||
<md-radio-group layout="row" layout-align="space-around center"
|
<md-radio-group class="md-padding" layout="row" layout-align="space-around center"
|
||||||
ng-model="editor.component.classification">
|
ng-model="editor.component.classification">
|
||||||
<md-radio-button value="public">
|
<md-radio-button value="public">
|
||||||
<var:string label:value="label_Public"/>
|
<var:string label:value="label_Public"/>
|
||||||
|
@ -145,7 +147,7 @@
|
||||||
<!-- attach urls -->
|
<!-- attach urls -->
|
||||||
<div class="attr" ng-repeat="attach in editor.component.attachUrls">
|
<div class="attr" ng-repeat="attach in editor.component.attachUrls">
|
||||||
<div layout="row" layout-align="center end">
|
<div layout="row" layout-align="center end">
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label>
|
<label>
|
||||||
<var:string label:value="URL"/>
|
<var:string label:value="URL"/>
|
||||||
</label>
|
</label>
|
||||||
|
@ -166,13 +168,13 @@
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<!-- comment -->
|
<!-- comment -->
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Description"/></label>
|
<label><var:string label:value="Description"/></label>
|
||||||
<textarea ng-model="editor.component.comment"><!-- comment --></textarea>
|
<textarea ng-model="editor.component.comment"><!-- comment --></textarea>
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
<!-- repeat -->
|
<!-- repeat -->
|
||||||
<div layout="row" layout-align="start end">
|
<div layout="row" layout-align="start end">
|
||||||
<md-input-container>
|
<md-input-container class="md-block md-flex">
|
||||||
<label><var:string label:value="Repeat"/></label>
|
<label><var:string label:value="Repeat"/></label>
|
||||||
<md-select class="pseudo-input-field" ng-model="editor.component.repeat.frequency">
|
<md-select class="pseudo-input-field" ng-model="editor.component.repeat.frequency">
|
||||||
<var:foreach list="repeatList" item="item">
|
<var:foreach list="repeatList" item="item">
|
||||||
|
@ -192,33 +194,32 @@
|
||||||
<var:component className="UIxRecurrenceEditor" />
|
<var:component className="UIxRecurrenceEditor" />
|
||||||
</div>
|
</div>
|
||||||
<!-- end repeat -->
|
<!-- end repeat -->
|
||||||
<div layout="row" layout-align="start end">
|
<div layout="row">
|
||||||
<div ng-show="editor.component.repeat.frequency != 'never'">
|
<md-input-container class="md-block" flex="50" flex-xs="100"
|
||||||
<md-input-container>
|
ng-show="editor.component.repeat.frequency != 'never'">
|
||||||
<label><var:string label:value="End Repeat"/></label>
|
<label><var:string label:value="End Repeat"/></label>
|
||||||
<md-select class="pseudo-input-field" ng-model="editor.component.repeat.end">
|
<md-select ng-model="editor.component.repeat.end"
|
||||||
<md-option value="never"><var:string label:value="Never"/></md-option>
|
ng-disabled="editor.component.occurrenceId">
|
||||||
<md-option value="count"><var:string label:value="After"/></md-option>
|
<md-option value="never"><var:string label:value="Never"/></md-option>
|
||||||
<md-option value="until"><var:string label:value="On Date"/></md-option>
|
<md-option value="count"><var:string label:value="After"/></md-option>
|
||||||
</md-select>
|
<md-option value="until"><var:string label:value="On Date"/></md-option>
|
||||||
</md-input-container>
|
</md-select>
|
||||||
</div>
|
|
||||||
<div layout="row" layout-align="start center" ng-show="editor.component.repeat.end == 'count'">
|
|
||||||
<md-input-container class="md-input-number">
|
|
||||||
<input type="number" label:aria-label="times" ng-model="editor.component.repeat.count"/>
|
|
||||||
</md-input-container>
|
|
||||||
<var:string label:value="times"/>
|
|
||||||
</div>
|
|
||||||
<md-input-container ng-show="editor.component.repeat.end == 'until'">
|
|
||||||
<input type="date" label:aria-label="Repeat until" ng-model="editor.component.repeat.until"/>
|
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
|
<md-input-container class="md-block md-input-number"
|
||||||
|
ng-show="editor.component.repeat.end == 'count'">
|
||||||
|
<label><var:string label:value="times"/></label>
|
||||||
|
<input type="number" label:aria-label="times" ng-model="editor.component.repeat.count"/>
|
||||||
|
</md-input-container>
|
||||||
|
<md-datepicker ng-show="editor.component.repeat.end == 'until'"
|
||||||
|
ng-model="editor.component.repeat.until"
|
||||||
|
label:md-placeholder="On Date"><!-- date picker --></md-datepicker>
|
||||||
</div>
|
</div>
|
||||||
<!-- reminder -->
|
<!-- reminder -->
|
||||||
<md-checkbox ng-model="editor.component.$hasAlarm"
|
<md-checkbox ng-model="editor.component.$hasAlarm"
|
||||||
label:aria-label="Reminder">
|
label:aria-label="Reminder">
|
||||||
<var:string label:value="Reminder"/>
|
<var:string label:value="Reminder"/>
|
||||||
</md-checkbox>
|
</md-checkbox>
|
||||||
<div class="sg-subcontent"
|
<div flex-offset="5"
|
||||||
ng-show="editor.component.$hasAlarm">
|
ng-show="editor.component.$hasAlarm">
|
||||||
<var:component className="UIxReminderEditor" />
|
<var:component className="UIxReminderEditor" />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -37,19 +37,19 @@
|
||||||
vm.methodLabels = {
|
vm.methodLabels = {
|
||||||
"discard": l("Discard the message"),
|
"discard": l("Discard the message"),
|
||||||
"keep": l("Keep the message"),
|
"keep": l("Keep the message"),
|
||||||
"redirect": l("Forward the message to:"),
|
"redirect": l("Forward the message to"),
|
||||||
"vacation": l("Send a vacation message"),
|
"vacation": l("Send a vacation message"),
|
||||||
"stop": l("Stop processing filter rules")
|
"stop": l("Stop processing filter rules")
|
||||||
};
|
};
|
||||||
|
|
||||||
if (sieveCapabilities.indexOf("reject") > -1)
|
if (sieveCapabilities.indexOf("reject") > -1)
|
||||||
vm.methodLabels.reject = l("Send a reject message:");
|
vm.methodLabels.reject = l("Send a reject message");
|
||||||
|
|
||||||
if (sieveCapabilities.indexOf("fileinto") > -1)
|
if (sieveCapabilities.indexOf("fileinto") > -1)
|
||||||
vm.methodLabels.fileinto = l("File the message in:");
|
vm.methodLabels.fileinto = l("File the message in");
|
||||||
|
|
||||||
if (sieveCapabilities.indexOf("imapflags") > -1 || sieveCapabilities.indexOf("imap4flags") > -1)
|
if (sieveCapabilities.indexOf("imapflags") > -1 || sieveCapabilities.indexOf("imap4flags") > -1)
|
||||||
vm.methodLabels.addflag = l("Flag the message with:");
|
vm.methodLabels.addflag = l("Flag the message with");
|
||||||
|
|
||||||
vm.numberOperatorLabels = {
|
vm.numberOperatorLabels = {
|
||||||
"under": l("is under"),
|
"under": l("is under"),
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
@import "extends";
|
@import "extends";
|
||||||
|
|
||||||
@media (max-width: $layout-breakpoint-sm) {
|
@media (max-width: $layout-breakpoint-xs) {
|
||||||
// Enlarge the autocompletion menu on small devices to fit the entire screen
|
// Enlarge the autocompletion menu on small devices to fit the entire screen
|
||||||
.md-autocomplete-suggestions-container {
|
.md-autocomplete-suggestions-container {
|
||||||
right: $baseline-grid*2;
|
right: $baseline-grid*2;
|
||||||
|
|
|
@ -15,20 +15,6 @@
|
||||||
///
|
///
|
||||||
/// ----------------------------------------------------------------------------
|
/// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
// md-input variables we might use
|
|
||||||
// ----------------------------------------------------------------------------
|
|
||||||
$input-container-padding: 2px !default;
|
|
||||||
|
|
||||||
$input-label-default-offset: 24px !default;
|
|
||||||
$input-label-default-scale: 1.0 !default;
|
|
||||||
$input-label-float-offset: 4px !default;
|
|
||||||
$input-label-float-scale: 0.75 !default;
|
|
||||||
|
|
||||||
$input-border-width-default: 1px !default;
|
|
||||||
$input-border-width-focused: 2px !default;
|
|
||||||
$input-line-height: 26px !default;
|
|
||||||
$input-padding-top: 2px !default;
|
|
||||||
|
|
||||||
.pseudo-input-container {
|
.pseudo-input-container {
|
||||||
display: block; // Should be (reset to ?) a plain block element
|
display: block; // Should be (reset to ?) a plain block element
|
||||||
padding: 0 2px;
|
padding: 0 2px;
|
||||||
|
@ -94,108 +80,6 @@ input #inner-editor {
|
||||||
line-height: inherit;
|
line-height: inherit;
|
||||||
}
|
}
|
||||||
|
|
||||||
:root #placeholder,
|
|
||||||
:root [pseudo="-webkit-input-placeholder"] {
|
|
||||||
padding: 0;
|
|
||||||
height: $mg;
|
|
||||||
color: $colorGrayLight;
|
|
||||||
font: inherit;
|
|
||||||
line-height: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
input::-webkit-datetime-edit,
|
|
||||||
:root div#date-time-edit {
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.md-input-focused input::-webkit-datetime-edit,
|
|
||||||
.md-input-focused div#date-time-edit,
|
|
||||||
.md-input-has-value input::-webkit-datetime-edit {
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
md-input-container {
|
|
||||||
display: flex;
|
|
||||||
position: relative;
|
|
||||||
flex-direction: column;
|
|
||||||
flex: 1 1 auto;
|
|
||||||
padding: $input-container-padding;
|
|
||||||
|
|
||||||
textarea,
|
|
||||||
input[type="text"],
|
|
||||||
input[type="password"],
|
|
||||||
input[type="datetime"],
|
|
||||||
input[type="datetime-local"],
|
|
||||||
input[type="date"],
|
|
||||||
input[type="month"],
|
|
||||||
input[type="time"],
|
|
||||||
input[type="week"],
|
|
||||||
input[type="number"],
|
|
||||||
input[type="email"],
|
|
||||||
input[type="url"],
|
|
||||||
input[type="search"],
|
|
||||||
input[type="tel"],
|
|
||||||
input[type="color"] {
|
|
||||||
/* remove default appearance from all input/textarea */
|
|
||||||
-moz-appearance: none;
|
|
||||||
-webkit-appearance: none;
|
|
||||||
}
|
|
||||||
textarea {
|
|
||||||
resize: none;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
label {
|
|
||||||
order: 1;
|
|
||||||
pointer-events: none;
|
|
||||||
-webkit-font-smoothing: antialiased;
|
|
||||||
z-index: 1;
|
|
||||||
transform: translate3d(0, $input-label-default-offset, 0) scale($input-label-default-scale);
|
|
||||||
transform-origin: left top;
|
|
||||||
transition: all $swift-ease-out-timing-function 0.2s;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* The .md-input class is added to the input/textarea
|
|
||||||
*/
|
|
||||||
.md-input {
|
|
||||||
flex: 1;
|
|
||||||
order: 2;
|
|
||||||
display: block;
|
|
||||||
|
|
||||||
background: none;
|
|
||||||
padding-top: $input-padding-top;
|
|
||||||
padding-bottom: $input-border-width-focused - $input-border-width-default;
|
|
||||||
border-width: 0 0 $input-border-width-default 0;
|
|
||||||
line-height: $input-line-height;
|
|
||||||
-ms-flex-preferred-size: $input-line-height; //IE fix
|
|
||||||
|
|
||||||
&:focus {
|
|
||||||
outline: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&.md-input-focused,
|
|
||||||
&.md-input-has-value {
|
|
||||||
label {
|
|
||||||
transform: translate3d(0,$input-label-float-offset,0) scale($input-label-float-scale);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
&.md-input-focused {
|
|
||||||
.md-input {
|
|
||||||
padding-bottom: 0px; // Increase border width by 1px, decrease padding by 1
|
|
||||||
border-width: 0 0 $input-border-width-focused 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.md-input[disabled] {
|
|
||||||
background-position: 0 bottom;
|
|
||||||
// This background-size is coordinated with a linear-gradient set in input-theme.scss
|
|
||||||
// to create a dotted line under the input.
|
|
||||||
background-size: 3px 1px;
|
|
||||||
background-repeat: repeat-x;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
md-input-container .bgroup {
|
md-input-container .bgroup {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1 +1,9 @@
|
||||||
@import "extends";
|
@import "extends";
|
||||||
|
|
||||||
|
md-input-container {
|
||||||
|
md-radio-group {
|
||||||
|
md-radio-button:first-child {
|
||||||
|
margin-top: $radio-top-left;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,32 +1 @@
|
||||||
@import "extends";
|
@import "extends";
|
||||||
|
|
||||||
// Try to align select labels with other input components
|
|
||||||
[layout="row"] {
|
|
||||||
.md-select-label {
|
|
||||||
padding-top: 4px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// angular material overqualifies, so we are
|
|
||||||
md-select.md-default-theme.sg-toolbar-sort {
|
|
||||||
margin: 0 $bl 4px 0;
|
|
||||||
color: $colorWhite;
|
|
||||||
|
|
||||||
md-select-label.md-select-label {
|
|
||||||
border: none;
|
|
||||||
color: inherit;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
md-select.md-default-theme.sg-logout {
|
|
||||||
margin-top: $bl;
|
|
||||||
color: $colorWhite;
|
|
||||||
|
|
||||||
// angular material overqualifies, so we are
|
|
||||||
md-select-label.md-select-label,
|
|
||||||
md-select-label.md-select-label.md-placeholder,
|
|
||||||
md-select-label.md-select-label * {
|
|
||||||
border: none;
|
|
||||||
color: $colorWhite;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -41,12 +41,16 @@ md-toolbar,
|
||||||
// Animate the first icon button of a "secondary" toolbar
|
// Animate the first icon button of a "secondary" toolbar
|
||||||
&.sg-toolbar-secondary {
|
&.sg-toolbar-secondary {
|
||||||
> .md-toolbar-tools > .sg-icon-button:first-child,
|
> .md-toolbar-tools > .sg-icon-button:first-child,
|
||||||
> .sg-icon-button:first-child {
|
> .md-toolbar-tools > .md-icon-button:first-child,
|
||||||
|
> .sg-icon-button:first-child,
|
||||||
|
> .md-icon-button:first-child {
|
||||||
transition: $swift-ease-in;
|
transition: $swift-ease-in;
|
||||||
transform: translateX(0px);
|
transform: translateX(0px);
|
||||||
}
|
}
|
||||||
&.ng-hide > .md-toolbar-tools > .sg-icon-button:first-child,
|
&.ng-hide > .md-toolbar-tools > .sg-icon-button:first-child,
|
||||||
&.ng-hide > .sg-icon-button:first-child {
|
&.ng-hide > .md-toolbar-tools > .md-icon-button:first-child,
|
||||||
|
&.ng-hide > .sg-icon-button:first-child,
|
||||||
|
&.ng-hide > .md-icon-button:first-child {
|
||||||
transform: translateX(-$touch-zone-width);
|
transform: translateX(-$touch-zone-width);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -271,7 +271,8 @@ html p {
|
||||||
font-size: $sg-font-size-2;
|
font-size: $sg-font-size-2;
|
||||||
line-height: $sg-line-height-1;
|
line-height: $sg-line-height-1;
|
||||||
font-weight: $sg-font-medium;
|
font-weight: $sg-font-medium;
|
||||||
white-space: nowrap;}
|
white-space: nowrap;
|
||||||
|
}
|
||||||
.#{$md}-button {
|
.#{$md}-button {
|
||||||
font-size: $sg-font-size-2;
|
font-size: $sg-font-size-2;
|
||||||
line-height: $sg-line-height-1;
|
line-height: $sg-line-height-1;
|
||||||
|
|
|
@ -188,6 +188,7 @@ md-sidenav {
|
||||||
max-height: 400px;
|
max-height: 400px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
|
padding-bottom: 2px; // leave some space for the border
|
||||||
transition: $swift-ease-in;
|
transition: $swift-ease-in;
|
||||||
&.ng-hide {
|
&.ng-hide {
|
||||||
max-height: 0;
|
max-height: 0;
|
||||||
|
|
Loading…
Reference in New Issue