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

        <!--        Attendee form view-->

        <record id="base_calendar_attendee_form_view" model="ir.ui.view">
            <field name="name">calendar.attendee.form</field>
            <field name="model">calendar.attendee</field>
            <field name="type">form</field>
            <field name="arch" type="xml">
                <form string="Invitation details">
                    <group col="6" colspan="4">
                        <field name="email" string="Invitation To"/>
                        <field name="cutype" string="Invitation type" />
                        <field name="rsvp" />
                        <field name="role" string="Role" />
                        <field name="sent_by_uid" string="Invitation From" />
                    </group>
                    <notebook colspan="4">
                        <page string="Invitation">
                            <separator string="Invitation Detail" colspan="4" />
                            <group colspan="4" col="4">
                                <field name="user_id" string="Invited User"/>
                                <newline/>
                                <field name="partner_address_id"
                                    string="Contact" />
                                <field name="partner_id"
                                    string="Partner" readonly="1" />
                            </group>
                            <separator string="Event Detail" colspan="4" />
                            <group colspan="4" col="4">
                                <field name="event_date" />
                                <field name="event_end_date" />
                                <field name="language"/>
                                <field name="ref" colspan="4" readonly="1"/>
                            </group>
                        </page>
                        <page string="Delegation Info">
                            <separator string="Delegated From" colspan="4" />
                            <field name="parent_ids" nolabel="1"
                                colspan="4" readonly="1" />
                            <separator string="Delegated To" colspan="4" />
                            <field name="child_ids" nolabel="1"
                                colspan="4" readonly="1" />
                        </page>
                    </notebook>
                    <group col="6" colspan="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" />
                            <button
                                name="%(base_calendar.action_view_calendar_invite_attendee_wizard)d"
                                string="Delegate" type="action"
                                icon="gtk-sort-descending"
                                states="needs-action,tentative,declined,accepted"
                                context="{'model' : 'calendar.attendee', 'attendee_field' : 'child_ids'}" />
                    </group>
                </form>
            </field>
        </record>

        <!--        Attendee tree view-->

        <record id="base_calendar_attendee_tree_view" model="ir.ui.view">
            <field name="name">calendar.attendee.tree</field>
            <field name="model">calendar.attendee</field>
            <field name="type">tree</field>
            <field name="arch" type="xml">
                <tree string="Invitation details">
                    <field name="sent_by_uid" string="Invitation From" />
                    <field name="role" string="My Role"/>
                    <field name="cutype" string="Invitation type"/>
                    <field name="state" />
                    <field name="rsvp" string="Required to Join"/>
                    <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" />
                    <button
                        name="%(base_calendar.action_view_calendar_invite_attendee_wizard)d"
                        string="Delegate" type="action"
                        icon="gtk-sort-descending"
                        states="needs-action,tentative,declined,accepted"
                        context="{'model' : 'calendar.attendee', 'attendee_field' : 'child_ids'}" />
                </tree>
            </field>
        </record>

        <!--        Attendee search view-->

        <record id="base_calendar_attendee_search_view" model="ir.ui.view">
            <field name="name">calendar.attendee.search</field>
            <field name="model">calendar.attendee</field>
            <field name="type">search</field>
            <field name="arch" type="xml">
                <search string="Search Invitations">
                   <filter icon="terp-camera_test" name="toreview" string="To Review"
                       domain="[('state','=', 'needs-action')]"
                       separator="1" help="Invitations To Review" />
                   <filter icon="terp-check" string="Accepted"
                       domain="[('state','=', 'accepted')]"
                       separator="1" help="Accepted Invitations" />
                   <filter icon="terp-dialog-close" string="Declined"
                       domain="[('state','=', 'declined')]"
                       separator="1" help="Declined Invitations" />
                   <filter icon="gtk-sort-descending" string="Delegated"
                       domain="[('state','=', 'delegated')]"
                       separator="1" help="Delegated Invitations" />
                   <separator orientation="vertical"/>
                   <field name="email" select='1'/>
                   <field name="user_id" select="1"/>
                   <separator orientation="vertical"/>
                   <field name="cutype" string="Invitation type" select="1"/>
                   <field name="event_date" select="1"/>
                   <newline/>
                    <group expand="0" string="Group By...">
                        <filter string="Responsible" icon="terp-personal" domain="[]"
                            context="{'group_by':'user_id'}" />
                        <filter string="Contact" icon="terp-partner" domain="[]"
                            context="{'group_by':'partner_address_id'}" />
                        <separator orientation="vertical" />
                        <filter string="Type" icon="terp-stock_symbol-selection" help="Invitation Type"
                            domain="[]" context="{'group_by':'cutype'}" />
                        <filter string="Role" icon="terp-gtk-select-all"
                            domain="[]" context="{'group_by':'role'}" />
                        <filter string="Required Reply" icon="terp-mail-replied"
                            domain="[]" context="{'group_by':'rsvp'}" />
                        <separator orientation="vertical" />
                        <filter string="State" icon="terp-stock_effects-object-colorize" help="Invitation Type"
                            domain="[]" context="{'group_by':'state'}" />
                    </group>
               </search>
            </field>
        </record>
        <record id="action_view_attendee_form" model="ir.actions.act_window">
             <field name="name">Event Invitations</field>
             <field name="type">ir.actions.act_window</field>
             <field name="res_model">calendar.attendee</field>
             <field name="view_type">form</field>
             <field name="view_mode">tree,form</field>
             <field name="view_id" ref="base_calendar.base_calendar_attendee_tree_view" />
             <field name="context">{'default_sent_by_uid': uid}</field>
         </record>

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

        <!-- Invitation menu -->

           <menuitem id="menu_attendee_invitations"
            name="Event Invitations" parent="base.menu_calendar_configuration"
            sequence="10" action="action_view_attendee_form" />

        <!--        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="type">form</field>
            <field name="arch" type="xml">
                <form string="Reminder details">
                    <field name="name" />
                    <field name="active" />
                    <separator string="Reminder Details" colspan="4" />
                    <field name="trigger_duration" select="1" />
                    <field name="trigger_interval" select="1" />
                    <field name="trigger_occurs" select="1" />
                    <field name="trigger_related" select="1" />
                </form>
            </field>
        </record>

        <!--        ALARM TREE 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="type">tree</field>
            <field name="arch" type="xml">
                <tree string="Reminder details">
                <field name="name" select="1"/>
                <field name="trigger_interval" select="1"/>
                <field name="trigger_duration" select="1"/>
                <field name="trigger_occurs" select="1"/>
                <field name="trigger_related" select="1"/>
                </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>
        </record>

        <!--        Menu for Alarms-->

         <menuitem id="menu_crm_meeting_avail_alarm"
            groups="base.group_extended"
            action="base_calendar.action_res_alarm_view"
            parent="base.menu_calendar_configuration" />

        <!-- 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="type">form</field>
            <field name="arch" type="xml">
                <form string="Events">
                    <group col="6" colspan="4">
                        <field name="name" select="1" string="Summary"
                            colspan="4" required="1" />
                        <field name="allday" colspan="2" on_change="onchange_allday(allday)" />
                        <newline/>
                        <field name="date" string="Start Date" required="1" select="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" >
                               <field name="rrule_type" string="Recurrency"
                                    colspan="1" attrs="{'readonly':[('recurrent_uid','!=',False)]}"/>
                               <button string="Edit All"
                                   help="Edit all Ourrences of recurrent Events"
                                   attrs="{'invisible':[('rrule_type','in', ('none', False))]}"
                                   name="open_event" icon="gtk-edit"
                                   type="object" />
                               <button string="Exclude range" groups="base.group_extended"
                                    help="Add Exception Rule"
                                    name="%(base_calendar.action_base_calendar_set_exrule)d" icon="gtk-zoom-out"  type="action"
                                    context="{'model' : 'calendar.event'}"
                                    attrs="{'invisible':[('rrule_type','in', ('none', False))]}"/>
                        </group>
                    </group>
                    <group col="4" colspan="4" name="rrule" attrs="{'invisible': [('rrule_type','!=','custom')]}">
                        <separator string="Select data for Custom Rule" colspan="8"/>
                        <group col="8" colspan="4">
                            <field name="interval" />
                            <field name="freq" />
                            <field name="count" />
                            <field name="end_date" />
                        </group>
                        <group col="14" colspan="4" name="Select weekdays"
                            attrs="{'invisible' : [('freq','!=','weekly')]}">
                            <field name="mo" colspan="1" />
                            <field name="tu" colspan="1" />
                            <field name="we" colspan="1" />
                            <field name="th" colspan="1" />
                            <field name="fr" colspan="1" />
                            <field name="sa" colspan="1" />
                            <field name="su" colspan="1" />
                            <newline />
                        </group>
                        <group col="10" colspan="4"
                            attrs="{'invisible' : [('freq','!=','monthly'), ('freq','!=','yearly')]}">
                            <group col="2" colspan="1">
                                <field name="select1" />
                            </group>
                            <group col="2" colspan="1"
                                attrs="{'invisible' : [('select1','=','day')]}">
                                <field name="day"
                                    attrs="{'required' : [('select1','=','date')]}" />
                            </group>
                            <group col="3" colspan="1"
                                attrs="{'invisible' : [('select1','=','date')]}">
                                <field name="byday" string="The"
                                    attrs="{'required' : [('select1','=','day')]}" />
                                <field name="week_list" nolabel="1"
                                    attrs="{'required' : [('select1','=','day')]}" />
                            </group>
                            <group col="1" colspan="1"
                                attrs="{'invisible' : [('freq','!=','yearly')]}">
                                <field name="month_list" string="of"
                                    colspan="1"
                                    attrs="{'required' : [('freq','=','yearly')]}" />
                            </group>
                        </group>
                    </group>
                    <notebook colspan="4">
                    <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" invisible="1" />
                             <field name="recurrent_uid" invisible="1" />
                        </group>
                        <separator string="Description" colspan="4" />
                        <field name="description" nolabel="1" colspan="4" />
                        <separator colspan="4" string="" />
                           <group col="5" colspan="4">
                               <field name="state" select="2" />
                               <button name="do_tentative"
                                   states="confirmed,cancelled"
                                   string="Uncertain"
                                   type="object"
                                   icon="terp-crm" />
                               <button name="do_confirm"
                                   string="Confirm"
                                   states="tentative,cancelled"
                                   type="object"
                                   icon="gtk-apply" />
                               <button name="do_cancel"
                                   string="Cancel"
                                   states="tentative,confirmed"
                                   type="object"
                                   icon="gtk-cancel" />
                           </group>
                        </page>
                        <page string="Invitation Detail">
                            <button string="Invite People"
                                name="%(base_calendar.action_view_calendar_invite_attendee_wizard)d"
                                icon="terp-partner" type="action"
                                context="{'model' : 'calendar.event', 'attendee_field':'attendee_ids'}" colspan="2"/>
                            <field name="attendee_ids" colspan="4"
                                nolabel="1" widget="one2many" mode="tree,form">
                                <tree string="Invitation details" editable="top">
                                    <field name="email" />
                                    <field name="role" width="200" select="1" />
                                    <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" />
                                    <button
                                        name="%(base_calendar.action_view_calendar_invite_attendee_wizard)d"
                                        string="Delegate" type="action"
                                        icon="gtk-sort-descending"
                                        states="needs-action,tentative,declined,accepted"
                                        context="{'model' : 'calendar.attendee', 'attendee_field' : 'child_ids'}" />
                                </tree>
                                <form string="Invitation details">
                                    <notebook colspan="4">
                                        <page string="Details">
                                            <field name="email" />
                                            <field name="rsvp" select="1" />
                                            <field name="cutype" select="1" />
                                            <field name="role" select="1" />
                                            <separator colspan="4" string="" />
                                            <group col="6" colspan="4">
                                                <field name="state" select="2" />
                                                <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" />
                                                <button
                                                    name="%(base_calendar.action_view_calendar_invite_attendee_wizard)d"
                                                    string="Delegate"
                                                    type="action"
                                                    icon="gtk-sort-descending"
                                                    states="needs-action,tentative,declined,accepted"
                                                    context="{'model' : 'calendar.attendee', 'attendee_field' : 'child_ids'}" />
                                            </group>
                                        </page>
                                    </notebook>
                                </form>
                            </field>
                        </page>
                    </notebook>
                </form>
            </field>
        </record>

        <!-- Event Tree View  -->

        <record model="ir.ui.view" id="event_tree_view">
            <field name="name">Event Tree</field>
            <field name="model">calendar.event</field>
            <field name="type">tree</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="type">calendar</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="type">search</field>
            <field name="arch" type="xml">
                <search string="Search Events">
                       <group col="12" colspan="4">
                           <filter icon="terp-go-today" string="My Events"
                               domain="[('user_id','=',uid)]"
                               help="My Events" />
                           <separator orientation="vertical"/>
                           <filter icon="terp-check" string="Confirmed"
                               domain="[('state','=','confirmed')]"
                               help="Confirmed Events" />
                           <separator orientation="vertical"/>
                           <field name="name" select="1" string="Summary"/>
                           <field name="location" select="1" string="Location"/>
                           <separator orientation="vertical"/>
                           <field name="user_id" select="1"/>
                           <separator orientation="vertical"/>
                           <field name="show_as" select="1"/>
                           <field name="class" select="1" string="Privacy"/>
                       </group>
                       <newline/>
                        <group expand="0" string="Group By...">
                            <filter string="Responsible" icon="terp-personal" domain="[]"
                                context="{'group_by':'user_id'}" />
                            <separator orientation="vertical" />
                            <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="State" icon="terp-stock_effects-object-colorize" domain="[]"
                                context="{'group_by':'state'}" />
                            <separator orientation="vertical" />
                            <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">tree,form,calendar</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="5" action="action_view_event" />

     </data>
 </openerp>
