mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-02-05 19:03:30 -05:00
Use the same form for problems and questions
This commit is contained in:
@@ -92,6 +92,7 @@ from app.url_converters import (
|
||||
LetterFileExtensionConverter,
|
||||
SimpleDateTypeConverter,
|
||||
TemplateTypeConverter,
|
||||
TicketTypeConverter,
|
||||
)
|
||||
from app.utils import format_thousands, get_logo_cdn_domain, id_safe
|
||||
|
||||
@@ -227,6 +228,7 @@ def init_app(application):
|
||||
|
||||
application.url_map.converters['uuid'].to_python = lambda self, value: value
|
||||
application.url_map.converters['template_type'] = TemplateTypeConverter
|
||||
application.url_map.converters['ticket_type'] = TicketTypeConverter
|
||||
application.url_map.converters['letter_file_extension'] = LetterFileExtensionConverter
|
||||
application.url_map.converters['simple_date'] = SimpleDateTypeConverter
|
||||
|
||||
|
||||
@@ -903,16 +903,12 @@ class SupportRedirect(StripWhitespaceForm):
|
||||
)
|
||||
|
||||
|
||||
class Feedback(StripWhitespaceForm):
|
||||
class FeedbackOrProblem(StripWhitespaceForm):
|
||||
name = StringField('Name (optional)')
|
||||
email_address = email_address(label='Email address', gov_user=False, required=True)
|
||||
feedback = TextAreaField('Your message', validators=[DataRequired(message="Cannot be empty")])
|
||||
|
||||
|
||||
class Problem(Feedback):
|
||||
email_address = email_address(label='Email address', gov_user=False)
|
||||
|
||||
|
||||
class Triage(StripWhitespaceForm):
|
||||
severe = RadioField(
|
||||
'Is it an emergency?',
|
||||
|
||||
@@ -1,15 +1,14 @@
|
||||
from datetime import datetime
|
||||
|
||||
import pytz
|
||||
from flask import abort, redirect, render_template, request, session, url_for
|
||||
from flask import redirect, render_template, request, session, url_for
|
||||
from flask_login import current_user
|
||||
|
||||
from app import convert_to_boolean, current_service, service_api_client
|
||||
from app.extensions import zendesk_client
|
||||
from app.main import main
|
||||
from app.main.forms import (
|
||||
Feedback,
|
||||
Problem,
|
||||
FeedbackOrProblem,
|
||||
SupportRedirect,
|
||||
SupportType,
|
||||
Triage,
|
||||
@@ -79,15 +78,9 @@ def triage():
|
||||
)
|
||||
|
||||
|
||||
@main.route('/support/<ticket_type>', methods=['GET', 'POST'])
|
||||
@main.route('/support/<ticket_type:ticket_type>', methods=['GET', 'POST'])
|
||||
def feedback(ticket_type):
|
||||
try:
|
||||
form = {
|
||||
QUESTION_TICKET_TYPE: Feedback,
|
||||
PROBLEM_TICKET_TYPE: Problem,
|
||||
}[ticket_type]()
|
||||
except KeyError:
|
||||
abort(404)
|
||||
form = FeedbackOrProblem()
|
||||
|
||||
if not form.feedback.data:
|
||||
form.feedback.data = session.pop('feedback_message', '')
|
||||
|
||||
@@ -6,6 +6,11 @@ class TemplateTypeConverter(BaseConverter):
|
||||
regex = '(?:email|sms|letter)'
|
||||
|
||||
|
||||
class TicketTypeConverter(BaseConverter):
|
||||
|
||||
regex = '(?:ask-question-give-feedback|report-problem)'
|
||||
|
||||
|
||||
class LetterFileExtensionConverter(BaseConverter):
|
||||
|
||||
regex = '(?:pdf|png)'
|
||||
|
||||
Reference in New Issue
Block a user