<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data>

        <!-- Calendar's menu -->
        <menuitem id="base.menu_calendar_configuration" name="Calendar"
            parent="base.menu_base_config" sequence="50" groups="base.group_no_one"/>

        <!-- Alarm form view -->
        <record id="res_alarm_form_view" model="ir.ui.view">
            <field name="name">res.alarm.form</field>
            <field name="model">res.alarm</field>
            <field name="arch" type="xml">
                <form string="Reminder details" version="7.0">
                    <group col="4">
                        <field name="name"/>
                        <field name="active"/>
                        <separator string="Reminder Details" colspan="4"/>
                        <field name="trigger_duration"/>
                        <field name="trigger_interval"/>
                        <field name="trigger_occurs"/>
                        <field name="trigger_related"/>
                    </group>
                </form>
            </field>
        </record>

        <!-- Alarm list view -->
        <record id="res_alarm_tree_view" model="ir.ui.view">
            <field name="name">res.alarm.tree</field>
            <field name="model">res.alarm</field>
            <field name="arch" type="xml">
                <tree string="Reminder details">
                <field name="name"/>
                <field name="trigger_interval"/>
                <field name="trigger_duration"/>
                <field name="trigger_occurs"/>
                <field name="trigger_related"/>
                </tree>
            </field>
        </record>
        <record id="action_res_alarm_view" model="ir.actions.act_window">
            <field name="name">Alarms</field>
            <field name="type">ir.actions.act_window</field>
            <field name="res_model">res.alarm</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form</field>
            <field name="help" type="html">
              <p class="oe_view_nocontent_create">
                Click to setup a new alarm type.
              </p><p>
                You can define a customized type of calendar alarm that may be
                assigned to calendar events or meetings.
              </p>
            </field>
        </record>

        <!-- Alarms menu -->
         <menuitem id="menu_crm_meeting_avail_alarm"
            groups="base.group_no_one"
            action="base_calendar.action_res_alarm_view"
            parent="base.menu_calendar_configuration" sequence="5"/>

        <!-- Event form view -->
        <record model="ir.ui.view" id="event_form_view">
            <field name="name">Event Form</field>
            <field name="model">calendar.event</field>
            <field name="arch" type="xml">
                <form string="Events" version="7.0">
                <header>
                    <button name="do_confirm" string="Confirm" states="tentative,cancelled" type="object" class="oe_highlight"/>
                    <button name="do_tentative" states="confirmed,cancelled" string="Uncertain" type="object" class="oe_highlight"/>
                    <button name="do_cancel" string="Cancel Event" states="tentative,confirmed" type="object"/>
                    <field name="state" widget="statusbar"
                        statusbar_visible="tentative,confirmed" statusbar_colors='{"proforma":"blue"}'/>
                </header>
                <sheet>
                    <group col="6">
                        <field name="name" string="Summary"
                            colspan="4" required="1"/>
                        <field name="allday" colspan="2" on_change="onchange_dates(date,False,False,allday)"/>
                        <newline/>
                        <field name="date" string="Start Date" required="1"
                            on_change="onchange_dates(date,duration,False,allday)"/>
                        <field name="duration" widget="float_time"
                            on_change="onchange_dates(date,duration,False,allday)" attrs="{'invisible': [('allday', '=', True)]}"/>
                        <field name="date_deadline" string="End Date" required="1"
                            on_change="onchange_dates(date,False,date_deadline)"/>
                        <field name="location"/>
                        <field name="alarm_id" string="Reminder"
                            widget="selection"/>
                        <group colspan="2" col="4" attrs="{'readonly': [('state','=','done')]}">
                           <field name="recurrency"/>
                        </group>
                    </group>
                    <notebook>
                    <page string="Event">
                        <group col="6" colspan="4">
                             <separator colspan="6" string="Visibility"/>
                             <field name="user_id" string="Responsible User"/>
                             <field name="show_as" string="Show Time as"/>
                             <field name="class" string="Privacy"/>
                             <field name="recurrent_id_date" invisible="1"/>
                             <field name="recurrent_id" invisible="1"/>
                        </group>
                        <separator string="Description"/>
                        <field name="description"/>
                    </page>
                    <page string="Invitation Detail">
                        <field name="attendee_ids" colspan="4"
                            nolabel="1" widget="one2many" mode="tree">
                            <tree string="Invitation details" editable="top">
                                <field name="sent_by_uid" string="From"/>
                                <field name="user_id" string="To"/>
                                <field name="email"/>
                                <field name="role" width="200"/>
                                <field name="state"/>
                                <button name="do_tentative"
                                    states="needs-action,declined,accepted"
                                    string="Uncertain" type="object"
                                    icon="terp-crm"/>
                                <button name="do_accept" string="Accept"
                                    states="needs-action,tentative,declined"
                                    type="object" icon="gtk-apply"/>
                                <button name="do_decline" string="Decline"
                                    states="needs-action,tentative,accepted"
                                    type="object" icon="gtk-cancel"/>
                            </tree>
                            <form string="Invitation details" version="7.0">
                                <notebook colspan="4">
                                    <page string="Details">
                                        <group col="4">
                                            <field name="email"/>
                                            <field name="rsvp"/>
                                            <field name="cutype"/>
                                            <field name="role"/>
                                        </group>
                                        <group col="4">
                                            <field name="state"/>
                                            <button name="do_tentative"
                                                states="needs-action,declined,accepted"
                                                string="Uncertain"
                                                type="object"
                                                icon="terp-crm"/>
                                            <button name="do_accept"
                                                string="Accept"
                                                states="needs-action,tentative,declined"
                                                type="object"
                                                icon="gtk-apply"/>
                                            <button name="do_decline"
                                                string="Decline"
                                                states="needs-action,tentative,accepted"
                                                type="object"
                                                icon="gtk-cancel"/>
                                        </group>
                                    </page>
                                    </notebook>
                                </form>
                            </field>
                        </page>
                    <page string="Recurrency Option" attrs="{'invisible': [('recurrency','=',False)]}">
                        <group col="4" colspan="4" name="rrule">
                            <group col="4" colspan="4">
                                <field name="rrule_type" string="Recurrency period" />
                                <field name="interval"/>
                                <separator string="End of Recurrence" colspan="4"/>
                                <field name="end_type"/>
                                <label string=" " colspan="2"/>
                                <newline/>
                                <field name="count" attrs="{'invisible' : [('end_type', '!=', 'count')] }"/>
                                <label string=" " colspan="2"/>
                                <newline/>
                                <field name="end_date" attrs="{'invisible' : [('end_type', '!=', 'end_date')] }"/>
                                <newline/>


                            </group>
                            <group col="8" colspan="4" name="Select weekdays" attrs="{'invisible' :[('rrule_type','not in', ['weekly'])]}">
                                <separator string="Choose day where repeat the meeting" colspan="8"/>
                                <field name="mo" colspan="1"/>
                                <field name="tu" colspan="1"/>
                                <field name="we" colspan="1"/>
                                <field name="th" colspan="1"/>
                                <newline/>
                                <field name="fr" colspan="1"/>
                                <field name="sa" colspan="1" />
                                <field name="su" colspan="1" />
                                <newline/>
                            </group>
                            <group col="10" colspan="4"
                                attrs="{'invisible' : [('rrule_type','!=','monthly')]}">
                                <separator string="Choose day in the month where repeat the meeting" colspan="12"/>
                                <group col="2" colspan="1">
                                    <field name="select1"/>
                                </group>
                                <group col="2" colspan="1">
                                    <field name="day"
                                        attrs="{'required' : [('select1','=','date'), ('rrule_type','=','monthly')],
                                            'invisible' : ['|', ('select1','=','day'), ('rrule_type','!=','monthly')]}"/>
                                </group>
                                <group col="3" colspan="1"
                                    attrs="{'invisible' : ['|', ('select1','=','date'), ('rrule_type','!=','monthly')]}">
                                    <field name="byday" string="The"
                                        attrs="{'required' : [('select1','=','day'), ('rrule_type','=','monthly')]}"/>
                                    <field name="week_list" nolabel="1"
                                        attrs="{'required' : [('select1','=','day'), ('rrule_type','=','monthly')]}"/>
                                </group>
                            </group>
                        </group>

                    </page>
                    </notebook>
                </sheet>
                </form>
            </field>
        </record>

        <!-- Event list view -->
        <record model="ir.ui.view" id="event_tree_view">
            <field name="name">Event Tree</field>
            <field name="model">calendar.event</field>
            <field name="arch" type="xml">
                <tree string="Events">
                    <field name="name" string="Subject"/>
                    <field name="date" string="Event Date"/>
                    <field name="location"/>
                    <field name="show_as"/>
                    <field name="class" string="Privacy"/>
                    <field name="user_id" invisible="1"/>
                    <field name="state" invisible="1"/>
                </tree>
            </field>
        </record>

        <!-- Event calendar view -->
        <record model="ir.ui.view" id="event_calendar_view">
            <field name="name">Events Calendar</field>
            <field name="model">calendar.event</field>
            <field name="priority" eval="2"/>
            <field name="arch" type="xml">
                <calendar string="Events" date_start="date" color="show_as" date_delay="duration">
                    <field name="name"/>
                    <field name="class"/>
                    <field name="show_as"/>
                </calendar>
            </field>
        </record>

        <!-- Event search view -->
        <record id="view_calendar_event_filter" model="ir.ui.view">
            <field name="name">Calendar Events Search</field>
            <field name="model">calendar.event</field>
            <field name="arch" type="xml">
                <search string="Search Events">
                    <field name="name" filter_domain="['|',('name','ilike',self),('location','ilike',self)]" string="Event"/>
                    <field name="show_as"/>
                    <field name="class" string="Privacy"/>
                    <filter icon="terp-go-today" string="My Events" domain="[('user_id','=',uid)]" help="My Events"/>
                    <separator/>
                    <filter icon="terp-check" string="Confirmed" domain="[('state','=','confirmed')]" help="Confirmed Events"/>
                    <field name="user_id"/>
                    <group expand="0" string="Group By...">
                        <filter string="Responsible" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
                        <filter string="Availability" icon="terp-camera_test" domain="[]" context="{'group_by':'show_as'}"/>
                        <filter string="Privacy" icon="terp-locked" domain="[]" context="{'group_by':'class'}"/>
                        <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
                        <filter string="Date" icon="terp-go-month" domain="[]" context="{'group_by':'date'}"/>
                    </group>
                </search>
            </field>
        </record>


        <!-- Event action -->
        <record id="action_view_event" model="ir.actions.act_window">
                <field name="name">Events</field>
                <field name="type">ir.actions.act_window</field>
                <field name="res_model">calendar.event</field>
                <field name="view_type">form</field>
                <field name="view_mode">calendar,tree,form</field>
                <field name="search_view_id" ref="view_calendar_event_filter"/>
            </record>

        <!-- Event menu -->
        <menuitem id="menu_events"
                name="Events" parent="base.menu_calendar_configuration"
                sequence="15" action="action_view_event"/>

     </data>
 </openerp>
