This is my controller.

<?php
class AdministratorsController extends AppController {
        var $name = 'Administrators';
        var $helpers = array('Html', 'Form');

        /*
        FUNCAO "CONSTRUCT"
        */
        function index() {
                // se o usuario ja estiver logado
                if( $this->Session->check('Administrator') ) {
                        // redireciona para a area restrita
                        $this-
>redirect(array('controller'=>'administrators','action'=>'admin_index','admin'=>true));
                }
                // redireciona para a pagina de login
                else $this-
>redirect(array('controller'=>'administrators','action'=>'admin_login','admin'=>true));
        }

        /*
        FUNCAO QUE CONTROLA A ACAO LISTAR
        */
        function listar() {
        // se o usuario ja estiver logado
                if( $this->Session->check('Administrator') ) {
                        // redireciona para a area restrita
                        $this-
>redirect(array('controller'=>'administrators','action'=>'admin_list','admin'=>true));
                }
                // redireciona para a pagina de login
                else $this-
>redirect(array('controller'=>'administrators','action'=>'admin_login','admin'=>true));
        }

        /*
        FUNCAO QUE CONTROLA A ACAO EDITAR
        */
        function edit($id) {
        // se o usuario ja estiver logado
                if( $this->Session->check('Administrator') ) {
                        // recebe o id do admin a ser editado
                        $this->set('update', $id);
                        // redireciona para a area restrita
                        
$this->redirect(array('controller'=>'administrators','action' =>
'admin_edit','admin'=>true));
                        //$this->redirect(array('action' => 'admin_edit',
$id),'admin'=>true);
                }
                // redireciona para a pagina de login
                else $this-
>redirect(array('controller'=>'administrators','action'=>'admin_login','admin'=>true));
        }

        /*
        FUNCAO RESPONSAVEL PELA EXIBICAO DAS ACOES DOS ADMINISTRADORES
        */
        function admin_index() {
                // se o usuario ja estiver logado
                if($this->Session->check('Administrator')) {
                        $this->set('administrators', $this->Session-
>read('Administrator'));
                }
                // redireciona para a paginda de login
                else $this-
>redirect(array('controller'=>'administrators','action'=>'admin_index','admin'=>true));
        }

        /*
        FUNCAO RESPONSAVEL PELO LOGIN DO ADMINISTRADOR
        */
        function admin_login() {
                // se o usuario ja estiver logado
                if( $this->Session->check('Administrator') ) {
                        // redireciona para a area restrita
                        $this-
>redirect(array('controller'=>'administrators','action'=>'admin_index','admin'=>true));
                }

                //criptografia da senha
                //$salt = Configure::read('Security.salt');
                //echo md5('qwer1234'.$salt);

                // se o formulario de login tiver sido preenchido
                if(!empty($this->data)) {
                        // envia os dados para o model
                        $this->Administrator->set($this->data);
                        // se o formulario passar pelas regras de validacao
                        if($this->Administrator->validates(array('fieldList' =>
array('login', 'password')))) {
                                // checa a existencia do usuario
                                $result = 
$this->Administrator->check_administrator_data($this-
>data);

                                if( $result !== FALSE ) {
                                        // atualiza o horario do ultimo login
                                        $this->Administrator->id = 
$result['Administrator']['id'];
                                        
$this->Administrator->saveField('last_login',date("Y-m-d
H:i:s"));
                                        // salva na sessao
                                        
$this->Session->write('Administrator',$result);
                                        $this->Session->setFlash('<br />Login 
efetuado com sucesso!<br /
><br />', 'default', array('class' => 'example_class', 'message'));
                                        
$this->redirect(array('controller'=>'administrators',
array('action' => 'index'),'admin'=>true));
                                }
                                else $this->Session->setFlash('<br />Falha ao 
autenticar o
usuario. Por favor tente novamente!<br /><br />', 'default',
array('class' => 'example_class', 'error'));
                        }
                        else $this->Session->setFlash('<br />Falha ao validar o 
login e o
password. Por favor tente novamente!<br /><br />', 'default',
array('class' => 'example_class', 'error'));
                }
        }

        /*
        FUNCAO RESPONSAVEL PELO LOGOUT DO ADMINISTRADOR
        */
        function admin_logoff() {
                if($this->Session->check('Administrator')) {
                        $this->Session->delete('Administrator');
                        $this->Session->setFlash('<br />Logoff efetuado com 
sucesso!<br /
><br />', 'default', array('class' => 'example_class', 'message'));
                }
                $this->redirect(array('action'=>'login'));
        }

        /*
        FUNCAO RESPONSAVEL PELA EXIBICAO DOS ADMINISTRADORES
        */
        function admin_list() {
                // se o usuario ja estiver logado
                if( $this->Session->check('Administrator') ) {
                        // redireciona para a area restrita
                        $this->set('administrators', 
$this->Administrator->find('all'));
                }
                // redireciona para a pagina de login
                else $this-
>redirect(array('controller'=>'administrators','action'=>'admin_login','admin'=>true));
        }

        /*
        FUNCAO RESPONSAVEL PELA ALTERACAO DE DADOS DO ADMINISTRADOR
        */
        function admin_edit($data) {
                // se o formulario tiver sido preenchido
                if (!empty($this->data)) {
                        // faz o tratamento dos dados para o upddate
                }
                // envia os dados para o formulario
                else echo $this->update;
        }

}// fim da classe
?>

Check out the new CakePHP Questions site http://cakeqs.org and help others with 
their CakePHP related questions.

You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To post to this group, send email to [email protected]
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

Reply via email to