Event::log($_POST["id"], "problem", 4, "maintain", sprintf(__('%s purges an item'), $_SESSION["glpiname"])); $problem->redirectToList(); } else { if (isset($_POST["update"])) { $problem->check($_POST["id"], 'w'); $problem->update($_POST); Event::log($_POST["id"], "problem", 4, "maintain", sprintf(__('%s updates an item'), $_SESSION["glpiname"])); // Copy solution to KB redirect to KB if (isset($_POST['_sol_to_kb']) && $_POST['_sol_to_kb']) { Html::redirect($CFG_GLPI["root_doc"] . "/front/knowbaseitem.form.php?id=new&item_itemtype=Problem&item_items_id=" . $_POST["id"]); } else { Html::back(); } } else { if (isset($_POST['delete_user'])) { $problem_user = new Problem_User(); $problem_user->check($_POST['id'], 'd'); $problem_user->delete($_POST); Event::log($_POST['problems_id'], "problem", 4, "maintain", sprintf(__('%s deletes an actor'), $_SESSION["glpiname"])); Html::redirect($CFG_GLPI["root_doc"] . "/front/problem.form.php?id=" . $_POST['problems_id']); } else { if (isset($_POST['delete_group'])) { $group_problem = new Group_Problem(); $group_problem->check($_POST['id'], 'd'); $group_problem->delete($_POST); Event::log($_POST['problems_id'], "problem", 4, "maintain", sprintf(__('%s deletes an actor'), $_SESSION["glpiname"])); Html::redirect($CFG_GLPI["root_doc"] . "/front/problem.form.php?id=" . $_POST['problems_id']); } else { if (isset($_POST['delete_supplier'])) { $problem_supplier = new Problem_Supplier(); $problem_supplier->check($_POST['id'], 'd');
function cleanDBonPurge() { global $DB; $query = "DELETE\n FROM `glpi_profiles_users`\n WHERE `users_id` = '" . $this->fields['id'] . "'"; $DB->query($query); if ($this->fields['id'] > 0) { // Security $query = "DELETE\n FROM `glpi_displaypreferences`\n WHERE `users_id` = '" . $this->fields['id'] . "'"; $DB->query($query); $query = "DELETE\n FROM `glpi_bookmarks_users`\n WHERE `users_id` = '" . $this->fields['id'] . "'"; $DB->query($query); } // Delete own reminders $query = "DELETE\n FROM `glpi_reminders`\n WHERE `users_id` = '" . $this->fields['id'] . "'"; $DB->query($query); // Delete private bookmark $query = "DELETE\n FROM `glpi_bookmarks`\n WHERE `users_id` = '" . $this->fields['id'] . "'\n AND `is_private` = '1'"; $DB->query($query); // Set no user to public bookmark $query = "UPDATE `glpi_bookmarks`\n SET `users_id` = '0'\n WHERE `users_id` = '" . $this->fields['id'] . "'"; $DB->query($query); // Set no user to consumables $query = "UPDATE `glpi_consumables`\n SET `items_id` = '0'\n WHERE `items_id` = '" . $this->fields['id'] . "'\n AND `itemtype` = 'User'"; $DB->query($query); $gu = new Group_User(); $gu->cleanDBonItemDelete($this->getType(), $this->fields['id']); $tu = new Ticket_User(); $tu->cleanDBonItemDelete($this->getType(), $this->fields['id']); $pu = new Problem_User(); $pu->cleanDBonItemDelete($this->getType(), $this->fields['id']); $kiu = new KnowbaseItem_User(); $kiu->cleanDBonItemDelete($this->getType(), $this->fields['id']); $ru = new Reminder_User(); $ru->cleanDBonItemDelete($this->getType(), $this->fields['id']); $ue = new UserEmail(); $ue->deleteByCriteria(array('users_id' => $this->fields['id'])); // Ticket rules use various _users_id_* Rule::cleanForItemAction($this, '_users_id%'); Rule::cleanForItemCriteria($this, '_users_id%'); }
Event::log($_POST["id"], "problem", 4, "maintain", sprintf(__('%s purges an item'), $_SESSION["glpiname"])); $problem->redirectToList(); } else { if (isset($_POST["update"])) { $problem->check($_POST["id"], UPDATE); $problem->update($_POST); Event::log($_POST["id"], "problem", 4, "maintain", sprintf(__('%s updates an item'), $_SESSION["glpiname"])); // Copy solution to KB redirect to KB if (isset($_POST['_sol_to_kb']) && $_POST['_sol_to_kb']) { Html::redirect($CFG_GLPI["root_doc"] . "/front/knowbaseitem.form.php?id=new&item_itemtype=Problem&item_items_id=" . $_POST["id"]); } else { Html::back(); } } else { if (isset($_POST['addme_assign'])) { $problem_user = new Problem_User(); $problem->check($_POST['problems_id'], READ); $input = array('problems_id' => $_POST['problems_id'], 'users_id' => Session::getLoginUserID(), 'use_notification' => 1, 'type' => CommonITILActor::ASSIGN); $problem_user->add($input); Event::log($_POST['problems_id'], "problem", 4, "maintain", sprintf(__('%s adds an actor'), $_SESSION["glpiname"])); Html::redirect($CFG_GLPI["root_doc"] . "/front/problem.form.php?id=" . $_POST['problems_id']); } else { Html::header(Problem::getTypeName(Session::getPluralNumber()), $_SERVER['PHP_SELF'], "helpdesk", "problem"); $problem->display($_GET); Html::footer(); } } } } } }
but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GLPI. If not, see <http://www.gnu.org/licenses/>. -------------------------------------------------------------------------- */ /** @file * @brief * @since version 0.83 */ if (!defined('GLPI_ROOT')) { include '../inc/includes.php'; } $link = new Problem_User(); $item = new Problem(); Session::checkLoginUser(); Html::popHeader(__('Email followup'), $_SERVER['PHP_SELF']); if (isset($_POST["update"])) { $link->check($_POST["id"], UPDATE); $link->update($_POST); } else { if (isset($_POST['delete'])) { $link->check($_POST['id'], DELETE); $link->delete($_POST); Event::log($link->fields['problems_id'], "problem", 4, "maintain", sprintf(__('%s deletes an actor'), $_SESSION["glpiname"])); if ($item->can($link->fields["problems_id"], READ)) { Html::redirect($CFG_GLPI["root_doc"] . "/front/problem.form.php?id=" . $link->fields['problems_id']); } Session::addMessageAfterRedirect(__('You have been redirected because you no longer have access to this item'), true, ERROR);
GLPI 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 General Public License for more details. You should have received a copy of the GNU General Public License along with GLPI. If not, see <http://www.gnu.org/licenses/>. -------------------------------------------------------------------------- */ /** @file * @brief */ if (!defined('GLPI_ROOT')) { include '../inc/includes.php'; } $problem_user = new Problem_User(); Session::checkLoginUser(); if (isset($_POST["update"])) { $problem_user->check($_POST["id"], 'w'); $problem_user->update($_POST); echo "<script type='text/javascript' >\n"; echo "window.opener.location.reload();"; echo "window.close()"; echo "</script>"; } else { if (isset($_GET["id"])) { $problem_user->showUserNotificationForm($_GET["id"]); } else { Html::displayErrorAndDie('Lost'); } }