mirror of
https://github.com/itflow-org/itflow
synced 2026-03-11 00:04:50 +00:00
certificates: Add missing CSRF checks rename unarchive to restore
This commit is contained in:
@@ -271,16 +271,16 @@ $num_rows = mysqli_fetch_row(mysqli_query($mysqli, "SELECT FOUND_ROWS()"));
|
|||||||
<?php if ($session_user_role == 3) { ?>
|
<?php if ($session_user_role == 3) { ?>
|
||||||
<?php if ($certificate_archived_at) { ?>
|
<?php if ($certificate_archived_at) { ?>
|
||||||
<div class="dropdown-divider"></div>
|
<div class="dropdown-divider"></div>
|
||||||
<a class="dropdown-item text-info confirm-link" href="post.php?unarchive_certificate=<?php echo $certificate_id; ?>">
|
<a class="dropdown-item text-info confirm-link" href="post.php?restore_certificate=<?php echo $certificate_id; ?>&csrf_token=<?= $_SESSION['csrf_token'] ?>">
|
||||||
<i class="fas fa-fw fa-redo mr-2"></i>Restore
|
<i class="fas fa-fw fa-redo mr-2"></i>Restore
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-divider"></div>
|
<div class="dropdown-divider"></div>
|
||||||
<a class="dropdown-item text-danger text-bold confirm-link" href="post.php?delete_certificate=<?php echo $certificate_id; ?>">
|
<a class="dropdown-item text-danger text-bold confirm-link" href="post.php?delete_certificate=<?php echo $certificate_id; ?>&csrf_token=<?= $_SESSION['csrf_token'] ?>">
|
||||||
<i class="fas fa-fw fa-trash mr-2"></i>Delete
|
<i class="fas fa-fw fa-trash mr-2"></i>Delete
|
||||||
</a>
|
</a>
|
||||||
<?php } else { ?>
|
<?php } else { ?>
|
||||||
<div class="dropdown-divider"></div>
|
<div class="dropdown-divider"></div>
|
||||||
<a class="dropdown-item text-danger confirm-link" href="post.php?archive_certificate=<?php echo $certificate_id; ?>">
|
<a class="dropdown-item text-danger confirm-link" href="post.php?archive_certificate=<?php echo $certificate_id; ?>&csrf_token=<?= $_SESSION['csrf_token'] ?>">
|
||||||
<i class="fas fa-fw fa-archive mr-2"></i>Archive
|
<i class="fas fa-fw fa-archive mr-2"></i>Archive
|
||||||
</a>
|
</a>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|||||||
@@ -14,6 +14,8 @@ ob_start();
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<form action="post.php" method="post" autocomplete="off">
|
<form action="post.php" method="post" autocomplete="off">
|
||||||
|
<input type="hidden" name="csrf_token" value="<?= $_SESSION['csrf_token'] ?>">
|
||||||
|
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
|
|
||||||
<ul class="nav nav-pills nav-justified mb-3">
|
<ul class="nav nav-pills nav-justified mb-3">
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ ob_start();
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<form action="post.php" method="post" autocomplete="off">
|
<form action="post.php" method="post" autocomplete="off">
|
||||||
|
<input type="hidden" name="csrf_token" value="<?= $_SESSION['csrf_token'] ?>">
|
||||||
<input type="hidden" name="certificate_id" value="<?php echo $certificate_id; ?>">
|
<input type="hidden" name="certificate_id" value="<?php echo $certificate_id; ?>">
|
||||||
<input type="hidden" name="client_id" value="<?php echo $client_id; ?>">
|
<input type="hidden" name="client_id" value="<?php echo $client_id; ?>">
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ ob_start();
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<form action="post.php" method="post" autocomplete="off">
|
<form action="post.php" method="post" autocomplete="off">
|
||||||
|
<input type="hidden" name="csrf_token" value="<?= $_SESSION['csrf_token'] ?>">
|
||||||
<input type="hidden" name="client_id" value="<?= $client_id ?>">
|
<input type="hidden" name="client_id" value="<?= $client_id ?>">
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,8 @@ defined('FROM_POST_HANDLER') || die("Direct file access is not allowed");
|
|||||||
|
|
||||||
if (isset($_POST['add_certificate'])) {
|
if (isset($_POST['add_certificate'])) {
|
||||||
|
|
||||||
|
validateCSRFToken($_POST['csrf_token']);
|
||||||
|
|
||||||
enforceUserPermission('module_support', 2);
|
enforceUserPermission('module_support', 2);
|
||||||
|
|
||||||
require_once 'certificate_model.php';
|
require_once 'certificate_model.php';
|
||||||
@@ -42,6 +44,8 @@ if (isset($_POST['add_certificate'])) {
|
|||||||
|
|
||||||
if (isset($_POST['edit_certificate'])) {
|
if (isset($_POST['edit_certificate'])) {
|
||||||
|
|
||||||
|
validateCSRFToken($_POST['csrf_token']);
|
||||||
|
|
||||||
enforceUserPermission('module_support', 2);
|
enforceUserPermission('module_support', 2);
|
||||||
|
|
||||||
require_once 'certificate_model.php';
|
require_once 'certificate_model.php';
|
||||||
@@ -108,6 +112,8 @@ if (isset($_POST['edit_certificate'])) {
|
|||||||
|
|
||||||
if (isset($_GET['archive_certificate'])) {
|
if (isset($_GET['archive_certificate'])) {
|
||||||
|
|
||||||
|
validateCSRFToken($_GET['csrf_token']);
|
||||||
|
|
||||||
enforceUserPermission('module_support', 2);
|
enforceUserPermission('module_support', 2);
|
||||||
|
|
||||||
$certificate_id = intval($_GET['archive_certificate']);
|
$certificate_id = intval($_GET['archive_certificate']);
|
||||||
@@ -128,11 +134,13 @@ if (isset($_GET['archive_certificate'])) {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_GET['unarchive_certificate'])) {
|
if (isset($_GET['restore_certificate'])) {
|
||||||
|
|
||||||
|
validateCSRFToken($_GET['csrf_token']);
|
||||||
|
|
||||||
enforceUserPermission('module_support', 2);
|
enforceUserPermission('module_support', 2);
|
||||||
|
|
||||||
$certificate_id = intval($_GET['unarchive_certificate']);
|
$certificate_id = intval($_GET['restore_certificate']);
|
||||||
|
|
||||||
// Get Certificate Name and Client ID for logging and alert message
|
// Get Certificate Name and Client ID for logging and alert message
|
||||||
$sql = mysqli_query($mysqli,"SELECT certificate_name, certificate_client_id FROM certificates WHERE certificate_id = $certificate_id");
|
$sql = mysqli_query($mysqli,"SELECT certificate_name, certificate_client_id FROM certificates WHERE certificate_id = $certificate_id");
|
||||||
@@ -142,7 +150,7 @@ if (isset($_GET['unarchive_certificate'])) {
|
|||||||
|
|
||||||
mysqli_query($mysqli,"UPDATE certificates SET certificate_archived_at = NULL WHERE certificate_id = $certificate_id");
|
mysqli_query($mysqli,"UPDATE certificates SET certificate_archived_at = NULL WHERE certificate_id = $certificate_id");
|
||||||
|
|
||||||
logAction("Certificate", "Unarchive", "$session_name restored certificate $certificate_name", $client_id, $certificate_id);
|
logAction("Certificate", "Restore", "$session_name restored certificate $certificate_name", $client_id, $certificate_id);
|
||||||
|
|
||||||
flash_alert("Certificate <strong>$certificate_name</strong> restored");
|
flash_alert("Certificate <strong>$certificate_name</strong> restored");
|
||||||
|
|
||||||
@@ -152,6 +160,8 @@ if (isset($_GET['unarchive_certificate'])) {
|
|||||||
|
|
||||||
if (isset($_GET['delete_certificate'])) {
|
if (isset($_GET['delete_certificate'])) {
|
||||||
|
|
||||||
|
validateCSRFToken($_GET['csrf_token']);
|
||||||
|
|
||||||
enforceUserPermission('module_support', 3);
|
enforceUserPermission('module_support', 3);
|
||||||
|
|
||||||
$certificate_id = intval($_GET['delete_certificate']);
|
$certificate_id = intval($_GET['delete_certificate']);
|
||||||
@@ -212,6 +222,8 @@ if (isset($_POST['bulk_delete_certificates'])) {
|
|||||||
|
|
||||||
if (isset($_POST['export_certificates_csv'])) {
|
if (isset($_POST['export_certificates_csv'])) {
|
||||||
|
|
||||||
|
validateCSRFToken($_POST['csrf_token']);
|
||||||
|
|
||||||
enforceUserPermission('module_support');
|
enforceUserPermission('module_support');
|
||||||
|
|
||||||
if ($_POST['client_id']) {
|
if ($_POST['client_id']) {
|
||||||
|
|||||||
Reference in New Issue
Block a user