diff --git a/ChangeLog b/ChangeLog index 6aa8d0357..deffc70bb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2010-12-23 Ludovic Marcotte + + * Added the /SOGo/so//Calendar/reloadWebCalendarsAndRedirect + action which is particularly useful for WebAuth users + 2010-12-17 Wolfgang Sourdeau * OpenChange/MAPIStore*Context.m: added handling of a few more diff --git a/UI/MainUI/SOGoUserHomePage.m b/UI/MainUI/SOGoUserHomePage.m index 27f83d2b1..1c2950a5e 100644 --- a/UI/MainUI/SOGoUserHomePage.m +++ b/UI/MainUI/SOGoUserHomePage.m @@ -1,6 +1,6 @@ /* SOGoUserHomePage.m - this file is part of SOGo * - * Copyright (C) 2007-2009 Inverse inc. + * Copyright (C) 2007-2010 Inverse inc. * * Author: Wolfgang Sourdeau * diff --git a/UI/Scheduler/UIxCalMainActions.m b/UI/Scheduler/UIxCalMainActions.m index 216db791c..0312ac579 100644 --- a/UI/Scheduler/UIxCalMainActions.m +++ b/UI/Scheduler/UIxCalMainActions.m @@ -107,4 +107,21 @@ return [self responseWith204]; } +// +// The method below is different than the -reloadWebCalendarsAction as it +// won't force the reload of all calendars and automatically redirect the +// user to the /SOGo/so page upon completion. +// +// This is particularly useful for WebAuth users and they won't have a +// precise "entry point" in SOGo - so calendars reload upon login +// isn't possible for them. +// +- (WOResponse *) reloadWebCalendarsAndRedirectAction +{ + [[self clientObject] reloadWebCalendars: NO]; + + return [self redirectToLocation: @"/SOGo/so"]; +} + + @end diff --git a/UI/Scheduler/product.plist b/UI/Scheduler/product.plist index 266f4cd4f..11cabb44e 100644 --- a/UI/Scheduler/product.plist +++ b/UI/Scheduler/product.plist @@ -50,6 +50,11 @@ actionClass = "UIxCalMainActions"; actionName = "reloadWebCalendars"; }; + reloadWebCalendarsAndRedirect = { + protectedBy = "View"; + actionClass = "UIxCalMainActions"; + actionName = "reloadWebCalendarsAndRedirect"; + }; saveDragHandleState = { protectedBy = "View"; pageName = "UIxCalMainView";