def add_plugin(pas, plugin_id=PAS_ID): """ Install and activate bda.plone.shop user properties PAS plugin """ # Skip if already installed (activation is assumed). installed = pas.objectIds() if plugin_id in installed: return PAS_TITLE + " already installed." # Install the plugin plugin = UserPropertiesPASPlugin(plugin_id, title=PAS_TITLE) pas._setObject(plugin_id, plugin) # get plugin acquisition wrapped plugin = pas[plugin.getId()] # Activate the Plugin pas.plugins.activatePlugin(IPropertiesPlugin, plugin.getId()) return PAS_TITLE + " installed."
def remove_plugin(pas, plugin_id=PAS_ID): """ Deactivate and uninstall bda.plone.shop user properties PAS plugin """ # Skip if already uninstalled (deactivation is assumed). installed = pas.objectIds() if plugin_id not in installed: return PAS_TITLE + " not installed." plugin = UserPropertiesPASPlugin(plugin_id, title=PAS_TITLE) # get plugin acquisition wrapped plugin = pas[plugin.getId()] # Deactivate the plugin pas.plugins.deactivatePlugin(IPropertiesPlugin, plugin.getId()) # And finaly uninstall it pas._delObject(plugin_id, plugin) return PAS_TITLE + " uninstalled."