mirror of
https://github.com/tips-of-mine/GLPI-Plugin-SOC-Case-Management.git
synced 2025-06-27 21:28:42 +02:00
81 lines
2.4 KiB
PHP
81 lines
2.4 KiB
PHP
<?php
|
|
include ("../../../inc/includes.php");
|
|
|
|
Session::checkRight("plugin_soc_case", READ);
|
|
|
|
// Check if plugin is activated
|
|
if (!Plugin::isPluginActive("soc")) {
|
|
Html::displayNotFoundError();
|
|
}
|
|
|
|
if (isset($_POST["add"])) {
|
|
Session::checkRight("plugin_soc_case", CREATE);
|
|
$case = new PluginSocCase();
|
|
$case->check(-1, CREATE, $_POST);
|
|
$case->add($_POST);
|
|
Html::back();
|
|
} else if (isset($_POST["update"])) {
|
|
Session::checkRight("plugin_soc_case", UPDATE);
|
|
$case = new PluginSocCase();
|
|
$case->check($_POST['id'], UPDATE);
|
|
$case->update($_POST);
|
|
Html::back();
|
|
} else if (isset($_POST["delete"])) {
|
|
Session::checkRight("plugin_soc_case", DELETE);
|
|
$case = new PluginSocCase();
|
|
$case->check($_POST['id'], DELETE);
|
|
$case->delete($_POST);
|
|
Html::redirect(Plugin::getWebDir("soc")."/front/case.php");
|
|
} else if (isset($_POST["restore"])) {
|
|
Session::checkRight("plugin_soc_case", DELETE);
|
|
$case = new PluginSocCase();
|
|
$case->check($_POST['id'], DELETE);
|
|
$case->restore($_POST);
|
|
Html::back();
|
|
} else if (isset($_POST["purge"])) {
|
|
Session::checkRight("plugin_soc_case", PURGE);
|
|
$case = new PluginSocCase();
|
|
$case->check($_POST['id'], PURGE);
|
|
$case->delete($_POST, 1);
|
|
Html::redirect(Plugin::getWebDir("soc")."/front/case.php");
|
|
} else if (isset($_POST["add_ticket"])) {
|
|
Session::checkRight("plugin_soc_case", UPDATE);
|
|
$case = new PluginSocCase();
|
|
$case->getFromDB($_POST['plugin_soc_cases_id']);
|
|
|
|
// Link existing ticket to case
|
|
if (isset($_POST['tickets_id']) && $_POST['tickets_id'] > 0) {
|
|
$case->addTicket($_POST['tickets_id']);
|
|
} else {
|
|
// Create new ticket from case
|
|
$case->createTicket($_POST);
|
|
}
|
|
|
|
Html::back();
|
|
} else if (isset($_POST["add_change"])) {
|
|
Session::checkRight("plugin_soc_case", UPDATE);
|
|
$case = new PluginSocCase();
|
|
$case->getFromDB($_POST['plugin_soc_cases_id']);
|
|
|
|
// Link existing change to case
|
|
if (isset($_POST['changes_id']) && $_POST['changes_id'] > 0) {
|
|
$case->addChange($_POST['changes_id']);
|
|
} else {
|
|
// Create new change from case
|
|
$case->createChange($_POST);
|
|
}
|
|
|
|
Html::back();
|
|
} else {
|
|
$id = "";
|
|
if (isset($_GET["id"])) {
|
|
$id = $_GET["id"];
|
|
}
|
|
$case = new PluginSocCase();
|
|
|
|
Html::header(PluginSocCase::getTypeName(Session::getPluralNumber()), '', "management", "pluginsoccase");
|
|
|
|
$case->display(['id' => $id]);
|
|
|
|
Html::footer();
|
|
} |