def twits(request): all_twits = Twit.get_twits() paginator = Paginator(all_twits, FEEDS_NUM_PAGES) twits = paginator.page(1) from_twit = -1 if twits: from_twit = twits[0].id return render(request, 'twits/twits.html', { 'twits': twits, 'from_twit': from_twit, 'page': 1, })
def update(request): first_twit = request.GET.get('first_twit') last_twit = request.GET.get('last_twit') twit_source = request.GET.get('twit_source') twits = Twit.get_twits().filter(id__range=(last_twit, first_twit)) if twit_source != 'all': twits = twits.filter(user__id=twit_source) dump = {} for twit in twits: dump[twit.pk] = {'likes': twit.likes, 'comments': twit.comments} data = json.dumps(dump) return HttpResponse(data, content_type='application/json')
def load(request): from_twit = request.GET.get('from_twit') page = request.GET.get('page') twit_source = request.GET.get('twit_source') all_twits = Twit.get_twits(from_twit) if twit_source != 'all': all_twits = all_twits.filter(user__id=twit_source) paginator = Paginator(all_twits, FEEDS_NUM_PAGES) try: twits = paginator.page(page) except PageNotAnInteger: return HttpResponseBadRequest() except EmptyPage: twits = [] html = u'' csrf_token = unicode(csrf(request)['csrf_token']) for twit in twits: html = u'{0}{1}'.format(html, render_to_string('twits/partial_twit.html', { 'twit': twit, 'user': request.user, 'csrf_token': csrf_token }) ) return HttpResponse(html)