Ejemplo n.º 1
0
 def action_get_object(self,id, data_dict = {}):
     if isinstance(self.id,int) and self.id > 0:
         #meta.DBSession.close()
         #meta.DBSession()
         self.object = Person.get(self.site.id,self.id)
         if not self.object:
             # ??
             self.object = Person.by_foreignid(self.site.id,self.id)
     elif isinstance(self.id,int) and self.id == 0 and 'email' in data_dict:
         self.object = Person.by_email(self.site.id,data_dict['email'].lower())
     elif 'foreign_id' in data_dict:
         self.object = Person.by_foreignid(self.site.id,data_dict['foreign_id'])
     else:
         id = urllib.unquote_plus(self.id)
         if mailsrch.match(id):
             self.object = Person.by_email(self.site.id,id)
         else:
             self.object = Person.by_hashedemail(self.site.id,id)
         log.debug('getting by hashed/email:  %s, %s' % (id, self.object))
     if self.object:
         self.qry = [self.object]