Spaces:
Running
Running
from models.lecturer import Lecturer | |
from flask import Blueprint, request, redirect, url_for, flash | |
from middleware import role_required | |
from firebase_config import storage_upload_file, storage_delete_file | |
lecturer = Blueprint('lecturer', __name__, template_folder='templates', url_prefix='/dashboard/lecturer') | |
def create(): | |
nama = request.form['nama'] | |
kbk = request.form['kbk'] | |
try: | |
foto = storage_upload_file(request.files['foto'], 'lecturers') | |
lecturer = Lecturer(nama=nama, kelompok_bidang_keahlian=kbk, foto=foto) | |
lecturer.save() | |
flash(('Tambah Data Sukses', 'Data dosen berhasil ditambahkan'), 'success') | |
except Exception as e: | |
flash(('Tambah Data Gagal', 'Terjadi kesalahan server saat menambahkan'), 'error') | |
return redirect(url_for('dashboard.lecturer')) | |
def update(): | |
id = request.form['id'] | |
nama = request.form['nama'] | |
kbk = request.form['kbk'] | |
foto = request.form['prev_foto'] | |
if request.files['foto'].filename != '': | |
storage_delete_file(foto) | |
foto = storage_upload_file(request.files['foto'], 'lecturers') | |
try: | |
lecturer = Lecturer(id=id, nama=nama, kelompok_bidang_keahlian=kbk, foto=foto) | |
lecturer.update() | |
flash(('Perbarui Data Sukses', 'Data dosen berhasil diperbarui'), 'success') | |
except Exception as e: | |
flash(('Perbarui Data Gagal', 'Terjadi kesalahan server saat memperbarui'), 'error') | |
return redirect(url_for('dashboard.lecturer')) | |
def delete(): | |
id = request.form['id'] | |
foto = request.form['foto'] | |
try: | |
lecturer = Lecturer(id=id, foto=foto) | |
lecturer.delete() | |
storage_delete_file(lecturer.foto) | |
flash(('Hapus Data Sukses', 'Data dosen berhasil dihapus'), 'success') | |
except Exception as e: | |
flash(('Hapus Data Gagal', 'Terjadi kesalahan server saat menghapus'), 'error') | |
return redirect(url_for('dashboard.lecturer')) | |