def del_category(self): ''' Delete a category ''' cat = Category.by_uuid(self.get_argument('uuid', '')) if cat is not None: logging.info("Delete category: %s" % cat.category) self.dbsession.delete(cat) self.dbsession.commit() self.redirect('/admin/view/categories') else: self.render('admin/view/categories.html', errors=["Category does not exist in database."])
def del_category(self): ''' Delete a category ''' cat = Category.by_uuid(self.get_argument('uuid', '')) if cat is not None: logging.info("Delete category: %s" % cat.category) self.dbsession.delete(cat) self.dbsession.commit() self.redirect('/admin/view/categories') else: self.render('admin/view/categories.html', errors=["Category does not exist in database."] )
def del_category(self): """ Delete a category """ cat = Category.by_uuid(self.get_argument("uuid", "")) if cat is not None: logging.info("Delete category: %s" % cat.category) self.dbsession.delete(cat) self.dbsession.commit() self.redirect("/admin/view/categories") else: self.render( "admin/view/categories.html", errors=["Category does not exist in database."], )
def create_box(self): """ Create a box object """ try: game_level = self.get_argument("game_level", "") corp_uuid = self.get_argument("corporation_uuid", "") if Box.by_name(self.get_argument("name", "")) is not None: raise ValidationError("Box name already exists") elif GameLevel.by_number(game_level) is None: raise ValidationError("Game level does not exist") else: if Corporation.by_uuid(corp_uuid) is None: if len(Corporation.all()) == 0: # Create a empty Corp corporation = Corporation() corporation.name = "" self.dbsession.add(corporation) self.dbsession.commit() corp_uuid = corporation.uuid else: raise ValidationError("Corporation does not exist") corp = Corporation.by_uuid(corp_uuid) level = GameLevel.by_number(game_level) box = Box(corporation_id=corp.id, game_level_id=level.id) box.name = self.get_argument("name", "") box.description = self.get_argument("description", "") box.flag_submission_type = FlagsSubmissionType[ self.get_argument("flag_submission_type", "")] box.difficulty = self.get_argument("difficulty", "") box.operating_system = self.get_argument( "operating_system", "?") box.capture_message = self.get_argument("capture_message", "") box.value = self.get_argument("reward", 0) cat = Category.by_uuid(self.get_argument("category_uuid", "")) if cat is not None: box.category_id = cat.id else: box.category_id = None # Avatar avatar_select = self.get_argument("box_avatar_select", "") if avatar_select and len(avatar_select) > 0: box._avatar = avatar_select elif hasattr(self.request, "files") and "avatar" in self.request.files: box.avatar = self.request.files["avatar"][0]["body"] self.dbsession.add(box) self.dbsession.commit() self.redirect("/admin/view/game_objects#%s" % box.uuid) except ValidationError as error: self.render("admin/create/box.html", errors=[str(error)])
def edit_category(self): """ Updates category object in the database """ try: cat = Category.by_uuid(self.get_argument("uuid", "")) if cat is None: raise ValidationError("Category does not exist") category = self.get_argument("category", "") if category != cat.category: logging.info("Updated category name %s -> %s" % (cat.category, category)) cat.category = category self.dbsession.add(cat) self.dbsession.commit() self.redirect("/admin/view/categories") except ValidationError as error: self.render("admin/view/categories.html", errors=[str(error)])
def edit_category(self): ''' Updates category object in the database ''' try: cat = Category.by_uuid(self.get_argument('uuid', '')) if cat is None: raise ValidationError("Category does not exist") category = self.get_argument('category', '') if category != cat.category: logging.info("Updated category name %s -> %s" % ( cat.category, category )) cat.category = category self.dbsession.add(cat) self.dbsession.commit() self.redirect('/admin/view/categories') except ValidationError as error: self.render("admin/view/categories.html", errors=[str(error), ])
def create_box(self): ''' Create a box object ''' try: game_level = self.get_argument('game_level', '') corp_uuid = self.get_argument('corporation_uuid', '') if Box.by_name(self.get_argument('name', '')) is not None: raise ValidationError("Box name already exists") elif Corporation.by_uuid(corp_uuid) is None: raise ValidationError("Corporation does not exist") elif GameLevel.by_number(game_level) is None: raise ValidationError("Game level does not exist") else: corp = Corporation.by_uuid(corp_uuid) level = GameLevel.by_number(game_level) box = Box(corporation_id=corp.id, game_level_id=level.id) box.name = self.get_argument('name', '') box.description = self.get_argument('description', '') box.flag_submission_type = FlagsSubmissionType[ self.get_argument('flag_submission_type', '')] box.difficulty = self.get_argument('difficulty', '') box.operating_system = self.get_argument( 'operating_system', '?') cat = Category.by_uuid(self.get_argument('category_uuid', '')) if cat is not None: box.category_id = cat.id else: box.category_id = None # Avatar avatar_select = self.get_argument('box_avatar_select', '') if avatar_select and len(avatar_select) > 0: box._avatar = avatar_select elif hasattr(self.request, 'files') and 'avatar' in self.request.files: box.avatar = self.request.files['avatar'][0]['body'] self.dbsession.add(box) self.dbsession.commit() self.redirect("/admin/view/game_objects#%s" % box.uuid) except ValidationError as error: self.render('admin/create/box.html', errors=[ str(error), ])
def create_box(self): ''' Create a box object ''' try: game_level = self.get_argument('game_level', '') corp_uuid = self.get_argument('corporation_uuid', '') if Box.by_name(self.get_argument('name', '')) is not None: raise ValidationError("Box name already exists") elif Corporation.by_uuid(corp_uuid) is None: raise ValidationError("Corporation does not exist") elif GameLevel.by_number(game_level) is None: raise ValidationError("Game level does not exist") else: corp = Corporation.by_uuid(corp_uuid) level = GameLevel.by_number(game_level) box = Box(corporation_id=corp.id, game_level_id=level.id) box.name = self.get_argument('name', '') box.description = self.get_argument('description', '') box.flag_submission_type = FlagsSubmissionType[self.get_argument('flag_submission_type','')] box.difficulty = self.get_argument('difficulty', '') box.operating_system = self.get_argument('operating_system', '?') cat = Category.by_uuid(self.get_argument('category_uuid', '')) if cat is not None: box.category_id = cat.id else: box.category_id = None # Avatar avatar_select = self.get_argument('box_avatar_select', '') if avatar_select and len(avatar_select) > 0: box._avatar = avatar_select elif hasattr(self.request, 'files') and 'avatar' in self.request.files: box.avatar = self.request.files['avatar'][0]['body'] self.dbsession.add(box) self.dbsession.commit() self.redirect("/admin/view/game_objects#%s" % box.uuid) except ValidationError as error: self.render('admin/create/box.html', errors=[str(error), ])
def edit_boxes(self): """ Edit existing boxes in the database, and log the changes """ try: box = Box.by_uuid(self.get_argument("uuid", "")) if box is None: raise ValidationError("Box does not exist") # Name name = self.get_argument("name", "") if name != box.name: if Box.by_name(name) is None: logging.info("Updated box name %s -> %s" % (box.name, name)) box.name = name else: raise ValidationError("Box name already exists") # Corporation corp = Corporation.by_uuid( self.get_argument("corporation_uuid", "")) if corp is not None and corp.id != box.corporation_id: logging.info("Updated %s's corporation %s -> %s" % (box.name, box.corporation_id, corp.id)) box.corporation_id = corp.id elif corp is None: raise ValidationError("Corporation does not exist") # Category cat = Category.by_uuid(self.get_argument("category_uuid", "")) if cat is not None and cat.id != box.category_id: logging.info("Updated %s's category %s -> %s" % (box.name, box.category_id, cat.id)) box.category_id = cat.id elif cat is None and cat != box.category_id: logging.info("Updated %s's category %s -> None" % (box.name, box.category_id)) box.category_id = None # System Type ostype = self.get_argument("operating_system", "") if ostype is not None and ostype != box.operating_system: logging.info("Updated %s's system type %s -> %s" % (box.name, box.operating_system, ostype)) box.operating_system = ostype # Description description = self.get_argument("description", "") if description != box._description: logging.info("Updated %s's description %s -> %s" % (box.name, box.description, description)) box.description = description # Difficulty difficulty = self.get_argument("difficulty", "") if difficulty != box.difficulty: logging.info("Updated %s's difficulty %s -> %s" % (box.name, box.difficulty, difficulty)) box.difficulty = difficulty # Flag submission type flag_submission_type = self.get_argument("flag_submission_type", "") if (flag_submission_type is not None and flag_submission_type != box.flag_submission_type): logging.info( "Updated %s's flag submission type %s -> %s" % (box.name, box.flag_submission_type, flag_submission_type)) box.flag_submission_type = flag_submission_type # Capture Message capture_message = self.get_argument("capture_message", "") if capture_message != box.capture_message: logging.info("Updated %s's capture message %s -> %s" % (box.name, box.capture_message, capture_message)) box.capture_message = capture_message # Reward Value reward = self.get_argument("value", 0) if reward != box.value: logging.info("Updated %s's capture value %s -> %s" % (box.name, box.value, reward)) box.value = reward # Avatar avatar_select = self.get_argument("box_avatar_select", "") if avatar_select and len(avatar_select) > 0: box._avatar = avatar_select elif "avatar" in self.request.files: box.avatar = self.request.files["avatar"][0]["body"] self.dbsession.add(box) self.dbsession.commit() self.redirect("/admin/view/game_objects#%s" % box.uuid) except ValidationError as error: self.render("admin/view/game_objects.html", success=None, errors=[str(error)])
def edit_boxes(self): ''' Edit existing boxes in the database, and log the changes ''' try: box = Box.by_uuid(self.get_argument('uuid', '')) if box is None: raise ValidationError("Box does not exist") # Name name = self.get_argument('name', '') if name != box.name: if Box.by_name(name) is None: logging.info("Updated box name %s -> %s" % ( box.name, name, )) box.name = name else: raise ValidationError("Box name already exists") # Corporation corp = Corporation.by_uuid(self.get_argument('corporation_uuid')) if corp is not None and corp.id != box.corporation_id: logging.info("Updated %s's corporation %s -> %s" % ( box.name, box.corporation_id, corp.id, )) box.corporation_id = corp.id elif corp is None: raise ValidationError("Corporation does not exist") # Category cat = Category.by_uuid(self.get_argument('category_uuid')) if cat is not None and cat.id != box.category_id: logging.info("Updated %s's category %s -> %s" % ( box.name, box.category_id, cat.id, )) box.category_id = cat.id elif cat is None and cat != box.category_id: logging.info("Updated %s's category %s -> None" % ( box.name, box.category_id, )) box.category_id = None # System Type ostype = self.get_argument('operating_system') if ostype is not None and ostype != box.operating_system: logging.info("Updated %s's system type %s -> %s" % ( box.name, box.operating_system, ostype, )) box.operating_system = ostype # Description description = self.get_argument('description', '') if description != box._description: logging.info("Updated %s's description %s -> %s" % ( box.name, box.description, description, )) box.description = description # Difficulty difficulty = self.get_argument('difficulty', '') if difficulty != box.difficulty: logging.info("Updated %s's difficulty %s -> %s" % ( box.name, box.difficulty, difficulty, )) box.difficulty = difficulty # Avatar avatar_select = self.get_argument('box_avatar_select', '') if avatar_select and len(avatar_select) > 0: box._avatar = avatar_select elif 'avatar' in self.request.files: box.avatar = self.request.files['avatar'][0]['body'] self.dbsession.add(box) self.dbsession.commit() self.redirect("/admin/view/game_objects#%s" % box.uuid) except ValidationError as error: self.render("admin/view/game_objects.html", errors=[ str(error), ])
def edit_boxes(self): ''' Edit existing boxes in the database, and log the changes ''' try: box = Box.by_uuid(self.get_argument('uuid', '')) if box is None: raise ValidationError("Box does not exist") # Name name = self.get_argument('name', '') if name != box.name: if Box.by_name(name) is None: logging.info("Updated box name %s -> %s" % ( box.name, name, )) box.name = name else: raise ValidationError("Box name already exists") # Corporation corp = Corporation.by_uuid(self.get_argument('corporation_uuid')) if corp is not None and corp.id != box.corporation_id: logging.info("Updated %s's corporation %s -> %s" % ( box.name, box.corporation_id, corp.id, )) box.corporation_id = corp.id elif corp is None: raise ValidationError("Corporation does not exist") # Category cat = Category.by_uuid(self.get_argument('category_uuid')) if cat is not None and cat.id != box.category_id: logging.info("Updated %s's category %s -> %s" % ( box.name, box.category_id, cat.id, )) box.category_id = cat.id elif cat is None and cat != box.category_id: logging.info("Updated %s's category %s -> None" % ( box.name, box.category_id, )) box.category_id = None # System Type ostype = self.get_argument('operating_system') if ostype is not None and ostype != box.operating_system: logging.info("Updated %s's system type %s -> %s" % ( box.name, box.operating_system, ostype, )) box.operating_system = ostype # Description description = self.get_argument('description', '') if description != box._description: logging.info("Updated %s's description %s -> %s" % ( box.name, box.description, description, )) box.description = description # Difficulty difficulty = self.get_argument('difficulty', '') if difficulty != box.difficulty: logging.info("Updated %s's difficulty %s -> %s" % ( box.name, box.difficulty, difficulty, )) box.difficulty = difficulty # Flag submission type flag_submission_type = self.get_argument('flag_submission_type', '') if flag_submission_type is not None and flag_submission_type != box.flag_submission_type: logging.info("Updated %s's flag submission type %s -> %s" % ( box.name, box.flag_submission_type, flag_submission_type )) box.flag_submission_type = flag_submission_type # Avatar avatar_select = self.get_argument('box_avatar_select', '') if avatar_select and len(avatar_select) > 0: box._avatar = avatar_select elif 'avatar' in self.request.files: box.avatar = self.request.files['avatar'][0]['body'] self.dbsession.add(box) self.dbsession.commit() self.redirect("/admin/view/game_objects#%s" % box.uuid) except ValidationError as error: self.render("admin/view/game_objects.html", errors=[str(error), ])