changeset 55:d48e8676b18f

Show snippets by user in their profile, and show 10 latest snippets on the add snippet page
author Jordi Gutiérrez Hermoso <jordigh@gmail.com>
date Mon, 07 Feb 2011 11:59:52 -0600
parents 898881bbfdea
children 9659998da890
files apps/profile/urls.py apps/snippet/views.py templates/snippet/snippet_details.djhtml templates/snippet/snippet_new.djhtml
diffstat 4 files changed, 43 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/apps/profile/urls.py
+++ b/apps/profile/urls.py
@@ -2,5 +2,5 @@
 
 urlpatterns = patterns('agora.apps.profile.views',
     (r'^editprofile/(?P<user>\w*)/$', 'editprofile'),
-    (r'^(?P<user>\w*)/$',             'showprofile'),
+    (r'^(?P<user>\w*)/$', 'showprofile'),
 )
--- a/apps/snippet/views.py
+++ b/apps/snippet/views.py
@@ -10,7 +10,8 @@
 from django.utils.translation import ugettext_lazy as _
 from agora.apps.snippet.forms import SnippetForm, UserSettingsForm
 from agora.apps.snippet.models import Snippet
-from agora.apps.snippet.highlight import pygmentize, guess_code_lexer
+from agora.apps.snippet.highlight import pygmentize, guess_code_lexer, \
+     LEXER_LIST
 from django.core.urlresolvers import reverse
 from django.utils import simplejson
 import difflib
@@ -31,8 +32,11 @@
     else:
         snippet_form = SnippetForm(request=request)
 
+    recent = Snippet.objects.all()[:10]
+
     template_context = {
         'snippet_form': snippet_form,
+        'recent' : recent,
     }
 
     return render_to_response(
@@ -53,7 +57,6 @@
 
     new_snippet_initial = {
         'content': snippet.content,
-        'lexer': snippet.lexer,
     }
 
     if request.method == "POST":
@@ -71,6 +74,7 @@
         'snippet': snippet,
         'lines': range(snippet.get_linecount()),
         'tree': tree,
+        'language': dict(LEXER_LIST)[snippet.lexer],
     }
 
     response = render_to_response(
--- a/templates/snippet/snippet_details.djhtml
+++ b/templates/snippet/snippet_details.djhtml
@@ -63,7 +63,7 @@
     <div class="whitebox">
 
       <div class="snippet-options">
-        <abbr title="{% trans "Time to life" %}"
+        <abbr title="{% trans "Time to live" %}"
               >TTL:
         </abbr>
         {{ snippet.expires|timeuntil  }}
@@ -77,14 +77,16 @@
         {% endif %}
         <a id="toggleWordwrap" href="#">{% trans "Wordwrap" %}</a>
         <div>
-         author:
-          {% if snippet.author %}
+         Author:
+         {% if snippet.author %}
          <a href="{% url agora.apps.profile.views.showprofile snippet.author %}">
            {{ snippet.author }}
          </a>
-          {% else %}
-          anonymous
-          {% endif %}
+         {% else %}
+         anonymous
+         {% endif %}
+         &mdash;
+         Language: {{language}}
         </div>
       </div>
 
--- a/templates/snippet/snippet_new.djhtml
+++ b/templates/snippet/snippet_new.djhtml
@@ -6,13 +6,37 @@
 
 {% block content %}
     <h2>{% trans "New snippet" %}</h2>
-    {% include "snippet/snippet_form.djhtml" %}
+    <div class="whitebox">
+      {% include "snippet/snippet_form.djhtml" %}
+    </div>
 {% endblock %}
 
 
-{% block sidebar %}
-    <h2>{% trans "DPASTE_HOMEPAGE_TITLE" %}</h2>
-    <p>{% trans "DPASTE_HOMEPAGE_DESCRIPTION" %}</p>
+{% block content-related %}
+    <h2>Recent snippets</h2>
+    <div class="whitebox">
+      <ul>
+        {% for r in recent %}
+        <li>
+          <a href="{% url snippet_details r %}">
+            {% if r.title %}
+            {{r.title}}
+            {% else %}
+            Snippet #{{r.pk}}
+            {% endif %}
+          </a>
+        by
+          {% if r.author %}
+          <a href="{% url agora.apps.profile.views.showprofile user %}">
+            {{r.author}}
+          </a>
+          {% else %}
+          anonymous
+          {% endif %}
+          {% endfor %}
+        </li>
+      </ul>
+    </div>
 {% endblock %}