def post(self): title = self.request.get('title') blurb = self.request.get('blurb') phone = self.request.get('phone') image = self.request.get('image') email = self.request.get('email') price = self.request.get('price') image_thumb = images.resize(image, 100, 100) image_medium = images.resize(image, 480, 480) image_small = images.resize(image, 200, 200) billboards = self.request.get('selected_billboards') billboards = [db.Key(key) for key in billboards.split(' ')] ad = Ad(title=title) ad.ip = self.request.remote_addr ad.sold = False ad.blurb = blurb ad.image = db.Blob(image) ad.image_thumb = db.Blob(image_thumb) ad.image_medium = db.Blob(image_medium) ad.image_small = db.Blob(image_small) ad.phone = db.PhoneNumber(phone) ad.email = db.Email(email) ad.price2 = int(price) ad.billboards = billboards ad.put() ad.password = hashlib.md5(SALT + ad.ip + str(ad.key())).hexdigest() ad.save() for billboard in db.get(billboards): billboard.ads.append(ad.key()) billboard.put() path = os.path.join(os.path.dirname(__file__), 'success.html') self.response.out.write( template.render( path, { 'ad': ad, 'secret_link': 'http://%s/ads/%s/edit?password=%s' % (self.request.host, ad.key(), ad.password) }))