diff --git a/templates/navbar.html b/templates/navbar.html index 32d784d76156ed75fd0fa69a4081593bfea5cc49..6f09b49e78f3f18182c3694143e336bca01c7b2c 100644 --- a/templates/navbar.html +++ b/templates/navbar.html @@ -1,177 +1,358 @@ - <head> <script> - function menu(e){ - let list = document.getElementById('list-navbar'); - e.name === 'menu' ? (e.name = "close", list.classList.remove('hidden')) :( e.name = "menu", list.classList.add('hidden')) - } + function menu(e) { + let list = document.getElementById("list-navbar"); + e.name === "menu" + ? ((e.name = "close"), list.classList.remove("hidden")) + : ((e.name = "menu"), list.classList.add("hidden")); + } </script> - <script src="https://cdn.jsdelivr.net/gh/alpinejs/alpine@v2.x.x/dist/alpine.min.js" defer></script> -</head> - -<nav class="sticky z-50 top-0 md:px-20 px-4 py-2 bg-[#DD5353] shadow-2xl md:flex md:items-center md:justify-between mb-3" id="navbar"> - <div class="flex gap-2 md:w-full justify-between"> - <a href=""> - <div class="text-2xl font-bold text-[#fff] flex items-center cursor-pointer hover:text-cream-tua"> - SIREST - </div> - </a> - <div class="text-3xl cursor-pointer flex items-center md:hidden"> - <ion-icon name="menu" onclick="menu(this)" class="fill-white"></ion-icon> + <script + src="https://cdn.jsdelivr.net/gh/alpinejs/alpine@v2.x.x/dist/alpine.min.js" + defer + ></script> + </head> + + <nav class="sticky z-50 top-0 md:px-20 px-4 py-2 bg-[#DD5353] shadow-2xl md:flex md:items-center md:justify-between mb-3" id="navbar"> + <div class="flex gap-2 md:w-full justify-between"> + <a href="{% url 'account:show_main' %}"> + <div class="text-2xl font-bold text-[#fff] flex items-center cursor-pointer hover:text-cream-tua"> + {% comment %} if adminid is not none {% endcomment %} + {% if adminid is not none or role == 'admin' %} + SIREST {{role}} + {% else %} + SIREST {{role}} <h3 class="text-xs"> Not Verified</h3> + {% endif %} + </div> + </a> + <div class="text-3xl cursor-pointer flex items-center md:hidden"> + <ion-icon name="menu" onclick="menu(this)" class="fill-white"></ion-icon> + </div> + </div> + <div id="list-navbar" class="text-base text-white hidden md:show md:flex md:flex-row md:items-center md:justify-end"> + <div class="md:mx-5 my-3 md:my-0"> + <a href="{% url 'account:show_main' %}" class="hover:text-[#DBC8AC] hover:text-lg duration-500">Dashboard</a> + </div> + + <!-- {admin start} --> + {% if role == 'admin' %} + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> + <span>Restoran</span> + <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> + </button> + <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger5:daftar_kategori' %}">Daftar Kategori Restoran</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger5:buat_kategori' %}">Buat Kategori Restoran</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Kategori Makanan</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Buat Kategori Makanan</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger5:daftar_bahanmakanan' %}">Daftar Bahan Makanan</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger5:buat_bahanmakanan' %}">Buat Bahan Makanan</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger3:daftar_restoran' %}">Daftar Restoran dan Makanan</a> + </div> + </div> + </div> + + <!-- {admin start} --> + {% if role == 'admin' %} + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button + @click="open = !open" + class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500" + > + <span>Restoran</span> + <svg + fill="currentColor" + viewBox="0 0 20 20" + :class="{'rotate-180': open, 'rotate-0': !open}" + class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1" + > + <path + fill-rule="evenodd" + d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" + clip-rule="evenodd" + ></path> + </svg> + </button> + <div + x-show="open" + x-transition:enter="transition ease-out duration-100" + x-transition:enter-start="transform opacity-0 scale-95" + x-transition:enter-end="transform opacity-100 scale-100" + x-transition:leave="transition ease-in duration-75" + x-transition:leave-start="transform opacity-100 scale-100" + x-transition:leave-end="transform opacity-0 scale-95" + class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48" + > + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow"> + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="#" + >Daftar Kategori Restoran</a + > + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="#" + >Buat Kategori Restoran</a + > + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="#" + >Daftar Kategori Makanan</a + > + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="#" + >Buat Kategori Makanan</a + > + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="#" + >Daftar Bahan Makanan</a + > + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="#" + >Buat Bahan Makanan</a + > + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="#" + >Daftar Restoran dan Makanan</a + > + </div> </div> - </div> - <div id="list-navbar" class="text-base text-white hidden md:show md:flex md:flex-row md:items-center md:justify-end"> - <div class="md:mx-5 my-3 md:my-0"> - <a href="" class="hover:text-[#DBC8AC] hover:text-lg duration-500">Dashboard</a> + </div> + + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button + @click="open = !open" + class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500" + > + <span>Promo</span> + <svg + fill="currentColor" + viewBox="0 0 20 20" + :class="{'rotate-180': open, 'rotate-0': !open}" + class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1" + > + <path + fill-rule="evenodd" + d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" + clip-rule="evenodd" + ></path> + </svg> + </button> + <div + x-show="open" + x-transition:enter="transition ease-out duration-100" + x-transition:enter-start="transform opacity-0 scale-95" + x-transition:enter-end="transform opacity-100 scale-100" + x-transition:leave="transition ease-in duration-75" + x-transition:leave-start="transform opacity-100 scale-100" + x-transition:leave-end="transform opacity-0 scale-95" + class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48" + > + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow"> + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="{% url 'trigger_6:show_daftar_promo' %}" + >Daftar Promo</a + > + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="{% url 'trigger_6:show_buat_promo' %}" + >Buat Promo</a + > + </div> </div> - - <!-- admin start --> - <!-- <div @click.away="open = false" class="relative" x-data="{ open: false }"> - <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> - <span>Restoran</span> - <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> - </button> - <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> - <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Kategori Restoran</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Buat Kategori Restoran</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Kategori Makanan</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Buat Kategori Makanan</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Bahan Makanan</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Buat Bahan Makanan</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Restoran dan Makanan</a> - </div> - </div> - </div> - - <div @click.away="open = false" class="relative" x-data="{ open: false }"> - <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> - <span>Promo</span> - <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> - </button> - <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> - <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Promo</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Buat Promo</a> - </div> - </div> - </div> - - <div @click.away="open = false" class="relative" x-data="{ open: false }"> - <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> - <span>Pesanan</span> - <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> - </button> - <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> - <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Tarif Pengiriman per KM</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Buat Tarif Pengiriman per KM</a> - </div> - </div> - </div> --> - <!-- admin end --> - - <!-- pelanggan start --> - <div class="md:mx-5 my-3 md:my-0 text-center"> - <a href="" class="hover:text-[#DBC8AC] hover:text-lg duration-500 whitespace-nowrap">Daftar Restoran dan Makanan</a> + </div> + + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> + <span>Pesanan</span> + <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> + </button> + <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger3:tarif_detail' %}">Daftar Tarif Pengiriman per KM</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger3:tambah_tarif' %}">Buat Tarif Pengiriman per KM</a> + </div> + </div> + </div> + {% endif %} + <!-- admin end --> + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button + @click="open = !open" + class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500" + > + <span>Pesanan</span> + <svg + fill="currentColor" + viewBox="0 0 20 20" + :class="{'rotate-180': open, 'rotate-0': !open}" + class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1" + > + <path + fill-rule="evenodd" + d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" + clip-rule="evenodd" + ></path> + </svg> + </button> + <div + x-show="open" + x-transition:enter="transition ease-out duration-100" + x-transition:enter-start="transform opacity-0 scale-95" + x-transition:enter-end="transform opacity-100 scale-100" + x-transition:leave="transition ease-in duration-75" + x-transition:leave-start="transform opacity-100 scale-100" + x-transition:leave-end="transform opacity-0 scale-95" + class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48" + > + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow"> + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="#" + >Daftar Tarif Pengiriman per KM</a + > + <a + class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" + href="#" + >Buat Tarif Pengiriman per KM</a + > + </div> </div> - - <div @click.away="open = false" class="relative" x-data="{ open: false }"> - <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> - <span>Pesanan</span> - <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> - </button> - <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> - <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Buat Pesanan</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Pesanan Berlangsung</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Riwayat Pesanan</a> - </div> - </div> - </div> - - <div class="md:mx-5 my-3 md:my-0"> - <a href="" class="hover:text-[#DBC8AC] hover:text-lg duration-500">Restopay</a> - </div> - <!-- pelanggan end --> - - <!-- restoran start --> - <!-- <div @click.away="open = false" class="relative" x-data="{ open: false }"> - <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500 whitespace-nowrap"> - <span>Jam Operasional</span> - <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> - </button> - <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> - <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Jam Operasional</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Buat Jam Operasional</a> - </div> - </div> - </div> - <div @click.away="open = false" class="relative" x-data="{ open: false }"> - <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> - <span>Makanan</span> - <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> - </button> - <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> - <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Makanan</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Buat Makanan</a> - </div> - </div> - </div> - <div @click.away="open = false" class="relative" x-data="{ open: false }"> - <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> - <span>Pesanan</span> - <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> - </button> - <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> - <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Pesanan Berlangsung</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Riwayat Pesanan</a> - </div> - </div> - </div> - <div @click.away="open = false" class="relative" x-data="{ open: false }"> - <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> - <span>Promo</span> - <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> - </button> - <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> - <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Promo Tersedia</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Daftar Promo Restoran</a> - </div> - </div> - </div> - <div class="md:mx-5 my-3 md:my-0"> - <a href="" class="hover:text-[#DBC8AC] hover:text-lg duration-500">RestoPay</a> - </div> --> - <!-- restoran end --> - - <!-- kurir start --> - <!-- <div class="md:mx-5 my-3 md:my-0"> - <a href="" class="hover:text-[#DBC8AC] hover:text-lg duration-500 whitespace-nowrap">Daftar Restoran dan Makanan</a> - </div> - <div @click.away="open = false" class="relative" x-data="{ open: false }"> - <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> - <span>Pesanan</span> - <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> - </button> - <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> - <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Pesanan Berlangsung</a> - <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Riwayat Pesanan</a> - </div> - </div> - </div> - <div class="md:mx-5 my-3 md:my-0"> - <a href="" class="hover:text-[#DBC8AC] hover:text-lg duration-500">RestoPay</a> - </div> --> - <!-- kurir end --> - - <div class="md:mx-5 my-3 md:my-0"> - <a href="" class="hover:text-[#DBC8AC] hover:text-lg duration-500">Logout</a> - </div> - </div> -</nav> \ No newline at end of file + </div> + {% endif %} + <!-- admin end --> + + <!-- pelanggan start --> + {% if role == 'customer' and adminid != None %} + <div class="md:mx-5 my-3 md:my-0 text-center"> + <a + href="" + class="hover:text-[#DBC8AC] hover:text-lg duration-500 whitespace-nowrap" + >Daftar Restoran dan Makanan</a + > + </div> + + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> + <span>Pesanan</span> + <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> + </button> + <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Buat Pesanan</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="#">Pesanan Berlangsung</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger_6:show_riwayat' %}">Riwayat Pesanan</a> + </div> + </div> + </div> + + <div class="md:mx-5 my-3 md:my-0"> + <a + href="{% url 'trigger_2:saldo_restopay' %}" + class="hover:text-[#DBC8AC] hover:text-lg duration-500" + >Restopay</a + > + </div> + {% endif %} + <!-- pelanggan end --> + + <!-- restoran start --> + {% if role == 'restaurant' and adminid != None %} + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500 whitespace-nowrap"> + <span>Jam Operasional</span> + <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> + </button> + <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger_2:daftar_jam_operasional' %}">Daftar Jam Operasional</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger_2:buat_jam_operasional' %}" + >Buat Jam Operasional</a> + </div> + </div> + </div> + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> + <span>Makanan</span> + <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> + </button> + <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger3:makanan_resto' %}">Daftar Makanan</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger3:tambah_makanan' %}">Buat Makanan</a> + </div> + </div> + </div> + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> + <span>Pesanan</span> + <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> + </button> + <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger_2:daftar_pesanan' %}">Pesanan Berlangsung</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger_6:show_riwayat' %}">Riwayat Pesanan</a> + </div> + </div> + </div> + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> + <span>Promo</span> + <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> + </button> + <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger_6:show_daftar_promo' %}">Daftar Promo Tersedia</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger_6:show_daftar_promo_restoran' rname rbranch %}">Daftar Promo Restoran</a> + </div> + </div> + </div> + <div class="md:mx-5 my-3 md:my-0"> + <a + href="{% url 'trigger_2:saldo_restopay' %}" + class="hover:text-[#DBC8AC] hover:text-lg duration-500" + >Restopay</a + > + </div> + {% endif %} + <!-- restoran end --> + + <!-- kurir start --> + {% if role == 'courier' and adminid != None %} + <div class="md:mx-5 my-3 md:my-0"> + <a href="{% url 'trigger3:daftar_restoran' %}" class="hover:text-[#DBC8AC] hover:text-lg duration-500 whitespace-nowrap">Daftar Restoran dan Makanan</a> + </div> + <div @click.away="open = false" class="relative" x-data="{ open: false }"> + <button @click="open = !open" class="flex flex-row items-center w-full md:mx-5 my-3 md:my-0 text-left bg-transparent rounded-lg focus:outline-none focus:shadow-outline hover:text-[#DBC8AC] hover:text-lg duration-500"> + <span>Pesanan</span> + <svg fill="currentColor" viewBox="0 0 20 20" :class="{'rotate-180': open, 'rotate-0': !open}" class="inline w-4 h-4 mt-1 ml-1 transition-transform duration-200 transform md:-mt-1"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg> + </button> + <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 w-full mt-2 origin-top-right rounded-md shadow-lg md:w-48"> + <div class="px-2 py-2 bg-white text-gray-900 rounded-md shadow "> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger5:pemesanan_kurir' %}">Pesanan Berlangsung</a> + <a class="block px-4 py-2 mt-2 rounded-lg hover:bg-gray-200 focus:bg-gray-200 focus:outline-none focus:shadow-outline" href="{% url 'trigger_6:show_riwayat' %}">Riwayat Pesanan</a> + </div> + </div> + </div> + <div class="md:mx-5 my-3 md:my-0"> + <a + href="{% url 'trigger_2:saldo_restopay' %}" + class="hover:text-[#DBC8AC] hover:text-lg duration-500" + >Restopay</a + > + </div> + {% endif %} + <!-- kurir end --> + + <div class="md:mx-5 my-3 md:my-0"> + <a href="{% url 'account:logout' %}" class="hover:text-[#DBC8AC] hover:text-lg duration-500">Logout</a> + </div> + </div> + </nav> \ No newline at end of file diff --git a/trigger5/models.py b/trigger5/models.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..71a836239075aa6e6e4ecb700e9c42c95c022d91 100644 --- a/trigger5/models.py +++ b/trigger5/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/trigger5/templates/buat_bahanmakanan.html b/trigger5/templates/buat_bahanmakanan.html index 07b5fb235e9636c562db2641ed29b98380f1c8ff..8343d74f838a1df5df9baeef980da35b156bdc84 100644 --- a/trigger5/templates/buat_bahanmakanan.html +++ b/trigger5/templates/buat_bahanmakanan.html @@ -19,11 +19,11 @@ <div class="flex flex-col justify-around gap-2 w-full"> <div class="flex flex-col text-sm font-medium block justify-around"> <p>Bahan Makanan:</p> - <input type="text" name="kategori" id="kategori" class="form-control rounded-lg text-black" placeholder="Beras"> + <input type="text" name="bahan" id="bahan" class="form-control rounded-lg text-black" placeholder="Beras"> </div> <div class="flex justify-center"> <!-- <button type="submit" name="submit" class="bg-blue-500 hover:bg-blue-400 text-white font-bold py-2 px-4 border-b-4 border-blue-700 hover:border-blue-500 rounded" onclick="location.href = '/trigger3/daftartarif'">SIMPAN</button> --> - <input type="submit" value="SIMPAN" class=" text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:ring-blue-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800" onclick="location.href = '/trigger3/daftartarif'"/> + <input type="submit" value="SIMPAN" class=" text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:ring-blue-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800"> </div> </div> </div> diff --git a/trigger5/templates/daftar_bahanmakanan.html b/trigger5/templates/daftar_bahanmakanan.html index 97f3836421d5c1267dfbd20cd29564a0e1aef8fd..0205853d20d6d3193efab8741438616adc1fc6cb 100644 --- a/trigger5/templates/daftar_bahanmakanan.html +++ b/trigger5/templates/daftar_bahanmakanan.html @@ -34,32 +34,23 @@ </tr> </thead> <tbody> + {% for iter in list_ingredient %} <tr class="border-b"> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> - 1 + {{ forloop.counter }} </td> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> - Garam + {{iter.1}} </td> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> <div> - <a href="" class="font-medium text-blue-600 dark:text-blue-500 hover:underline">Hapus</a> - </div> - </td> - </tr> - <tr class="border-b"> - <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> - 2 - </td> - <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> - Gula - </td> - <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> - <div> - <a href="" class="font-medium text-blue-600 dark:text-blue-500 hover:underline">Hapus</a> + {% if iter.2 %} + <a href="hapus-bahanmakanan/{{iter.0}}" class="font-medium text-blue-600 dark:text-blue-500 hover:underline">Hapus</a> + {% endif %} </div> </td> </tr> + {% endfor %} </tbody> </table> </div> diff --git a/trigger5/templates/daftar_kategori.html b/trigger5/templates/daftar_kategori.html index e7d2e6612e30d921155ef73e319ff0fdee85d088..aa4ddec76ad585d48b36dfdb92e41f27ff7f6001 100644 --- a/trigger5/templates/daftar_kategori.html +++ b/trigger5/templates/daftar_kategori.html @@ -40,11 +40,13 @@ {{ forloop.counter }} </td> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> - {{iter[1]}} + {{iter.1}} </td> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> <div> - <a href="hapus-kategori/{{iter.id}}" class="font-medium text-blue-600 dark:text-blue-500 hover:underline">Hapus</a> + {% if iter.2 %} + <a href="hapus-kategori/{{iter.0}}" class="font-medium text-blue-600 dark:text-blue-500 hover:underline">Hapus</a> + {% endif %} </div> </td> </tr> diff --git a/trigger5/templates/detail_pemesanan_kurir.html b/trigger5/templates/detail_pemesanan_kurir.html index 72f0fa6c8e6bbeb9711000cfd8fa203717dd0aef..0c6df8b35373f268b626d9ab9dac4bce3696a2ff 100644 --- a/trigger5/templates/detail_pemesanan_kurir.html +++ b/trigger5/templates/detail_pemesanan_kurir.html @@ -7,31 +7,33 @@ <div class="login w-[25rem] drop-shadow-2xl flex flex-col justify-center items-center bg-cream-tua p-10 rounded-xl lg:scale-120 md:scale-100 scale-85"> <h1 class="text-xl font-bold mb-3 text-center">Detail Pemesanan (Kurir)</h1> <div class="text-left"> - <p>Waktu Pemesanan: 2022-11-04 11:30:05</p> - <p>Nama Pelanggan: Mikayla Putri</p> - <p>Jalan: Jalan Bahagia nomor 72</p> - <p>Kecamatan: Cinere</p> - <p>Kota: Depok</p> - <p>Provinsi: Jawa Barat</p> - <p>Restoran: Warung Mantap Depok</p> - <p>Jalan: Jalan Sejahtera nomor 5</p> - <p>Kecamatan: Bojongsari</p> - <p>Kota: Depok</p> - <p>Provinsi: Jawa Barat</p> + <p>Waktu Pemesanan: {{waktu}}</p> + <p>Nama Pelanggan: {{nama}}</p> + <p>Jalan: {{jalan}}</p> + <p>Kecamatan: {{kec}}</p> + <p>Kota: {{kota}}</p> + <p>Provinsi: {{prov}}</p> + <p>Restoran: {{resto}}</p> + <br> + <p>Jalan: {{jalanr}}</p> + <p>Kecamatan: {{kecr}}</p> + <p>Kota: {{kotar}}</p> + <p>Provinsi: {{provr}}</p> <p>Makanan yang dipesan:</p> - <p>Ayam Goreng (1) - [catatan bila ada]</p> - <p>Ice Cream (2) - [catatan bila ada]</p> - <p>Total Harga Makanan: 11000</p> - <p>Total Diskon: 0</p> - <p>Biaya Pengantaran: 4000</p> - <p>Total Biaya: 15000</p> - <p>Jenis Pembayaran: RestoPay</p> - <p>Status Pembayaran: Berhasil</p> + {% for eat in makanan %} + <p>{{eat.0}} ({{eat.1}}) - [{{eat.2}}]</p> + {% endfor %} + <p>Total Harga Makanan: {{totalfood}}</p> + <p>Total Diskon: {{totaldisc}}</p> + <p>Biaya Pengantaran: {{deliveryfee}}</p> + <p>Total Biaya: {{totalsemua}}</p> + <p>Jenis Pembayaran: {{jenisbayar}}</p> + <p>Status Pembayaran: {{statusbayar}}</p> <p>Status Pesanan: Pesanan Diantar</p> - <p>Kurir: Doni Suryana</p> - <p>Plat Kendaraan: B 0001 KNN</p> - <p>Jenis Kendaraan: Motor</p> - <p>Merk Kendaraan: Honda Vario</p> + <p>Kurir: {{kurir}}</p> + <p>Plat Kendaraan: {{plat}}</p> + <p>Jenis Kendaraan: {{jeniskendaraan}}</p> + <p>Merk Kendaraan: {{merk}}</p> </div> <button class="bg-blue-500 hover:bg-blue-400 text-white font-bold py-2 px-4 border-b-4 border-blue-700 hover:border-blue-500 rounded mt-2" onclick="location.href = '/trigger5/pemesanankurir'">Kembali</button> diff --git a/trigger5/templates/pemesanan_kurir.html b/trigger5/templates/pemesanan_kurir.html index 418de8b846640714cf00e8729c00177459c7589c..cbad496b30a9dd98bb9e1ed19db05bd35d12fcc1 100644 --- a/trigger5/templates/pemesanan_kurir.html +++ b/trigger5/templates/pemesanan_kurir.html @@ -43,31 +43,36 @@ </tr> </thead> <tbody> + {% for iter in list_transaksi %} <tr class="border-b"> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> - 1 + {{ forloop.counter }} </td> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> - Warung Mantap Depok + {{iter.1}} </td> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> - Mikayla Putri + {{iter.0}} </td> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> - 2022-11-04 11:30:05 + {{iter.2}} </td> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> Pesanan Diantar </td> <td class="text-sm text-gray-900 font-light px-6 py-4 whitespace-nowrap"> + <!-- Working --> <div> - <a href="{% url 'trigger5:detail_pemesanan_kurir' %}" class="font-medium text-blue-600 dark:text-blue-500 hover:underline">Detail</a> + <a href="selesai/{{iter.3}}" class="font-medium text-blue-600 dark:text-blue-500 hover:underline">Selesai</a> </div> + <div> - <a href="" class="font-medium text-blue-600 dark:text-blue-500 hover:underline">Selesai</a> + <a href="detail/{{iter.3}}" class="font-medium text-blue-600 dark:text-blue-500 hover:underline">Detail</a> </div> + </td> </tr> + {% endfor %} </tbody> </table> </div> diff --git a/trigger5/urls.py b/trigger5/urls.py index 20e8457aabfd67476acb07ca9f33ee97dd60752d..5f23450d0762d0e3c985905873bc610e97744c41 100644 --- a/trigger5/urls.py +++ b/trigger5/urls.py @@ -7,8 +7,11 @@ urlpatterns = [ path('buatkategori/', buat_kategori, name='buat_kategori'), path('daftarkategori/', daftar_kategori, name='daftar_kategori'), path('pemesanankurir/', pemesanan_kurir, name='pemesanan_kurir'), - path('detailpemesanankurir/', detail_pemesanan_kurir, name='detail_pemesanan_kurir'), + #path('detailpemesanankurir/', detail_pemesanan_kurir, name='detail_pemesanan_kurir'), path('buatbahanmakanan/', buat_bahanmakanan, name='buat_bahanmakanan'), path('daftarbahanmakanan/', daftar_bahanmakanan, name='daftar_bahanmakanan'), path('daftarkategori/hapus-kategori/<int:id>', hapus_kategori, name='hapus_kategori'), + path('daftarbahanmakanan/hapus-bahanmakanan/<int:id>', hapus_bahanmakanan, name='hapus_bahanmakanan'), + path('pemesanankurir/selesai/<str:id>', selesai_pemesanan, name='selesai_pemesanan'), + path('pemesanankurir/detail/<str:id>', detail_pemesanan, name='detail_pemesanan'), ] \ No newline at end of file diff --git a/trigger5/views.py b/trigger5/views.py index 49ec7e943a9eac6012393da2609751a1b9f9a57e..d64be6ae0c3d5e8f4e48efc28d989d353ba8d5a6 100644 --- a/trigger5/views.py +++ b/trigger5/views.py @@ -3,49 +3,332 @@ from django.urls import reverse from django.http import HttpResponse, HttpResponseRedirect from account.forms import * from utils.query import * +from datetime import datetime + +def getFirst(x): + return x[0] # Create your views here. def buat_kategori(request): + role = request.COOKIES.get('role') + #adminid = request.COOKIES.get('adminid') + if role == None: + return redirect("/login") + if role != 'admin': + return redirect("/") + if request.method == 'POST': - new_kategori = request.POST.get('kategori') - cursor.execute(f'select * restaurant_category') - id = cursor.fetchmany() + 1 + cursor.execute(f'select id from restaurant_category;') + all_id = cursor.fetchall() + list_id = list(map(int,list(map(getFirst,all_id)))) + id = max(list_id)+1 + #print("what ",id) + try : + cursor.execute(f""" + INSERT INTO RESTAURANT_CATEGORY VALUES + ('{id}', + '{request.POST['kategori']}') + """) + connection.commit() + return redirect('trigger5:daftar_kategori') + except Exception as e : + messages.error(request, e) + connection.rollback() - cursor.execute(f""" - INSERT INTO RESTAURANT_CATEGORY VALUES - ('{id}', - '{request.POST.['kategori']}') - """) - return redirect('trigger5:daftar_kategori') + - return render(request, "buat_kategori.html") + return render(request, "buat_kategori.html", {'role':request.COOKIES.get('role')}) def daftar_kategori(request): + role = request.COOKIES.get('role') + if role == None: + return redirect("/login") + if role != 'admin': + return redirect("/") cursor.execute(f""" SELECT * from restaurant_category; """) data_kategori_resto = cursor.fetchall() + final_data_kategori_resto = [] + for cat in data_kategori_resto: + cursor.execute( + f'SELECT * from RESTAURANT_CATEGORY, RESTAURANT R where Rcategory = \'{cat[0]}\'' + ) + canDelete = (len(cursor.fetchall()) == 0) + tuple_new = cat + (canDelete, ) + final_data_kategori_resto.append(tuple_new) + + print(final_data_kategori_resto) context = { - 'list_kategori_resto': data_kategori_resto, + 'list_kategori_resto': final_data_kategori_resto, + 'role':request.COOKIES.get('role'), } return render(request, "daftar_kategori.html", context) +def hapus_kategori(request,id): + role = request.COOKIES.get('role') + adminid = request.COOKIES.get('adminid') + if role == None: + return redirect("/login") + if role != 'admin': + return redirect("/") + cursor.execute(f'DELETE from RESTAURANT_CATEGORY where id = \'{id}\'') + + return redirect('trigger5:daftar_kategori') + + def pemesanan_kurir(request): - return render(request, "pemesanan_kurir.html") + role = request.COOKIES.get('role') + adminid = request.COOKIES.get('adminid') + if role == None: + return redirect("/login") + if role != 'courier': + return redirect("/") + cursor.execute('set search_path to sirest') + cursor.execute(f""" + SELECT Email, Datetime from TRANSACTION_HISTORY where tsid >= '4' except (SELECT Email, Datetime from TRANSACTION_HISTORY where tsid >= '5'); + """) + + data_transaksi = cursor.fetchall() + # print("what ", len(data_transaksi)) + # cursor.execute(f"""SELECT Email, Datetime, TSID from TRANSACTION_HISTORY where tsid >= '4'""") + # print(cursor.fetchall()) + # cursor.execute(f"""SELECT Email, Datetime, TSID from TRANSACTION_HISTORY where tsid >= '5'""") + # print(cursor.fetchall()) + final_data_transaksi = [] + for tra in data_transaksi: + cursor.execute( + f'SELECT FName , LName from USER_ACC where email = \'{tra[0]}\'' + ) + simpan = cursor.fetchall() + nama = simpan[0][0] + " " + simpan[0][1] + + cursor.execute( + f'SELECT RName , RBranch FROM TRANSACTION_FOOD WHERE Email = \'{tra[0]}\' AND Datetime = \'{tra[1]}\'' + ) + simpan = cursor.fetchall() + resto = simpan[0][0] + " " + simpan[0][1] + + new_tuple = (nama, resto, tra[1], tra[1].strftime("%Y-%m-%d %H:%M:%S") + " " + tra[0]) + final_data_transaksi.append(new_tuple) + + context = { + 'list_transaksi': final_data_transaksi, + 'role':request.COOKIES.get('role'), + 'adminid': adminid, + } + return render(request, "pemesanan_kurir.html", context) + +def detail_pemesanan(request,id): + role = request.COOKIES.get('role') + adminid = request.COOKIES.get('adminid') + if role == None: + return redirect("/login") + if role != 'courier': + return redirect("/") + pk = id.split() + email = pk[2] + jam = pk[0] + " " + pk[1] + cursor.execute( + f'SELECT street, district, city, province, totalfood, totaldiscount, deliveryfee, totalprice, dfid, pmid, psid, courierid FROM TRANSACTION AS T WHERE T.Email = \'{email}\' AND T.Datetime = \'{jam}\';' + ) + + simpan = cursor.fetchall() + jalan = simpan[0][0] + kec = simpan[0][1] + kota = simpan[0][2] + prov = simpan[0][3] + totalfood = simpan[0][4] + totaldisc = simpan[0][5] + deliveryfee = simpan[0][6] + totalsemua = simpan[0][7] + dfid = simpan[0][8] + pmid = simpan[0][9] + psid = simpan[0][10] + courierid = simpan[0][11] + + cursor.execute( + f'SELECT TF.rname, TF.rbranch FROM TRANSACTION_FOOD AS TF WHERE TF.Email = \'{email}\' AND TF.Datetime = \'{jam}\';' + ) + simpan = cursor.fetchall() + restoname = simpan[0][0] + restobranch = simpan[0][1] + namaresto = restoname + " " + restobranch + cursor.execute( + f'SELECT TF.foodname, TF.amount, TF.Note FROM TRANSACTION_FOOD AS TF WHERE TF.Email = \'{email}\' AND TF.Datetime = \'{jam}\';' + ) + makanan = cursor.fetchall() + + cursor.execute( + f'SELECT R.street, R.district, R.city, R.province FROM RESTAURANT AS R WHERE R.Rname = \'{restoname}\' AND R.RBranch = \'{restobranch}\';' + ) + + simpan = cursor.fetchall() + jalanr = simpan[0][0] + kecr = simpan[0][1] + kotar = simpan[0][2] + provr = simpan[0][3] + + cursor.execute( + f'SELECT name FROM PAYMENT_METHOD WHERE Id= \'{pmid}\';' + ) + + simpan = cursor.fetchall() + jenisbayar = simpan[0][0] + + cursor.execute( + f'SELECT name FROM PAYMENT_STATUS WHERE Id= \'{psid}\';' + ) + + simpan = cursor.fetchall() + statusbayar = simpan[0][0] + + cursor.execute( + f'SELECT platenum, vehicletype,vehiclebrand FROM Courier WHERE email= \'{courierid}\';' + ) + + simpan = cursor.fetchall() + plat = simpan[0][0] + jeniskendaraan = simpan[0][1] + merk = simpan[0][2] -def detail_pemesanan_kurir(request): - return render(request, "detail_pemesanan_kurir.html") + cursor.execute( + f'SELECT fname, lname FROM user_acc WHERE email= \'{email}\';' + ) + + simpan = cursor.fetchall() + nama = simpan[0][0] + " " + simpan[0][1] + + cursor.execute( + f'SELECT fname, lname FROM user_acc WHERE email= \'{courierid}\';' + ) + + simpan = cursor.fetchall() + namakurir = simpan[0][0] + " " + simpan[0][1] + + context = { + 'waktu' : jam, + 'nama' : nama, + 'jalan': jalan, + 'kec': kec, + 'kota': kota, + 'prov': prov, + 'resto': namaresto, + 'jalanr': jalanr, + 'kecr': kecr, + 'kotar': kotar, + 'provr': provr, + 'makanan': makanan, + 'totalfood': totalfood, + 'totaldisc': totaldisc, + 'deliveryfee': deliveryfee, + 'totalsemua': totalsemua, + 'jenisbayar': jenisbayar, + 'statusbayar': statusbayar, + 'kurir': namakurir, + 'plat': plat, + 'jeniskendaraan': jeniskendaraan, + 'merk': merk, + 'role':request.COOKIES.get('role'), + 'adminid': adminid, + } + return render(request, "detail_pemesanan_kurir.html", context) + +def selesai_pemesanan(request, id): + role = request.COOKIES.get('role') + adminid = request.COOKIES.get('adminid') + if role == None: + return redirect("/login") + if role != 'courier': + return redirect("/") + pk = id.split() + cursor.execute("SELECT now();") + jam = cursor.fetchall()[0][0] + cursor.execute(f""" + INSERT INTO TRANSACTION_HISTORY VALUES + ( + '{pk[2]}', + '{pk[0]+ " " + pk[1]}', + '{'5'}', + '{jam}' + ) + """) + + return redirect('trigger5:pemesanan_kurir') def buat_bahanmakanan(request): - return render(request, "buat_bahanmakanan.html") + role = request.COOKIES.get('role') + #adminid = request.COOKIES.get('adminid') + if role == None: + return redirect("/login") + if role != 'admin': + return redirect("/") + if request.method == 'POST': + cursor.execute(f'select id from ingredient;') + all_id = cursor.fetchall() + list_id = list(map(int,list(map(getFirst,all_id)))) + id = max(list_id)+1 + #print("what ",id) + + try: + cursor.execute(f""" + INSERT INTO INGREDIENT VALUES + ('{id}', + '{request.POST['bahan']}') + """) + + return redirect('trigger5:daftar_bahanmakanan') + except Exception as e : + messages.error(request, e) + connection.rollback() + + return render(request, "buat_bahanmakanan.html", {'role':request.COOKIES.get('role')}) def daftar_bahanmakanan(request): - return render(request, "daftar_bahanmakanan.html") + role = request.COOKIES.get('role') + #adminid = request.COOKIES.get('adminid') + if role == None: + return redirect("/login") + if role != 'admin': + return redirect("/") + cursor.execute(f""" + SELECT * from ingredient; + """) + + data_ingredient = cursor.fetchall() + final_data_ingredient = [] + for ing in data_ingredient: + cursor.execute( + f'SELECT * from INGREDIENT, FOOD_INGREDIENT where Ingredient = \'{ing[0]}\'' + ) + canDelete = (len(cursor.fetchall()) == 0) + tuple_new = ing + (canDelete, ) + final_data_ingredient.append(tuple_new) + + #print(final_data_ingredient) + + context = { + 'list_ingredient': final_data_ingredient, + 'role':request.COOKIES.get('role'), + #'adminid': adminid, + #'rname': request.COOKIES.get('rname'), + #'rbranch': request.COOKIES.get('rbranch'), + } + return render(request, "daftar_bahanmakanan.html", context) + +def hapus_bahanmakanan(request,id): + role = request.COOKIES.get('role') + #adminid = request.COOKIES.get('adminid') + if role == None: + return redirect("/login") + if role != 'admin': + return redirect("/") + cursor.execute(f'DELETE from INGREDIENT where id = \'{id}\'') + + return redirect('trigger5:daftar_bahanmakanan') -def hapus_kategori(request,id): - return redirect('trigger5:daftar_kategori')