Add contact flash
This commit is contained in:
1 parent
9d1cda213e
commit
4ba81f3a6b
3 files changed
+20
-4
No files matched your search
+4
-1
@@ -6,6 +6,8 @@ class ContactForm
|
|||||||
"message" => 5000
|
"message" => 5000
|
||||||
}.freeze
|
}.freeze
|
||||||
|
|
||||||
|
EMAIL_PATTERN = /\A[A-Z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[A-Z0-9!#$%&'*+\/=?^_`{|}~-]+)*@[A-Z0-9](?:[A-Z0-9-]{0,61}[A-Z0-9])?(?:\.[A-Z0-9](?:[A-Z0-9-]{0,61}[A-Z0-9])?)+\z/i
|
||||||
|
|
||||||
def initialize(params)
|
def initialize(params)
|
||||||
@params = params
|
@params = params
|
||||||
end
|
end
|
||||||
@@ -26,7 +28,8 @@ class ContactForm
|
|||||||
|
|
||||||
return false unless fields_valid
|
return false unless fields_valid
|
||||||
|
|
||||||
email_valid = @params["email"].strip.match?(/\A[^\s@]+@[^\s@]+\.[^\s@]+\z/)
|
email_valid = @params["email"].strip.match?(EMAIL_PATTERN)
|
||||||
|
|
||||||
headers_valid = %w[name subject].none? do |key|
|
headers_valid = %w[name subject].none? do |key|
|
||||||
@params[key].match?(/[\r\n]/)
|
@params[key].match?(/[\r\n]/)
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -6,9 +6,9 @@ class ContactMailer
|
|||||||
end
|
end
|
||||||
|
|
||||||
def build
|
def build
|
||||||
email = @params["email"]
|
email = @params["email"].strip
|
||||||
name = @params["name"]
|
name = @params["name"].strip
|
||||||
subject = @params["subject"]
|
subject = @params["subject"].strip
|
||||||
message = @params["message"]
|
message = @params["message"]
|
||||||
|
|
||||||
Mail.new do
|
Mail.new do
|
||||||
|
|||||||
@@ -1,6 +1,19 @@
|
|||||||
<section class="page-section">
|
<section class="page-section">
|
||||||
<div class="content page-panel">
|
<div class="content page-panel">
|
||||||
<h1>Contact</h1>
|
<h1>Contact</h1>
|
||||||
|
|
||||||
|
<% if flash["error"] || flash["notice"] %>
|
||||||
|
<div class="flash-container">
|
||||||
|
<% if error = flash["error"] %>
|
||||||
|
<p class="flash flash--error" role="alert"><%= error %></p>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
<% if notice = flash["notice"] %>
|
||||||
|
<p class="flash flash--notice" role="status"><%= notice %></p>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
<div class="col--1-1">
|
<div class="col--1-1">
|
||||||
<div>
|
<div>
|
||||||
<p>Vous avez un projet en tête ? Un service vous intéresse ? Ou simplement une question ? Ce formulaire est là pour ça !</p>
|
<p>Vous avez un projet en tête ? Un service vous intéresse ? Ou simplement une question ? Ce formulaire est là pour ça !</p>
|
||||||
|
|||||||
Reference in new issue
Block a user