Commit 1657ac121170ffcfabb81792563cdc286d12b973

Authored by Sergio Oliveira
1 parent f8747b74

Moving home to it's own app

src/colab/deprecated/fixtures/generate_fixtures.sh
@@ -1,3 +0,0 @@ @@ -1,3 +0,0 @@
1 -#!/bin/bash  
2 -  
3 -python ../manage.py dumpdata --indent=2 auth.user super_archives > sample_data.json  
src/colab/deprecated/views/__init__.py
@@ -1,2 +0,0 @@ @@ -1,2 +0,0 @@
1 -#!/usr/bin/env python  
2 -# encoding: utf-8  
src/colab/deprecated/views/other.py
@@ -1,85 +0,0 @@ @@ -1,85 +0,0 @@
1 -#!/usr/bin/env python  
2 -# encoding: utf-8  
3 -"""  
4 -other.py  
5 -  
6 -Created by Sergio Campos on 2012-01-10.  
7 -"""  
8 -  
9 -import datetime  
10 -  
11 -from django.template import RequestContext  
12 -from django.http import HttpResponseNotAllowed  
13 -from django.shortcuts import render_to_response  
14 -from django.utils import timezone  
15 -from django.utils.translation import ugettext as _  
16 -  
17 -from haystack.query import SearchQuerySet  
18 -  
19 -from super_archives import queries  
20 -  
21 -  
22 -def home(request):  
23 - """Index page view"""  
24 -  
25 - latest_threads = queries.get_latest_threads()  
26 - hottest_threads = queries.get_hottest_threads()  
27 -  
28 - count_types = {}  
29 - six_months = timezone.now() - datetime.timedelta(days=180)  
30 - for type in ['wiki', 'thread', 'changeset', 'ticket']:  
31 - count_types[type] = SearchQuerySet().filter(  
32 - type=type,  
33 - modified__gte=six_months,  
34 - ).count()  
35 -  
36 - template_data = {  
37 - 'hottest_threads': hottest_threads[:6],  
38 - 'latest_threads': latest_threads[:6],  
39 - 'type_count': count_types,  
40 - 'latest_results': SearchQuerySet().all().order_by(  
41 - '-modified', '-created'  
42 - )[:6],  
43 - }  
44 - return render_to_response('home.html', template_data,  
45 - context_instance=RequestContext(request))  
46 -  
47 -  
48 -def search(request):  
49 - if request.method != 'GET':  
50 - return HttpResponseNotAllowed(['GET'])  
51 -  
52 - query = request.GET.get('q')  
53 - sort = request.GET.get('o')  
54 - type_ = request.GET.get('type')  
55 - try:  
56 - page_number = int(request.GET.get('p', '1'))  
57 - except ValueError:  
58 - page_number = 1  
59 -  
60 - try:  
61 - results_per_page = int(request.GET.get('per_page', 16))  
62 - except ValueError:  
63 - results_per_page = 16  
64 -  
65 - filters = {  
66 - 'Type': type_,  
67 - }  
68 -  
69 - query = solrutils.build_query(query, filters)  
70 -  
71 - # Query Solr for results  
72 - solr_dict_resp = solrutils.select(query, results_per_page,  
73 - page_number, sort)  
74 -  
75 - docs = solrutils.SolrPaginator(solr_dict_resp, page_number)  
76 -  
77 - template_data = {  
78 - 'docs': docs,  
79 - 'anonymous': _(u'anônimo'),  
80 - 'q': query,  
81 - 'type': type_,  
82 - }  
83 -  
84 - return render_to_response('search.html', template_data,  
85 - RequestContext(request))  
src/colab/urls.py
@@ -11,7 +11,7 @@ from super_archives.models import Message @@ -11,7 +11,7 @@ from super_archives.models import Message
11 admin.autodiscover() 11 admin.autodiscover()
12 12
13 urlpatterns = patterns('', 13 urlpatterns = patterns('',
14 - url(r'^$', 'colab.deprecated.views.other.home', name='home'), 14 + url(r'^$', 'home.views.index', name='home'),
15 15
16 url(r'^search/', include('search.urls')), 16 url(r'^search/', include('search.urls')),
17 url(r'open-data/$', TemplateView.as_view(template_name='open-data.html'), 17 url(r'open-data/$', TemplateView.as_view(template_name='open-data.html'),
src/home/__init__.py 0 → 100644
src/home/admin.py 0 → 100644
@@ -0,0 +1,3 @@ @@ -0,0 +1,3 @@
  1 +from django.contrib import admin
  2 +
  3 +# Register your models here.
src/home/models.py 0 → 100644
@@ -0,0 +1,3 @@ @@ -0,0 +1,3 @@
  1 +from django.db import models
  2 +
  3 +# Create your models here.
src/home/tests.py 0 → 100644
@@ -0,0 +1,3 @@ @@ -0,0 +1,3 @@
  1 +from django.test import TestCase
  2 +
  3 +# Create your tests here.
src/home/views.py 0 → 100644
@@ -0,0 +1,31 @@ @@ -0,0 +1,31 @@
  1 +from django.shortcuts import render
  2 +
  3 +from django.utils import timezone
  4 +
  5 +from haystack.query import SearchQuerySet
  6 +from super_archives import queries
  7 +
  8 +
  9 +def index(request):
  10 + """Index page view"""
  11 +
  12 + latest_threads = queries.get_latest_threads()
  13 + hottest_threads = queries.get_hottest_threads()
  14 +
  15 + count_types = {}
  16 + six_months = timezone.now() - timezone.timedelta(days=180)
  17 + for type in ['wiki', 'thread', 'changeset', 'ticket']:
  18 + count_types[type] = SearchQuerySet().filter(
  19 + type=type,
  20 + modified__gte=six_months,
  21 + ).count()
  22 +
  23 + context = {
  24 + 'hottest_threads': hottest_threads[:6],
  25 + 'latest_threads': latest_threads[:6],
  26 + 'type_count': count_types,
  27 + 'latest_results': SearchQuerySet().all().order_by(
  28 + '-modified', '-created'
  29 + )[:6],
  30 + }
  31 + return render(request, 'home.html', context)