mirror of
https://github.com/pluginsGLPI/example.git
synced 2025-05-04 18:08:42 +02:00
manage new config system
git-svn-id: https://forge.glpi-project.org/svn/example/trunk@211 349b9182-4a13-0410-896f-e5e9767dd1b3
This commit is contained in:
parent
064cf6a24f
commit
d9a47a3e19
9
hook.php
9
hook.php
@ -557,6 +557,11 @@ function plugin_example_addParamFordynamicReport($itemtype) {
|
||||
function plugin_example_install() {
|
||||
global $DB;
|
||||
|
||||
$config = new Config();
|
||||
$config->setConfigurationValues('plugin:Example', array('configuration' => false));
|
||||
|
||||
ProfileRight::addProfileRights(array('example:read'));
|
||||
|
||||
if (!TableExists("glpi_plugin_example_examples")) {
|
||||
$query = "CREATE TABLE `glpi_plugin_example_examples` (
|
||||
`id` int(11) NOT NULL auto_increment,
|
||||
@ -611,6 +616,10 @@ function plugin_example_install() {
|
||||
function plugin_example_uninstall() {
|
||||
global $DB;
|
||||
|
||||
$config = new Config();
|
||||
$config->deleteConfigurationValues('plugin:Example', array('configuration' => false));
|
||||
|
||||
ProfileRight::deleteProfileRights(array('example:read'));
|
||||
|
||||
$notif = new Notification();
|
||||
$options = array('itemtype' => 'Ticket',
|
||||
|
88
inc/config.class.php
Normal file
88
inc/config.class.php
Normal file
@ -0,0 +1,88 @@
|
||||
<?php
|
||||
/*
|
||||
* @version $Id$
|
||||
-------------------------------------------------------------------------
|
||||
GLPI - Gestionnaire Libre de Parc Informatique
|
||||
Copyright (C) 2003-2011 by the INDEPNET Development Team.
|
||||
|
||||
http://indepnet.net/ http://glpi-project.org
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
LICENSE
|
||||
|
||||
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, see <http://www.gnu.org/licenses/>.
|
||||
--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
class PluginExampleConfig extends CommonDBTM {
|
||||
|
||||
static protected $notable = true;
|
||||
|
||||
function getTabNameForItem(CommonGLPI $item, $withtemplate=0) {
|
||||
|
||||
if (!$withtemplate) {
|
||||
if ($item->getType() == 'Config') {
|
||||
return __('Example plugin');
|
||||
}
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
static function configUpdate($input) {
|
||||
$input['configuration'] = 1 - $input['configuration'];
|
||||
return $input;
|
||||
}
|
||||
|
||||
function showFormExample() {
|
||||
global $CFG_GLPI;
|
||||
|
||||
if (!Session::haveRight("config", "w")) {
|
||||
return false;
|
||||
}
|
||||
|
||||
$my_config = Config::getConfigurationValues('plugin:Example');
|
||||
|
||||
echo "<form name='form' action=\"".Toolbox::getItemTypeFormURL('Config')."\" method='post'>";
|
||||
echo "<div class='center' id='tabsbody'>";
|
||||
echo "<table class='tab_cadre_fixe'>";
|
||||
echo "<tr><th colspan='4'>" . __('Example setup') . "</th></tr>";
|
||||
echo "<td >" . __('My boolean choice :') . "</td>";
|
||||
echo "<td colspan='3'>";
|
||||
echo "<input type='hidden' name='config_class' value='".__CLASS__."'>";
|
||||
echo "<input type='hidden' name='config_context' value='plugin:Example'>";
|
||||
Dropdown::showYesNo("configuration", $my_config['configuration']);
|
||||
echo "</td></tr>";
|
||||
|
||||
|
||||
echo "<tr class='tab_bg_2'>";
|
||||
echo "<td colspan='4' class='center'>";
|
||||
echo "<input type='submit' name='update' class='submit' value=\""._sx('button','Save')."\">";
|
||||
echo "</td></tr>";
|
||||
|
||||
echo "</table></div>";
|
||||
Html::closeForm();
|
||||
}
|
||||
|
||||
static function displayTabContentForItem(CommonGLPI $item, $tabnum=1, $withtemplate=0) {
|
||||
|
||||
if ($item->getType() == 'Config') {
|
||||
$config = new self();
|
||||
$config->showFormExample();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
@ -42,6 +42,9 @@ function plugin_init_example() {
|
||||
// array('classname' => 'PluginExampleExample',
|
||||
// ));
|
||||
|
||||
Plugin::registerClass('PluginExampleConfig', array('addtabon' => 'Config'));
|
||||
Plugin::registerClass('PluginExampleRight', array('addtabon' => 'Profile'));
|
||||
|
||||
// Params : plugin name - string type - ID - Array of attributes
|
||||
Plugin::registerClass('PluginExampleDropdown');
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user