Monotone-Parent: 1960a36a480c2b580275d8352c65f53c16c80b5a

Monotone-Revision: 6d9605bebc980669f2328d07205d430fc4478d79

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2007-11-07T15:59:01
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Wolfgang Sourdeau 2007-11-07 15:59:01 +00:00
parent b83e708b70
commit 46d9a1d645
11 changed files with 56 additions and 28 deletions

View File

@ -1,3 +1,22 @@
2007-11-07 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/SOGo/SOGoParentFolder.m: no longer a subclass of
SOGoObject, but of SOGoFolder instead.
* SoObjects/SOGo/SOGoUserFolder.m: no longer a subclass of
SOGoGCSFolder, but of SOGoFolder instead.
* SoObjects/Appointments/SOGoAppointmentFolder.m
([SOGoAppointmentFolder -lookupCalendarFolderForUID:uid]): fixed
to take the new SOGoParentFolder class into account. Also, create
the personal folder if it doesn't exist.
* SoObjects/SOGo/SOGoFolder.[hm]: new class module implementing
the parent of all SOGo containers.
* SoObjects/SOGo/SOGoGCSFolder.[hm]: SOGoFolder class renamed to
SOGoGCSFolder.
2007-11-06 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* UI/MailerUI/UIxMailToSelection.m ([UIxMailToSelection

View File

@ -36,7 +36,7 @@
create two different vevent-files with the same uid in the store.
*/
#import "SOGo/SOGoFolder.h"
#import "SOGo/SOGoGCSFolder.h"
@class NSArray;
@class NSCalendarDate;
@ -47,7 +47,7 @@
@class GCSFolder;
#import <NGCards/iCalEntityObject.h>
@interface SOGoAppointmentFolder : SOGoFolder
@interface SOGoAppointmentFolder : SOGoGCSFolder
{
NSTimeZone *timeZone;
NSMutableDictionary *uidToFilename;

View File

@ -24,7 +24,7 @@
#ifndef __Appointments_SOGoFreeBusyObject_H_
#define __Appointments_SOGoFreeBusyObject_H_
#include <SOGo/SOGoContentObject.h>
#include <SOGo/SOGoObject.h>
/*
SOGoFreeBusyObject
@ -34,7 +34,7 @@
@class NSArray, NSCalendarDate;
@interface SOGoFreeBusyObject : SOGoContentObject
@interface SOGoFreeBusyObject : SOGoObject
{
}

View File

@ -20,17 +20,18 @@
* Boston, MA 02111-1307, USA.
*/
#import "SOGoContactFolder.h"
#import "SOGoContactGCSEntry.h"
#import <DOM/DOMProtocols.h>
#import <Foundation/NSArray.h>
#import <NGExtensions/NSString+misc.h>
#import <SaxObjC/SaxObjC.h>
#import <SaxObjC/XMLNamespaces.h>
#import <NGObjWeb/WOContext.h>
#import <NGObjWeb/WORequest.h>
#import <NGObjWeb/WOResponse.h>
#import <NGExtensions/NSString+misc.h>
#import <DOM/DOMProtocols.h>
#import <SaxObjC/SaxObjC.h>
#import <SaxObjC/XMLNamespaces.h>
#import "SOGoContactFolder.h"
#import "SOGoContactGCSEntry.h"
@implementation NSObject (CardDAV)
@ -42,7 +43,7 @@
NSDictionary *currentFilter, *contact;
NSEnumerator *contacts;
NSString *baseURL;
id<SOGoContactFolder> o;
SOGoObject <SOGoContactFolder> *o;
o = (id<SOGoContactFolder>)self;
baseURL = [o baseURLInContext: context];

View File

@ -43,8 +43,6 @@
@class WOContext;
@implementation SOGoContactLDAPFolder
- (void) appendObject: (NSDictionary *) object
@ -59,7 +57,8 @@
componentClass = [SOGoContactLDIFEntry class];
component = [componentClass contactEntryWithName: name withLDIFEntry: object inContainer: self];
component = [componentClass contactEntryWithName: name
withLDIFEntry: object inContainer: self];
[r appendContentString: @" <D:response>\r\n"];
[r appendContentString: @" <D:href>"];

View File

@ -479,14 +479,16 @@ static NSString *otherUsersFolderName = @""; // TODO: add English default
s = [self nameInContainer];
r = [s rangeOfString:@"@"];
if (r.length > 0) {
login = [s substringToIndex:r.location];
host = [s substringFromIndex:(r.location + r.length)];
}
else {
login = nil;
host = s;
}
if (r.length > 0)
{
login = [s substringToIndex:r.location];
host = [s substringFromIndex:(r.location + r.length)];
}
else
{
login = nil;
host = s;
}
r = [host rangeOfString:@"."];
if (r.length > 0)

View File

@ -29,7 +29,7 @@
#import <NGExtensions/NSObject+Logs.h>
#import <GDLContentStore/GCSFolder.h>
#import "SOGoFolder.h"
#import "SOGoGCSFolder.h"
#import "SOGoUser.h"
#import "SOGoPermissions.h"
#import "SOGoContentObject.h"

View File

@ -1017,4 +1017,11 @@ static BOOL kontactGroupDAV = YES;
return ms;
}
- (NSString *) loggingPrefix
{
return [NSString stringWithFormat:@"<0x%08X[%@]:%@>",
self, NSStringFromClass([self class]),
[self nameInContainer]];
}
@end /* SOGoObject */

View File

@ -31,11 +31,11 @@
@class NSMutableDictionary;
@class LDAPUserManager;
@class SOGoFolder;
@class SOGoGCSFolder;
@interface UIxFolderActions : WODirectAction
{
SOGoFolder *clientObject;
SOGoGCSFolder *clientObject;
LDAPUserManager *um;
NSUserDefaults *ud;
NSString *owner;

View File

@ -581,7 +581,7 @@
Update: remember that there are group folders as well.
*/
NSString *uri, *objectId, *nextMethod;
id <SOGoContactFolder> co;
SOGoObject <SOGoContactFolder> *co;
co = [self clientObject];
if ([co respondsToSelector: @selector (globallyUniqueObjectId)])

View File

@ -49,7 +49,7 @@
};
};
SOGoParentFolder = {
superclass = "SOGoObject";
superclass = "SOGoFolder";
protectedBy = "Access Contents Information";
defaultRoles = {
"Access Contents Information" = ( "Authenticated" );