complete overhaul to better site design with Bulma, renamed some routes

This commit is contained in:
Xevion
2020-03-09 18:01:55 -05:00
parent edd5b49dfe
commit 7a42620fbd
7 changed files with 73 additions and 66 deletions

View File

@@ -103,8 +103,8 @@ class Episode(db.Model):
def download(self, force=False): def download(self, force=False):
"""downloads data""" """downloads data"""
print(f'Downloading e{self.number}/s{self.season_id} from {self.link}')
if not self.downloaded or force: if not self.downloaded or force:
print(f'Downloading e{self.number}/s{self.season_id} from {self.link}')
data = requests.get(self.link).text data = requests.get(self.link).text
open(self.path, "w+", encoding="utf-8").write(data) open(self.path, "w+", encoding="utf-8").write(data)

View File

@@ -8,14 +8,13 @@ def index():
return render_template("view.html", seasons=Season.query.all()) return render_template("view.html", seasons=Season.query.all())
@app.route("/season/<season>/") @app.route("/view/<season>/")
def viewSeason(season): def viewSeason(season):
return render_template( return render_template(
"season.html", season=Season.query.filter_by(id=season).first_or_404() "season.html", season=Season.query.filter_by(id=season).first_or_404()
) )
@app.route("/view/<season>/<episode>/")
@app.route("/season/<season>/<episode>/")
def viewEpisode(season, episode): def viewEpisode(season, episode):
e = Episode.query.filter_by(season_id=season, number=episode).first_or_404() e = Episode.query.filter_by(season_id=season, number=episode).first_or_404()
if not e.built: if not e.built:
@@ -24,8 +23,14 @@ def viewEpisode(season, episode):
return render_template("episode.html", episode=e) return render_template("episode.html", episode=e)
@app.route("/season/<season>/<episode>/rebuild") @app.route("/rebuild/<season>/<episode>/")
def rebuildEpisode(season, episode): def rebuildEpisode(season, episode):
e = Episode.query.filter_by(season_id=season, number=episode).first_or_404() e = Episode.query.filter_by(season_id=season, number=episode).first_or_404()
e.rebuild() e.rebuild()
return redirect(url_for("viewEpisode", season=season, episode=episode)) return redirect(url_for("viewEpisode", season=season, episode=episode))
@app.route("/redownload/<season>/<episode>/")
def redownloadEpisode(season, episode):
e = Episode.query.filter_by(season_id=season, number=episode).first_or_404()
e.download(force=True)
return redirect(url_for("viewEpisode", season=season, episode=episode))

View File

@@ -3,14 +3,12 @@
<head> <head>
<title>The Office Quotes{% if title %} - {{ title }}{% endif %}</title> <title>The Office Quotes{% if title %} - {{ title }}{% endif %}</title>
{% block head %} {% block head %}
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.8.0/css/bulma.min.css" integrity="sha256-D9M5yrVDqFlla7nlELDaYZIpXfFWDytQtiV+TaH6F1I=" crossorigin="anonymous">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/milligram/1.3.0/milligram.css">
{% endblock head %} {% endblock head %}
</head> </head>
<body> <body>
{% block body %} {% block body %}
{% endblock body %} {% endblock body %}
</body> </body>

View File

@@ -2,41 +2,37 @@
{% block head %} {% block head %}
{{ super() }} {{ super() }}
<style> <style>
.card { .tab {margin-left: 2rem;}
background-color: white; </style>
border-radius: 0.25rem;
box-shadow: 0 1px 2px 0px rgba(0, 0, 0, 0.25);
display: flex;
flex-direction: column;
overflow: hidden;
position: relative;
min-height: 180px;
padding: 2.4rem 2.4rem 1.2rem 2.4rem;
border: solid transparent;
border-bottom-color: transparent;
border-bottom-color: rgb(38, 43, 44);
margin-left: auto;
margin-right: auto;
margin-bottom: 4rem;
}
</style>
{% endblock head %} {% endblock head %}
{% block body %} {% block body %}
{{ super() }} {{ super() }}
<div class="container" style="text-align: center; margin-top: 30rem;"> <div class="level" style="margin-top: 3rem; justify-content: center;">
<div class="row"> <h1 class="title">The Office Quotes</h1>
<div class="column column-25"> <br>
<div class="card"> <h6 class="subtitle is-6" style="padding-top: 2rem;">Source for all The Office Quotes</h6>
Test </div>
</div> <div class="columns is-centered">
</div> <div class="column is-4"></div>
<div class="column column-40"> {# Site Directory #}
<div class="card"> <div class="column is-2 is-narrow">
{% block content %} <div class="box">
{% endblock content %} {# List of Seasons/Episodes #}
</div> {% for season in seasons %}
</div> <b><a href="{{ url_for("viewSeason", season=season.id) }}" >Season {{ season.id }}</a></b><br>
{# <div class="column column-20"></div>#} {% for episode in season.episodes %}
<a class="tab" href="{{ url_for("viewEpisode", season=season.id, episode=episode.number) }}" > e{{ episode.number }} - "Episode Name"</a><br>
{% endfor %}
{% endfor %}
</div>
</div>
{# Main Body of Content #}
<div class="column is-6">
<div class="box">
{% block content %}
{% endblock content%}
</div>
</div>
<div class="column is-3"></div>
</div> </div>
</div>
{% endblock body %} {% endblock body %}

View File

@@ -6,22 +6,34 @@
text-align: left; text-align: left;
color: black; color: black;
} }
.section {
padding: 1rem 1rem 1rem 2rem;
}
</style> </style>
{% endblock head %} {% endblock head %}
{% block content %} {% block content %}
<a href="{{ url_for('viewSeason', season=episode.season_id) }}">Go to Season {{ episode.season_id }}</a> {{ super() }}section
<br> <div class="field is-grouped" style="justify-content: center;">
<a href="{{ url_for('rebuildEpisode', season=episode.season_id, episode=episode.number) }}">Rebuild Episode</a> <p class="control is-link">
<br> <a class="button" href="{{ url_for('viewSeason', season=episode.season_id) }}">Go to Season {{ episode.season_id }}</a>
<br> </p>
{% for section in episode.sections %} <p class="control is-link">
<div style="padding: 2rem 1rem 1rem 2rem;"> <a class="button" href="{{ url_for('rebuildEpisode', season=episode.season_id, episode=episode.number) }}">Rebuild Episode</a>
<p class="quote"> </p>
{% for quote in section.quotes %} <p class="control is-link">
<span class="quote"><b>{{ quote.speaker }}:</b> {{ quote.text }}</span> <a class="button" href="{{ url_for('redownloadEpisode', season=episode.season_id, episode=episode.number) }}">Redownload Episode</a>
<br> </p>
{% endfor %} </div>
</p>
</div> {% for section in episode.sections %}
{% endfor %} <div class="section">
<p class="quote">
{% for quote in section.quotes %}
<span class="quote"><b>{{ quote.speaker }}:</b> {{ quote.text }}</span>
<br>
{% endfor %}
</p>
</div>
{% endfor %}
{% endblock content %} {% endblock content %}

View File

@@ -8,8 +8,8 @@
Season {{ season.id }} Season {{ season.id }}
<br> <br>
{% for episode in season.episodes %} {% for episode in season.episodes %}
<a href="/season/{{ season.id }}/{{ episode.number }}/" >Episode {{ episode.number }}</a> <a href="{{ url_for("viewEpisode", season=season.id, episode=episode.number) }}" >Episode {{ episode.number }}</a>
<br> <br>
{% endfor %} {% endfor %}
{% endblock content %} {% endblock content %}

View File

@@ -1,8 +1,4 @@
{% extends 'content.html' %} {% extends 'content.html' %}
{% block content %} {% block content %}
{{ super() }} {{ super() }}
{% for season in seasons %} {% endblock content %}
<a href="/season/{{ season.id }}/" >Season {{ season.id }}</a>
<br>
{% endfor %}
{% endblock content %}