Esempio n. 1
0
def update_user_info_from_ldap(user_id):
    from invenio.bibcirculation_cern_ldap import get_user_info_from_ldap
    ccid = db.get_borrower_ccid(user_id)
    ldap_info = 'busy'
    while ldap_info == 'busy':
        time.sleep(1)
        ldap_info = get_user_info_from_ldap(ccid=ccid)
    if len(ldap_info) == 0:
        result = ()
    else:
        try:
            name    = ldap_info['displayName'][0]
        except KeyError:
            name    = ""
        try:
            email   = ldap_info['mail'][0]
        except KeyError:
            email   = ""
        try:
            phone   = ldap_info['telephoneNumber'][0]
        except KeyError:
            phone   = ""
        try:
            address = ldap_info['physicalDeliveryOfficeName'][0]
        except KeyError:
            address = ""
        try:
            mailbox = ldap_info['postOfficeBox'][0]
        except KeyError:
            mailbox = ""
        db.update_borrower(user_id, name, email, phone, address, mailbox)
        result = db.search_borrower_by_ccid(int(ccid))
    return result
def update_user_info_from_ldap(user_id):

    from invenio.bibcirculation_cern_ldap import get_user_info_from_ldap

    ccid = db.get_borrower_ccid(user_id)
    ldap_info = get_user_info_from_ldap(ccid=ccid)

    if not ldap_info:
        result = ()
    else:
        try:
            name    = ldap_info['displayName'][0]
        except KeyError:
            name    = ""
        try:
            email   = ldap_info['mail'][0]
        except KeyError:
            email   = ""
        try:
            phone   = ldap_info['telephoneNumber'][0]
        except KeyError:
            phone   = ""
        try:
            address = ldap_info['physicalDeliveryOfficeName'][0]
        except KeyError:
            address = ""
        try:
            mailbox = ldap_info['postOfficeBox'][0]
        except KeyError:
            mailbox = ""
        db.update_borrower(user_id, name, email, phone, address, mailbox)
        result = db.search_borrower_by_ccid(int(ccid))
    return result
Esempio n. 3
0
def update_user_info_from_ldap(user_id):
    from invenio.bibcirculation_cern_ldap import get_user_info_from_ldap

    ccid = db.get_borrower_ccid(user_id)
    ldap_info = "busy"
    while ldap_info == "busy":
        time.sleep(1)
        ldap_info = get_user_info_from_ldap(ccid=ccid)
    if len(ldap_info) == 0:
        result = ()
    else:
        try:
            name = ldap_info["displayName"][0]
        except KeyError:
            name = ""
        try:
            email = ldap_info["mail"][0]
        except KeyError:
            email = ""
        try:
            phone = ldap_info["telephoneNumber"][0]
        except KeyError:
            phone = ""
        try:
            address = ldap_info["physicalDeliveryOfficeName"][0]
        except KeyError:
            address = ""
        try:
            mailbox = ldap_info["postOfficeBox"][0]
        except KeyError:
            mailbox = ""
        db.update_borrower(user_id, name, email, phone, address, mailbox)
        result = db.search_borrower_by_ccid(int(ccid))
    return result
Esempio n. 4
0
def search_user(column, string):
    if string is not None:
        string = string.strip()

    if CFG_CERN_SITE == 1:
        if column == 'name':
            result = db.search_borrower_by_name(string)
        else:
            if column == 'email':
                try:
                    result = db.search_borrower_by_email(string)
                except:
                    result = ()
            else:
                try:
                    result = db.search_borrower_by_ccid(string)
                except:
                    result = ()

            if result == ():
                from invenio.bibcirculation_cern_ldap \
                     import get_user_info_from_ldap

                ldap_info = 'busy'
                while ldap_info == 'busy':
                    time.sleep(1)
                    if column == 'id' or column == 'ccid':
                        ldap_info = get_user_info_from_ldap(ccid=string)
                    elif column == 'email':
                        ldap_info = get_user_info_from_ldap(email=string)
                    else:
                        ldap_info = get_user_info_from_ldap(nickname=string)

                if len(ldap_info) == 0:
                    result = ()
                else:
                    try:
                        name = ldap_info['displayName'][0]
                    except KeyError:
                        name = ""
                    try:
                        email = ldap_info['mail'][0]
                    except KeyError:
                        email = ""
                    try:
                        phone = ldap_info['telephoneNumber'][0]
                    except KeyError:
                        phone = ""
                    try:
                        address = ldap_info['physicalDeliveryOfficeName'][0]
                    except KeyError:
                        address = ""
                    try:
                        mailbox = ldap_info['postOfficeBox'][0]
                    except KeyError:
                        mailbox = ""
                    try:
                        ccid = ldap_info['employeeID'][0]
                    except KeyError:
                        ccid = ""

                    try:
                        db.new_borrower(ccid, name, email, phone,
                                    address, mailbox, '')
                    except:
                        pass
                    result = db.search_borrower_by_ccid(int(ccid))

    else:
        if column == 'name':
            result = db.search_borrower_by_name(string)
        elif column == 'email':
            result = db.search_borrower_by_email(string)
        else:
            result = db.search_borrower_by_id(string)

    return result
def search_user(column, string):
    if string is not None:
        string = string.strip()

    if CFG_CERN_SITE == 1:
        if column == 'name':
            result = db.search_borrower_by_name(string)
        else:
            if column == 'email':
                try:
                    result = db.search_borrower_by_email(string)
                except:
                    result = ()
            else:
                try:
                    result = db.search_borrower_by_ccid(string)
                except:
                    result = ()

            if result == ():
                from invenio.bibcirculation_cern_ldap \
                     import get_user_info_from_ldap

                ldap_info = 'busy'
                while ldap_info == 'busy':
                    time.sleep(1)
                    if column == 'id' or column == 'ccid':
                        ldap_info = get_user_info_from_ldap(ccid=string)
                    elif column == 'email':
                        ldap_info = get_user_info_from_ldap(email=string)
                    else:
                        ldap_info = get_user_info_from_ldap(nickname=string)

                if len(ldap_info) == 0:
                    result = ()
                else:
                    try:
                        name = ldap_info['displayName'][0]
                    except KeyError:
                        name = ""
                    try:
                        email = ldap_info['mail'][0]
                    except KeyError:
                        email = ""
                    try:
                        phone = ldap_info['telephoneNumber'][0]
                    except KeyError:
                        phone = ""
                    try:
                        address = ldap_info['physicalDeliveryOfficeName'][0]
                    except KeyError:
                        address = ""
                    try:
                        mailbox = ldap_info['postOfficeBox'][0]
                    except KeyError:
                        mailbox = ""
                    try:
                        ccid = ldap_info['employeeID'][0]
                    except KeyError:
                        ccid = ""

                    try:
                        db.new_borrower(ccid, name, email, phone,
                                    address, mailbox, '')
                    except:
                        pass
                    result = db.search_borrower_by_ccid(int(ccid))

    else:
        if column == 'name':
            result = db.search_borrower_by_name(string)
        elif column == 'email':
            result = db.search_borrower_by_email(string)
        else:
            result = db.search_borrower_by_id(string)

    return result
Esempio n. 6
0
def search_user(column, string):
    if string is not None:
        string = string.strip()

    if CFG_CERN_SITE == 1:
        if column == "name":
            result = db.search_borrower_by_name(string)
        else:
            if column == "email":
                try:
                    result = db.search_borrower_by_email(string)
                except:
                    result = ()
            else:
                try:
                    result = db.search_borrower_by_ccid(string)
                except:
                    result = ()

            if result == ():
                from invenio.bibcirculation_cern_ldap import get_user_info_from_ldap

                ldap_info = "busy"
                while ldap_info == "busy":
                    time.sleep(1)
                    if column == "id" or column == "ccid":
                        ldap_info = get_user_info_from_ldap(ccid=string)
                    elif column == "email":
                        ldap_info = get_user_info_from_ldap(email=string)
                    else:
                        ldap_info = get_user_info_from_ldap(nickname=string)

                if len(ldap_info) == 0:
                    result = ()
                else:
                    try:
                        name = ldap_info["displayName"][0]
                    except KeyError:
                        name = ""
                    try:
                        email = ldap_info["mail"][0]
                    except KeyError:
                        email = ""
                    try:
                        phone = ldap_info["telephoneNumber"][0]
                    except KeyError:
                        phone = ""
                    try:
                        address = ldap_info["physicalDeliveryOfficeName"][0]
                    except KeyError:
                        address = ""
                    try:
                        mailbox = ldap_info["postOfficeBox"][0]
                    except KeyError:
                        mailbox = ""
                    try:
                        ccid = ldap_info["employeeID"][0]
                    except KeyError:
                        ccid = ""

                    try:
                        db.new_borrower(ccid, name, email, phone, address, mailbox, "")
                    except:
                        pass
                    result = db.search_borrower_by_ccid(int(ccid))

    else:
        if column == "name":
            result = db.search_borrower_by_name(string)
        elif column == "email":
            result = db.search_borrower_by_email(string)
        else:
            result = db.search_borrower_by_id(string)

    return result