parent
380ee528a5
commit
c22607b630
|
@ -1,6 +1,9 @@
|
|||
|
||||
import json
|
||||
from urlparse import parse_qs
|
||||
|
||||
from mandaye.http import HTTPRequest, HTTPHeader
|
||||
from mandaye.server import get_response
|
||||
from mandaye.template import serve_template
|
||||
from mandaye.response import _302
|
||||
|
||||
|
@ -33,3 +36,16 @@ class ArcopoleFilter:
|
|||
cookie['path'] = '/studio'
|
||||
return _302(values['next_url'], req_cookies)
|
||||
|
||||
@staticmethod
|
||||
def is_user_locally_logged_in(env, request, response):
|
||||
if "/studio/clients" in env['HTTP_REFERER']:
|
||||
return True
|
||||
request = HTTPRequest(request.cookies, HTTPHeader())
|
||||
response = get_response(env, request,
|
||||
"/studio/orion/userinfo?token=__session_token")
|
||||
if response.code == 500:
|
||||
return False
|
||||
auth = json.loads(response.msg)
|
||||
if auth['uid'] == "anonymous":
|
||||
return False
|
||||
return True
|
||||
|
|
|
@ -42,6 +42,8 @@ urls = {
|
|||
'login_url': '/mandaye/login'
|
||||
}
|
||||
|
||||
is_user_locally_logged_in = ArcopoleFilter.is_user_locally_logged_in
|
||||
|
||||
mapping = [
|
||||
{
|
||||
'path': r'/',
|
||||
|
@ -138,5 +140,8 @@ mapping = [
|
|||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
'path': r'/studio/mandaye/toolbar',
|
||||
'response': {'filter': MandayeFilter.toolbar}
|
||||
},
|
||||
]
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ function mandaye_disassociate_logout(url, account, id)
|
|||
|
||||
(function( $ ) {
|
||||
$(function() {
|
||||
$.get("/mandaye/toolbar", function(data) {
|
||||
$.get("/studio/mandaye/toolbar", function(data) {
|
||||
$("body").prepend(data);
|
||||
});
|
||||
$("#logout_link").off('click').on("click", function() {
|
||||
|
|
|
@ -17,6 +17,10 @@
|
|||
<a href="javascript:mandaye_disassociate_logout('${urls['disassociate_url']}', '${account['sp_login']}', ${account['id']})" title="Cliquer ici pour supprimer le lien entre ce compte et votre compte citoyen.">Délier mon compte</a>
|
||||
</li>
|
||||
% endif
|
||||
% elif is_user_locally_logged_in:
|
||||
<li>
|
||||
<a href="${urls['connection_url']}" title="Cliquer ici pour lier votre compte citoyen avec ${site_name}">Lier mon compte</a>
|
||||
</li>
|
||||
% else:
|
||||
<li>
|
||||
<a href="/mandaye/sso" title="Cliquer ici pour vous connecter sur ${site_name}">Se connecter avec son compte agent</a>
|
||||
|
|
Reference in New Issue