]> err.no Git - sope/blob - sopex/SOPEX/NSBundle+Ext.m
fixed some NGMail framework build issue
[sope] / sopex / SOPEX / NSBundle+Ext.m
1 /*
2  Copyright (C) 2004-2005 Marcus Mueller <znek@mulle-kybernetik.com>
3
4  This file is part of OGo
5
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
9  later version.
10
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.
15
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
19  02111-1307, USA.
20  */
21 //  Created by znek on Sun May 02 2004.
22
23
24 #import "NSBundle+Ext.h"
25
26
27 @implementation NSBundle (SOPEXExt)
28
29 - (NSString *)pathForResourceWithURLPath:(NSString *)_urlPath
30 {
31     static NSFileManager *fm = nil;
32     NSRange r;
33     NSString *resourcePath;
34
35     if(fm == nil)
36         fm = [[NSFileManager defaultManager] retain];
37
38     // need to strip /Appname/WebServerResources/ first
39     r = [_urlPath rangeOfString:@"WebServerResources"];
40     if(r.location != NSNotFound)
41         _urlPath = [_urlPath substringFromIndex:r.location + r.length];
42
43     resourcePath = [[self bundlePath] stringByAppendingPathComponent:_urlPath];
44     if([fm fileExistsAtPath:resourcePath])
45         return resourcePath;
46
47     _urlPath = [_urlPath lastPathComponent];
48     return [self pathForResource:[_urlPath stringByDeletingPathExtension]
49                           ofType:[_urlPath pathExtension]];
50 }
51
52 @end