2 Copyright (C) 2005 SKYRIX Software AG
4 This file is part of OpenGroupware.org.
6 OGo is free software; you can redistribute it and/or modify it under
7 the terms of the GNU Lesser General Public License as published by the
8 Free Software Foundation; either version 2, or (at your option) any
11 OGo is distributed in the hope that it will be useful, but WITHOUT ANY
12 WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
14 License for more details.
16 You should have received a copy of the GNU Lesser General Public
17 License along with OGo; see the file COPYING. If not, write to the
18 Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
22 #ifndef __SOGoUser_H__
23 #define __SOGoUser_H__
25 #include <NGObjWeb/SoUser.h>
30 This adds some additional SOGo properties to the SoUser object. The
31 properties are (currently) looked up using the AgenorUserManager.
33 You have access to this object from the WOContext:
41 @class NSUserDefaults;
45 @interface SOGoUser : SoUser
49 NSUserDefaults *userDefaults;
50 NSUserDefaults *userSettings;
51 NSTimeZone *userTimeZone;
54 + (SOGoUser *) userWithLogin: (NSString *) login
55 andRoles: (NSArray *) roles;
61 - (NSURL *) freeBusyURL;
63 /* shares and identities */
65 - (NSString *) primaryIMAP4AccountString;
66 - (NSString *) primaryMailServer;
67 - (NSArray *) additionalIMAP4AccountStrings;
68 - (NSArray *) additionalEMailAddresses;
69 - (NSDictionary *) additionalIMAP4AccountsAndEMails;
73 - (NSUserDefaults *) userDefaults;
74 - (NSUserDefaults *) userSettings;
76 - (NSTimeZone *) timeZone;
77 - (NSTimeZone *) serverTimeZone;
81 - (id) homeFolderInContext: (id) _ctx;
82 - (id) schedulingCalendarInContext: (id) _ctx;
84 - (NSArray *) rolesForObject: (NSObject *) object
85 inContext: (WOContext *) context;
89 #endif /* __SOGoUser_H__ */