Uma situação bem inusitada que pode ocorrer durante o desenvolvimento de uma aplicação é precisar atrelar o seu sistema de login à uma página externa à aplicação.
Vou mostrar como pode-se fazer isso usando CakePHP.
No CakePHP nós temos o conceito de herança aplicado aos controllers. Neste caso, nosso controller de usuários herda da app_controller métodos e atributos. Quando se tem o sistema de login em CakePHP, deve-se habilitar o componente Auth. Vamos também fazer umas modificações em nosso método AppController::before_filter(). No final teremos algo como isso.
<?php
class AppController extends Controller {
var $components = array('Auth');
function beforeFilter(){
$this->Auth->userModel = 'Usuario'; # mudamos o padrao de User para Usuario
}
}
?>
Agora nosso arquivo usuarios_controller.php. Ele deve ter os métodos login() e logout() para funcionar corretamente com o components Auth. Neste caso, devemos apenas implementar algumas pequenas mudanças no método login() como mostrado abaixo:
<?php
class UsuariosController extends AppController {
var $name = 'Usuarios';
function login() {
$this->redirect('http://www.outro.dominio.com.br/pagina.html');
}
function logout() {
$this->redirect($this->Auth->logout());
}
}
?>
Por isso é hoje. Essa dica é muito quando sua aplicação fica em outra parte do domínio que vai passar o formulário de login.
Se você gostou do post, não se esqueça de inscrever-se no feed RSS.