From 3aa4446439c96aa650af28b96b338e2c4f0806d9 Mon Sep 17 00:00:00 2001 From: "P. Christeas" <> Date: Fri, 3 Sep 2010 18:45:30 +0530 Subject: [PATCH] [IMP]: Usability Improvements in Calendar bzr revid: rpa@tinyerp.com-20100903131530-wqq4bb67nh9anr35 --- addons/base_calendar/base_calendar.py | 30 +++++++++++-------- addons/base_calendar/base_calendar_view.xml | 4 +-- .../wizard/base_calendar_set_exrule_view.xml | 8 ++--- addons/crm/crm_meeting_view.xml | 4 +-- addons/project_caldav/project_caldav_view.xml | 4 +-- 5 files changed, 27 insertions(+), 23 deletions(-) diff --git a/addons/base_calendar/base_calendar.py b/addons/base_calendar/base_calendar.py index 1beb7e90d41..6547676dc2b 100644 --- a/addons/base_calendar/base_calendar.py +++ b/addons/base_calendar/base_calendar.py @@ -403,6 +403,7 @@ property or property parameter."), else: return datetime.strptime(idate, '%Y-%m-%d %H:%M:%S') try: + # FIXME: why isn't this in CalDAV? import vobject except ImportError: return res @@ -1113,8 +1114,8 @@ class calendar_event(osv.osv): ('cancelled', 'Cancelled')], 'State', readonly=True), 'exdate': fields.text('Exception Date/Times', help="This property \ defines the list of date/time exceptions for a recurring calendar component."), - 'exrule': fields.char('Exception Rule', size=352, help="defines a \ -rule or repeating pattern for an exception to a recurrence set"), + 'exrule': fields.char('Exception Rule', size=352, help="Defines a \ +rule or repeating pattern of time to exclude from the recurring rule."), 'rrule': fields.function(_get_rulestring, type='char', size=124, method=True, \ string='Recurrent Rule', store=True, \ fnct_inv=_set_rrulestring, help='Defines a\ @@ -1123,8 +1124,11 @@ e.g.: Every other month on the last Sunday of the month for 10 occurrences:\ FREQ=MONTHLY;INTERVAL=2;COUNT=10;BYDAY=-1SU'), 'rrule_type': fields.selection([('none', ''), ('daily', 'Daily'), \ ('weekly', 'Weekly'), ('monthly', 'Monthly'), \ - ('yearly', 'Yearly'), ('custom', 'Custom')], 'Recurrency', states={'done': [('readonly', True)]}), - 'alarm_id': fields.many2one('res.alarm', 'Alarm', states={'done': [('readonly', True)]}), + ('yearly', 'Yearly'), ('custom', 'Custom')], + 'Recurrency', states={'done': [('readonly', True)]}, + help="Let the event automatically repeat at that interval"), + 'alarm_id': fields.many2one('res.alarm', 'Alarm', states={'done': [('readonly', True)]}, + help="Set an alarm at this time, before the event occurs" ), 'base_calendar_alarm_id': fields.many2one('calendar.alarm', 'Alarm'), 'recurrent_uid': fields.integer('Recurrent ID'), 'recurrent_id': fields.datetime('Recurrent ID date'), @@ -1133,15 +1137,15 @@ e.g.: Every other month on the last Sunday of the month for 10 occurrences:\ 'organizer': fields.char("Organizer", size=256, states={'done': [('readonly', True)]}), # Map with Organizer Attribure of VEvent. 'organizer_id': fields.many2one('res.users', 'Organizer', states={'done': [('readonly', True)]}), 'freq': fields.selection([('None', 'No Repeat'), \ - ('secondly', 'Secondly'), \ - ('minutely', 'Minutely'), \ - ('hourly', 'Hourly'), \ - ('daily', 'Daily'), \ - ('weekly', 'Weekly'), \ - ('monthly', 'Monthly'), \ - ('yearly', 'Yearly')], 'Frequency'), - 'interval': fields.integer('Interval'), - 'count': fields.integer('Count'), + ('hourly', 'Hours'), \ + ('daily', 'Days'), \ + ('weekly', 'Weeks'), \ + ('monthly', 'Months'), \ + ('yearly', 'Years'), \ + ('secondly', 'Seconds'), \ + ('minutely', 'Minutes') ], 'Frequency'), + 'interval': fields.integer('Interval', help="Repeat every x"), + 'count': fields.integer('Count', help="Repeat max that times"), 'mo': fields.boolean('Mon'), 'tu': fields.boolean('Tue'), 'we': fields.boolean('Wed'), diff --git a/addons/base_calendar/base_calendar_view.xml b/addons/base_calendar/base_calendar_view.xml index 3a665b8a8ae..05bf60888bd 100644 --- a/addons/base_calendar/base_calendar_view.xml +++ b/addons/base_calendar/base_calendar_view.xml @@ -245,7 +245,7 @@ attrs="{'invisible':[('rrule_type','in', ('none', False))]}" name="open_event" icon="gtk-edit" type="object" /> -