import datetime from django.conf.urls.defaults import * from django.views.generic.simple import direct_to_template from django.views.generic.list_detail import object_list # Uncomment the next two lines to enable the admin: from django.contrib import admin admin.autodiscover() from pyi2phosts.lib.utils import get_b32 from pyi2phosts.extsources.models import ExternalSource from pyi2phosts.postkey.models import i2phost import settings extsources = { 'queryset': ExternalSource.objects.filter(active=True), 'template_name': 'faq.html', 'template_object_name': 'sources', 'extra_context': { 'title': settings.SITE_NAME, } } browse_hosts = { 'queryset': i2phost.objects.filter(activated=True).order_by("-last_seen"), 'template_name': 'browse.html', 'template_object_name': 'host', 'paginate_by': 40, 'extra_context': { 'title': settings.SITE_NAME, } } # FIXME: move to settings day_count = 30 hosts_count = 40 now_date = datetime.datetime.utcnow() start_date = now_date - datetime.timedelta(days=day_count) latest_hosts = { 'queryset': i2phost.objects.filter(activated=True, date_added__range=(start_date, now_date)).order_by("-date_added")[:hosts_count], 'template_name': 'latest.html', 'template_object_name': 'host', 'paginate_by': 40, 'extra_context': { 'title': settings.SITE_NAME, 'day_count': day_count, 'hosts_count': hosts_count, } } urlpatterns = patterns('', url(r'^$', direct_to_template, { 'template': 'index.html', 'extra_context': { 'title': settings.SITE_NAME, 'domain': settings.DOMAIN, 'b64': settings.MY_B64, 'b32': get_b32(settings.MY_B64) } }, name='index'), url(r'^faq/$', object_list, extsources, name='faq'), url(r'^browse/$', object_list, browse_hosts, name='browse'), url(r'^latest/$', object_list, latest_hosts, name='latest'), (r'^search/$', include('pyi2phosts.search.urls')), (r'^postkey/', include('pyi2phosts.postkey.urls')), (r'^jump/', include('pyi2phosts.jump.urls')), # Example: # (r'^pyi2phosts.', include('pyi2phosts.foo.urls')), # Uncomment the admin/doc line below and add 'django.contrib.admindocs' # to INSTALLED_APPS to enable admin documentation: (r'^admin/doc/', include('django.contrib.admindocs.urls')), # Uncomment the next line to enable the admin: (r'^admin/', include(admin.site.urls)), ) if settings.DEBUG: urlpatterns += patterns('', (r'static/(?P.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT, 'show_indexes':True}))