diff --git a/pi/views.py b/pi/views.py index 7f66f4afc81503f23ccfe035b0b72a2a9ad27740..c8425b23f93afc0a75d14bd2f40d95a39a870c7f 100644 --- a/pi/views.py +++ b/pi/views.py @@ -23,6 +23,7 @@ from dotenv import load_dotenv load_dotenv('.env') import smtplib from semester.views import get_active_semester +from publisher.views import get_active_jurnal publikasiIlmiahMahasiswa = 'search_pi_mahasiswa' homeDosenCreate = '/home/dosen/create' @@ -154,6 +155,7 @@ def update_pi_dosen(request, id): def update_pi_status(request, pi, form_template, success_url): form = PiUpdateStatusForm() + jurnal_list = get_active_jurnal() if request.method == "POST": form = PiUpdateStatusForm(request.POST, request.FILES, instance=pi) if form.is_valid(): @@ -173,8 +175,8 @@ def update_pi_status(request, pi, form_template, success_url): form_object.save() return redirect(success_url) else: - return render(request, form_template, {'error': True, 'form': form, "pi": pi}) - context = {'form': form, "pi": pi} + return render(request, form_template, {'error': True, 'form': form, "pi": pi, "jurnal_list": jurnal_list}) + context = {'form': form, "pi": pi, "jurnal_list": jurnal_list} if dosen.objects.filter(user=request.user).exists(): 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) @@ -201,7 +203,8 @@ def update_status_pi_dosen(request, id): @require_http_methods(["GET", "POST"]) def update_status_to_published_pi(request, id, template_name, redirect_url): - pi = Pi.objects.get(id=id) + pi = Pi.objects.get(id=id) + jurnal_list = get_active_jurnal() form = PiUpdateStatusToPublishedForm() if request.method == "POST": @@ -216,10 +219,10 @@ def update_status_to_published_pi(request, id, template_name, redirect_url): return redirect(redirect_url) else: - return render(request, template_name, {'error': True, 'form': form, "pi": pi}) + return render(request, template_name, {'error': True, 'form': form, "pi": pi, "jurnal_list": jurnal_list}) # GET request - context = {'form': form, "pi": pi} + context = {'form': form, "pi": pi, "jurnal_list": jurnal_list} if dosen.objects.filter(user=request.user).exists(): 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) diff --git a/ppi/settings.py b/ppi/settings.py index e8f3cc98cae44e4c6e41398004e426610a49c376..15b48592574761ded2b1a8077372e24a7252d8bb 100644 --- a/ppi/settings.py +++ b/ppi/settings.py @@ -46,6 +46,7 @@ INSTALLED_APPS = [ 'sm.apps.SmConfig', 'pi.apps.PiConfig', 'proceeding.apps.ProceedingConfig', + 'publisher.apps.PublisherConfig', 'semester.apps.SemesterConfig', 'django_filters', 'widget_tweaks' diff --git a/ppi/urls.py b/ppi/urls.py index 09fec1b143bb096741ad9311097accc11bb50229..a975dc6361092f0941945b3dd0c26a12cb1c7a83 100644 --- a/ppi/urls.py +++ b/ppi/urls.py @@ -22,5 +22,6 @@ urlpatterns = [ path('sm/', include('sm.urls')), path('pi/', include('pi.urls')), path('proceeding/', include('proceeding.urls')), + path('publisher/', include('publisher.urls')), path('semester/', include('semester.urls')), ] diff --git a/proceeding/views.py b/proceeding/views.py index 0a93e0207254a4209ed9f7b85e2f976f26d82846..da08d7dbabbba952f15d776f0c12523d13b9c4ca 100644 --- a/proceeding/views.py +++ b/proceeding/views.py @@ -19,6 +19,7 @@ from dotenv import load_dotenv load_dotenv('.env') import smtplib from semester.views import get_active_semester +from publisher.views import get_active_konferensi publikasiIlmiahMahasiswa = 'search_pi_mahasiswa' homeDosenCreate = '/home/dosen/create' @@ -148,6 +149,7 @@ def update_proceeding_dosen(request, id): def update_proceeding_status(request, id, success_url, template_name): proceeding = Proceeding.objects.get(id=id) form = ProceedingUpdateStatusForm() + konferensi_list = get_active_konferensi() if request.method == "POST": form = ProceedingUpdateStatusForm(request.POST, request.FILES, instance=proceeding) @@ -170,9 +172,9 @@ def update_proceeding_status(request, id, success_url, template_name): form_object.save() return redirect(success_url) else: - return render(request, template_name, {'error':True,'form':form, "proceeding":proceeding}) + return render(request, template_name, {'error':True,'form':form, "proceeding":proceeding, 'konferensi_list': konferensi_list}) - context = {'form':form, "proceeding":proceeding} + context = {'form':form, "proceeding":proceeding, 'konferensi_list': konferensi_list} return render(request, template_name, context) @@ -189,7 +191,8 @@ def update_status_proceeding_dosen(request, id): def update_status_to_published_proceeding(request, id, template_name, success_url): - proceeding = Proceeding.objects.get(id=id) + proceeding = Proceeding.objects.get(id=id) + konferensi_list = get_active_konferensi() form = ProceedingUpdateStatusToPublishedForm() if request.method == "POST": @@ -204,10 +207,10 @@ def update_status_to_published_proceeding(request, id, template_name, success_ur return redirect(success_url) else: - return render(request, template_name, {'error': True, 'form': form, 'proceeding': proceeding}) + return render(request, template_name, {'error': True, 'form': form, 'proceeding': proceeding, 'konferensi_list': konferensi_list}) # GET request - context = {'form': form, 'proceeding': proceeding} + context = {'form': form, 'proceeding': proceeding, 'konferensi_list': konferensi_list} return render(request, template_name, context) @require_http_methods(["GET", "POST"]) diff --git a/publisher/__init__.py b/publisher/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/publisher/admin.py b/publisher/admin.py new file mode 100644 index 0000000000000000000000000000000000000000..1487e51a0523e41911238620bb7f8c0b2fe2f10f --- /dev/null +++ b/publisher/admin.py @@ -0,0 +1,4 @@ +from django.contrib import admin +from .models import Publisher +# Register your models here. +admin.site.register(Publisher) diff --git a/publisher/apps.py b/publisher/apps.py new file mode 100644 index 0000000000000000000000000000000000000000..7d29520dc9f1fe849a035d77057ba268c6cca57c --- /dev/null +++ b/publisher/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class PublisherConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'publisher' diff --git a/publisher/forms.py b/publisher/forms.py new file mode 100644 index 0000000000000000000000000000000000000000..b66bc49f8b98081525ff6a8173ba9d74a36dcb5b --- /dev/null +++ b/publisher/forms.py @@ -0,0 +1,9 @@ +from django import forms +from .models import Publisher + + +class PublisherAddForm(forms.ModelForm): + class Meta: + model = Publisher + fields = ['nama', 'tipe'] + diff --git a/publisher/migrations/0001_initial.py b/publisher/migrations/0001_initial.py new file mode 100644 index 0000000000000000000000000000000000000000..8933f3be723e7518931ce5031fab5a800093535b --- /dev/null +++ b/publisher/migrations/0001_initial.py @@ -0,0 +1,26 @@ +# Generated by Django 3.2.8 on 2023-06-05 11:30 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Publisher', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('nama', models.CharField(max_length=500, unique=True)), + ('tipe', models.CharField(choices=[('Jurnal', 'Jurnal'), ('Konferensi', 'Konferensi')], max_length=100)), + ('is_active', models.BooleanField(default=True)), + ], + options={ + 'ordering': ['nama'], + }, + ), + ] diff --git a/publisher/migrations/__init__.py b/publisher/migrations/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/publisher/models.py b/publisher/models.py new file mode 100644 index 0000000000000000000000000000000000000000..853450aa43b15d55ca528cb3ad723a2a6be4cd4d --- /dev/null +++ b/publisher/models.py @@ -0,0 +1,19 @@ +from django.db import models + +TYPE_CHOICES = [ + ('Jurnal', 'Jurnal'), + ('Konferensi', 'Konferensi'), +] + + +# Create your models here. +class Publisher(models.Model): + nama = models.CharField(max_length=500, unique=True) + tipe = models.CharField(choices=TYPE_CHOICES, max_length=100) + is_active = models.BooleanField(default=True) + + def __str__(self): + return self.nama + + class Meta: + ordering = ['nama'] diff --git a/publisher/tests.py b/publisher/tests.py new file mode 100644 index 0000000000000000000000000000000000000000..b878ad5b532018a18f370e3372dcab9881ea9eda --- /dev/null +++ b/publisher/tests.py @@ -0,0 +1,88 @@ +from django.test import TestCase +from django.contrib.auth.models import User +from django.urls import reverse +from http import HTTPStatus +from django.http.request import HttpRequest +from .forms import PublisherAddForm +from .models import Publisher + + +# Create your tests here. +class AddPublisherTest(TestCase): + def setUp(self) -> None: + self.url = reverse('publisher_page') + self.template_name = 'publisherPage.html' + self.form_class = PublisherAddForm + self.admin = User.objects.create_superuser( + username="admin", + email="admin@email.com", + password="password99", + ) + self.admin.save() + + self.nama = "ICACSIS" + self.tipe = "Konferensi" + + def test_add_publisher_page(self): + self.client.login(username="admin", password="password99") + response = self.client.get(self.url) + self.assertEqual(response.status_code, HTTPStatus.OK) + self.assertTemplateUsed(response, self.template_name) + + def test_add_publisher_post(self): + self.client.login(username="admin", password="password99") + publisher_data = { + 'nama': self.nama, + 'tipe': self.tipe + } + response = self.client.post(self.url, data=publisher_data) + self.assertEqual(response.status_code, 302) + + publisher_object = Publisher.objects.get(nama=self.nama, tipe=self.tipe) + self.assertTrue(publisher_object.is_active) + + def test_add_publisher_post_not_valid(self): + self.client.login(username="admin", password="password99") + publisher_request = HttpRequest() + publisher_data = { + 'nama': "jurnal", + 'term': 123, + } + + publisher_request.POST = publisher_data + form = self.form_class(publisher_request.POST) + self.assertFalse(form.is_valid()) + self.assertEqual(Publisher.objects.count(), 0) + + +class SoftDeletePublisherTest(TestCase): + def setUp(self) -> None: + self.admin = User.objects.create_superuser( + username="admin", + email="admin@email.com", + password="password99", + ) + self.admin.save() + + self.publisher = Publisher.objects.create( + nama="Jurnal Risa", + tipe="Jurnal", + ) + self.publisher.save() + + self.url = "/publisher/soft_delete?nama=" + self.publisher.nama + self.template_name = 'softDeletePublisher.html' + + def test_soft_delete_publisher(self): + self.client.login(username="admin", password="password99") + response = self.client.get(self.url) + self.assertEqual(response.status_code, 302) + + current_publisher_state = Publisher.objects.get(nama=self.publisher.nama) + self.assertFalse(current_publisher_state.is_active) + + def test_soft_delete_publisher_not_found(self): + self.client.login(username="admin", password="password99") + response = self.client.get("/publisher/soft_delete?publisher=not-exist") + self.assertEqual(response.status_code, 302) + diff --git a/publisher/urls.py b/publisher/urls.py new file mode 100644 index 0000000000000000000000000000000000000000..0703eb737d74c6f718a21b6e01178d3c1ff02b4c --- /dev/null +++ b/publisher/urls.py @@ -0,0 +1,13 @@ +from . import views +from django.urls import path +from django.conf import settings +from django.conf.urls import url +from django.conf.urls.static import static + +urlpatterns = [ + path('', views.publisher_page, name='publisher_page'), + path('soft_delete', views.soft_delete_publisher, name='soft_delete_publisher'), +] + +if settings.DEBUG: + urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) diff --git a/publisher/views.py b/publisher/views.py new file mode 100644 index 0000000000000000000000000000000000000000..9e14dda6e6cb4b876bab71819c47cbd91db15c7f --- /dev/null +++ b/publisher/views.py @@ -0,0 +1,45 @@ +from django.shortcuts import render, redirect +from authentication.decorators import admin_required +from .models import Publisher +from .forms import PublisherAddForm + + +@admin_required +def publisher_page(request): + if request.method == "POST": + form = PublisherAddForm(request.POST) + if form.is_valid(): + form_object = form.save(commit=False) + try: + exist = Publisher.objects.get(nama=form_object.nama) + exist.is_active = True + exist.save() + except Publisher.DoesNotExist: + form_object.is_active = True + form_object.save() + + return redirect("/publisher") + jurnal_list = get_active_jurnal() + konferensi_list = get_active_konferensi() + return render(request, 'publisherPage.html', context={'jurnal_list':jurnal_list, 'konferensi_list':konferensi_list}) + + +@admin_required +def soft_delete_publisher(request): + nama = request.GET.get("nama") + if request.method == "GET": + try: + exist = Publisher.objects.get(nama=nama) + exist.is_active = False + exist.save() + except Publisher.DoesNotExist: + pass + return redirect("/publisher") + + +def get_active_jurnal(): + return Publisher.objects.filter(is_active=True, tipe="Jurnal") + + +def get_active_konferensi(): + return Publisher.objects.filter(is_active=True, tipe="Konferensi") diff --git a/semester/tests.py b/semester/tests.py index 2691cd0a02d1d98191b7d5ecc1b54abf0237d879..15668778dbb4dff428565fc0f0d3a674d20f746a 100644 --- a/semester/tests.py +++ b/semester/tests.py @@ -11,8 +11,8 @@ from .views import get_active_semester_choices # Create your tests here. class AddSemesterTest(TestCase): def setUp(self) -> None: - self.url = reverse('add_semester') - self.template_name = 'addSemester.html' + self.url = reverse('semester_page') + self.template_name = 'semesterPage.html' self.form_class = SemesterAddForm self.admin = User.objects.create_superuser( username="admin", @@ -32,19 +32,15 @@ class AddSemesterTest(TestCase): def test_add_semester_post(self): self.client.login(username="admin", password="password99") - semester_request = HttpRequest() semester_data = { 'tahun': self.tahun, 'term': self.term } response = self.client.post(self.url, data=semester_data) - self.assertEqual(response.status_code, HTTPStatus.OK) + self.assertEqual(response.status_code, 302) - semester_request.POST = semester_data - form = self.form_class(semester_request.POST) - self.assertTrue(form.is_valid()) - semester_object = form.save(commit=False) - self.assertIsInstance(semester_object, Semester) + semester_object = Semester.objects.get(tahun=self.tahun, term=self.term) + self.assertTrue(semester_object.is_active) def test_add_semester_post_not_valid(self): self.client.login(username="admin", password="password99") @@ -60,33 +56,6 @@ class AddSemesterTest(TestCase): self.assertEqual(Semester.objects.count(), 0) -class SoftDeleteSemesterFormTest(TestCase): - def setUp(self) -> None: - self.url = reverse('soft_delete_semester_form') - self.template_name = 'softDeleteSemester.html' - self.admin = User.objects.create_superuser( - username="admin", - email="admin@email.com", - password="password99", - ) - self.admin.save() - - self.semester = Semester.objects.create( - semester="2022-23/Genap", - tahun=2022, - term="Genap", - is_active=True - ) - self.semester.save() - - def test_soft_delete_semester_page(self): - self.client.login(username="admin", password="password99") - response = self.client.get(self.url) - self.assertEqual(response.status_code, HTTPStatus.OK) - self.assertTemplateUsed(response, self.template_name) - self.assertContains(response, self.semester.semester) - - class SoftDeleteSemesterTest(TestCase): def setUp(self) -> None: self.admin = User.objects.create_superuser( @@ -105,7 +74,6 @@ class SoftDeleteSemesterTest(TestCase): self.semester.save() self.url = "/semester/soft_delete?semester=" + self.semester.semester - self.template_name = 'softDeleteSemester.html' def test_soft_delete_semester(self): self.client.login(username="admin", password="password99") diff --git a/semester/urls.py b/semester/urls.py index db1bb0b423bd8f93c1ddb77b4cd10e3c739f8e03..2252341d5bb9aa40a1cdc41b84a2d54a77f0b451 100644 --- a/semester/urls.py +++ b/semester/urls.py @@ -5,8 +5,7 @@ from django.conf.urls import url from django.conf.urls.static import static urlpatterns = [ - path('add', views.add_semester, name='add_semester'), - path('soft_delete_form', views.soft_delete_semester_form, name='soft_delete_semester_form'), + path('', views.semester_page, name='semester_page'), path('soft_delete', views.soft_delete_semester, name='soft_delete_semester'), ] diff --git a/semester/views.py b/semester/views.py index 8797df15c0bbbe13a16fff862f1d27afa2ee9aa0..a256ef7aa9667f17bab28046a96fc3758036ea73 100644 --- a/semester/views.py +++ b/semester/views.py @@ -6,7 +6,7 @@ from .forms import SemesterAddForm @admin_required -def add_semester(request): +def semester_page(request): if request.method == "POST": form = SemesterAddForm(request.POST) if form.is_valid(): @@ -22,13 +22,9 @@ def add_semester(request): form_object.is_active = True form_object.save() - return render(request, 'addSemester.html', context={'success': True}) - return render(request, 'addSemester.html') - -@admin_required -def soft_delete_semester_form(request): + return redirect("/semester") semester_list = get_active_semester() - return render(request, 'softDeleteSemester.html', context={'semester_list': semester_list}) + return render(request, 'semesterPage.html', context={'semester_list': semester_list}) @admin_required def soft_delete_semester(request): @@ -40,7 +36,7 @@ def soft_delete_semester(request): exist.save() except Semester.DoesNotExist: pass - return redirect("/semester/soft_delete_form") + return redirect("/semester") def get_active_semester(): diff --git a/templates/baseAdmin.html b/templates/baseAdmin.html index 8da8779dc4e42d24354f37c75fd4ffcfbb179c39..1f0e601c1f6eea6b88eeb942ac70f2bbade6ac27 100644 --- a/templates/baseAdmin.html +++ b/templates/baseAdmin.html @@ -32,9 +32,12 @@ <div class="navbar navbar-right d-flex flex-row" id="navbarSupportedContent"> <ul class="navbar-nav d-flex flex-row"> <li class="nav-item active px-4"> - <a class="nav-link" href="/semester/add">Atur Semester</a> + <a class="nav-link" href="/semester">Kelola Semester</a> </li> - <li class="nav-item active px-4"> + <li class="nav-item active"> + <a class="nav-link" href="/publisher">Kelola Nama Jurnal/Konferensi</a> + </li> + <li class="nav-item px-4"> <a class="nav-link" href="/pi/search_pi_admin">Publikasi Ilmiah</a> </li> <li class="nav-item"> diff --git a/templates/detailPiAdmin.html b/templates/detailPiAdmin.html index 65a0e25a1c699a82f55885421bfacf9f619289a9..15eec4625fe94975920e63dcee7b78d9a6397015 100644 --- a/templates/detailPiAdmin.html +++ b/templates/detailPiAdmin.html @@ -37,6 +37,7 @@ <p class="card-text">PDF Publikasi: <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> + <a href="{{request.META.HTTP_REFERER}}" class="btn btn-secondary">Back</a> </div> </div> </div> diff --git a/templates/detailProceedingAdmin.html b/templates/detailProceedingAdmin.html index ea9a399f5f2c0e02334a2cc288f82e912db333ef..86120ff6da7a9d4646adee485032809cb69ef930 100644 --- a/templates/detailProceedingAdmin.html +++ b/templates/detailProceedingAdmin.html @@ -32,6 +32,7 @@ <p class="card-text">PDF Publikasi: <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="{{request.META.HTTP_REFERER}}" class="btn btn-secondary">Back</a> </div> </div> </div> diff --git a/templates/detailSmAdmin.html b/templates/detailSmAdmin.html index 8d6aaf91d52d687fa03c340ce8fa10982e04a424..fa68318df4474dbbef0793b4ec787b8c1085bcfa 100644 --- a/templates/detailSmAdmin.html +++ b/templates/detailSmAdmin.html @@ -17,6 +17,7 @@ <p class="card-text">PDF Studi: <a href="/sm/viewpdf/{{ sm.pdf }}">{{ sm.pdf }}</a></p> <p class="card-text">Created at: {{ sm.created_at }}</p> <p class="card-text">Modified at: {{ sm.modified_at }}</p> + <a href="{{request.META.HTTP_REFERER}}" class="btn btn-secondary">Back</a> </div> </div> </div> diff --git a/templates/publisherPage.html b/templates/publisherPage.html new file mode 100644 index 0000000000000000000000000000000000000000..b12fd8334e251072621d6912aa821b04744d82fe --- /dev/null +++ b/templates/publisherPage.html @@ -0,0 +1,59 @@ +{% extends 'baseAdmin.html' %} +{% block content %} +<div class="container mt-5 mb-5"> + <div class="row justify-content-center"> + <div class="col-md-8 col-lg-7"> + <div class="card"> + <div class="card-header"> + <h5 class="card-title mb-0">Kelola Jurnal dan Konferensi</h5> + </div> + <div class="card-body"> + <form method="post" enctype="multipart/form-data"> + {% csrf_token %} + + <h5>Tambah Nama Jurnal/Konferensi:</h5> + <div class="form-group row"> + <div class="input-group"> + <div class="input-group-prepend"> + <label class="input-group-text" for="tipe">Tipe:</label> + </div> + <select class="custom-select form-control" id="tipe" name="tipe"> + <option>Jurnal</option> + <option>Konferensi</option> + </select> + </div> + </div> + + <div class="form-group row"> + <label for="nama" class="col-sm-3 col-form-label">Nama</label> + <div class="col-sm-9"> + <input type="text" class="form-control" id="nama" name="nama" required oninvalid="this.setCustomValidity('Please fill out this field')" oninput="this.setCustomValidity('')"> + </div> + </div> + + <div class="form-group row mt-3"> + <div class="col-sm-9 ml-auto"> + <button type="submit" class="btn btn-primary">Submit</button> + </div> + </div> + <hr> + + </form> + + <div class="mt-4"> + <h5>Daftar Nama Jurnal:</h5> + {% for jurnal in jurnal_list %} + <p>{{ jurnal.nama }} - <a href="/publisher/soft_delete?nama={{ jurnal.nama }}">Delete</a></p> + {% endfor %} + <h5>Daftar Nama Konferensi:</h5> + {% for konferensi in konferensi_list %} + <p>{{ konferensi.nama }} - <a href="/publisher/soft_delete?nama={{ konferensi.nama }}">Delete</a></p> + {% endfor %} + </div> + + </div> + </div> + </div> + </div> +</div> +{% endblock content %} diff --git a/templates/searchResultSmAdmin.html b/templates/searchResultSmAdmin.html index 65b8dfc3ccf605f6c8034858c5c6ad7c5d30b270..d3ed00a587c1fac75642a62147919e9cf20ece5d 100644 --- a/templates/searchResultSmAdmin.html +++ b/templates/searchResultSmAdmin.html @@ -39,7 +39,7 @@ box-shadow: 0 0 40px rgba(51, 51, 51, .1); <div class="container-fluid"> <div class="mx-md-5"> <div class="d-flex justify-content-between align-items-center"> - <h1 class="display-4 mb-0">Studi Mandiri Dibuat</h1> + <h1 class="display-4 mb-0">Studi Mandiri</h1> </div> </div> diff --git a/templates/addSemester.html b/templates/semesterPage.html similarity index 81% rename from templates/addSemester.html rename to templates/semesterPage.html index 170e52fcdae23e4830e08e2ffda0ad3cf8787065..7206519a8f4ac265b2458f743ae81e9db8e4cd99 100644 --- a/templates/addSemester.html +++ b/templates/semesterPage.html @@ -10,14 +10,6 @@ <div class="card-body"> <form method="post" enctype="multipart/form-data"> {% csrf_token %} - - <div class="form-group row"> - <div class="col-sm-12 text-right"> - <p class="mb-0">Jika ingin hapus semester</p> - <a href="{% url 'soft_delete_semester_form' %}" class="btn btn-primary">klik disini →</a> - </div> - </div> - <div class="form-group row"> <div class="input-group"> <div class="input-group-prepend"> @@ -41,12 +33,18 @@ <div class="form-group row mt-3"> <div class="col-sm-9 ml-auto"> <button type="submit" class="btn btn-primary">Submit</button> - <a href="{% url 'add_semester' %}" class="btn btn-secondary">Back</a> </div> </div> <hr> </form> + + <div class="mt-4"> + <h5>Daftar Semester:</h5> + {% for semester in semester_list %} + <p>{{ semester.semester }} - <a href="/semester/soft_delete?semester={{ semester.semester }}">Delete</a></p> + {% endfor %} + </div> </div> </div> </div> diff --git a/templates/softDeleteSemester.html b/templates/softDeleteSemester.html deleted file mode 100644 index 54d2264ceb71d6410cd8426a599a0e7f6ca4a617..0000000000000000000000000000000000000000 --- a/templates/softDeleteSemester.html +++ /dev/null @@ -1,29 +0,0 @@ -{% extends 'baseAdmin.html' %} -{% block content %} -<div class="container mt-5 mb-5"> - <div class="row justify-content-center"> - <div class="col-md-8 col-lg-7"> - <div class="card"> - <div class="card-header"> - <h5 class="card-title mb-0">Hapus Semester</h5> - </div> - - - <div class="card-body"> - - <div class="form-group row"> - <div class="col-sm-12 text-right"> - <p class="mb-0">Jika ingin tambah semester</p> - <a href="{% url 'add_semester' %}" class="btn btn-primary">klik disini →</a> - </div> - </div> - - {% for semester in semester_list %} - <p>{{ semester.semester }} - <a href="/semester/soft_delete?semester={{ semester.semester }}">Delete</a></p> - {% endfor %} - </div> - </div> - </div> - </div> -</div> -{% endblock content %} diff --git a/templates/updateSm.html b/templates/updateSm.html index 5e8b72d0dc5253646b8d02da7f56b85ba642ff06..fb2b843f85fcd1b3b9e92b5509b463122c12737e 100644 --- a/templates/updateSm.html +++ b/templates/updateSm.html @@ -40,11 +40,11 @@ <input type="text" class="form-control" id="topik" name="topik" value="{{ sm.topik }}"> </div> <div class="form-group"> - <label for="nama">Nama:</label> + <label for="nama">Nama Lengkap:</label> <input type="text" class="form-control" id="nama" name="nama" value="{{ sm.nama }}"> </div> <div id="autocomplete" class="form-group"> - <label for="dosen">Dosen:</label> + <label for="dosen">Dosen Pembimbing:</label> <input type="text" class="form-control" id="dosen" name="dosen" value="{{ sm.dosen }}"> <ul class="autocomplete-result-list" ></ul> </div> diff --git a/templates/updateStatusPi.html b/templates/updateStatusPi.html index a7b903a9aea12d44a2276f78ccfe868dc60bd53e..7009a568b31b2a179617c8e830e881c49c1d588b 100644 --- a/templates/updateStatusPi.html +++ b/templates/updateStatusPi.html @@ -37,18 +37,18 @@ </div> <div class="form-group"> <label for="nama_jurnal">Nama Jurnal:</label> - <select class="custom-select form-control mb-2" id="nama_jurnal" name="nama_jurnal"> - <option selected>Pilih salah satu...</option> - <option value="Jurnal B">Jurnal B</option> - <option value="Jurnal Sistem Informasi - Next Generation (JSI-NG)">Jurnal Sistem Informasi - Next Generation (JSI-NG)</option> + <select class="custom-select form-control mb-2" id="nama_jurnal_select" name="nama_jurnal_select"> + <option selected value="">Pilih salah satu...</option> + {% for jurnal in jurnal_list %} + <option {% if pi.nama_jurnal == jurnal.nama %}selected{% endif %}>{{ jurnal.nama }}</option> + {% endfor %} <option value="Lainnya">Lainnya</option> </select> - <input type="text" class="form-control" id="nama_jurnal" name="nama_jurnal" value="{{ pi.nama_jurnal }}" disabled> + <input type="text" class="form-control" id="nama_jurnal" name="nama_jurnal" value="{{ pi.nama_jurnal }}"> </div> <div class="form-group"> <label for="deskripsi_jurnal">Deskripsi Jurnal:</label> - <textarea class="form-control" id="deskripsi_jurnal" name="deskripsi_jurnal">{{ pi.deskripsi_jurnal }} - </textarea> + <textarea class="form-control" id="deskripsi_jurnal" name="deskripsi_jurnal">{{ pi.deskripsi_jurnal }}</textarea> </div> <div class="form-group"> <label for="latest_bukti">Bukti Perubahan Status (jpeg/png):</label> @@ -62,14 +62,19 @@ </div> <script> - $("select[name='nama_jurnal']").change(function(){ + $(window).on('load', function(){ + $('input[name="nama_jurnal"]').hide(); + $('input[name="nama_jurnal"]').val("{{ pi.nama_jurnal }}"); + }) + $("select[name='nama_jurnal_select']").change(function(){ new_value = $(this).val(); if (new_value !== "Lainnya") { - $('input[name="nama_jurnal"]').attr('disabled','disabled'); $('input[name="nama_jurnal"]').val(new_value); + $('input[name="nama_jurnal"]').hide(); + } else { - $('input[name="nama_jurnal"]').removeAttr('disabled'); - $('input[name="nama_jurnal"]').val(""); + $('input[name="nama_jurnal"]').show(); + $('input[name="nama_jurnal"]').val("{{ pi.nama_jurnal }}"); } }); </script> diff --git a/templates/updateStatusPiDosen.html b/templates/updateStatusPiDosen.html index 7b703ca1d8ff86e5e15ee06d0b276acebf88d607..c88ab5a08ddfec57cab96f3cfb356dfcb5076fb8 100644 --- a/templates/updateStatusPiDosen.html +++ b/templates/updateStatusPiDosen.html @@ -37,18 +37,18 @@ </div> <div class="form-group"> <label for="nama_jurnal">Nama Jurnal:</label> - <select class="custom-select form-control mb-2" id="nama_jurnal" name="nama_jurnal"> - <option selected>Pilih salah satu...</option> - <option value="Jurnal B">Jurnal B</option> - <option value="Jurnal Sistem Informasi - Next Generation (JSI-NG)">Jurnal Sistem Informasi - Next Generation (JSI-NG)</option> + <select class="custom-select form-control mb-2" id="nama_jurnal_select" name="nama_jurnal_select"> + <option selected value="">Pilih salah satu...</option> + {% for jurnal in jurnal_list %} + <option {% if pi.nama_jurnal == jurnal.nama %}selected{% endif %}>{{ jurnal.nama }}</option> + {% endfor %} <option value="Lainnya">Lainnya</option> </select> - <input type="text" class="form-control" id="nama_jurnal" name="nama_jurnal" value="{{ pi.nama_jurnal }}" disabled> + <input type="text" class="form-control" id="nama_jurnal" name="nama_jurnal" value="{{ pi.nama_jurnal }}"> </div> <div class="form-group"> <label for="deskripsi_jurnal">Deskripsi Jurnal:</label> - <textarea class="form-control" id="deskripsi_jurnal" name="deskripsi_jurnal">{{ pi.deskripsi_jurnal }} - </textarea> + <textarea class="form-control" id="deskripsi_jurnal" name="deskripsi_jurnal">{{ pi.deskripsi_jurnal }}</textarea> </div> <div class="form-group"> <label for="latest_bukti">Bukti Perubahan Status (jpeg/png):</label> @@ -62,15 +62,21 @@ </div> <script> - $("select[name='nama_jurnal']").change(function(){ - new_value = $(this).val(); - if (new_value !== "Lainnya") { - $('input[name="nama_jurnal"]').attr('disabled','disabled'); - $('input[name="nama_jurnal"]').val(new_value); - } else { - $('input[name="nama_jurnal"]').removeAttr('disabled'); - $('input[name="nama_jurnal"]').val(""); - } - }); + $(window).on('load', function(){ + $('input[name="nama_jurnal"]').hide(); + $('input[name="nama_jurnal"]').val("{{ pi.nama_jurnal }}"); + }) + $("select[name='nama_jurnal_select']").change(function(){ + new_value = $(this).val(); + if (new_value !== "Lainnya") { + $('input[name="nama_jurnal"]').val(new_value); + $('input[name="nama_jurnal"]').hide(); + + } else { + $('input[name="nama_jurnal"]').show(); + $('input[name="nama_jurnal"]').val("{{ pi.nama_jurnal }}"); + } + }); </script> + {% endblock %} diff --git a/templates/updateStatusProceeding.html b/templates/updateStatusProceeding.html index 7ba5b1723c79123a046ebf847a00501310d3098b..e6987558df773da552ce563fb80b7a415463c2c8 100644 --- a/templates/updateStatusProceeding.html +++ b/templates/updateStatusProceeding.html @@ -5,7 +5,7 @@ <div class="row mb-5"> <div class="col-md-8 mx-auto mt-3 text-center"> {% if proceeding.judul %} - <h3>Update Status - {{ pi.judul }}</h3> + <h3>Update Status - {{ proceeding.judul }}</h3> {% else %} <h3>Update Status Publikasi</h3> {% endif %} @@ -37,16 +37,18 @@ </div> <div class="form-group"> <label for="nama_konferensi">Nama Konferensi:</label> - <select class="custom-select form-control mb-2" id="nama_konferensi" name="nama_konferensi"> - <option selected value="Lainnya">Lainnya</option> - <option value="Konferensi B">Konferensi B</option> - <option value="Konferensi Sistem Informasi - Next Generation (JSI-NG)">Konferensi Sistem Informasi - Next Generation (JSI-NG)</option> + <select class="custom-select form-control mb-2" id="nama_konferensi_select" name="nama_konferensi_select"> + <option selected value="">Pilih salah satu...</option> + {% for konferensi in konferensi_list %} + <option {% if proceeding.nama_konferensi == konferensi.nama %}selected{% endif %}>{{ konferensi.nama }}</option> + {% endfor %} + <option value="Lainnya">Lainnya</option> </select> - <input type="text" class="form-control" id="nama_konferensi" name="nama_konferensi" value="{{ pi.nama_konferensi }}"> + <input type="text" class="form-control" id="nama_konferensi" name="nama_konferensi" value="{{ proceeding.nama_konferensi }}"> </div> <div class="form-group"> <label for="deskripsi_konferensi">Deskripsi Konferensi:</label> - <input type="text" class="form-control" id="deskripsi_konferensi" name="deskripsi_konferensi" value="{{ proceeding.deskripsi_konferensi }}"> + <textarea class="form-control" id="deskripsi_konferensi" name="deskripsi_konferensi">{{ proceeding.deskripsi_konferensi }}</textarea> </div> <div class="form-group"> <label for="latest_bukti">Bukti Perubahan Status (jpeg/png):</label> @@ -60,15 +62,22 @@ </div> <script> - $("select[name='nama_konferensi']").change(function(){ - new_value = $(this).val(); - if (new_value !== "Lainnya") { - $('input[name="nama_konferensi"]').attr('disabled','disabled'); - $('input[name="nama_konferensi"]').val(new_value); - } else { - $('input[name="nama_konferensi"]').removeAttr('disabled'); - $('input[name="nama_konferensi"]').val(""); - } - }); + $(window).on('load', function(){ + $('input[name="nama_konferensi"]').hide(); + $('input[name="nama_konferensi"]').val("{{ proceeding.nama_konferensi }}"); + }) + $("select[name='nama_konferensi_select']").change(function(){ + new_value = $(this).val(); + if (new_value !== "Lainnya") { + $('input[name="nama_konferensi"]').val(new_value); + $('input[name="nama_konferensi"]').hide(); + + } else { + $('input[name="nama_konferensi"]').show(); + $('input[name="nama_konferensi"]').val("{{ proceeding.nama_konferensi }}"); + } + }); </script> + + {% endblock %} diff --git a/templates/updateStatusProceedingDosen.html b/templates/updateStatusProceedingDosen.html index ed8b40d35769b69cedc192719daa21a7157bec30..3da2c6d7f2f58fe42dc7efe199dba9f942a7b405 100644 --- a/templates/updateStatusProceedingDosen.html +++ b/templates/updateStatusProceedingDosen.html @@ -37,18 +37,18 @@ </div> <div class="form-group"> <label for="nama_konferensi">Nama Konferensi:</label> - <select class="custom-select form-control mb-2" id="nama_konferensi" name="nama_konferensi"> - <option selected>Pilih salah satu...</option> - <option value="Konferensi B">Konferensi B</option> - <option value="Konferensi Sistem Informasi - Next Generation (JSI-NG)">Konferensi Sistem Informasi - Next Generation (JSI-NG)</option> + <select class="custom-select form-control mb-2" id="nama_konferensi_select" name="nama_konferensi_select"> + <option selected value="">Pilih salah satu...</option> + {% for konferensi in konferensi_list %} + <option {% if proceeding.nama_konferensi == konferensi.nama %}selected{% endif %}>{{ konferensi.nama }}</option> + {% endfor %} <option value="Lainnya">Lainnya</option> </select> - <input type="text" class="form-control" id="nama_konferensi" name="nama_konferensi" value="{{ pi.nama_konferensi }}" disabled> + <input type="text" class="form-control" id="nama_konferensi" name="nama_konferensi" value="{{ proceeding.nama_konferensi }}"> </div> <div class="form-group"> <label for="deskripsi_konferensi">Deskripsi Konferensi:</label> - <textarea class="form-control" id="deskripsi_konferensi" name="deskripsi_konferensi">{{ proceeding.deskripsi_konferensi }} - </textarea> + <textarea class="form-control" id="deskripsi_konferensi" name="deskripsi_konferensi">{{ proceeding.deskripsi_konferensi }}</textarea> </div> <div class="form-group"> <label for="latest_bukti">Bukti Perubahan Status (jpeg/png):</label> @@ -62,15 +62,20 @@ </div> <script> - $("select[name='nama_konferensi']").change(function(){ - new_value = $(this).val(); - if (new_value !== "Lainnya") { - $('input[name="nama_konferensi"]').attr('disabled','disabled'); - $('input[name="nama_konferensi"]').val(new_value); - } else { - $('input[name="nama_konferensi"]').removeAttr('disabled'); - $('input[name="nama_konferensi"]').val(""); - } - }); + $(window).on('load', function(){ + $('input[name="nama_konferensi"]').hide(); + $('input[name="nama_konferensi"]').val("{{ proceeding.nama_konferensi }}"); + }) + $("select[name='nama_konferensi_select']").change(function(){ + new_value = $(this).val(); + if (new_value !== "Lainnya") { + $('input[name="nama_konferensi"]').val(new_value); + $('input[name="nama_konferensi"]').hide(); + + } else { + $('input[name="nama_konferensi"]').show(); + $('input[name="nama_konferensi"]').val("{{ proceeding.nama_konferensi }}"); + } + }); </script> {% endblock %} diff --git a/templates/updateStatusToPublishedPi.html b/templates/updateStatusToPublishedPi.html index a1e4a195619a3d8e35a25e08170be4d1d6c1be3a..6956798dff84eb092740add5c92079d0f5edbba5 100644 --- a/templates/updateStatusToPublishedPi.html +++ b/templates/updateStatusToPublishedPi.html @@ -31,27 +31,27 @@ </div> <div class="form-group"> <label for="nama_jurnal">Nama Jurnal:</label> - <select class="custom-select form-control mb-2" id="nama_jurnal" name="nama_jurnal"> - <option selected>Pilih salah satu...</option> - <option value="Jurnal B">Jurnal B</option> - <option value="Jurnal Sistem Informasi - Next Generation (JSI-NG)">Jurnal Sistem Informasi - Next Generation (JSI-NG)</option> + <select class="custom-select form-control mb-2" id="nama_jurnal_select" name="nama_jurnal_select"> + <option selected value="">Pilih salah satu...</option> + {% for jurnal in jurnal_list %} + <option {% if pi.nama_jurnal == jurnal.nama %}selected{% endif %}>{{ jurnal.nama }}</option> + {% endfor %} <option value="Lainnya">Lainnya</option> </select> - <input type="text" class="form-control" id="nama_jurnal" name="nama_jurnal" value="{{ pi.nama_jurnal }}" disabled> + <input type="text" class="form-control" id="nama_jurnal" name="nama_jurnal" value="{{ pi.nama_jurnal }}"> </div> <div class="form-group"> <label for="deskripsi_jurnal">Deskripsi Jurnal:</label> - <textarea class="form-control" id="deskripsi_jurnal" name="deskripsi_jurnal">{{ pi.deskripsi_jurnal }} - </textarea> + <textarea class="form-control" id="deskripsi_jurnal" name="deskripsi_jurnal">{{ pi.deskripsi_jurnal }}</textarea> </div> <div class="form-group"> <label for="volume_jurnal">Volume Jurnal:</label> - <input type="text" class="form-control" id="volume_jurnal" name="volume_jurnal" value="" required> + <input type="text" class="form-control" id="volume_jurnal" name="volume_jurnal" value="{{ pi.volume_jurnal }}" required> <small id="volumeHelp" class="form-text text-muted">Contoh: 1, 2, 3, 4</small> </div> <div class="form-group"> <label for="quarter_jurnal">Quarter Jurnal:</label> - <input type="text" class="form-control" id="quarter_jurnal" name="quarter_jurnal" value="" required> + <input type="text" class="form-control" id="quarter_jurnal" name="quarter_jurnal" value="{{ pi.quarter_jurnal }}" required> <small id="quarterHelp" class="form-text text-muted">Contoh: Q1, Q2, Q3, Q4</small> </div> <div class="form-group"> @@ -60,17 +60,17 @@ </div> <div class="form-group"> <label for="doi_jurnal">DOI Jurnal:</label> - <input type="text" class="form-control" id="doi_jurnal" name="doi_jurnal" value="" required> + <input type="text" class="form-control" id="doi_jurnal" name="doi_jurnal" value="{{ pi.doi_jurnal }}" required> <small id="quarterHelp" class="form-text text-muted">Contoh: https://doi.org/10.35792/zot.32.5.2013.982</small> </div> <div class="form-group"> <label for="issue_jurnal">Issue Jurnal:</label> - <input type="text" class="form-control" id="issue_jurnal" name="issue_jurnal" value="" required> + <input type="text" class="form-control" id="issue_jurnal" name="issue_jurnal" value="{{ pi.issue_jurnal }}" required> <small id="quarterHelp" class="form-text text-muted">Contoh: 2</small> </div> <div class="form-group"> <label for="link_jurnal">Link Website Jurnal:</label> - <input type="text" class="form-control" id="link_jurnal" name="link_jurnal" value="" required> + <input type="text" class="form-control" id="link_jurnal" name="link_jurnal" value="{{ pi.link_jurnal }}" required> <small id="quarterHelp" class="form-text text-muted">Contoh: https://jurnalabc.com</small> </div> <div class="form-group"> @@ -78,22 +78,28 @@ <input type="file" class="form-control-file" id="latest_bukti" name="latest_bukti" accept="image/png, image/jpeg, image/jpg"> </div> <button type="submit" class="btn btn-primary">Submit</button> - <a href="{% url 'publikasi ilmiah' %}" class="btn btn-secondary">Back</a> + <a href="{% url 'search_pi_mahasiswa' %}" class="btn btn-secondary">Back</a> </form> </div> </div> </div> <script> - $("select[name='nama_jurnal']").change(function(){ - new_value = $(this).val(); - if (new_value !== "Lainnya") { - $('input[name="nama_jurnal"]').attr('disabled','disabled'); - $('input[name="nama_jurnal"]').val(new_value); - } else { - $('input[name="nama_jurnal"]').removeAttr('disabled'); - $('input[name="nama_jurnal"]').val(""); - } - }); + $(window).on('load', function(){ + $('input[name="nama_jurnal"]').hide(); + $('input[name="nama_jurnal"]').val("{{ pi.nama_jurnal }}"); + }) + $("select[name='nama_jurnal_select']").change(function(){ + new_value = $(this).val(); + if (new_value !== "Lainnya") { + $('input[name="nama_jurnal"]').val(new_value); + $('input[name="nama_jurnal"]').hide(); + + } else { + $('input[name="nama_jurnal"]').show(); + $('input[name="nama_jurnal"]').val("{{ pi.nama_jurnal }}"); + } + }); </script> + {% endblock %} diff --git a/templates/updateStatusToPublishedPiDosen.html b/templates/updateStatusToPublishedPiDosen.html index 5abdb286b44d5e08468f3040b61e8bf7d75c6949..d4d6a3466bf92217828acb2724af6194d5aae256 100644 --- a/templates/updateStatusToPublishedPiDosen.html +++ b/templates/updateStatusToPublishedPiDosen.html @@ -31,18 +31,18 @@ </div> <div class="form-group"> <label for="nama_jurnal">Nama Jurnal:</label> - <select class="custom-select form-control mb-2" id="nama_jurnal" name="nama_jurnal"> - <option selected>Pilih salah satu...</option> - <option value="Jurnal B">Jurnal B</option> - <option value="Jurnal Sistem Informasi - Next Generation (JSI-NG)">Jurnal Sistem Informasi - Next Generation (JSI-NG)</option> + <select class="custom-select form-control mb-2" id="nama_jurnal_select" name="nama_jurnal_select"> + <option selected value="">Pilih salah satu...</option> + {% for jurnal in jurnal_list %} + <option {% if pi.nama_jurnal == jurnal.nama %}selected{% endif %}>{{ jurnal.nama }}</option> + {% endfor %} <option value="Lainnya">Lainnya</option> </select> - <input type="text" class="form-control" id="nama_jurnal" name="nama_jurnal" value="{{ pi.nama_jurnal }}" disabled> + <input type="text" class="form-control" id="nama_jurnal" name="nama_jurnal" value="{{ pi.nama_jurnal }}"> </div> <div class="form-group"> <label for="deskripsi_jurnal">Deskripsi Jurnal:</label> - <textarea class="form-control" id="deskripsi_jurnal" name="deskripsi_jurnal">{{ pi.deskripsi_jurnal }} - </textarea> + <textarea class="form-control" id="deskripsi_jurnal" name="deskripsi_jurnal">{{ pi.deskripsi_jurnal }}</textarea> </div> <div class="form-group"> <label for="volume_jurnal">Volume Jurnal:</label> @@ -56,17 +56,17 @@ </div> <div class="form-group"> <label for="doi_jurnal">DOI Jurnal:</label> - <input type="text" class="form-control" id="doi_jurnal" name="doi_jurnal" value="" required> + <input type="text" class="form-control" id="doi_jurnal" name="doi_jurnal" value="{{ pi.doi_jurnal }}" required> <small id="quarterHelp" class="form-text text-muted">Contoh: https://doi.org/10.35792/zot.32.5.2013.982</small> </div> <div class="form-group"> <label for="issue_jurnal">Issue Jurnal:</label> - <input type="text" class="form-control" id="issue_jurnal" name="issue_jurnal" value="" required> + <input type="text" class="form-control" id="issue_jurnal" name="issue_jurnal" value="{{ pi.issue_jurnal }}" required> <small id="quarterHelp" class="form-text text-muted">Contoh: 2</small> </div> <div class="form-group"> <label for="link_jurnal">Link Website Jurnal:</label> - <input type="text" class="form-control" id="link_jurnal" name="link_jurnal" value="" required> + <input type="text" class="form-control" id="link_jurnal" name="link_jurnal" value="{{ pi.link_jurnal }}" required> <small id="quarterHelp" class="form-text text-muted">Contoh: https://jurnalabc.com</small> </div> <div class="form-group"> @@ -78,22 +78,28 @@ <input type="file" class="form-control-file" id="latest_bukti" name="latest_bukti" accept="image/png, image/jpeg, image/jpg"> </div> <button type="submit" class="btn btn-primary">Submit</button> - <a href="{% url 'publikasi ilmiah' %}" class="btn btn-secondary">Back</a> + <a href="{% url 'search_pi_dosen' %}" class="btn btn-secondary">Back</a> </form> </div> </div> </div> <script> - $("select[name='nama_jurnal']").change(function(){ - new_value = $(this).val(); - if (new_value !== "Lainnya") { - $('input[name="nama_jurnal"]').attr('disabled','disabled'); - $('input[name="nama_jurnal"]').val(new_value); - } else { - $('input[name="nama_jurnal"]').removeAttr('disabled'); - $('input[name="nama_jurnal"]').val(""); - } - }); + $(window).on('load', function(){ + $('input[name="nama_jurnal"]').hide(); + $('input[name="nama_jurnal"]').val("{{ pi.nama_jurnal }}"); + }) + $("select[name='nama_jurnal_select']").change(function(){ + new_value = $(this).val(); + if (new_value !== "Lainnya") { + $('input[name="nama_jurnal"]').val(new_value); + $('input[name="nama_jurnal"]').hide(); + + } else { + $('input[name="nama_jurnal"]').show(); + $('input[name="nama_jurnal"]').val("{{ pi.nama_jurnal }}"); + } + }); </script> + {% endblock %} diff --git a/templates/updateStatusToPublishedProceeding.html b/templates/updateStatusToPublishedProceeding.html index dcd7775f762da430a96059075665417dccd8ac0a..4aa629c8a049c41f54a8a5a953f4232da42d00ba 100644 --- a/templates/updateStatusToPublishedProceeding.html +++ b/templates/updateStatusToPublishedProceeding.html @@ -31,18 +31,18 @@ </div> <div class="form-group"> <label for="nama_konferensi">Nama Konferensi:</label> - <select class="custom-select form-control mb-2" id="nama_konferensi" name="nama_konferensi"> - <option selected>Pilih salah satu...</option> - <option value="Konferensi B">Konferensi B</option> - <option value="Konferensi Sistem Informasi - Next Generation (JSI-NG)">Konferensi Sistem Informasi - Next Generation (JSI-NG)</option> + <select class="custom-select form-control mb-2" id="nama_konferensi_select" name="nama_konferensi_select"> + <option selected value="">Pilih salah satu...</option> + {% for konferensi in konferensi_list %} + <option {% if proceeding.nama_konferensi == konferensi.nama %}selected{% endif %}>{{ konferensi.nama }}</option> + {% endfor %} <option value="Lainnya">Lainnya</option> </select> - <input type="text" class="form-control" id="nama_konferensi" name="nama_konferensi" value="{{ pi.nama_konferensi }}" disabled> + <input type="text" class="form-control" id="nama_konferensi" name="nama_konferensi" value="{{ proceeding.nama_konferensi }}"> </div> <div class="form-group"> <label for="deskripsi_konferensi">Deskripsi Konferensi:</label> - <textarea class="form-control" id="deskripsi_konferensi" name="deskripsi_konferensi">{{ proceeding.deskripsi_konferensi }} - </textarea> + <textarea class="form-control" id="deskripsi_konferensi" name="deskripsi_konferensi">{{ proceeding.deskripsi_konferensi }}</textarea> </div> <div class="form-group"> <label for="tanggal_konferensi">Tanggal Konferensi:</label> @@ -53,22 +53,28 @@ <input type="file" class="form-control-file" id="latest_bukti" name="latest_bukti" accept="image/png, image/jpeg, image/jpg"> </div> <button type="submit" class="btn btn-primary">Submit</button> - <a href="{% url 'publikasi ilmiah' %}" class="btn btn-secondary">Back</a> + <a href="{% url 'search_pi_mahasiswa' %}" class="btn btn-secondary">Back</a> </form> </div> </div> </div> <script> - $("select[name='nama_konferensi']").change(function(){ - new_value = $(this).val(); - if (new_value !== "Lainnya") { - $('input[name="nama_konferensi"]').attr('disabled','disabled'); - $('input[name="nama_konferensi"]').val(new_value); - } else { - $('input[name="nama_konferensi"]').removeAttr('disabled'); - $('input[name="nama_konferensi"]').val(""); - } - }); + $(window).on('load', function(){ + $('input[name="nama_konferensi"]').hide(); + $('input[name="nama_konferensi"]').val("{{ proceeding.nama_konferensi }}"); + }) + $("select[name='nama_konferensi_select']").change(function(){ + new_value = $(this).val(); + if (new_value !== "Lainnya") { + $('input[name="nama_konferensi"]').val(new_value); + $('input[name="nama_konferensi"]').hide(); + + } else { + $('input[name="nama_konferensi"]').show(); + $('input[name="nama_konferensi"]').val("{{ proceeding.nama_konferensi }}"); + } + }); </script> + {% endblock %} diff --git a/templates/updateStatusToPublishedProceedingDosen.html b/templates/updateStatusToPublishedProceedingDosen.html index 4d491c68b7f221b83fc1e394e248228e82f699e0..7b658bf189e4aff51b7acf3f571e750e70c450c5 100644 --- a/templates/updateStatusToPublishedProceedingDosen.html +++ b/templates/updateStatusToPublishedProceedingDosen.html @@ -31,18 +31,18 @@ </div> <div class="form-group"> <label for="nama_konferensi">Nama Konferensi:</label> - <select class="custom-select form-control mb-2" id="nama_konferensi" name="nama_konferensi"> - <option selected>Pilih salah satu...</option> - <option value="Konferensi B">Konferensi B</option> - <option value="Konferensi Sistem Informasi - Next Generation (JSI-NG)">Konferensi Sistem Informasi - Next Generation (JSI-NG)</option> + <select class="custom-select form-control mb-2" id="nama_konferensi_select" name="nama_konferensi_select"> + <option selected value="">Pilih salah satu...</option> + {% for konferensi in konferensi_list %} + <option {% if proceeding.nama_konferensi == konferensi.nama %}selected{% endif %}>{{ konferensi.nama }}</option> + {% endfor %} <option value="Lainnya">Lainnya</option> </select> - <input type="text" class="form-control" id="nama_konferensi" name="nama_konferensi" value="{{ pi.nama_konferensi }}" disabled> + <input type="text" class="form-control" id="nama_konferensi" name="nama_konferensi" value="{{ proceeding.nama_konferensi }}"> </div> <div class="form-group"> <label for="deskripsi_konferensi">Deskripsi Konferensi:</label> - <textarea class="form-control" id="deskripsi_konferensi" name="deskripsi_konferensi">{{ proceeding.deskripsi_konferensi }} - </textarea> + <textarea class="form-control" id="deskripsi_konferensi" name="deskripsi_konferensi">{{ proceeding.deskripsi_konferensi }}</textarea> </div> <div class="form-group"> <label for="tanggal_konferensi">Tanggal Konferensi:</label> @@ -60,15 +60,21 @@ </div> <script> - $("select[name='nama_konferensi']").change(function(){ - new_value = $(this).val(); - if (new_value !== "Lainnya") { - $('input[name="nama_konferensi"]').attr('disabled','disabled'); - $('input[name="nama_konferensi"]').val(new_value); - } else { - $('input[name="nama_konferensi"]').removeAttr('disabled'); - $('input[name="nama_konferensi"]').val(""); - } - }); + $(window).on('load', function(){ + $('input[name="nama_konferensi"]').hide(); + $('input[name="nama_konferensi"]').val("{{ proceeding.nama_konferensi }}"); + }) + $("select[name='nama_konferensi_select']").change(function(){ + new_value = $(this).val(); + if (new_value !== "Lainnya") { + $('input[name="nama_konferensi"]').val(new_value); + $('input[name="nama_konferensi"]').hide(); + + } else { + $('input[name="nama_konferensi"]').show(); + $('input[name="nama_konferensi"]').val("{{ proceeding.nama_konferensi }}"); + } + }); </script> + {% endblock %}