Nasko, thanks very much for that detailed example ;-) On 6/26/07, Nasko <[EMAIL PROTECTED]> wrote: > > > I'm using othAuth in my current project. The way it worked for me - I > don't have this special route specified: > $Route->connect('/admin', array('controller' => 'users', 'action' > =>'login')); > > Instead, I have my '/admin' url pointing to one of my CMS sections: > ### routes.php > $Route->connect('/admin', array('controller' => 'texts', 'action' > => 'index', 'admin' => 1)); > > Note that last parameter passed: 'admin' => 1. This is the way to > specify in your routes that an action should use admin routes. This is > a fully valid reason why your route wouldn't work by the way. You have > admin_login() action and you haven't specified that it should use > admin routes in your routes file. > > Anyways, I wouldn't recommend hard-coding this with a route, use a > noaccess redirect by means of oth_auth mechanisms instead: > > If you set the othAuth settings properly you'd get redirected to / > admin/users/login if you try to access a page that needs specific > permissions. In my case: > > ### components/oth_auth.php: > > // these get overwritten in beforeFilter() - read on. > var $login_page = '/users/login'; > var $noaccess_page = "/users/login"; > > // I've also set a 7-day cookie so that I don't have to login every > time the session expires. I'll revise the cookie lifetime when i'm > ready for production > var $cookie_active = true; > var $cookie_lifetime = '+7 day'; > > ### helpers/oth_auth.php > var $othAuthRestrictions = array(CAKE_ADMIN); > > function beforeFilter() { > $auth_conf = array( > 'mode' => 'oth', > 'auto_redirect' => true, > 'login_page' => '/admin/users/login', > 'logout_page' => '/admin/users/logout', > 'access_page' => '/admin/texts/index', > 'hashkey' => 'aphrazeofyourchoice', > 'noaccess_page' => '/admin/users/noaccess', > 'strict_gid_check' => false, > ); > > This way, if someone tries: http://mydomain.com/admin/ and is not > currently identified as a user with the corresponding permissions they > would be redirected to /admin/users/login per-othAuth settings. > > If the user has been identified (remember that long cookie lifetime?) > they would be redirected to /admin/texts/index instead per my '/admin' > route above. > > HTH, > Nasko > > On Jun 26, 1:54 pm, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> > wrote: > > I've got the following code in routes.php: > > > > $Route->connect('/admin', array('controller' => 'users', 'action' => > > 'login')); > > $Route->connect('/', array('controller' => 'pages', 'action' => > > 'display', 'home')); > > $Route->connect('/pages/*', array('controller' => 'pages', 'action' => > > 'display')); > > $Route->connect('/tests', array('controller' => 'tests', 'action' => > > 'index')); > > > > I'm using the OthAuth-component. > > And the default admin routing CAKE_ADMIN is turned on, in core.php. > > > > Due to the default admin routing the login method is called > > admin_login. > > > > I would love to use the following link so an admin gets redirected to / > > admin/users/login > > <mysite>/admin > > > > When using the link above I get the following message. > > "Missing Method in UsersController" > > > > Anybody? > > > > >
--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Cake PHP" group. To post to this group, send email to cake-php@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cake-php?hl=en -~----------~----~----~----~------~----~------~--~---