2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-06-18 21:15:41 +00:00

Plugin settings refactor (#4185)

* make plugin urls def cleaner

* rename plugin managment endpoints

* Add setting to plugin edpoint

* docstring

* [FR] Add API endpoint to activate plugins
Fixes #4182

* fix API syntax

* Fix plugin detail lookup for deactivated plugins

* fix API metadata lookup

* fix for api url change

* use slug as error reference

* fix get action

* add tests for activating plugins

* Add tests for check_plugin
This commit is contained in:
Matthias Mair
2023-01-27 06:45:14 +01:00
committed by GitHub
parent 83eaa6ef79
commit 1fce1fa695
4 changed files with 103 additions and 21 deletions

View File

@ -123,13 +123,15 @@ class PluginConfig(models.Model):
super().__init__(*args, **kwargs)
self.__org_active = self.active
# append settings from registry
# Append settings from registry
plugin = registry.plugins_full.get(self.key, None)
def get_plugin_meta(name):
if plugin:
return str(getattr(plugin, name, None))
return None
if not plugin:
return None
if not self.active:
return _('Unvailable')
return str(getattr(plugin, name, None))
self.meta = {
key: get_plugin_meta(key) for key in ['slug', 'human_name', 'description', 'author',