105 lines
4.0 KiB
PHP
105 lines
4.0 KiB
PHP
<?php
|
|
// Load environment variables
|
|
$envFile = __DIR__ . '/.env';
|
|
$envVars = parse_ini_file($envFile);
|
|
?>
|
|
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Create New Ticket</title>
|
|
<link rel="icon" type="image/png" href="assets/images/favicon.png">
|
|
<link rel="stylesheet" href="assets/css/dashboard.css">
|
|
<link rel="stylesheet" href="assets/css/ticket.css">
|
|
<script src="assets/js/dashboard.js"></script>
|
|
</head>
|
|
<body>
|
|
<div class="ticket-container">
|
|
<div class="ticket-header">
|
|
<h1>Create New Ticket</h1>
|
|
</div>
|
|
|
|
<form id="newTicketForm" class="ticket-details">
|
|
<div class="detail-group">
|
|
<label>Title</label>
|
|
<input type="text" name="title" required class="editable">
|
|
</div>
|
|
|
|
<div class="detail-group status-priority-row">
|
|
<div class="detail-quarter">
|
|
<label>Status</label>
|
|
<select name="status" required class="editable">
|
|
<option value="Open">Open</option>
|
|
<option value="Closed">Closed</option>
|
|
</select>
|
|
</div>
|
|
<div class="detail-quarter">
|
|
<label>Priority</label>
|
|
<select name="priority" required class="editable">
|
|
<option value="1">P1 - Critical Impact</option>
|
|
<option value="2">P2 - High Impact</option>
|
|
<option value="3">P3 - Medium Impact</option>
|
|
<option value="4">P4 - Low Impact</option>
|
|
</select>
|
|
</div>
|
|
<div class="detail-quarter">
|
|
<label>Category</label>
|
|
<select name="category" required class="editable">
|
|
<option value="Hardware">Hardware</option>
|
|
<option value="Software">Software</option>
|
|
<option value="Network">Network</option>
|
|
<option value="Security">Security</option>
|
|
<option value="Other">Other</option>
|
|
</select>
|
|
</div>
|
|
<div class="detail-quarter">
|
|
<label>Type</label>
|
|
<select name="type" required class="editable">
|
|
<option value="Incident">Incident</option>
|
|
<option value="Request">Request</option>
|
|
<option value="Problem">Problem</option>
|
|
<option value="Task">Task</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="detail-group full-width">
|
|
<label>Description</label>
|
|
<textarea name="description" required class="editable"></textarea>
|
|
</div>
|
|
|
|
<div class="form-actions">
|
|
<button type="button" onclick="window.location.href='dashboard.php'" class="btn">Cancel</button>
|
|
<button type="submit" class="btn create-ticket">Create Ticket</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
<script>
|
|
document.getElementById('newTicketForm').addEventListener('submit', function(e) {
|
|
e.preventDefault();
|
|
const formData = new FormData(this);
|
|
const data = {};
|
|
formData.forEach((value, key) => data[key] = value);
|
|
|
|
fetch('create_ticket_api.php', {
|
|
method: 'POST',
|
|
headers: {
|
|
'Content-Type': 'application/json'
|
|
},
|
|
body: JSON.stringify(data)
|
|
})
|
|
.then(response => response.json())
|
|
.then(data => {
|
|
if(data.success) {
|
|
window.location.href = 'ticket.php?id=' + data.ticket_id;
|
|
}
|
|
});
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|