Allow Bulk Adding tickets to a Project from the Main Tickets Listing Page

This commit is contained in:
johnnyq 2024-09-06 18:44:53 -04:00
parent 09f2072d27
commit 903bd47f5a
3 changed files with 58 additions and 6 deletions

View File

@ -1123,10 +1123,15 @@ if (isset($_POST['bulk_add_ticket_project'])) {
// POST variables // POST variables
$project_id = intval($_POST['project_id']); $project_id = intval($_POST['project_id']);
// Get Project Name
$sql = mysqli_query($mysqli, "SELECT * FROM projects WHERE project_id = $project_id");
$row = mysqli_fetch_array($sql);
$project_name = sanitizeInput($row['project_name']);
// Get a Ticket Count // Get a Ticket Count
$ticket_count = count($_POST['ticket_ids']); $ticket_count = count($_POST['ticket_ids']);
// Assign Tech to Selected Tickets // Assign Project to Selected Tickets
if (!empty($_POST['ticket_ids'])) { if (!empty($_POST['ticket_ids'])) {
foreach ($_POST['ticket_ids'] as $ticket_id) { foreach ($_POST['ticket_ids'] as $ticket_id) {
$ticket_id = intval($ticket_id); $ticket_id = intval($ticket_id);
@ -1140,11 +1145,6 @@ if (isset($_POST['bulk_add_ticket_project'])) {
$current_ticket_priority = sanitizeInput($row['ticket_priority']); $current_ticket_priority = sanitizeInput($row['ticket_priority']);
$client_id = intval($row['ticket_client_id']); $client_id = intval($row['ticket_client_id']);
// Get Project Name
$sql = mysqli_query($mysqli, "SELECT * FROM projects WHERE project_id = $project_id");
$row = mysqli_fetch_array($sql);
$project_name = sanitizeInput($row['project_name']);
// Update ticket & insert reply // Update ticket & insert reply
mysqli_query($mysqli, "UPDATE tickets SET ticket_project_id = $project_id WHERE ticket_id = $ticket_id"); mysqli_query($mysqli, "UPDATE tickets SET ticket_project_id = $project_id WHERE ticket_id = $ticket_id");

View File

@ -0,0 +1,47 @@
<div class="modal" id="bulkAssignTicketToProjectModal" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content bg-dark">
<div class="modal-header">
<h5 class="modal-title"><i class="fa fa-fw fa-user-check mr-2"></i>Adding Tickets to Project</strong></h5>
<button type="button" class="close text-white" data-dismiss="modal">
<span>&times;</span>
</button>
</div>
<div class="modal-body bg-white">
<div class="form-group">
<label>Project</label>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fa fa-fw fa-project-diagram"></i></span>
</div>
<select class="form-control select2" name="project_id">
<option value="0">No Project</option>
<?php
$sql_projects_select = mysqli_query($mysqli, "SELECT * FROM projects
WHERE project_archived_at IS NULL
AND project_completed_at IS NULL
ORDER BY project_name DESC"
);
while ($row = mysqli_fetch_array($sql_projects_select)) {
$project_id_select = intval($row['project_id']);
$project_prefix_select = nullable_htmlentities($row['project_prefix']);
$project_number_select = intval($row['project_number']);
$project_name_select = nullable_htmlentities($row['project_name']);
?>
<option value="<?php echo $project_id_select; ?>"><?php echo " $project_prefix_select$project_number_select - $project_name_select"; ?></option>
<?php } ?>
</select>
</div>
</div>
</div>
<div class="modal-footer bg-white">
<button type="submit" name="bulk_add_ticket_project" class="btn btn-primary text-bold"><i class="fa fa-check mr-2"></i>Assign</button>
<button type="button" class="btn btn-light" data-dismiss="modal"><i class="fa fa-times mr-2"></i>Cancel</button>
</div>
</div>
</div>
</div>

View File

@ -168,6 +168,10 @@ $user_active_assigned_tickets = intval($row['total_tickets_assigned']);
<i class="fas fa-fw fa-paper-plane mr-2"></i>Bulk Update/Reply <i class="fas fa-fw fa-paper-plane mr-2"></i>Bulk Update/Reply
</a> </a>
<div class="dropdown-divider"></div> <div class="dropdown-divider"></div>
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#bulkAssignTicketToProjectModal">
<i class="fas fa-fw fa-project-diagram mr-2"></i>Add to Project
</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#bulkMergeTicketModal"> <a class="dropdown-item" href="#" data-toggle="modal" data-target="#bulkMergeTicketModal">
<i class="fas fa-fw fa-clone mr-2"></i>Merge <i class="fas fa-fw fa-clone mr-2"></i>Merge
</a> </a>
@ -543,6 +547,7 @@ $user_active_assigned_tickets = intval($row['total_tickets_assigned']);
</div> </div>
<?php require_once "ticket_bulk_assign_modal.php"; ?> <?php require_once "ticket_bulk_assign_modal.php"; ?>
<?php require_once "ticket_bulk_edit_priority_modal.php"; ?> <?php require_once "ticket_bulk_edit_priority_modal.php"; ?>
<?php require_once "ticket_bulk_add_project_modal.php"; ?>
<?php require_once "ticket_bulk_reply_modal.php"; ?> <?php require_once "ticket_bulk_reply_modal.php"; ?>
<?php // 2024-08-25 JQ Disabled not able to change assignee require_once "ticket_bulk_merge_modal.php"; ?> <?php // 2024-08-25 JQ Disabled not able to change assignee require_once "ticket_bulk_merge_modal.php"; ?>
<?php require_once "ticket_bulk_resolve_modal.php"; ?> <?php require_once "ticket_bulk_resolve_modal.php"; ?>