示例#1
0
def status_add(request, response_format='html'):
    "TicketStatus add"

    if not request.user.profile.is_admin('anaf.services'):
        return user_denied(
            request,
            message=
            "You don't have administrator access to the Service Support module"
        )

    if request.POST:
        if 'cancel' not in request.POST:
            status = TicketStatus()
            form = TicketStatusForm(request.user.profile,
                                    request.POST,
                                    instance=status)
            if form.is_valid():
                status = form.save()
                status.set_user_from_request(request)
                return HttpResponseRedirect(
                    reverse('services_status_view', args=[status.id]))
        else:
            return HttpResponseRedirect(reverse('services_settings_view'))
    else:
        form = TicketStatusForm(request.user.profile)

    context = _get_default_context(request)
    context.update({'form': form})

    return render_to_response('services/status_add',
                              context,
                              context_instance=RequestContext(request),
                              response_format=response_format)
示例#2
0
def status_edit(request, status_id, response_format='html'):
    "TicketStatus edit"

    status = get_object_or_404(TicketStatus, pk=status_id)
    if not request.user.profile.has_permission(status, mode='w') \
            and not request.user.profile.is_admin('anaf'):
        return user_denied(request,
                           "You don't have access to this Ticket Status",
                           response_format)

    if request.POST:
        if 'cancel' not in request.POST:
            form = TicketStatusForm(request.user.profile,
                                    request.POST,
                                    instance=status)
            if form.is_valid():
                status = form.save()
                return HttpResponseRedirect(
                    reverse('services_status_view', args=[status.id]))
        else:
            return HttpResponseRedirect(
                reverse('services_status_view', args=[status.id]))
    else:
        form = TicketStatusForm(request.user.profile, instance=status)

    context = _get_default_context(request)
    context.update({'form': form, 'status': status})

    return render_to_response('services/status_edit',
                              context,
                              context_instance=RequestContext(request),
                              response_format=response_format)
示例#3
0
文件: views.py 项目: rushil02/Vidzert
def submit_ticket(request):
    if request.user.is_authenticated():
        ticket_form = TicketAuthenticatedUserForm(request.POST or None)
    else:
        ticket_form = TicketAnonymousUserForm(request.POST or None)
    message_form = MessageForm(request.POST or None)
    ticket_status_form = TicketStatusForm(request.POST or None)
    context = {
        "ticket_form": ticket_form,
        "message_form": message_form,
        "ticket_status_form": ticket_status_form
    }

    if request.POST:
        if ticket_form.is_valid() and message_form.is_valid():
            ticket = ticket_form.save(commit=False)
            if request.user.is_authenticated():
                ticket.submitter_email = request.user.email
                ticket.submitter = request.user

            ticket.save()

            message = message_form.save(commit=False)
            message.ticket = ticket
            message.sender_type = 'U'
            if request.user.is_authenticated():
                message.sender = request.user
            message.save()
            return HttpResponse("Ticket Reference Number is: " + ticket.ref_no)
        else:
            return render(request, 'helpdesk/submit_ticket.html', context)
    else:
        return render(request, 'helpdesk/submit_ticket.html', context)
示例#4
0
文件: views.py 项目: rushil02/Vidzert
def check_ticket(request):
    ticket_status_form = TicketStatusForm(request.POST or None)
    if request.POST and ticket_status_form.is_valid():
        ref_no = request.POST.get('ticket_ref_no')
        try:
            ticket = Ticket.objects.get(ref_no=ref_no)
        except:
            return submit_ticket(request)
        return redirect('/helpdesk/view/' + str(ticket.uuid) + '/')
    else:
        return submit_ticket(request)