def get_available_elements(workflow): plugins = plugin_installed_apps.load_plugin_apps(settings.BASE_DIR) our_elements = list() elements = models.BASE_ELEMENTS for element in elements: our_elements.append(element) for plugin in plugins: try: module_name = "{0}.plugin_settings".format(plugin) plugin_settings = import_module(module_name) if hasattr(plugin_settings, 'IS_WORKFLOW_PLUGIN') and hasattr( plugin_settings, 'HANDSHAKE_URL'): if plugin_settings.IS_WORKFLOW_PLUGIN: our_elements.append({ 'name': plugin_settings.PLUGIN_NAME, 'handshake_url': plugin_settings.HANDSHAKE_URL, 'stage': plugin_settings.STAGE, 'article_url': plugin_settings.ARTICLE_PK_IN_HANDSHAKE_URL, 'jump_url': plugin_settings.JUMP_URL if hasattr( plugin_settings, 'JUMP_URL') else '', }) except ImportError as e: logger.error(e) return clear_active_elements(our_elements, workflow, plugins)
def get_available_elements(workflow): plugins = plugin_installed_apps.load_plugin_apps() our_elements = list() elements = models.BASE_ELEMENTS for element in elements: our_elements.append(element) for plugin in plugins: module_name = "{0}.plugin_settings".format(plugin) plugin_settings = import_module(module_name) if hasattr(plugin_settings, 'IS_WORKFLOW_PLUGIN') and hasattr( plugin_settings, 'HANDSHAKE_URL'): if plugin_settings.IS_WORKFLOW_PLUGIN: our_elements.append({ 'name': plugin_settings.PLUGIN_NAME, 'handshake_url': plugin_settings.HANDSHAKE_URL, 'stage': plugin_settings.STAGE }) return clear_active_elements(our_elements, workflow, plugins)
'security', 'submission', 'transform', 'utils', # 3rd Party 'django_summernote', 'dynamicsites', 'markdown_deux', 'foundationform', 'hvad', 'raven.contrib.django.raven_compat', 'bootstrap4', ] INSTALLED_APPS += plugin_installed_apps.load_plugin_apps() INSTALLED_APPS += plugin_installed_apps.load_homepage_element_apps() MIDDLEWARE_CLASSES = ( 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.security.SecurityMiddleware', 'core.middleware.SiteSettingsMiddleware', 'utils.template_override_middleware.ThemeEngineMiddleware', 'core.middleware.MaintenanceModeMiddleware', 'cron.middleware.CronMiddleware',