Ejemplo n.º 1
0
 def test_get(self):
   creator = Profile().put()
   monster = Monster()
   monster.creator = creator
   monster.put_unsearchable()
   
   response = main.app.get_response('/monster/'+str(monster.key().id())+'/delete')
   self.assert200(response)
Ejemplo n.º 2
0
 def post(self, entity_id=None):
   """HTML POST handler. 
   
   Save changes to the given monster."""
   
   template_values = self.build_template_values()
   
   if not template_values[handlers.base.PROFILE_KEY].is_publisher:
     return self.forbidden()
   
   monster = Monster()
   
   monster.product = int(self.request.get('product'))
   monster.creator = template_values[handlers.base.PROFILE_KEY]
   
   if monster.product == -1:
     monster.is_core = True
   
   license = self.request.get('license')
   if license:
     monster.license = configuration.site.licenses[license]
   else:
     return self.error()
   
   name = self.request.get('name')
   if name:
     monster.name = name
   else:
     return self.error()
     
   tags = self.request.get('tags')
   if tags:
     for tag in tags.split(", "):
       monster.tags.append(tag)
   else:
     return self.error()
   
   damage = self.request.get('damage')
   if damage:
     monster.damage = damage
   else:
     return self.error()
   
   hp = self.request.get('hp')
   if hp:
     monster.hp = hp
   else:
     return self.error()
   
   armor = self.request.get('armor')
   if armor:
     monster.armor = armor
   else:
     return self.error()
     
   damage_tags = self.request.get('damage_tags')
   if damage_tags:
     for tag in damage_tags.split(", "):
       monster.damage_tags.append(tag)
   else:
     return self.error()
   
   special_qualities = self.request.get('special_qualities')
   if special_qualities:
     for sq in special_qualities.split(", "):
       monster.special_qualities.append(sq)
   else:
     return self.error()
     
   description = self.request.get('description')
   if armor:
     monster.description = description
   else:
     return self.error()
   
   instinct = self.request.get('instinct')
   if instinct:
     monster.instinct = instinct
   else:
     return self.error()
   
   moves = self.request.get('moves')
   if moves:
     for move in moves.split("\n"):
       monster.moves.append(move)
   else:
     return self.error()
     
   monster.put()
   return self.redirect(self.uri_for("monster", entity_id=monster.key().id()))