[MERGE]
authorHarry (Open ERP) <hmo@tinyerp.com>
Mon, 8 Mar 2010 10:58:08 +0000 (16:28 +0530)
committerHarry (Open ERP) <hmo@tinyerp.com>
Mon, 8 Mar 2010 10:58:08 +0000 (16:28 +0530)
bzr revid: hmo@tinyerp.com-20100308105808-daycevll1sgvayfl

1  2 
addons/base_calendar/base_calendar_data.xml
addons/caldav/caldav_data.xml
addons/caldav/security/ir.model.access.csv
addons/project_caldav/wizard/__init__.py
addons/project_caldav/wizard/wizard_cal_export.py
addons/project_caldav/wizard/wizard_cal_import.py

index 0000000,7ebab73..c8b20ac
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,376 +1,133 @@@
+ <?xml version="1.0"?>
+ <openerp>
 -      <data noupdate="1">
 -              
 -
 -              <!--            Event attributes-->
 -
 -              <record model="basic.calendar.attributes" id="field_event_comment">
 -                      <field name="name">comment</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_uid">
 -                      <field name="name">uid</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_seq">
 -                      <field name="name">seq</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_recurrence-id">
 -                      <field name="name">recurrence-id</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_transp">
 -                      <field name="name">transp</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_attendee">
 -                      <field name="name">attendee</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_related">
 -                      <field name="name">related</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_rrule">
 -                      <field name="name">rrule</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_dtend">
 -                      <field name="name">dtend</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_valarm">
 -                      <field name="name">valarm</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -              
 -              <record model="basic.calendar.attributes" id="field_event_vtimezone">
 -                      <field name="name">vtimezone</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -              
 -              <record model="basic.calendar.attributes" id="field_event_priority">
 -                      <field name="name">priority</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_location">
 -                      <field name="name">location</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_exrule">
 -                      <field name="name">exrule</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_resources">
 -                      <field name="name">resources</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_rstatus">
 -                      <field name="name">rstatus</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_status">
 -                      <field name="name">status</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_exdate">
 -                      <field name="name">exdate</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_dtstamp">
 -                      <field name="name">dtstamp</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_description">
 -                      <field name="name">description</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_rdate">
 -                      <field name="name">rdate</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_dtstart">
 -                      <field name="name">dtstart</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_class">
 -                      <field name="name">class</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_x-openobject-model">
 -                      <field name="name">x-openobject-model</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_created">
 -                      <field name="name">created</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_url">
 -                      <field name="name">url</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_summary">
 -                      <field name="name">summary</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_event_contact">
 -                      <field name="name">contact</field>
 -                      <field name="type">vevent</field>
 -              </record>
 -
 -
 -<!--          Todo attributes-->
 -
 -              <record model="basic.calendar.attributes" id="field_todo_status">
 -                      <field name="name">status</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_comment">
 -                      <field name="name">comment</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_attendee">
 -                      <field name="name">attendee</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_valarm">
 -                      <field name="name">valarm</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_description">
 -                      <field name="name">description</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_seq">
 -                      <field name="name">seq</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -              
 -              <record model="basic.calendar.attributes" id="field_todo_vtimezone">
 -                      <field name="name">vtimezone</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -              
 -              <record model="basic.calendar.attributes" id="field_todo_url">
 -                      <field name="name">url</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_completed">
 -                      <field name="name">completed</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_percent">
 -                      <field name="name">percent</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_due">
 -                      <field name="name">due</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_summary">
 -                      <field name="name">summary</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_priority">
 -                      <field name="name">priority</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_exdate">
 -                      <field name="name">exdate</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_location">
 -                      <field name="name">location</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_exrule">
 -                      <field name="name">exrule</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_duration">
 -                      <field name="name">duration</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_organizer">
 -                      <field name="name">organizer</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_dtstart">
 -                      <field name="name">dtstart</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_rrule">
 -                      <field name="name">rrule</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_class">
 -                      <field name="name">class</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_todo_uid">
 -                      <field name="name">uid</field>
 -                      <field name="type">vtodo</field>
 -              </record>
 -
 -<!--          Attendee's attributes-->
 -
 -              <record model="basic.calendar.attributes" id="field_attendee_cn">
 -                      <field name="name">cn</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_attendee_sent-by">
 -                      <field name="name">sent-by</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_attendee_language">
 -                      <field name="name">language</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -              <record model="basic.calendar.attributes" id="field_attendee_delegated-from">
 -                      <field name="name">delegated-from</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_attendee_member">
 -                      <field name="name">member</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_attendee_cutype">
 -                      <field name="name">cutype</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_attendee_role">
 -                      <field name="name">role</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_attendee_partstat">
 -                      <field name="name">partstat</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_attendee_delegated-to">
 -                      <field name="name">delegated-to</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_attendee_dir">
 -                      <field name="name">dir</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_attendee_rsvp">
 -                      <field name="name">rsvp</field>
 -                      <field name="type">attendee</field>
 -              </record>
 -
 -<!--  Alarm attributes-->
 -
 -              <record model="basic.calendar.attributes" id="field_alarm_attendee">
 -                      <field name="name">attendee</field>
 -                      <field name="type">alarm</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_alarm_trigger_duration">
 -                      <field name="name">trigger_duration</field>
 -                      <field name="type">alarm</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_alarm_description">
 -                      <field name="name">description</field>
 -                      <field name="type">alarm</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_alarm_attach">
 -                      <field name="name">attach</field>
 -                      <field name="type">alarm</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_alarm_trigger_occurs">
 -                      <field name="name">trigger_occurs</field>
 -                      <field name="type">alarm</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_alarm_trigger_interval">
 -                      <field name="name">trigger_interval</field>
 -                      <field name="type">alarm</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_alarm_summary">
 -                      <field name="name">summary</field>
 -                      <field name="type">alarm</field>
 -              </record>
 -
 -              <record model="basic.calendar.attributes" id="field_alarm_duration">
 -                      <field name="name">duration</field>
 -                      <field name="type">alarm</field>
++      <data noupdate="1">
++              <record model="res.alarm" id="alarm1">
++                      <field name="name">1 minute before</field>
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="1" />
++                      <field name="trigger_interval">minutes</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
++
++              <record model="res.alarm" id="alarm2">
++                      <field name="name">5 minutes before</field>
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="5" />
++                      <field name="trigger_interval">minutes</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
+               </record>
 -              <record model="basic.calendar.attributes" id="field_alarm_repeat">
 -                      <field name="name">repeat</field>
 -                      <field name="type">alarm</field>
 -              </record>
++              <record model="res.alarm" id="alarm3">
++                      <field name="name">10 minutes before</field>
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="10" />
++                      <field name="trigger_interval">minutes</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
++
++              <record model="res.alarm" id="alarm4">
++                      <field name="name">15 minutes before</field>
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="15" />
++                      <field name="trigger_interval">minutes</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
++
++              <record model="res.alarm" id="alarm5">
++                      <field name="name">30 minutes before</field>
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="30" />
++                      <field name="trigger_interval">minutes</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
++
++              <record model="res.alarm" id="alarm6">
++                      <field name="name">45 minutes before</field>
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="45" />
++                      <field name="trigger_interval">minutes</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
++
++              <record model="res.alarm" id="alarm7">
++                      <field name="name">1 hour before</field>
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="1" />
++                      <field name="trigger_interval">hours</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
++
++              <record model="res.alarm" id="alarm8">
++                      <field name="name">2 hours before</field>
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="2" />
++                      <field name="trigger_interval">hours</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
++
++              <record model="res.alarm" id="alarm9">
++                      <field name="name">3 hours before</field>
++
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="3" />
++                      <field name="trigger_interval">hours</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
++
++              <record model="res.alarm" id="alarm10">
++                      <field name="name">4 hours before</field>
++
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="4" />
++                      <field name="trigger_interval">hours</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
++
++              <record model="res.alarm" id="alarm11">
++                      <field name="name">5 hours before</field>
++
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="5" />
++                      <field name="trigger_interval">hours</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
++
++              <record model="res.alarm" id="alarm12">
++                      <field name="name">18 hours before</field>
++
++                      <field name="active" eval="1" />
++                      <field name="trigger_duration" eval="18" />
++                      <field name="trigger_interval">hours</field>
++                      <field name="trigger_occurs">before</field>
++                      <field name="trigger_related">start</field>
++              </record>
 -              <record model="basic.calendar.attributes" id="field_alarm_action">
 -                      <field name="name">action</field>
 -                      <field name="type">alarm</field>
 -              </record>
 -              <record model="basic.calendar.attributes" id="field_alarm_trigger_related">
 -                      <field name="name">trigger_related</field>
 -                      <field name="type">alarm</field>
++              <!-- Scheduler for Event Alarm-->
++              <record forcecreate="True" id="ir_cron_scheduler_alarm"
++                      model="ir.cron">
++                      <field name="name">Run Event Reminder</field>
++                      <field eval="True" name="active" />
++                      <field name="user_id" ref="base.user_root" />
++                      <field name="interval_number">1</field>
++                      <field name="interval_type">minutes</field>
++                      <field name="numbercall">-1</field>
++                      <field eval="False" name="doall" />
++                      <field eval="'calendar.alarm'" name="model" />
++                      <field eval="'do_run_scheduler'" name="function" />
++                      <field eval="'(False,)'" name="args" />
+               </record>
 -
+       </data>
+ </openerp>
index 0000000,0000000..7ebab73
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,376 @@@
++<?xml version="1.0"?>
++<openerp>
++      <data noupdate="1">
++              
++
++              <!--            Event attributes-->
++
++              <record model="basic.calendar.attributes" id="field_event_comment">
++                      <field name="name">comment</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_uid">
++                      <field name="name">uid</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_seq">
++                      <field name="name">seq</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_recurrence-id">
++                      <field name="name">recurrence-id</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_transp">
++                      <field name="name">transp</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_attendee">
++                      <field name="name">attendee</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_related">
++                      <field name="name">related</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_rrule">
++                      <field name="name">rrule</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_dtend">
++                      <field name="name">dtend</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_valarm">
++                      <field name="name">valarm</field>
++                      <field name="type">vevent</field>
++              </record>
++              
++              <record model="basic.calendar.attributes" id="field_event_vtimezone">
++                      <field name="name">vtimezone</field>
++                      <field name="type">vevent</field>
++              </record>
++              
++              <record model="basic.calendar.attributes" id="field_event_priority">
++                      <field name="name">priority</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_location">
++                      <field name="name">location</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_exrule">
++                      <field name="name">exrule</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_resources">
++                      <field name="name">resources</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_rstatus">
++                      <field name="name">rstatus</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_status">
++                      <field name="name">status</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_exdate">
++                      <field name="name">exdate</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_dtstamp">
++                      <field name="name">dtstamp</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_description">
++                      <field name="name">description</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_rdate">
++                      <field name="name">rdate</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_dtstart">
++                      <field name="name">dtstart</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_class">
++                      <field name="name">class</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_x-openobject-model">
++                      <field name="name">x-openobject-model</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_created">
++                      <field name="name">created</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_url">
++                      <field name="name">url</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_summary">
++                      <field name="name">summary</field>
++                      <field name="type">vevent</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_event_contact">
++                      <field name="name">contact</field>
++                      <field name="type">vevent</field>
++              </record>
++
++
++<!--          Todo attributes-->
++
++              <record model="basic.calendar.attributes" id="field_todo_status">
++                      <field name="name">status</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_comment">
++                      <field name="name">comment</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_attendee">
++                      <field name="name">attendee</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_valarm">
++                      <field name="name">valarm</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_description">
++                      <field name="name">description</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_seq">
++                      <field name="name">seq</field>
++                      <field name="type">vtodo</field>
++              </record>
++              
++              <record model="basic.calendar.attributes" id="field_todo_vtimezone">
++                      <field name="name">vtimezone</field>
++                      <field name="type">vtodo</field>
++              </record>
++              
++              <record model="basic.calendar.attributes" id="field_todo_url">
++                      <field name="name">url</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_completed">
++                      <field name="name">completed</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_percent">
++                      <field name="name">percent</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_due">
++                      <field name="name">due</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_summary">
++                      <field name="name">summary</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_priority">
++                      <field name="name">priority</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_exdate">
++                      <field name="name">exdate</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_location">
++                      <field name="name">location</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_exrule">
++                      <field name="name">exrule</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_duration">
++                      <field name="name">duration</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_organizer">
++                      <field name="name">organizer</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_dtstart">
++                      <field name="name">dtstart</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_rrule">
++                      <field name="name">rrule</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_class">
++                      <field name="name">class</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_todo_uid">
++                      <field name="name">uid</field>
++                      <field name="type">vtodo</field>
++              </record>
++
++<!--          Attendee's attributes-->
++
++              <record model="basic.calendar.attributes" id="field_attendee_cn">
++                      <field name="name">cn</field>
++                      <field name="type">attendee</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_attendee_sent-by">
++                      <field name="name">sent-by</field>
++                      <field name="type">attendee</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_attendee_language">
++                      <field name="name">language</field>
++                      <field name="type">attendee</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_attendee_delegated-from">
++                      <field name="name">delegated-from</field>
++                      <field name="type">attendee</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_attendee_member">
++                      <field name="name">member</field>
++                      <field name="type">attendee</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_attendee_cutype">
++                      <field name="name">cutype</field>
++                      <field name="type">attendee</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_attendee_role">
++                      <field name="name">role</field>
++                      <field name="type">attendee</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_attendee_partstat">
++                      <field name="name">partstat</field>
++                      <field name="type">attendee</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_attendee_delegated-to">
++                      <field name="name">delegated-to</field>
++                      <field name="type">attendee</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_attendee_dir">
++                      <field name="name">dir</field>
++                      <field name="type">attendee</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_attendee_rsvp">
++                      <field name="name">rsvp</field>
++                      <field name="type">attendee</field>
++              </record>
++
++<!--  Alarm attributes-->
++
++              <record model="basic.calendar.attributes" id="field_alarm_attendee">
++                      <field name="name">attendee</field>
++                      <field name="type">alarm</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_alarm_trigger_duration">
++                      <field name="name">trigger_duration</field>
++                      <field name="type">alarm</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_alarm_description">
++                      <field name="name">description</field>
++                      <field name="type">alarm</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_alarm_attach">
++                      <field name="name">attach</field>
++                      <field name="type">alarm</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_alarm_trigger_occurs">
++                      <field name="name">trigger_occurs</field>
++                      <field name="type">alarm</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_alarm_trigger_interval">
++                      <field name="name">trigger_interval</field>
++                      <field name="type">alarm</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_alarm_summary">
++                      <field name="name">summary</field>
++                      <field name="type">alarm</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_alarm_duration">
++                      <field name="name">duration</field>
++                      <field name="type">alarm</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_alarm_repeat">
++                      <field name="name">repeat</field>
++                      <field name="type">alarm</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_alarm_action">
++                      <field name="name">action</field>
++                      <field name="type">alarm</field>
++              </record>
++
++              <record model="basic.calendar.attributes" id="field_alarm_trigger_related">
++                      <field name="name">trigger_related</field>
++                      <field name="type">alarm</field>
++              </record>
++
++      </data>
++</openerp>
index 8c38869,0000000..dd84c39
mode 100644,000000..100644
--- /dev/null
@@@ -1,6 -1,0 +1,6 @@@
 +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
- "caldav_calendar_all","caldav.calendar","model_caldav_calendar",,1,1,1,1
- "caldav_event_all","caldav.event","model_caldav_event",,1,1,1,1
- "caldav_attendee_all","caldav.attendee","model_caldav_attendee",,1,1,1,1
- "access_crm_caldav_attendee","crm.caldav.attendee","model_crm_caldav_attendee",,1,1,1,1
- "access_crm_caldav_alarm","crm.caldav.alarm","model_crm_caldav_alarm",,1,1,1,1
++"access_basic_calendar_all","basic.calendar","model_basic_calendar",,1,1,1,1
++"access_basic_calendar_event_all","basic.calendar.event","model_basic_calendar_event",,1,1,1,1
++"access_basic_calendar_attendee_all","basic.calendar.attendee","model_basic_calendar_attendee",,1,1,1,1
++"access_calendar_todo_all","basic.calendar.todo","model_basic_calendar_todo",,1,1,1,1
++"access_basic_calendar_alarm_all","basic.calendar.alarm","model_basic_calendar_alarm",,1,1,1,1
index 0000000,0000000..009d377
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,25 @@@
++# -*- coding: utf-8 -*-
++##############################################################################
++#    
++#    OpenERP, Open Source Management Solution
++#    Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
++#
++#    This program is free software: you can redistribute it and/or modify
++#    it under the terms of the GNU Affero General Public License as
++#    published by the Free Software Foundation, either version 3 of the
++#    License, or (at your option) any later version.
++#
++#    This program is distributed in the hope that it will be useful,
++#    but WITHOUT ANY WARRANTY; without even the implied warranty of
++#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++#    GNU Affero General Public License for more details.
++#
++#    You should have received a copy of the GNU Affero General Public License
++#    along with this program.  If not, see <http://www.gnu.org/licenses/>.     
++#
++##############################################################################
++
++import wizard_cal_export
++import wizard_cal_import
++
++# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
index 0000000,0000000..d8e70ca
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,65 @@@
++# -*- coding: utf-8 -*-
++##############################################################################
++#    
++#    OpenERP, Open Source Management Solution
++#    Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
++#
++#    This program is free software: you can redistribute it and/or modify
++#    it under the terms of the GNU Affero General Public License as
++#    published by the Free Software Foundation, either version 3 of the
++#    License, or (at your option) any later version.
++#
++#    This program is distributed in the hope that it will be useful,
++#    but WITHOUT ANY WARRANTY; without even the implied warranty of
++#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++#    GNU Affero General Public License for more details.
++#
++#    You should have received a copy of the GNU Affero General Public License
++#    along with this program.  If not, see <http://www.gnu.org/licenses/>.     
++#
++##############################################################################
++
++import wizard
++import base64
++import pooler
++
++
++class project_cal_export_wizard(wizard.interface):
++    form1 = '''<?xml version="1.0"?>
++    <form string="Export ICS">
++        <field name="name"/>
++        <field name="file_path" colspan="4" width="300"/>
++    </form>'''
++    
++    form1_fields = {
++            'file_path': {
++                'string': 'Save ICS file', 
++                'type': 'binary', 
++                'required' : True, 
++                'filters' : '*.ics'
++                },
++            'name': {
++                    'string': 'File name', 
++                    'type': 'char', 
++                    'size': 34, 
++                    'required': True, 
++                    'help': 'Save in .ics format'}, 
++            }
++    
++    def _process_export_ics(self, cr, uid, data, context):
++        task_obj = pooler.get_pool(cr.dbname).get('project.task')
++        calendar = task_obj.export_cal(cr, uid, data['ids'], context)
++        return {'file_path': base64.encodestring(calendar), \
++                                'name': 'OpenERP Tasks.ics'}
++    
++    states = {
++        'init': {
++            'actions': [_process_export_ics], 
++            'result': {'type': 'form', 'arch':form1, 'fields':form1_fields, \
++                       'state': [('end', '_Cancel', 'gtk-cancel'), ('end', 'Ok', 'gtk-ok')]}
++        }, 
++    }
++    
++project_cal_export_wizard('caldav.project.export')
++
++# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
index 0000000,0000000..ef99f75
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,84 @@@
++# -*- coding: utf-8 -*-
++##############################################################################
++#    
++#    OpenERP, Open Source Management Solution
++#    Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
++#
++#    This program is free software: you can redistribute it and/or modify
++#    it under the terms of the GNU Affero General Public License as
++#    published by the Free Software Foundation, either version 3 of the
++#    License, or (at your option) any later version.
++#
++#    This program is distributed in the hope that it will be useful,
++#    but WITHOUT ANY WARRANTY; without even the implied warranty of
++#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++#    GNU Affero General Public License for more details.
++#
++#    You should have received a copy of the GNU Affero General Public License
++#    along with this program.  If not, see <http://www.gnu.org/licenses/>.     
++#
++##############################################################################
++
++import wizard
++import pooler
++
++class project_cal_imp_wizard(wizard.interface):
++    form1 = '''<?xml version="1.0"?>
++    <form string="Import ICS">
++        <separator string="Select ICS file"/>
++        <field name="file_path" colspan="4" width="300" nolabel="1"/>
++    </form>'''
++    
++    form1_fields = {
++            'file_path': {
++                'string': 'Select ICS file', 
++                'type': 'binary', 
++                'required': True, 
++                'filters': '*.ics'
++                }
++            }
++    display = '''<?xml version="1.0"?>
++    <form string="Import Message">
++        <field name="msg" colspan="4" width="300" nolabel="1"/>
++    </form>'''
++    
++    display_fields = {
++            'msg': {
++                'string': '', 
++                'type': 'text', 
++                'readonly': True, 
++                'default': 'Imported %s Tasks'
++                }
++            }
++
++    def _process_imp_ics(self, cr, uid, data, context=None):
++        task_obj = pooler.get_pool(cr.dbname).get('project.task')
++        vals = task_obj.import_cal(cr, uid, data['ids'], data, context)
++        if vals:
++            global cnt
++            cnt = vals['count']
++        return {}
++    
++    def _result_set(self, cr, uid, data, context=None):
++        return {'msg': 'Imported %s Task(s)' % cnt}
++    
++    states = {
++        'init': {
++            'actions': [], 
++            'result': {'type': 'form', 'arch': form1, 'fields': form1_fields, \
++                       'state': [('end', '_Cancel', 'gtk-cancel'), ('open', '_Import', 'gtk-ok')]}
++        }, 
++        'open': {
++            'actions': [], 
++            'result': {'type': 'action', 'action': _process_imp_ics, 'state': 'display'}
++        },
++       'display': {
++            'actions': [_result_set], 
++            'result': {'type': 'form', 'arch': display, 'fields': display_fields, \
++                       'state': [('end', 'Ok', 'gtk-ok')]}
++        }, 
++    }
++    
++project_cal_imp_wizard('caldav.project.import')
++
++# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: