diff --git a/tubearchivist/home/templates/home/login.html b/tubearchivist/home/templates/home/login.html new file mode 100644 index 0000000..ea625d7 --- /dev/null +++ b/tubearchivist/home/templates/home/login.html @@ -0,0 +1,41 @@ +{% load static %} + + + + + + + TA | Welcome + + + {% if colors == "dark" %} + + {% else %} + + {% endif %} + + +
+ {% if colors == 'dark' %} + tube-archivist-logo + {% endif %} + {% if colors == 'light' %} + tube-archivist-banner + {% endif %} +

Tube Archivist

+

Your Self Hosted YouTube Media Server

+
+ {% csrf_token %} +
+
+ +
+ +
+ + + \ No newline at end of file diff --git a/tubearchivist/home/urls.py b/tubearchivist/home/urls.py index 6ff1670..b10a947 100644 --- a/tubearchivist/home/urls.py +++ b/tubearchivist/home/urls.py @@ -7,6 +7,7 @@ from home.views import ( ChannelView, DownloadView, HomeView, + LoginView, SettingsView, VideoView, ) @@ -15,6 +16,7 @@ from . import views urlpatterns = [ path("", HomeView.as_view(), name="home"), + path("login/", LoginView.as_view(), name="login"), path("about/", AboutView.as_view(), name="about"), path("downloads/", DownloadView.as_view(), name="downloads"), path("settings/", SettingsView.as_view(), name="settings"), diff --git a/tubearchivist/home/views.py b/tubearchivist/home/views.py index b465ba0..b1c6fd9 100644 --- a/tubearchivist/home/views.py +++ b/tubearchivist/home/views.py @@ -126,6 +126,27 @@ class HomeView(View): return redirect(search_url, permanent=True) +class LoginView(View): + """resolves to /login/ + Greeting and login page + """ + + def get(self, request): + """handle get requests""" + colors = self.read_config() + context = { + "colors": colors, + } + return render(request, "home/login.html", context) + + @staticmethod + def read_config(): + """read needed values from redis""" + config_handler = AppConfig().config + colors = config_handler["application"]["colors"] + return colors + + class AboutView(View): """resolves to /about/ show helpful how to information diff --git a/tubearchivist/static/css/style.css b/tubearchivist/static/css/style.css index 875c573..b987ec7 100644 --- a/tubearchivist/static/css/style.css +++ b/tubearchivist/static/css/style.css @@ -514,6 +514,63 @@ button:hover { margin-bottom: 10px; } +/* login */ +.login-page { + display: flex; + flex-wrap: wrap; + justify-content: center; + text-align: center; + align-content: center; +} + +.login-page > * { + width: 100%; +} + +.login-page img { + width: 100%; + max-width: 200px; + max-height: 200px; + margin-bottom: 40px; +} + +.login-page form { + margin: 30px 0; +} + +.login-page input { + min-width: 200px; +} + +.login-links a { + text-decoration: underline; + margin: 30px 0; + padding: 20px; +} + +.footer-colors { + grid-row-start: 2; + grid-row-end: 3; + display: flex; +} + +.footer-colors div { + padding: 20px 0; + width: 33.33%; +} + +.col-1 { + background-color: var(--highlight-bg); +} + +.col-2 { + background-color: var(--accent-font-dark); +} + +.col-3 { + background-color: var(--accent-font-light); +} + /* video page */ .video-main video { max-height: 70vh; diff --git a/tubearchivist/static/img/logo-tube-archivist-dark.png b/tubearchivist/static/img/logo-tube-archivist-dark.png new file mode 100644 index 0000000..08e5185 Binary files /dev/null and b/tubearchivist/static/img/logo-tube-archivist-dark.png differ diff --git a/tubearchivist/static/img/logo-tube-archivist-light.png b/tubearchivist/static/img/logo-tube-archivist-light.png new file mode 100644 index 0000000..61b0672 Binary files /dev/null and b/tubearchivist/static/img/logo-tube-archivist-light.png differ