summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAamir Khan <syst3m.w0rm@gmail.com>2012-06-20 02:05:08 -0400
committerAamir Khan <syst3m.w0rm@gmail.com>2012-06-20 02:05:08 -0400
commitcda8691fa5ce421ae12313da13dadc8c7f80aeb6 (patch)
tree3d515778936e452a5837dc12b0016a1b05137f7a
parent5504509fb4312dabc2fb6bf0a6acbaccf1c2fe5f (diff)
downloadhyperkitty-cda8691fa5ce421ae12313da13dadc8c7f80aeb6.tar.gz
hyperkitty-cda8691fa5ce421ae12313da13dadc8c7f80aeb6.tar.xz
hyperkitty-cda8691fa5ce421ae12313da13dadc8c7f80aeb6.zip
Adding thread.py for thread level views
-rw-r--r--urls.py9
-rw-r--r--views/thread.py39
2 files changed, 45 insertions, 3 deletions
diff --git a/urls.py b/urls.py
index 633cb1c..175b3c0 100644
--- a/urls.py
+++ b/urls.py
@@ -56,18 +56,21 @@ urlpatterns = patterns('',
url(r'^addcategory/(?P<mlist_fqdn>.*@.*)\/(?P<email_id>.*)/$',
'views.pages.add_category'),
-
+ ### MESSAGE LEVEL VIEWS ###
# Vote a message
url(r'^vote/(?P<mlist_fqdn>.*@.*)/(?P<messageid>.+)/$',
'views.message.vote'),
+ ### THREAD LEVEL VIEWS ###
+ # Add Tag
+ url(r'^addtag/(?P<mlist_fqdn>.*@.*)\/(?P<email_id>.*)/$',
+ 'views.thread.add_tag'),
+
# Search Tag
url(r'^tag/(?P<mlist_fqdn>.*@.*)\/(?P<tag>.*)\/(?P<page>\d+)/$',
'views.pages.search_tag'),
url(r'^tag/(?P<mlist_fqdn>.*@.*)\/(?P<tag>.*)/$',
'views.pages.search_tag'),
- url(r'^addtag/(?P<mlist_fqdn>.*@.*)\/(?P<email_id>.*)/$',
- 'views.pages.add_tag'),
# REST API
url(r'^api/$', 'views.pages.api'),
diff --git a/views/thread.py b/views/thread.py
new file mode 100644
index 0000000..c11dc3f
--- /dev/null
+++ b/views/thread.py
@@ -0,0 +1,39 @@
+import logging
+import django.utils.simplejson as simplejson
+
+from django import forms
+from django.http import HttpResponse, HttpResponseRedirect
+from django.template import RequestContext, loader
+from django.conf import settings
+from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger, InvalidPage
+from django.contrib.auth.decorators import (login_required,
+ permission_required,
+ user_passes_test)
+from gsoc.models import Rating
+
+logger = logging.getLogger(__name__)
+
+
+@login_required
+def add_tag(request, mlist_fqdn, email_id):
+ """ Add a tag to a given message. """
+ t = loader.get_template('simple_form.html')
+ if request.method == 'POST':
+ form = AddTagForm(request.POST)
+ if form.is_valid():
+ print "THERE WE ARE"
+ # TODO: Add the logic to add the tag
+ if form.data['from_url']:
+ return HttpResponseRedirect(form.data['from_url'])
+ else:
+ return HttpResponseRedirect('/')
+ else:
+ form = AddTagForm()
+ c = RequestContext(request, {
+ 'app_name': settings.APP_NAME,
+ 'list_address': mlist_fqdn,
+ 'email_id': email_id,
+ 'addtag_form': form,
+ })
+ return HttpResponse(t.render(c))
+