From facaae353a30130ec5662b05a4934a1ccf844e39 Mon Sep 17 00:00:00 2001
From: Jeremy Reeve Kurniawan <jeremy.reeve@ui.ac.id>
Date: Tue, 25 Apr 2023 22:51:00 +0700
Subject: [PATCH] [REFACTOR] Refactor Back button and delete unnecessary
 uncovered lines

---
 pi/views.py                          | 30 ++--------------------------
 proceeding/utils.py                  |  1 +
 proceeding/views.py                  | 24 ----------------------
 sm/views.py                          |  7 ++-----
 templates/detailPi.html              |  4 ++++
 templates/detailPiDosen.html         |  7 +++++--
 templates/detailProceeding.html      |  6 +++++-
 templates/detailProceedingDosen.html |  5 ++++-
 8 files changed, 23 insertions(+), 61 deletions(-)

diff --git a/pi/views.py b/pi/views.py
index d58f39a..6663464 100644
--- a/pi/views.py
+++ b/pi/views.py
@@ -233,12 +233,8 @@ def read_pi_mahasiswa(request):
     query = request.GET.get('search_pi_mahasiswa')
     form = PiMahasiswaSearchForm(initial={'query': query})
 
-    if query:
-        pi_list = read_pi_mahasiswa_data(request, search_query=query)
-        proceeding_list = read_proceeding_mahasiswa_data(request, search_query=query)
-    else:
-        pi_list = read_pi_mahasiswa_data(request)
-        proceeding_list = read_proceeding_mahasiswa_data(request)
+    pi_list = read_pi_mahasiswa_data(request)
+    proceeding_list = read_proceeding_mahasiswa_data(request)
 
     context = {
         'pi_list': pi_list,
@@ -315,18 +311,6 @@ def confirm_pi_proceeding(request):
     context['total'] = len(pi_total) + len(proceeding_total)
     return render(request, "confirmPi.html", context)
 
-@dosen_required(login_url='/login')
-def read_pi_dosen_confirmed(request):
-    user_dosen = User.objects.get(username=request.user)
-    dosen_pembimbing = dosen.objects.get(user=user_dosen)
-    pi_bimbing = Pi.objects.filter(dosen=dosen_pembimbing.nama_lengkap, status=10)
-    context = {
-        'pi':pi_bimbing,
-    }
-    pi_total = Pi.objects.filter(dosen=request.user.dosen.nama_lengkap, status=9)
-    proceeding_total = Proceeding.objects.filter(dosen=request.user.dosen.nama_lengkap, status=9)
-    context['total'] = len(pi_total) + len(proceeding_total)
-    return render(request, "readPiDosenConfirmed.html", context)
 
 @dosen_required(login_url='/login')
 def read_pi_dosen_confirmed_data(request):
@@ -335,16 +319,6 @@ def read_pi_dosen_confirmed_data(request):
     pi_bimbing = Pi.objects.filter(dosen=dosen_pembimbing.nama_lengkap, status=10)
     return pi_bimbing
 
-@dosen_required(login_url='/login')
-def read_pi_dosen_create(request):
-    pi = Pi.objects.filter(creator=request.user)
-    context = {
-        'pi':pi,
-    }
-    pi_total = Pi.objects.filter(dosen=request.user.dosen.nama_lengkap, status=9)
-    proceeding_total = Proceeding.objects.filter(dosen=request.user.dosen.nama_lengkap, status=9)
-    context['total'] = len(pi_total) + len(proceeding_total)
-    return render(request, "readPiDosen.html", context)
 
 @dosen_required(login_url='/login')
 def read_pi_dosen_create_data(request):
diff --git a/proceeding/utils.py b/proceeding/utils.py
index ba47aed..f33c61d 100644
--- a/proceeding/utils.py
+++ b/proceeding/utils.py
@@ -22,6 +22,7 @@ class ProceedingStatus(IntEnum):
   WITHDRAWN = 8
   AWATING_DOSEN = 9
   CONFIRMED = 10
+  REJECTED_DOSEN = 11
   
   @classmethod
   def choices(cls):
diff --git a/proceeding/views.py b/proceeding/views.py
index 8cc40ef..c5e5f01 100644
--- a/proceeding/views.py
+++ b/proceeding/views.py
@@ -258,19 +258,6 @@ def read_proceeding_dosen_data(request=None, search_query=None):
     else:
         proceeding_bimbing = Proceeding.objects.filter(dosen=dosen_pembimbing.nama_lengkap, status=10)
     return proceeding_bimbing
-    
-@dosen_required(login_url='/login')
-def read_proceeding_dosen_confirmed(request):
-    user_dosen = User.objects.get(username=request.user)
-    dosen_pembimbing = dosen.objects.get(user=user_dosen)
-    proceeding_bimbing = Proceeding.objects.filter(dosen=dosen_pembimbing.nama_lengkap, status=10)
-    context = {
-        'proceeding':proceeding_bimbing,
-    }
-    pi_total = Pi.objects.filter(dosen=request.user.dosen.nama_lengkap, status=9)
-    proceeding_total = Proceeding.objects.filter(dosen=request.user.dosen.nama_lengkap, status=9)
-    context['total'] = len(pi_total) + len(proceeding_total)
-    return render(request, "readProceedingDosenConfirmed.html", context)
 
 @dosen_required(login_url='/login')
 def read_proceeding_dosen_confirmed_data(request):
@@ -279,17 +266,6 @@ def read_proceeding_dosen_confirmed_data(request):
     proceeding_bimbing = Proceeding.objects.filter(dosen=dosen_pembimbing.nama_lengkap, status=10)
     return proceeding_bimbing
 
-@dosen_required(login_url='/login')
-def read_proceeding_dosen_create(request):
-    proceeding = Proceeding.objects.filter(creator=request.user)
-    context = {
-        'proceeding':proceeding,
-    }
-    pi_total = Pi.objects.filter(dosen=request.user.dosen.nama_lengkap, status=9)
-    proceeding_total = Proceeding.objects.filter(dosen=request.user.dosen.nama_lengkap, status=9)
-    context['total'] = len(pi_total) + len(proceeding_total)
-    return render(request, "readPiDosen.html", context)
-
 @dosen_required(login_url='/login')
 def read_proceeding_dosen_create_data(request):
     proceeding = Proceeding.objects.filter(creator=request.user)
diff --git a/sm/views.py b/sm/views.py
index 8f29355..6fa4171 100644
--- a/sm/views.py
+++ b/sm/views.py
@@ -122,11 +122,8 @@ def read_sm_mahasiswa_data(request=None, search_query=None):
 def read_sm_dosen(request):
     query = request.GET.get('search_sm_dosen')
     form = SmDosenSearchForm(initial={'query': query})
-
-    if query:
-        sm_bimbing = read_sm_dosen_data(request, search_query=query)
-    else:
-        sm_bimbing = read_sm_dosen_data(request)
+    
+    sm_bimbing = read_sm_dosen_data(request)
 
     context = {
         'sm_bimbing':sm_bimbing,
diff --git a/templates/detailPi.html b/templates/detailPi.html
index aa3428a..093de18 100644
--- a/templates/detailPi.html
+++ b/templates/detailPi.html
@@ -30,7 +30,11 @@
                         <p class="card-text">File: <a href="/pi/viewpdf/{{ pi.pdf }}">{{ pi.pdf }}</a></p>
                         <p class="card-text">Created at: {{ pi.created_at }}</p>
                         <p class="card-text">Modified at: {{ pi.modified_at }}</p>
+                        {% if pi.status == 9 %}
+                        <a href="{% url 'publikasi ilmiah' %}" class="btn btn-secondary">Back</a>
+                        {% else %}
                         <a href="{{request.META.HTTP_REFERER}}" class="btn btn-secondary">Back</a>
+                        {% endif %}
                         <a href="{{ pi.get_edit_url }}" class="btn btn-primary">Edit</a>
                         {% if pi.status != 1 and dosenPembimbing == False and pi.status != 9 and pi.status != 11 %}
                         <a href="{{ pi.get_update_status_url }}" class="btn btn-warning">Update Status</a>
diff --git a/templates/detailPiDosen.html b/templates/detailPiDosen.html
index 9b7ecb1..3836b5a 100644
--- a/templates/detailPiDosen.html
+++ b/templates/detailPiDosen.html
@@ -69,7 +69,7 @@
                                 <form action="" method="post" id="formtolak" style="padding: 5px; padding-right: 70px;">
                                     {% csrf_token %} 
                                     <input type="hidden" name="status" id="status" value="11">
-                                    <button id="tolak" type="submit" class="btn btn-danger">Tolak</button>
+                                    <button id="tolak" type="submit" class="btn btn-danger" formaction="">Tolak</button>
                                 </form>
                                 <hr>
                             </div>
@@ -85,8 +85,11 @@
                         <a href="{% url 'update_pi_dosen' id=pi.id %}" class="btn btn-primary">Edit</a>
                         {% elif pi.status == 9 and success %}
                         <a href="/home/dosen/create" class="btn btn-secondary" >Back</a> 
-                        {% elif pi.status == 9 %}
+                        {% elif pi.status == 9%}
                         <a href="{% url 'confirm_pi' %}" class="btn btn-secondary" >Back</a> 
+                        {% elif success and pi.status == 10 or success and pi.status == 11 %}
+                        <a href="{% url 'confirm_pi' %}" class="btn btn-secondary" >Back</a> 
+                        <a href="{% url 'read_pi_dosen' %}" class="btn btn-info" >Lihat Jurnal Dibimbing</a> 
                         {% else %}
                         <a href="{{request.META.HTTP_REFERER}}" class="btn btn-secondary" >Back</a> 
                         {% endif %}
diff --git a/templates/detailProceeding.html b/templates/detailProceeding.html
index 5cc0779..3419e3d 100644
--- a/templates/detailProceeding.html
+++ b/templates/detailProceeding.html
@@ -28,7 +28,11 @@
                         <p class="card-text">File: <a href="/proceeding/viewpdf/{{ proceeding.pdf }}">{{ proceeding.pdf }}</a></p>
                         <p class="card-text">Created at: {{ proceeding.created_at }}</p>
                         <p class="card-text">Modified at: {{ proceeding.modified_at }}</p>
-                        <a href="{% url 'proceeding' %}" class="btn btn-secondary">Back</a>
+                        {% if proceeding.status == 9 %}
+                        <a href="{% url 'publikasi ilmiah' %}" class="btn btn-secondary">Back</a>
+                        {% else %}
+                        <a href="{{request.META.HTTP_REFERER}}" class="btn btn-secondary">Back</a>
+                        {% endif %}
                         <a href="{{ proceeding.get_edit_url }}" class="btn btn-primary">Edit</a>
                         {% if proceeding.status != 1 and dosenPembimbing == False and proceeding.status != 9 and proceeding.status != 11 %}
                         <a href="{{ proceeding.get_update_status_url }}" class="btn btn-warning">Update Status</a>
diff --git a/templates/detailProceedingDosen.html b/templates/detailProceedingDosen.html
index 015704f..e72dd64 100644
--- a/templates/detailProceedingDosen.html
+++ b/templates/detailProceedingDosen.html
@@ -77,8 +77,11 @@
                         <a href="{% url 'update_proceeding_dosen' id=proceeding.id %}" class="btn btn-primary">Edit</a>
                         {% elif proceeding.status == 9 and success %}
                         <a href="/home/dosen/create" class="btn btn-secondary" >Back</a> 
-                        {% elif proceeding.status == 9 %}
+                        {% elif proceeding.status == 9%}
                         <a href="{% url 'confirm_pi' %}" class="btn btn-secondary" >Back</a> 
+                        {% elif success and proceeding.status == 10 or success and proceeding.status == 11 %}
+                        <a href="{% url 'confirm_pi' %}" class="btn btn-secondary" >Back</a> 
+                        <a href="{% url 'read_pi_dosen' %}" class="btn btn-info" >Lihat Jurnal Dibimbing</a> 
                         {% else %}
                         <a href="{{request.META.HTTP_REFERER}}" class="btn btn-secondary" >Back</a> 
                         {% endif %}
-- 
GitLab