Mercurial > hg > savane-forge
changeset 329:f4652d26e557
Base item display
author | Sylvain Beucler <beuc@beuc.net> |
---|---|
date | Sun, 22 Aug 2010 10:37:54 +0200 |
parents | 91a6a6c540d4 |
children | 965cc693342b |
files | savane/tracker/models.py static_media/savane/css/tracker.css templates/base.html templates/tracker/item_form.html |
diffstat | 4 files changed, 76 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/savane/tracker/models.py +++ b/savane/tracker/models.py @@ -21,6 +21,7 @@ import django.contrib.auth.models as auth_models from django.utils.safestring import mark_safe import datetime +import locale from copy import deepcopy from savane.utils import htmlentitydecode, unescape from defs import * @@ -442,7 +443,44 @@ def get_form(self, user=None): # TODO: privacy form_fields = self.get_form_fields() - return mark_safe(''.join(['%s (%d)<br />' % (f, v['rank']) for f,v in form_fields])) + html = ''; + for field_no, (name,field) in enumerate(form_fields): + value = getattr(self, name) + + if field_no % 2 == 0: + html += '<tr>' + + html += u'<th><span class="help" title="%s">%s</span></th>\n' % (field['description'], field['label']+ugettext(": ")) + + html += '<td>' + if field['display_type'] == 'DF': + html += u'<select name="%s_dayfd" value="TODO">\n' % (name) + for i in range(1,31+1): + html += '<option value="%d">%d</option>\n' % (i, i) + html += '</select>\n' + html += u'<select name="%s_monthfd" value="TODO">\n' % (name) + for i,langinfo_constant in enumerate( \ + (locale.MON_1, locale.MON_2, locale.MON_3, locale.MON_4, + locale.MON_4, locale.MON_6, locale.MON_7, locale.MON_8, + locale.MON_9, locale.MON_10, locale.MON_11, locale.MON_12)): + html += '<option value="%d">%s</option>\n' % (i, locale.nl_langinfo(langinfo_constant)) + html += '</select>\n' + html += u'<input type="text" length="4" maxlength="4" name="%s_yearfd" value="TODO">' % (name) + elif field['display_type'] == 'SB': + html += u'<select name="%s"><option value="-1">TODO</option></select>' % (name) + elif field['display_type'] == 'TA': + html += u'<textarea name="%s">%s</textarea>' % (name, value) + elif field['display_type'] == 'TF': + html += u'<input type="text" name="%s" value="%s" />' % (name, value) + html += '</td>\n' + + if field_no % 2 == 1: + html += '</tr>\n' + if field_no % 2 == 0: # close if odd number of fields + html += '</tr>\n' + + #return mark_safe(''.join(['%s (%d)<br />' % (f, v['rank']) for f,v in form_fields])) + return mark_safe(html) def __unicode__(self): return "%s #%d" % (self.tracker_id, self.get_public_id())
--- a/static_media/savane/css/tracker.css +++ b/static_media/savane/css/tracker.css @@ -25,6 +25,21 @@ * **********************************************************************/ +table.tracker_item { + width: 100%; + text-align: left; +} +table.tracker_item th { + width: 15%; + font-style: italic; + font-weight: normal; + color: #727272; + font-style: italic; +} +table.tracker_item td.button { + text-align: center; +} + .trackersoriginalsubmission { padding-left: 0.2em; padding-top: 0.5em;
--- a/templates/base.html +++ b/templates/base.html @@ -81,7 +81,7 @@ </p> <div align="right"> - <a href="http://savannah.nongnu.org/projects/savane-cleanup">Powered by Savane</a> + <a href="http://savane-forge.org/">Powered by Savane</a> </div> <!-- footer ends here --> </body>
--- a/templates/tracker/item_form.html +++ b/templates/tracker/item_form.html @@ -21,9 +21,28 @@ {{object.get_summary}} </h1> -<h2>{% trans "Post a comment" %}</h2> +<table class="tracker_item"> +<tr> + <th>{% trans "Submitted by" %}{% trans ": " %}</th> + <td> + {% if object.submitted_by %} + <a href="{% url savane:svmain:user_detail object.submitted_by.username %}" + >{{object.submitted_by.get_full_name}} + <{{object.submitted_by.username}}></a> + {% else %} + {% trans "Anonymous" %} + {% endif %}</td> + <td colspan="2" class="button"><input type="submit" style="font-weight: bold;" value="{% trans "Submit changes and browse items" %}" /> +</tr> +<tr> + <th>{% trans "Submitted on" %}{% trans ": " %}</th> + <td>{{ object.date }}</td> + <td colspan="2" class="button"><input type="submit" value="{% trans "Submit changes and return to this item" %}" /></td> +</tr> +{{object.get_form}} +</table> -<div>{{object.get_form}}</div> +<h2>{% trans "Post a comment" %}</h2> <h2>{% trans "Discussion" %}</h2>