Source code for shuup.campaigns.admin_module.utils

from shuup.admin.utils.permissions import get_missing_permissions
from shuup.apps.provides import get_provide_objects


[docs] def get_formparts_for_provide_key(user, provide_key): provide_objects = list(get_provide_objects(provide_key)) missing_permissions = get_missing_permissions(user, [form.__name__ for form in provide_objects]) return [provide_object for provide_object in provide_objects if provide_object.__name__ not in missing_permissions]
[docs] def get_extra_permissions_for_admin_module(): # Warning! Only basket campaigns related provides are here since # catalog campaigns are deprecated provide_keys = [ "campaign_basket_condition", "campaign_basket_discount_effect_form", "campaign_basket_line_effect_form", ] permissions = set() for provide_key in provide_keys: for provide_object in get_provide_objects(provide_key): permissions.add(provide_object.__name__) return permissions