diff --git a/InvenTree/plugin/builtin/integration/mixins.py b/InvenTree/plugin/builtin/integration/mixins.py index bb1d5f8ee6..7306a30a3c 100644 --- a/InvenTree/plugin/builtin/integration/mixins.py +++ b/InvenTree/plugin/builtin/integration/mixins.py @@ -202,7 +202,7 @@ class ScheduleMixin: Schedule.objects.create( name=task_name, - func='plugin.registry.registry.call_plugin_function', + func='plugin.registry.call_function', args=f"'{slug}', '{func_name}'", schedule_type=task['schedule'], minutes=task.get('minutes', None), diff --git a/InvenTree/plugin/registry.py b/InvenTree/plugin/registry.py index b08f643412..09389aae73 100644 --- a/InvenTree/plugin/registry.py +++ b/InvenTree/plugin/registry.py @@ -73,7 +73,7 @@ class PluginsRegistry: plugin_func = getattr(plugin, func) - plugin_func(*args, **kwargs) + return plugin_func(*args, **kwargs) # region public functions # region loading / unloading @@ -573,3 +573,7 @@ class PluginsRegistry: registry = PluginsRegistry() + +def call_function(plugin_name, function_name): + """ Global helper function to call a specific member function of a plugin """ + return registry.call_plugin_function(plugin_name, function_name)