]> err.no Git - scalable-opengroupware.org/blob - SoObjects/Appointments/SOGoCalendarComponent.m
git-svn-id: http://svn.opengroupware.org/SOGo/inverse/trunk@1008 d1b88da0-ebda-0310...
[scalable-opengroupware.org] / SoObjects / Appointments / SOGoCalendarComponent.m
1 /* SOGoCalendarComponent.m - this file is part of SOGo
2  *
3  * Copyright (C) 2006 Inverse groupe conseil
4  *
5  * Author: Wolfgang Sourdeau <wsourdeau@inverse.ca>
6  *
7  * This file is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2, or (at your option)
10  * any later version.
11  *
12  * This file is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; see the file COPYING.  If not, write to
19  * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */
22
23 #import <NGCards/iCalCalendar.h>
24
25 #import "SOGoCalendarComponent.h"
26
27 @implementation SOGoCalendarComponent
28
29 - (id) init
30 {
31   if ((self = [super init]))
32     {
33       calendar = nil;
34     }
35
36   return self;
37 }
38
39 - (void) dealloc
40 {
41   if (calendar)
42     [calendar release];
43   [super dealloc];
44 }
45
46 - (NSString *) iCalString
47 {
48   // for UI-X appointment viewer
49   return [self contentAsString];
50 }
51
52 - (iCalCalendar *) calendar
53 {
54   NSString *iCalString;
55
56   if (!calendar)
57     {
58       iCalString = [self iCalString];
59       if (iCalString)
60         {
61           calendar = [iCalCalendar parseSingleFromSource: iCalString];
62           [calendar retain];
63         }
64     }
65
66   return calendar;
67 }
68
69 /* raw saving */
70
71 - (NSException *)primarySaveContentString:(NSString *)_iCalString {
72   return [super saveContentString:_iCalString];
73 }
74
75 - (NSException *)primaryDelete {
76   return [super delete];
77 }
78
79 - (NSException *)deleteWithBaseSequence: (int) a
80 {
81   [self subclassResponsibility: _cmd];
82
83   return nil;
84 }
85
86 - (NSException *) delete
87 {
88   return [self deleteWithBaseSequence:0];
89 }
90
91 @end