Source code for shoop.campaigns.apps

# -*- coding: utf-8 -*-
# This file is part of Shoop.
#
# Copyright (c) 2012-2016, Shoop Ltd. All rights reserved.
#
# This source code is licensed under the AGPLv3 license found in the
# LICENSE file in the root directory of this source tree.

from django.db.models.signals import post_save

from shoop.apps import AppConfig
from shoop.campaigns.signal_handlers import update_customers_groups
from shoop.core.models import Payment


[docs]class CampaignAppConfig(AppConfig): name = "shoop.campaigns" verbose_name = "Shoop Campaigns" label = "campaigns" provides = { "admin_contact_group_form_part": [ "shoop.campaigns.admin_module.form_parts:SalesRangesFormPart" ], "discount_module": [ "shoop.campaigns.modules:CatalogCampaignModule" ], "order_source_modifier_module": [ "shoop.campaigns.modules:BasketCampaignModule" ], "admin_module": [ "shoop.campaigns.admin_module:CampaignAdminModule", ], "campaign_basket_condition": [ "shoop.campaigns.admin_module.forms:BasketTotalProductAmountConditionForm", "shoop.campaigns.admin_module.forms:BasketTotalAmountConditionForm", "shoop.campaigns.admin_module.forms:BasketMaxTotalProductAmountConditionForm", "shoop.campaigns.admin_module.forms:BasketMaxTotalAmountConditionForm", "shoop.campaigns.admin_module.forms:ProductsInBasketConditionForm", "shoop.campaigns.admin_module.forms:ContactGroupBasketConditionForm", "shoop.campaigns.admin_module.forms:ContactBasketConditionForm", ], "campaign_basket_discount_effect_form": [ "shoop.campaigns.admin_module.forms:BasketDiscountAmountForm", "shoop.campaigns.admin_module.forms:BasketDiscountPercentageForm" ], "campaign_basket_line_effect_form": [ "shoop.campaigns.admin_module.forms:FreeProductLineForm", "shoop.campaigns.admin_module.forms:DiscountFromProductForm", ], "campaign_context_condition": [ "shoop.campaigns.admin_module.forms:ContactGroupConditionForm", "shoop.campaigns.admin_module.forms:ContactConditionForm", ], "campaign_catalog_filter": [ "shoop.campaigns.admin_module.forms:ProductTypeFilterForm", "shoop.campaigns.admin_module.forms:ProductFilterForm", "shoop.campaigns.admin_module.forms:CategoryFilterForm" ], "campaign_product_discount_effect_form": [ "shoop.campaigns.admin_module.forms:ProductDiscountAmountForm", "shoop.campaigns.admin_module.forms:ProductDiscountPercentageForm", ], }
[docs] def ready(self): post_save.connect( update_customers_groups, sender=Payment, dispatch_uid="contact_group_sales:update_customers_groups")