<?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">
- <field name="email" string="Invitation To"/>
- <field name="sent_by_uid" string="Invitation From" />
+ <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" />
<field name="user_id" string="Invited User"/>
<newline/>
<field name="partner_address_id"
- string="Partner Contact" />
+ string="Contact" />
<field name="partner_id"
string="Partner" readonly="1" />
- <field name="role" string="Role" />
- <field name="cutype" string="Invitation type" />
- <field name="rsvp" />
</group>
<separator string="Event Detail" colspan="4" />
<group colspan="4" col="4">
</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="email" string="Invitation To"/>
- <field name="partner_id" string="Partner" />
- <field name="partner_address_id" string="Contact" />
- <field name="role" />
+ <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="gtk-apply" string="Accepted"
+ <filter icon="terp-gtk-jump-to-ltr" 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="gtk-close" string="Declined"
+ <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="sent_by_uid" select="1" widget="selection"/>
+ <field name="user_id" select="1" string="Responsible"/>
<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-personal" 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_sale_manager" />
+
+ <!-- Invitation menu -->
+
+ <menuitem id="menu_attendee_invitations"
+ parent="base.menu_calendar_configuration"
+ groups="base.group_extended"
+ 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="trigger_interval" select="1" />
<field name="trigger_occurs" select="1" />
<field name="trigger_related" select="1" />
- <separator string="" colspan="4" />
- <field name="duration" />
- <field name="repeat" />
</form>
</field>
</record>
- <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">Available Alarms</field>
+ <!-- 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>
-
- <!--Available alarms-->
- <menuitem id="base.menu_calendar_configuration" name="Calendar"
- parent="base.menu_base_config" sequence="10" />
+ <field name="help">Create specific calendar alarms that may be assigned to calendar events or meetings.</field>
+ </record>
- <menuitem name="Available Alarms" id="menu_crm_meeting_avail_alarm"
+ <!-- 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" />
- </data>
-</openerp>
+ <!-- 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_dates(date,False,False,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="recurrency"/>
+ <field name="edit_all" attrs="{'invisible':[('recurrency','=', False)]}"
+ on_change="onchange_edit_all(rrule_type,edit_all)"/>
+ </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_cancel"
+ string="Cancel"
+ states="tentative,confirmed"
+ type="object"
+ icon="gtk-cancel" />
+ <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" />
+ </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>
+ <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"
+ attrs="{'readonly':[('recurrent_uid','!=',False)]}" />
+ <field name="interval" />
+
+
+ <separator string="End of recurrency" 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>
+ </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"
+ groups="base.group_extended"
+ sequence="5" action="action_view_event" />
+
+ </data>
+ </openerp>