nautilebleu / django_hg

django_hg allows managing (create, authenticate, clone/push/pull…) Mercurial repositories throught django.

Clone this repository (size: 144.8 KB): HTTPS / SSH
$ hg clone http://bitbucket.org/nautilebleu/django_hg/
commit 28: 8c38784a85a3
parent 27: b095e971b4a9
branch: default
Rename file.html to filedisplay.html
Goulwen Reboux / nautilebleu
9 months ago

Changed (Δ1.6 KB):

raw changeset »

templates/django_hg/filedisplay.html (30 lines added, 0 lines removed)

templates/django_hg/filerev.html (22 lines added, 9 lines removed)

templatetags/django_hg_tags.py (8 lines added, 2 lines removed)

Up to file-list templates/django_hg/filedisplay.html:

1
{% load i18n %}
2
<p>{{ mimetype.0 }} ({{ size|filesizeformat }})</p>
3
4
{% if lexer %}
5
    <div class="syntax">
6
        {{ content|safe }}
7
    </div>
8
{% else %}
9
    {% ifequal content 'image' %}
10
        <img src="{% url hg-filedisplay name rev file %}" />
11
    {% endifequal %}
12
    {% ifequal content 'pdf' %}
13
        <iframe src="{% url hg-filedisplay name rev file %}" width="100%" height="500"></iframe>
14
    {% endifequal %}
15
    {% ifequal content None %}
16
        <ul>
17
          <li>
18
              <a href="{% url hg-filedisplay name rev file %}?action=download">
19
                  {% trans 'Download' %}
20
              </a>
21
          </li>
22
          <li>
23
              <a href="{% url hg-filedisplay name rev file %}?action=view">
24
                  {% trans 'View as plain/text' %}
25
              </a>
26
          </li>
27
        <ul>
28
    {% endifequal %}
29
30
{% endif %}

Up to file-list templates/django_hg/filerev.html:

2
2
{% load i18n %}
3
3
{% load django_hg_tags %}
4
4
5
{% block extra_head %}
6
    <link rel="stylesheet" href="{{ MEDIA_URL }}pygments/{{DJANGO_HG_PYGMENT_STYLE}}.css" />
7
{% endblock %}
5
8
6
9
{% block head_title %}
7
10
    {% blocktrans %}
8
        View of {{ file }} in repository {{ repo }}
11
        View of {{ file }} at rev {{ rev}}
9
12
    {% endblocktrans %}
10
13
{% endblock %}
11
14
12
15
{% block content %}
13
{% include 'django_hg/repo_info.html' %}
16
<div id="django_hg_wrapper">
17
    <h2><a href="{% url hg-list %}">«{%  trans 'Repositories' %}</a> • {{repo}}@{{rev}} • {{ file|strip_path }}</h2>
14
18
15
<h3>
16
    {% blocktrans %}
17
        View of {{ file }} at rev {{ rev}}
18
    {% endblocktrans %}
19
</h3>
20
<p>{% breadcrumb %}</p>
19
    <div id="django_hg_container">
20
        <div class="django_hg_toolbar">
21
            {% include 'django_hg/repo_info.html' %}
22
            <p>{% trans 'Informations about changeset' %}</p>
23
            <ul>
24
                {% with repo.get_context as ctx %}
25
                  {% include 'django_hg/changeset_info.html' %}
26
                {% endwith %}
27
            </ul>
28
        </div>
21
29
22
{% file %}
30
        <div id="django_hg_container">
31
            <p>{% breadcrumb %}</p>
23
32
33
            {% filedisplay %}
34
        </div>
35
    </div>
36
</div>
24
37
{% endblock  %}

Up to file-list templatetags/django_hg_tags.py:

@@ -58,8 +58,8 @@ def breadcrumb(context):
58
58
    return {'breadcrumb': breadcrumb}
59
59
60
60
61
@register.inclusion_tag('django_hg/file.html', takes_context=True)
62
def file(context):
61
@register.inclusion_tag('django_hg/filedisplay.html', takes_context=True)
62
def filedisplay(context):
63
63
    from pygments import highlight
64
64
    from pygments.formatters import HtmlFormatter
65
65
    from pygments.lexers import get_lexer_for_mimetype, guess_lexer_for_filename
@@ -207,6 +207,12 @@ def paginate(context):
207
207
            'previous': page-1,
208
208
        } #pagination
209
209
210
211
@register.filter
212
def strip_path(value):
213
    """ A pythonic version of PHP basename"""
214
    return value[value.rfind('/')+1:]
215
210
216
if __name__ == "__main__":
211
217
    import os.path, sys, doctest
212
218
    try: