+import logging
+
from AccessControl import ClassSecurityInfo
from App.class_init import InitializeClass
from Products.PageTemplates.PageTemplateFile import PageTemplateFile
@@ -20,6 +22,7 @@ user_info_schema['postal_address'].widget = deform.widget.TextAreaWidget()
SESSION_MESSAGES = 'eea.userseditor.messages'
SESSION_FORM_DATA = 'eea.userseditor.form_data'
SESSION_FORM_ERRORS = 'eea.userseditor.form_errors'
+log = logging.getLogger(__name__)
WIDTH = 128
HEIGHT = 192
@@ -90,16 +93,25 @@ class DualLDAPProxy(object):
self._legacy_ldap = legacy_ldap
def bind_user(self, user_id, user_pw):
- self._legacy_ldap.bind_user(user_id, user_pw)
self._current_ldap.bind_user(user_id, user_pw)
+ try:
+ self._legacy_ldap.bind_user(user_id, user_pw)
+ except ValueError:
+ log.info("User %r could not bind on CIRCA legacy LDAP", user_id)
def set_user_info(self, user_id, new_info):
- self._legacy_ldap.set_user_info(user_id, new_info)
self._current_ldap.set_user_info(user_id, new_info)
+ try:
+ self._legacy_ldap.set_user_info(user_id, new_info)
+ except usersdb.UserNotFound:
+ log.info("User %r doesn't exist in CIRCA legacy LDAP", user_id)
def set_user_password(self, user_id, old_pw, new_pw):
- self._legacy_ldap.set_user_password(user_id, old_pw, new_pw)
self._current_ldap.set_user_password(user_id, old_pw, new_pw)
+ try:
+ self._legacy_ldap.set_user_password(user_id, old_pw, new_pw)
+ except usersdb.UserNotFound:
+ log.info("User %r doesn't exist in CIRCA legacy LDAP", user_id)
def __getattr__(self, name):
# patch all other methods straight to front-end ldap