mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-07-06 00:45:09 +00:00
Initial recurrence editor for appointments
This commit is contained in:
@@ -1,28 +1,136 @@
|
||||
<?xml version='1.0' standalone='yes'?>
|
||||
<!DOCTYPE var:component>
|
||||
<var:component
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:var="http://www.skyrix.com/od/binding"
|
||||
xmlns:const="http://www.skyrix.com/od/constant"
|
||||
xmlns:uix="OGo:uix"
|
||||
xmlns:rsrc="OGo:url"
|
||||
xmlns:label="OGo:label"
|
||||
className="UIxPageFrame"
|
||||
const:toolbar="none"
|
||||
const:popup="YES"
|
||||
const:cssFiles="datepicker.css"
|
||||
const:jsFiles="datepicker.js">
|
||||
<container
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:var="http://www.skyrix.com/od/binding"
|
||||
xmlns:const="http://www.skyrix.com/od/constant"
|
||||
xmlns:label="OGo:label"
|
||||
>
|
||||
<!-- daily -->
|
||||
<div layout="row" layout-align="start center"
|
||||
ng-show="editor.event.repeat.frequency == 'daily'">
|
||||
<var:string label:value="Every"/>
|
||||
<md-input-container class="md-input-number">
|
||||
<input type="number" label:aria-label="Every" ng-model="editor.event.repeat.interval"/>
|
||||
</md-input-container>
|
||||
<var:string label:value="Days"/>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
var dayFieldInvalid = '<var:string label:value="dayFieldInvalid"/>';
|
||||
var weekFieldInvalid = '<var:string label:value="weekFieldInvalid"/>';
|
||||
var monthFieldInvalid = '<var:string label:value="monthFieldInvalid"/>';
|
||||
var monthDayFieldInvalid = '<var:string label:value="monthDayFieldInvalid"/>';
|
||||
var yearFieldInvalid = '<var:string label:value="yearFieldInvalid"/>';
|
||||
var appointmentFieldInvalid = '<var:string label:value="appointmentFieldInvalid"/>';
|
||||
var recurrenceUnsupported = '<var:string label:value="recurrenceUnsupported"/>';
|
||||
</script>
|
||||
<form name="recurrence_form" id="recurrence_form" href="editRecurrence">
|
||||
<!-- weekly -->
|
||||
<div ng-show="editor.event.repeat.frequency == 'weekly'">
|
||||
<div layout="row" layout-align="start center">
|
||||
<var:string label:value="Every"/>
|
||||
<md-input-container class="md-input-number">
|
||||
<input type="number" label:aria-label="Every" ng-model="editor.event.repeat.interval"/>
|
||||
</md-input-container>
|
||||
<var:string label:value="Week(s)"/> <var:string label:value="On"/>
|
||||
</div>
|
||||
<md-grid-list md-cols="7" md-row-height="1:1" md-gutter="0.5em"
|
||||
sg-toggle-grid="editor.event.repeat.days"
|
||||
sg-toggle-grid-attr="day">
|
||||
<var:foreach list="shortWeekDaysList" item="item">
|
||||
<md-grid-tile var:value="valueForWeekDay"><var:string value="labelForWeekDay"/></md-grid-tile>
|
||||
</var:foreach>
|
||||
</md-grid-list>
|
||||
</div>
|
||||
|
||||
<!-- monthly -->
|
||||
<div ng-show="editor.event.repeat.frequency == 'monthly'">
|
||||
<div layout="row" layout-align="start center">
|
||||
<var:string label:value="Every"/>
|
||||
<md-input-container class="md-input-number">
|
||||
<input type="number" label:aria-label="Every" ng-model="editor.event.repeat.interval"/>
|
||||
</md-input-container>
|
||||
<var:string label:value="Month(s)"/>
|
||||
</div>
|
||||
<md-radio-group ng-model="editor.event.repeat.month.type">
|
||||
<md-radio-button value="bymonthday">
|
||||
<var:string label:value="Recur on day(s)"/>
|
||||
</md-radio-button>
|
||||
<md-grid-list md-cols="7" md-row-height="1:1" md-gutter="0.5em"
|
||||
sg-toggle-grid="editor.event.repeat.monthdays">
|
||||
<md-grid-tile value="1">1</md-grid-tile>
|
||||
<md-grid-tile value="2">2</md-grid-tile>
|
||||
<md-grid-tile value="3">3</md-grid-tile>
|
||||
<md-grid-tile value="4">4</md-grid-tile>
|
||||
<md-grid-tile value="5">5</md-grid-tile>
|
||||
<md-grid-tile value="6">6</md-grid-tile>
|
||||
<md-grid-tile value="7">7</md-grid-tile>
|
||||
<md-grid-tile value="8">8</md-grid-tile>
|
||||
<md-grid-tile value="9">9</md-grid-tile>
|
||||
<md-grid-tile value="10">10</md-grid-tile>
|
||||
<md-grid-tile value="11">11</md-grid-tile>
|
||||
<md-grid-tile value="12">12</md-grid-tile>
|
||||
<md-grid-tile value="13">13</md-grid-tile>
|
||||
<md-grid-tile value="14">14</md-grid-tile>
|
||||
<md-grid-tile value="15">15</md-grid-tile>
|
||||
<md-grid-tile value="16">16</md-grid-tile>
|
||||
<md-grid-tile value="17">17</md-grid-tile>
|
||||
<md-grid-tile value="18">18</md-grid-tile>
|
||||
<md-grid-tile value="19">19</md-grid-tile>
|
||||
<md-grid-tile value="20">20</md-grid-tile>
|
||||
<md-grid-tile value="21">21</md-grid-tile>
|
||||
<md-grid-tile value="22">22</md-grid-tile>
|
||||
<md-grid-tile value="23">23</md-grid-tile>
|
||||
<md-grid-tile value="24">24</md-grid-tile>
|
||||
<md-grid-tile value="25">25</md-grid-tile>
|
||||
<md-grid-tile value="26">26</md-grid-tile>
|
||||
<md-grid-tile value="27">27</md-grid-tile>
|
||||
<md-grid-tile value="28">28</md-grid-tile>
|
||||
<md-grid-tile value="29">29</md-grid-tile>
|
||||
<md-grid-tile value="30">30</md-grid-tile>
|
||||
<md-grid-tile value="31">31</md-grid-tile>
|
||||
</md-grid-list>
|
||||
<div layout="row" layout-align="start center">
|
||||
<md-radio-button value="byday">
|
||||
<var:string label:value="The"/>
|
||||
</md-radio-button>
|
||||
<md-select ng-model="editor.event.repeat.month.occurrence">
|
||||
<var:foreach list="monthlyRepeatList" item="item">
|
||||
<md-option var:value="valueForMonthlyRepeat"><var:string value="itemText"/></md-option>
|
||||
</var:foreach>
|
||||
</md-select>
|
||||
<md-select ng-model="editor.event.repeat.month.day">
|
||||
<var:foreach list="monthlyDayList" item="item">
|
||||
<md-option var:value="valueForMonthlyDay"><var:string value="item"/></md-option>
|
||||
</var:foreach>
|
||||
</md-select>
|
||||
</div>
|
||||
</md-radio-group>
|
||||
</div>
|
||||
|
||||
<!-- yearly -->
|
||||
<div ng-show="editor.event.repeat.frequency == 'yearly'">
|
||||
<div layout="row" layout-align="start center">
|
||||
<var:string label:value="Every"/>
|
||||
<md-input-container class="md-input-number">
|
||||
<input type="number" label:aria-label="Every" ng-model="editor.event.repeat.interval"/>
|
||||
</md-input-container>
|
||||
<var:string label:value="Year(s)"/>
|
||||
</div>
|
||||
<md-grid-list md-cols="6" md-row-height="1:1" md-gutter="0.5em"
|
||||
sg-toggle-grid="editor.event.repeat.months">
|
||||
<var:foreach list="yearlyMonthList" item="item">
|
||||
<md-grid-tile var:value="valueForYearlyMonth"><var:string value="item"/></md-grid-tile>
|
||||
</var:foreach>
|
||||
</md-grid-list>
|
||||
<div layout="row" layout-align="start center">
|
||||
<md-checkbox ng-model="editor.event.repeat.year.byday">
|
||||
<var:string label:value="The"/>
|
||||
</md-checkbox>
|
||||
<md-select ng-model="editor.event.repeat.month.occurrence">
|
||||
<var:foreach list="monthlyRepeatList" item="item">
|
||||
<md-option var:value="valueForMonthlyRepeat"><var:string value="itemText"/></md-option>
|
||||
</var:foreach>
|
||||
</md-select>
|
||||
<md-select ng-model="editor.event.repeat.month.day">
|
||||
<var:foreach list="yearlyDayList" item="item">
|
||||
<md-option var:value="valueForYearlyDay"><var:string value="item"/></md-option>
|
||||
</var:foreach>
|
||||
</md-select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form name="recurrence_form" id="recurrence_form" href="editRecurrence" class="ng-hide">
|
||||
<div id="recurrence_pattern" style="display: none;">
|
||||
<span class="caption"><var:string label:value="Recurrence pattern"/></span>
|
||||
<table class="frame">
|
||||
@@ -242,13 +350,6 @@
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="windowButtons">
|
||||
<a id="okButton" href="#" class="button actionButton"
|
||||
><span><var:string label:value="OK"/></span></a>
|
||||
<a id="cancelButton" href="#" class="button"
|
||||
><span><var:string label:value="Cancel"/></span></a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</var:component>
|
||||
</container>
|
||||
|
||||
Reference in New Issue
Block a user