function defineTabs($options = array()) { global $LANG; $tabs[1] = $LANG['title'][26]; $tabs[2] = $LANG['setup'][6]; if (haveRight('search_config', 'w')) { $tabs[3] = $LANG['central'][12]; } $tabs['no_all_tab'] = true; return $tabs; }
/** * Print the HTML array for device on link * * Print the HTML array for device on link for link $instID * *@param $links_id array : Link identifier. * *@return Nothing (display) * **/ static function showForItem($links_id) { global $DB, $CFG_GLPI, $LANG; $link = new Link(); if ($links_id > 0) { $link->check($links_id, 'r'); } else { // Create item $link->check(-1, 'w'); $link->getEmpty(); } $canedit = $link->can($links_id, 'w'); $canrecu = $link->can($links_id, 'recursive'); if (!haveRight("link", "r")) { return false; } //$canedit= haveRight("link","w"); $query = "SELECT *\n FROM `glpi_links_itemtypes`\n WHERE `links_id`='{$links_id}'\n ORDER BY `itemtype`"; $result = $DB->query($query); $number = $DB->numrows($result); $i = 0; $used = array(); echo "<form method='post' action=\"" . $CFG_GLPI["root_doc"] . "/front/link_itemtype.form.php\">"; echo "<div class='center'><table class='tab_cadre_fixe'>"; echo "<tr><th colspan='2'>" . $LANG['links'][4] . " :</th></tr>"; echo "<tr><th>" . $LANG['common'][17] . "</th>"; echo "<th> </th></tr>"; while ($i < $number) { $ID = $DB->result($result, $i, "id"); $itemtype = $DB->result($result, $i, "itemtype"); $typename = NOT_AVAILABLE; if (class_exists($itemtype)) { $item = new $itemtype(); $typename = $item->getTypeName(); } echo "<tr class='tab_bg_1'>"; echo "<td class='center'>{$typename}</td>"; echo "<td class='center'>"; echo "<a href='" . $CFG_GLPI["root_doc"] . "/front/link_itemtype.form.php?delete=deletedevice&id={$ID}&links_id={$links_id}'>\n <strong>" . $LANG['buttons'][6] . "</strong></a></td></tr>"; $used[$itemtype] = $itemtype; $i++; } if ($canedit) { echo "<tr class='tab_bg_1'><td> </td><td class='center'>"; echo "<input type='hidden' name='links_id' value='{$links_id}'>"; Dropdown::dropdownTypes("itemtype", '', $CFG_GLPI["link_types"], $used); echo " <input type='submit' name='add' value=\"" . $LANG['buttons'][8] . "\" class='submit'>"; echo "</td></tr>"; } echo "</table></div></form>"; }
/** Display registry values for a computer * * @param $ID integer : computer ID * */ static function showForComputer($ID) { global $DB, $LANG; if (!haveRight("computer", "r")) { return false; } //REGISTRY HIVE $REGISTRY_HIVE = array("HKEY_CLASSES_ROOT", "HKEY_CURRENT_USER", "HKEY_LOCAL_MACHINE", "HKEY_USERS", "HKEY_CURRENT_CONFIG", "HKEY_DYN_DATA"); $query = "SELECT *\n FROM `glpi_registrykeys`\n WHERE `computers_id` = '{$ID}'"; if ($result = $DB->query($query)) { if ($DB->numrows($result) != 0) { echo "<div class='center'><table class='tab_cadre_fixe'>"; echo "<tr><th colspan='4'>" . $DB->numrows($result) . " " . $LANG['registry'][4] . "</th></tr>\n"; echo "<tr><th>" . $LANG['registry'][6] . "</th>"; echo "<th>" . $LANG['registry'][1] . "</th>"; echo "<th>" . $LANG['registry'][2] . "</th>"; echo "<th>" . $LANG['registry'][3] . "</th></tr>\n"; while ($data = $DB->fetch_assoc($result)) { echo "<tr class='tab_bg_1'>"; echo "<td>" . $data["ocs_name"] . "</td>"; if (isset($REGISTRY_HIVE[$data["hive"]])) { echo "<td>" . $REGISTRY_HIVE[$data["hive"]] . "</td>"; } else { echo "<td>(" . $data["hive"] . ")</td>"; } echo "<td>" . $data["path"] . "</td>"; echo "<td>" . $data["value"] . "</td>"; echo "</tr>"; } echo "</table></div>\n\n"; } else { echo "<div class='center'><table class='tab_cadre_fixe'>"; echo "<tr class='tab_bg_2'><th>" . $LANG['ocsconfig'][41] . "</th></tr>"; echo "<tr class='tab_bg_2'><td class='center b'>" . $LANG['registry'][5] . "</td></tr>"; echo "</table></div>"; } } }
function showForm($ID, $options = array()) { global $LANG, $CFG_GLPI; if (!haveRight("config", "w")) { return false; } $spotted = false; if (empty($ID)) { if ($this->getEmpty()) { $spotted = true; } } else { if ($this->getFromDB($ID)) { $spotted = true; } } $this->showTabs($options); $this->showFormHeader($options); echo "<tr class='tab_bg_1'><td>" . $LANG['common'][16] . " :</td>"; echo "<td colspan='3'>"; autocompletionTextField($this, "name"); echo "</td></tr>"; echo "<tr class='tab_bg_1'><td>" . $LANG['common'][17] . " :</td><td colspan='3'>"; Dropdown::dropdownTypes("itemtype", $this->fields['itemtype'] ? $this->fields['itemtype'] : 'Ticket', $CFG_GLPI["notificationtemplates_types"]); echo "</td></tr>"; echo "<tr class='tab_bg_1'><td>" . $LANG['common'][25] . " : </td>"; echo "<td colspan='3'>"; echo "<textarea cols='60' rows='5' name='comment' >" . $this->fields["comment"] . "</textarea>"; echo "</td></tr>"; echo "<tr class='tab_bg_1'><td>" . $LANG['mailing'][6] . " : </td>"; echo "<td colspan='3'>"; echo "<textarea cols='60' rows='5' name='css' >" . $this->fields["css"] . "</textarea></td></tr>"; $this->showFormButtons($options); $this->addDivForTabs(); return true; }
function showForm($target, $ID) { global $LANG; if (!haveRight("profile", "r")) { return false; } $canedit = haveRight("profile", "w"); if ($ID) { $this->getFromDB($ID); } echo "<form action='" . $target . "' method='post'>"; echo "<table class='tab_cadre_fixe'>"; echo "<tr>"; echo "<th colspan='4' align='center'>"; echo $LANG['plugin_fusioninventory']["profile"][0] . " " . $this->fields["name"]; echo "</th>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][16] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("snmp_networking", $this->fields["snmp_networking"], 1, 1, 1); echo "</td>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][23] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("configuration", $this->fields["configuration"], 1, 1, 1); echo "</td>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][18] . " :</td><td>"; Profile::dropdownNoneReadWrite("snmp_printers", $this->fields["snmp_printers"], 1, 1, 1); echo "</td>"; echo "<th colspan='2'>"; echo $LANG['plugin_fusioninventory']["profile"][34] . " :"; echo "</th>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][19] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("snmp_models", $this->fields["snmp_models"], 1, 1, 1); echo "</td>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][29] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("remotecontrol", $this->fields["remotecontrol"], 1, 0, 1); echo "</td>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][20] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("snmp_authentification", $this->fields["snmp_authentification"], 1, 1, 1); echo "</td>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][31] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("deviceinventory", $this->fields["deviceinventory"], 1, 0, 1); echo "</td>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][25] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("rangeip", $this->fields["rangeip"], 1, 1, 1); echo "</td>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][22] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("netdiscovery", $this->fields["netdiscovery"], 1, 0, 1); echo "</td>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][26] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("agents", $this->fields["agents"], 1, 1, 1); echo "</td>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][32] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("snmp_query", $this->fields["snmp_query"], 1, 0, 1); echo "</td>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][27] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("agentsprocesses", $this->fields["agentsprocesses"], 1, 1, 0); echo "</td>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][33] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("wol", $this->fields["wol"], 1, 0, 1); echo "</td>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][30] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("unknowndevices", $this->fields["unknowndevices"], 1, 1, 1); echo "</td>"; echo "<td colspan='2'>"; echo "</td>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['plugin_fusioninventory']["profile"][28] . " :</td>"; echo "<td>"; Profile::dropdownNoneReadWrite("reports", $this->fields["reports"], 1, 1, 0); echo "</td>"; echo "<td colspan='2'>"; echo "</td>"; echo "</tr>"; if ($canedit) { echo "<tr class='tab_bg_1'>"; echo "<td align='center' colspan='3'>"; echo "<input type='hidden' name='ID' value={$ID}>"; echo "<input type='submit' name='update_user_profile' value=\"" . $LANG["buttons"][7] . "\" class='submit'>"; echo "</td></tr>\n"; } echo "</table>"; }
function canView() { return haveRight('typedoc', 'r'); }
/** * show notes for item * * @param $target target page to update item * @param $itemtype item type of the device to display notes * @param $id id of the device to display notes * * @return nothing */ function showNotesForm($target, $itemtype, $id) { global $LANG; if (!haveRight("notes", "r")) { return false; } if (!class_exists($itemtype)) { return false; } $item = new $itemtype(); //getFromDB $item->getFromDB($id); $canedit = haveRight("notes", "w") && (!$item->isEntityAssign() || haveAccessToEntity($item->getEntityID())); if ($canedit) { echo "<form name='form' method='post' action='" . $target . "'>"; } echo "<div class='center'>"; echo "<table class='tab_cadre_fixe' >"; echo "<tr><th class='center'>" . $LANG['title'][37] . "</th></tr>"; echo "<tr><td class='tab_bg_1 center middle'>"; echo "<textarea class='textarea_notes' cols='100' rows='35' name='notepad'>" . $item->getField('notepad') . "</textarea></td></tr>"; echo "<tr><td class='tab_bg_2 center'>"; echo "<input type='hidden' name='id' value='" . $item->fields['id'] . "'>"; // for all objects without id as primary key (like entitydata) if ($item->getIndexName() != $id) { echo "<input type='hidden' name='" . $item->getIndexName() . "' " . "value='" . $item->fields[$item->getIndexName()] . "'>"; } if ($canedit) { echo "<input type='submit' name='update' value=\"" . $LANG['buttons'][7] . "\" class='submit'>"; } echo "</td></tr>"; echo "</table></div>"; if ($canedit) { echo "</form>"; } }
if (isset($_GET['activate'])) { $config = new Config(); $tmp['id'] = $CFG_GLPI['id']; $tmp['use_mailing'] = 1; $config->update($tmp); glpi_header($_SERVER['HTTP_REFERER']); } if (!$CFG_GLPI['use_mailing']) { echo "<div align='center'<p>"; if (haveRight("config", "w")) { echo "<a href='setup.notification.php?activate=1' class='icon_consol b'>" . $LANG['setup'][202] . "</a></p></div>"; } } else { if (!haveRight("config", "r") && haveRight("notification", "r") && $CFG_GLPI['use_mailing']) { glpi_header($CFG_GLPI["root_doc"] . '/front/notification.php'); } else { echo "<table class='tab_cadre'>"; echo "<tr><th> " . $LANG['setup'][704] . " </th></tr>"; if (haveRight("config", "r")) { echo "<tr class='tab_bg_1'><td class='center'><a href='notificationmailsetting.form.php'>" . $LANG['setup'][201] . "</a></td></tr>"; echo "<tr class='tab_bg_1'><td class='center'><a href='notificationtemplate.php'>" . $LANG['mailing'][113] . "</a></td> </tr>"; } if (haveRight("notification", "r") && $CFG_GLPI['use_mailing']) { echo "<tr class='tab_bg_1'><td class='center'><a href='notification.php'>" . $LANG['setup'][704] . "</a></td></tr>"; } else { echo "<tr class='tab_bg_1'><td class='center'>" . $LANG['setup'][661] . "</td></tr>"; } echo "</table>"; } } commonFooter();
https://forge.indepnet.net/projects/typology ------------------------------------------------------------------------- LICENSE This file is part of Typology. Typology is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Typology 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 Typology. If not, see <http://www.gnu.org/licenses/>. -------------------------------------------------------------------------- */ include '../../../inc/includes.php'; PluginTypologyProfile::checkRight('typology', 'r'); Html::header(PluginTypologyTypology::getTypeName(2), '', "plugins", "typology"); $typo = new PluginTypologyTypology(); if ($typo->canView() || haveRight("config", "w")) { Search::show("PluginTypologyTypology"); } else { Html::displayRightError(); } Html::footer();
/** * Show the planning for the central page of a user * * @param $who ID of the user * * @return Nothing (display function) **/ static function showCentral($who) { global $CFG_GLPI, $LANG; if (!haveRight("show_planning", "1") || $who <= 0) { return false; } $when = strftime("%Y-%m-%d"); $debut = $when; // Get begin and duration $date = explode("-", $when); $time = mktime(0, 0, 0, $date[1], $date[2], $date[0]); $begin = $time; $end = $begin + DAY_TIMESTAMP; $begin = date("Y-m-d H:i:s", $begin); $end = date("Y-m-d H:i:s", $end); // ---------------Tracking $interv = TicketPlanning::populatePlanning(array('who' => $who, 'who_group' => 0, 'begin' => $begin, 'end' => $end)); // ---------------Reminder $data = Reminder::populatePlanning(array('who' => $who, 'who_group' => 0, 'begin' => $begin, 'end' => $end)); $interv = array_merge($interv, $data); // ---------------Plugin $data = doHookFunction("planning_populate", array("begin" => $begin, "end" => $end, "who" => $who, "who_group" => -1)); if (isset($data["items"]) && count($data["items"])) { $interv = array_merge($data["items"], $interv); } ksort($interv); echo "<table class='tab_cadrehov'><tr><th>"; echo "<a href='" . $CFG_GLPI["root_doc"] . "/front/planning.php?uID={$who}'>" . $LANG['planning'][15] . "</a>"; echo "</th></tr>"; $type = ''; if (count($interv) > 0) { foreach ($interv as $key => $val) { echo "<tr class='tab_bg_1'>"; echo "<td>"; if ($val["begin"] < $begin) { $val["begin"] = $begin; } if ($val["end"] > $end) { $val["end"] = $end; } self::displayPlanningItem($val, $who, 'in'); echo "</td></tr>\n"; } } echo "</table>"; }
} else { commonHeader($LANG['Menu'][5], '', "maintain", "ticket"); } $available_options = array('load_kb_sol'); $options = array(); foreach ($available_options as $key) { if (isset($_GET[$key])) { $options[$key] = $_GET[$key]; } } $track->showForm($_GET["id"], $options); } else { commonHeader($LANG['job'][13], '', "maintain", "ticket"); $users_id_requester = getLoginUserID(); // No default requester if own ticket right = tech and update_ticket right to update requester if (haveRight('own_ticket', 1) && haveRight('update_ticket', 1)) { $users_id_requester = 0; } // Set default value... $values = array('_users_id_requester' => $users_id_requester, '_users_id_requester_notif' => array('use_notification' => 1), '_groups_id_requester' => 0, '_users_id_assign' => 0, '_users_id_assign_notif' => array('use_notification' => 1), '_groups_id_assign' => 0, '_users_id_observer' => 0, '_users_id_observer_notif' => array('use_notification' => 1), '_groups_id_observer' => 0, 'suppliers_id_assign' => 0, 'name' => '', 'content' => '', 'ticketcategories_id' => 0, 'urgency' => 3, 'impact' => 3, 'priority' => Ticket::computePriority(3, 3), 'requesttypes_id' => $_SESSION["glpidefault_requesttypes_id"], 'hour' => 0, 'minute' => 0, 'date' => $_SESSION["glpi_currenttime"], 'entities_id' => $_SESSION["glpiactive_entity"], 'status' => 'new', 'followup' => array(), 'itemtype' => '', 'items_id' => 0, 'plan' => array(), 'global_validation' => 'none', 'due_date' => '', 'slas_id' => 0, '_add_validation' => 0, 'type' => -1); // Restore saved value or override with page parameter foreach ($values as $name => $value) { if (isset($_REQUEST[$name])) { $values[$name] = $_REQUEST[$name]; } else { if (isset($_SESSION["helpdeskSaved"][$name])) { $values[$name] = $_SESSION["helpdeskSaved"]["{$name}"]; } } } // Clean text fields
$rg = 4; if (haveRight($rg, 2)) { $tablefields[$rg] = 'need_desc'; $tablehead['titles'][$rg] = 'Aprašymas'; $tablehead['columns'][$rg] = 'left fc-100'; $sortby[$rg] = 'need_desc'; } $rg = 5; if (haveRight($rg, 2)) { $tablefields[$rg] = 'need_regdate'; $tablehead['titles'][$rg] = 'Modifikuotas'; $tablehead['columns'][$rg] = 'left fc-dates'; $sortby[$rg] = 'need_regdate'; } $rg = 6; if (haveRight($rg, 2)) { $tablefields[$rg] = 'need_expires'; $tablehead['titles'][$rg] = 'Galioja iki'; $tablehead['columns'][$rg] = 'left fc-dates'; $sortby[$rg] = 'need_expires'; } /* Admin specific */ $tablefields[7] = array('converter' => array('need_id', 'getNeedEditLink')); $tablehead['titles'][7] = ''; $tablehead['columns'][7] = 'left fc-16'; $tablefields[8] = array('action' => array('need_id', 'salinti', '<i title="Šalinti/atnaujinti" class="fa fa-times"></i>', false)); $tablehead['titles'][8] = ''; $tablehead['columns'][8] = 'left fc-16'; /* $tablefields = array( 'need_id',
function showStats() { global $LANG; if (!haveRight('observe_ticket', 1) || !isset($this->fields['id'])) { return false; } echo "<div class='center'>"; echo "<table class='tab_cadre_fixe'>"; echo "<tr><th colspan='2'>" . $LANG['common'][99] . "</th></tr>"; echo "<tr class='tab_bg_2'><td>" . $LANG['reports'][60] . " :</td>"; echo "<td>" . convDateTime($this->fields['date']) . "</td></tr>"; echo "<tr class='tab_bg_2'><td>" . $LANG['sla'][5] . " :</td>"; echo "<td>" . convDateTime($this->fields['due_date']) . "</td></tr>"; if ($this->fields['status'] == 'solved' || $this->fields['status'] == 'closed') { echo "<tr class='tab_bg_2'><td>" . $LANG['reports'][64] . " :</td>"; echo "<td>" . convDateTime($this->fields['solvedate']) . "</td></tr>"; } if ($this->fields['status'] == 'closed') { echo "<tr class='tab_bg_2'><td>" . $LANG['reports'][61] . " :</td>"; echo "<td>" . convDateTime($this->fields['closedate']) . "</td></tr>"; } echo "<tr><th colspan='2'>" . $LANG['common'][100] . "</th></tr>"; echo "<tr class='tab_bg_2'><td>" . $LANG['stats'][12] . " :</td><td>"; if ($this->fields['takeintoaccount_delay_stat'] > 0) { echo timestampToString($this->fields['takeintoaccount_delay_stat'], 0); } else { echo ' '; } echo "</td></tr>"; if ($this->fields['status'] == 'solved' || $this->fields['status'] == 'closed') { echo "<tr class='tab_bg_2'><td>" . $LANG['stats'][9] . " :</td><td>"; if ($this->fields['solve_delay_stat'] > 0) { echo timestampToString($this->fields['solve_delay_stat'], 0); } else { echo ' '; } echo "</td></tr>"; } if ($this->fields['status'] == 'closed') { echo "<tr class='tab_bg_2'><td>" . $LANG['stats'][10] . " :</td><td>"; if ($this->fields['close_delay_stat'] > 0) { echo timestampToString($this->fields['close_delay_stat']); } else { echo ' '; } echo "</td></tr>"; } echo "<tr class='tab_bg_2'><td>" . $LANG['joblist'][26] . " :</td><td>"; if ($this->fields['ticket_waiting_duration'] > 0) { echo timestampToString($this->fields['ticket_waiting_duration'], 0); } else { echo ' '; } echo "</td></tr>"; echo "</table>"; echo "</div>"; }
foreach ($_POST['items'] as $reservationitems_id) { $_POST['reservationitems_id'] = $reservationitems_id; $times = $_POST["periodicity_times"]; $begin = $_POST["begin"]; list($begin_year, $begin_month, $begin_day) = explode("-", $_POST["begin"]); $end = $_POST["end"]; $to_add = 1; if ($_POST["periodicity"] == "week") { $to_add = 7; } $_POST['_target'] = $_SERVER['PHP_SELF']; $_POST['_ok'] = true; for ($i = 0; $i < $times && $_POST['_ok']; $i++) { $_POST["begin"] = date('Y-m-d H:i:s', strtotime($begin) + $i * $to_add * DAY_TIMESTAMP); $_POST["end"] = date('Y-m-d H:i:s', strtotime($end) + $i * $to_add * DAY_TIMESTAMP); if (haveRight("reservation_central", "w") || getLoginUserID() === $_POST["users_id"]) { unset($rr->fields["id"]); $_POST['_ok'] = $rr->add($_POST); } } // Positionnement du calendrier au mois de debut $_GET["mois_courant"] = $begin_month; $_GET["annee_courant"] = $begin_year; if ($_POST['_ok']) { Event::log($_POST["reservationitems_id"], "reservation", 4, "inventory", $_SESSION["glpiname"] . " " . $LANG['log'][20]); } else { $all_ok = false; } } if ($all_ok) { $toadd = "";
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, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -------------------------------------------------------------------------- */ // ---------------------------------------------------------------------- // Original Author of file: // Purpose of file: // ---------------------------------------------------------------------- define('GLPI_ROOT', '..'); include GLPI_ROOT . "/inc/includes.php"; checkSeveralRightsOr(array("reservation_central" => "r", "reservation_helpdesk" => "1")); if ($_SESSION["glpiactiveprofile"]["interface"] == "helpdesk") { helpHeader($LANG['Menu'][31], $_SERVER['PHP_SELF'], $_SESSION["glpiname"]); } else { commonHeader($LANG['Menu'][17], $_SERVER['PHP_SELF'], "utils", "reservation"); } if (!haveRight("reservation_central", "r")) { ReservationItem::showListSimple(); } else { Search::show('ReservationItem'); } if ($_SESSION["glpiactiveprofile"]["interface"] == "helpdesk") { helpFooter(); } else { commonFooter(); }
/** * Print the mailgate form * * @param $ID Integer : Id of the item to print * @param $options array * - target filename : where to go when done. * * @return boolean item found **/ function showForm($ID, $options = array()) { global $CFG_GLPI, $LANG; if (!haveRight("config", "r")) { return false; } if ($ID > 0) { $this->check($ID, 'r'); } else { // Create item $this->check(-1, 'w'); } $options['colspan'] = 1; $this->showTabs($options); $this->showFormHeader($options); if (!function_exists('mb_list_encodings') || !function_exists('mb_convert_encoding')) { echo "<tr class='tab_bg_1'><td colspan='2'>" . $LANG['mailgate'][4] . "</td></tr>"; } echo "<tr class='tab_bg_1'><td>" . $LANG['common'][16] . " (" . $LANG['mailing'][111] . ") :</td><td>"; autocompletionTextField($this, "name"); echo "</td></tr>"; echo "<tr class='tab_bg_1'><td>" . $LANG['common'][60] . " :</td><td>"; Dropdown::showYesNo("is_active", $this->fields["is_active"]); echo "</td></tr>"; showMailServerConfig($this->fields["host"]); echo "<tr class='tab_bg_1'><td>" . $LANG['login'][6] . " :</td><td>"; autocompletionTextField($this, "login"); echo "</td></tr>"; echo "<tr class='tab_bg_1'><td>" . $LANG['login'][7] . " :</td>"; echo "<td><input type='password' name='passwd' value='' size='20' autocomplete='off'></td>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td width='200px'> " . $LANG['mailgate'][7] . " :</td><td>"; self::showMaxFilesize('filesize_max', $this->fields["filesize_max"]); echo "</td></tr>"; echo "<tr class='tab_bg_1'><td>" . $LANG['common'][25] . " :</td>"; echo "<td><textarea cols='45' rows='5' name='comment' >" . $this->fields["comment"] . "</textarea>"; if ($ID > 0) { echo "<br>" . $LANG['common'][26] . " : " . convDateTime($this->fields["date_mod"]); } echo "</td></tr>"; $this->showFormButtons($options); $this->addDivForTabs(); return true; }
function showChildrensTab() { return haveRight('rule_ticket', 'r') && count($_SESSION['glpiactiveentities']) > 1; }
This file is part of GLPI. GLPI is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. 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, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -------------------------------------------------------------------------- */ // ---------------------------------------------------------------------- // Original Author of file: Julien Dombre // Purpose of file: // ---------------------------------------------------------------------- define('GLPI_ROOT', '..'); include GLPI_ROOT . "/inc/includes.php"; checkCentralAccess(); commonHeader($LANG['title'][40], $_SERVER['PHP_SELF'], "utils", "reminder"); Reminder::showList(); if (haveRight("reminder_public", "r")) { Reminder::showList(false, false); Reminder::showList(false, true); } commonFooter();
/** * Show software installed on a computer * * @param $comp Computer object * @param $withtemplate template case of the view process * * @return nothing **/ static function showForComputer(Computer $comp, $withtemplate = '') { global $DB, $CFG_GLPI, $LANG; if (!haveRight("software", "r")) { return false; } $computers_id = $comp->getField('id'); $rand = mt_rand(); $canedit = haveRight("software", "w"); $entities_id = $comp->fields["entities_id"]; $query = "SELECT `glpi_softwares`.`softwarecategories_id`,\n `glpi_softwares`.`name` AS softname,\n `glpi_computers_softwareversions`.`id`,\n `glpi_states`.`name` AS state,\n `glpi_softwareversions`.`id` AS verid,\n `glpi_softwareversions`.`softwares_id`,\n `glpi_softwareversions`.`name` AS version\n FROM `glpi_computers_softwareversions`\n LEFT JOIN `glpi_softwareversions`\n ON (`glpi_computers_softwareversions`.`softwareversions_id`\n = `glpi_softwareversions`.`id`)\n LEFT JOIN `glpi_states`\n ON (`glpi_states`.`id` = `glpi_softwareversions`.`states_id`)\n LEFT JOIN `glpi_softwares`\n ON (`glpi_softwareversions`.`softwares_id` = `glpi_softwares`.`id`)\n WHERE `glpi_computers_softwareversions`.`computers_id` = '{$computers_id}'\n ORDER BY `softwarecategories_id`, `softname`, `version`"; $result = $DB->query($query); $i = 0; echo "<div class='spaced'><table class='tab_cadre_fixe'>"; if ((empty($withtemplate) || $withtemplate != 2) && $canedit) { echo "<tr class='tab_bg_1'><td class='center' colspan='3'>"; echo "<form method='post' action='" . $CFG_GLPI["root_doc"] . "/front/computer_softwareversion.form.php'>"; echo $LANG['Menu'][4] . " : "; echo "<input type='hidden' name='computers_id' value='{$computers_id}'>"; Software::dropdownSoftwareToInstall("softwareversions_id", $entities_id); echo "<input type='submit' name='install' value=\"" . $LANG['buttons'][4] . "\" class='submit'>"; echo "</form>"; echo "</td>"; echo "<td class='cneter' clospan='2'>"; echo "<form method='post' action='" . $CFG_GLPI["root_doc"] . "/front/computer_softwarelicense.form.php'>"; echo $LANG['software'][11] . " : "; echo "<input type='hidden' name='computers_id' value='{$computers_id}'>"; Software::dropdownLicenseToInstall("softwarelicenses_id", $entities_id); echo "<input type='submit' name='add' value=\"" . $LANG['buttons'][8] . "\" class='submit'>"; echo "</form>"; echo "</td></tr>\n"; } echo "<tr><th colspan='5'>"; if ($DB->numrows($result) == 1) { echo $LANG['software'][16]; } else { echo $LANG['software'][17]; } echo "</th></tr>"; $cat = -1; initNavigateListItems('Software', $LANG['help'][25] . " = " . (empty($comp->fields["name"]) ? "(" . $comp->fields["id"] . ")" : $comp->fields["name"])); initNavigateListItems('SoftwareLicense', $LANG['help'][25] . " = " . (empty($comp->fields["name"]) ? "(" . $comp->fields["id"] . ")" : $comp->fields["name"])); $installed = array(); if ($DB->numrows($result)) { while ($data = $DB->fetch_array($result)) { if ($data["softwarecategories_id"] != $cat) { self::displayCategoryFooter($cat, $rand, $canedit); $cat = self::displayCategoryHeader($computers_id, $data, $rand, $canedit); } $licids = self::displaySoftsByCategory($data, $computers_id, $withtemplate, $canedit); addToNavigateListItems('Software', $data["softwares_id"]); foreach ($licids as $licid) { addToNavigateListItems('SoftwareLicense', $licid); $installed[] = $licid; } } self::displayCategoryFooter($cat, $rand, $canedit); } // Affected licenses NOT installed $query = "SELECT `glpi_softwarelicenses`.*,\n `glpi_softwares`.`name` AS softname,\n `glpi_softwareversions`.`name` AS version,\n `glpi_states`.`name` AS state\n FROM `glpi_softwarelicenses`\n LEFT JOIN `glpi_computers_softwarelicenses`\n ON (`glpi_computers_softwarelicenses`.softwarelicenses_id\n = `glpi_softwarelicenses`.`id`)\n INNER JOIN `glpi_softwares`\n ON (`glpi_softwarelicenses`.`softwares_id` = `glpi_softwares`.`id`)\n LEFT JOIN `glpi_softwareversions`\n ON (`glpi_softwarelicenses`.`softwareversions_id_use`\n = `glpi_softwareversions`.`id`\n OR (`glpi_softwarelicenses`.`softwareversions_id_use` = '0'\n AND `glpi_softwarelicenses`.`softwareversions_id_buy`\n = `glpi_softwareversions`.`id`))\n LEFT JOIN `glpi_states`\n ON (`glpi_states`.`id` = `glpi_softwareversions`.`states_id`)\n WHERE `glpi_computers_softwarelicenses`.`computers_id` = '{$computers_id}' "; if (count($installed)) { $query .= " AND `glpi_softwarelicenses`.`id` NOT IN (" . implode(',', $installed) . ")"; } $req = $DB->request($query); if ($req->numrows()) { $cat = true; foreach ($req as $data) { if ($cat) { self::displayCategoryHeader($computers_id, $data, $rand, $canedit); $cat = false; } self::displaySoftsByLicense($data, $computers_id, $withtemplate, $canedit); addToNavigateListItems('SoftwareLicense', $data["id"]); } self::displayCategoryFooter(NULL, $rand, $canedit); } echo "</table></div>\n"; }
function canUndo() { return haveRight('computer', 'w'); }
/** * Check if I have the right to access to the FAQ (profile or anonymous FAQ) * * @return Nothing : display error if not permit **/ function checkFaqAccess() { global $CFG_GLPI; if ($CFG_GLPI["use_public_faq"] == 0 && !haveRight("faq", "r")) { displayRightError(); } }
<?php if ($login->isUserLoggedIn() == false) { return; } if (!isAdmin() and !(isCustom() and haveRight(7))) { return; } if (isset($_FILES["file"]) and $_FILES["file"]["tmp_name"] != '') { $allowedExts = array("jpeg", "jpg"); $temp = explode(".", $_FILES["file"]["name"]); $extension = end($temp); if (in_array($extension, $allowedExts)) { if ($_FILES["file"]["error"] > 0) { echo "Klaida: " . $_FILES["file"]["error"] . "<br>"; } else { move_uploaded_file($_FILES["file"]["tmp_name"], ROOT_PATH . DIRECTORY_SEPARATOR . "uploads" . DIRECTORY_SEPARATOR . "head" . $_POST['htype'] . ".jpg"); } } else { err('Klaida'); } } ?> <table style="width: 100%;"> <!-- Užkomentuojam, nes šiuo metu negalim uploadint`i į kitą tinklapį (pvz. iš admin.pagalbadaiktais.lt į pagalbadarbais.lt) <tr> <td style="vertical-align: top;"> <form action="" method="post" enctype="multipart/form-data"> <input type="hidden" name="htype" value="1" />
function canView() { return haveRight('device', 'r'); }
/** * Is the current user have right to update the current notification ? * * @return boolean **/ function canCreateItem() { if (($this->fields['itemtype'] == 'Crontask' || $this->fields['itemtype'] == 'DBConnection') && !haveRight('config', 'w')) { return false; } return haveAccessToEntity($this->getEntityID()); }
/** * Show the list of rules * * @param $target * @param $tab * @param $options * * @return nothing **/ function showListRules($target, $tab = 0, $options = array()) { global $CFG_GLPI, $LANG; $p['inherited'] = true; $p['childrens'] = false; $p['active'] = false; foreach (array('inherited', 'childrens') as $param) { if (isset($options[$param]) && $this->isRuleRecursive()) { $p[$param] = $options[$param]; } } $display_entities = $this->isRuleRecursive() && ($p['inherited'] || $p['childrens']); // Do not know what it is ? $canedit = haveRight($this->right, "w") && !$display_entities; $nb = $this->getCollectionSize($p['inherited']); $p['start'] = isset($options["start"]) ? $options["start"] : 0; if ($p['start'] >= $nb) { $p['start'] = 0; } $p['limit'] = $_SESSION['glpilist_limit']; $this->getCollectionPart($p); printAjaxPager('', $p['start'], $nb); echo "<form name='ruleactions_form' id='ruleactions_form' method='post'action='" . $target . "'>"; echo "\n<div class='spaced'>"; echo "<table class='tab_cadre_fixehov'>"; $colspan = 6; if ($display_entities) { $colspan++; } echo "<tr><th colspan='{$colspan}'>" . $this->getTitle() . "</th></tr>\n"; echo "<tr><th colspan='2'>" . $LANG['common'][16] . "</th>"; echo "<th>" . $LANG['joblist'][6] . "</th>"; echo "<th>" . $LANG['common'][60] . "</th>"; if ($display_entities) { echo "<th>" . $LANG['entity'][0] . "</th>\n"; } if (!$display_entities) { echo "<th colspan='2'> </th>"; } echo "</tr>\n"; if (count($this->RuleList->list)) { $ruletype = $this->RuleList->list[0]->getType(); initNavigateListItems($ruletype); } for ($i = $p['start'], $j = 0; isset($this->RuleList->list[$j]); $i++, $j++) { $this->RuleList->list[$j]->showMinimalForm($target, $i == 0, $i == $nb - 1, $display_entities); addToNavigateListItems($ruletype, $this->RuleList->list[$j]->fields['id']); } echo "</table>\n"; if ($canedit && $nb > 0) { openArrowMassive("ruleactions_form", true); echo "<select name='massiveaction' id='massiveaction'>"; echo "<option value='-1' selected>" . DROPDOWN_EMPTY_VALUE . "</option>"; echo "<option value='delete'>" . $LANG['buttons'][6] . "</option>"; if ($this->orderby == "ranking") { echo "<option value='move_rule'>" . $LANG['buttons'][20] . "</option>"; } echo "<option value='activate_rule'>" . $LANG['buttons'][41] . "</option>"; echo "</select>\n"; $params = array('action' => '__VALUE__', 'itemtype' => 'Rule', 'sub_type' => $this->getRuleClassName(), 'entity_restrict' => $this->entity); ajaxUpdateItemOnSelectEvent("massiveaction", "show_massiveaction", $CFG_GLPI["root_doc"] . "/ajax/dropdownMassiveAction.php", $params); echo "<span id='show_massiveaction'> </span>\n"; if ($this->can_replay_rules) { echo "</td>"; // close td of openArrowMassive echo "<td><input type='submit' name='replay_rule' value='" . $LANG['rulesengine'][76] . "' class='submit'></td>"; echo "<td>"; // open td for closeArrowMassive } closeArrowMassive(); } echo "</div></form>"; echo "<div class='spaced center'><span class='icon_consol'>"; if ($plugin = isPluginItemType($this->getType())) { $url = $CFG_GLPI["root_doc"] . "/plugins/" . strtolower($plugin['plugin']); } else { $url = $CFG_GLPI["root_doc"]; } echo "<a href='#' onClick=\"var w=window.open('" . $url . "/front/popup.php?popup=test_all_rules&sub_type=" . $this->getRuleClassName() . "&' ,'glpipopup', 'height=400, width=1000, top=100, left=100, scrollbars=yes' );" . "w.focus();\">" . $LANG['rulesengine'][84] . "</a></span></div>"; echo "<div class='spaced'>"; $this->showAdditionalInformationsInForm($target); echo "</div>"; }
/** * Print the version form * * @param $ID integer ID of the item * @param $options array * - target for the Form * - computers_id ID of the computer for add process * * @return true if displayed false if item not found or not right to display **/ function showForm($ID, $options = array()) { global $CFG_GLPI, $LANG; $computers_id = -1; if (isset($options['computers_id'])) { $computers_id = $options['computers_id']; } if (!haveRight("computer", "w")) { return false; } $comp = new Computer(); if ($ID > 0) { $this->check($ID, 'r'); $comp->getFromDB($this->fields['computers_id']); } else { $comp->getFromDB($computers_id); // Create item $input = array('entities_id' => $comp->getEntityID()); $this->check(-1, 'w', $input); } $this->showTabs($options); $this->showFormHeader($options); if ($ID > 0) { $computers_id = $this->fields["computers_id"]; } else { echo "<input type='hidden' name='computers_id' value='{$computers_id}'>"; } echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['help'][25] . " :</td>"; echo "<td colspan='3'>" . $comp->getLink() . "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['common'][16] . " :</td>"; echo "<td>"; autocompletionTextField($this, "name"); echo "</td><td>" . $LANG['computers'][62] . " :</td>"; echo "<td>"; Dropdown::show('VirtualMachineType', array('value' => $this->fields['virtualmachinetypes_id'])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['computers'][60] . " :</td>"; echo "<td>"; Dropdown::show('VirtualMachineSystem', array('value' => $this->fields['virtualmachinesystems_id'])); echo "</td><td>" . $LANG['computers'][63] . " :</td>"; echo "<td>"; Dropdown::show('VirtualMachineState', array('value' => $this->fields['virtualmachinestates_id'])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['computers'][58] . " :</td>"; echo "<td>"; autocompletionTextField($this, "uuid"); echo "</td>"; echo "<td>" . $LANG['computers'][61] . " :</td>"; echo "<td>"; autocompletionTextField($this, "vcpu"); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['computers'][24] . " :</td>"; echo "<td>"; autocompletionTextField($this, "ram"); echo "</td>"; echo "<td>" . $LANG['computers'][64] . " :</td>"; echo "<td>"; if ($link_computer = self::findVirtualMachine($this->fields)) { $computer = new Computer(); if ($computer->can($link_computer, 'r')) { $url = "<a href='computer.form.php?id=" . $link_computer . "'>"; $url .= $computer->fields["name"] . "</a>"; $tooltip = $LANG['common'][16] . " : " . $computer->fields['name']; $tooltip .= "<br>" . $LANG['common'][19] . " : "; $tooltip .= "<br>" . $computer->fields['serial']; $tooltip .= "<br>" . $computer->fields['comment']; $url .= " " . showToolTip($tooltip, array('display' => false)); } else { $url = $this->fields['name']; } echo $url; } echo "</td>"; echo "</tr>"; $this->showFormButtons($options); $this->addDivForTabs(); return true; }
/** * Print the Software / version form * * @param $ID Integer : Id of the version or the template to print * @param $options array * - target form target * - softwares_id ID of the software for add process * * @return true if displayed false if item not found or not right to display * **/ function showForm($ID, $options = array()) { global $CFG_GLPI, $LANG; $softwares_id = -1; if (isset($options['softwares_id'])) { $softwares_id = $options['softwares_id']; } if (!haveRight("software", "r")) { return false; } if ($ID > 0) { $this->check($ID, 'r'); } else { $soft = new Software(); $soft->getFromDB($softwares_id); // Create item $input = array('entities_id' => $soft->getEntityID(), 'is_recursive' => $soft->isRecursive()); $this->check(-1, 'w', $input); } $this->showTabs($options); $this->showFormHeader($options); echo "<tr class='tab_bg_1'><td>" . $LANG['help'][31] . " :</td>"; echo "<td>"; if ($ID > 0) { $softwares_id = $this->fields["softwares_id"]; } else { echo "<input type='hidden' name='softwares_id' value='{$softwares_id}'>"; } echo "<a href='software.form.php?id=" . $softwares_id . "'>" . Dropdown::getDropdownName("glpi_softwares", $softwares_id) . "</a>"; echo "</td>"; echo "<td rowspan='4' class='middle'>" . $LANG['common'][25] . " :</td>"; echo "<td class='center middle' rowspan='4'>"; echo "<textarea cols='45' rows='3' name='comment' >" . $this->fields["comment"]; echo "</textarea></td></tr>\n"; echo "<tr class='tab_bg_1'><td>" . $LANG['common'][16] . " :</td>"; echo "<td>"; autocompletionTextField($this, "name"); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'><td>" . $LANG['setup'][5] . " :</td><td>"; Dropdown::show('OperatingSystem', array('value' => $this->fields["operatingsystems_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'><td>" . $LANG['state'][0] . " :</td><td>"; Dropdown::show('State', array('value' => $this->fields["states_id"])); echo "</td></tr>\n"; // Only count softwareversions_id_buy (don't care of softwareversions_id_use if no installation) if (SoftwareLicense::countForVersion($ID) > 0 || Computer_SoftwareVersion::countForVersion($ID) > 0) { $options['candel'] = false; } $this->showFormButtons($options); $this->addDivForTabs(); return true; }
/** * Print the validation list into ticket * * @param $ticket class **/ function showSummary($ticket) { global $DB, $LANG, $CFG_GLPI; if (!haveRight('validate_ticket', 1) && !haveRight('create_validation', 1)) { return false; } $tID = $ticket->fields['id']; //$canadd = haveRight("create_validation", "1"); $tmp = array('tickets_id' => $tID); $canadd = $this->can(-1, 'w', $tmp); $rand = mt_rand(); echo "<div id='viewfollowup" . $tID . "{$rand}'></div>\n"; if ($canadd) { echo "<script type='text/javascript' >\n"; echo "function viewAddValidation" . $tID . "{$rand}() {\n"; $params = array('type' => __CLASS__, 'tickets_id' => $tID, 'id' => -1); ajaxUpdateItemJsCode("viewfollowup" . $tID . "{$rand}", $CFG_GLPI["root_doc"] . "/ajax/viewfollowup.php", $params, false); echo "};"; echo "</script>\n"; if ($ticket->fields["status"] != 'solved' && $ticket->fields["status"] != 'closed') { echo "<div class='center'><a href='javascript:viewAddValidation" . $tID . "{$rand}();'>"; echo $LANG['validation'][1] . "</a></div><br>\n"; } } $query = "SELECT *\n FROM `" . $this->getTable() . "`\n WHERE `tickets_id` = '" . $ticket->getField('id') . "'"; if (!$canadd) { $query .= " AND `users_id_validate` = '" . getLoginUserID() . "' "; } $query .= " ORDER BY submission_date DESC"; $result = $DB->query($query); $number = $DB->numrows($result); if ($number) { $colonnes = array($LANG['validation'][2], $LANG['validation'][3], $LANG['validation'][18], $LANG['validation'][5], $LANG['validation'][4], $LANG['validation'][21], $LANG['validation'][6]); $nb_colonnes = count($colonnes); echo "<table class='tab_cadre_fixehov'>"; echo "<tr><th colspan='" . $nb_colonnes . "'>" . $LANG['validation'][7] . "</th></tr>"; echo "<tr>"; foreach ($colonnes as $colonne) { echo "<th>" . $colonne . "</th>"; } echo "</tr>"; initNavigateListItems('TicketValidation', $LANG['validation'][26] . " = " . $ticket->fields['name']); while ($row = $DB->fetch_assoc($result)) { $canedit = $this->can($row["id"], 'w'); addToNavigateListItems('TicketValidation', $row["id"]); $bgcolor = $this->getStatusColor($row['status']); $status = $this->getStatus($row['status']); echo "<tr class='tab_bg_1' " . ($canedit ? "style='cursor:pointer' onClick=\"viewEditValidation" . $ticket->fields['id'] . $row["id"] . "{$rand}();\"" : '') . " id='viewfollowup" . $this->fields['tickets_id'] . $row["id"] . "{$rand}'>"; echo "<td>"; if ($canedit) { echo "\n<script type='text/javascript' >\n"; echo "function viewEditValidation" . $ticket->fields['id'] . $row["id"] . "{$rand}() {\n"; $params = array('type' => __CLASS__, 'tickets_id' => $this->fields["tickets_id"], 'id' => $row["id"]); ajaxUpdateItemJsCode("viewfollowup" . $ticket->fields['id'] . "{$rand}", $CFG_GLPI["root_doc"] . "/ajax/viewfollowup.php", $params, false); echo "};"; echo "</script>\n"; } echo "<div style='background-color:" . $bgcolor . ";'>" . $status . "</div></td>"; if ($ticket->can($ticket->fields['id'], 'r') && !strstr($ticket->fields["status"], "solved") && !strstr($ticket->fields["status"], "closed")) { $link_validation = getItemTypeFormURL('TicketValidation'); echo "<td>" . convDateTime($row["submission_date"]) . "</td>"; } else { echo "<td>" . convDateTime($row["submission_date"]) . "</a></td>"; } echo "<td>" . getUserName($row["users_id"]) . "</td>"; echo "<td>" . $row["comment_submission"] . "</td>"; echo "<td>" . convDateTime($row["validation_date"]) . "</td>"; echo "<td>" . getUserName($row["users_id_validate"]) . "</td>"; echo "<td>" . $row["comment_validation"] . "</td>"; echo "</tr>"; } echo "</table>"; } else { echo "<div class='center b'>" . $LANG['search'][15] . "</div>"; } }
/** * Print the transfer form * * @param $ID Integer : Id of the contact to print * @param $options array * - target filename : where to go when done. * - withtemplate boolean : template or basic item * * @return boolean item found **/ function showForm($ID, $options = array()) { global $CFG_GLPI, $LANG; if (!haveRight("transfer", "r")) { return false; } $edit_form = true; if (!strpos($_SERVER['PHP_SELF'], "transfer.form.php")) { $edit_form = false; } if ($ID > 0) { $this->check($ID, 'r'); } else { // Create item $this->check(-1, 'w'); } $params = array(); if (!haveRight("transfer", "w")) { $params['readonly'] = true; } if ($edit_form) { $this->showTabs($options); $this->showFormHeader($options); } else { echo "<form method='post' name=form action='" . $options['target'] . "'>"; echo "<div class='center' id='tabsbody' >"; echo "<table class='tab_cadre_fixe'>"; echo "<tr><td class='tab_bg_2 top' colspan='4'>"; echo "<div class='center'>"; Dropdown::show('Entity', array('name' => 'to_entity')); echo " <input type='submit' name='transfer' value=\"" . $LANG['buttons'][48] . "\"\n class='submit'></div>"; echo "</td></tr>"; } if ($edit_form) { echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['common'][16] . " :</td><td>"; autocompletionTextField($this, "name"); echo "</td>"; echo "<td rowspan='3' class='middle right'>" . $LANG['common'][25] . " : </td>"; echo "<td class='center middle' rowspan='3'>\n <textarea cols='45' rows='3' name='comment' >" . $this->fields["comment"] . "</textarea>"; echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['common'][26] . " : </td>"; echo "<td>" . ($this->fields["date_mod"] ? convDateTime($this->fields["date_mod"]) : $LANG['setup'][307]); echo "</td></tr>"; } $keep = array(0 => $LANG['buttons'][6], 1 => $LANG['buttons'][49]); $clean = array(0 => $LANG['buttons'][49], 1 => $LANG['buttons'][6], 2 => $LANG['buttons'][22]); echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['common'][66] . " -> " . $LANG['title'][38] . " :</td><td>"; $params['value'] = $this->fields['keep_history']; Dropdown::showFromArray('keep_history', $keep, $params); echo "</td>"; if (!$edit_form) { echo "<td colspan='2'> </td>"; } echo "</tr>"; echo "<tr class='tab_bg_2'>"; echo "<td colspan='4' class='center b'>" . $LANG['Menu'][38] . "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['common'][66] . " -> " . $LANG['networking'][6] . " :</td><td>"; $options = array(0 => $LANG['buttons'][6], 1 => $LANG['buttons'][49] . " - " . $LANG['buttons'][10], 2 => $LANG['buttons'][49] . " - " . $LANG['buttons'][9]); $params['value'] = $this->fields['keep_networklink']; Dropdown::showFromArray('keep_networklink', $options, $params); echo "</td>"; echo "<td>" . $LANG['common'][66] . " -> " . $LANG['title'][28] . " :</td><td>"; $options = array(0 => $LANG['buttons'][6], 1 => $LANG['buttons'][49] . " - " . $LANG['buttons'][10], 2 => $LANG['buttons'][49] . " - " . $LANG['buttons'][48]); $params['value'] = $this->fields['keep_ticket']; Dropdown::showFromArray('keep_ticket', $options, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG["Menu"][0] . " -> " . $LANG["Menu"][4] . " :</td><td>"; $params['value'] = $this->fields['keep_software']; Dropdown::showFromArray('keep_software', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][4] . " (" . $LANG['transfer'][3] . ") :</td><td>"; $params['value'] = $this->fields['clean_software']; Dropdown::showFromArray('clean_software', $clean, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['common'][66] . " -> " . $LANG['Menu'][17] . " :</td><td>"; $params['value'] = $this->fields['keep_reservation']; Dropdown::showFromArray('keep_reservation', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][0] . " -> " . $LANG['title'][30] . " :</td><td>"; $params['value'] = $this->fields['keep_device']; Dropdown::showFromArray('keep_device', $keep, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG["Menu"][2] . " -> " . $LANG["Menu"][21] . " / " . $LANG['cartridges'][12] . " :" . "</td><td>"; $params['value'] = $this->fields['keep_cartridgeitem']; Dropdown::showFromArray('keep_cartridgeitem', $keep, $params); echo "</td>"; echo "<td>" . $LANG['cartridges'][12] . " (" . $LANG['transfer'][3] . ") :</td><td>"; $params['value'] = $this->fields['clean_cartridgeitem']; Dropdown::showFromArray('clean_cartridgeitem', $clean, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['cartridges'][12] . " -> " . $LANG["Menu"][21] . " :</td><td>"; $params['value'] = $this->fields['keep_cartridge']; Dropdown::showFromArray('keep_cartridge', $keep, $params); echo "</td>"; echo "<td>" . $LANG['common'][66] . " -> " . $LANG['financial'][3] . " :</td><td>"; $params['value'] = $this->fields['keep_infocom']; Dropdown::showFromArray('keep_infocom', $keep, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['setup'][92] . " -> " . $LANG["Menu"][32] . " :</td><td>"; $params['value'] = $this->fields['keep_consumable']; Dropdown::showFromArray('keep_consumable', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][0] . " -> " . $LANG['computers'][8] . " :</td><td>"; $params['value'] = $this->fields['keep_disk']; Dropdown::showFromArray('keep_disk', $keep, $params); echo "</td></tr>"; echo "<tr class='tab_bg_2'>"; echo "<td colspan='4' class='center b'>" . $LANG['connect'][0] . "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG["Menu"][3] . " :</td><td>"; $params['value'] = $this->fields['keep_dc_monitor']; Dropdown::showFromArray('keep_dc_monitor', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][3] . " (" . $LANG['transfer'][3] . ") :</td><td>"; $params['value'] = $this->fields['clean_dc_monitor']; Dropdown::showFromArray('clean_dc_monitor', $clean, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG["Menu"][2] . " :</td><td>"; $params['value'] = $this->fields['keep_dc_printer']; Dropdown::showFromArray('keep_dc_printer', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][2] . " (" . $LANG['transfer'][3] . ") :</td><td>"; $params['value'] = $this->fields['clean_dc_printer']; Dropdown::showFromArray('clean_dc_printer', $clean, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG["Menu"][16] . " :</td><td>"; $params['value'] = $this->fields['keep_dc_peripheral']; Dropdown::showFromArray('keep_dc_peripheral', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][16] . " (" . $LANG['transfer'][3] . ") :</td><td>"; $params['value'] = $this->fields['clean_dc_peripheral']; Dropdown::showFromArray('clean_dc_peripheral', $clean, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG["Menu"][34] . " :</td><td>"; $params['value'] = $this->fields['keep_dc_phone']; Dropdown::showFromArray('keep_dc_phone', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][34] . " (" . $LANG['transfer'][3] . ") :</td><td>"; $params['value'] = $this->fields['clean_dc_phone']; Dropdown::showFromArray('clean_dc_phone', $clean, $params); echo "</td></tr>"; echo "<tr class='tab_bg_2'>"; echo "<td colspan='4' class='center b'>" . $LANG["Menu"][26] . "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['common'][66] . " -> " . $LANG["Menu"][23] . " :</td><td>"; $params['value'] = $this->fields['keep_supplier']; Dropdown::showFromArray('keep_supplier', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][23] . " (" . $LANG['transfer'][3] . ") :</td><td>"; $params['value'] = $this->fields['clean_supplier']; Dropdown::showFromArray('clean_supplier', $clean, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG["Menu"][23] . " -> " . $LANG["Menu"][22] . " :</td><td>"; $params['value'] = $this->fields['keep_contact']; Dropdown::showFromArray('keep_contact', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][22] . " (" . $LANG['transfer'][3] . ") :</td><td>"; $params['value'] = $this->fields['clean_contact']; Dropdown::showFromArray('clean_contact', $clean, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['common'][66] . " -> " . $LANG["Menu"][27] . " :</td><td>"; $params['value'] = $this->fields['keep_document']; Dropdown::showFromArray('keep_document', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][27] . " (" . $LANG['transfer'][3] . ") :</td><td>"; $params['value'] = $this->fields['clean_document']; Dropdown::showFromArray('clean_document', $clean, $params); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . $LANG['common'][66] . " -> " . $LANG["Menu"][25] . " :</td><td>"; $params['value'] = $this->fields['keep_contract']; Dropdown::showFromArray('keep_contract', $keep, $params); echo "</td>"; echo "<td>" . $LANG["Menu"][25] . " (" . $LANG['transfer'][3] . ") :</td><td>"; $params['value'] = $this->fields['clean_contract']; Dropdown::showFromArray('clean_contract', $clean, $params); echo "</td></tr>"; if (haveRight("transfer", "w")) { if ($edit_form) { $this->showFormButtons($options); $this->addDivForTabs(); } else { echo "</table></div></form>"; } } }
static function showUserImportForm(AuthLDAP $authldap) { global $DB, $LANG; //Get data related to entity (directory and ldap filter) $authldap->getFromDB($_SESSION['ldap_import']['authldaps_id']); echo "<div class='center'>"; echo "<form method='post' action='" . $_SERVER['PHP_SELF'] . "'>"; echo "<table class='tab_cadre_fixe'>"; echo "<tr><th colspan='4' class='middle'><div class='relative'>"; echo "<span>" . ($_SESSION['ldap_import']['mode'] ? $LANG['ldap'][1] : $LANG['ldap'][2]); // Expert interface allow user to override configuration. // If not coming from the ticket form, then give expert/simple link if ((haveRight('config', 'w') || haveRight('entity', 'w')) && !isset($_SESSION['ldap_import']['no_expert_mode'])) { echo "</span> <span class='ldap_right'>" . $LANG['common'][65] . " : "; echo "<a href='" . $_SERVER['PHP_SELF'] . "?action=" . $_SESSION['ldap_import']['action'] . "&mode=" . $_SESSION['ldap_import']['mode'] . "&interface=" . ($_SESSION['ldap_import']['interface'] == self::SIMPLE_INTERFACE ? self::EXPERT_INTERFACE : self::SIMPLE_INTERFACE) . "'>" . ($_SESSION['ldap_import']['interface'] == self::SIMPLE_INTERFACE ? $LANG['ldap'][39] : $LANG['ldap'][40]) . "</a>"; } else { $_SESSION['ldap_import']['interface'] = self::SIMPLE_INTERFACE; } echo "</span></div>"; echo "</th></tr>"; switch ($_SESSION['ldap_import']['interface']) { case self::EXPERT_INTERFACE: //If more than one directory configured //Display dropdown ldap servers if ($_SESSION['ldap_import']['authldaps_id'] != NOT_AVAILABLE && $_SESSION['ldap_import']['authldaps_id'] > 0) { if (self::getNumberOfServers() > 1) { echo "<tr class='tab_bg_2'><td>" . $LANG['ldap'][4] . "</td><td colspan='3'>"; Dropdown::show('AuthLdap', array('name' => 'authldaps_id', 'value' => $_SESSION['ldap_import']['authldaps_id'], 'condition' => "`is_active` = '1'", 'display_emptychoice' => false)); echo " <input class='submit' type='submit' name='change_directory'\n value=\"" . $LANG['ldap'][41] . "\">"; echo "</td></tr>"; } echo "<tr class='tab_bg_2'><td>Basedn</td><td colspan='3'>"; echo "<input type='text' name='basedn' value=\"" . $_SESSION['ldap_import']['basedn'] . "\" size='90' " . (!$_SESSION['ldap_import']['basedn'] ? "disabled" : "") . ">"; echo "</td></tr>"; echo "<tr class='tab_bg_2'><td>" . $LANG['setup'][263] . "</td><td colspan='3'>"; echo "<input type='text' name='ldap_filter' value=\"" . $_SESSION['ldap_import']['ldap_filter'] . "\" size='90'>"; echo "</td></tr>"; } break; //case self::SIMPLE_INTERFACE : //case self::SIMPLE_INTERFACE : default: //If multi-entity mode and more than one entity visible //else no need to select entity if (isMultiEntitiesMode() && count($_SESSION['glpiactiveentities']) > 1) { echo "<tr class='tab_bg_2'><td>" . $LANG['entity'][10] . "</td><td colspan='3'>"; Dropdown::show('Entity', array('value' => $_SESSION['ldap_import']['entities_id'], 'entity' => $_SESSION['glpiactiveentities'], 'auto_submit' => 1)); echo "</td></tr>"; } else { //Only one entity is active, store it echo "<tr><td><input type='hidden' name='entities_id' value='" . $_SESSION['glpiactive_entity'] . "'></td></tr>"; } if (isset($_SESSION['ldap_import']['days']) && $_SESSION['ldap_import']['days']) { $enabled = 1; } else { $enabled = 0; } Dropdown::showAdvanceDateRestrictionSwitch($enabled); echo "<table class='tab_cadre_fixe'>"; if ($_SESSION['ldap_import']['authldaps_id'] != NOT_AVAILABLE && $_SESSION['ldap_import']['authldaps_id'] > 0) { $field_counter = 0; $fields = array('login_field' => $LANG['login'][6], 'email_field' => $LANG['setup'][14], 'realname_field' => $LANG['common'][48], 'firstname_field' => $LANG['common'][43], 'phone_field' => $LANG['help'][35], 'phone2_field' => $LANG['help'][35] . " 2", 'mobile_field' => $LANG['common'][42], 'title_field' => $LANG['users'][1], 'category_field' => $LANG['users'][2]); $available_fields = array(); foreach ($fields as $field => $label) { if (isset($authldap->fields[$field]) && $authldap->fields[$field] != '') { $available_fields[$field] = $label; } } echo "<tr><th colspan='4'>" . $LANG['ldap'][38] . "</th></tr>"; foreach ($available_fields as $field => $label) { if ($field_counter == 0) { echo "<tr class='tab_bg_1'>"; } echo "<td>{$label}</td><td>"; $field_counter++; echo "<input type='text' name='criterias[{$field}]' value='" . (isset($_SESSION['ldap_import']['criterias'][$field]) ? $_SESSION['ldap_import']['criterias'][$field] : '') . "'>"; echo "</td>"; if ($field_counter == 2) { echo "</tr>"; $field_counter = 0; } } if ($field_counter > 0) { while ($field_counter < 2) { echo "<td colspan='2'></td>"; $field_counter++; } $field_counter = 0; echo "</tr>"; } } break; } if ($_SESSION['ldap_import']['authldaps_id'] != NOT_AVAILABLE && $_SESSION['ldap_import']['authldaps_id'] > 0) { if ($_SESSION['ldap_import']['authldaps_id']) { echo "<tr class='tab_bg_2'><td colspan='4' class='center'>"; echo "<input class='submit' type='submit' name='search' value=\"" . $LANG['buttons'][0] . "\">"; echo "</td></tr>"; } else { echo "<tr class='tab_bg_2'><td colspan='4' class='center'>" . $LANG['ldap'][42] . "</td></tr>"; } } else { echo "<tr class='tab_bg_2'><td colspan='4' class='center'>" . $LANG['ldap'][36] . "</td></tr>"; } echo "</table></form></div>"; }