Esempio n. 1
0
def info(path=''):
    """
    @param path: Path to file
    @return: Generated file info page or error
    """
    os.chdir(flask.request.environ['DOCUMENT_ROOT'])
    path = os.path.normpath(path)

    if os.path.isfile(path):
        try:
            properties = [
                ['File', os.path.basename(path)],
                ['Path', '/' + os.path.split(path)[0]],
                ['Size', utils.get_size(path)],
                ['Mimetype', utils.get_mime(path)],
            ]

        except OSError:
            return flask.abort(403)

        else:
            nav = utils.populate_navbar(path)
            return flask.render_template('info.html', path=path, nav=nav, properties=properties)

    else:
        return flask.abort(404)
Esempio n. 2
0
def browse(path=''):
    """
    @param path: Path to directory
    @return: Generated index page or error
    """
    os.chdir(flask.request.environ['DOCUMENT_ROOT'])
    path = os.path.normpath(path)
    folders = []
    files = []

    if os.path.isdir(path):
        try:
            for entry in os.listdir(path):
                item = os.path.join(path, entry)

                if os.path.isfile(item):
                    files.append(entry)
                elif os.path.isdir(item):
                    folders.append(entry)

        except OSError:
            return flask.abort(403)

        else:
            nav = utils.populate_navbar(path)
            folders.sort()
            files.sort()
            return flask.render_template('browse.html', path=path, nav=nav, folders=folders, files=files, error=flask.request.args.get('error'))

    else:
        return flask.abort(404)