Ejemplo n.º 1
0
def include_file(repo, path=None, rev=None, **kw):
    app = parse_repo(repo)
    if not app:
        return '[[include repo %s (not found)]]' % repo
    if not h.has_access(app.repo, 'read')():
        return "[[include: you don't have a read permission for repo %s]]" % repo

    rev = app.repo.head if rev is None else rev
    try:
        file = app.repo.commit(rev).get_path(path)
    except Exception:
        return "[[include can't find file %s in revision %s]]" % (path, rev)

    text = ''
    if file.has_pypeline_view:
        text = h.render_any_markup(file.name, file.text, code_mode=True)
    elif file.has_html_view:
        text = g.highlight(file.text, filename=file.name)
    else:
        return "[[include can't display file %s in revision %s]]" % (path, rev)

    from allura.lib.widgets.macros import Include
    sb = Include()
    g.resource_manager.register(sb)
    return sb.display(text=text, attrs=kw)
Ejemplo n.º 2
0
def include_file(repo, path=None, rev=None, **kw):
    app = parse_repo(repo)
    if not app:
        return '[[include repo %s (not found)]]' % repo
    if not h.has_access(app.repo, 'read')():
        return "[[include: you don't have a read permission for repo %s]]" % repo

    rev = app.repo.head if rev is None else rev
    try:
        file = app.repo.commit(rev).get_path(path)
    except Exception:
        return "[[include can't find file %s in revision %s]]" % (path, rev)

    text = ''
    if file.has_pypeline_view:
        text = h.render_any_markup(file.name, file.text, code_mode=True)
    elif file.has_html_view:
        text = g.highlight(file.text, filename=file.name)
    else:
        return "[[include can't display file %s in revision %s]]" % (path, rev)

    from allura.lib.widgets.macros import Include
    sb = Include()
    g.resource_manager.register(sb)
    return sb.display(text=text, attrs=kw)
Ejemplo n.º 3
0
def include(ref=None, **kw):
    from allura import model as M
    from allura.lib.widgets.macros import Include
    if ref is None:
        return '[-include-]'
    link = M.Shortlink.lookup(ref)
    if not link:
        return '[[include %s (not found)]]' % ref
    artifact = link.ref.artifact
    if artifact is None:
        return '[[include (artifact not found)]]' % ref
    included = request.environ.setdefault('allura.macro.included', set())
    if artifact in included:
        return '[[include %s (already included)]' % ref
    else:
        included.add(artifact)
    sb = Include()
    g.resource_manager.register(sb)
    response = sb.display(artifact=artifact, attrs=kw)
    return response
Ejemplo n.º 4
0
def include(ref=None, **kw):
    from allura import model as M
    from allura.lib.widgets.macros import Include
    if ref is None:
        return '[-include-]'
    link = M.Shortlink.lookup(ref)
    if not link:
        return '[[include %s (not found)]]' % ref
    artifact = link.ref.artifact
    if artifact is None:
        return '[[include (artifact not found)]]' % ref
    included = request.environ.setdefault('allura.macro.included', set())
    if artifact in included:
        return '[[include %s (already included)]' % ref
    else:
        included.add(artifact)
    sb = Include()
    g.resource_manager.register(sb)
    response = sb.display(artifact=artifact, attrs=kw)
    return response
Ejemplo n.º 5
0
def include(ref=None, repo=None, **kw):
    from allura import model as M
    from allura.lib.widgets.macros import Include
    if repo is not None:
        return include_file(repo, **kw)
    if ref is None:
        return '[-include-]'
    link = M.Shortlink.lookup(ref)
    if not link:
        return '[[include %s (not found)]]' % ref
    artifact = link.ref.artifact
    if artifact is None:
        return '[[include (artifact not found)]]' % ref
    if not h.has_access(artifact, 'read')():
        return "[[include: you don't have a read permission for %s]]" % ref
    included = request.environ.setdefault('allura.macro.included', set())
    if artifact in included:
        return '[[include %s (already included)]' % ref
    else:
        included.add(artifact)
    sb = Include()
    g.resource_manager.register(sb)
    response = sb.display(artifact=artifact, attrs=kw)
    return response
Ejemplo n.º 6
0
def include(ref=None, repo=None, **kw):
    from allura import model as M
    from allura.lib.widgets.macros import Include
    if repo is not None:
        return include_file(repo, **kw)
    if ref is None:
        return '[-include-]'
    link = M.Shortlink.lookup(ref)
    if not link:
        return '[[include %s (not found)]]' % ref
    artifact = link.ref.artifact
    if artifact is None:
        return '[[include (artifact not found)]]' % ref
    if not h.has_access(artifact, 'read')():
        return "[[include: you don't have a read permission for %s]]" % ref
    included = request.environ.setdefault('allura.macro.included', set())
    if artifact in included:
        return '[[include %s (already included)]' % ref
    else:
        included.add(artifact)
    sb = Include()
    g.resource_manager.register(sb)
    response = sb.display(artifact=artifact, attrs=kw)
    return response