Features: 1) Replace dictionary in CONSTANCE_CONFIG with a list for better structure; 2) Switch to gettext_noop for CONSTANCE_CONFIG_FIELDSETS keys instead of _;

Fixes: 1) Remove commented-out Redis backend reference in `CONSTANCE_BACKEND` declaration;

Extra: Simplify and improve readability of code with updated formatting and minor comment adjustments.
This commit is contained in:
Egor Pavlovich Gorbunov 2025-07-16 19:33:15 +03:00
parent 1ec8acdf4f
commit 9ec78c3360

View file

@ -1,11 +1,10 @@
from collections import OrderedDict from collections import OrderedDict
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _, gettext_noop
from evibes.settings.base import getenv from evibes.settings.base import getenv
CONSTANCE_BACKEND = "constance.backends.database.DatabaseBackend" # Or "constance.backends.redis.RedisBackend" CONSTANCE_BACKEND = "constance.backends.database.DatabaseBackend"
CONSTANCE_SUPERUSER_ONLY = False CONSTANCE_SUPERUSER_ONLY = False
CONSTANCE_ADDITIONAL_FIELDS = { CONSTANCE_ADDITIONAL_FIELDS = {
@ -19,48 +18,40 @@ CONSTANCE_ADDITIONAL_FIELDS = {
} }
CONSTANCE_CONFIG = OrderedDict( CONSTANCE_CONFIG = OrderedDict(
{ [
"PROJECT_NAME": (getenv("EVIBES_PROJECT_NAME"), _("Name of the project")), ("PROJECT_NAME", (getenv("EVIBES_PROJECT_NAME"), _("Name of the project"))),
"FRONTEND_DOMAIN": (getenv("EVIBES_FRONTEND_DOMAIN"), _("Frontend domain name")), ("FRONTEND_DOMAIN", (getenv("EVIBES_FRONTEND_DOMAIN"), _("Frontend domain name"))),
"BASE_DOMAIN": (getenv("EVIBES_BASE_DOMAIN"), _("Base domain name")), ("BASE_DOMAIN", (getenv("EVIBES_BASE_DOMAIN"), _("Base domain name"))),
"COMPANY_NAME": (getenv("COMPANY_NAME"), _("Name of the company")), ("COMPANY_NAME", (getenv("COMPANY_NAME"), _("Name of the company"))),
"COMPANY_ADDRESS": (getenv("COMPANY_ADDRESS"), _("Address of the company")), ("COMPANY_ADDRESS", (getenv("COMPANY_ADDRESS"), _("Address of the company"))),
"COMPANY_PHONE_NUMBER": (getenv("COMPANY_PHONE_NUMBER"), _("Phone number of the company")), ("COMPANY_PHONE_NUMBER", (getenv("COMPANY_PHONE_NUMBER"), _("Phone number of the company"))),
"EMAIL_HOST": (getenv("EMAIL_HOST", "smtp.404.org"), _("SMTP host")), ("EMAIL_HOST", (getenv("EMAIL_HOST", "smtp.404.org"), _("SMTP host"))),
"EMAIL_PORT": (int(getenv("EMAIL_PORT", "465")), _("SMTP port")), ("EMAIL_PORT", (int(getenv("EMAIL_PORT", "465")), _("SMTP port"))),
"EMAIL_USE_TLS": (bool(int(getenv("EMAIL_USE_TLS", 0))), _("Use TLS (Specify 0 for No and 1 for Yes)")), ("EMAIL_USE_TLS", (bool(int(getenv("EMAIL_USE_TLS", 0))), _("Use TLS (0=No, 1=Yes)"))),
"EMAIL_USE_SSL": (bool(int(getenv("EMAIL_USE_SSL", 1))), _("Use SSL (Specify 0 for No and 1 for Yes)")), ("EMAIL_USE_SSL", (bool(int(getenv("EMAIL_USE_SSL", 1))), _("Use SSL (0=No, 1=Yes)"))),
"EMAIL_HOST_USER": (getenv("EMAIL_HOST_USER", "no-user@fix.this"), _("SMTP username")), ("EMAIL_HOST_USER", (getenv("EMAIL_HOST_USER", "no-user@fix.this"), _("SMTP username"))),
"EMAIL_HOST_PASSWORD": (getenv("EMAIL_HOST_PASSWORD", "SUPERsecretPASSWORD"), _("SMTP password")), ("EMAIL_HOST_PASSWORD", (getenv("EMAIL_HOST_PASSWORD", "SUPERsecretPASSWORD"), _("SMTP password"))),
"EMAIL_FROM": (getenv("EMAIL_FROM", "eVibes"), _("Mail from option")), ("EMAIL_FROM", (getenv("EMAIL_FROM", "eVibes"), _("Mail from option"))),
"PAYMENT_GATEWAY_URL": (getenv("PAYMENT_GATEWAY_URL", "http://404.org"), _("Payment gateway URL")), ("PAYMENT_GATEWAY_URL", (getenv("PAYMENT_GATEWAY_URL", "http://404.org"), _("Payment gateway URL"))),
"PAYMENT_GATEWAY_TOKEN": (getenv("PAYMENT_GATEWAY_TOKEN", "example token"), _("Payment gateway token")), ("PAYMENT_GATEWAY_TOKEN", (getenv("PAYMENT_GATEWAY_TOKEN", "example token"), _("Payment gateway token"))),
"PAYMENT_GATEWAY_MINIMUM": (getenv("PAYMENT_GATEWAY_MINIMUM", 5.0), _("Payment gateway minimum amount")), ("PAYMENT_GATEWAY_MINIMUM", (getenv("PAYMENT_GATEWAY_MINIMUM", 5.0), _("Payment gateway minimum amount"))),
"PAYMENT_GATEWAY_MAXIMUM": (getenv("PAYMENT_GATEWAY_MAXIMUM", 500.0), _("Payment gateway maximum amount")), ("PAYMENT_GATEWAY_MAXIMUM", (getenv("PAYMENT_GATEWAY_MAXIMUM", 500.0), _("Payment gateway maximum amount"))),
"EXCHANGE_RATE_API_KEY": (getenv("EXCHANGE_RATE_API_KEY", "example token"), _("Exchange rate API key")), ("EXCHANGE_RATE_API_KEY", (getenv("EXCHANGE_RATE_API_KEY", "example token"), _("Exchange rate API key"))),
"NOMINATIM_URL": (getenv("NOMINATIM_URL", ""), _("OpenStreetMap Nominatim API URL")), ("NOMINATIM_URL", (getenv("NOMINATIM_URL", ""), _("OpenStreetMap Nominatim API URL"))),
"OPENAI_API_KEY": (getenv("OPENAI_API_KEY", "example key"), _("OpenAI API Key")), ("OPENAI_API_KEY", (getenv("OPENAI_API_KEY", "example key"), _("OpenAI API Key"))),
"ABSTRACT_API_KEY": ( ("ABSTRACT_API_KEY", (getenv("ABSTRACT_API_KEY", "example key"), _("Abstract API Key"))),
getenv("ABSTRACT_API_KEY", "example key"), ("HTTP_PROXY", (getenv("DJANGO_HTTP_PROXY", "http://username:password@proxy_address:port"), _("HTTP Proxy"))),
_("Abstract API Key, if empty - no Abstract features provided"), ("DISABLED_COMMERCE", (getenv("DISABLED_COMMERCE", False), _("Disable buy functionality"))),
(
"ADVERTISEMENT_DATA",
(getenv("EVIBES_ADVERTISEMENT_DATA", ""), _("An entity for storing advertisiment data"), "json"),
), ),
"HTTP_PROXY": (getenv("DJANGO_HTTP_PROXY", "http://username:password@proxy_address:port"), _("HTTP Proxy")), ("ANALYTICS_DATA", (getenv("EVIBES_ANALYTICS_DATA", ""), _("An entity for storing analytics data"), "json")),
"DISABLED_COMMERCE": (getenv("DISABLED_COMMERCE", False), _("Disable buy functionality")), ]
"ADVERTISEMENT_DATA": (
getenv("EVIBES_ADVERTISEMENT_DATA", ""),
_("An entity for storing advertisiment data"),
"json",
),
"ANALYTICS_DATA": (
getenv("EVIBES_ANALYTICS_DATA", ""),
_("An entity for storing analytics data"),
"json",
),
}
) )
CONSTANCE_CONFIG_FIELDSETS = { CONSTANCE_CONFIG_FIELDSETS = {
_("General Options"): ( gettext_noop("General Options"): (
"PROJECT_NAME", "PROJECT_NAME",
"FRONTEND_DOMAIN", "FRONTEND_DOMAIN",
"BASE_DOMAIN", "BASE_DOMAIN",
@ -68,7 +59,7 @@ CONSTANCE_CONFIG_FIELDSETS = {
"COMPANY_ADDRESS", "COMPANY_ADDRESS",
"COMPANY_PHONE_NUMBER", "COMPANY_PHONE_NUMBER",
), ),
_("Email Options"): ( gettext_noop("Email Options"): (
"EMAIL_HOST", "EMAIL_HOST",
"EMAIL_PORT", "EMAIL_PORT",
"EMAIL_USE_TLS", "EMAIL_USE_TLS",
@ -77,21 +68,21 @@ CONSTANCE_CONFIG_FIELDSETS = {
"EMAIL_HOST_PASSWORD", "EMAIL_HOST_PASSWORD",
"EMAIL_FROM", "EMAIL_FROM",
), ),
_("Payment Gateway Options"): ( gettext_noop("Payment Gateway Options"): (
"PAYMENT_GATEWAY_URL", "PAYMENT_GATEWAY_URL",
"PAYMENT_GATEWAY_TOKEN", "PAYMENT_GATEWAY_TOKEN",
"EXCHANGE_RATE_API_KEY", "EXCHANGE_RATE_API_KEY",
"PAYMENT_GATEWAY_MINIMUM", "PAYMENT_GATEWAY_MINIMUM",
"PAYMENT_GATEWAY_MAXIMUM", "PAYMENT_GATEWAY_MAXIMUM",
), ),
_("Features Options"): ( gettext_noop("Features Options"): (
"DISABLED_COMMERCE", "DISABLED_COMMERCE",
"NOMINATIM_URL", "NOMINATIM_URL",
"OPENAI_API_KEY", "OPENAI_API_KEY",
"ABSTRACT_API_KEY", "ABSTRACT_API_KEY",
"HTTP_PROXY", "HTTP_PROXY",
), ),
_("SEO Options"): ( gettext_noop("SEO Options"): (
"ADVERTISEMENT_DATA", "ADVERTISEMENT_DATA",
"ANALYTICS_DATA", "ANALYTICS_DATA",
), ),