def all_tasks(request, user=False): if ( not request.user.is_authenticated() and not user ): return HttpResponseRedirect('/') args = {} if ( user == False and request.user.is_authenticated() ): args['tags'] = Tag.objects.filter(Q(owner=request.user) | Q( users=request.user) | Q(viewers=request.user)).order_by("name") args['tasks'] = apply_task_filter(request, ProjectTask.objects.filter( Q(creator=request.user) | Q(assigned=request.user)).distinct()).order_by('-startDate') args['projects'] = Project.objects.filter( Q(manager=request.user) | Q(members=request.user)).distinct() else: manager = User.objects.get(username__iexact=user) args['username'] = user args['usertasks'] = True if ( request.user.is_authenticated() ): args['tags'] = Tag.objects.filter(Q(owner=request.user) | Q( users=request.user) | Q(viewers=request.user) | Q(owner=manager,public=True)).order_by("name") args['tasks'] = apply_task_filter(request, ProjectTask.objects.filter( Q(creator=manager) ).filter( Q(assigned=request.user )|Q(public=True) ).distinct() ).order_by('-startDate') args['projects'] = Project.objects.filter(manager=manager).filter( Q(public=True)|Q(members=request.user) ).distinct().order_by("name") else: args['tags'] = Tag.objects.filter( Q(owner=manager,public=True)).order_by("name") args['tasks'] = apply_task_filter(request, ProjectTask.objects.filter( Q(creator=manager) ).filter( Q(public=True) ).distinct() ).order_by('-startDate') args['projects'] = Project.objects.filter(manager=manager).filter( Q(public=True) ).distinct().order_by("name") args['other_name'] = 'All Tasks' args['showmore'] = False args['other_num'] = args['tasks'].count() args['num_tasks'] = args['other_num'] args['alltasks'] = True args['filters'] = get_task_filters(request) set_filter_message(request) return render_to_response('task_list.html', RequestContext(request, args))
def user_all_tasks(request, assignee=False, userange=True): """ Displays all of the tasks created by the logged in user """ args = {} args['tags'] = Tag.objects.filter(Q(owner=request.user) | Q( users=request.user) | Q(viewers=request.user)).order_by("name") if (not assignee): args['notodo'] = True tasks = apply_task_filter( request, ProjectTask.objects.filter(creator=request.user)) else: tasks = apply_task_filter( request, ProjectTask.objects.filter(assigned=request.user) ) set_filter_message(request) args['user'] = request.user args['projects'] = Project.objects.filter( Q(manager=request.user) | Q(members=request.user)).distinct() args['other_name'] = 'All Other Tasks' args['showmore'] = True if userange: args['tasks'] = tasks.filter(inProgress=False).filter( completed=False).order_by('-startDate').all()[0:5] args['task_wip'] = tasks.filter(inProgress=True).filter( completed=False).order_by('-startDate').all()[0:5] args['done_tasks'] = tasks.filter( completed=True).order_by('-startDate').all()[0:5] else: args['task_wip'] = tasks.filter(inProgress=True).filter( completed=False).order_by('-startDate').all() args['tasks'] = tasks.filter(inProgress=False).filter( completed=False).order_by('-startDate').all() args['done_num'] = tasks.filter(completed=True).count() args['wip_num'] = tasks.filter( inProgress=True).filter(completed=False).count() args['other_num'] = tasks.filter( inProgress=False).filter(completed=False).count() args['num_tasks'] = len(tasks) args['filters'] = get_task_filters(request) return render_to_response('task_list.html', RequestContext(request, args))
def list_tags(request): """ Displays a list of the user's tags """ tags = Tag.objects.filter(Q(owner=request.user) | Q( users=request.user) | Q(viewers=request.user)).filter(visible=True) set_filter_message(request) pageData = {} pageData['tags'] = tags pageData['user'] = request.user pageData['num_tags'] = tags.count() return render_to_response('tag_list.html', RequestContext(request, pageData))
def tasks_by_status(request, assignee=False, status='inprogress'): """ Displays the user's tasks and todo filtered by the status. """ inprogress = False completed = False name = 'Tasks' if (status == 'inprogress'): inprogress = True name = 'Tasks in Progress' if (status == 'complete'): completed = True name = 'Completed Tasks' args = {} args['tags'] = Tag.objects.filter(Q(owner=request.user) | Q( users=request.user) | Q(viewers=request.user)).order_by("name") if (not assignee): args['notodo'] = True tasks = apply_task_filter(request, ProjectTask.objects.filter( creator=request.user).order_by('-startDate')) else: tasks = apply_task_filter( request, ProjectTask.objects.filter( assigned=request.user).order_by('-startDate') ) set_filter_message(request) args['user'] = request.user args['projects'] = Project.objects.filter( Q(manager=request.user) | Q(members=request.user)).distinct() args['tasks'] = tasks.filter(inProgress=inprogress).filter( completed=completed).all() args['other_num'] = tasks.filter( inProgress=inprogress).filter(completed=completed).count() args['other_name'] = name args['num_tasks'] = args['other_num'] args['other_showmore'] = False args['filters'] = get_task_filters(request) return render_to_response('task_list.html', RequestContext(request, args))