|
Cat Feeder
1.0.0
The Cat feeder project
|
Functions | |
| List[Any] | clean_list (List[Any] raw_input, Tuple[Any,...] items, Disp disp) |
| Dict[str, Any] | clean_dict (Dict[str, Any] raw_input, Tuple[Any,...] items, Disp disp) |
| str | mask_email_segment (str segment) |
| str | hide_user_email (str user_email, Disp disp) |
# +==== BEGIN CatFeeder =================+ # LOGO: # ..............(..../\ # ...............)..(.') # ..............(../..) # ...............\(__)| # Inspired by Joan Stark # source https://www.asciiart.eu/ # animals/cats # /STOP # PROJECT: CatFeeder # FILE: constants.py # CREATION DATE: 11-10-2025 # LAST Modified: 19:0:27 31-01-2026 # DESCRIPTION: # This is the backend server in charge of making the actual website work. # Backend server constants and configuration management. # # This module contains all the configuration constants and utility functions # required to run the CatFeeder server. It manages environment variables, # TOML configurations, database settings, server configurations, and provides # helper functions for data manipulation. # # Module-level constants include: # - Database connection parameters (host, port, user, password, database) # - Server configurations (workers, timeout, development/production settings) # - Verification settings (email delays, token sizes) # - Table names and database schema constants # - JSON response key constants # - User data field mappings and indices # /STOP # COPYRIGHT: (c) Cat Feeder # PURPOSE: This is the file in charge of containing the constants that run the server. # // AR # +==== END CatFeeder =================+
| Dict[str, Any] backend.src.libs.utils.constants.clean_dict | ( | Dict[str, Any] | raw_input, |
| Tuple[Any, ...] | items, | ||
| Disp | disp ) |
Remove specified keys from a dictionary if they are present.
Iterates through the input dictionary and removes all keys specified
in the items tuple. Logs debug information for each removal.
Args:
input (Dict[str, Any]): The dictionary to check and modify.
items (Tuple[Any, Any]): The keys to remove from the dictionary.
disp (Disp): The logging object for debug output.
Returns:
Dict[str, Any]: The modified dictionary with specified keys removed.
Definition at line 318 of file constants.py.
| List[Any] backend.src.libs.utils.constants.clean_list | ( | List[Any] | raw_input, |
| Tuple[Any, ...] | items, | ||
| Disp | disp ) |
Remove specified items from a list if they are present.
Iterates through the input list and removes all occurrences of items
specified in the items tuple. Logs debug information for each removal.
Args:
raw_input (List[Any]): The list to check and modify.
items (Tuple[Any, Any]): The items to remove from the list.
disp (Disp): The logging object for debug output.
Returns:
List[Any]: The modified list with specified items removed.
Definition at line 288 of file constants.py.
| str backend.src.libs.utils.constants.hide_user_email | ( | str | user_email, |
| Disp | disp ) |
Mask user email for privacy while preserving structure and shape.
Masks each word/segment separately, showing only first and last character.
Segments are separated by special characters: . + - @
Args:
user_email (str): Email address to mask.
Returns:
str: Masked email (e.g., t[...]t.m[...]e+r[...]m@g[...]l.c[...]m).
Definition at line 350 of file constants.py.
| str backend.src.libs.utils.constants.mask_email_segment | ( | str | segment | ) |
Mask a single email segment, showing first and last character.
Definition at line 341 of file constants.py.
| backend.src.libs.utils.constants.API_REQUEST_DELAY |
Definition at line 183 of file constants.py.
| Path backend.src.libs.utils.constants.ASSETS_DIRECTORY = ROOT_DIRECTORY / "assets" |
Definition at line 60 of file constants.py.
| int backend.src.libs.utils.constants.BIRTHDAY_INDEX_DB = 5 |
Definition at line 225 of file constants.py.
| str backend.src.libs.utils.constants.BUCKET_NAME = ENV.get_environment_variable("BUCKET_NAME") |
Definition at line 272 of file constants.py.
| str backend.src.libs.utils.constants.CHAR_ACTIVE_KEY = "active" |
Definition at line 214 of file constants.py.
| int backend.src.libs.utils.constants.CHAR_ID_DEFAULT_INDEX = 0 |
Definition at line 217 of file constants.py.
| str backend.src.libs.utils.constants.CHAR_NAME_KEY = "name" |
Definition at line 215 of file constants.py.
| str backend.src.libs.utils.constants.CHAR_NODE_KEY = "node" |
Definition at line 213 of file constants.py.
| str backend.src.libs.utils.constants.CHAR_UID_KEY = "uid" |
Definition at line 216 of file constants.py.
| backend.src.libs.utils.constants.CHECK_TOKEN_SIZE |
Definition at line 172 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_AUTOCOMMIT |
Definition at line 161 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_COLLATION |
Definition at line 164 of file constants.py.
| backend.src.libs.utils.constants.DATABASE_CONNECTION_TIMEOUT |
Definition at line 131 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_DEFAULT_FILE |
Definition at line 140 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_INIT_COMMAND |
Definition at line 137 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_LOCAL_INFILE |
Definition at line 134 of file constants.py.
| backend.src.libs.utils.constants.DATABASE_MAX_POOL_CONNECTIONS |
Definition at line 125 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_POOL_NAME |
Definition at line 122 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_RESET_POOL_NODE_CONNECTION |
Definition at line 128 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_SSL |
Definition at line 158 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_SSL_CA |
Definition at line 149 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_SSL_CERT |
Definition at line 146 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_SSL_CIPHER |
Definition at line 152 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_SSL_KEY |
Definition at line 143 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.DATABASE_SSL_VERIFY_CERT |
Definition at line 155 of file constants.py.
| EnvLoader backend.src.libs.utils.constants.DB_DATABASE = ENV.get_environment_variable("DB_DATABASE") |
Definition at line 76 of file constants.py.
| EnvLoader backend.src.libs.utils.constants.DB_HOST = ENV.get_environment_variable("DB_HOST") |
Definition at line 69 of file constants.py.
| EnvLoader backend.src.libs.utils.constants.DB_PASSWORD = ENV.get_environment_variable("DB_PASSWORD") |
Definition at line 75 of file constants.py.
| backend.src.libs.utils.constants.DB_PORT = int(DB_PORT_RAW) |
Definition at line 73 of file constants.py.
| EnvLoader backend.src.libs.utils.constants.DB_PORT_RAW = ENV.get_environment_variable("DB_PORT") |
Definition at line 70 of file constants.py.
| EnvLoader backend.src.libs.utils.constants.DB_USER = ENV.get_environment_variable("DB_USER") |
Definition at line 74 of file constants.py.
| bool backend.src.libs.utils.constants.DEBUG = refresh_debug(False) |
Definition at line 63 of file constants.py.
| backend.src.libs.utils.constants.EMAIL_VERIFICATION_DELAY |
Definition at line 169 of file constants.py.
Definition at line 51 of file constants.py.
| backend.src.libs.utils.constants.ERROR |
Definition at line 94 of file constants.py.
| int backend.src.libs.utils.constants.FIRSTNAME_INDEX_DB = 3 |
Definition at line 223 of file constants.py.
| int backend.src.libs.utils.constants.FRONT_END_ASSETS_REFRESH |
Definition at line 188 of file constants.py.
| int backend.src.libs.utils.constants.GENDER_INDEX_DB = 7 |
Definition at line 226 of file constants.py.
| str backend.src.libs.utils.constants.GOOGLE_SITE_VERIFICATION_CODE |
Definition at line 281 of file constants.py.
| Path backend.src.libs.utils.constants.HTML_DIRECTORY = ASSETS_DIRECTORY / "html" |
Definition at line 276 of file constants.py.
| str backend.src.libs.utils.constants.ICON_PATH |
Definition at line 255 of file constants.py.
| Disp backend.src.libs.utils.constants.IDISP = initialise_logger("Constants", False) |
Definition at line 47 of file constants.py.
| Path backend.src.libs.utils.constants.IMG_DIRECTORY = ASSETS_DIRECTORY / "icon" / "img" |
Definition at line 278 of file constants.py.
| Path backend.src.libs.utils.constants.JS_DIRECTORY = ASSETS_DIRECTORY / "js" / "web" |
Definition at line 277 of file constants.py.
| str backend.src.libs.utils.constants.JSON_ERROR = "error" |
Definition at line 195 of file constants.py.
| str backend.src.libs.utils.constants.JSON_LOGGED_IN = "logged in" |
Definition at line 197 of file constants.py.
| str backend.src.libs.utils.constants.JSON_MESSAGE = "msg" |
Definition at line 194 of file constants.py.
| str backend.src.libs.utils.constants.JSON_RESP = "resp" |
Definition at line 196 of file constants.py.
| str backend.src.libs.utils.constants.JSON_TITLE = "title" |
Definition at line 193 of file constants.py.
| str backend.src.libs.utils.constants.JSON_UID = "user_uid" |
Definition at line 198 of file constants.py.
| int backend.src.libs.utils.constants.LASTNAME_INDEX_DB = 4 |
Definition at line 224 of file constants.py.
| int backend.src.libs.utils.constants.PASSWORD_INDEX_DB = 2 |
Definition at line 222 of file constants.py.
| str backend.src.libs.utils.constants.PNG_ICON_PATH |
Definition at line 260 of file constants.py.
| backend.src.libs.utils.constants.RANDOM_MAX |
Definition at line 178 of file constants.py.
| backend.src.libs.utils.constants.RANDOM_MIN |
Definition at line 175 of file constants.py.
| EnvLoader backend.src.libs.utils.constants.REDIRECT_URI = ENV.get_environment_variable("REDIRECT_URI") |
Definition at line 66 of file constants.py.
| str backend.src.libs.utils.constants.REQUEST_BEARER_KEY = "authorization" |
Definition at line 240 of file constants.py.
| str backend.src.libs.utils.constants.REQUEST_TOKEN_KEY = "token" |
Definition at line 239 of file constants.py.
| int backend.src.libs.utils.constants.ROLE_INDEX_DB = 10 |
Definition at line 227 of file constants.py.
| Path backend.src.libs.utils.constants.ROOT_DIRECTORY = Path(__file__).parent.parent.parent.parent |
Definition at line 57 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.SERVER_DEV_LOG_LEVEL |
Definition at line 106 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.SERVER_DEV_RELOAD |
Definition at line 100 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.SERVER_DEV_RELOAD_DIRS |
Definition at line 103 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.SERVER_DEV_USE_COLOURS |
Definition at line 109 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.SERVER_LIFESPAN |
Definition at line 83 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.SERVER_PROD_FORWARDED_ALLOW_IPS |
Definition at line 117 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.SERVER_PROD_PROXY_HEADERS |
Definition at line 114 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.SERVER_TIMEOUT_KEEP_ALIVE |
Definition at line 86 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.SERVER_WORKERS |
Definition at line 80 of file constants.py.
| Path backend.src.libs.utils.constants.STYLE_DIRECTORY = ASSETS_DIRECTORY / "css" |
Definition at line 275 of file constants.py.
| backend.src.libs.utils.constants.SUCCESS |
Definition at line 91 of file constants.py.
| str backend.src.libs.utils.constants.TAB_ACCOUNTS = "Users" |
Definition at line 202 of file constants.py.
| str backend.src.libs.utils.constants.TAB_ACTION_LOGGING = "ActionLoging" |
Definition at line 208 of file constants.py.
| str backend.src.libs.utils.constants.TAB_ACTION_TEMPLATE = "ActionTemplate" |
Definition at line 209 of file constants.py.
| str backend.src.libs.utils.constants.TAB_ACTIONS = "Actions" |
Definition at line 203 of file constants.py.
| str backend.src.libs.utils.constants.TAB_ACTIVE_OAUTHS = "ActiveOauths" |
Definition at line 207 of file constants.py.
| str backend.src.libs.utils.constants.TAB_CONNECTIONS = "Connections" |
Definition at line 205 of file constants.py.
| str backend.src.libs.utils.constants.TAB_PET = "Pet" |
Definition at line 201 of file constants.py.
| str backend.src.libs.utils.constants.TAB_SERVICES = "Services" |
Definition at line 204 of file constants.py.
| str backend.src.libs.utils.constants.TAB_USER_OAUTH_CONNECTION = "UserOauthConnection" |
Definition at line 210 of file constants.py.
| str backend.src.libs.utils.constants.TAB_VERIFICATION = "Verification" |
Definition at line 206 of file constants.py.
| tuple backend.src.libs.utils.constants.TABLE_COLUMNS_TO_IGNORE = ("id", "creation_date", "edit_date") |
Definition at line 265 of file constants.py.
| tuple backend.src.libs.utils.constants.TABLE_COLUMNS_TO_IGNORE_USER |
Definition at line 267 of file constants.py.
| int backend.src.libs.utils.constants.THREAD_CACHE_REFRESH_DELAY = 10 |
Definition at line 243 of file constants.py.
| TOMLLoader backend.src.libs.utils.constants.TOML = TOMLLoader() |
Definition at line 54 of file constants.py.
| str backend.src.libs.utils.constants.UA_EMAIL_KEY = "email" |
Definition at line 247 of file constants.py.
| str backend.src.libs.utils.constants.UA_LIFESPAN_KEY = "lifespan" |
Definition at line 248 of file constants.py.
| int backend.src.libs.utils.constants.UA_TOKEN_LIFESPAN = 7200 |
Definition at line 246 of file constants.py.
| str backend.src.libs.utils.constants.UD_ADMIN_KEY = "admin" |
Definition at line 234 of file constants.py.
| str backend.src.libs.utils.constants.UD_BIRTHDAY_KEY = "birthday" |
Definition at line 231 of file constants.py.
| str backend.src.libs.utils.constants.UD_FIRSTNAME_KEY = "firstname" |
Definition at line 229 of file constants.py.
| str backend.src.libs.utils.constants.UD_GENDER_KEY = "gender" |
Definition at line 232 of file constants.py.
| str backend.src.libs.utils.constants.UD_LASTNAME_KEY = "lastname" |
Definition at line 230 of file constants.py.
| str backend.src.libs.utils.constants.UD_LOGGED_IN_KEY = "logged_in" |
Definition at line 236 of file constants.py.
| str backend.src.libs.utils.constants.UD_LOGIN_TIME_KEY = "login_time" |
Definition at line 235 of file constants.py.
| str backend.src.libs.utils.constants.UD_ROLE_KEY = "role" |
Definition at line 233 of file constants.py.
| str backend.src.libs.utils.constants.UD_USERNAME_KEY = "username" |
Definition at line 228 of file constants.py.
| str backend.src.libs.utils.constants.USER_INFO_ADMIN_NODE = "admin" |
Definition at line 252 of file constants.py.
| list backend.src.libs.utils.constants.USER_INFO_BANNED = ["password", "method", "favicon"] |
Definition at line 251 of file constants.py.
| int backend.src.libs.utils.constants.USERNAME_INDEX_DB = 1 |
Definition at line 221 of file constants.py.