def my_issue_list(request, *args, **kwargs): """ -show issues to vote on in different sortings based on collective voting knowlegde. -show issue form to propose issue, if you have the game rights """ template_name= "dashboard/my_issues.html" issueform = propose_issue(request) issues = Issue.objects.select_related().order_by('-time_stamp') issues = issues.filter( user=request.user ) if 'sortorder' in kwargs: issues, page = order_issues(request, kwargs['sortorder'], issues) else: page = paginate(request, issues) issues = page.object_list c = RequestContext(request, { 'issueform' : issueform, 'blank_votes' : blank_votes.items(), 'possible_votes' : possible_votes, 'issues' : issues, 'page' : page, 'actions' : actions.get_actions(request.user), }) t = loader.get_template(template_name) return HttpResponse(t.render(c))
def issue_list(request, *args, **kwargs): """ shows issues to vote on in different sortings based on collective knowlegde from votings on them """ template_name= "issue/issue_list.html" if not request.method == "GET": return HttpResponseBadRequest issues = Issue.objects.select_related().order_by('-time_stamp') issues = issues.filter( is_draft=False ) if 'sortorder' in kwargs: issues, page = order_issues(request, kwargs['sortorder'], issues) elif 'tag' in kwargs: tag = "\"%s\"" % kwargs['tag'] issues = Issue.tagged.with_any(tag) page = paginate(request, issues) issues = page.object_list else: page = paginate(request, issues) issues = page.object_list flash_msg = request.session.get("flash_msg","") if flash_msg: del request.session['flash_msg'] c = RequestContext(request, { 'blank_votes' : blank_votes.items(), 'possible_votes' : possible_votes, 'issues' : issues, 'page' : page, 'votedata' : Vote, 'flash_msg' : flash_msg, }) t = loader.get_template(template_name) return HttpResponse(t.render(c))
def my_votes_list(request, *args, **kwargs): """ Show user votes """ template_name = "dashboard/my_votes.html" if not request.method == "GET": return HttpResponseBadRequest myvotes = Vote.objects.get_user_votes(request.user) # XXX on each vote object we need to do a query to # its voted on object. tagging has an efficient way for that in tagging.generic. page = paginate(request, myvotes, 10) c = RequestContext(request, { 'blank_votes' : blank_votes.items(), 'possible_votes' : possible_votes, 'vote' : Vote, 'page' : page, 'my_votes' : page.object_list }) t = loader.get_template(template_name) return HttpResponse(t.render(c))
def issue_list(request, *args, **kwargs): """ shows issues to vote on in different sortings based on collective knowlegde from votings on them Note by using the keyword arguments ``template_name``, ``extra_context`` and ``issues`` one can reuse most or all of the display-an-issue-code (no need to reimplement that stuff). How to use: 1 build a view function that calls and returns this view 2 construct a QuerySet of Issues pass it in with as ``issues`` 3 save a (edited) copy of "issue/issue_list.html" somewhere 4 pass in the template location as ``template_name`` 5 pass in a dictionary of extra context variables as ``extra_context`` These keywords were added whilst constructing a page that shows a user's issues without reimplementing this function etc. """ template_name = kwargs.get('template_name', "issue/issue_list.html") extra_context = kwargs.get('extra_context', dict()) page = False if kwargs.has_key('issues'): issues = kwargs['issues'] else: issues = Issue.active.select_related().order_by('-time_stamp') if kwargs.get('sortorder', False): #pagination is now done on vote table min_tv = kwargs.get('min_tv', 6) subset = kwargs.get('subset', None) page, issues = order_issues(request, kwargs['sortorder'], issues, min_tv, subset) if not page: page = paginate(request, issues) issues = page.object_list #XXX to be changed. flash_msg = request.session.get("flash_msg","") if flash_msg: del request.session['flash_msg'] context = {'current' : 'all_issues'} context.update(extra_context) context.update({ 'blank_votes' : blank_votes.items(), 'issues' : issues, 'page' : page, 'votedata' : Vote, 'flash_msg' : flash_msg, 'sortorder' : kwargs.get('sortorder', ''), 'total_issues' : Issue.active.count(), 'total_votes' : get_user_votes(request) }) c = RequestContext(request, context) t = loader.get_template(template_name) return HttpResponse(t.render(c))
def issue_list(request, *args, **kwargs): """ shows issues to vote on in different sortings based on collective knowlegde from votings on them Note by using the keyword arguments ``template_name``, ``extra_context`` and ``issues`` one can reuse most or all of the display-an-issue-code (no need to reimplement that stuff). How to use: 1 build a view function that calls and returns this view 2 construct a QuerySet of Issues pass it in with as ``issues`` 3 save a (edited) copy of "issue/issue_list.html" somewhere 4 pass in the template location as ``template_name`` 5 pass in a dictionary of extra context variables as ``extra_context`` These keywords were added whilst constructing a page that shows a user's issues without reimplementing this function etc. """ template_name = kwargs.get('template_name', "issue/issue_list.html") extra_context = kwargs.get('extra_context', dict()) page = False if kwargs.has_key('issues'): issues = kwargs['issues'] else: issues = Issue.active.select_related().order_by('-time_stamp') if kwargs.get('sortorder', False): #pagination is now done on vote table min_tv = kwargs.get('min_tv', 6) subset = kwargs.get('subset', None) page, issues = order_issues(request, kwargs['sortorder'], issues, min_tv, subset) if not page: page = paginate(request, issues) issues = page.object_list #XXX to be changed. flash_msg = request.session.get("flash_msg", "") if flash_msg: del request.session['flash_msg'] context = {'current': 'all_issues'} context.update(extra_context) context.update({ 'blank_votes': blank_votes.items(), 'issues': issues, 'page': page, 'votedata': Vote, 'flash_msg': flash_msg, 'sortorder': kwargs.get('sortorder', ''), 'total_issues': Issue.active.count(), 'total_votes': get_user_votes(request) }) c = RequestContext(request, context) t = loader.get_template(template_name) return HttpResponse(t.render(c))