/* Copyright (C) 2003-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 "NSObject+SoRSSObject.h" #include #include "common.h" @implementation NSObject(SoRSSObject) - (NSString *)rssChannelTitleInContext:(WOContext *)_ctx { NSString *s; // TODO: should ask channel for title s = @"Items of OGo Channel '"; s = [s stringByAppendingString:[self nameInContainer]]; s = [s stringByAppendingString:@"'"]; return s; } - (NSString *)rssTitleInContext:(WOContext *)_ctx { return [self davDisplayName]; } - (NSString *)rssDescriptionInContext:(WOContext *)_ctx { return [self valueForKey:@"contentAsString"]; } - (NSString *)rssLinkInContext:(WOContext *)_ctx { // TODO: the link is displayed in Thunderbird. There are multiple options // for RSS links: // a) generate a specific RSS view (current approach) // b) NSString *url; SoClass *clazz; url = [self baseURLInContext:_ctx]; clazz = [self soClass]; if ([clazz hasKey:@"rssView" inContext:_ctx]) url = [url stringByAppendingString:@"/rssView"]; else if ([clazz hasKey:@"asBrHTML" inContext:_ctx]) url = [url stringByAppendingString:@"/asBrHTML"]; else if ([clazz hasKey:@"view" inContext:_ctx]) url = [url stringByAppendingString:@"/view"]; return url; } - (NSEnumerator *)rssChildKeysInContext:(WOContext *)_ctx { return [self davChildKeysInContext:_ctx]; } @end /* NSObject(SoRSSObject) */