Newer
Older
"""
This file contains functionality to get data from the database.
"""
from app.core import db
""" Switches order between two slides. """
old_order = item1.order
new_order = item2.order
item2.order = -1
db.session.commit()
db.session.refresh(item2)
item1.order = new_order
db.session.commit()
db.session.refresh(item1)
item2.order = old_order
db.session.commit()
db.session.refresh(item2)
return item1
""" Edits position, size and content of the provided component. """
if x:
item.x = x
if y:
item.y = y
if w:
item.w = w
if h:
item.h = h
if data:
item.data = data
db.session.commit()
db.session.refresh(item)
return item
def slide(item, title=None, timer=None):
""" Edits the title and timer of the slide. """
if title:
item.title = title
if timer:
item.timer = timer
db.session.commit()
db.session.refresh(item)
return item
def team(item_team, name=None, competition_id=None):
""" Edits the name and competition of the team. """
if name:
item_team.name = name
if competition_id:
item_team.competition_id = competition_id
db.session.commit()
db.session.refresh(item_team)
return item_team
def competition(item, name=None, year=None, city_id=None):
""" Edits the name and year of the competition. """
if name:
item.name = name
if year:
item.year = year
if city_id:
item.city_id = city_id
db.session.commit()
db.session.refresh(item)
return item
def user(item, name=None, email=None, city_id=None, role_id=None):
""" Edits the name, email, city and role of the user. """
if name:
item.name = name.title()
if email:
item.email = email
if role_id:
item.role_id = role_id
db.session.commit()
db.session.refresh(item)
return item
def question(item_question, name=None, total_score=None, type_id=None, slide_id=None):
""" Edits the name, score, type and slide of the question. """
if name:
item_question.name = name
if total_score:
item_question.total_score = total_score
if type_id:
item_question.type_id = type_id
if slide_id:
item_question.slide_id = slide_id
db.session.commit()
db.session.refresh(item_question)
return item_question