📁
SKYSHELL MANAGER
PHP v8.2.30
Create
Create
Path:
root
/
home
/
qooetu
/
costes.qooetu.com
/
Name
Size
Perm
Actions
📁
.well-known
-
0755
🗑️
🏷️
🔒
📁
2e19d9
-
0755
🗑️
🏷️
🔒
📁
6b114
-
0755
🗑️
🏷️
🔒
📁
Modules
-
0755
🗑️
🏷️
🔒
📁
app
-
0755
🗑️
🏷️
🔒
📁
assets
-
0755
🗑️
🏷️
🔒
📁
bootstrap
-
0755
🗑️
🏷️
🔒
📁
cgi-bin
-
0755
🗑️
🏷️
🔒
📁
config
-
0755
🗑️
🏷️
🔒
📁
css
-
0755
🗑️
🏷️
🔒
📁
database
-
0755
🗑️
🏷️
🔒
📁
images
-
0755
🗑️
🏷️
🔒
📁
js
-
0755
🗑️
🏷️
🔒
📁
nbproject
-
0755
🗑️
🏷️
🔒
📁
public
-
0755
🗑️
🏷️
🔒
📁
resources
-
0755
🗑️
🏷️
🔒
📁
routes
-
0755
🗑️
🏷️
🔒
📁
storage
-
0755
🗑️
🏷️
🔒
📁
tests
-
0755
🗑️
🏷️
🔒
📁
uploads
-
0755
🗑️
🏷️
🔒
📁
vendor
-
0755
🗑️
🏷️
🔒
📁
wp-admin
-
0755
🗑️
🏷️
🔒
📁
wp-content
-
0755
🗑️
🏷️
🔒
📁
wp-includes
-
0755
🗑️
🏷️
🔒
📄
.htaccess
0.23 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
COOKIE.txt
0.2 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
X7ROOT.txt
0.27 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
defaults.php
1.29 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
engine.php
0 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
error_log
813.08 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
features.php
11.28 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
googlecfb82e09419fc0f6.html
0.05 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
index.php0
1.56 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
inputs.php
0.12 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
kurd.html
1.07 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
library.php
0 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
min.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
p.php
2.75 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
php.ini
0.04 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
product.php
1.78 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
qpmwztts.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
robots.txt
0.32 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
tovmbkwh.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
tyyffovi.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
veoxv.html
1.23 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
Edit: i18n.py
"""Activate, get and deactivate translations.""" from __future__ import annotations import gettext as gettext_module import os.path from threading import local __all__ = ["activate", "deactivate", "decimal_separator", "thousands_separator"] _TRANSLATIONS: dict[str | None, gettext_module.NullTranslations] = { None: gettext_module.NullTranslations() } _CURRENT = local() # Mapping of locale to thousands separator _THOUSANDS_SEPARATOR = { "de_DE": ".", "fr_FR": " ", "it_IT": ".", "pt_BR": ".", "hu_HU": " ", } # Mapping of locale to decimal separator _DECIMAL_SEPARATOR = { "de_DE": ",", "it_IT": ",", "pt_BR": ",", "hu_HU": ",", } def _get_default_locale_path() -> str | None: try: if __file__ is None: return None return os.path.join(os.path.dirname(__file__), "locale") except NameError: return None def get_translation() -> gettext_module.NullTranslations: try: return _TRANSLATIONS[_CURRENT.locale] except (AttributeError, KeyError): return _TRANSLATIONS[None] def activate(locale: str, path: str | None = None) -> gettext_module.NullTranslations: """Activate internationalisation. Set `locale` as current locale. Search for locale in directory `path`. Args: locale (str): Language name, e.g. `en_GB`. path (str): Path to search for locales. Returns: dict: Translations. Raises: Exception: If humanize cannot find the locale folder. """ if path is None: path = _get_default_locale_path() if path is None: msg = ( "Humanize cannot determinate the default location of the 'locale' folder. " "You need to pass the path explicitly." ) raise Exception(msg) if locale not in _TRANSLATIONS: translation = gettext_module.translation("humanize", path, [locale]) _TRANSLATIONS[locale] = translation _CURRENT.locale = locale return _TRANSLATIONS[locale] def deactivate() -> None: """Deactivate internationalisation.""" _CURRENT.locale = None def _gettext(message: str) -> str: """Get translation. Args: message (str): Text to translate. Returns: str: Translated text. """ return get_translation().gettext(message) def _pgettext(msgctxt: str, message: str) -> str: """Fetches a particular translation. It works with `msgctxt` .po modifiers and allows duplicate keys with different translations. Args: msgctxt (str): Context of the translation. message (str): Text to translate. Returns: str: Translated text. """ return get_translation().pgettext(msgctxt, message) def _ngettext(message: str, plural: str, num: int) -> str: """Plural version of _gettext. Args: message (str): Singular text to translate. plural (str): Plural text to translate. num (int): The number (e.g. item count) to determine translation for the respective grammatical number. Returns: str: Translated text. """ return get_translation().ngettext(message, plural, num) def _gettext_noop(message: str) -> str: """Mark a string as a translation string without translating it. Example usage: ```python CONSTANTS = [_gettext_noop('first'), _gettext_noop('second')] def num_name(n): return _gettext(CONSTANTS[n]) ``` Args: message (str): Text to translate in the future. Returns: str: Original text, unchanged. """ return message def _ngettext_noop(singular: str, plural: str) -> tuple[str, str]: """Mark two strings as pluralized translations without translating them. Example usage: ```python CONSTANTS = [ngettext_noop('first', 'firsts'), ngettext_noop('second', 'seconds')] def num_name(n): return _ngettext(*CONSTANTS[n]) ``` Args: singular (str): Singular text to translate in the future. plural (str): Plural text to translate in the future. Returns: tuple: Original text, unchanged. """ return singular, plural def thousands_separator() -> str: """Return the thousands separator for a locale, default to comma. Returns: str: Thousands separator. """ try: sep = _THOUSANDS_SEPARATOR[_CURRENT.locale] except (AttributeError, KeyError): sep = "," return sep def decimal_separator() -> str: """Return the decimal separator for a locale, default to dot. Returns: str: Decimal separator. """ try: sep = _DECIMAL_SEPARATOR[_CURRENT.locale] except (AttributeError, KeyError): sep = "." return sep
Save