Add automatic paypal charging, add ticket page mock
This commit is contained in:
@@ -1,12 +1,13 @@
|
||||
import sys
|
||||
from datetime import datetime
|
||||
from decimal import Decimal
|
||||
from pathlib import Path
|
||||
import logging
|
||||
import tomllib
|
||||
|
||||
from from_root import from_root
|
||||
|
||||
from elm.types.ConfigurationTypes import MailingServiceConfiguration, LanInfo, ReceiptPrintingConfiguration, DatabaseConfiguration, PayPalConfiguration
|
||||
from elm.types.ConfigurationTypes import MailingServiceConfiguration, LanInfo, ReceiptPrintingConfiguration, DatabaseConfiguration, PayPalConfiguration, TicketInfo
|
||||
|
||||
logger = logging.getLogger(__name__.split(".")[-1])
|
||||
logger.setLevel(logging.DEBUG)
|
||||
@@ -46,6 +47,21 @@ class ConfigurationService:
|
||||
logger.fatal("Error loading DatabaseConfiguration, exiting...")
|
||||
sys.exit(1)
|
||||
|
||||
def get_ticket_info(self) -> tuple[TicketInfo, ...]:
|
||||
try:
|
||||
return tuple([TicketInfo(
|
||||
category=value,
|
||||
total_tickets=self._config["tickets"][value]["total_tickets"],
|
||||
price=Decimal(self._config["tickets"][value]["price"]),
|
||||
description=self._config["tickets"][value]["description"],
|
||||
additional_info=self._config["tickets"][value]["additional_info"]
|
||||
) for value in self._config["tickets"]])
|
||||
except KeyError as e:
|
||||
logger.debug(e)
|
||||
logger.fatal("Error loading ticket configuration, exiting...")
|
||||
sys.exit(1)
|
||||
|
||||
|
||||
def get_database_configuration(self) -> DatabaseConfiguration:
|
||||
try:
|
||||
return DatabaseConfiguration(
|
||||
@@ -117,3 +133,7 @@ class ConfigurationService:
|
||||
@property
|
||||
def DEFAULT_PROFILE_PICTURE(self) -> bytes:
|
||||
return self._DEFAULT_PROFILE_PICTURE
|
||||
|
||||
@property
|
||||
def BASE_URL(self) -> str:
|
||||
return self._config["misc"]["base_url"]
|
||||
|
||||
Reference in New Issue
Block a user