Beispiel #1
0
def rules_race_create (request):
	form_data = h.ignore_request_params_fields(request.POST)
	form = forms.Race(form_data)
	if not form.validate():
		return form.errors

	rules_id = form.rules_id.data
	if not request.user.owned_rules(rules_id):
		request.response.status = 403
		return {'success': False}

	race = models.Race()
	race.rules_id = form.rules_id.data
	race.title = form.title.data
	race.skills = {}

	if form.skills.data:
		race_skills = {}

		for skill in form.skills.data:
			skill_id = skill['skill_id']
			mod = skill['mod']

			race_skills[skill_id] = mod

		race.skills = race_skills

	race.add()
	DBSession.flush()

	return {'success': True, 'result': race.as_dict()}
Beispiel #2
0
def rules_class_create (request):
	form_data = h.ignore_request_params_fields(request.POST)
	form = forms.CharacterClass(form_data)
	if not form.validate():
		return form.errors

	rules_id = form.rules_id.data
	if not request.user.owned_rules(rules_id):
		request.response.status = 403
		return {'success': False}

	char_class = models.CharacterClass()
	char_class.rules_id = form.rules_id.data
	char_class.title = form.title.data
	char_class.skills = {}

	if form.skills.data:
		class_skills = {}

		for skill in form.skills.data:
			skill_id = skill['skill_id'] # TODO: Title?
			mod = skill['mod']

			class_skills[skill_id] = mod

		char_class.skills = class_skills

	char_class.add()
	DBSession.flush()

	return {'success': True, 'result': char_class.as_dict()}
Beispiel #3
0
def rules_perk_create (request):
	form_data = h.ignore_request_params_fields(request.POST)
	form = forms.Perk(form_data)
	if not form.validate():
		return form.errors

	rules_id = form.rules_id.data
	if not request.user.owned_rules(rules_id):
		request.response.status = 403
		return {'success': False}

	perk = models.Perk()
	perk.rules_id = form.rules_id.data
	perk.title = form.title.data
	perk.description = form.description.data

	if form.skills.data:
		perk_skills = perk.skills or {}

		for skill in form.skills.data:
			skill_id = skill['skill_id'] # TODO: Title?
			mod = skill['mod']

			perk_skills[skill_id] = mod

		perk.skills = perk_skills

	perk.add()
	DBSession.flush()

	return {'success': True, 'perk_id': perk.id}