Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

General Questions

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Redirect to a page after login


Reply

5 Posts   4885 Views

Avatar
Sec

2 April 2009 at 9:43pm Community Member, 13 Posts

How can I redirect to a specific page after login? I use $LoginForm on the frontpage, and want the users to end up at /account after successful login.

Avatar
Carbon Crayon

8 April 2009 at 2:09am (Last edited: 8 April 2009 2:09am), Community Member, 598 Posts

Hi Sec

I have just poste a tutorial on SSbits to do just this :)

http://www.ssbits.com/custom-login-form-with-group-based-redirection/

hope it helps

Aram

Avatar
Howard

8 April 2009 at 1:09pm Community Member, 215 Posts

Hi Aram,

SSbits.com looks great :) added it to my Google Reader.

One question, how could we extend this to redirect to a specific page in the admin ie. test.com/admin/show/5 based on the security group?

Thanks,
Howard

Avatar
Carbon Crayon

14 April 2009 at 1:17am (Last edited: 14 April 2009 1:17am), Community Member, 598 Posts

Hi Howard

Sorry for the late reply, I forget to subscribe to this thread and just came accross it again!

The way to do this is to have the link be /admin/show/$ID of the page you want to redirect to. So I image you extract the Id from the TreeDropdownField and insert it into the redirector so change these lines:

$Link = DataObject::get_by_id("SiteTree", "{$Group->LinkPageID}")->URLSegment;

to this:

$ID = DataObject::get_by_id("SiteTree", "{$Group->LinkPageID}")->ID;

Abd this line:

Director::redirect(Director::baseURL() . $Link);

to this:

Director::redirect(Director::baseURL() . "admin/show/" . $ID);

That should work :)

Aram

Avatar
styleboy

23 April 2009 at 9:27am (Last edited: 23 April 2009 9:32am), Community Member, 1 Post

I've used the code as ssbits but for some reason I can't get users to redirect. After login it says "I'm sorry, but you can't access that part of the CMS. If you want to log in as someone else, do so below"

I have setup the page using $LoginForm

Also, after I login on this page and I get that message, if I try to goto the page where this user is ABLE to access, it makes me login again @ /Security/login

then if I go directly to /Security/login, it will log in and say welcome back, user. you are logged in as user. and there will be no redirect.