From 6d579e90723caf64ec65e566b5d79d44548fd42f Mon Sep 17 00:00:00 2001 From: Jarmil <jarmil.halamicek@seznam.cz> Date: Thu, 3 Sep 2020 10:30:40 +0200 Subject: [PATCH] Uniweb: Basic uniweb with flexible text page --- README.md | 1 + majak/settings/base.py | 1 + shared/static/shared/img/logo_black.svg | 39 + shared/static/shared/img/logo_white.svg | 39 + uniweb/__init__.py | 0 uniweb/apps.py | 5 + uniweb/migrations/0001_initial.py | 258 ++++ uniweb/migrations/__init__.py | 0 uniweb/models.py | 158 +++ uniweb/static/uniweb/assets/css/icons.css | 63 + uniweb/static/uniweb/assets/css/style.css | 1195 +++++++++++++++++ uniweb/static/uniweb/icons/icomoon.eot | Bin 0 -> 3384 bytes uniweb/static/uniweb/icons/icomoon.svg | 22 + uniweb/static/uniweb/icons/icomoon.ttf | Bin 0 -> 3220 bytes uniweb/static/uniweb/icons/icomoon.woff | Bin 0 -> 3296 bytes uniweb/templates/uniweb/base.html | 107 ++ uniweb/templates/uniweb/snippet_sections.html | 17 + .../uniweb/uniweb_flexible_page.html | 13 + uniweb/templates/uniweb/uniweb_home_page.html | 14 + 19 files changed, 1932 insertions(+) create mode 100644 shared/static/shared/img/logo_black.svg create mode 100644 shared/static/shared/img/logo_white.svg create mode 100644 uniweb/__init__.py create mode 100644 uniweb/apps.py create mode 100644 uniweb/migrations/0001_initial.py create mode 100644 uniweb/migrations/__init__.py create mode 100644 uniweb/models.py create mode 100644 uniweb/static/uniweb/assets/css/icons.css create mode 100644 uniweb/static/uniweb/assets/css/style.css create mode 100644 uniweb/static/uniweb/icons/icomoon.eot create mode 100644 uniweb/static/uniweb/icons/icomoon.svg create mode 100644 uniweb/static/uniweb/icons/icomoon.ttf create mode 100644 uniweb/static/uniweb/icons/icomoon.woff create mode 100644 uniweb/templates/uniweb/base.html create mode 100644 uniweb/templates/uniweb/snippet_sections.html create mode 100644 uniweb/templates/uniweb/uniweb_flexible_page.html create mode 100644 uniweb/templates/uniweb/uniweb_home_page.html diff --git a/README.md b/README.md index e04c7c4f..a54ad214 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,7 @@ Rozšíření která používáme: ├── senat_campaign = app na weby kandidátů na senátory ├── districts = app na web kraje.pirati.cz ├── program2021 = app na prezentaci programu 2021 + ├── uniweb = app na univerzalni webove stranky ... ├── majak = Django projekt s konfigurací Majáku ├── shared = app se sdílenými static soubory a templaty pro weby diff --git a/majak/settings/base.py b/majak/settings/base.py index 017f3f11..1c615875 100644 --- a/majak/settings/base.py +++ b/majak/settings/base.py @@ -37,6 +37,7 @@ INSTALLED_APPS = [ "senat_campaign", "home", "program2021", + "uniweb", "shared", "calendar_utils", "users", diff --git a/shared/static/shared/img/logo_black.svg b/shared/static/shared/img/logo_black.svg new file mode 100644 index 00000000..bb08d45f --- /dev/null +++ b/shared/static/shared/img/logo_black.svg @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + id="Vrstva_1" + viewBox="0 0 302.3622 302.36221" + version="1.1" + width="80mm" + height="80mm"> + <metadata + id="metadata1114"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs1112" /> + <style + id="style1101"> + .st0{fill:none} + </style> + <path + d="M 151.52548,2.4e-7 C 110.8891,2.4e-7 73.00773,15.8413 44.768891,44.080139 15.841299,72.318978 -4.1e-7,110.8891 -4.1e-7,150.83673 c 0,40.63637 15.84129941,78.51774 44.08013841,107.44533 28.927592,28.23884 66.808962,44.08014 106.756582,44.08014 40.63638,0 78.51775,-15.8413 106.75659,-44.08014 28.92759,-28.23883 44.08014,-66.80896 44.08014,-106.75658 0,-40.63638 -15.8413,-78.51775 -44.08014,-106.756589 C 230.04322,15.152548 192.16186,2.4000002e-7 151.52548,2.4000002e-7 M 151.52548,287.89841 c -75.762742,0 -137.061685,-61.29895 -137.061685,-137.06168 0,-75.762743 61.298943,-137.061686 137.061685,-137.061686 75.76274,0 137.06168,61.298943 137.06168,137.061686 0,75.76273 -61.29894,137.06168 -137.06168,137.06168" + id="path1103" + style="stroke-width:6.88752" /> + <path + d="M 106.06783,61.298943 V 39.947626 H 92.981543 v 24.795078 c -8.953779,2.755009 -14.463796,5.510018 -13.086292,7.576274 2.755009,-0.688752 7.576274,-1.377504 13.086292,-0.688752 V 198.36063 c -13.775044,26.17258 6.198769,66.80896 6.198769,66.80896 0,0 -14.463796,-43.39139 17.907558,-64.05396 29.61634,-18.5963 132.92917,-10.33128 132.24042,-68.18646 C 248.63953,50.967661 153.59173,50.967661 106.06783,61.298943 m 42.01389,79.895257 c -4.82127,22.04006 -28.23884,33.0601 -42.70264,42.70263 V 73.00773 c 24.10633,5.510018 52.34517,24.106326 42.70264,68.18647" + id="path1105" + style="stroke-width:6.88752" /> +</svg> diff --git a/shared/static/shared/img/logo_white.svg b/shared/static/shared/img/logo_white.svg new file mode 100644 index 00000000..5b73cdcb --- /dev/null +++ b/shared/static/shared/img/logo_white.svg @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + id="Vrstva_1" + viewBox="0 0 302.3622 302.36221" + version="1.1" + width="80mm" + height="80mm"> + <metadata + id="metadata1114"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs1112" /> + <style + id="style1101"> + .st0{fill:none} + </style> + <path + d="M 151.52548,2.4e-7 C 110.8891,2.4e-7 73.00773,15.8413 44.768891,44.080139 15.841299,72.318978 -4.1e-7,110.8891 -4.1e-7,150.83673 c 0,40.63637 15.84129941,78.51774 44.08013841,107.44533 28.927592,28.23884 66.808962,44.08014 106.756582,44.08014 40.63638,0 78.51775,-15.8413 106.75659,-44.08014 28.92759,-28.23883 44.08014,-66.80896 44.08014,-106.75658 0,-40.63638 -15.8413,-78.51775 -44.08014,-106.756589 C 230.04322,15.152548 192.16186,2.4000002e-7 151.52548,2.4000002e-7 M 151.52548,287.89841 c -75.762742,0 -137.061685,-61.29895 -137.061685,-137.06168 0,-75.762743 61.298943,-137.061686 137.061685,-137.061686 75.76274,0 137.06168,61.298943 137.06168,137.061686 0,75.76273 -61.29894,137.06168 -137.06168,137.06168" + id="path1103" + style="stroke-width:6.88752;fill:#ffffff" /> + <path + d="M 106.06783,61.298943 V 39.947626 H 92.981543 v 24.795078 c -8.953779,2.755009 -14.463796,5.510018 -13.086292,7.576274 2.755009,-0.688752 7.576274,-1.377504 13.086292,-0.688752 V 198.36063 c -13.775044,26.17258 6.198769,66.80896 6.198769,66.80896 0,0 -14.463796,-43.39139 17.907558,-64.05396 29.61634,-18.5963 132.92917,-10.33128 132.24042,-68.18646 C 248.63953,50.967661 153.59173,50.967661 106.06783,61.298943 m 42.01389,79.895257 c -4.82127,22.04006 -28.23884,33.0601 -42.70264,42.70263 V 73.00773 c 24.10633,5.510018 52.34517,24.106326 42.70264,68.18647" + id="path1105" + style="stroke-width:6.88752;fill:#ffffff" /> +</svg> diff --git a/uniweb/__init__.py b/uniweb/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/uniweb/apps.py b/uniweb/apps.py new file mode 100644 index 00000000..04014c2f --- /dev/null +++ b/uniweb/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class UniwebConfig(AppConfig): + name = "uniweb" diff --git a/uniweb/migrations/0001_initial.py b/uniweb/migrations/0001_initial.py new file mode 100644 index 00000000..a66edfeb --- /dev/null +++ b/uniweb/migrations/0001_initial.py @@ -0,0 +1,258 @@ +# Generated by Django 3.1.1 on 2020-09-08 21:05 + +import django.db.models.deletion +import wagtail.core.blocks +import wagtail.core.fields +import wagtail.images.blocks +import wagtailmetadata.models +from django.db import migrations, models + +import uniweb.models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ("wagtailcore", "0052_pagelogentry"), + ("wagtailimages", "0022_uploadedimage"), + ] + + operations = [ + migrations.CreateModel( + name="UniwebHomePage", + fields=[ + ( + "page_ptr", + models.OneToOneField( + auto_created=True, + on_delete=django.db.models.deletion.CASCADE, + parent_link=True, + primary_key=True, + serialize=False, + to="wagtailcore.page", + ), + ), + ( + "content", + wagtail.core.fields.StreamField( + [ + ( + "text_section", + wagtail.core.blocks.StructBlock( + [ + ( + "title", + wagtail.core.blocks.CharBlock( + label="nadpis", required=False + ), + ), + ( + "text", + wagtail.core.blocks.RichTextBlock( + features=[ + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + ], + label="text", + ), + ), + ] + ), + ), + ( + "gallery_section", + wagtail.core.blocks.StructBlock( + [ + ( + "title", + wagtail.core.blocks.CharBlock( + label="nadpis", required=False + ), + ), + ( + "images", + wagtail.core.blocks.ListBlock( + wagtail.images.blocks.ImageChooserBlock( + label="obrázek" + ) + ), + ), + ] + ), + ), + ], + blank=True, + verbose_name="obsah stránky", + ), + ), + ( + "matomo_id", + models.IntegerField( + blank=True, + null=True, + verbose_name="Matomo ID pro sledování návštěvnosti", + ), + ), + ( + "top_menu", + wagtail.core.fields.StreamField( + [ + ( + "item", + wagtail.core.blocks.StructBlock( + [ + ( + "name", + wagtail.core.blocks.CharBlock( + label="název" + ), + ), + ( + "page", + wagtail.core.blocks.PageChooserBlock( + label="stránka" + ), + ), + ] + ), + ) + ], + blank=True, + verbose_name="horní menu", + ), + ), + ( + "search_image", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + related_name="+", + to="wagtailimages.image", + verbose_name="Search image", + ), + ), + ], + options={"verbose_name": "Univerzální web",}, + bases=( + wagtailmetadata.models.MetadataMixin, + "wagtailcore.page", + models.Model, + ), + ), + migrations.CreateModel( + name="UniwebFlexiblePage", + fields=[ + ( + "page_ptr", + models.OneToOneField( + auto_created=True, + on_delete=django.db.models.deletion.CASCADE, + parent_link=True, + primary_key=True, + serialize=False, + to="wagtailcore.page", + ), + ), + ( + "content", + wagtail.core.fields.StreamField( + [ + ( + "text_section", + wagtail.core.blocks.StructBlock( + [ + ( + "title", + wagtail.core.blocks.CharBlock( + label="nadpis", required=False + ), + ), + ( + "text", + wagtail.core.blocks.RichTextBlock( + features=[ + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + ], + label="text", + ), + ), + ] + ), + ), + ( + "gallery_section", + wagtail.core.blocks.StructBlock( + [ + ( + "title", + wagtail.core.blocks.CharBlock( + label="nadpis", required=False + ), + ), + ( + "images", + wagtail.core.blocks.ListBlock( + wagtail.images.blocks.ImageChooserBlock( + label="obrázek" + ) + ), + ), + ] + ), + ), + ], + blank=True, + verbose_name="obsah stránky", + ), + ), + ( + "search_image", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + related_name="+", + to="wagtailimages.image", + verbose_name="Search image", + ), + ), + ], + options={"verbose_name": "Flexibilní stránka",}, + bases=( + "wagtailcore.page", + uniweb.models.SubpageMixin, + wagtailmetadata.models.MetadataMixin, + models.Model, + ), + ), + ] diff --git a/uniweb/migrations/__init__.py b/uniweb/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/uniweb/models.py b/uniweb/models.py new file mode 100644 index 00000000..c27f8884 --- /dev/null +++ b/uniweb/models.py @@ -0,0 +1,158 @@ +from django.db import models +from django.utils.translation import gettext_lazy +from wagtail.admin.edit_handlers import ( + FieldPanel, + HelpPanel, + MultiFieldPanel, + StreamFieldPanel, +) +from wagtail.core import blocks +from wagtail.core.fields import StreamField +from wagtail.core.models import Page +from wagtail.images.edit_handlers import ImageChooserPanel +from wagtailmetadata.models import MetadataPageMixin + +from tuning import help + +RICH_TEXT_FEATURES = [ + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", +] + + +class TextSectionBlock(blocks.StructBlock): + title = blocks.CharBlock(label="nadpis", required=False) + text = blocks.RichTextBlock(label="text", features=RICH_TEXT_FEATURES) + + class Meta: + label = "textová sekce" + + +class MenuItemBlock(blocks.StructBlock): + name = blocks.CharBlock(label="název") + page = blocks.PageChooserBlock(label="stránka") + + class Meta: + label = "stránka" + + +class SubpageMixin: + """Must be used in class definition before MetadataPageMixin!""" + + @property + def root_page(self): + if not hasattr(self, "_root_page"): + self._root_page = self.get_ancestors().type(UniwebHomePage).specific().get() + return self._root_page + + def get_meta_image(self): + return self.search_image or self.root_page.get_meta_image() + + +class UniwebHomePage(MetadataPageMixin, Page): + ### FIELDS + + content = StreamField( + [("text_section", TextSectionBlock()),], + verbose_name="Obsah stránky", + blank=True, + ) + # settings + matomo_id = models.IntegerField( + "Matomo ID pro sledování návštěvnosti", blank=True, null=True + ) + top_menu = StreamField( + [("item", MenuItemBlock())], verbose_name="horní menu", blank=True, + ) + + ### PANELS + + content_panels = Page.content_panels + [ + StreamFieldPanel("content"), + ] + + promote_panels = [ + MultiFieldPanel( + [ + FieldPanel("seo_title"), + FieldPanel("search_description"), + ImageChooserPanel("search_image"), + HelpPanel(help.build(help.IMPORTANT_TITLE)), + ], + gettext_lazy("Common page configuration"), + ), + ] + + settings_panels = [ + FieldPanel("matomo_id"), + StreamFieldPanel("top_menu"), + ] + + ### RELATIONS + + subpage_types = [ + "uniweb.UniwebFlexiblePage", + ] + + ### OTHERS + + class Meta: + verbose_name = "Univerzální web" + + @property + def root_page(self): + return self + + +class UniwebFlexiblePage(Page, SubpageMixin, MetadataPageMixin): + ### FIELDS + + content = StreamField( + [("text_section", TextSectionBlock()),], + verbose_name="Obsah stránky", + blank=True, + ) + + ### PANELS + + promote_panels = [ + MultiFieldPanel( + [ + FieldPanel("slug"), + FieldPanel("seo_title"), + FieldPanel("search_description"), + ImageChooserPanel("search_image"), + HelpPanel(help.build(help.NO_SEO_TITLE, help.NO_SEARCH_IMAGE)), + ], + gettext_lazy("Common page configuration"), + ), + ] + + content_panels = Page.content_panels + [ + StreamFieldPanel("content"), + ] + + settings_panels = [] + + ### RELATIONS + + parent_page_types = ["uniweb.UniwebHomePage"] + subpage_types = [] + + ### OTHERS + + class Meta: + verbose_name = "Flexibilní stránka" diff --git a/uniweb/static/uniweb/assets/css/icons.css b/uniweb/static/uniweb/assets/css/icons.css new file mode 100644 index 00000000..7218ce4b --- /dev/null +++ b/uniweb/static/uniweb/assets/css/icons.css @@ -0,0 +1,63 @@ +@font-face { + font-family: 'icomoon'; + src: url('../../icons/icomoon.eot?qfo5nx'); + src: url('../../icons/icomoon.eot?qfo5nx#iefix') format('embedded-opentype'), + url('../../icons/icomoon.ttf?qfo5nx') format('truetype'), + url('../../icons/icomoon.woff?qfo5nx') format('woff'), + url('../../icons/icomoon.svg?qfo5nx#icomoon') format('svg'); + font-weight: normal; + font-style: normal; + font-display: block; +} + +i { + /* use !important to prevent issues with browser extensions that change fonts */ + font-family: 'icomoon' !important; + speak: none; + font-style: normal; + font-weight: normal; + font-variant: normal; + text-transform: none; + line-height: 1; + + /* Better Font Rendering =========== */ + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.icon-heart:before { + content: "\f004"; +} +.icon-linkedin:before { + content: "\f08c"; +} +.icon-twitter:before { + content: "\f099"; +} +.icon-youtube:before { + content: "\f167"; +} +.icon-instagram:before { + content: "\f16d"; +} +.icon-flickr:before { + content: "\f16e"; +} +.icon-facebook-f:before { + content: "\f39e"; +} +.icon-check:before { + content: "\f00c"; +} +.icon-chevron-left:before { + content: "\f053"; +} +.icon-chevron-right:before { + content: "\f054"; +} +.icon-external-link:before { + content: "\f08e"; +} +.icon-calendar:before { + content: "\f133"; +} diff --git a/uniweb/static/uniweb/assets/css/style.css b/uniweb/static/uniweb/assets/css/style.css new file mode 100644 index 00000000..bf3d7816 --- /dev/null +++ b/uniweb/static/uniweb/assets/css/style.css @@ -0,0 +1,1195 @@ +/* +* +* Custom styling for Piráti donate website +* Author: Daniel Hlavacek +* Author's website: https://danielhlavacek.cz/ +* +*/ + +/* GENERAL */ + +body { + font-size: 16px; + /*padding-top: 79px;*/ + font-family: "Roboto Condensed", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; +} + +a:hover { + color: #757575; +} + +/* HEADINGS */ + +h1, h1.lead { + font-size: 3.6rem; +} + +h2, h2.lead { + font-size: 2.8rem; +} + +h3, h3.lead { + font-size: 2.1rem; +} + +h4, h4.lead { + font-size: 1.65rem; +} + +h5, h5.lead { + font-size: 1.3rem; +} + +h6, h6.lead { + font-size: 1rem; +} + +@media screen and (max-width: 500px) { + h1, h1.lead { + font-size: 3rem; + } + h2, h2.lead { + font-size: 2.4rem; + } + h3, h3.lead { + font-size: 1.85rem; + } + h4, h4.lead { + font-size: 1.4rem; + } + h5, h5.lead { + font-size: 1.2rem; + } + h6, h6.lead { + font-size: 1rem; + } +} + +h1.lead, h2.lead, h3.lead, h4.lead, h5.lead, h6.lead { + font-family: "Bebas Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + line-height: 1; + text-transform: uppercase; +} + + + +h1.homepage-heading { + font-size: 6rem; +} +h1.heading { + font-size: 4rem; +} +h2.page-subheading { + font-size: 4rem; +} +h3.page-subheading { + font-size: 3.8rem; +} + +@media screen and (max-width: 1200px) { + h1.homepage-heading { + font-size: 5.4rem; + } + h1.heading { + font-size: 4rem; + } + h2.page-subheading { + font-size: 4rem; + } + h3.page-subheading { + font-size: 3.6rem; + } +} + +@media screen and (max-width: 991px) { + h1.homepage-heading { + font-size: 4.4rem; + } + h1.heading { + font-size: 3.7rem; + } + h2.page-subheading { + font-size: 3.7rem; + } + h3.page-subheading { + font-size: 3.2rem; + } +} + +@media screen and (max-width: 440px) { + h1.homepage-heading { + font-size: 3.8rem; + } + h1.heading { + font-size: 3.4rem; + } + h2.page-subheading { + font-size: 3.4rem; + } + h3.page-subheading { + font-size: 3rem; + } +} + +@media screen and (max-width: 370px) { + h1.homepage-heading { + font-size: 3.6rem; + } + h2.page-subheading { + font-size: 3rem; + } + h3.page-subheading { + font-size: 2.6rem; + } +} + +@media screen and (max-width: 330px) { + h1.homepage-heading { + font-size: 3rem; + } + h2.page-subheading { + font-size: 2.8rem; + } + h3.page-subheading { + font-size: 2.3rem; + } +} + + +/* BUTTONS */ + +.btn-dark { + background: #000000; +} + +.btn-light { + background: #CCCCCC; +} + +.btn-dark:hover, .btn-light:hover { + background: #222222; + color: #FFFFFF; +} + +.btn { + border-radius: 0; + padding: 0.7rem 1.6rem; +} + +.btn { + font-family: "Roboto Condensed", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; +} + +.btn-lg { + border-radius: 0; + padding: 0.7rem 3rem; +} + +/* TOOLS AND FIXES */ + +.lazyload, .lazyloading { + opacity: 0; +} + +.lazyloaded { + opacity: 1; + transition: opacity .5s; +} + +/* SECTIONS */ + +.section--primary { + background: #ffffff; + color: #000000; +} + +.section--alternate { + background: #f7f7f7; + color: #000000; +} + +.section--black { + background: #000000; + color: #ffffff; +} + +/* SECTION SIZING */ + +section { + padding: 4rem 0rem; +} + +.section--lead { + padding: 6rem 0rem; +} + +.section--no-bottom-padding { + padding-bottom: 0rem; +} + +.section--form { + padding-top: 2rem; +} + +@media screen and (max-width: 991px) { + section { + padding: 3.5rem 0rem; + } + .section--lead { + padding: 4rem 0rem; + } +} + +@media screen and (max-width: 768px) { + section { + padding: 3rem 0rem; + } + .section--lead { + padding: 3.5rem 0rem; + } +} + +@media screen and (max-width: 575px) { + section { + padding: 2.5rem 0rem; + } + .section--lead { + padding: 3rem 0rem; + } +} + +/* HEADER */ + +.navbar { + background: #212121; +} + +@media screen and (max-width: 991.99px) { + .navbar { + position: fixed; + top: 0; + right: 0; + left: 0; + z-index: 1030; + } + + main { + margin-top: 90px; + } +} + +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgb(255, 255, 255)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} + +.navbar-dark .navbar-nav .nav-link { + color: rgba(255,255,255); +} + +.navbar-dark .navbar-toggler { + color: #ffffff; + border: none; + margin-right: -1rem; +} + +.nav-link { + display: block; + padding: .5rem 1rem; + text-transform: uppercase; + font-family: "Roboto Condensed", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-size: 1.2rem; +} + +.navbar-brand { + font-family: "Bebas Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-size: 2.2rem; + text-transform: uppercase; +} + +@media screen and (max-width: 420px) { + .navbar-brand { + font-size: 2rem; + } +} + +@media screen and (max-width: 390px) { + .navbar-brand { + font-size: 1.8rem; + } +} + +@media screen and (max-width: 350px) { + .navbar-brand { + font-size: 1.6rem; + } +} + +.brand-wrapper { + height: 90px; + display: flex; + align-items: center; + justify-content: flex-start; +} + +.brand-wrapper img { + width: 160px; + +} + +@media screen and (max-width: 575px) { + .brand-wrapper { + height: 74px; + } + .brand-wrapper img { + width: 150px; + } +} + +@media screen and (min-width: 1200px) { + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: 0.8rem; + padding-left: 0.8rem; + } +} + +@media screen and (min-width: 576px) and (max-width: 1199.99px) { + .navbar .navbar-collapse .navbar-nav { + margin-top: 1rem; + margin-bottom: 1rem; + } +} + +.header__socials { + display: flex; + margin-left: -0.5rem; +} + +.header__socials a { + padding: 0.5rem; +} + +.header__socials a i { + font-size: 1rem; + color: white; +} + +.header__socials.header__socials--mobile { + margin-left: -0.7rem; + padding-top: 0.4rem; +} + +.header__socials.header__socials--mobile a { + padding: 0.7rem; +} + +.header__socials.header__socials--mobile a i { + font-size: 1.3rem; + color: rgba(255,255,255,.5); +} + +.header_link.header_link--desktop { + color: white; +} + +.header_link.header_link--mobile { + color: rgba(255,255,255,.5); +} + + +/*--/ Hamburger Navbar /--*/ + +.navbar-toggler { + position: relative; +} + +.navbar-toggler:focus, +.navbar-toggler:active { + outline: 0; +} + +.navbar-toggler span { + display: block; + background-color: #ffffff; + height: 2px; + width: 30px; + margin-top: 8px; + margin-bottom: 8px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + left: 0; + opacity: 1; +} + +.navbar-toggler span:nth-child(1), +.navbar-toggler span:nth-child(3) { + transition: -webkit-transform .35s ease-in-out; + transition: transform .35s ease-in-out; + transition: transform .35s ease-in-out, -webkit-transform .35s ease-in-out; +} + +.navbar-toggler:not(.collapsed) span:nth-child(1) { + position: absolute; + left: 12px; + top: 10px; + -webkit-transform: rotate(135deg); + transform: rotate(135deg); + opacity: 0.9; +} + +.navbar-toggler:not(.collapsed) span:nth-child(2) { + height: 12px; + visibility: hidden; + background-color: transparent; +} + +.navbar-toggler:not(.collapsed) span:nth-child(3) { + position: absolute; + left: 12px; + top: 10px; + -webkit-transform: rotate(-135deg); + transform: rotate(-135deg); + opacity: 0.9; +} + + +/* FOOTER */ + +.footer__top { + background: #212121; +} + +.footer__bottom { + background: #000000; +} + +footer { + color: #8a8a8a; +} + +footer a { + color: #8a8a8a; +} + +footer a:hover { + color: #ffffff; + text-decoration: none; +} + +footer h1, footer h2, footer h3, footer h4, footer h5, footer h6 { + color: #ffffff; +} + +.footer__top { + padding: 4rem 0rem; +} + +@media screen and (max-width: 991px) { + .footer__top { + padding: 3.5rem 0rem; + } +} + +@media screen and (max-width: 768px) { + .footer__top { + padding: 3rem 0rem; + } +} + +@media screen and (max-width: 575px) { + .footer__top { + padding: 2.5rem 0rem; + } +} + +.footer__bottom { + padding: 2rem 0rem; +} + +.footer__bottom a { + border-bottom: 1px dotted; +} + +.footer__bottom a:hover { + border-bottom: none; + text-decoration: none; + color: #8a8a8a; +} + +.footer__list-heading { + text-transform: uppercase; + margin-bottom: 1.6rem; +} + +.footer__menu { + padding-left: 0; + list-style: none; +} + +.footer__menu li { + padding: 0.15rem 0; +} + +.footer__logo img { + width: 180px; +} + +/* UVOD */ + +.uvod__image-wrapper { + max-width: 180px; + display: inline-block; +} + +.uvod__button { + margin-right: 2rem; +} + + + +/* PROJEKTY */ + +.project { + box-shadow: 0 .25rem 1.875rem rgba(42, 53, 79, .28); + border-radius: 0; + border: 0; + height: 100%; + color: black; + transition: all 0.5s ease-in-out; +} + + +.project:hover { + text-decoration: none; + box-shadow: 0 .25rem 1.875rem rgba(42, 53, 79, 0.73); + color: black; +} + +.project:hover .card-img-top { + opacity: 0.9; +} + +.project .card-footer { + border-radius: 0; + border: 0; +} + +.card-footer .text-muted { + color: #707070 !important; +} + +.project .card-img, .project .card-img-top { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.project .card-body h5 { + font-weight: bold; +} + +.project .card-body p:last-child { + margin-bottom: 0; +} + +.project .card-body p { + color: #797676; +} + +.project .card-footer p { + margin-bottom: 0; +} + +.project .progress-bar { + background-color: #04a548; +} + +.project .progress { + margin-bottom: 0.8rem; +} + +.project__flags { + position: absolute; + top: 0; + margin-bottom: 0; + z-index: 1; + left: -0.25rem; + display: flex; + flex-direction: column; + align-items: flex-start; + list-style: none; + padding-left: 0; +} + +.project__flag { + margin-top: .5rem; + color: #fff; + background: #2fb5d2; + padding: .25rem .6rem; + font-weight: bold; +} + +.project__flag.almost { + background: #04a548; +} + +.project__flag.new { + background: #04a548; +} + +.project-images { + margin-right: -7.5px; + margin-left: -7.5px; +} + +.project-images > div{ + padding-right: 7.5px; + padding-left: 7.5px; + margin-bottom: 15px; +} + +.project-donate-form .progress-bar { + background-color: #04a548; +} + + +/* KRAJE */ + +.region { + box-shadow: 0 .25rem 1.875rem rgba(42, 53, 79, .28); + border-radius: 0; + border: 0; + height: 100%; + color: black; + transition: all 0.5s ease-in-out; +} + + +.region:hover { + text-decoration: none; + box-shadow: 0 .25rem 1.875rem rgba(42, 53, 79, 0.73); + color: black; +} + +.region:hover .card-img-top { + opacity: 0.9; +} + +.region .card-img, .region .card-img-top { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.region .card-body h5 { + font-weight: bold; +} + +.region .card-body p:last-child { + margin-bottom: 0; +} + +.region .card-body p { + color: #797676; +} + + +/* DONATE FORM */ +.donate-form { + display: flex; + box-shadow: 0 .25rem 1.875rem rgba(42, 53, 79, .28); +} + +.donate-form__left { + background: #090A0B; + color: white; + padding: 1.8rem; + flex: 0 0 auto; + justify-content: space-between; + display: flex; + flex-direction: column; +} + +.donate-form__icon { + max-width: 7rem; + margin-bottom: 4rem; +} + +.donate-form__right { + width: 100%; + padding: 1.8rem; +} + +.custom-control-input:checked ~ .custom-control-label::before { + color: #fff; + border-color: #d02d40; + background-color: #d02d40; +} + +.custom-control-input:not(:disabled):active ~ .custom-control-label::before { + color: #fff; + background-color: #b3ffd1; + border-color: #b3ffd1; +} + +.custom-control-input:focus ~ .custom-control-label::before { + box-shadow: 0 0 0 .2rem rgba(0, 255, 147, 0.25); +} + +.custom-control-label { + line-height: 1.2; + padding-top: .7rem; +} + +.custom-control-label::after { + top: .5rem; + left: -2.5rem; + width: 2rem; + height: 2rem; +} + +.custom-control-label::before { + top: .5rem; + left: -2.5rem; + width: 2rem; + height: 2rem; +} + +.custom-control-input { + width: 2rem; + height: 2.5rem; +} + +.custom-control { + min-height: 2.5rem; + padding-left: 2.5rem; +} + +.input-group-lg > .form-control, +.input-group-lg > .input-group-append > .input-group-text { + border-radius: 0; +} + +.form-control-lg { + border-radius: 0; +} + +.form-control:focus { + border-color: #28a745; + box-shadow: 0 0 0 .2rem rgba(43, 174, 70, 0.25); +} + +@media screen and (min-width: 1200px) { + .donate-form__left { + width: 16rem; + } +} + +@media screen and (max-width: 991px) { + .donate-form { + flex-direction: column; + } + .donate-form__left { + flex-direction: row; + align-items: center; + } + .donate-form__icon { + max-width: 2.5rem; + margin-bottom: 0rem; + order: 1; + margin-left: 1.8rem; + } + .donate-form__left-content { + order: 0; + } +} + +.donate-form .custom-amount { + max-width: 15rem; +} + + +/* REGION DONATE FORM */ + +.region-donate-form { + display: flex; + box-shadow: 0 .25rem 1.875rem rgba(42, 53, 79, .28); + flex-direction: column; +} + +.region-donate-form__left { + background: #090A0B; + color: white; + padding: 1.8rem; + flex: 0 0 auto; + justify-content: space-between; + display: flex; + flex-direction: row; + align-items: center; +} + +.region-donate-form__icon { + max-width: 2.5rem; + margin-bottom: 0rem; + order: 1; + margin-left: 1.8rem; +} + +.region-donate-form__right { + width: 100%; + padding: 1.8rem; +} + + +/* PROJECT DONATE FORM */ + +.project-donate-form { + display: flex; + box-shadow: 0 .25rem 1.875rem rgba(42, 53, 79, .28); + flex-direction: column; +} + +.project-donate-form__left { + background: #090A0B; + color: white; + padding: 1.8rem; + flex: 0 0 auto; + justify-content: space-between; + display: flex; + flex-direction: row; + align-items: center; +} + +.project-donate-form__icon { + max-width: 2.5rem; + margin-bottom: 0rem; + order: 1; + margin-left: 1.8rem; +} + +.project-donate-form__right { + width: 100%; + padding: 1.8rem; +} + +/* FOOTER */ + +.socials { + display: flex; + margin-left: -0.8rem; +} + +.socials a { + padding: 0.8rem; +} + +.socials a:last-child { + margin-right: 0; +} + +.socials a i { + font-size: 1.4rem; + color: white; +} + + + +/* PAGINATION */ +.page-link { + padding: .8rem 1.1rem; + color: #333; + background-color: #f3f3f3; + border: 1px solid #f3f3f3; + font-weight: bold; +} + +.page-link:hover { + color: #333; + background-color: #e9ecef; + border-color: #e9ecef; +} + +.page-link:focus { + box-shadow: 0 0 0 .2rem rgba(168, 168, 168, 0.25); +} + +.page-item { + margin-right: 0.5rem; +} + +.page-item:last-child { + margin-right: 0; +} + +.page-item.active .page-link { + color: #fff; + background-color: #333; + border-color: #333; +} + +.page-item:first-child .page-link { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.page-item:last-child .page-link { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + + + +/* PROJECT */ +.project__header { + padding: 4rem 0 2rem 0; +} + +.project__date { + margin-bottom: 0; + color: #707070; +} + +.project__badges .badge { + font-size: 1rem; + background: white; + border-radius: 0; + padding: 0.8rem 1.3rem; + font-weight: bold; +} + +.badge.almost { + background: #04a548; + color: white; +} + +.badge.new { + background: #e1242a; + color: white; +} + + +/* SHARING BOX */ +.article__sharing-box { + box-shadow: 0 .25rem 1.875rem rgba(42, 53, 79, .28); + border: none; + border-radius: 0; +} + +.article__sharing-box h3 { + margin-bottom: 0; +} + +.article__sharing-box .icon i { + font-size: 2.4rem; +} + +.article__sharing-box .icon { + margin-bottom: 2.8rem; +} + +.article__sharing-box .card-body { + padding: 2rem; + margin-bottom: 1rem; +} + +.btn-facebook { + color: #fff; + background-color: #3b5998; + border-color: #3b5998; +} + +.btn-twitter { + color: #fff; + background-color: #55acee; + border-color: #55acee; +} + +.btn-linkedin { + color: #fff; + background-color: #007bb5; + border-color: #007bb5; +} + +.btn-facebook:hover { + color: #fff; + background-color: #253860; + border-color: #253860; +} + +.btn-twitter:hover { + color: #fff; + background-color: #448cc4; + border-color: #448cc4; +} + +.btn-linkedin:hover { + color: #fff; + background-color: #006291; + border-color: #006291; +} + +.sharing-buttons { + display: flex; + justify-content: space-between; +} + +.sharing-buttons a { + flex: 1; + margin-right: 8px; + padding: .375rem .75rem; +} + +.sharing-buttons a:last-child { + margin-right: 0; +} + +.sharing-box__content { + margin-bottom: 0.6rem; +} + +@media screen and (max-width: 991px) { + .article__sharing-box .card-body { + padding: 1.8rem; + margin-bottom: 0; + } + .article__sharing-box .image { + display: none; + } + + .sharing-box__content { + display: flex; + align-items: center; + margin-bottom: 1rem; + } + + .article__sharing-box .icon { + margin-bottom: 0; + margin-right: 1.2rem; + } +} + + +/* REGION */ +.region__header { + padding: 4rem 0 2rem 0; +} + +.other-regions a { + box-shadow: 0 .25rem 1.875rem rgba(42, 53, 79, .28); + margin-bottom: 1rem; + color: black; + padding: 0.8rem 1rem; + display: block; + font-weight: bold; +} + +/* ARTICLE CONTENT */ +article img { + max-width: 100%; + height: auto; + margin-top: 1rem; + margin-bottom: 3rem; +} + +/* REGION MAP */ + +.region-map { + overflow: hidden; +} + +.region-map svg { + position: relative; + top: -0.734375px; +} + +.region-map path { + stroke-linejoin: round; + cursor: pointer; + fill: #333333; + stroke: #666666; +} + +.region-map a:hover path { + fill: #000000; +} + +.region-list { + padding: 0; +} + +.region-list li { + list-style-type: none; +} + +.region-list a { + box-shadow: 0 .25rem 1.875rem rgba(42, 53, 79, .28); + margin-bottom: 1rem; + color: black; + padding: 0.6rem 1rem; + display: block; + font-weight: bold; +} + +/* FORM TWEAKS */ + +input::-webkit-outer-spin-button, +input::-webkit-inner-spin-button { + -webkit-appearance: none; + margin: 0; +} + +input[type=number] { + -moz-appearance: textfield; +} + +/* VARIOUS */ + +img.full-width { + width: 100%; + height: auto; +} + +.btn-danger { + background-color: #d02d40; +} + +.btn-wide { + width: 250px; +} + +.richtext i { + font-family: inherit !important; + font-style: italic; + -webkit-font-smoothing: inherit; + -moz-osx-font-smoothing: inherit; + line-height: inherit; + font-weight: inherit; + font-variant: inherit; + text-transform: inherit; +} + +.richtext blockquote { + font-style: italic; + padding: 0 1rem 0 1rem; + font-size: 115%; + border-left: 2px solid #BBBBBB; + color: #666666; +} + +.richtext-image.left { + float: left; + margin: 0 1.5rem 1rem 0; +} + +.richtext-image.right { + float: right; + margin: 0 0 1rem 1.5rem; +} + +.richtext ol, .richtext ul { + padding-left: 0; + margin-left: 0; +} + +.richtext ol li, .richtext ul li { + position: relative; + left: 2.5rem; + padding-right: 2.5rem; +} diff --git a/uniweb/static/uniweb/icons/icomoon.eot b/uniweb/static/uniweb/icons/icomoon.eot new file mode 100644 index 0000000000000000000000000000000000000000..cab88ec4cc00f28eb94308704629fd46b85a7f97 GIT binary patch literal 3384 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 literal 0 HcmV?d00001 diff --git a/uniweb/static/uniweb/icons/icomoon.svg b/uniweb/static/uniweb/icons/icomoon.svg new file mode 100644 index 00000000..ae6f3d57 --- /dev/null +++ b/uniweb/static/uniweb/icons/icomoon.svg @@ -0,0 +1,22 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg xmlns="http://www.w3.org/2000/svg"> +<metadata>Generated by IcoMoon</metadata> +<defs> +<font id="icomoon" horiz-adv-x="1024"> +<font-face units-per-em="1024" ascent="896" descent="-128" /> +<missing-glyph horiz-adv-x="1024" /> +<glyph unicode=" " horiz-adv-x="0" d="" /> +<glyph unicode="" glyph-name="heart" d="M924.6 770.8c125.6-107.201 132.201-299.602 19.6-415.8l-387-399.6c-25-25.801-65.6-25.801-90.6 0l-387 399.6c-112.4 116.199-105.799 308.6 19.801 415.8 109.6 93.398 272.798 76.6 373.2-27.201l39.4-40.6 39.4 40.6c100.6 103.801 263.6 120.6 373.2 27.201z" /> +<glyph unicode="" glyph-name="check" horiz-adv-x="896" d="M827.010 712.098c9.373 9.373 24.568 9.373 33.939 0l22.629-22.627c9.371-9.375 9.371-24.57 0-33.943l-599.626-599.624c-9.373-9.373-24.568-9.373-33.941 0l-237.588 237.588c-9.371 9.373-9.371 24.57 0 33.941l22.627 22.627c9.373 9.371 24.568 9.371 33.941 0l197.99-197.99z" /> +<glyph unicode="" glyph-name="chevron-left" horiz-adv-x="512" d="M476.95-55.070c-9.371-9.373-24.566-9.373-33.939-0.002l-422.102 422.1c-9.373 9.375-9.373 24.57 0 33.943l422.102 422.1c9.373 9.371 24.568 9.371 33.939 0l14.143-14.141c9.373-9.373 9.373-24.57 0-33.941l-390.986-390.988 390.986-390.988c9.373-9.373 9.373-24.57 0-33.941z" /> +<glyph unicode="" glyph-name="chevron-right" horiz-adv-x="512" d="M35.051 823.070c9.371 9.373 24.566 9.373 33.939 0l422.102-422.098c9.373-9.375 9.373-24.57 0-33.943l-422.102-422.1c-9.373-9.371-24.568-9.371-33.939 0l-14.143 14.141c-9.373 9.373-9.373 24.57 0 33.941l390.986 390.988-390.986 390.988c-9.373 9.373-9.373 24.57 0 33.941z" /> +<glyph unicode="" glyph-name="linkedin" d="M832 832c35.199 0 64-29 64-64.6v-766.8c0-35.6-28.801-64.6-64-64.6h-768.2c-35.201 0-63.801 29-63.801 64.6v766.8c0 35.6 28.6 64.6 63.801 64.6h768.2zM270.8 64h0.199v427.6h-133v-427.6h132.801zM204.4 550c42.6 0 77 34.4 77 77 0 42.4-34.6 77-77 77-42.6 0-77-34.6-77-77s34.4-77 77-77zM768.6 64v234.4c0 115.199-25 203.798-159.4 203.798-64.6 0-108-35.398-125.799-69h-1.801v58.4h-127.4v-427.6h132.801v211.6c0 55.801 10.6 109.801 79.801 109.801 68 0 69-63.801 69-113.4v-208h132.799z" /> +<glyph unicode="" glyph-name="external-link" d="M880 384c8.832 0 16-7.168 16-16v-400c0-52.992-43.008-96-96-96h-704c-52.992 0-96 43.008-96 96v704c0 52.992 43.008 96 96 96h400c8.832 0 16-7.168 16-16v-32c0-8.832-7.168-16-16-16h-400c-17.664 0-32-14.336-32-32v-704c0-17.664 14.336-32 32-32h704c17.664 0 32 14.336 32 32v400c0 8.832 7.168 16 16 16h32zM1000 896c13.248 0 24-10.752 24-24l-0.68-272.080c0-13.248-10.752-24-24-24h-20c-13.248 0-24 10.752-24 24l0.68 180-1.42 1.4-646.24-646.36c-3.883-3.898-11.498-7.061-17-7.061-5.5 0-13.117 3.162-17 7.061l-11.32 11.318c-3.896 3.883-7.059 11.5-7.059 17 0 5.502 3.162 13.117 7.059 17l646.38 646.3-1.4 1.42-180-0.68c-13.248 0-24 10.752-24 24v20c0 13.248 10.752 24 24 24z" /> +<glyph unicode="" glyph-name="twitter" d="M918.74 592.568c0.65-9.096 0.65-18.195 0.65-27.291 0-277.44-211.166-597.116-597.118-597.116-118.904 0-229.36 34.438-322.274 94.211 16.895-1.947 33.137-2.598 50.68-2.598 98.109 0 188.426 33.137 260.548 89.664-92.264 1.951-169.584 62.377-196.225 145.545 12.996-1.949 25.99-3.248 39.637-3.248 18.842 0 37.686 2.6 55.227 7.146-96.162 19.494-168.285 103.959-168.285 205.968v2.598c27.938-15.594 60.428-25.34 94.861-26.637-56.527 37.686-93.561 102.010-93.561 174.781 0 38.984 10.393 74.721 28.588 105.908 103.309-127.35 258.6-210.516 432.728-219.614-3.248 15.594-5.197 31.836-5.197 48.080 0 115.654 93.564 209.868 209.868 209.868 60.428 0 115.004-25.34 153.342-66.273 47.43 9.096 92.91 26.639 133.197 50.68-15.596-48.732-48.732-89.666-92.264-115.654 42.234 4.547 83.168 16.244 120.852 32.486-28.584-41.582-64.322-78.617-105.256-108.506z" /> +<glyph unicode="" glyph-name="calendar" horiz-adv-x="896" d="M800 768c53.020 0 96-42.98 96-96v-704c0-53.020-42.98-96-96-96h-704c-53.020 0-96 42.98-96 96v704c0 53.020 42.98 96 96 96h96v104c0 13.254 10.746 24 24 24h16c13.254 0 24-10.746 24-24v-104h384v104c0 13.254 10.746 24 24 24h16c13.254 0 24-10.746 24-24v-104h96zM96 704c-17.645 0-32-14.355-32-32v-96h768v96c0 17.645-14.355 32-32 32h-704zM800-64c17.645 0 32 14.355 32 32v544h-768v-544c0-17.645 14.355-32 32-32h704z" /> +<glyph unicode="" glyph-name="youtube" horiz-adv-x="1152" d="M1099.31 647.834c22.824-85.734 22.824-264.61 22.824-264.61s0-178.877-22.824-264.612c-12.563-47.299-49.574-83-96.568-95.641-85.182-22.973-426.742-22.973-426.742-22.973s-341.56 0-426.742 22.973c-46.994 12.641-84.006 48.342-96.568 95.641-22.824 85.734-22.824 264.612-22.824 264.612s0 178.875 22.824 264.61c12.563 47.301 49.574 84.551 96.568 97.193 85.182 22.973 426.742 22.973 426.742 22.973s341.562 0 426.742-22.973c46.994-12.641 84.006-49.893 96.568-97.193zM464.29 220.818l285.478 162.402-285.478 162.41v-324.812z" /> +<glyph unicode="" glyph-name="instagram" d="M448.2 614c127.201 0 229.8-102.6 229.8-229.8s-102.6-229.798-229.8-229.798c-127.199 0-229.798 102.6-229.798 229.798 0 127.201 102.6 229.8 229.798 229.8zM448.2 234.8c82.201 0 149.4 67 149.4 149.398 0 82.4-67 149.4-149.4 149.4-82.398 0-149.398-67-149.398-149.4 0-82.398 67.199-149.398 149.398-149.398zM741 623.4c0-29.801-24-53.6-53.6-53.6-29.801 0-53.6 24-53.6 53.6s24 53.6 53.6 53.6 53.6-24 53.6-53.6zM893.2 569c4.201-74 4.201-295.6 0-369.6-3.6-71.801-20-135.4-72.398-187.801-52.4-52.6-116-69-187.801-72.4-74-4.199-295.8-4.199-369.8 0-71.799 3.602-135.199 20-187.799 72.4s-69 116-72.4 187.801c-4.199 74-4.199 295.798 0 369.798 3.6 71.801 19.801 135.4 72.4 187.801s116.199 68.801 187.799 72.199c74 4.201 295.8 4.201 369.8 0 71.801-3.6 135.4-20 187.801-72.398 52.6-52.4 69-116 72.398-187.801zM797.6 120c23.4 58.801 18 199 18 264.2s5.4 205.202-18 264.202c-15.799 39.4-46 69.6-85.199 85.199-58.801 23.201-199 18-264.202 18-65.199 0-205.2 5.4-264.2-18-39.4-15.799-69.6-46-85.199-85.199-23.201-58.801-18-199-18-264.202 0-65.199-5.4-205.2 18-264.2 15.799-39.4 46-69.6 85.199-85.199 58.801-23.201 199-18 264.2-18s205.202-5.4 264.202 18c39.4 15.799 69.6 46 85.199 85.199z" /> +<glyph unicode="" glyph-name="flickr" d="M800 832c53 0 96-43 96-96v-704c0-53-43-96-96-96h-704c-53 0-96 43-96 96v704c0 53 43 96 96 96h704zM289 258c70.199 0 127 56.801 127 127s-56.801 127-127 127-127-56.801-127-127 56.801-127 127-127zM607 258c70.199 0 127 56.801 127 127s-56.801 127-127 127-127-56.801-127-127 56.801-127 127-127z" /> +<glyph unicode="" glyph-name="facebook-f" horiz-adv-x="640" d="M558.28 320h-149.379v-448h-200.34v448h-162.781v185.32h162.781v141.24c0 160.68 95.719 249.44 242.16 249.44 70.139 0 143.5-12.52 143.5-12.52v-157.781h-80.84c-79.641 0-104.48-49.42-104.48-100.119v-120.26h177.82z" /> +</font></defs></svg> diff --git a/uniweb/static/uniweb/icons/icomoon.ttf b/uniweb/static/uniweb/icons/icomoon.ttf new file mode 100644 index 0000000000000000000000000000000000000000..fa59609ee85bc976737b94433954173288573a23 GIT binary patch literal 3220 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 bki<~Qpupe>_JA+M1K^khwWy&Hf{g+I7!e6y literal 0 HcmV?d00001 diff --git a/uniweb/static/uniweb/icons/icomoon.woff b/uniweb/static/uniweb/icons/icomoon.woff new file mode 100644 index 0000000000000000000000000000000000000000..87c46d1a16a4e75d3012924560f851023629e81c GIT binary patch literal 3296 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 literal 0 HcmV?d00001 diff --git a/uniweb/templates/uniweb/base.html b/uniweb/templates/uniweb/base.html new file mode 100644 index 00000000..e4bb1213 --- /dev/null +++ b/uniweb/templates/uniweb/base.html @@ -0,0 +1,107 @@ +{% load static wagtailuserbar wagtailcore_tags wagtailimages_tags wagtailmetadata_tags %} +<!doctype html> +<html lang="cs"> +<head> + + <!-- Font loader --> + <script type="text/javascript"> + WebFontConfig = { + google: { families: ['Roboto+Condensed:300,300i,400,400i,700,700i:latin-ext', 'Bebas+Neue'] } + }; + (function () { + var wf = document.createElement('script'); + wf.src = 'https://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js'; + wf.type = 'text/javascript'; + wf.async = 'true'; + var s = document.getElementsByTagName('script')[0]; + s.parentNode.insertBefore(wf, s); + })(); + </script> + + <!-- Meta --> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + {% meta_tags %} + {% if settings.MAJAK_ENV == "test" %} + <meta name="robots" content="noindex, nofollow"> + {% endif %} + + <!-- Favicon --> + {% include "shared/favicon_snippet.html" %} + + <!-- Bootstrap CSS --> + <link rel="stylesheet" href="{% static "shared/vendor/bootstrap-4.4.1/css/bootstrap.min.css" %}"> + + <!-- Styles --> + <link href="{% static "uniweb/assets/css/style.css" %}" rel="stylesheet"> + <link href="{% static "uniweb/assets/css/icons.css" %}" rel="stylesheet"> + + {% if page.matomo_id %} + {% include "shared/matomo_snippet.html" with matomo_id=page.matomo_id %} + {% endif %} +</head> + +<body id="top"> + + <!-- HEADER --> + <div class="pre-navbar d-none d-lg-flex" style="background:black;"> + <div class="container d-flex justify-content-end"> + <a href="https://www.pirati.cz/" class="header_link header_link--desktop mr-4 py-2" target="_blank" rel="noreferrer"><i class="icon-external-link mr-2" title="Ikona odkazu"></i>www.pirati.cz</a> + </div> + </div> + + <nav class="navbar navbar-expand-xl navbar-dark"> + <div class="container"> + + <div class="brand-wrapper"> + <a class="navbar-brand" href="/"> + <h1 class="lead ml-1 mt-3" style="color: #FFFFFF; font-size: 3rem;"> + <img src="{% static "shared/img/logo_white.svg" %}" alt="Logo Pirátské strany" style="width: 50px; height: 50px;" class="mr-2"> + {{ page.root_page.seo_title }} + </h1> + </a> + </div> + + <!-- Mobile menu toggler --> + <button class="navbar-toggler collapsed" type="button" data-toggle="collapse" data-target="#mainNavigation" aria-controls="mainNavigation" aria-expanded="false" aria-label="Otevřít menu"> + <span></span> + <span></span> + <span></span> + </button> + + <!-- Navigation --> + <div class="collapse navbar-collapse" id="mainNavigation"> + <ul class="navbar-nav ml-auto"> + {% for item in page.root_page.top_menu %} + <li class="nav-item"> + <a class="nav-link" href="{% pageurl item.value.page %}">{{ item.value.name }}</a> + </li> + {% endfor %} + </ul> + <a href="https://www.pirati.cz/" class="d-block d-lg-none mb-3 header_link header_link--mobile" target="_blank" rel="noreferrer"><i class="icon-external-link mr-2" title="Ikona odkazu"></i>www.pirati.cz</a> + </div><!-- /navigation --> + + </div><!-- /container --> + </nav> + <!-- /HEADER --> + + {% block content %}{% endblock %} + + <!-- FOOTER --> + <footer id="kontakt"> + + <div class="footer__bottom"> + <div class="container"> + <div class="row"> + <div class="col-12 col-md-6 mb-3 mb-md-0"> + <p class="mb-0">© {% now "Y" %} Piráti. Všechna práva vyhlazena.<br/>Sdílejte a nechte ostatní sdílet za stejných podmínek.</p> + </div><!-- /column --> + </div><!-- /row --> + </div><!-- /container --> + </div><!-- /footer_bottom --> + + </footer> + <!-- /FOOTER --> + +</body> +</html> diff --git a/uniweb/templates/uniweb/snippet_sections.html b/uniweb/templates/uniweb/snippet_sections.html new file mode 100644 index 00000000..f7437457 --- /dev/null +++ b/uniweb/templates/uniweb/snippet_sections.html @@ -0,0 +1,17 @@ +{% load wagtailcore_tags %} +{% for section in page.content %} +<section class="section--{% cycle "alternate" "primary" %}"> + <div class="container"> + {% if section.value.title %} + <h2 class="lead page-subheading mb-4">{{ section.value.title }}</h2> + {% endif %} + + <div class="row"> + <div class="col-12 richtext"> + {{ section.value.text|richtext }} + </div><!-- /column --> + </div><!-- /row --> + + </div> <!-- /container --> +</section> +{% endfor %} diff --git a/uniweb/templates/uniweb/uniweb_flexible_page.html b/uniweb/templates/uniweb/uniweb_flexible_page.html new file mode 100644 index 00000000..8a8eb7f0 --- /dev/null +++ b/uniweb/templates/uniweb/uniweb_flexible_page.html @@ -0,0 +1,13 @@ +{% extends "uniweb/base.html" %} + +{% block content %} + +<!-- CONTENT --> +<main role="main"> + + {% include "uniweb/snippet_sections.html" %} + +</main> +<!-- /CONTENT --> + +{% endblock %} diff --git a/uniweb/templates/uniweb/uniweb_home_page.html b/uniweb/templates/uniweb/uniweb_home_page.html new file mode 100644 index 00000000..36ac0c7e --- /dev/null +++ b/uniweb/templates/uniweb/uniweb_home_page.html @@ -0,0 +1,14 @@ +{% extends "uniweb/base.html" %} +{% load wagtailcore_tags %} + +{% block content %} + +<!-- CONTENT --> +<main role="main"> + + {% include "uniweb/snippet_sections.html" %} + +</main> +<!-- /CONTENT --> + +{% endblock %} -- GitLab