Skip to content

Commit

Permalink
fix(entityconfig): default values and constant values of KB separation
Browse files Browse the repository at this point in the history
  • Loading branch information
AdrienClairembault authored Jul 28, 2021
1 parent 526b9aa commit 31ccd9b
Show file tree
Hide file tree
Showing 5 changed files with 91 additions and 20 deletions.
23 changes: 9 additions & 14 deletions inc/entityconfig.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@ class PluginFormcreatorEntityconfig extends CommonDBTM {
const CONFIG_SORT_POPULARITY = 0;
const CONFIG_SORT_ALPHABETICAL = 1;

const CONFIG_KB_MERGED = 1;
const CONFIG_KB_DISTINCT = 2;
const CONFIG_KB_MERGED = 0;
const CONFIG_KB_DISTINCT = 1;

const CONFIG_SEARCH_HIDDEN = 0;
const CONFIG_SEARCH_VISIBLE = 1;
Expand Down Expand Up @@ -143,11 +143,12 @@ public function showFormForEntity(Entity $entity) {

if (!$this->getFromDB($ID)) {
$this->add([
'id' => $ID,
'replace_helpdesk' => self::CONFIG_PARENT,
'is_kb_separated' => self::CONFIG_PARENT,
'is_search_visible' => self::CONFIG_PARENT,
'is_header_visible' => self::CONFIG_PARENT,
'id' => $ID,
'replace_helpdesk' => self::CONFIG_PARENT,
'is_kb_separated' => self::CONFIG_PARENT,
'is_search_visible' => self::CONFIG_PARENT,
'is_header_visible' => self::CONFIG_PARENT,
'sort_order' => self::CONFIG_PARENT,
]);
}

Expand Down Expand Up @@ -378,13 +379,7 @@ static function getUsedConfig($fieldref, $entities_id, $fieldval = '', $default_

}
}
/*
switch ($fieldval) {
case "tickettype" :
// Default is Incident if not set
return Ticket::INCIDENT_TYPE;
}
*/

return $default_value;
}
}
1 change: 1 addition & 0 deletions install/install.php
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ class PluginFormcreatorInstall {
'2.10.2' => '2.11',
'2.11' => '2.11.3',
'2.11.3' => '2.12',
'2.12' => '2.12.1',
];

/**
Expand Down
10 changes: 5 additions & 5 deletions install/mysql/plugin_formcreator_empty.sql
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@ CREATE TABLE IF NOT EXISTS `glpi_plugin_formcreator_categories` (

CREATE TABLE IF NOT EXISTS `glpi_plugin_formcreator_entityconfigs` (
`id` int(11) NOT NULL,
`replace_helpdesk` int(11) NOT NULL DEFAULT '0',
`sort_order` int(11) NOT NULL DEFAULT '0',
`is_kb_separated` int(11) NOT NULL DEFAULT '0',
`is_search_visible` int(11) NOT NULL DEFAULT '0',
`is_header_visible` int(11) NOT NULL DEFAULT '0',
`replace_helpdesk` int(11) NOT NULL DEFAULT '-2',
`sort_order` int(11) NOT NULL DEFAULT '-2',
`is_kb_separated` int(11) NOT NULL DEFAULT '-2',
`is_search_visible` int(11) NOT NULL DEFAULT '-2',
`is_header_visible` int(11) NOT NULL DEFAULT '-2',
`header` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Expand Down
75 changes: 75 additions & 0 deletions install/upgrade_to_2.12.1.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
<?php
/**
* ---------------------------------------------------------------------
* Formcreator is a plugin which allows creation of custom forms of
* easy access.
* ---------------------------------------------------------------------
* LICENSE
*
* This file is part of Formcreator.
*
* Formcreator 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.
*
* Formcreator 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 Formcreator. If not, see <http://www.gnu.org/licenses/>.
* ---------------------------------------------------------------------
* @copyright Copyright © 2011 - 2021 Teclib'
* @license http://www.gnu.org/licenses/gpl.txt GPLv3+
* @link https://github.com/pluginsGLPI/formcreator/
* @link https://pluginsglpi.github.io/formcreator/
* @link http://plugins.glpi-project.org/#/plugin/formcreator
* ---------------------------------------------------------------------
*/
class PluginFormcreatorUpgradeTo2_12_1 {
/** @var Migration */
protected $migration;

/**
* @param Migration $migration
*/
public function upgrade(Migration $migration) {
global $DB;

$this->migration = $migration;

$table = 'glpi_plugin_formcreator_entityconfigs';

// Change default value in DB
$this->migration->changeField($table, 'replace_helpdesk', 'replace_helpdesk', 'integer', ['value' => '-2']);
$this->migration->changeField($table, 'sort_order', 'sort_order', 'integer', ['value' => '-2']);
$this->migration->changeField($table, 'is_kb_separated', 'is_kb_separated', 'integer', ['value' => '-2']);
$this->migration->changeField($table, 'is_search_visible', 'is_search_visible', 'integer', ['value' => '-2']);
$this->migration->changeField($table, 'is_header_visible', 'is_header_visible', 'integer', ['value' => '-2']);

// Change all 0 to -2 (aka inherit from parent)
$DB->update(
$table,
[
'is_kb_separated' => -2,
],
[
'is_kb_separated' => 0,
'id' => ['<>', 0],
]
);

// Decrement values from 1 to 0 and from 2 to 1
$DB->update(
$table,
[
'is_kb_separated' => new QueryExpression('`is_kb_separated` - 1'),
],
[
'is_kb_separated' => ['>', 0],
]
);
}
}
2 changes: 1 addition & 1 deletion setup.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@

global $CFG_GLPI;
// Version of the plugin (major.minor.bugfix)
define('PLUGIN_FORMCREATOR_VERSION', '2.12.0');
define('PLUGIN_FORMCREATOR_VERSION', '2.12.1');
// Schema version of this version (major.minor only)
define('PLUGIN_FORMCREATOR_SCHEMA_VERSION', '2.12');
// is or is not an official release of the plugin
Expand Down

0 comments on commit 31ccd9b

Please sign in to comment.