This commit is contained in:
Matthias 2021-09-18 04:32:31 +02:00
parent 0b0c4cf337
commit 1c781d9bf0
No known key found for this signature in database
GPG Key ID: F50EF5741D33E076
3 changed files with 10 additions and 10 deletions

View File

@ -661,6 +661,6 @@ INTEGRATION_PLUGIN_LIST = {}
for plugin in INTEGRATION_PLUGINS:
plugin = plugin()
INTEGRATION_PLUGIN_LIST[plugin.plugin_name()] = plugin
if plugin.module_enabled('settings'):
if plugin.mixin_enabled('settings'):
INTEGRATION_PLUGIN_SETTING[plugin.plugin_name()] = plugin.settingspatterns
INTEGRATION_PLUGIN_SETTINGS.update(plugin.settingspatterns)

View File

@ -133,7 +133,7 @@ interation_urls = []
for plugin in integration_plugins:
# initialize
plugin = plugin()
if plugin.module_enabled('urls'):
if plugin.mixin_enabled('urls'):
interation_urls.append(plugin.urlpatterns)
urlpatterns = [

View File

@ -86,15 +86,15 @@ class IntegrationPlugin(plugin.InvenTreePlugin):
super().__init__()
def add_mixin(self, key: str, fnc_enabled=True):
if not hasattr(self, 'mixins'):
self.mixins = {}
self.mixins[key] = fnc_enabled
if not hasattr(self, '_mixins'):
self._mixins = {}
self._mixins[key] = fnc_enabled
def module(self, key):
return key in self.mixins
def mixin(self, key):
return key in self._mixins
def module_enabled(self, key):
if self.module(key):
fnc_name = self.mixins.get(key)
def mixin_enabled(self, key):
if self.mixin(key):
fnc_name = self._mixins.get(key)
return getattr(self, fnc_name, True)
return False