+/*
+ Copyright (C) 2005 SKYRIX Software AG
+
+ This file is part of OpenGroupware.org.
+
+ OGo is free software; you can redistribute it and/or modify it under
+ the terms of the GNU Lesser General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ OGo 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 Lesser General Public
+ License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with OGo; see the file COPYING. If not, write to the
+ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA.
+*/
+
+#include "SOGoUser.h"
+#include <SOGo/AgenorUserManager.h>
+#include "common.h"
+
+@implementation SOGoUser
+
+- (void)dealloc {
+ [self->cn release];
+ [self->email release];
+ [super dealloc];
+}
+
+/* internals */
+
+- (AgenorUserManager *)userManager {
+ static AgenorUserManager *um = nil;
+ if (um == nil) um = [[AgenorUserManager sharedUserManager] retain];
+ return um;
+}
+
+/* properties */
+
+- (NSString *)email {
+ if (self->email == nil)
+ self->email = [[[self userManager] getEmailForUID:[self login]] copy];
+ return self->email;
+}
+
+- (NSString *)cn {
+ if (self->cn == nil)
+ self->cn = [[[self userManager] getCNForUID:[self login]] copy];
+ return self->cn;
+}
+
+- (NSString *)primaryIMAP4AccountString {
+ return [[self userManager] getIMAPAccountStringForUID:[self login]];
+}
+- (NSString *)primaryMailServer {
+ return [[self userManager] getServerForUID:[self login]];
+}
+
+- (NSArray *)additionalIMAP4AccountStrings {
+ return [[self userManager]getSharedMailboxAccountStringsForUID:[self login]];
+}
+- (NSArray *)additionalEMailAddresses {
+ return [[self userManager] getSharedMailboxEMailsForUID:[self login]];
+}
+
+- (NSURL *)freeBusyURL {
+ return [[self userManager] getFreeBusyURLForUID:[self login]];
+}
+
+@end /* SOGoUser */