Changeset 869
- Timestamp:
- 12/13/05 03:20:15
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/cherrypy/filters/sessionauthenticatefilter.py
r867 r869 3 3 4 4 5 def default LoginScreen(from_page, login = '', errorMsg = ''):5 def default_login_screen(from_page, login = '', error_msg = ''): 6 6 return """ 7 7 <html><body> … … 14 14 </form> 15 15 </body></html> 16 """ % (error Msg, login, from_page)16 """ % (error_msg, login, from_page) 17 17 18 def default CheckLoginAndPassword(login, password):19 # Dummy check LoginAndPassword function18 def default_check_login_and_password(login, password): 19 # Dummy check_login_and_password function 20 20 if login != 'login' or password != 'password': 21 21 return u'Wrong login/password' … … 32 32 return 33 33 34 check LoginAndPassword = cherrypy.config.get('session_authenticate_filter.check_login_and_password', defaultCheckLoginAndPassword)35 login Screen = cherrypy.config.get('session_authenticate_filter.login_screen', defaultLoginScreen)36 not LoggedIn = cherrypy.config.get('session_authenticate_filter.not_logged_in')37 load UserByUsername = cherrypy.config.get('session_authenticate_filter.load_user_by_username')38 session Key = cherrypy.config.get('session_authenticate_filter.session_key', 'username')34 check_login_and_password = cherrypy.config.get('session_authenticate_filter.check_login_and_password', default_check_login_and_password) 35 login_screen = cherrypy.config.get('session_authenticate_filter.login_screen', default_login_screen) 36 not_logged_in = cherrypy.config.get('session_authenticate_filter.not_logged_in') 37 load_user_by_username = cherrypy.config.get('session_authenticate_filter.load_user_by_username') 38 session_key = cherrypy.config.get('session_authenticate_filter.session_key', 'username') 39 39 40 if cherrypy.request.path.endswith('login Screen'):40 if cherrypy.request.path.endswith('login_screen'): 41 41 return 42 42 elif cherrypy.request.path.endswith('do_logout'): 43 cherrypy.session[session Key] = None43 cherrypy.session[session_key] = None 44 44 cherrypy.request.user = None 45 45 from_page = cherrypy.request.params.get('from_page', '..') … … 49 49 login = cherrypy.request.params['login'] 50 50 password = cherrypy.request.params['password'] 51 error Msg = checkLoginAndPassword(login, password)52 if error Msg:53 cherrypy.response.body = login Screen(from_page, login = login, errorMsg = errorMsg)51 error_msg = check_login_and_password(login, password) 52 if error_msg: 53 cherrypy.response.body = login_screen(from_page, login = login, error_msg = error_msg) 54 54 cherrypy.request.executeMain = False 55 55 else: 56 cherrypy.session[session Key] = login56 cherrypy.session[session_key] = login 57 57 if not from_page: 58 58 from_page = '/' … … 61 61 62 62 # Check if user is logged in 63 if (not cherrypy.session.get(session Key)) and notLoggedIn:64 # Call not LoggedIn so that applications where anynymous user63 if (not cherrypy.session.get(session_key)) and not_logged_in: 64 # Call not_logged_in so that applications where anynymous user 65 65 # is OK can handle it 66 not LoggedIn()67 if not cherrypy.session.get(session Key):68 cherrypy.response.body = login Screen(cherrypy.request.browser_url)66 not_logged_in() 67 if not cherrypy.session.get(session_key): 68 cherrypy.response.body = login_screen(cherrypy.request.browser_url) 69 69 cherrypy.request.executeMain = False 70 70 return 71 71 72 72 # Everything is OK: user is logged in 73 if load UserByUsername:74 username = cherrypy.session[session Key]75 cherrypy.request.user = load UserByUsername(username)76 cherrypy.thread_data.user = load UserByUsername(username)73 if load_user_by_username: 74 username = cherrypy.session[session_key] 75 cherrypy.request.user = load_user_by_username(username) 76 cherrypy.thread_data.user = load_user_by_username(username)

