From 50752c32fd9e3bcea382e059317a559804185138 Mon Sep 17 00:00:00 2001 From: Effie Date: Fri, 9 Jun 2023 16:16:47 +1000 Subject: [PATCH] develops the css to add song and motif boxes --- app.py | 24 +++++- reference_clips.ods | Bin 26474 -> 27797 bytes static/style.css | 173 +++++++++++++++++++++++++++++++++++++- templates/album.html | 2 +- templates/base.html | 6 +- templates/footer.html | 9 ++ templates/home.html | 7 +- templates/motif.html | 2 +- templates/motifindex.html | 43 ++++++---- templates/nav.html | 16 +--- templates/song.html | 8 +- templates/songindex.html | 31 +++++-- 12 files changed, 267 insertions(+), 54 deletions(-) create mode 100644 templates/footer.html diff --git a/app.py b/app.py index 4da3510..f471fb2 100644 --- a/app.py +++ b/app.py @@ -47,13 +47,17 @@ def songindex(): song_info = db.execute(''' select - song_id, album_id, track, song.name, song.name_jp + song_album.song_id, album_id, track, song.name, song.name_jp, count(clip.song_id) from song_album join song on song_album.song_id=song.id + left join + clip on clip.song_id=song.id + group by + song_album.song_id, album_id, track, song.name, song.name_jp order by album_id, track @@ -73,18 +77,30 @@ def motifindex(): category_info = db.execute(''' select - id, name + category.id, category.name from category + join + motif + on + category.id=motif.category + group by + category.id, category.name order by - id + count(category.id) desc ''').fetchall() motif_info = db.execute(''' select - id, name, category + id, name, category, count(clip.motif_id) from motif + left join + clip + on + clip.motif_id=motif.id + group by + id, name, category order by id ''').fetchall() diff --git a/reference_clips.ods b/reference_clips.ods index 6246d33d085f69ed4a34472231b03b2bf21f7796..9070e7b02137d933b6259a4d725c775ec7ee4968 100644 GIT binary patch delta 25760 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 Z&zS$F5(<0ozYa@?ybV1Twe8L#AHl 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

yC_t>TY&#Ez&B+O zQU9TRwn-qdMDpuTXY1OB<|Kv&-j@;03DD&`iN7SJC+DX1MbFXD#ycLNnBR}kNznc; zDgJ$ky--9vyEXeintOl^WxSU))4%;ZYq@{hV{6%eTLGK@k^^j{|H(ZzivN9{GM>Yh z<=_6_`X09bRsYzUGQQ=%kMG$E;QU35|AmjoGuyF0`78W`qsE)sanSsg{*(6f7l``5 z%g^{SJIa@T%lyCGr~fU1hIUVmqCf#z|L5WU2WcJ_{^x-U1v_VZjE08#>GdB=Qarmo b{l6RkXXoJkM+r2vr|}SbYOLcAe-Hj2KEz!M diff --git a/static/style.css b/static/style.css index c10a07b..025d43b 100644 --- a/static/style.css +++ b/static/style.css @@ -1,2 +1,171 @@ -body{max-width:50rem;margin-left:auto;margin-right:auto;} -nav{} \ No newline at end of file +/* body{ + max-width:50rem;margin-left:auto;margin-right:auto; +} */ + +body{ + margin: 0; +} + +header{ + background-color: lch(80% 25 79); + margin: 0; + border-style: outset; +} + +.top-buttons{ + display: flex; + padding-left: 0; + margin: 0; + padding: 2rem; + column-gap: 1rem; + +} +.top-buttons li{ + flex: auto; + border-style: outset; + list-style: none; + text-align: center; +} + +.top-buttons li:nth-child(2){ + flex: none; +} + +main{ + background-color: lch(80% 25 79); + max-width: 50rem; + margin-left: auto; + margin-right: auto; +} + +main ul{ + margin: 0; +} + +h1{ + margin: 0; +} + +h2{ + margin: 0; +} + +a{ + text-decoration: none; +} + +.album-list{ + display: flex; + flex-direction: column; + gap: 1rem; +} + +.album-box{ + gap: 1rem; +} + +.album-box h2{ + color: white; + border-style: solid; + border-color: lch(25% 40 45); + margin: 1rem; + margin-bottom: 0px; + position: sticky; + top: 0px; + background: lch(25% 40 45); +} + +.album-box ul{ + display: flex; + flex: auto; + flex-direction: column; + padding-left: 0; +} + +.song-box{ + list-style: none; + min-height: 1.5rem; + margin: 1rem; + margin-bottom: 0; + margin-left: 4rem; + background: lch(25% 40 45); + display: flex; + flex: auto; + flex-wrap: wrap; + justify-content: left; + column-gap: 1rem; + align-content: bottom; + white-space: nowrap; + overflow: hidden; +} + +.song-box span{ + color: white; + text-align: bottom; +} + +.track-name-jp{ + +} + +.clip-count{ + margin-left: auto; + min-width: 2rem; + text-align: right; +} + +.category-list{ + display: flex; + flex-wrap: wrap; + align-content: flex-start; + flex-basis: 51%; + gap: 1rem; +} + +.category-box{ + gap: 1rem; + margin-left: auto; + margin-right: auto; + width: 24rem; +} + +.category-box h2{ + color: white; + border-style: solid; + border-color: lch(25% 40 45); + margin: 1rem; + margin-bottom: 0px; + background: lch(25% 40 45); +} + +.category-box ul{ + display: flex; + flex: initial; + flex-direction: column; + padding-left: 0; +} + +.motif-box{ + list-style: none; + min-height: 1.5rem; + margin: 1rem; + margin-bottom: 0; + background: lch(25% 40 45); + display: flex; + flex: auto; + justify-content: right; +} + +.motif-box span{ + color: white; + vertical-align: middle; + +} + +.motif-name{ + margin: auto; +} + +.motif-count{ + +} \ No newline at end of file diff --git a/templates/album.html b/templates/album.html index 86d0853..52e42b6 100644 --- a/templates/album.html +++ b/templates/album.html @@ -1,4 +1,4 @@ -{% extends "nav.html" %} +{% extends "base.html" %} {% block title %}{{ album_info[0] }}{% endblock %} {% block content %} diff --git a/templates/base.html b/templates/base.html index cf2dc21..0d6ab30 100644 --- a/templates/base.html +++ b/templates/base.html @@ -2,7 +2,7 @@ - {% block title %}{% endblock %} - Eorzea Songbook + {% block title required %}{% endblock %} - Eorzea Songbook @@ -10,7 +10,9 @@ - {% block basecontent %}{% endblock %} + {% block nav %}{% include 'nav.html' %}{% endblock %} +

{% block content required %}{% endblock %}
+ {% block footer %}{% include 'footer.html' %}{% endblock %} diff --git a/templates/footer.html b/templates/footer.html new file mode 100644 index 0000000..c510daa --- /dev/null +++ b/templates/footer.html @@ -0,0 +1,9 @@ +{% block footer %} + +
+ +

The footer will be in here, when it's ready.

+ +
+ +{% endblock footer %} \ No newline at end of file diff --git a/templates/home.html b/templates/home.html index bf0111d..ba045b4 100644 --- a/templates/home.html +++ b/templates/home.html @@ -1,7 +1,7 @@ -{% extends "base.html" %} +{% extends 'base.html' %} {% block title %}Home{% endblock %} - -{% block basecontent %} +{% block nav %}{% endblock %} +{% block content %}

The Eorzea Songbook

@@ -9,4 +9,5 @@
View Motifs +{% block footer %}{% endblock %} {% endblock %} \ No newline at end of file diff --git a/templates/motif.html b/templates/motif.html index cb96ad7..c7e065c 100644 --- a/templates/motif.html +++ b/templates/motif.html @@ -1,4 +1,4 @@ -{% extends "nav.html" %} +{% extends "base.html" %} {% block title %}{{ name }}{% endblock %} diff --git a/templates/motifindex.html b/templates/motifindex.html index 119f4f5..d1caf66 100644 --- a/templates/motifindex.html +++ b/templates/motifindex.html @@ -1,22 +1,35 @@ -{% extends "nav.html" %} +{% extends 'base.html' %} {% block title %}Motif Index{% endblock %} {% block content %} - -{% for category_id, name in category_info %} -

{{ name }}

-
    - {% for motif_id, motif, category in motif_info if category == category_id %} -
  • {{ motif }}
  • - {% endfor %} -
+
+ {% for category_id, name in category_info %} +
+

{{ name }}

+ +
{% endfor %} -

Misc.

-
    -{% for motif_id, motif, category in motif_info if category == '' %} -
  • {{ motif }}
  • -{% endfor %} -
+
+

Misc.

+ +
+
{% endblock %} \ No newline at end of file diff --git a/templates/nav.html b/templates/nav.html index 131d284..f9dcd70 100644 --- a/templates/nav.html +++ b/templates/nav.html @@ -1,10 +1,8 @@ -{% extends "base.html" %} - -{% block basecontent %} +{% block navheader %}
-{% block content %}{% endblock %} - -
- -

The footer will be in here, when it's ready.

- -
- -{% endblock basecontent %} \ No newline at end of file +{% endblock %} \ No newline at end of file diff --git a/templates/song.html b/templates/song.html index 0d3bf7b..eb5288a 100644 --- a/templates/song.html +++ b/templates/song.html @@ -1,4 +1,4 @@ -{% extends "nav.html" %} +{% extends "base.html" %} {% block title %}{{ name }}{% endblock %} {% block content %} @@ -7,7 +7,7 @@ -

Artist:

+

Artist:

    {% for name, name_rm, credit in artist_info %}
  • {{ name_rm }} ({{ name }}): {{ credit }}
  • @@ -16,7 +16,7 @@ -

    Album:

    +

    Album:

      {% for album_id, track, album_name, album_code in album_info %}
    • {{ album_name }} #{{ track }}
    • @@ -25,7 +25,7 @@ -

      Clips:

      +

      Clips:

        {% for song_id, motif_id, motif in clip_info %}
      • diff --git a/templates/songindex.html b/templates/songindex.html index a84b5db..67aa4a5 100644 --- a/templates/songindex.html +++ b/templates/songindex.html @@ -1,15 +1,28 @@ -{% extends "nav.html" %} +{% extends 'base.html' %} + + + {% block title %}Song Index{% endblock %} {% block content %} - -{% for album_id, name, date in album_info %} -

        {{ name }}

        - -{% endfor %} + {% endblock %} \ No newline at end of file