<?php
/**
* @copyright 2024 Double Bastion LLC <www.doublebastion.com>
*
* @author Double Bastion LLC
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either
* version 3 of the License, or any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
*
* You should have received a copy of the GNU Affero General Public
* License along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
session_start();
define('ACCESSCONST', TRUE);
if (($_SESSION['loggedtorspanel'] == true) && ($_SESSION['userrole'] == 'superadmin')) {
require('db-connect.php');
// Insert new component data into the database
if (isset($_POST['userrole']) && isset($_POST['username']) && isset($_POST['componentname']) && isset($_POST['componentrole']) && isset($_POST['componentplace'])) {
$ordno = $_POST['ordno'];
$dbid = $_POST['dbid'];
$userrole = $_POST['userrole'];
$username = $_POST['username'];
$componentname = $_POST['componentname'];
$componentrole = $_POST['componentrole'];
$componentplace = $_POST['componentplace'];
$imagename = $_POST['imagename'];
$versionscript = $_POST['versionscript'];
$popupinfo = $_POST['infopopup'];
if (($userrole != '') && ($username != '') && ($componentname != '')) {
if ($dbid == '') {
try {
$query1 = $mysqli->prepare("INSERT INTO components (orderno, userrole, username, component, componentrole, componentplace, imagename, versionscript,
info) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?);");
$query1->bind_param("issssssss", $ordno, $userrole, $username, $componentname, $componentrole, $componentplace, $imagename, $versionscript, $popupinfo);
$query1->execute();
$query1->close();
$responsave = "The component has been added successfully !";
} catch(mysqli_sql_exception $e) {
$responsave = "An error occurred when adding the component. Please check your input data !";
}
} else {
try {
if ($imagename != '') {
$query2 = $mysqli->prepare("UPDATE components SET orderno=?, component=?, componentrole=?, componentplace=?, imagename=?, versionscript=?,
info=? WHERE id=?");
$query2->bind_param("issssssi", $ordno, $componentname, $componentrole, $componentplace, $imagename, $versionscript, $popupinfo, $dbid);
$query2->execute();
$query2->close();
} else {
$query3 = $mysqli->prepare("UPDATE components SET orderno=?, component=?, componentrole=?, componentplace=?, versionscript=?,
info=? WHERE id=?");
$query3->bind_param("isssssi", $ordno, $componentname, $componentrole, $componentplace, $versionscript, $popupinfo, $dbid);
$query3->execute();
$query3->close();
}
$responsave = "The component has been updated successfully !";
} catch(mysqli_sql_exception $e) {
$responsave = "An error occurred when updating the component. Please check your input data !";
}
}
} else { $responsave = "Error. Please check your input data !"; }
}
$result = array(
'responsave' => $responsave
);
echo json_encode($result);
} elseif (empty($_SESSION['loggedtorspanel'])) {
header("Location: panel-login.php");
} elseif (($_SESSION['loggedtorspanel'] == true) && ($_SESSION['userrole'] != 'superadmin')) {
header("Location: index.php");
}
?>