shuup.admin.modules.services package

Subpackages

Submodules

shuup.admin.modules.services.base_form_part module

class shuup.admin.modules.services.base_form_part.ServiceBaseFormPart(*args, **kwargs)[source]

Bases: FormPart

priority: int = -1000
form = None
__init__(*args, **kwargs)[source]
get_form_defs()[source]
form_valid(form)[source]
class shuup.admin.modules.services.base_form_part.ShippingMethodBaseFormPart(*args, **kwargs)[source]

Bases: ServiceBaseFormPart

form

alias of ShippingMethodForm

class shuup.admin.modules.services.base_form_part.PaymentMethodBaseFormPart(*args, **kwargs)[source]

Bases: ServiceBaseFormPart

form

alias of PaymentMethodForm

shuup.admin.modules.services.behavior_form_part module

class shuup.admin.modules.services.behavior_form_part.BehaviorFormSet(*args, **kwargs)[source]

Bases: BaseModelFormSet

model

alias of ServiceBehaviorComponent

validate_min = False
min_num = 0
validate_max = False
max_num = 20
absolute_max = 20
can_delete = True
can_order = False
extra = 0
property can_delete_extra
property empty_form
__init__(*args, **kwargs)[source]
form_class = None
get_name()[source]
get_queryset()[source]
form(**kwargs)[source]
class shuup.admin.modules.services.behavior_form_part.BehaviorComponentFormPart(request, form, name, owner)[source]

Bases: FormPart

formset

alias of BehaviorFormSet

template_name = 'shuup/admin/services/_edit_behavior_components_form.jinja'
__init__(request, form, name, owner)[source]
get_form_defs()[source]
form_valid(form)[source]

shuup.admin.modules.services.forms module

shuup.admin.modules.services.forms.get_service_providers_filters(request, payment_method=None)[source]
class shuup.admin.modules.services.forms.BaseMethodForm(**kwargs)[source]

Bases: ShuupAdminForm

class Meta[source]

Bases: object

model = None
exclude = ['identifier', 'behavior_components', 'old_module_identifier', 'old_module_data', 'shop']
base_fields = ['choice_identifier', 'name', 'description', 'enabled', 'logo', 'tax_class', 'labels', 'supplier']
widgets = {'description': <shuup.admin.forms.widgets.TextEditorWidget object>, 'labels': <shuup.admin.forms.widgets.QuickAddLabelMultiSelect object>}
__init__(**kwargs)[source]
get_service_provider(id)[source]
property service_provider
base_fields = {}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class shuup.admin.modules.services.forms.AlwaysChangedModelForm(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None, renderer=None)[source]

Bases: ModelForm

ModelForm that can be saved if it is empty or has unchanged lines on creation

has_changed(*args, **kwargs)[source]

Return True if data differs from initial.

base_fields = {}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class shuup.admin.modules.services.forms.ShippingMethodForm(*args, **kwargs)[source]

Bases: BaseMethodForm

service_provider_attr = 'carrier'
class Meta[source]

Bases: Meta

model

alias of ShippingMethod

fields = ['carrier', 'choice_identifier', 'name', 'description', 'enabled', 'logo', 'tax_class', 'labels', 'supplier']
help_texts = {'carrier': 'The carrier to use for this shipping method. Select a carrier before filling other fields.'}
__init__(*args, **kwargs)[source]
base_fields = {'carrier': <django.forms.models.ModelChoiceField object>, 'choice_identifier': <django.forms.fields.CharField object>, 'description': <django.forms.fields.CharField object>, 'enabled': <django.forms.fields.BooleanField object>, 'labels': <django.forms.models.ModelMultipleChoiceField object>, 'logo': <filer.fields.image.AdminImageFormField object>, 'name': <django.forms.fields.CharField object>, 'supplier': <django.forms.models.ModelChoiceField object>, 'tax_class': <django.forms.models.ModelChoiceField object>}
declared_fields = {'description': <django.forms.fields.CharField object>, 'name': <django.forms.fields.CharField object>}
property media

Return all media required to render the widgets on this form.

class shuup.admin.modules.services.forms.PaymentMethodForm(*args, **kwargs)[source]

Bases: BaseMethodForm

service_provider_attr = 'payment_processor'
class Meta[source]

Bases: Meta

model

alias of PaymentMethod

fields = ['payment_processor', 'choice_identifier', 'name', 'description', 'enabled', 'logo', 'tax_class', 'labels', 'supplier']
help_texts = {'payment_processor': 'The payment processor to use for this payment method. Select a payment processor before filling out the other fields.'}
__init__(*args, **kwargs)[source]
base_fields = {'choice_identifier': <django.forms.fields.CharField object>, 'description': <django.forms.fields.CharField object>, 'enabled': <django.forms.fields.BooleanField object>, 'labels': <django.forms.models.ModelMultipleChoiceField object>, 'logo': <filer.fields.image.AdminImageFormField object>, 'name': <django.forms.fields.CharField object>, 'payment_processor': <django.forms.models.ModelChoiceField object>, 'supplier': <django.forms.models.ModelChoiceField object>, 'tax_class': <django.forms.models.ModelChoiceField object>}
declared_fields = {'description': <django.forms.fields.CharField object>, 'name': <django.forms.fields.CharField object>}
property media

Return all media required to render the widgets on this form.

class shuup.admin.modules.services.forms.FixedCostBehaviorComponentForm(**kwargs)[source]

Bases: ShuupAdminForm

class Meta[source]

Bases: object

model

alias of FixedCostBehaviorComponent

exclude = ['identifier']
labels = {'price_value': 'Price'}
base_fields = {'description': <django.forms.fields.CharField object>, 'price_value': <shuup.core.fields.FormattedDecimalFormField object>}
declared_fields = {'description': <django.forms.fields.CharField object>}
property media

Return all media required to render the widgets on this form.

class shuup.admin.modules.services.forms.WaivingCostBehaviorComponentForm(**kwargs)[source]

Bases: ShuupAdminForm

class Meta[source]

Bases: object

model

alias of WaivingCostBehaviorComponent

exclude = ['identifier']
labels = {'price_value': 'Price', 'waive_limit_value': 'Waive limit'}
base_fields = {'description': <django.forms.fields.CharField object>, 'price_value': <shuup.core.fields.FormattedDecimalFormField object>, 'waive_limit_value': <shuup.core.fields.FormattedDecimalFormField object>}
declared_fields = {'description': <django.forms.fields.CharField object>}
property media

Return all media required to render the widgets on this form.

class shuup.admin.modules.services.forms.WeightLimitsBehaviorComponentForm(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None, renderer=None)[source]

Bases: ModelForm

class Meta[source]

Bases: object

model

alias of WeightLimitsBehaviorComponent

exclude = ['identifier']
base_fields = {'max_weight': <django.forms.fields.DecimalField object>, 'min_weight': <django.forms.fields.DecimalField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class shuup.admin.modules.services.forms.GroupAvailabilityBehaviorComponentForm(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None, renderer=None)[source]

Bases: ModelForm

class Meta[source]

Bases: object

model

alias of GroupAvailabilityBehaviorComponent

exclude = ['identifier']
base_fields = {'groups': <django.forms.models.ModelMultipleChoiceField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class shuup.admin.modules.services.forms.StaffOnlyBehaviorComponentForm(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None, renderer=None)[source]

Bases: AlwaysChangedModelForm

class Meta[source]

Bases: object

model

alias of StaffOnlyBehaviorComponent

exclude = ['identifier']
base_fields = {}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class shuup.admin.modules.services.forms.OrderTotalLimitBehaviorComponentForm(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None, renderer=None)[source]

Bases: ModelForm

class Meta[source]

Bases: object

model

alias of OrderTotalLimitBehaviorComponent

exclude = ['identifier']
base_fields = {'max_price_value': <shuup.core.fields.FormattedDecimalFormField object>, 'min_price_value': <shuup.core.fields.FormattedDecimalFormField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class shuup.admin.modules.services.forms.CountryLimitBehaviorComponentForm(**kwargs)[source]

Bases: ModelForm

class Meta[source]

Bases: object

model

alias of CountryLimitBehaviorComponent

exclude = ['identifier']
help_texts = {'available_in_countries': 'Select accepted countries for this service.', 'available_in_european_countries': 'Select this to accept all countries in EU.', 'unavailable_in_countries': 'Select restricted countries for this service.', 'unavailable_in_european_countries': 'Select this to restrict this service for countries in EU'}
base_fields = {'available_in_countries': <django.forms.fields.MultipleChoiceField object>, 'available_in_european_countries': <django.forms.fields.BooleanField object>, 'unavailable_in_countries': <django.forms.fields.MultipleChoiceField object>, 'unavailable_in_european_countries': <django.forms.fields.BooleanField object>}
declared_fields = {'available_in_countries': <django.forms.fields.MultipleChoiceField object>, 'unavailable_in_countries': <django.forms.fields.MultipleChoiceField object>}
property media

Return all media required to render the widgets on this form.

__init__(**kwargs)[source]

Module contents

class shuup.admin.modules.services.ServiceModule[source]

Bases: AdminModule

category = 'Payment and Shipping'
model = None
name = None
url_prefix = None
view_template = None
name_template = None
menu_entry_url = None
menu_ordering = 999999
url_name_prefix = None
icon = None
get_urls()[source]
Return type:

list[django.urls.RegexURLPattern]

get_menu_entries(request)[source]
Return type:

list[shuup.admin.base.MenuEntry]

get_model_url(object, kind, shop=None)[source]

Retrieve an admin URL for the given object of the kind kind.

A falsy value must be returned if the module does not know how to reverse the given object.

Parameters:
Returns:

The reversed URL or none.

Return type:

str|None

get_extra_permissions() Iterable[str][source]

Define custom extra permissions for admin module for option to limit certain parts of the admin module based on per user permission string. Should return unique list permission strings across the installation to prevent unwanted side effects.

Return type:

list[str]

get_permissions_help_texts() Iterable[str][source]

Returns a dictionary where the keys is the permission identifier and the value is a help text that can help the user to understand where the permissions is used and how it works.

class shuup.admin.modules.services.ShippingMethodModule[source]

Bases: ServiceModule

model

alias of ShippingMethod

name = 'Shipping Methods'
url_prefix = '^shipping_method'
view_template = 'shuup.admin.modules.services.views.ShippingMethod%sView'
name_template = 'shipping_method.%s'
menu_entry_url = 'shuup_admin:shipping_method.list'
menu_ordering = 4
url_name_prefix = 'shuup_admin:shipping_method'
icon = 'fa fa-truck'
breadcrumbs_menu_entry = <shuup.admin.base.MenuEntry object>
class shuup.admin.modules.services.PaymentMethodModule[source]

Bases: ServiceModule

model

alias of PaymentMethod

name = 'Payment Methods'
url_prefix = '^payment_method'
view_template = 'shuup.admin.modules.services.views.PaymentMethod%sView'
name_template = 'payment_method.%s'
menu_entry_url = 'shuup_admin:payment_method.list'
menu_ordering = 5
url_name_prefix = 'shuup_admin:payment_method'
icon = 'fa fa-money'
breadcrumbs_menu_entry = <shuup.admin.base.MenuEntry object>