1+ import logging
2+
13from django .contrib .auth import authenticate , login
24from django .contrib .auth .decorators import login_required
35from django .http import HttpResponseRedirect
46from django .template .response import TemplateResponse
57from django .urls import reverse
68
9+ from requests .exceptions import ConnectionError , SSLError
10+
711from users .authBackend import (
812 CasParseError ,
913 CasRejectError ,
1014 CasRequestError ,
1115 UlbCasBackend ,
1216)
1317
18+ logger = logging .getLogger (__name__ )
19+
1420
1521@login_required
1622def panel_hide (request ):
@@ -40,10 +46,12 @@ def auth_ulb(request):
4046 try :
4147 user = authenticate (ticket = ticket )
4248 except CasRejectError as e :
49+ logger .exception ("CAS rejected" )
4350 return TemplateResponse (
4451 request , "users/auth/error.html" , {"code" : e .args [0 ], "debug" : e .args [1 ]}
4552 )
4653 except CasRequestError as e :
54+ logger .exception ("CAS request error" )
4755 cas_request = e .args [0 ]
4856 return TemplateResponse (
4957 request ,
@@ -54,9 +62,20 @@ def auth_ulb(request):
5462 },
5563 )
5664 except CasParseError as e :
65+ logger .exception ("CAS parse error" )
5766 return TemplateResponse (
5867 request , "users/auth/error.html" , {"code" : e .args [0 ], "debug" : e .args [1 ]}
5968 )
69+ except (ConnectionError , SSLError ) as e :
70+ logger .exception ("CAS SSL error" )
71+ return TemplateResponse (
72+ request , "users/auth/error.html" , {"code" : "SSL" , "debug" : e .args [0 ]}
73+ )
74+ except Exception as e :
75+ logger .exception ("CAS unknown error" )
76+ return TemplateResponse (
77+ request , "users/auth/error.html" , {"code" : "UNKNOWN" , "debug" : e .args [0 ]}
78+ )
6079
6180 if user is None :
6281 return TemplateResponse (request , "users/auth/unknown-error.html" , {})
0 commit comments