def _show_form(self, request): t_form = TicketForm(request.POST) context = super(CheckTicketView, self). \ get_context_data(**kwargs) context['form'] = t_form if not t_form.is_valid(): return self.render_to_response(context)
def submit_bug(request): response = pq('<response></response>') if request.method == 'POST': try: choices, initial = utils.get_priorities() form = TicketForm(choices, initial, request.POST) except utils.GadgetError as e: mail.mail_admins('FogBugz Gadget Error', e.msg) form = TicketForm(data=request.POST) if form.is_valid(): try: case = utils.submit_ticket(form.cleaned_data) except utils.GadgetError as e: mail.mail_admins('FogBugz Gadget Error', e.msg) raise RuntimeError(e.msg) response.attr('type', 'success').html(case) else: response.attr('type', 'invalid') # include validation errors in response for field, errors in form.errors.items(): for error in errors: response.append('<error field="%s">%s</error>' % (field, error)) return HttpResponse(response.outerHtml())
def ticketmaker(): form = TicketForm() if form.is_submitted(): ticket = {} result = request.form print(result) alph = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" ticket["FID"] = rd.choice(alph) + rd.choice(alph) + rd.choice( alph) + str(random_with_N_digits(4)) ticket["lastname"] = result["name"].split(" ")[1].upper() ticket["firstname"] = result["name"].split(" ")[0].upper() ticket["namecode"] = str( random_with_N_digits(5)) + "-" + ticket["lastname"] img = qrcode.make(ticket["namecode"]) img.save(f"{os.getcwd()}/static/images/pict0.png", "PNG") if result["radio"] == "bills": ticket["bills"] = "X" else: ticket["coins"] = "X" ticket["money"] = format(float(result["money"]), '.2f') ticket["date"] = convertdate(result["date"]).upper() return render_template("tooth_ticket.html", result=result, ticket=ticket) return render_template("make_ticket.html", form=form)
def ticket_edit(request, ticket_id, response_format='html'): "Ticket edit" context = _get_default_context(request) agent = context['agent'] ticket = get_object_or_404(Ticket, pk=ticket_id) if not request.user.profile.has_permission(ticket, mode='w'): return user_denied(request, message="You don't have access to this Ticket") if request.POST: if 'cancel' not in request.POST: form = TicketForm( request.user.profile, None, agent, request.POST, instance=ticket) if form.is_valid(): ticket = form.save() return HttpResponseRedirect(reverse('services_ticket_view', args=[ticket.id])) else: return HttpResponseRedirect(reverse('services_ticket_view', args=[ticket.id])) else: form = TicketForm( request.user.profile, None, agent, instance=ticket) context.update({'form': form, 'ticket': ticket}) return render_to_response('services/ticket_edit', context, context_instance=RequestContext(request), response_format=response_format)
def new_item(request): ret = check_auth(request) if ret: return ret if request.method == 'POST': print request.POST if request.GET["new"] == "ticket": form = TicketForm(request.POST) print "valid", form.errors if form.is_valid(): a = Ticket() a.title = form.cleaned_data["title"] a.text = form.cleaned_data["text"] a.priority = form.cleaned_data["priority"] a.author = request.user a.save() send_mail_ticket(a.group, "new_ticket") return show_item(request, a.id) form = {"ticket": TicketForm(), "comment": CommentForm()} return render_to_response('ticket_new.html', {'forms': form, }, context_instance=RequestContext(request))
def forms(request): try: choices, initial = utils.get_priorities() form = TicketForm(choices, initial) except utils.GadgetError as e: mail.mail_admins('FogBugz Gadget Error', e.msg) form = TicketForm() return {'ticket_form': form}
def individual_ticket(ticket_id): ticket = get_ticket(int(ticket_id)) form = TicketForm(request.form, ticket) if request.method == 'POST' and form.validate(): update_ticket(form) return redirect(url_for('pending_tickets')) return render_template("ticket.html", form=form)
def post(self, request, *args, **kwargs): t_form = TicketForm(request.POST) if not t_form.is_valid(): context = super(CheckTicketView, self). \ get_context_data(**kwargs) context['form'] = t_form return self.render_to_response(context) ticket = t_form.cleaned_data['ticket'] next = kwargs.get('next') return self._use_ticket(request, ticket, next)
def new_ticket(request, *arg): """ For generating new tickets """ if request.method == 'POST': form = TicketForm(request.POST) if form.is_valid(): t = Ticket() t.ticket_type = form.cleaned_data['ticket_type'] t.project = form.cleaned_data['project'] t.component = form.cleaned_data['component'] t.summary = form.cleaned_data['summary'] t.description = form.cleaned_data['description'] t.created_by = request.user t.updated_by = request.user # workflow related stuff ticket_type = t.ticket_type wm = WorkflowManager() wm.workflow = ticket_type.workflow wm.created_by = request.user wm.save() r = Role.objects.get(id=settings.ROLE_SUBMITTER) p = Participant() p.user = request.user p.role = r p.workflowmanager=wm p.save() t.workflow_manager=wm t.save() wm.start(p) # Generates a confirmation email to send to the new user current_site = Site.objects.get_current() site_name = current_site.name domain = current_site.domain tplt = loader.get_template(settings.NEW_TICKET_EMAIL_TEMPLATE) c = { 'email': request.user.email, 'domain': domain, 'site_name': site_name, 'user': request.user, 'protocol': settings.REGISTRATION_USE_HTTPS and 'https' or 'http', 'ticket': t, } send_mail(_("Confirmation of new ticket on IssueTracker"), tplt.render(Context(c)), None, [request.user.email]) request.user.message_set.create(message=_("The ticket has been"\ " successfully created.")) return HttpResponseRedirect('/ticket/%d'%t.id) else: form = TicketForm() c = RequestContext(request, {'form': form}) return render_to_response('new.html', c)
def editticket(tid): user = g.user t = Ticket.query.get(tid) form = TicketForm(subject=t.subject, body=t.body) if form.validate_on_submit(): import datetime form.populate_obj(t) t.timestamp = datetime.datetime.utcnow() flash("Updated ticket: " + t.subject) db.session.commit() return redirect('/dashboard') return render_template('editticket.html', user=user, ticket=t, form=form)
def editar_ticket(request, id): ticket = Ticket.objects.get(id=id) if request.method == "POST": form = TicketForm(request.POST, instance=ticket) if form.is_valid(): form.save() return redirect("ticket-detalle", id=id) else: form = TicketForm(instance=ticket) return render(request, "ticket_editar.html", { "ticket": ticket, "form": form, })
def newticket(): user = g.user form = TicketForm() if form.validate_on_submit(): import datetime t = Ticket() form.populate_obj(t) t.timestamp = datetime.datetime.utcnow() t.created = datetime.datetime.utcnow() t.user_id = user.id db.session.add(t); db.session.commit() flash('New ticket submitted: ' + form.subject.data) return redirect('/dashboard') return render_template('newticket.html', form=form, user=user)
def new_ticket(event_id): event = get_event(event_id=event_id) form = TicketForm() if form.validate_on_submit(): if ticket_already_added(event, form.kind.data): form.kind.errors.append('O bilhete {} já foi adicionado'.format( form.kind.data)) else: create_ticket(event=event.id, name=form.kind.data, price=form.price.data, total=form.total.data) flash('Bilhete criado com sucesso', 'success') return redirect(url_for('web.event', event_id=event.id)) return render_template('tickets/form.html', form=form, title='Novo bilhete', action='Criar')
def submit_bug(request): response = pq('<response></response>') if request.method == 'POST': try: choices, initial = utils.get_priorities() form = TicketForm(choices, initial, request.POST) except utils.GadgetError as e: mail.mail_admins('FogBugz Gadget Error', e.msg) form = TicketForm(data=request.POST) if form.is_valid(): try: case = utils.submit_ticket(form.cleaned_data) except utils.GadgetError as e: mail.mail_admins('FogBugz Gadget Error', e.msg) raise RuntimeError(e.msg) response.attr('type', 'success').html(case)
def contact(request): data = {} if request.method == 'POST': form = TicketForm(request.POST) if form.is_valid(): f = form.save(commit=False) f.reference = new_id() if request.user.is_authenticated(): f.user = request.user f.save() else: form.save() return redirect('shop:frontpage') else: data['form'] = form return render(request, 'helpdesk/contact.html', data) else: data['form'] = TicketForm() return render(request, 'helpdesk/contact.html', data)
def ticketdetails(request, ticket_id): ticket = get_object_or_404(Ticket, pk=ticket_id) tickets = Ticket.history.filter(id=ticket_id) t = "Edit" if request.POST: form = TicketForm(request.POST, instance=ticket) if form.is_valid(): form.save() return HttpResponseRedirect('/tickets/') else: form = TicketForm(instance=ticket) return render_to_response("ticketdetails.html", { 'form': form, 't': t, 'tickets': tickets, }, context_instance=RequestContext(request))
def edit_ticket(request, ticket_id=None, template="operations/edit_ticket.html", context=None): context = context or {} ticket = None if ticket_id: ticket = BaseTicket.objects.get(pk=ticket_id) ticket_form = TicketForm( request.POST or None, instance=ticket) else: ticket_form = TicketForm(request.POST or None) if ticket_form.is_valid(): ticket = ticket_form.save(commit=False) if ticket_id: ticket.created_by = request.user ticket.save() obj = BaseTicket.objects.get(pk=ticket_id) messages.success(request, 'Ticket %s is updated' %(obj.number)) else: ticket.created_by = request.user ticket.number = generate_ticket_ref() ticket.save() objj = BaseTicket.objects.latest('id') messages.success(request, 'Ticket %s is created' %(objj.number)) return redirect(reverse('view_tickets')) context['form'] = ticket_form context['ticket'] = ticket return render(request, template, context)
def ticket_edit(request, ticket_id, response_format='html'): "Ticket edit" context = _get_default_context(request) agent = context['agent'] ticket = get_object_or_404(Ticket, pk=ticket_id) if not request.user.profile.has_permission(ticket, mode='w'): return user_denied(request, message="You don't have access to this Ticket") if request.POST: if 'cancel' not in request.POST: form = TicketForm(request.user.profile, None, agent, request.POST, instance=ticket) if form.is_valid(): ticket = form.save() return HttpResponseRedirect( reverse('services_ticket_view', args=[ticket.id])) else: return HttpResponseRedirect( reverse('services_ticket_view', args=[ticket.id])) else: form = TicketForm(request.user.profile, None, agent, instance=ticket) context.update({'form': form, 'ticket': ticket}) return render_to_response('services/ticket_edit', context, context_instance=RequestContext(request), response_format=response_format)
def support(request): if request.method == 'POST': form = TicketForm(request.POST) if form.is_valid(): form = form.save(commit=False) form.user_id = request.user.id form.save() return redirect(reverse('support')) tickets = Ticket.objects.all() comments = Comment.objects.all() form = TicketForm() form2 = CommentForm() args = { 'tickets': tickets, 'form': form, 'comments': comments, 'form2': form2 } return render(request, "support.html", args)
def createticket(request): if request.POST: form = TicketForm(request.POST) if form.is_valid(): form.save() messages.success(request, 'Ticket added!') return HttpResponseRedirect('/tickets/') else: if request.user.is_superuser: form = TicketForm() else: form = UserTicketForm() return render(request, 'createticket.html', locals())
def get_tickets(): form = TicketForm() form.fsrar.choices = Utm.utm_choices() form.search.data = request.args.get('res') form.limit.data = int(request.args.get('limit', 1000)) form.fsrar.data = int(request.args.get('fsrar', 0)) params = { 'template_name_or_list': 'ticket.html', 'title': 'Поиск квитанций обмена', 'description': 'Показывает квитанции из обмена по названию документа', 'form': form, } if request.method == 'POST': results = list() doc = request.form['search'].strip() limit = request.form['limit'].strip() limit = int(limit) if limit.isdigit() and int(limit) < 5000 else 1000 utm = Utm.get_one(fsrar=request.form['fsrar']) form.fsrar.data = int(utm.fsrar) for root, dirs, files in os.walk(utm.path): files = [fi for fi in files if fi.find("Ticket") > 0] files.sort(reverse=True) for reply_rests in files[:limit]: with open(os.path.join(root, reply_rests), encoding="utf8") as f: raw_data = f.read() if doc in raw_data: ticket_dict = xmltodict.parse(raw_data) ticket_data = ticket_dict.get('ns:Documents').get( 'ns:Document').get('ns:Ticket') if ticket_data is not None: results.append(ticket_data) params['results'] = results return render_template(**params)
def place_reservation(request, event_id): tickets = Tickets.objects.filter(event_id = event_id) if request.method == 'POST': form = TicketForm(event_id, request.POST) if form.is_valid(): ticket = form.save(commit=False) ticket.user = request.user ticket.save() ticket.generate_qrcode() mail = EmailMessage('Event entry ticket', ticket.get_reservation_info(), '*****@*****.**', [ticket.guest_email]) mail.attach_file(ticket.qrcode.url) mail.send() return render(request, 'success_res.html') else: form = TicketForm(event_id) return render(request, 'place_reservation.html', {'form': form, 'tickets': tickets})
def show_item(request, id): ret = check_auth(request) if ret: return ret ticket = Ticket.objects.get(id=id) if request.method == 'POST': if request.GET.has_key("new") and request.GET["new"] == "comment": form = CommentForm(request.POST, files=request.FILES) if form.is_valid(): a = Comment() a.text = form.cleaned_data["text"] a.is_public = form.cleaned_data["is_public"] a.upload_file = form.cleaned_data["upload_file"] a.author_id = request.user.id a.ticket_id = ticket.id a.save() # send_mail_ticket(a.group,"new_comment") # TODO errot # print form.errors if request.GET.has_key("edit") and request.GET["edit"] == "ticket": form = TicketFormEdit(request.POST, files=request.FILES) if form.is_valid(): ticket.status = form.cleaned_data["status"] ticket.priority = form.cleaned_data["priority"] ticket.save() send_mail_ticket(ticket.group, "edit_ticket") # TODO errot print form.errors form = {"ticket": TicketForm(instance=ticket), "comment": CommentForm()} comments = Comment.objects.filter(ticket=ticket.id) return render_to_response('ticket_item.html', {'ticket': ticket, 'forms': form, 'comments': comments}, context_instance=RequestContext(request))
def ticket_add(request, queue_id=None, response_format='html'): "Ticket add" context = _get_default_context(request) agent = context['agent'] profile = request.user.profile queue = None if queue_id: queue = get_object_or_404(TicketQueue, pk=queue_id) if not profile.has_permission(queue, mode='x'): queue = None if request.POST: if 'cancel' not in request.POST: ticket = Ticket(creator=profile) if not agent: if queue: ticket.queue = queue if queue.default_ticket_status: ticket.status = queue.default_ticket_status else: try: conf = ModuleSetting.get_for_module( 'anaf.services', 'default_ticket_status')[0] ticket.status = TicketStatus.objects.get( pk=long(conf.value)) except: if 'statuses' in context: try: ticket.status = context['statuses'][0] except: pass ticket.priority = queue.default_ticket_priority ticket.service = queue.default_service else: try: conf = ModuleSetting.get_for_module( 'anaf.services', 'default_ticket_status')[0] ticket.status = TicketStatus.objects.get( pk=long(conf.value)) except: if 'statuses' in context: try: ticket.status = context['statuses'][0] except: pass try: conf = ModuleSetting.get_for_module( 'anaf.services', 'default_ticket_queue')[0] ticket.queue = TicketQueue.objects.get( pk=long(conf.value)) except: if 'queues' in context: try: ticket.queue = context['queues'][0] except: pass try: ticket.caller = profile.get_contact() except: pass form = TicketForm( profile, queue, agent, request.POST, instance=ticket) if form.is_valid(): ticket = form.save() ticket.set_user_from_request(request) return HttpResponseRedirect(reverse('services_ticket_view', args=[ticket.id])) else: return HttpResponseRedirect(reverse('services')) else: form = TicketForm(request.user.profile, queue, agent) context.update({'form': form, 'queue': queue}) return render_to_response('services/ticket_add', context, context_instance=RequestContext(request), response_format=response_format)
def ticket_add(request, queue_id=None, response_format='html'): "Ticket add" context = _get_default_context(request) agent = context['agent'] profile = request.user.profile queue = None if queue_id: queue = get_object_or_404(TicketQueue, pk=queue_id) if not profile.has_permission(queue, mode='x'): queue = None if request.POST: if 'cancel' not in request.POST: ticket = Ticket(creator=profile) if not agent: if queue: ticket.queue = queue if queue.default_ticket_status: ticket.status = queue.default_ticket_status else: try: conf = ModuleSetting.get_for_module( 'anaf.services', 'default_ticket_status')[0] ticket.status = TicketStatus.objects.get( pk=long(conf.value)) except: if 'statuses' in context: try: ticket.status = context['statuses'][0] except: pass ticket.priority = queue.default_ticket_priority ticket.service = queue.default_service else: try: conf = ModuleSetting.get_for_module( 'anaf.services', 'default_ticket_status')[0] ticket.status = TicketStatus.objects.get( pk=long(conf.value)) except: if 'statuses' in context: try: ticket.status = context['statuses'][0] except: pass try: conf = ModuleSetting.get_for_module( 'anaf.services', 'default_ticket_queue')[0] ticket.queue = TicketQueue.objects.get( pk=long(conf.value)) except: if 'queues' in context: try: ticket.queue = context['queues'][0] except: pass try: ticket.caller = profile.get_contact() except: pass form = TicketForm(profile, queue, agent, request.POST, instance=ticket) if form.is_valid(): ticket = form.save() ticket.set_user_from_request(request) return HttpResponseRedirect( reverse('services_ticket_view', args=[ticket.id])) else: return HttpResponseRedirect(reverse('services')) else: form = TicketForm(request.user.profile, queue, agent) context.update({'form': form, 'queue': queue}) return render_to_response('services/ticket_add', context, context_instance=RequestContext(request), response_format=response_format)