Skip to content
Snippets Groups Projects
preferences.py 3.12 KiB
Newer Older
from django.utils.translation import gettext_lazy as _

from dynamic_preferences.preferences import Section
from dynamic_preferences.types import BooleanPreference, StringPreference

from aleksis.core.registries import site_preferences_registry

payments = Section("payments", verbose_name=_("Payments"))


@site_preferences_registry.register
class EnablePledge(BooleanPreference):
    """Allow payments to be made by anyone, not only invoice recipient."""

    section = payments
    name = "public_payments"
    verbose_name = _("Public payments")
Nik | Klampfradler's avatar
Nik | Klampfradler committed
    help_text = _(
        "Allow anyone (including guests) to make payments. Basic invoice information will be visible to anyone who knows the invoice token."
    )
    default = True
    required = False


@site_preferences_registry.register
class SofortAPIID(StringPreference):
    """Sofort payment backend - API ID."""

    section = payments
    name = "sofort_api_id"
    verbose_name = _("Sofort / Klarna - API ID")
    default = ""
    required = False


@site_preferences_registry.register
class SofortAPIKey(StringPreference):
    """Sofort payment backend - API key."""

    section = payments
    name = "sofort_api_key"
    verbose_name = _("Sofort / Klarna - API Key")
    default = ""
    required = False


@site_preferences_registry.register
class SofortProjectID(StringPreference):
    """Sofort payment backend - project ID."""

    section = payments
    name = "sofort_project_id"
    verbose_name = _("Sofort / Klarna - Project ID")
    default = ""
    required = False


@site_preferences_registry.register
class PaypalClientID(StringPreference):
    """PayPal payment backend - client ID."""

    section = payments
    name = "paypal_client_id"
    verbose_name = _("PayPal - Client ID")
    default = ""
    required = False


@site_preferences_registry.register
class PaypalSecret(StringPreference):
    """PayPal payment backend - secret."""

    section = payments
    name = "paypal_secret"
    verbose_name = _("PayPal - Secret")
    default = ""
    required = False


@site_preferences_registry.register
class PaypalCapture(BooleanPreference):
    """PayPal payment backend - use Authorize & Capture."""

    section = payments
    name = "paypal_capture"
    verbose_name = _("PayPal - Use Authorize & Capture")
    default = False
    required = False


@site_preferences_registry.register
class EnablePledge(BooleanPreference):
    """Payment pledge payment backend - enable or not."""

    section = payments
    name = "pledge_enabled"
    verbose_name = _("Enabledp ledged payments")
    default = False
    required = False


@site_preferences_registry.register
class SDDCreditor(StringPreference):
    """SEPA direct debit backend - creditor name."""

    section = payments
    name = "sdd_creditor"
    verbose_name = _("SEPA Direct Debit - Creditor name")
    default = ""
    required = False


@site_preferences_registry.register
class SDDCreditorIdentifier(StringPreference):
    """SEPA direct debit backend - creditor identifier."""

    section = payments
    name = "sdd_creditor_identifier"
    verbose_name = _("SEPA Direct Debit - Creditor identifier")
    default = ""
    required = False