diff --git a/server/app/apis/competitions.py b/server/app/apis/competitions.py index b2c0799928e577805f3d5797982d850a8ace3be9..e945626c0bbd0b7f8a6eee9b871f854b6131e143 100644 --- a/server/app/apis/competitions.py +++ b/server/app/apis/competitions.py @@ -24,10 +24,9 @@ class CompetitionsList(Resource): name = args.get("name") city_id = args.get("city_id") year = args.get("year") - style_id = args.get("style_id") # Add competition - item = dbc.add.default(Competition(name, year, style_id, city_id)) + item = dbc.add.default(Competition(name, year, city_id)) # Add default slide item_slide = dbc.add.slide(item) @@ -52,8 +51,7 @@ class Competitions(Resource): name = args.get("name") year = args.get("year") city_id = args.get("city_id") - style_id = args.get("style_id") - item = dbc.edit.competition(item, name, year, city_id, style_id) + item = dbc.edit.competition(item, name, year, city_id) return item_response(schema.dump(item)) @jwt_required @@ -71,11 +69,10 @@ class CompetitionSearch(Resource): name = args.get("name") year = args.get("year") city_id = args.get("city_id") - style_id = args.get("style_id") page = args.get("page", 0) page_size = args.get("page_size", 15) order = args.get("order", 1) order_by = args.get("order_by") - items, total = dbc.get.search_competitions(name, year, city_id, style_id, page, page_size, order, order_by) + items, total = dbc.get.search_competitions(name, year, city_id, page, page_size, order, order_by) return list_response(list_schema.dump(items), total) diff --git a/server/app/core/controller/edit.py b/server/app/core/controller/edit.py index 9373ebc794f0427982010e27b4f8e9931816f8c9..c8b1633bfcf15854f17df0f5dcbc5152f1216ef5 100644 --- a/server/app/core/controller/edit.py +++ b/server/app/core/controller/edit.py @@ -31,15 +31,13 @@ def slide(item, title=None, timer=None): return item -def competition(item, name=None, year=None, city_id=None, style_id=None): +def competition(item, name=None, year=None, city_id=None): if name: item.name = name if year: item.year = year if city_id: item.city_id = city_id - if style_id: - item.style_id = style_id db.session.commit() db.session.refresh(item) diff --git a/server/app/core/controller/get.py b/server/app/core/controller/get.py index d5b5978a2d4bb56a4f4d3054fcba0a1f8c4ee1c6..7c3842d9041bbe4130b9e0a7201c2cfe748d3cf4 100644 --- a/server/app/core/controller/get.py +++ b/server/app/core/controller/get.py @@ -43,9 +43,7 @@ def search_user(email=None, name=None, city_id=None, role_id=None, page=0, page_ return _search(query, order_column, page, page_size, order) -def search_competitions( - name=None, year=None, city_id=None, style_id=None, page=0, page_size=15, order=1, order_by=None -): +def search_competitions(name=None, year=None, city_id=None, page=0, page_size=15, order=1, order_by=None): query = Competition.query if name: query = query.filter(Competition.name.like(f"%{name}%")) @@ -53,8 +51,6 @@ def search_competitions( query = query.filter(Competition.year == year) if city_id: query = query.filter(Competition.city_id == city_id) - if style_id: - query = query.filter(Competition.style_id == style_id) order_column = Competition.year # Default order_by if order_by: diff --git a/server/app/core/models.py b/server/app/core/models.py index 55ea1b1cebf1dff0cf0ad94f1cf61b44e0b56e0a..8622a17e601de0bc58f0ad5a3dca21e132a4c3d1 100644 --- a/server/app/core/models.py +++ b/server/app/core/models.py @@ -77,43 +77,25 @@ class Media(db.Model): type_id = db.Column(db.Integer, db.ForeignKey("media_type.id"), nullable=False) upload_by_id = db.Column(db.Integer, db.ForeignKey("user.id"), nullable=False) - styles = db.relationship("Style", backref="bg_image") - def __init__(self, filename, type_id, upload_by_id): self.filename = filename self.type_id = type_id self.upload_by_id = upload_by_id -class Style(db.Model): - id = db.Column(db.Integer, primary_key=True) - name = db.Column(db.String(STRING_SIZE), unique=True) - css = db.Column(db.Text, nullable=False) - bg_image_id = db.Column(db.Integer, db.ForeignKey("media.id"), nullable=True) - - competition = db.relationship("Competition", backref="style") - - def __init__(self, name, css, bg_image_id=None): - self.name = name - self.css = css - self.bg_image_id = bg_image_id - - class Competition(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(STRING_SIZE), unique=True) year = db.Column(db.Integer, nullable=False, default=2020) - style_id = db.Column(db.Integer, db.ForeignKey("style.id"), nullable=False) city_id = db.Column(db.Integer, db.ForeignKey("city.id"), nullable=False) slides = db.relationship("Slide", backref="competition") teams = db.relationship("Team", backref="competition") - def __init__(self, name, year, style_id, city_id): + def __init__(self, name, year, city_id): self.name = name self.year = year - self.style_id = style_id self.city_id = city_id diff --git a/server/app/core/parsers.py b/server/app/core/parsers.py index 6f287cb271a5984c3c5ba5f0e8b49a38ff7196c5..d4aaf0ec1dc4e1144e073e02908a0c2bc5eb3a7a 100644 --- a/server/app/core/parsers.py +++ b/server/app/core/parsers.py @@ -38,7 +38,6 @@ competition_parser = reqparse.RequestParser() competition_parser.add_argument("name", type=str) competition_parser.add_argument("year", type=int) competition_parser.add_argument("city_id", type=int) -competition_parser.add_argument("style_id", type=int) ###SEARCH_COMPETITOIN#### @@ -46,7 +45,6 @@ competition_search_parser = search_parser.copy() competition_search_parser.add_argument("name", type=str, default=None, location="args") competition_search_parser.add_argument("year", type=str, default=None, location="args") competition_search_parser.add_argument("city_id", type=int, default=None, location="args") -competition_search_parser.add_argument("style_id", type=int, default=None, location="args") ###SLIDER_PARSER#### diff --git a/server/app/core/rich_schemas.py b/server/app/core/rich_schemas.py index 56aec85e5f8f93eaf663d8a374738b0fee478fd8..f951048812cc8c190f49eabf5cfbcc75a5ec6827 100644 --- a/server/app/core/rich_schemas.py +++ b/server/app/core/rich_schemas.py @@ -31,7 +31,6 @@ class CompetitionSchemaRich(RichSchema): name = ma.auto_field() year = ma.auto_field() slides = fields.Nested(schemas.SlideSchema, many=True) - style = fields.Nested(schemas.RoleSchema, many=False) city = fields.Nested(schemas.CitySchema, many=False) diff --git a/server/app/core/schemas.py b/server/app/core/schemas.py index 9962479fe3bcd241bcf77a5ed8b389b4e55ec19e..0450034ae28edf65f1559ebff7a5962336f1a954 100644 --- a/server/app/core/schemas.py +++ b/server/app/core/schemas.py @@ -52,16 +52,6 @@ class MediaSchema(BaseSchema): upload_by_id = ma.auto_field() -class StyleSchema(BaseSchema): - class Meta(BaseSchema.Meta): - model = models.Style - - id = ma.auto_field() - name = ma.auto_field() - css = ma.auto_field() - bg_image = fields.Nested(MediaSchema, many=False) - - class SlideSchema(BaseSchema): class Meta(BaseSchema.Meta): model = models.Slide diff --git a/server/populate.py b/server/populate.py index 1910ae8f12b03d09f79440cbb9c63cdf83605d89..4dd1f532849fb5262120ab0cebbbc8b333a91512 100644 --- a/server/populate.py +++ b/server/populate.py @@ -1,6 +1,6 @@ import app.core.controller as dbc from app import create_app, db -from app.core.models import City, MediaType, QuestionType, Role, Style, User +from app.core.models import City, MediaType, QuestionType, Role, User def _add_items(): @@ -30,9 +30,6 @@ def _add_items(): db.session.add(City(item)) db.session.commit() - # Add deafult style - db.session.add(Style("Main Style", "")) - # Commit changes to db db.session.commit() diff --git a/server/tests/test_app.py b/server/tests/test_app.py index 383cb574b5b3ad56def838bb169cdf761bd6bf59..e4e0f2905af51a962546d2cfadf3195f3a17cd13 100644 --- a/server/tests/test_app.py +++ b/server/tests/test_app.py @@ -43,7 +43,7 @@ def test_competition(client): headers = {"Authorization": "Bearer " + body["access_token"]} # Create competition - data = {"name": "c1", "year": 2020, "city_id": 1, "style_id": 1} + data = {"name": "c1", "year": 2020, "city_id": 1} response, body = post(client, "/api/competitions", data, headers=headers) assert response.status_code == 200 assert body["name"] == "c1" diff --git a/server/tests/test_db.py b/server/tests/test_db.py index 46bd599657368be76ea28d4009332583ef8b814c..4d32b7392cde16347163a04e5404777032bd0642 100644 --- a/server/tests/test_db.py +++ b/server/tests/test_db.py @@ -1,4 +1,4 @@ -from app.core.models import City, Competition, Media, MediaType, Question, QuestionType, Role, Slide, Style, Team, User +from app.core.models import City, Competition, Media, MediaType, Question, QuestionType, Role, Slide, Team, User from tests import app, client, db from tests.test_helpers import add_default_values, assert_exists, assert_insert_fail @@ -21,7 +21,7 @@ def test_user(client): assert len(item_city.users) == 1 and item_city.users[0].id == item_user.id -def test_media_style(client): +def test_media(client): add_default_values() item_user = User.query.filter_by(email="test@test.se").first() @@ -38,19 +38,6 @@ def test_media_style(client): assert len(item_user.media) == 1 assert item_media.upload_by.email == "test@test.se" - # Add style - db.session.add(Style("template", "hej", item_media.id)) - db.session.commit() - - # Assert style - item_style = Style.query.filter_by(name="template").first() - assert item_style is not None - assert len(item_media.styles) == 1 - assert item_style.bg_image.filename == "bild.png" - - # Assert lazy loading - assert item_user.media[0].styles[0].name == "template" - def test_question(client): add_default_values() @@ -64,22 +51,16 @@ def test_question(client): db.session.commit() item_media = Media.query.filter_by(filename="bild.png").first() - # Add style - db.session.add(Style("template", "hej", item_media.id)) - db.session.commit() - item_style = Style.query.filter_by(name="template").first() - # Add competition item_city = City.query.filter_by(name="Linköping").first() - db.session.add(Competition("teknik8", 2020, item_style.id, item_city.id)) - db.session.add(Competition("teknik9", 2020, item_style.id, item_city.id)) + db.session.add(Competition("teknik8", 2020, item_city.id)) + db.session.add(Competition("teknik9", 2020, item_city.id)) db.session.commit() item_competition = Competition.query.filter_by(name="teknik8").first() item_competition_2 = Competition.query.filter_by(name="teknik9").first() assert item_competition is not None assert item_competition.id == 1 - assert item_competition.style.name == "template" assert item_competition.city.name == "Linköping" # Add teams diff --git a/server/tests/test_helpers.py b/server/tests/test_helpers.py index dd78fc8a0d2ab2180a485a87746fe1104c1ca27e..a10254ab080570c926677a8d3347107346d26a4f 100644 --- a/server/tests/test_helpers.py +++ b/server/tests/test_helpers.py @@ -2,7 +2,7 @@ import json import app.core.controller as dbc from app.core import db -from app.core.models import City, MediaType, QuestionType, Role, Style, User +from app.core.models import City, MediaType, QuestionType, Role, User def add_default_values(): @@ -27,9 +27,6 @@ def add_default_values(): for item in cities: db.session.add(City(item)) - # Add deafult style - db.session.add(Style("Main Style", "")) - # Commit changes to db db.session.commit()