File tree 4 files changed +66
-15
lines changed
4 files changed +66
-15
lines changed Original file line number Diff line number Diff line change @@ -35,8 +35,44 @@ <h3>Did you know ChiPy has a mailing list?</h3>
35
35
</ div >
36
36
</ div >
37
37
</ div >
38
+
39
+ {% if messages %}
40
+ <!-- CONTACT MODAL STARTS-->
41
+ < div id ="contact-modal-show " style ="display:none " data-bs-toggle ="modal " data-bs-target ="#contact-modal "> </ div >
42
+
43
+ < div class ="modal fade " id ="contact-modal " tabindex ="-1 " aria-labelledby ="contactModalLabel " aria-hidden ="true ">
44
+ < div class ="modal-dialog modal-dialog-centered ">
45
+ < div class ="modal-content ">
46
+ < div class ="modal-header ">
47
+ < img src ="https://via.placeholder.com/150 "> </ img >
48
+ < h5 class ="modal-title black-text " id ="contactModalLabel "> Thank You.</ h5 >
49
+ </ div >
50
+ < div class ="modal-body ">
51
+ {% include "_messages.html" %}
52
+ < button
53
+ type ="button "
54
+ class ="btn btn-primary "
55
+ data-bs-dismiss ="modal "
56
+ aria-label ="Close "
57
+ onclick ="javascript:window.location='/' ">
58
+ Return to home
59
+ </ button >
60
+ </ div >
61
+ </ div >
62
+ </ div >
63
+ </ div >
64
+
65
+ < script >
66
+ window . addEventListener ( 'load' , function ( ) {
67
+ document . querySelector ( "#contact-modal-show" ) . click ( ) ;
68
+ } ) ;
69
+ </ script >
70
+ <!-- CONTACT MODAL ENDS-->
71
+ {% endif %}
38
72
{% endblock %}
39
73
74
+
75
+
40
76
{% block extra-javascript %}
41
77
< script src ="https://www.google.com/recaptcha/api.js " async defer > </ script >
42
78
{% endblock %}
Original file line number Diff line number Diff line change 7
7
class ContactView (FormView ):
8
8
template_name = "contact/contact.html"
9
9
form_class = ContactForm
10
- success_url = "/"
10
+ success_url = "/contact"
11
+ message_as_modal = True
11
12
12
13
def form_valid (self , form ):
13
14
try :
@@ -17,3 +18,9 @@ def form_valid(self, form):
17
18
messages .error (self .request , "Your message was NOT sent to Chipy's organizers" )
18
19
19
20
return super ().form_valid (form )
21
+
22
+ def get_context_data (self , ** kwargs ):
23
+ """ Used to access message_as_modal in template as context """
24
+ context = super (ContactView , self ).get_context_data (** kwargs )
25
+ context .update ({'message_as_modal' : self .message_as_modal })
26
+ return context
Original file line number Diff line number Diff line change 1
- {% for message in messages %}
2
- < div class ="alert alert-dismissible {% if message.tags %} {% for tag in message.tags.split %}alert-{{ tag }} {% endfor %}{% endif %} fade show ">
3
- < a class ="close " href ="# " data-bs-dismiss ="alert " aria-label ="Close "> ×</ a >
4
- {{ message|linebreaks }}
5
- </ div >
6
- {% endfor %}
1
+ {% if message_as_modal %}
2
+ {% for message in messages %}
3
+ < div > {{ message|linebreaks }}</ div >
4
+ {% endfor %}
5
+
6
+ {% else %}
7
+ {% for message in messages %}
8
+ < div class ="container-xl ">
9
+ < div class ="row ">
10
+ < div class ="col-md-12 ">
11
+ < div class ="alert alert-dismissible {% if message.tags %} {% for tag in message.tags.split %}alert-{{ tag }} {% endfor %}{% endif %} fade show ">
12
+ < a class ="close " href ="# " data-bs-dismiss ="alert " aria-label ="Close "> ×</ a >
13
+ {{ message|linebreaks }}
14
+ </ div >
15
+ </ div >
16
+ </ div >
17
+ </ div > <!--closes container xl-->
18
+ {% endfor %}
19
+ {% endif %}
Original file line number Diff line number Diff line change 17
17
18
18
{% block content %}
19
19
20
- {% if messages %}
21
- < div class ="container-xl ">
22
- < div class ="row ">
23
- < div class ="col-md-12 ">
24
- {% include "_messages.html" %}
25
- </ div >
26
- </ div >
27
- </ div > <!--closes container xl-->
20
+ <!-- Renders message box unless View declares message_as_modal instead -->
21
+ {% if messages and not message_as_modal %}
22
+ {% include "_messages.html" %}
28
23
{% endif %}
29
24
30
25
< div class ="container-xl ">
You can’t perform that action at this time.
0 commit comments