Files
uldp-degree-mangement-system/views/admin/degree/create.ejs
2026-04-11 14:08:27 +07:00

167 lines
7.8 KiB
Plaintext

<!-- Page Header -->
<div class="page-title-area">
<div>
<h1>Create New Degree</h1>
<p class="subtitle">Fill in the details below to register a new degree</p>
</div>
<a href="/admin/degree" class="btn btn-outline-secondary">
<i class="fas fa-arrow-left"></i> Back
</a>
</div>
<% if (typeof error !== 'undefined' && error) { %>
<div class="alert alert-danger d-flex align-items-center gap-2 mb-3" style="border-radius:var(--border-radius-sm);border:none;background:var(--danger-soft);color:var(--danger-color);">
<i class="fas fa-exclamation-circle"></i> <%= error %>
</div>
<% } %>
<form method="POST" action="/admin/degree/create" enctype="multipart/form-data">
<div class="row g-3">
<!-- Left column -->
<div class="col-lg-8">
<!-- Basic Info -->
<div class="card border-0 mb-3">
<div class="card-header">
<h5 class="card-header-title"><i class="fas fa-id-card"></i> Basic Information</h5>
</div>
<div class="card-body">
<div class="row g-3">
<div class="col-md-6">
<label class="form-label">Qualification No. <span class="text-danger">*</span></label>
<input type="text" class="form-control" name="qualification_number" required
value="<%= (typeof formData !== 'undefined' && formData) ? formData.qualification_number || '' : '' %>">
</div>
<div class="col-md-6">
<label class="form-label">Certification No.</label>
<input type="text" class="form-control" name="certification_number"
value="<%= (typeof formData !== 'undefined' && formData) ? formData.certification_number || '' : '' %>">
</div>
<div class="col-md-6">
<label class="form-label">Student Full Name <span class="text-danger">*</span></label>
<input type="text" class="form-control" name="student_name" required
value="<%= (typeof formData !== 'undefined' && formData) ? formData.student_name || '' : '' %>">
</div>
<div class="col-md-6">
<label class="form-label">Program Name <span class="text-danger">*</span></label>
<input type="text" class="form-control" name="program_name" required
value="<%= (typeof formData !== 'undefined' && formData) ? formData.program_name || '' : '' %>">
</div>
<div class="col-md-6">
<label class="form-label">Passport No.</label>
<input type="text" class="form-control" name="passport_number"
value="<%= (typeof formData !== 'undefined' && formData) ? formData.passport_number || '' : '' %>">
</div>
<div class="col-md-6">
<label class="form-label">Address</label>
<input type="text" class="form-control" name="address"
value="<%= (typeof formData !== 'undefined' && formData) ? formData.address || '' : '' %>">
</div>
</div>
</div>
</div>
<!-- Classification -->
<div class="card border-0 mb-3">
<div class="card-header">
<h5 class="card-header-title"><i class="fas fa-tags"></i> Classification</h5>
</div>
<div class="card-body">
<div class="row g-3">
<div class="col-md-4">
<label class="form-label">Type <span class="text-danger">*</span></label>
<select class="form-select" name="type" required>
<option value="">-- Select --</option>
<option value="qualification" <%= (typeof formData !== 'undefined' && formData && formData.type === 'qualification') ? 'selected' : '' %>>Qualification</option>
<option value="certification" <%= (typeof formData !== 'undefined' && formData && formData.type === 'certification') ? 'selected' : '' %>>Certification</option>
</select>
</div>
<div class="col-md-4">
<label class="form-label">Department <span class="text-danger">*</span></label>
<select class="form-select" name="department" required>
<option value="">-- Select --</option>
<% departments.forEach(dept => { %>
<option value="<%= dept._id %>" <%= (typeof formData !== 'undefined' && formData && formData.department === dept._id.toString()) ? 'selected' : '' %>><%= dept.name %></option>
<% }); %>
</select>
</div>
<div class="col-md-4">
<label class="form-label">Level <span class="text-danger">*</span></label>
<select class="form-select" name="level" required>
<option value="">-- Select --</option>
<% levels.forEach(lvl => { %>
<option value="<%= lvl._id %>" <%= (typeof formData !== 'undefined' && formData && formData.level === lvl._id.toString()) ? 'selected' : '' %>><%= lvl.type %></option>
<% }); %>
</select>
</div>
<div class="col-md-4">
<label class="form-label">Issue Date <span class="text-danger">*</span></label>
<input type="date" class="form-control" name="issued_date" required
value="<%= (typeof formData !== 'undefined' && formData && formData.issued_date) ? formData.issued_date.toString().substring(0,10) : '' %>">
</div>
<div class="col-md-4">
<label class="form-label">Status</label>
<select class="form-select" name="status">
<option value="active" <%= (typeof formData === 'undefined' || !formData || formData.status !== 'revoked') ? 'selected' : '' %>>Active</option>
<option value="revoked" <%= (typeof formData !== 'undefined' && formData && formData.status === 'revoked') ? 'selected' : '' %>>Revoked</option>
</select>
</div>
</div>
</div>
</div>
<!-- Thesis -->
<div class="card border-0 mb-3">
<div class="card-header">
<h5 class="card-header-title"><i class="fas fa-book-open"></i> Thesis / Topic</h5>
</div>
<div class="card-body">
<div class="row g-3">
<div class="col-12">
<label class="form-label">Topic Title</label>
<input type="text" class="form-control" name="topic_name"
value="<%= (typeof formData !== 'undefined' && formData) ? formData.topic_name || '' : '' %>">
</div>
<div class="col-12">
<label class="form-label">Short Description</label>
<textarea class="form-control" name="topic_short_desc" rows="3"><%= (typeof formData !== 'undefined' && formData) ? formData.topic_short_desc || '' : '' %></textarea>
</div>
</div>
</div>
</div>
</div>
<!-- Right column: Images -->
<div class="col-lg-4">
<div class="card border-0 mb-3">
<div class="card-header">
<h5 class="card-header-title"><i class="fas fa-images"></i> Images</h5>
</div>
<div class="card-body">
<div class="mb-3">
<label class="form-label">Degree Image</label>
<input type="file" class="form-control" name="degree_image" accept="image/*">
</div>
<div>
<label class="form-label">Certificate Image</label>
<input type="file" class="form-control" name="certificate_image" accept="image/*">
</div>
</div>
</div>
<!-- Actions -->
<div class="card border-0">
<div class="card-body d-flex flex-column gap-2">
<button type="submit" class="btn btn-primary w-100">
<i class="fas fa-save"></i> Create Degree
</button>
<a href="/admin/degree" class="btn btn-outline-secondary w-100">Cancel</a>
</div>
</div>
</div>
</div>
</form>