From abb387134489257737e6dfa4aa53c527c3ff9501 Mon Sep 17 00:00:00 2001 From: Mikhael <mikhael@ui.ac.id> Date: Sat, 31 Oct 2020 23:16:51 +0700 Subject: [PATCH] [#13] Bugfix: Homepage UI Fix --- .../app/includes/navbar_katalog_materi.html | 31 ++++++++------- app/templates/app/katalog_materi.html | 20 ++++++---- app/tests.py | 38 ++++++++++++------- authentication/templates/login.html | 4 ++ authentication/templates/login_admin.html | 4 ++ register/templates/register_base.html | 10 ++++- 6 files changed, 71 insertions(+), 36 deletions(-) diff --git a/app/templates/app/includes/navbar_katalog_materi.html b/app/templates/app/includes/navbar_katalog_materi.html index cceaec0..222b70c 100644 --- a/app/templates/app/includes/navbar_katalog_materi.html +++ b/app/templates/app/includes/navbar_katalog_materi.html @@ -1,15 +1,12 @@ - <nav class="navbar navbar-expand-lg navbar-light static-top shadow katalog-navbar"> <!-- Sidebar Toggle (Topbar) --> - <div class="sidebar-brand-text navbar-brand">Digipus</div> + <nav class="navbar navbar-expand-lg navbar-light sticky-top shadow katalog-navbar"> <!-- Sidebar Toggle (Topbar) --> + <a class="sidebar-brand-text navbar-brand" href="/">Digipus</a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarContent" aria-controls="navbarContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarContent"> <ul class="navbar-nav ml-auto"> - <li class="nav-item active"> - <a class="nav-link" href="/">Home<span class="sr-only">(current)</span></a> - </li> <li class="nav-item"> <a class="nav-link" href="/forum">Forum</a> </li> @@ -21,16 +18,24 @@ </li> {% if not request.user.is_authenticated %} <li class="nav-item"> - <a class="nav-link" href="/registrasi/umum">Registrasi Umum</a> - </li> - <li class="nav-item"> - <a class="nav-link" href="/registrasi">Registrasi Kontributor</a> - </li> - <li class="nav-item"> - <a class="nav-link" href="/login">Login</a> + <div class="dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Registrasi</a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown"> + <a class="dropdown-item" href="/registrasi/umum">Umum</a> + <a class="dropdown-item" href="/registrasi">Kontributor</a> + </div> + </div> </li> <li class="nav-item"> - <a class="nav-link" href="/login_admin">Login Admin</a> + <div class="dropdown"> + <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> + Login</a> + <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown"> + <a class="dropdown-item" href="/login">Kontributor</a> + <a class="dropdown-item" href="/login_admin">Admin</a> + </div> + </div> </li> {% else %} {% if request.user.is_contributor %} diff --git a/app/templates/app/katalog_materi.html b/app/templates/app/katalog_materi.html index 6080766..703c9fe 100644 --- a/app/templates/app/katalog_materi.html +++ b/app/templates/app/katalog_materi.html @@ -99,16 +99,20 @@ </h2> </div> - <div id="collapseOne" class="collapse" aria-labelledby="headingOne" + <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordionExample"> <div class="card-body"> - <ul> - {% for itemKategori in kategori_list %} - <li> - <a href="?kategori={{itemKategori.pk}}">{{itemKategori.name}}</a> - </li> - {% endfor %} - </ul> + {% if kategori_list.count != 0 %} + <ul> + {% for itemKategori in kategori_list %} + <li> + <a href="?kategori={{itemKategori.pk}}">{{itemKategori.name}}</a> + </li> + {% endfor %} + </ul> + {% else %} + <p class="text-center">Belum ada kategori</p> + {% endif %} </div> </div> </div> diff --git a/app/tests.py b/app/tests.py index c05ae60..97cfd38 100644 --- a/app/tests.py +++ b/app/tests.py @@ -3463,45 +3463,55 @@ class LandingPageNavbarTest(TestCase): def test_navbar_admin(self): self.client.login(**self.admin_credential) response = self.client.get('/') - self.assertContains(response, '<a class="nav-link" href="/">Home<span class="sr-only">(current)</span></a>') + self.assertContains(response, '<a class="sidebar-brand-text navbar-brand" href="/">Digipus</a>') self.assertContains(response, '<a class="nav-link" href="/forum">Forum</a>') self.assertContains(response, '<a class="nav-link" href="/news/all">Berita</a>') - self.assertContains(response, '<a class="nav-link" href="/administration">Administrasi</a>') self.assertContains(response, '<a class="nav-link" href="/profil">Profil</a>') self.assertContains(response, '<a class="nav-link" href="/logout">Logout</a>') - self.assertNotContains(response, '<a class="nav-link" href="/logout">LogoutX</a>') + self.assertContains(response, '<a class="nav-link" href="/administration">Administrasi</a>') + self.assertNotContains(response, '<a class="nav-link" href="/dashboard">Dasbor</a>') def test_navbar_contributor(self): self.client.login(**self.contributor_credential) response = self.client.get('/') - self.assertContains(response, '<a class="nav-link" href="/">Home<span class="sr-only">(current)</span></a>') + self.assertContains(response, '<a class="sidebar-brand-text navbar-brand" href="/">Digipus</a>') self.assertContains(response, '<a class="nav-link" href="/forum">Forum</a>') self.assertContains(response, '<a class="nav-link" href="/news/all">Berita</a>') - self.assertContains(response, '<a class="nav-link" href="/dashboard">Dasbor</a>') self.assertContains(response, '<a class="nav-link" href="/profil">Profil</a>') self.assertContains(response, '<a class="nav-link" href="/logout">Logout</a>') - self.assertNotContains(response, '<a class="nav-link" href="/logout">LogoutX</a>') + self.assertContains(response, '<a class="nav-link" href="/dashboard">Dasbor</a>') + self.assertNotContains(response, '<a class="nav-link" href="/administration">Administrasi</a>') def test_navbar_public(self): self.client.login(**self.public_credential) response = self.client.get('/') - self.assertContains(response, '<a class="nav-link" href="/">Home<span class="sr-only">(current)</span></a>') + self.assertContains(response, '<a class="sidebar-brand-text navbar-brand" href="/">Digipus</a>') self.assertContains(response, '<a class="nav-link" href="/forum">Forum</a>') self.assertContains(response, '<a class="nav-link" href="/news/all">Berita</a>') self.assertContains(response, '<a class="nav-link" href="/profil">Profil</a>') self.assertContains(response, '<a class="nav-link" href="/logout">Logout</a>') - self.assertNotContains(response, '<a class="nav-link" href="/logout">LogoutX</a>') + self.assertNotContains(response, '<a class="nav-link" href="/dashboard">Dasbor</a>') + self.assertNotContains(response, '<a class="nav-link" href="/administration">Administrasi</a>') def test_navbar_anonymous(self): response = self.client.get('/') - self.assertContains(response, '<a class="nav-link" href="/">Home<span class="sr-only">(current)</span></a>') + self.assertContains(response, '<a class="sidebar-brand-text navbar-brand" href="/">Digipus</a>') self.assertContains(response, '<a class="nav-link" href="/forum">Forum</a>') self.assertContains(response, '<a class="nav-link" href="/news/all">Berita</a>') - self.assertContains(response, '<a class="nav-link" href="/registrasi/umum">Registrasi Umum</a>') - self.assertContains(response, '<a class="nav-link" href="/registrasi">Registrasi Kontributor</a>') - self.assertContains(response, '<a class="nav-link" href="/login">Login</a>') - self.assertContains(response, '<a class="nav-link" href="/login_admin">Login Admin</a>') - self.assertNotContains(response, '<a class="nav-link" href="/logout">LogoutX</a>') + self.assertContains( + response, + '<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">' + ) + self.assertContains(response, 'Registrasi</a>') + self.assertContains(response, '<a class="dropdown-item" href="/registrasi/umum">Umum</a>') + self.assertContains(response, '<a class="dropdown-item" href="/registrasi">Kontributor</a>') + self.assertContains(response, 'Login</a>') + self.assertContains(response, '<a class="dropdown-item" href="/login">Kontributor</a>') + self.assertContains(response, '<a class="dropdown-item" href="/login_admin">Admin</a>') + self.assertNotContains(response, '<a class="nav-link" href="/profil">Profil</a>') + self.assertNotContains(response, '<a class="nav-link" href="/logout">Logout</a>') + self.assertNotContains(response, '<a class="nav-link" href="/dashboard">Dasbor</a>') + self.assertNotContains(response, '<a class="nav-link" href="/administration">Administrasi</a>') class MateriRecommendationTest(TestCase): diff --git a/authentication/templates/login.html b/authentication/templates/login.html index e577a99..2012889 100644 --- a/authentication/templates/login.html +++ b/authentication/templates/login.html @@ -72,6 +72,10 @@ <a href="/registrasi" class="txt1"> Ingin jadi kontributor? klik di sini </a> + <br> + <a href="/" class="txt1"> + Kembali ke halaman beranda + </a> </div> </div> diff --git a/authentication/templates/login_admin.html b/authentication/templates/login_admin.html index 15a8d0f..501f7be 100644 --- a/authentication/templates/login_admin.html +++ b/authentication/templates/login_admin.html @@ -81,6 +81,10 @@ <a href="/registrasi/admin/" class="txt1"> Belum mendaftar? klik di sini </a> + <br> + <a href="/" class="txt1"> + Kembali ke halaman beranda + </a> </div> </div> diff --git a/register/templates/register_base.html b/register/templates/register_base.html index 7befc8c..f1b5701 100644 --- a/register/templates/register_base.html +++ b/register/templates/register_base.html @@ -1,4 +1,8 @@ -{% load static %} + + <br> + <a href="/" class="txt1"> + Kembali ke halaman beranda + </a>{% load static %} <!DOCTYPE html> <html lang="en"> @@ -103,6 +107,10 @@ <a href="/login/" class="txt1"> Kembali ke halaman login </a> + <br> + <a href="/" class="txt1"> + Kembali ke halaman beranda + </a> </div> </div> -- GitLab