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   -#!/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   -#!/usr/bin/env python
2   -# encoding: utf-8
src/colab/deprecated/views/other.py
... ... @@ -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 11 admin.autodiscover()
12 12  
13 13 urlpatterns = patterns('',
14   - url(r'^$', 'colab.deprecated.views.other.home', name='home'),
  14 + url(r'^$', 'home.views.index', name='home'),
15 15  
16 16 url(r'^search/', include('search.urls')),
17 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 @@
  1 +from django.contrib import admin
  2 +
  3 +# Register your models here.
... ...
src/home/models.py 0 → 100644
... ... @@ -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 @@
  1 +from django.test import TestCase
  2 +
  3 +# Create your tests here.
... ...
src/home/views.py 0 → 100644
... ... @@ -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)
... ...