示例#1
0
    def GET(self, name):
        """ Get institutions."""
        logger.debug("Query: %s" % (web.input()))

        institution_uuid   = web.input().get('institution_uuid')
        if institution_uuid:
            results = Institution.get_institution(institution_uuid)
        else:
            results = Institution.get_all()

        if not results:
            raise Error(NORESULT)
        data = results_to_institutions(results)
        return data
示例#2
0
 def DELETE(self, name):
     """Deletes institution using institution uuid."""
     institution_uuid = web.input().get('institution_uuid')
     try:
         assert institution_uuid
     except AssertionError as error:
         logger.debug(error)
         raise Error(BADPARAMS)
     try:
         result = Institution.get_institution(institution_uuid)[0]
     except:
         raise Error(NOTFOUND,msg="The institution provided does not exist.")
     institution = Institution(result['institution_uuid'],
                 result['institution_name'],result['institution_country_code'])
     institution.delete()
     return [institution.__dict__]
示例#3
0
 def PUT(self, name):
     """Checks if entry exists using uuid, then modifies it."""
     data = json.loads(web.data())
     institution_uuid = data.get('institution_uuid')
     name = data.get('institution_name')
     country_code = data.get('country_code')
     try:
         assert institution_uuid and name and country_code
     except AssertionError as error:
         logger.debug(error)
         raise Error(BADPARAMS)
     try:
         assert Institution.get_institution(institution_uuid)[0]
     except:
         raise Error(NOTFOUND,msg="The institution provided does not exist.")
     institution = Institution(institution_uuid,name,country_code)
     institution.update()
     return [institution.__dict__]
 def POST(self, name):
     """Inserts new contact."""
     data = json.loads(web.data())
     institution_uuid = data.get('institution_uuid')
     name = data.get('contact_name')
     email_address = data.get('contact_email_address')
     notes = data.get('contact_notes')
     try:
         assert institution_uuid and name
     except AssertionError as error:
         logger.debug(error)
         raise Error(BADPARAMS)
     try:
         assert Institution.get_institution(institution_uuid)[0]
     except:
         raise Error(NOTFOUND,
                     msg="The institution provided does not exist.")
     contact_uuid = generate_uuid()
     contact = Contact(contact_uuid, institution_uuid, name, email_address,
                       notes)
     contact.save()
     return [contact.__dict__]