Monotone-Parent: 1a8298d1520d86d2ba9068bd72abcf7073aa20a8

Monotone-Revision: e9bc6cb46a4431aee9c0112701adef16e8fde065

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2007-05-09T18:25:51
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Wolfgang Sourdeau 2007-05-09 18:25:51 +00:00
parent 6313ca4cd4
commit 04afaf5430
17 changed files with 91 additions and 75 deletions

View File

@ -30,7 +30,7 @@
// #import <NGObjWeb/SoClassSecurityInfo.h>
#import <SOGo/SOGoCustomGroupFolder.h>
#import <SOGo/AgenorUserManager.h>
#import <SOGo/LDAPUserManager.h>
#import <SOGo/SOGoPermissions.h>
#import <SOGo/NSString+Utilities.h>
#import <SOGo/SOGoUser.h>
@ -741,7 +741,7 @@ static NSNumber *sharedYes = nil;
privacySqlString = @"and (isopaque = 1)";
else
{
email = [activeUser email];
email = [activeUser primaryEmail];
privacySqlString
= [NSString stringWithFormat:
@ -1092,7 +1092,7 @@ static NSNumber *sharedYes = nil;
{
/* Note: can return NSNull objects in the array! */
NSMutableArray *uids;
AgenorUserManager *um;
LDAPUserManager *um;
unsigned i, count;
if (_persons == nil)
@ -1100,7 +1100,7 @@ static NSNumber *sharedYes = nil;
count = [_persons count];
uids = [NSMutableArray arrayWithCapacity:count + 1];
um = [AgenorUserManager sharedUserManager];
um = [LDAPUserManager sharedUserManager];
for (i = 0; i < count; i++) {
iCalPerson *person;

View File

@ -26,11 +26,9 @@
#import <NGCards/iCalEventChanges.h>
#import <NGCards/iCalPerson.h>
#import <SOGo/AgenorUserManager.h>
#import <SOGo/SOGoObject.h>
#import <SOGo/SOGoPermissions.h>
#import "iCalEntityObject+Agenor.h"
#import <SoObjects/SOGo/LDAPUserManager.h>
#import <SoObjects/SOGo/SOGoObject.h>
#import <SoObjects/SOGo/SOGoPermissions.h>
#import "common.h"
@ -46,7 +44,7 @@
/* iCal handling */
- (NSArray *) attendeeUIDsFromAppointment: (iCalEvent *) _apt
{
AgenorUserManager *um;
LDAPUserManager *um;
NSMutableArray *uids;
NSArray *attendees;
unsigned i, count;
@ -60,13 +58,13 @@
count = [attendees count];
uids = [NSMutableArray arrayWithCapacity:count + 1];
um = [AgenorUserManager sharedUserManager];
um = [LDAPUserManager sharedUserManager];
/* add organizer */
email = [[_apt organizer] rfc822Email];
if ([email isNotNull]) {
uid = [um getUIDForEmail:email];
uid = [um getUIDForEmail: email];
if ([uid isNotNull]) {
[uids addObject:uid];
}
@ -201,7 +199,7 @@
- delete in removed folders
- send iMIP mail for all folders not found
*/
AgenorUserManager *um;
LDAPUserManager *um;
iCalEvent *oldApt, *newApt;
iCalEventChanges *changes;
iCalPerson *organizer;
@ -217,7 +215,7 @@
return [NSException exceptionWithHTTPStatus: 400 /* Bad Request */
reason: @"got no iCalendar content to store!"];
um = [AgenorUserManager sharedUserManager];
um = [LDAPUserManager sharedUserManager];
/* handle old content */
@ -247,12 +245,10 @@
/* diff */
changes = [iCalEventChanges changesFromEvent: oldApt toEvent: newApt];
uids = [um getUIDsForICalPersons: [changes deletedAttendees]
applyStrictMapping: NO];
uids = [self getUIDsForICalPersons: [changes deletedAttendees]];
removedUIDs = [NSMutableArray arrayWithArray: uids];
uids = [um getUIDsForICalPersons: [newApt attendees]
applyStrictMapping: NO];
uids = [self getUIDsForICalPersons: [newApt attendees]];
storeUIDs = [NSMutableArray arrayWithArray: uids];
props = [changes updatedProperties];
@ -263,7 +259,7 @@
/* preserve organizer */
organizer = [newApt organizer];
uid = [um getUIDForICalPerson: organizer];
uid = [self getUIDForICalPerson: organizer];
if (!uid)
uid = [self ownerInContext: nil];
if (uid) {
@ -275,7 +271,7 @@
/* organizer might have changed completely */
if (oldApt && ([props containsObject: @"organizer"])) {
uid = [um getUIDForICalPerson:[oldApt organizer]];
uid = [self getUIDForICalPerson:[oldApt organizer]];
if (uid) {
if (![storeUIDs containsObject:uid]) {
if (![removedUIDs containsObject:uid]) {
@ -435,6 +431,7 @@
NSString *newContentString, *oldContentString;
iCalCalendar *eventCalendar;
iCalEvent *event;
iCalPerson *organizer;
NSArray *organizers;
oldContentString = [self contentAsString];
@ -449,7 +446,8 @@
newContentString = contentString;
else
{
[event setOrganizerWithUid: [[self container] ownerInContext: nil]];
organizer = [self iCalPersonWithUID: [self ownerInContext: context]];
[event setOrganizer: organizer];
newContentString = [eventCalendar versitString];
}
}

View File

@ -40,13 +40,13 @@
/* accessors */
- (NSString *)iCalString;
- (NSString *) iCalString;
- (NSString *)contentAsStringFrom:(NSCalendarDate *)_startDate
to:(NSCalendarDate *)_endDate;
- (NSString *) contentAsStringFrom: (NSCalendarDate *) _startDate
to: (NSCalendarDate *) _endDate;
- (NSArray *)fetchFreeBusyInfosFrom:(NSCalendarDate *)_startDate
to:(NSCalendarDate *)_endDate;
- (NSArray *) fetchFreeBusyInfosFrom: (NSCalendarDate *) _startDate
to: (NSCalendarDate *) _endDate;
@end

View File

@ -25,7 +25,7 @@
#import "common.h"
#import <SOGo/AgenorUserManager.h>
#import <SOGo/LDAPUserManager.h>
#import <SOGo/SOGoPermissions.h>
#import "SOGoFreeBusyObject.h"
@ -110,11 +110,28 @@
return fbType;
}
- (iCalPerson *) iCalPersonWithUID: (NSString *) uid
{
iCalPerson *person;
LDAPUserManager *um;
NSDictionary *contactInfos;
um = [LDAPUserManager sharedUserManager];
contactInfos = [um contactInfosForUserWithUIDorEmail: uid];
person = [iCalPerson new];
[person autorelease];
[person setCn: [contactInfos objectForKey: @"cn"]];
[person setEmail: [contactInfos objectForKey: @"c_email"]];
return person;
}
- (NSString *) iCalStringForFreeBusyInfos: (NSArray *) _infos
from: (NSCalendarDate *) _startDate
to: (NSCalendarDate *) _endDate
{
AgenorUserManager *um;
LDAPUserManager *um;
NSString *uid;
NSEnumerator *events;
iCalCalendar *calendar;
@ -122,7 +139,6 @@
NSDictionary *info;
iCalFreeBusyType type;
um = [AgenorUserManager sharedUserManager];
uid = [[self container] login];
calendar = [iCalCalendar groupWithTag: @"vcalendar"];
@ -130,7 +146,7 @@
[calendar setVersion: @"2.0"];
freebusy = [iCalFreeBusy groupWithTag: @"vfreebusy"];
[freebusy addToAttendees: [um iCalPersonWithUid: uid]];
[freebusy addToAttendees: [self iCalPersonWithUid: uid]];
[freebusy setTimeStampAsDate: [NSCalendarDate calendarDate]];
[freebusy setStartDate: _startDate];
[freebusy setEndDate: _endDate];
@ -138,7 +154,7 @@
/* ORGANIZER - strictly required but missing for now */
/* ATTENDEE */
// person = [um iCalPersonWithUid: uid];
// person = [self iCalPersonWithUid: uid];
// [person setTag: @"ATTENDEE"];
// [ms appendString: [person versitString]];

View File

@ -25,7 +25,7 @@
#import <NGCards/iCalToDo.h>
#import <NGCards/iCalEventChanges.h>
#import <NGCards/iCalPerson.h>
#import <SOGo/AgenorUserManager.h>
#import <SOGo/LDAPUserManager.h>
#import <NGMime/NGMime.h>
#import <NGMail/NGMail.h>
#import <NGMail/NGSendMail.h>
@ -66,7 +66,7 @@ static NSString *mailTemplateDefaultLanguage = nil;
/* iCal handling */
- (NSArray *)attendeeUIDsFromTask:(iCalToDo *)_task {
AgenorUserManager *um;
LDAPUserManager *um;
NSMutableArray *uids;
NSArray *attendees;
unsigned i, count;
@ -80,7 +80,7 @@ static NSString *mailTemplateDefaultLanguage = nil;
count = [attendees count];
uids = [NSMutableArray arrayWithCapacity:count + 1];
um = [AgenorUserManager sharedUserManager];
um = [LDAPUserManager sharedUserManager];
/* add organizer */
@ -221,7 +221,7 @@ static NSString *mailTemplateDefaultLanguage = nil;
- delete in removed folders
- send iMIP mail for all folders not found
*/
// AgenorUserManager *um;
// LDAPUserManager *um;
// iCalCalendar *calendar;
// iCalToDo *oldApt, *newApt;
// // iCalToDoChanges *changes;
@ -239,7 +239,7 @@ static NSString *mailTemplateDefaultLanguage = nil;
// reason:@"got no iCalendar content to store!"];
// }
// um = [AgenorUserManager sharedUserManager];
// um = [LDAPUserManager sharedUserManager];
// /* handle old content */

View File

@ -60,8 +60,8 @@
account = [self valueForKey:@"primaryIMAP4AccountString"];
identity = [[[SOGoMailIdentity alloc] init] autorelease];
[identity setName:[self cn]];
[identity setEmail:[self email]];
[identity setName: [self cn]];
[identity setEmail: [self primaryEmail]];
[identity setSentFolderName:[self agenorSentFolderForAccount:account]];
return identity;
}

View File

@ -26,7 +26,7 @@
#import <NGObjWeb/SoUser.h>
#import <NGObjWeb/WORequest.h>
#import <NGCards/iCalPerson.h>
#import <SoObjects/SOGo/AgenorUserManager.h>
#import <SoObjects/SOGo/LDAPUserManager.h>
#import <SoObjects/SOGo/SOGoContentObject.h>
#import <SoObjects/SOGo/SOGoPermissions.h>
@ -67,13 +67,12 @@
- (NSString *) _displayNameForUID: (NSString *) uid
{
AgenorUserManager *um;
LDAPUserManager *um;
um = [AgenorUserManager sharedUserManager];
um = [LDAPUserManager sharedUserManager];
return [NSString stringWithFormat: @"%@ <%@>",
[um getCNForUID: uid],
[um getEmailForUID: uid]];
[um getCNForUID: uid], [um getEmailForUID: uid]];
}
- (NSString *) ownerName

View File

@ -25,16 +25,18 @@
#import <NGObjWeb/WODirectAction.h>
@class SOGoFolder;
@class NSString;
@class NSUserDefaults;
@class NSMutableString;
@class NSMutableDictionary;
@class LDAPUserManager;
@class SOGoFolder;
@interface UIxFolderActions : WODirectAction
{
SOGoFolder *clientObject;
AgenorUserManager *um;
LDAPUserManager *um;
NSUserDefaults *ud;
NSString *owner;
NSString *login;

View File

@ -31,10 +31,10 @@
#import <NGObjWeb/WOResponse.h>
#import <NGObjWeb/SoSecurityManager.h>
#import <SOGo/AgenorUserManager.h>
#import <SOGo/SOGoUser.h>
#import <SOGo/SOGoObject.h>
#import <SOGo/SOGoPermissions.h>
#import <SoObjects/SOGo/LDAPUserManager.h>
#import <SoObjects/SOGo/SOGoUser.h>
#import <SoObjects/SOGo/SOGoObject.h>
#import <SoObjects/SOGo/SOGoPermissions.h>
#import "UIxFolderActions.h"
@ -46,8 +46,10 @@
- (void) _setupContext
{
NSString *clientClass;
SOGoUser *activeUser;
login = [[context activeUser] login];
activeUser = [context activeUser];
login = [activeUser login];
clientObject = [self clientObject];
owner = [clientObject ownerInContext: nil];
@ -59,8 +61,8 @@
else
baseFolder = nil;
um = [AgenorUserManager sharedUserManager];
ud = [um getUserSettingsForUID: login];
um = [LDAPUserManager sharedUserManager];
ud = [activeUser userSettings];
moduleSettings = [ud objectForKey: baseFolder];
if (!moduleSettings)
{
@ -119,7 +121,8 @@
[self _setupContext];
email = [NSString stringWithFormat: @"%@ <%@>",
[um getCNForUID: owner], [um getEmailForUID: owner]];
[um getCNForUID: owner],
[um getEmailForUID: owner]];
if ([baseFolder isEqualToString: @"Contacts"])
folderName = [NSString stringWithFormat: @"%@ (%@)",
[clientObject nameInContainer], email];

View File

@ -25,7 +25,7 @@
#import <NGObjWeb/WOContext+SoObjects.h>
#import <NGObjWeb/WORequest.h>
#import <NGObjWeb/WOResponse.h>
#import <SoObjects/SOGo/AgenorUserManager.h>
#import <SoObjects/SOGo/LDAPUserManager.h>
#import <SoObjects/SOGo/SOGoObject.h>
#import "UIxObjectActions.h"
@ -38,7 +38,7 @@
WORequest *request;
NSString *uid, *email;
unsigned int code;
AgenorUserManager *um;
LDAPUserManager *um;
SOGoObject *clientObject;
code = 403;
@ -46,7 +46,7 @@
uid = [request formValueForKey: @"uid"];
if ([uid length] > 0)
{
um = [AgenorUserManager sharedUserManager];
um = [LDAPUserManager sharedUserManager];
email = [um getEmailForUID: uid];
if ([email length] > 0)
{

View File

@ -23,7 +23,7 @@
#import <NGObjWeb/NSException+HTTP.h>
#import <NGObjWeb/WOResponse.h>
#import <NGObjWeb/WORequest.h>
#import <SoObjects/SOGo/AgenorUserManager.h>
#import <SoObjects/SOGo/LDAPUserManager.h>
#import "UIxUserRightsEditor.h"
@ -54,9 +54,9 @@
- (NSString *) userDisplayName
{
AgenorUserManager *um;
LDAPUserManager *um;
um = [AgenorUserManager sharedUserManager];
um = [LDAPUserManager sharedUserManager];
return [NSString stringWithFormat: @"%@ <%@>",
[um getCNForUID: uid],
@ -67,7 +67,7 @@
{
BOOL response;
NSString *newUID, *email;
AgenorUserManager *um;
LDAPUserManager *um;
SOGoObject *clientObject;
response = NO;
@ -75,7 +75,7 @@
newUID = [[context request] formValueForKey: @"uid"];
if ([newUID length] > 0)
{
um = [AgenorUserManager sharedUserManager];
um = [LDAPUserManager sharedUserManager];
email = [um getEmailForUID: newUID];
if ([email length] > 0)
{

View File

@ -28,7 +28,6 @@
#import <NGCards/iCalEvent.h>
#import <NGCards/iCalPerson.h>
#import <SoObjects/SOGo/AgenorUserManager.h>
#import <SoObjects/SOGo/SOGoUser.h>
#import <SoObjects/SOGo/SOGoContentObject.h>
#import <SoObjects/Appointments/SOGoAppointmentFolder.h>

View File

@ -22,9 +22,10 @@
#import "UIxAppointmentView.h"
#import <NGCards/NGCards.h>
#import <SOGo/WOContext+Agenor.h>
#import <SOGo/SOGoUser.h>
#import <Appointments/SOGoAppointmentObject.h>
#import <SOGoUI/SOGoDateFormatter.h>
#import "UIxComponent+Agenor.h"
#import "UIxComponent+Scheduler.h"
#import "common.h"
@interface UIxAppointmentView (PrivateAPI)
@ -62,7 +63,7 @@
- (BOOL)isAttendeeActiveUser {
NSString *email, *attEmail;
email = [[[self context] activeUser] email];
email = [[[self context] activeUser] primaryEmail];
attendee = [self attendee];
attEmail = [attendee rfc822Email];
@ -219,7 +220,7 @@
NSString *email;
iCalPerson *organizer;
email = [[[self context] activeUser] email];
email = [[[self context] activeUser] primaryEmail];
organizer = [[self appointment] organizer];
if (!organizer) return YES; // assume this is correct to do, right?
return [[organizer rfc822Email] isEqualToString:email];
@ -237,7 +238,7 @@
return YES;
/* can access it if I'm invited :-) */
email = [[[self context] activeUser] email];
email = [[[self context] activeUser] primaryEmail];
partMails = [[[self appointment] participants] valueForKey:@"rfc822Email"];
return [partMails containsObject:email];
}

View File

@ -9,7 +9,7 @@
#import <NGCards/NGCards.h>
#import <SOGoUI/SOGoAptFormatter.h>
#import "UIxComponent+Agenor.h"
#import "UIxComponent+Scheduler.h"
#import "SoObjects/Appointments/SOGoAppointmentFolder.h"
#import <SOGo/NSArray+Utilities.h>
@ -113,7 +113,7 @@ static BOOL shouldDisplayWeekend = NO;
{
count = [_apts count];
filtered = [[[NSMutableArray alloc] initWithCapacity: count] autorelease];
email = [self emailForUser];
email = [[context activeUser] primaryEmail];
for (i = 0; i < count; i++)
{

View File

@ -28,7 +28,6 @@
#import <NGExtensions/NGExtensions.h>
#import <NGCards/iCalPerson.h>
#import <SOGo/AgenorUserManager.h>
#import <SOGo/SOGoUser.h>
#import <SOGoUI/UIxComponent.h>
#import <Appointments/SOGoAppointmentFolder.h>

View File

@ -28,7 +28,6 @@
#import <NGCards/iCalToDo.h>
#import <NGCards/iCalPerson.h>
#import <SoObjects/SOGo/AgenorUserManager.h>
#import <SoObjects/SOGo/SOGoUser.h>
#import <SoObjects/SOGo/SOGoContentObject.h>
#import <SoObjects/Appointments/SOGoAppointmentFolder.h>

View File

@ -24,7 +24,7 @@
#import <SOGo/WOContext+Agenor.h>
#import <Appointments/SOGoTaskObject.h>
#import <SOGoUI/SOGoDateFormatter.h>
#import "UIxComponent+Agenor.h"
#import "UIxComponent+Scheduler.h"
#import "common.h"
@interface UIxTaskView (PrivateAPI)
@ -62,7 +62,7 @@
- (BOOL)isAttendeeActiveUser {
NSString *email, *attEmail;
email = [[[self context] activeUser] email];
email = [[[self context] activeUser] primaryEmail];
attendee = [self attendee];
attEmail = [attendee rfc822Email];
@ -221,7 +221,7 @@
NSString *email;
iCalPerson *organizer;
email = [[[self context] activeUser] email];
email = [[[self context] activeUser] primaryEmail];
organizer = [[self task] organizer];
if (!organizer) return YES; // assume this is correct to do, right?
return [[organizer rfc822Email] isEqualToString:email];
@ -239,9 +239,9 @@
return YES;
/* can access it if I'm invited :-) */
email = [[[self context] activeUser] email];
email = [[[self context] activeUser] primaryEmail];
partMails = [[[self task] participants] valueForKey:@"rfc822Email"];
return [partMails containsObject:email];
return [partMails containsObject: email];
}
- (BOOL)canEditApt {