Esempio n. 1
0
 def get(self):
     records = Aid.query().order(Aid.name)
     record_list = []
     for record in records:
         d = dict(
             urlsafe=record.key.urlsafe(),
             recordID=record.key.id(),
             name=record.name,
             supplier=record.supplier.get().name,
             maintenance=record.maintenance,
             replacement=record.replacement
         )
         try:
             im = record.image.serving_url
             d['image'] = im
         except:
             d['image'] = None
     res = json.encode(record_list)
     self.response.out.write(res)
Esempio n. 2
0
 def post(self):
     record_id = json.decode(self.request.body).get('record_id')
     record = Aid.get_by_id(int(record_id))
     try:
         record_dict = dict(
             name=record.name,
             cost=record.cost,
             supplier=record.supplier.get().name,
             maintenance=record.maintenance,
             replacement=record.replacement,
             error=False,
         )
         # noinspection PyBroadException
         try:
             im = record.image.serving_url
             record_dict['image'] = im
         except:
             record_dict['image'] = None
     except AttributeError:
         record_dict = {'error': True}
     record_dict['id'] = record_id
     res = json.encode(record_dict)
     self.response.out.write(res)
Esempio n. 3
0
 def get(self):
     data = Aid.query().order(Aid.name)
     return self.render_template('view_aids.html', table_data=data)
Esempio n. 4
0
    def post(self):
        """ validate contact form """

        if not self.form.validate():
            return self.get()
        name = self.form.name.data.strip()
        cost = self.form.cost.data
        maintenance = self.form.maintenance.data
        replacement = self.form.replacement.data
        installation = self.form.installation.data
        postage = self.form.postage.data
        supplier = self.form.supplier.data
        tags = self.form.tags.data
        notes = self.form.notes.data.strip()
        field_storage = self.form.image.data

        edit_id = self.request.get('aid_id')
        if edit_id:
            new_aid = ndb.Key(urlsafe=edit_id).get()
            logging.info(new_aid)
        else:
            new_aid = Aid()
        new_aid.name = name
        new_aid.cost = cost
        new_aid.maintenance = maintenance
        new_aid.replacement = replacement
        new_aid.installation = installation
        new_aid.postage = postage
        new_aid.supplier = Key("Supplier", supplier)
        new_aid.tags = tags
        new_aid.notes = notes

        if isinstance(field_storage, FieldStorage):
            dyn = models.ImageModel(id=field_storage.filename, filename=field_storage.filename)
            gcs_data.gcs_write_blob(dyn, field_storage.file.read())
            gcs_data.gcs_serving_url(dyn)
            new_aid.image = dyn

        new_aid.put()

        return self.redirect('/add_aid')