示例#1
0
def remove_plugins(plugin_table_ids):
    """
    Removes/Uninstalls a list of plugins

    :param plugin_table_ids:
    :return:
    """
    plugins_handler = PluginsHandler()
    return plugins_handler.uninstall_plugins_by_db_table_id(plugin_table_ids)
示例#2
0
    def remove_plugin():
        # Fetch list of installed plugins
        plugins = PluginsHandler()
        order = [{
            "column": 'name',
            "dir": 'asc',
        }]
        plugin_results = plugins.get_plugin_list_filtered_and_sorted(
            order=order, start=0, length=None)

        # Build choice selection list from installed plugins
        table_ids = {}
        choices = []
        for plugin in plugin_results:
            choices.append(plugin.get('plugin_id'))
            table_ids[plugin.get('plugin_id')] = plugin.get('id')
        # Append a "return" option
        choices.append('Return')

        # Generate menu menu
        remove_plugin_inquirer = inquirer.List(
            'cli_action',
            message="Which Plugin would you like to remove?",
            choices=choices,
        )

        # Prompt for selection of Plugin by ID
        selection = inquirer.prompt([remove_plugin_inquirer])

        # If the 'Return' option was given, just return to previous menu
        if selection.get('cli_action') == "Return":
            return

        # Remove the selected Plugin by ID
        plugin_table_id = table_ids[selection.get('cli_action')]
        plugins.uninstall_plugins_by_db_table_id([plugin_table_id])
        print()
示例#3
0
    def manage_installed_plugins_list(self, *args, **kwargs):
        request_dict = json.loads(self.request.body)

        plugins = PluginsHandler()

        # Uninstall selected plugins
        if request_dict.get("customActionName") == "remove-selected-plugins":
            if not plugins.uninstall_plugins_by_db_table_id(
                    request_dict.get("id")):
                self.write(json.dumps({"success": False}))
                return

        # Update selected plugins
        if request_dict.get("customActionName") == "update-selected-plugins":
            if not plugins.update_plugins_by_db_table_id(
                    request_dict.get("id")):
                self.write(json.dumps({"success": False}))
                return

        # Enable selected plugins
        if request_dict.get("customActionName") == "enable-selected-plugins":
            if not plugins.enable_plugin_by_db_table_id(
                    request_dict.get("id")):
                self.write(json.dumps({"success": False}))
                return

        # Disable selected plugins
        if request_dict.get("customActionName") == "disable-selected-plugins":
            if not plugins.disable_plugin_by_db_table_id(
                    request_dict.get("id")):
                self.write(json.dumps({"success": False}))
                return

        # Return a list of plugins based on the request JSON body
        results = self.prepare_filtered_plugins(request_dict)
        self.write(json.dumps(results))