Exemple #1
0
def submitbug(request):
    if request.method == "POST":
        form = SubmitBugForm(request.POST)
        if form.is_valid():
            c = connection.cursor()
            c.execute("SELECT nextval('bug_id_seq')")
            bugid = c.fetchall()[0][0]

            send_template_mail(
                form.cleaned_data["email"],
                settings.BUGREPORT_EMAIL,
                "BUG #%s: %s" % (bugid, form.cleaned_data["shortdesc"]),
                "misc/bugmail.txt",
                {"bugid": bugid, "bug": form.cleaned_data},
            )

            return render_to_response("misc/bug_completed.html", {"bugid": bugid}, NavContext(request, "support"))
    else:
        form = SubmitBugForm()

    versions = Version.objects.filter(supported=True)

    return render_to_response(
        "base/form.html",
        {
            "form": form,
            "formitemtype": "bug report",
            "operation": "Submit",
            "nocsrf": True,
            "form_intro": template_to_string("misc/bug_header.html", {"supportedversions": versions}),
        },
        NavContext(request, "support"),
    )
Exemple #2
0
def send_template_mail(sender,
                       receiver,
                       subject,
                       templatename,
                       templateattr={},
                       usergenerated=False,
                       cc=None,
                       replyto=None,
                       receivername=None,
                       sendername=None,
                       messageid=None):
    d = {
        'link_root': settings.SITE_ROOT,
    }
    d.update(templateattr)
    send_simple_mail(sender,
                     receiver,
                     subject,
                     template_to_string(templatename, d),
                     usergenerated=usergenerated,
                     cc=cc,
                     replyto=replyto,
                     receivername=receivername,
                     sendername=sendername,
                     messageid=messageid)
Exemple #3
0
def submitbug(request):
	if request.method == 'POST':
		form = SubmitBugForm(request.POST)
		if form.is_valid():
			c = connection.cursor()
			c.execute("SELECT nextval('bug_id_seq')")
			bugid = c.fetchall()[0][0]

			send_template_mail(
				form.cleaned_data['email'],
				settings.BUGREPORT_EMAIL,
				'BUG #%s: %s' % (bugid, form.cleaned_data['shortdesc']),
				'misc/bugmail.txt',
				{
					'bugid': bugid,
					'bug': form.cleaned_data,
				}
			)

			return render_to_response('misc/bug_completed.html', {
				'bugid': bugid,
			}, NavContext(request, 'support'))
	else:
		form = SubmitBugForm()

	versions = Version.objects.filter(supported=True)

	return render_to_response('base/form.html', {
		'form': form,
		'formitemtype': 'bug report',
		'operation': 'Submit',
		'form_intro': template_to_string('misc/bug_header.html', {
			'supportedversions': versions,
		}),
	}, NavContext(request, 'support'))
Exemple #4
0
def send_template_mail(sender, receiver, subject, templatename, templateattr={}):
	msg = MIMEText(
		template_to_string(templatename, templateattr),
		_charset='utf-8')
	msg['Subject'] = subject
	msg['To'] = receiver
	msg['From'] = sender
	sendmail(msg)
Exemple #5
0
def submitbug(request):
    if request.method == 'POST':
        form = SubmitBugForm(request.POST)
        if form.is_valid():
            c = connection.cursor()
            c.execute("SELECT nextval('bug_id_seq')")
            bugid = c.fetchall()[0][0]

            send_template_mail(
                settings.BUGREPORT_NOREPLY_EMAIL,
                settings.BUGREPORT_EMAIL,
                'BUG #%s: %s' % (bugid, form.cleaned_data['shortdesc']),
                'misc/bugmail.txt',
                {
                    'bugid': bugid,
                    'bug': form.cleaned_data,
                },
                usergenerated=True,
                cc=form.cleaned_data['email'],
                replyto='%s, %s' %
                (form.cleaned_data['email'], settings.BUGREPORT_EMAIL),
                sendername="PG Bug reporting form",
            )

            return render_pgweb(request, 'support', 'misc/bug_completed.html',
                                {
                                    'bugid': bugid,
                                })
    else:
        form = SubmitBugForm(
            initial={
                'name': '%s %s' %
                (request.user.first_name, request.user.last_name),
                'email': request.user.email,
            })

    versions = Version.objects.filter(supported=True)

    return render_pgweb(
        request, 'support', 'base/form.html', {
            'form':
            form,
            'formitemtype':
            'bug report',
            'formtitle':
            'Submit Bug Report <i class="fas fa-bug"></i>',
            'operation':
            'Submit',
            'form_intro':
            template_to_string('misc/bug_header.html', {
                'supportedversions': versions,
            }),
            'savebutton':
            'Submit and Send Email',
        })
Exemple #6
0
def send_template_mail(sender,
                       receiver,
                       subject,
                       templatename,
                       templateattr={},
                       usergenerated=False):
    send_simple_mail(sender,
                     receiver,
                     subject,
                     template_to_string(templatename, templateattr),
                     usergenerated=usergenerated)
Exemple #7
0
def commentform(request, itemid, version, filename):
    if version == 'current':
        v = Version.objects.get(current=True)
    else:
        v = get_object_or_404(Version, tree=version)
    if not v.supported:
        # No docs comments on unsupported versions
        return HttpResponseRedirect("/docs/{0}/{1}".format(version, filename))

    if request.method == 'POST':
        form = DocCommentForm(request.POST)
        if form.is_valid():
            if version == '0.0':
                version = 'devel'

            send_template_mail(
                settings.DOCSREPORT_NOREPLY_EMAIL,
                settings.DOCSREPORT_EMAIL,
                '%s' % form.cleaned_data['shortdesc'],
                'docs/docsbugmail.txt', {
                    'version': version,
                    'filename': filename,
                    'details': form.cleaned_data['details'],
                },
                usergenerated=True,
                cc=form.cleaned_data['email'],
                replyto='%s, %s' %
                (form.cleaned_data['email'], settings.DOCSREPORT_EMAIL),
                sendername='PG Doc comments form')
            return HttpResponseRedirect("done/")
    else:
        form = DocCommentForm(
            initial={
                'name': '%s %s' %
                (request.user.first_name, request.user.last_name),
                'email': request.user.email,
            })

    return render_pgweb(
        request, 'docs', 'base/form.html', {
            'form':
            form,
            'formitemtype':
            'documentation comment',
            'operation':
            'Submit',
            'form_intro':
            template_to_string('docs/docsbug.html', {
                'user': request.user,
            }),
            'savebutton':
            'Send Email',
        })
Exemple #8
0
def submitbug(request):
    if request.method == 'POST':
        form = SubmitBugForm(request.POST)
        if form.is_valid():
            with transaction.atomic():
                c = connection.cursor()
                c.execute("SELECT nextval('bug_id_seq')")
                bugid = c.fetchall()[0][0]

                messageid = _make_bugs_messageid(bugid)

                BugIdMap(id=bugid, messageid=messageid.strip('<>')).save()

                send_template_mail(
                    settings.BUGREPORT_NOREPLY_EMAIL,
                    settings.BUGREPORT_EMAIL,
                    'BUG #%s: %s' % (bugid, form.cleaned_data['shortdesc']),
                    'misc/bugmail.txt',
                    {
                        'bugid': bugid,
                        'bug': form.cleaned_data,
                    },
                    usergenerated=True,
                    cc=form.cleaned_data['email'],
                    replyto='%s, %s' % (form.cleaned_data['email'], settings.BUGREPORT_EMAIL),
                    sendername="PG Bug reporting form",
                    messageid=messageid,
                )

                return HttpResponseRedirect("/account/submitbug/{0}/".format(bugid))
    else:
        form = SubmitBugForm(initial={
            'name': '%s %s' % (request.user.first_name, request.user.last_name),
            'email': request.user.email,
        })

    versions = Version.objects.filter(supported=True)

    return render_pgweb(request, 'support', 'base/form.html', {
        'form': form,
        'formitemtype': 'bug report',
        'formtitle': 'Submit Bug Report <i class="fas fa-bug"></i>',
        'operation': 'Submit',
        'form_intro': template_to_string('misc/bug_header.html', {
            'supportedversions': versions,
        }),
        'savebutton': 'Submit and Send Email',
    })
Exemple #9
0
def commentform(request, itemid, version, filename):
    if version == 'current':
        v = Version.objects.get(current=True)
    else:
        v = get_object_or_404(Version, tree=version)
    if not v.supported:
        # No docs comments on unsupported versions
        return HttpResponseRedirect("/docs/{0}/{1}".format(version, filename))

    if request.method == 'POST':
        form = DocCommentForm(request.POST)
        if form.is_valid():
            if version == '0.0':
                version = 'devel'

            send_template_mail(
                settings.DOCSREPORT_NOREPLY_EMAIL,
                settings.DOCSREPORT_EMAIL,
                '%s' % form.cleaned_data['shortdesc'],
                'docs/docsbugmail.txt', {
                    'version': version,
                    'filename': filename,
                    'details': form.cleaned_data['details'],
                },
                usergenerated=True,
                cc=form.cleaned_data['email'],
                replyto='%s, %s' % (form.cleaned_data['email'], settings.DOCSREPORT_EMAIL),
                sendername='PG Doc comments form'
            )
            return HttpResponseRedirect("done/")
    else:
        form = DocCommentForm(initial={
            'name': '%s %s' % (request.user.first_name, request.user.last_name),
            'email': request.user.email,
        })

    return render_pgweb(request, 'docs', 'base/form.html', {
        'form': form,
        'formitemtype': 'documentation comment',
        'operation': 'Submit',
        'form_intro': template_to_string('docs/docsbug.html', {
            'user': request.user,
        }),
        'savebutton': 'Send Email',
    })
Exemple #10
0
def submitbug(request):
    if request.method == 'POST':
        form = SubmitBugForm(request.POST)
        if form.is_valid():
            c = connection.cursor()
            c.execute("SELECT nextval('bug_id_seq')")
            bugid = c.fetchall()[0][0]

            send_template_mail(form.cleaned_data['email'],
                               settings.BUGREPORT_EMAIL,
                               'BUG #%s: %s' %
                               (bugid, form.cleaned_data['shortdesc']),
                               'misc/bugmail.txt', {
                                   'bugid': bugid,
                                   'bug': form.cleaned_data,
                               },
                               usergenerated=True)

            return render_to_response('misc/bug_completed.html', {
                'bugid': bugid,
            }, NavContext(request, 'support'))
    else:
        form = SubmitBugForm(
            initial={
                'name': '%s %s' %
                (request.user.first_name, request.user.last_name),
                'email': request.user.email,
            })

    versions = Version.objects.filter(supported=True)

    return render_to_response(
        'base/form.html', {
            'form':
            form,
            'formitemtype':
            'bug report',
            'operation':
            'Submit',
            'form_intro':
            template_to_string('misc/bug_header.html', {
                'supportedversions': versions,
            }),
        }, NavContext(request, 'support'))
Exemple #11
0
def commentform(request, itemid, version, filename):
    if request.method == 'POST':
        form = DocCommentForm(request.POST)
        if form.is_valid():
            send_template_mail(
                form.cleaned_data['email'],
                settings.DOCSREPORT_EMAIL,
                '%s' % form.cleaned_data['shortdesc'],
                'docs/docsbugmail.txt',
                {
                    'version': version,
                    'filename': filename,
                    'details': form.cleaned_data['details'],
                },
                usergenerated=True,
            )
            return render_to_response('docs/docsbug_completed.html', {},
                                      NavContext(request, 'docs'))
    else:
        form = DocCommentForm(
            initial={
                'name': '%s %s' %
                (request.user.first_name, request.user.last_name),
                'email': request.user.email,
            })

    return render_to_response(
        'base/form.html', {
            'form':
            form,
            'formitemtype':
            'documentation correction',
            'operation':
            'Submit',
            'form_intro':
            template_to_string('docs/docsbug.html', {
                'user': request.user,
            }),
        }, NavContext(request, 'docs'))
Exemple #12
0
def send_template_mail(sender, receiver, subject, templatename, templateattr={}, usergenerated=False):
	send_simple_mail(sender, receiver, subject,
					 template_to_string(templatename, templateattr),
					 usergenerated=usergenerated)