$85 GRAYBYTE WORDPRESS FILE MANAGER $29

SERVER : vnpttt-amd7f72-h1.vietnix.vn #1 SMP Fri May 24 12:42:50 UTC 2024
SERVER IP : 103.200.23.149 | ADMIN IP 216.73.216.22
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/opt/alt/python37/lib/python3.7/site-packages/mako/ext/

HOME
Current File : /opt/alt/python37/lib/python3.7/site-packages/mako/ext//autohandler.py
# ext/autohandler.py
# Copyright 2006-2019 the Mako authors and contributors <see AUTHORS file>
#
# This module is part of Mako and is released under
# the MIT License: http://www.opensource.org/licenses/mit-license.php

"""adds autohandler functionality to Mako templates.

requires that the TemplateLookup class is used with templates.

usage::

    <%!
        from mako.ext.autohandler import autohandler
    %>
    <%inherit file="${autohandler(template, context)}"/>


or with custom autohandler filename::

    <%!
        from mako.ext.autohandler import autohandler
    %>
    <%inherit file="${autohandler(template, context, name='somefilename')}"/>

"""

import os
import posixpath
import re


def autohandler(template, context, name="autohandler"):
    lookup = context.lookup
    _template_uri = template.module._template_uri
    if not lookup.filesystem_checks:
        try:
            return lookup._uri_cache[(autohandler, _template_uri, name)]
        except KeyError:
            pass

    tokens = re.findall(r"([^/]+)", posixpath.dirname(_template_uri)) + [name]
    while len(tokens):
        path = "/" + "/".join(tokens)
        if path != _template_uri and _file_exists(lookup, path):
            if not lookup.filesystem_checks:
                return lookup._uri_cache.setdefault(
                    (autohandler, _template_uri, name), path
                )
            else:
                return path
        if len(tokens) == 1:
            break
        tokens[-2:] = [name]

    if not lookup.filesystem_checks:
        return lookup._uri_cache.setdefault(
            (autohandler, _template_uri, name), None
        )
    else:
        return None


def _file_exists(lookup, path):
    psub = re.sub(r"^/", "", path)
    for d in lookup.directories:
        if os.path.exists(d + "/" + psub):
            return True
    else:
        return False

Current_dir [ NOT WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
31 Aug 2024 6.48 AM
root / 996
0755
__pycache__
--
31 Aug 2024 6.48 AM
root / 996
0755
__init__.py
0 KB
1 Aug 2019 11.26 PM
root / 996
0644
autohandler.py
1.841 KB
1 Aug 2019 11.26 PM
root / 996
0644
babelplugin.py
2.088 KB
1 Aug 2019 11.26 PM
root / 996
0644
beaker_cache.py
2.538 KB
1 Aug 2019 11.26 PM
root / 996
0644
extract.py
4.508 KB
1 Aug 2019 11.26 PM
root / 996
0644
linguaplugin.py
1.908 KB
1 Aug 2019 11.26 PM
root / 996
0644
preprocessors.py
0.563 KB
1 Aug 2019 11.26 PM
root / 996
0644
pygmentplugin.py
4.835 KB
1 Aug 2019 11.26 PM
root / 996
0644
turbogears.py
2.114 KB
1 Aug 2019 11.26 PM
root / 996
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME
Static GIF