diff --git a/front/config.form.php b/front/config.form.php new file mode 100644 index 0000000..1400fbc --- /dev/null +++ b/front/config.form.php @@ -0,0 +1,22 @@ +update($_POST); + Html::back(); +} else { + $config->showConfigForm(); +} + +Html::footer(); \ No newline at end of file diff --git a/icon.png b/icon.png new file mode 100644 index 0000000..750d159 --- /dev/null +++ b/icon.png @@ -0,0 +1 @@ +iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAF+2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDIgNzkuMTYwOTI0LCAyMDE3LzA3LzEzLTAxOjA2OjM5ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyNS0wNC0xNVQxNDoyNToxMCswMjowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjUtMDQtMTVUMTQ6Mjc6MTArMDI6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjUtMDQtMTVUMTQ6Mjc6MTArMDI6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6M2E3ZDAwYWItMjBlYy00MzQ1LWE0MTMtMzUwYTZkODYxMzNhIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjNhN2QwMGFiLTIwZWMtNDM0NS1hNDEzLTM1MGE2ZDg2MTMzYSIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjNhN2QwMGFiLTIwZWMtNDM0NS1hNDEzLTM1MGE2ZDg2MTMzYSI+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6M2E3ZDAwYWItMjBlYy00MzQ1LWE0MTMtMzUwYTZkODYxMzNhIiBzdEV2dDp3aGVuPSIyMDI1LTA0LTE1VDE0OjI1OjEwKzAyOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PmTPQZAAAAnwSURBVHic7d1RbFTlHcDx/3/e3buF7aXQ3d1WlyKVRVCiJjUx8cUEoyY+mOiDD8ZEX40Pxpc1USM+Gh98McZETIwaozFRY6IxxoSoUWNUFNnS2GVZlm2lsLB32e7t7cw5fuE0QCm7d3bvnDMz3++TkG1h98yh8/vO/d85cwxLS0uIiJ9C1wOIiDsSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGMSgIjHJAARj0kAIh6TAEQ8JgGIeEwCEPGYBCDiMQlAxGP/ATX9M0lmrTG/AAAAAElFTkSuQmCC \ No newline at end of file diff --git a/inc/config.class.php b/inc/config.class.php new file mode 100644 index 0000000..4bddb13 --- /dev/null +++ b/inc/config.class.php @@ -0,0 +1,98 @@ +"; + echo "
"; + echo ""; + + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + + echo "
".__('SOC Case Management Configuration', 'soc')."
".__('Auto-close cases after (days)', 'soc').""; + Dropdown::showNumber('autoclose_delay', ['value' => $config['autoclose_delay'], + 'min' => 0, + 'max' => 999, + 'toadd' => [0 => __('Never')]]); + echo "".__('Default severity for new cases', 'soc').""; + Dropdown::showFromArray('default_severity', PluginSocCase::getSeverityOptions(), + ['value' => $config['default_severity']]); + echo "
"; + echo ""; + echo "
"; + echo "
"; + Html::closeForm(); + } + + /** + * Get plugin config + * + * @return array + */ + static function getConfig() { + $config = Config::getConfigurationValues('plugin:soc'); + + $default_config = [ + 'autoclose_delay' => 0, + 'default_severity' => PluginSocCase::SEVERITY_MEDIUM + ]; + + // Set default values if not set + foreach ($default_config as $key => $value) { + if (!isset($config[$key])) { + $config[$key] = $value; + } + } + + return $config; + } + + /** + * Hook to install initial configuration + */ + static function install() { + $default_config = [ + 'autoclose_delay' => 0, + 'default_severity' => PluginSocCase::SEVERITY_MEDIUM + ]; + + Config::setConfigurationValues('plugin:soc', $default_config); + + return true; + } + + /** + * Hook to uninstall configuration + */ + static function uninstall() { + Config::deleteConfigurationValues('plugin:soc', ['autoclose_delay', 'default_severity']); + + return true; + } +} \ No newline at end of file diff --git a/plugin.xml b/plugin.xml new file mode 100644 index 0000000..02c0d00 --- /dev/null +++ b/plugin.xml @@ -0,0 +1,62 @@ + + + SOC Case Management + soc + beta + https://raw.githubusercontent.com/tips-of-mine/GLPI-Plugin-SOC-Case-Management/master/docs/images/logo.png + + + SOC-Case-Management GLPI-Plugin. + SOC Case Management GLPI plugin. + Plugin GLPI SOC Case Management. + Plug-in GLPI "SOC Case Management". + Plugin SOC Case Management. + Plugin GLPI de SOC Case Management. + Plugin GLPI de SOC Case Management. + + + SOC-Case-Management-Integrations-GLPI-Plugin für Sicherheitsteams. + SOC Case Management integration plugin for security teams. + Plugin d'intégration de gestion de cas SOC pour les équipes de sécurité. + Plugin di integrazione per la gestione dei casi SOC per team di sicurezza. + Wtyczka integracji zarządzania przypadkami SOC dla zespołów bezpieczeństwa. + Plugin de integración de gestión de casos SOC para equipos de seguridad. + Plugin de integração de gestão de casos SOC para equipas de segurança. + + + https://github.com/tips-of-mine/GLPI-Plugin-SOC-Case-Management/ + https://github.com/tips-of-mine/GLPI-Plugin-SOC-Case-Management/releases + https://github.com/tips-of-mine/GLPI-Plugin-SOC-Case-Management/issues + https://github.com/tips-of-mine/GLPI-Plugin-SOC-Case-Management/blob/master/README.md + + Tips-Of-Mine + + + + 1.0.0 + ~10.0 + + + + de_DE + en_GB + fr_FR + it_IT + pl_PL + es_ES + pt_PT + + GPL V3+ + + + Security + SOC + Case Management + + + Sécurité + SOC + Gestion de cas + + + \ No newline at end of file