Opa ..

Eu tenho um Controller_Restrito_Template que verifica se esta logado .. ai
nas partes restritas .. basta extender.

Eu faria um ajax semelhante, mas verificaria a ultima pagina acessada .. ou
uma especifica para "contar" usuarios online. Isso nos controllers
restritos ja que todos os meus sistemas sao de acesso restrito.
Em 06/07/2012 11:48, "Waldson Patricio" <[email protected]>
escreveu:

> Se o tempo da sessão for maior que 60000 sua sessão nunca irá expirar
> (Session::instance() renova a sessão).
> Seu tempo tem que ser maior que o lifetime da sessão e você também precisa
> saber se o cara estava logado antes
> (se eu acessar diretamente vai redirecionar e mostrar a mensagem que eu
> estava logado)
>
>
> 2012/7/6 Douglas J.A.M <[email protected]>
>
>> Vlw galera fiz uma solução legalzinha, obrigado a todos
>>
>>
>>  protected function expirou() {
>>         if (Session::instance()->get('usuario') == NULL) {
>>             Helper_NOTIFICACAO::addNotificacao('info', 'Sua sessão
>> expirou por inatividade!');
>>             $retorno = true;
>>         } else {
>>             $retorno = false;
>>         }
>>
>>         $jsonEncoded = json_encode($retorno);
>>          $this->request->headers('Content-type', 'application/json;
>> charset=' . Kohana::$charset);
>>         $this->response->body($jsonEncoded);
>>     }
>>
>> //js on reayd
>> setInterval(function(){expirouSessao()}, 60000);
>>
>> // funcao js
>>
>> function expirouSessao() {
>>
>>     var retorno = false;
>>     $.ajax({
>>         type: "POST",
>>         url: '/ajax.php?action=expirou',
>>         data: {},
>>         dataType: "json",
>>         success: function(data) {
>>             if(data){
>>                 retorno = true;
>>             }
>>         },
>>         complete: function(){
>>             if(!retorno){
>>                 console.log('não expirou...')
>>             } else {
>>                 console.log('expirou...')
>>             }
>>         }
>>     });
>>
>>
>>
>>
>>
>> Em quarta-feira, 4 de julho de 2012 21h45min19s UTC-3, felipebastosweb
>> escreveu:
>>
>>> Pow cara .. nunca me liguei nisso ..
>>>
>>> Eu simplesmente verifico o usuario no banco e salvo a sessao.
>>>
>>> Depois, simplesmente confiro que a sessao existe.
>>>
>>> Se a sessao nao existir mais, redireciono pra pagina de login e informo
>>> que a sessao expirou por inatividade.
>>>
>>> Tem a funcao de login e a de logado.
>>>
>>> Esta tao transparente .. q nem sei o que rola por tras :)
>>>
>>> code.google.com/p/phpscrum/**source/trunk/application/**
>>> controller/auth.php<http://code.google.com/p/phpscrum/source/trunk/application/controller/auth.php>
>>>
>>> Acho que o link é esse ... o codigo ta super simples.
>>> Em 04/07/2012 21:32, "Douglas J.A.M" <[email protected]> escreveu:
>>>
>>>> Alguém aí sabe alguma maneira fácil de implementar isso? Onde quando o
>>>> lifetime da sessão expirar, e ela for destruida, exibir uma mensagem para o
>>>> usuário quando ele atualizar a página informando que por inatividade foi
>>>> deslogado, sei que existem maneiras, mas as que conheço são meio
>>>> complicadas de se implementar, como o intercambio de cookie + session, ou
>>>> session + db...
>>>>
>>>> --
>>>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
>>>> Php" dos Grupos do Google.
>>>> Para postar neste grupo, envie um e-mail para
>>>> [email protected].
>>>> Para cancelar a inscrição nesse grupo, envie um e-mail para
>>>> kohana-php+unsubscribe@**googlegroups.com<kohana-php%[email protected]>
>>>> .
>>>> Para obter mais opções, visite esse grupo em http://groups.google.com/*
>>>> *group/kohana-php?hl=pt-BR<http://groups.google.com/group/kohana-php?hl=pt-BR>
>>>> .
>>>>
>>>
>> Em quarta-feira, 4 de julho de 2012 21h45min19s UTC-3, felipebastosweb
>> escreveu:
>>
>>> Pow cara .. nunca me liguei nisso ..
>>>
>>> Eu simplesmente verifico o usuario no banco e salvo a sessao.
>>>
>>> Depois, simplesmente confiro que a sessao existe.
>>>
>>> Se a sessao nao existir mais, redireciono pra pagina de login e informo
>>> que a sessao expirou por inatividade.
>>>
>>> Tem a funcao de login e a de logado.
>>>
>>> Esta tao transparente .. q nem sei o que rola por tras :)
>>>
>>> code.google.com/p/phpscrum/**source/trunk/application/**
>>> controller/auth.php<http://code.google.com/p/phpscrum/source/trunk/application/controller/auth.php>
>>>
>>> Acho que o link é esse ... o codigo ta super simples.
>>> Em 04/07/2012 21:32, "Douglas J.A.M" <[email protected]> escreveu:
>>>
>>>> Alguém aí sabe alguma maneira fácil de implementar isso? Onde quando o
>>>> lifetime da sessão expirar, e ela for destruida, exibir uma mensagem para o
>>>> usuário quando ele atualizar a página informando que por inatividade foi
>>>> deslogado, sei que existem maneiras, mas as que conheço são meio
>>>> complicadas de se implementar, como o intercambio de cookie + session, ou
>>>> session + db...
>>>>
>>>> --
>>>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
>>>> Php" dos Grupos do Google.
>>>> Para postar neste grupo, envie um e-mail para
>>>> [email protected].
>>>> Para cancelar a inscrição nesse grupo, envie um e-mail para
>>>> kohana-php+unsubscribe@**googlegroups.com<kohana-php%[email protected]>
>>>> .
>>>> Para obter mais opções, visite esse grupo em http://groups.google.com/*
>>>> *group/kohana-php?hl=pt-BR<http://groups.google.com/group/kohana-php?hl=pt-BR>
>>>> .
>>>>
>>>  --
>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
>> Php" dos Grupos do Google.
>> Para ver esta discussão na web, acesse
>> https://groups.google.com/d/msg/kohana-php/-/1YZm5DRRONYJ.
>>
>> Para postar neste grupo, envie um e-mail para [email protected]
>> .
>> Para cancelar a inscrição nesse grupo, envie um e-mail para
>> [email protected].
>> Para obter mais opções, visite esse grupo em
>> http://groups.google.com/group/kohana-php?hl=pt-BR.
>>
>
>  --
> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
> Php" dos Grupos do Google.
> Para postar neste grupo, envie um e-mail para [email protected].
> Para cancelar a inscrição nesse grupo, envie um e-mail para
> [email protected].
> Para obter mais opções, visite esse grupo em
> http://groups.google.com/group/kohana-php?hl=pt-BR.
>

-- 
Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos 
Grupos do Google.
Para postar neste grupo, envie um e-mail para [email protected].
Para cancelar a inscrição nesse grupo, envie um e-mail para 
[email protected].
Para obter mais opções, visite esse grupo em 
http://groups.google.com/group/kohana-php?hl=pt-BR.

Responder a