/* Copyright (C) 2006-2021 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG This file is part of SOGo. SOGo 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. SOGo 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 SOGo; see the file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #import #import #import #import #import #import #import #import #import #import #import #import #import #import #import #import #import #if defined(SAML2_CONFIG) #import #endif /* SAML2_ENABLE */ #import #import #import #import #import #import #import #import #import #import #if defined(MFA_CONFIG) #include #endif #import "SOGoRootPage.h" static const NSString *kJwtKey = @"jwt"; @implementation SOGoRootPage - (id) init { if ((self = [super init])) { cookieLogin = nil; } return self; } - (void) dealloc { [cookieLogin release]; [super dealloc]; } /* accessors */ - (NSString *) modulePath { return @""; } //- (NSString *) connectURL //{ // return [NSString stringWithFormat: @"%@/connect", [self applicationPath]]; //} - (NSString *) cookieUsername { NSString *value; if (cookieLogin == nil) { value = [[context request] cookieValueForKey: @"SOGoLogin"]; cookieLogin = [value isNotNull]? [value stringByDecodingBase64] : @""; [cookieLogin retain]; } return cookieLogin; } /* JavaScript string literal of the cookie username, safe to write inside a