def user_update_details_from_feed(uid, upid): """ Refresh the user's details from feed. Maybe their name or ID changed. """ for feed in UFeeds.all_list(): try: out = feeds_run_user_script(feed.script, args=[upid, ]) except BaseException as err: L.error("Exception running user feed '%s': %s" % (feed.script, err)) continue res = out.splitlines() if res[0].startswith("ERROR"): L.error("Error running user feed '%s': %s" % (feed.script, res)) continue line = res[1] studentid = "" try: (upid, name, email, studentid) = line.split(',') except ValueError: try: (upid, name, email) = line.split(',') except ValueError: continue given = name.split(" ")[0] try: family = " ".join(name.split(" ")[1:]) except ValueError: family = "" Users.set_email(uid, email) Users.set_givenname(uid, given) Users.set_familyname(uid, family) Users.set_studentid(uid, studentid)