def login_view(request): """Login a User""" form = form_data(request) login(request) return render(request, "registration/login.html", {'form':form})
def create_task(request): created_by = request.user assignable_users = User.objects.filter(is_active=True).order_by(User.USERNAME_FIELD) if request.method == 'POST': title = request.POST.get('task') submitter_mail = request.POST.get('submitter_mail') status = request.POST.get('status') priority = request.POST.get('priority') project_agreement = request.POST.get('project_agreement') table = request.POST.get('table') due_date = datetime.strptime(request.POST.get('due_date'), "%Y-%m-%d") created_date = datetime.strptime(request.POST.get('created_date'),"%Y-%m-%d") created_by = request.POST.get('created_by') assigned_to = request.POST.get('assigned_to') note = request.POST.get('note') task = Task(task=title, submitter_email=submitter_mail, status=status, priority=priority, due_date=due_date, created_date=created_date,created_by_id=created_by, assigned_to_id=assigned_to, project_agreement=project_agreement, table=table, note=note) task.save() form = form_data(request) tasks = Task.objects.all() return render_to_response('tasks/task_index.html', RequestContext(request, { 'tasks':Task.objects.all().order_by('created_date').reverse, 'assignable_users': assignable_users, 'created_by': created_by, 'form': form }))
def task_list(request): # Query_params will hold a dictionary of parameters relating to # a query, to be saved if needed: created_by = request.user assignable_users = User.objects.filter(is_active=True).order_by(User.USERNAME_FIELD) context = {} tasks = Task.objects.select_related() ## sorting tasks sort = request.GET.get('sort', None) if sort: tasks = Task.objects.all().order_by(sort) ## Keyword searching q = request.GET.get('q', None) if q: tasks = Task.objects.filter( Q(task__icontains=q) | Q(due_date__icontains=q) | Q(created_date__icontains=q) | Q(status__icontains=q)| Q(priority__icontains=q) ) ## Task Filtering statuses = request.GET.getlist('status') if statuses: try: statuses = [int(s) for s in statuses] tasks = Task.objects.filter(status=s ) print tasks except ValueError: pass form = form_data(request) tolaActivityData = {} tolaTablesData = {} if request.user.is_authenticated(): tolaActivityData = get_TolaActivity_byUser(request) tolaTablesData = get_TolaTables_data(request) return render_to_response('tasks/task_index.html', RequestContext(request, { 'tasks': tasks.order_by('created_date').reverse, 'assignable_users': assignable_users, 'created_by': created_by, 'status_choices':Task.STATUS_CHOICES, 'form' : form, 'tolaActivityData': tolaActivityData, 'tolaTablesData': tolaTablesData }))
def documentation(request): """ Get Documentation and display them on template """ getDocumentation = DocumentationApp.objects.all() form = form_data(request) return render(request, 'documentation.html', {'getDocumentation': getDocumentation, 'form':form})
def faq(request): """ Get FAQ and display them on template """ getFAQ = FAQ.objects.all() form = form_data(request) return render(request, 'faq.html', {'getFAQ': getFAQ, 'form':form})
def faq(request): """ Get FAQ and display them on template """ getFAQ = FAQ.objects.all() form = form_data(request) return render(request, 'faq.html', {'getFAQ': getFAQ, 'form': form})
def index(request, entry=0): temp = Hackpad('tola',settings.HACKPAD_CLIENT_ID,settings.HACKPAD_SECRET) my_hackpads = temp.list_all() if entry ==0: entry = my_hackpads[0] next = my_hackpads[0] previous = my_hackpads[-1] form = form_data(request) return render_to_response('blog/base.html',RequestContext(request, {'hackpad': my_hackpads, 'entry': entry, 'previous':previous, 'next':next, 'form':form }))
def documentation(request): """ Get Documentation and display them on template """ getDocumentation = DocumentationApp.objects.all() form = form_data(request) return render(request, 'documentation.html', { 'getDocumentation': getDocumentation, 'form': form })
def task(request, task_id): task = get_object_or_404(Task, id=task_id) task_state = get_object_or_404(Task, id=task_id) assignable_users = User.objects.filter(is_active=True).order_by(User.USERNAME_FIELD) form = form_data(request) return render_to_response('tasks/task.html', RequestContext(request, { 'task': task_state, 'form': form, 'assignable_users': assignable_users, 'status_choices':Task.STATUS_CHOICES, 'priority': Task.PRIORITY_CHOICES, 't_status_choices': Ticket.STATUS_CHOICES }))
def contact(request): """ Feedback form """ form = FeedbackForm(initial={'submitter': request.user}) if request.method == 'POST': form = FeedbackForm(request.POST) # A form bound to the POST data if form.is_valid(): # All validation rules pass form.save() messages.error(request, 'Thank you', fail_silently=False) else: messages.error(request, 'Invalid', fail_silently=False) print form.errors form = form_data(request) return render(request, "contact.html", {'form': form, 'helper': FeedbackForm.helper, 'form':form})
def contact(request): """ Feedback form """ form = FeedbackForm(initial={'submitter': request.user}) if request.method == 'POST': form = FeedbackForm(request.POST) # A form bound to the POST data if form.is_valid(): # All validation rules pass form.save() messages.error(request, 'Thank you', fail_silently=False) else: messages.error(request, 'Invalid', fail_silently=False) print form.errors form = form_data(request) return render(request, "contact.html", { 'form': form, 'helper': FeedbackForm.helper, 'form': form })
def index(request, entry=0): temp = Hackpad('tola', settings.HACKPAD_CLIENT_ID, settings.HACKPAD_SECRET) my_hackpads = temp.list_all() if entry == 0: entry = my_hackpads[0] next = my_hackpads[0] previous = my_hackpads[-1] form = form_data(request) return render_to_response( 'blog/base.html', RequestContext( request, { 'hackpad': my_hackpads, 'entry': entry, 'previous': previous, 'next': next, 'form': form }))
def login_view(request): """Login a User""" form = form_data(request) password = username = error_message = '' if request.POST: username = request.POST['username'] password = request.POST['password'] logged_user = authenticate(username=username, password=password) if logged_user is not None: if logged_user.is_active: login(request, user) return HttpResponseRedirect('/home') error_message = 'You are profile Status is inactive. Contact the admin.' error_message = 'Kindly confirm your Credentials (Both Username and Password are case sensitive).' return render(request, "registration/login.html", { 'form': form, 'error_message': error_message }) login(request) return render(request, "registration/login.html", {'form': form})
def home(request): tickets = Ticket.objects.all().values('status').annotate( total=Count('status')).order_by('total') recent_tickets = Ticket.objects.all().exclude( status__in='4').order_by('-created')[:5] votes_tickets = Ticket.objects.all().exclude(status__in='4').filter( type=2).order_by('-votes')[:5] num_tickets = len(Ticket.objects.filter(status__in=[1, 2, 3])) closed_resolved = 0 assigned_to_me = 0 created_by_me = 0 closed = [] tome = [] byme = [] num_tasks = 0 recent_tasks = [] tasks_created = [] total_tasks_created = 0 tasks_assigned = [] total_tasks_assigned = 0 tasks_completed = [] total_tasks_completed = 0 if (request.user.is_authenticated()): #tickets # open & reopened tickets closedresolved = Ticket.objects.select_related('queue').filter( assigned_to=request.user, status__in=[Ticket.CLOSED_STATUS, Ticket.RESOLVED_STATUS], ) closed = (closedresolved).order_by('-created')[:5] closed_resolved = len(closedresolved) # Tickets assigned to current user assigned_tome = Ticket.objects.select_related('queue').filter( assigned_to=request.user, ).exclude( status__in=[Ticket.CLOSED_STATUS, Ticket.RESOLVED_STATUS], ) tome = (assigned_tome).order_by('-created')[:5] assigned_to_me = len(assigned_tome) # Tickets created by current user created_byme = Ticket.objects.select_related('queue').filter( submitter_email=request.user.email, ).exclude( status__in=[Ticket.CLOSED_STATUS, Ticket.RESOLVED_STATUS], ) byme = (created_byme).order_by('-created')[:5] created_by_me = len(created_byme) #Tasks tasks = Task.objects.filter(created_by=request.user) #tasks created by user tasks_created = (tasks).exclude( status__in=([3, 4])).order_by('created_date') total_tasks_created = len(tasks_created) #tasks assigned to the user tasks_assigned = Task.objects.filter( assigned_to_id=request.user).exclude( status__in=([3, 4])).order_by('created_date') total_tasks_assigned = len(tasks_assigned) #tasks completed by the user tasks_completed = (tasks).filter( status__in='3').order_by('created_date') total_tasks_completed = len(tasks_completed) #recent tasks recent_tasks = Task.objects.filter( Q(created_by=request.user) | Q(assigned_to=request.user)).exclude( status__in=([3, 4])).order_by('created_date') num_tasks = recent_tasks.count #create ticket modal assignable_users = User.objects.filter(is_active=True).order_by( User.USERNAME_FIELD) form = form_data(request) users = get_current_users() return render(request, 'home.html', {'home_tab': 'active', 'tickets': tickets, \ 'recent_tickets': recent_tickets,'votes_tickets': votes_tickets, 'num_tickets': num_tickets, 'recent_tasks': recent_tasks, \ 'closed_resolved': closed_resolved,'assigned_to_me':assigned_to_me,'created_by_me':created_by_me,\ 'closed':closed,'tome':tome,'byme':byme, 'tasks_created': tasks_created, 'tasks_assigned': tasks_assigned, \ 'num_tasks': num_tasks, 'total_tasks_created': total_tasks_created, \ 'total_tasks_assigned': total_tasks_assigned, 'tasks_completed': tasks_completed, 'total_tasks_completed': total_tasks_completed,\ 'logged_users':users, 'form':form, 'helper':form.helper})
assigned_to_id=user_id).exclude( status__in=([3, 4])).order_by('created_date') tasks_assigned = all_tasks_assigned.reverse total_tasks_assigned = len(all_tasks_assigned) #tasks completed by the user all_tasks_completed = (tasks).filter( status__in='3').order_by('created_date') tasks_completed = all_tasks_completed.reverse total_tasks_completed = len(all_tasks_completed) except Exception, e: pass logged_users = logged_in_users(request) form = form_data(request) return render(request, "user.html", {'all_tickets': all_tickets,'total_tickets': total_tickets, \ 'logged_users': logged_users, 'username': username,'tickets_created': tickets_created, 'total_tickets_created':total_tickets_created, \ 'tickets_assigned': tickets_assigned, 'total_tickets_assigned': total_tickets_assigned, 'tickets_closed_resolved': tickets_closed_resolved, \ 'total_tickets_closed_resolved': total_tickets_closed_resolved,'tasks_created': tasks_created, 'tasks_assigned': tasks_assigned, \ 'total_tasks': total_tasks, 'total_tasks_created': total_tasks_created,'total_tasks_assigned': total_tasks_assigned, 'tasks_completed': tasks_completed,\ 'total_tasks_completed': total_tasks_completed, 'form': form}) def home(request): tickets = Ticket.objects.all().values('status').annotate( total=Count('status')).order_by('total') recent_tickets = Ticket.objects.all().exclude(
#tasks assigned to the user tasks_assigned = Task.objects.filter(assigned_to_id=user_id).exclude(status__in=([3,4])).order_by('created_date')[:5] total_tasks_assigned = len(tasks_assigned) #tasks completed by the user tasks_completed = (tasks).filter(status__in='3').order_by('created_date')[:5] total_tasks_completed = len (tasks_completed) except Exception, e: pass logged_users = logged_in_users(request) form = form_data(request) return render(request, "user.html", {'all_tickets': all_tickets,'total_tickets': total_tickets, 'all_tasks': all_tasks, \ 'logged_users': logged_users, 'username': username,'tickets_created': tickets_created, 'total_tickets_created':total_tickets_created, \ 'tickets_assigned': tickets_assigned, 'total_tickets_assigned': total_tickets_assigned, 'tickets_closed_resolved': tickets_closed_resolved, \ 'total_tickets_closed_resolved': total_tickets_closed_resolved,'tasks_created': tasks_created, 'tasks_assigned': tasks_assigned, \ 'total_tasks': total_tasks, 'total_tasks_created': total_tasks_created,'total_tasks_assigned': total_tasks_assigned, 'tasks_completed': tasks_completed,\ 'total_tasks_completed': total_tasks_completed, 'form': form}) def home(request): #Ping Tola servers activity_up = os.system("ping -c 1 " + "http://tola-activity.mercycorps.org") data_up = os.system("ping -c 1 " + "http://tola-tables.mercycorps.org") #GitHub releases for status
def task_list(request): # Query_params query_params = { 'filtering': {}, 'sorting': None, 'keyword': None, 'other_filter': None, 'sortreverse': True, } tasks = Task.objects.filter(Q(created_by = request.user) | Q(assigned_to = request.user)).exclude(status__in = [ 4]) task_obj = Task.objects.filter(Q(created_by = request.user) | Q(assigned_to = request.user)).exclude(status__in = [4]) assignable_users = User.objects.filter(is_active=True).order_by(User.USERNAME_FIELD) context = {} ## sorting tasks sort_tasks(request,query_params) #searching search_tasks(request, context, query_params) ## Task Filtering #status statuses = request.GET.getlist('status') if statuses: try: statuses = [int(s) for s in statuses] query_params['filtering']['status__in'] = statuses except ValueError: pass #priorities priorities = request.GET.getlist('priority') if priorities: try: priorities = [int(p) for p in priorities] query_params['filtering']['priority__in'] = priorities except ValueError: pass #Assigned to assigned = request.GET.getlist('assigned_to') if assigned: try: assigned = [int(a) for a in assigned] query_params['filtering']['assigned_to__id__in'] = assigned except ValueError: pass #Due Dates due_from = request.GET.get('due_from') if due_from: query_params['filtering']['due_date__gte'] = due_from due_to = request.GET.get('due_to') if due_to: query_params['filtering']['due_date__lte'] = due_to #Created dates created_from = request.GET.get('created_from') if created_from: query_params['filtering']['created_date__gte'] = created_from created_to = request.GET.get('created_to') if created_to: query_params['filtering']['created_date__lte'] = created_to form = form_data(request) tolaActivityData = {} tolaTablesData = {} tasks_assigned = {} tasks_created = {} total_tasks_assigned = 0 total_tasks_created = 0 if request.user.is_authenticated(): tolaActivityData = get_TolaActivity_byUser(request) tolaTablesData = get_TolaTables_data(request) # User tasks tasks_created = Task.objects.filter(created_by = request.user).exclude(status__in = '4') total_tasks_created = len(tasks_created) created = request.GET.get('created') if created: tasks = tasks_created #assigned_to tasks_assigned = Task.objects.filter(assigned_to = request.user).exclude(status__in = '4') total_tasks_assigned = len(tasks_assigned) assigned = request.GET.get('assigned') if assigned: tasks = tasks_assigned try: tasks = apply_query(tasks, query_params) if query_params['filtering']: tasks = apply_query(task_obj, query_params) except ValidationError: # invalid parameters in query, return default query query_params = { 'filtering': {'status__in': [1, 2,3]}, 'sorting': 'created_date', } tasks = apply_query(task_obj, query_params) querydict = request.GET.copy() return render_to_response('tasks/task_index.html', RequestContext(request, { 'query_string': querydict.urlencode(), 'query': request.GET.get('q'), 'tasks': tasks.reverse(), 'query_params': query_params, 'tasks_assigned': tasks_assigned, 'total_tasks': len(tasks), 'tasks_created': tasks_created, 'total_tasks_created': total_tasks_created, 'total_tasks_assigned': total_tasks_assigned, 'assignable_users': assignable_users, 'status_choices':Task.STATUS_CHOICES, 'priority': Task.PRIORITY_CHOICES, 'form' : form, 'tolaActivityData': tolaActivityData, 'tolaTablesData': tolaTablesData, 't_status_choices': Ticket.STATUS_CHOICES }))