X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FMethods%2FAddPersonToSite.py;h=0e0f6a392a001c8a24eb2e3eb1266c174f86cd77;hb=4facb0674ab3f9e2deac6e92717b71cbd05f3c10;hp=487892ceffddbe5427b4ca89f31b38218e6c4091;hpb=b47ad393404dfdbe9a4c2a07e7373c71140ccbb3;p=plcapi.git diff --git a/PLC/Methods/AddPersonToSite.py b/PLC/Methods/AddPersonToSite.py index 487892c..0e0f6a3 100644 --- a/PLC/Methods/AddPersonToSite.py +++ b/PLC/Methods/AddPersonToSite.py @@ -8,6 +8,8 @@ from PLC.PersonTags import PersonTags, PersonTag from PLC.Namespace import email_to_hrn from PLC.TagTypes import TagTypes +from PLC.Logger import logger + class AddPersonToSite(Method): """ Adds the specified person to the specified site. If the person is @@ -33,20 +35,20 @@ class AddPersonToSite(Method): # Get account information persons = Persons(self.api, [person_id_or_email]) if not persons: - raise PLCInvalidArgument, "No such account" + raise PLCInvalidArgument("No such account") person = persons[0] if person['peer_id'] is not None: - raise PLCInvalidArgument, "Not a local account" + raise PLCInvalidArgument("Not a local account") # Get site information sites = Sites(self.api, [site_id_or_login_base]) if not sites: - raise PLCInvalidArgument, "No such site" + raise PLCInvalidArgument("No such site") site = sites[0] if site['peer_id'] is not None: - raise PLCInvalidArgument, "Not a local site" + raise PLCInvalidArgument("Not a local site") if site['site_id'] not in person['site_ids']: site.add_person(person) @@ -63,12 +65,12 @@ class AddPersonToSite(Method): try: had_no_site= (len (person['site_ids']) == 0) if had_no_site: - login_base=site['login_base'] + login_base = site['login_base'] root_auth = self.api.config.PLC_HRN_ROOT - hrn=email_to_hrn("%s.%s"%(root_auth,login_base),person['email']) - tagname='hrn' + hrn = email_to_hrn("%s.%s"%(root_auth,login_base),person['email']) + tagname = 'hrn' tag_type = TagTypes(self.api,{'tagname':tagname})[0] - person_tags=PersonTags(self.api,{'tagname':tagname,'person_id':person['person_id']}) + person_tags = PersonTags(self.api,{'tagname':tagname,'person_id':person['person_id']}) if not person_tags: person_tag = PersonTag(self.api) person_tag['person_id'] = person['person_id'] @@ -80,11 +82,8 @@ class AddPersonToSite(Method): person_tag = person_tags[0] person_tag['value'] = hrn person_tag.sync() - except Exception,e: - print "BEG Warning, cannot maintain person's hrn, %s"%e - import traceback - traceback.print_exc() - print "END Warning, cannot maintain person's hrn, %s"%e - + except Exception as e: + logger.exception("ERROR cannot maintain person's hrn, {}" + .format(person_id_or_email)) return 1