diff --git a/CHANGELOG.md b/CHANGELOG.md index edba176..501fb2e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,13 @@ Todas as mudanças relevantes deste plugin são documentadas aqui. O formato segue [Keep a Changelog](https://keepachangelog.com/pt-BR/1.0.0/) e o versionamento segue [SemVer](https://semver.org/lang/pt-BR/). +## [1.5.0] + +### Adicionado +- **Kill switch de licença Mindtek / Mind Place** (requisito do marketplace): o plugin + só ativa e registra seus hooks se a licença for válida (`\GlpiPlugin\Mindplace\License::isValid()`). + Sem Mind Place ou com licença inválida, o plugin é desativado por segurança, sem erros. + ## [1.4.0] ### Adicionado diff --git a/README.md b/README.md index a51f45f..e32b6a6 100644 --- a/README.md +++ b/README.md @@ -99,6 +99,13 @@ Contrato de API completo (o que sai do GLPI, como entra no Redmine — endpoints - Categorias do Redmine são **por projeto**: a categoria padrão é definida no vínculo de cada projeto/entidade. - O vínculo por **Entidade** é **1:1 e por correspondência exata** — não há herança pela árvore de entidades. O chamado precisa nascer na própria entidade vinculada. +## Licenciamento + +Este é um plugin proprietário distribuído pelo **Mind Place** (marketplace da Mindtek). +Ele exige o plugin **Mind Place** instalado e uma **licença válida**: sem isso, o plugin +não ativa (kill switch). A licença é um serial fornecido pela Mindtek e ativado na aba +**Configurar → Plugins → Mind Place**. + ## Suporte Mindtek — integração GLPI/Redmine. diff --git a/setup.php b/setup.php index aad4e35..2bf207d 100644 --- a/setup.php +++ b/setup.php @@ -1,6 +1,25 @@ ['Config'] @@ -78,8 +105,15 @@ function plugin_redmine_check_prerequisites() { * @return boolean */ function plugin_redmine_check_config($verbose = false) { - if ($verbose) { - echo "Installed / not configured"; + plugin_redmine_load_license(); + + if (!class_exists('\GlpiPlugin\Mindplace\License') || !\GlpiPlugin\Mindplace\License::isValid()) { + if ($verbose && !isCommandLine()) { + echo "