mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-08-19 13:43:22 +00:00
Fix for feature #3079
Monotone-Parent: 1de4349e78aa0e2e7b5b5f1107576ae89d90f64e Monotone-Revision: 56b6e4ca9c570a4e36d00e32127d539e82da7293 Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2008-11-05T17:26:02 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
@@ -38,6 +38,8 @@
|
||||
|
||||
#import "SOGoRootPage.h"
|
||||
|
||||
static NSArray *supportedLanguages = nil;
|
||||
|
||||
@interface SOGoRootPage (crashAdditions)
|
||||
|
||||
- (void) segfault;
|
||||
@@ -46,6 +48,12 @@
|
||||
|
||||
@implementation SOGoRootPage
|
||||
|
||||
+ (void) initialize
|
||||
{
|
||||
if (!supportedLanguages)
|
||||
supportedLanguages = [NSArray arrayWithObjects: @"English", @"French", @"German", @"Italian", @"Spanish", nil];
|
||||
}
|
||||
|
||||
/* accessors */
|
||||
|
||||
- (NSString *) connectURL
|
||||
@@ -60,14 +68,16 @@
|
||||
WORequest *request;
|
||||
WOCookie *authCookie;
|
||||
SOGoWebAuthenticator *auth;
|
||||
SOGoUser *user;
|
||||
NSString *cookieValue, *cookieString;
|
||||
NSString *userName, *password;
|
||||
NSString *userName, *password, *language;
|
||||
|
||||
auth = [[WOApplication application]
|
||||
authenticatorInContext: context];
|
||||
request = [context request];
|
||||
userName = [request formValueForKey: @"userName"];
|
||||
password = [request formValueForKey: @"password"];
|
||||
language = [request formValueForKey: @"language"];
|
||||
if ([auth checkLogin: userName password: password])
|
||||
{
|
||||
[self logWithFormat: @"successful login for user '%@'", userName];
|
||||
@@ -80,6 +90,13 @@
|
||||
value: cookieValue];
|
||||
[authCookie setPath: @"/"];
|
||||
[response addCookie: authCookie];
|
||||
|
||||
if (language)
|
||||
{
|
||||
user = [SOGoUser userWithLogin: userName roles: nil];
|
||||
[[user userDefaults] setObject: language forKey: @"Language"];
|
||||
[[user userDefaults] synchronize];
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -151,4 +168,34 @@
|
||||
return ([[self loginSuffix] length]);
|
||||
}
|
||||
|
||||
- (void) setItem: (id) _item
|
||||
{
|
||||
ASSIGN (item, _item);
|
||||
}
|
||||
|
||||
- (id) item
|
||||
{
|
||||
return item;
|
||||
}
|
||||
|
||||
- (NSArray *) languages
|
||||
{
|
||||
return supportedLanguages;
|
||||
}
|
||||
|
||||
- (NSString *) language
|
||||
{
|
||||
return [SOGoUser language];
|
||||
}
|
||||
|
||||
- (NSString *) languageText
|
||||
{
|
||||
NSString *text;
|
||||
|
||||
text = [self labelForKey: item];
|
||||
|
||||
return text;
|
||||
}
|
||||
|
||||
|
||||
@end /* SOGoRootPage */
|
||||
|
||||
Reference in New Issue
Block a user