refinerycms-inquiries 3.0.1 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +1 -0
- data.tar.gz.sig +2 -0
- data/Gemfile +5 -5
- data/app/controllers/refinery/inquiries/inquiries_controller.rb +12 -17
- data/app/models/refinery/inquiries/inquiry.rb +4 -1
- data/app/views/refinery/inquiries/inquiries/_form.html.erb +12 -0
- data/certs/parndt.pem +21 -0
- data/config/locales/en.yml +2 -0
- data/config/locales/fr.yml +2 -0
- data/lib/generators/refinery/inquiries/templates/config/initializers/refinery/inquiries.rb.erb +3 -0
- data/lib/refinery/inquiries/configuration.rb +6 -1
- data/lib/refinery/inquiries/spam_filter.rb +100 -0
- data/readme.md +24 -1
- data/refinerycms-inquiries.gemspec +17 -11
- metadata +42 -4
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d9ddb0e6c028b0f09330b4acbaf76bc8ceed1d9d
|
4
|
+
data.tar.gz: 486b3df780a2b9784ba0a1fa464037a1900ceb2e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fd919f169f626caf18e06f165b91618e89b6713087024976ea929e2c1f6b6b83961b8bbacf9b2e44a1a57b8cdbfc8e7e9747b14f8370a33a025b253f08750ba5
|
7
|
+
data.tar.gz: d04451a99c47567cdbe5fd275b685a917316236fcec87b8691ec1dd1051c87699ec8e9a3371985d1a1200c85c89614d4887610bb53bed08ebec3316a06cda0fc
|
checksums.yaml.gz.sig
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
(��:�[mg�
|
data.tar.gz.sig
ADDED
data/Gemfile
CHANGED
@@ -2,11 +2,11 @@ source 'https://rubygems.org'
|
|
2
2
|
|
3
3
|
gemspec
|
4
4
|
|
5
|
-
gem 'refinerycms',
|
6
|
-
gem 'refinerycms-settings',
|
5
|
+
gem 'refinerycms', ["~> 3.0", ">= 3.0.3"]
|
6
|
+
gem 'refinerycms-settings', "~> 3.0"
|
7
7
|
|
8
8
|
group :test do
|
9
|
-
gem 'refinerycms-testing',
|
9
|
+
gem 'refinerycms-testing', ["~> 3.0", ">= 3.0.3"]
|
10
10
|
gem 'capybara-email', '~> 2.4.0'
|
11
11
|
gem 'poltergeist'
|
12
12
|
end
|
@@ -29,8 +29,8 @@ if !ENV['TRAVIS'] || ENV['DB'] == 'postgresql'
|
|
29
29
|
end
|
30
30
|
|
31
31
|
# Refinery/rails should pull in the proper versions of these
|
32
|
-
gem 'sass-rails'
|
33
|
-
gem 'coffee-rails'
|
32
|
+
gem 'sass-rails'
|
33
|
+
gem 'coffee-rails'
|
34
34
|
|
35
35
|
# Load local gems according to Refinery developer preference.
|
36
36
|
if File.exist? local_gemfile = File.expand_path('../.gemfile', __FILE__)
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'refinery/inquiries/spam_filter'
|
2
|
+
|
1
3
|
module Refinery
|
2
4
|
module Inquiries
|
3
5
|
class InquiriesController < ::ApplicationController
|
@@ -15,23 +17,7 @@ module Refinery
|
|
15
17
|
def create
|
16
18
|
@inquiry = Inquiry.new(inquiry_params)
|
17
19
|
|
18
|
-
if
|
19
|
-
if @inquiry.ham? || Inquiries.send_notifications_for_inquiries_marked_as_spam
|
20
|
-
begin
|
21
|
-
InquiryMailer.notification(@inquiry, request).deliver_now
|
22
|
-
rescue
|
23
|
-
logger.warn "There was an error delivering an inquiry notification.\n#{$!}\n"
|
24
|
-
end
|
25
|
-
|
26
|
-
if Setting.send_confirmation?
|
27
|
-
begin
|
28
|
-
InquiryMailer.confirmation(@inquiry, request).deliver_now
|
29
|
-
rescue
|
30
|
-
logger.warn "There was an error delivering an inquiry confirmation:\n#{$!}\n"
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
20
|
+
if inquiry_saved_and_validated?
|
35
21
|
redirect_to refinery.thank_you_inquiries_inquiries_path
|
36
22
|
else
|
37
23
|
render action: 'new'
|
@@ -58,6 +44,15 @@ module Refinery
|
|
58
44
|
[:name, :phone, :message, :email]
|
59
45
|
end
|
60
46
|
|
47
|
+
def inquiry_saved_and_validated?
|
48
|
+
if @inquiry.valid?
|
49
|
+
@filter = SpamFilter.new(@inquiry, request)
|
50
|
+
@filter.call
|
51
|
+
|
52
|
+
@filter.valid?
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
61
56
|
end
|
62
57
|
end
|
63
58
|
end
|
@@ -5,7 +5,7 @@ module Refinery
|
|
5
5
|
module Inquiries
|
6
6
|
class Inquiry < Refinery::Core::BaseModel
|
7
7
|
|
8
|
-
if Inquiries.
|
8
|
+
if Inquiries.filter_spam
|
9
9
|
filters_spam message_field: :message,
|
10
10
|
email_field: :email,
|
11
11
|
author_field: :name,
|
@@ -21,6 +21,9 @@ module Refinery
|
|
21
21
|
|
22
22
|
default_scope { order('created_at DESC') }
|
23
23
|
|
24
|
+
scope :ham, -> { where(spam: false) }
|
25
|
+
scope :spam, -> { where(spam: true) }
|
26
|
+
|
24
27
|
def self.latest(number = 7, include_spam = false)
|
25
28
|
include_spam ? limit(number) : ham.limit(number)
|
26
29
|
end
|
@@ -4,11 +4,13 @@
|
|
4
4
|
:object => inquiry,
|
5
5
|
:include_object_name => true
|
6
6
|
} %>
|
7
|
+
|
7
8
|
<div class="field">
|
8
9
|
<%= f.label :name, :class => 'placeholder-fallback required' %>
|
9
10
|
<%= f.text_field :name, :class => 'text', :required => 'required',
|
10
11
|
:placeholder => (t('name', :scope => 'activerecord.attributes.refinery/inquiries/inquiry') if Refinery::Inquiries.show_placeholders) %>
|
11
12
|
</div>
|
13
|
+
|
12
14
|
<div class="field">
|
13
15
|
<%= f.label :email, :class => 'placeholder-fallback required' %>
|
14
16
|
<%= f.email_field :email, :class => 'text email', :required => 'required',
|
@@ -28,6 +30,16 @@
|
|
28
30
|
<%= f.text_area :message, :rows => 8, :required => 'required',
|
29
31
|
:placeholder => (t('message', :scope => 'activerecord.attributes.refinery/inquiries/inquiry') if Refinery::Inquiries.show_placeholders) %>
|
30
32
|
</div>
|
33
|
+
|
34
|
+
<% if Refinery::Inquiries.recaptcha_site_key.present? %>
|
35
|
+
<% content_for :javascripts do %>
|
36
|
+
<script src='https://www.google.com/recaptcha/api.js'></script>
|
37
|
+
<% end %>
|
38
|
+
<div class='field captcha'>
|
39
|
+
<div class="g-recaptcha" data-sitekey="<%= Refinery::Inquiries.recaptcha_site_key %>"></div>
|
40
|
+
</div>
|
41
|
+
<% end %>
|
42
|
+
|
31
43
|
<div class="actions">
|
32
44
|
<%= f.submit t('.send') %>
|
33
45
|
<%= link_to t('.privacy_policy'), "/privacy-policy", :id => "privacy_link" if Refinery::Inquiries.show_contact_privacy_link %>
|
data/certs/parndt.pem
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
2
|
+
MIIDhjCCAm6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBNMQ0wCwYDVQQDDARnZW1z
|
3
|
+
MREwDwYKCZImiZPyLGQBGRYBcDEVMBMGCgmSJomT8ixkARkWBWFybmR0MRIwEAYK
|
4
|
+
CZImiZPyLGQBGRYCaW8wHhcNMTYwNjEwMDMwNjQyWhcNMTcwNjEwMDMwNjQyWjBN
|
5
|
+
MQ0wCwYDVQQDDARnZW1zMREwDwYKCZImiZPyLGQBGRYBcDEVMBMGCgmSJomT8ixk
|
6
|
+
ARkWBWFybmR0MRIwEAYKCZImiZPyLGQBGRYCaW8wggEiMA0GCSqGSIb3DQEBAQUA
|
7
|
+
A4IBDwAwggEKAoIBAQDMLLiiRX/NrRDQxcNO/bPNe51IhKeyACDjTTx0VGCG696t
|
8
|
+
qdD23FjUrAYuQTW5P7Auh9qdcCnvPHJSwf31m+EGTshy/hcNYz2k/mrbwAfdytv3
|
9
|
+
GAR+sFnMYtWvVQNeHBWXIaYMiSDP0WtbT6QqQx3SuA6ZpXNXD1dbm64MzHgMHqXP
|
10
|
+
uHnLf2s0VCnTLorPH2J6CO5Y+Sx+IBqJi9/nO2oEEIXQCQRLgRevHk+TovDisW5V
|
11
|
+
OMEPX7fo29R5J2T7mjkNLGJ5Ae1KiU9A60LsMco37HMWE8DM90pg1ues5tg6MfJT
|
12
|
+
yuX4N0rJWdIC5ciHDsyJ4pi21s8fdUulk0YmJALDAgMBAAGjcTBvMAkGA1UdEwQC
|
13
|
+
MAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBSqXg48+kmcdOxIrkZhhgSV1flD1jAa
|
14
|
+
BgNVHREEEzARgQ9nZW1zQHAuYXJuZHQuaW8wGgYDVR0SBBMwEYEPZ2Vtc0BwLmFy
|
15
|
+
bmR0LmlvMA0GCSqGSIb3DQEBBQUAA4IBAQBSSS4nOXpPPMdAK4ApGHxbzS+/u77p
|
16
|
+
V8gLBJX4hKMpbMNmdI+n6YsqvG6kMljgYBamucfrAkKdmHWn9ydST3o8RQAcYxS8
|
17
|
+
bz49gD3c4Nm4P6eEVKFmebO9/MoiM7rMb0lk/xH1drtey/9ulohrg8Dz+BoQJ+9T
|
18
|
+
m2lJzojOU7w461lPVZtKlDlseu68KvEQ2AdUBBa1b6w3S/EFkcdhErOT7dyQpePI
|
19
|
+
+wsbjPvdIWsjWQMn6MasZYIVTnenwP2jg+z9HSNxW0NL2vZx8VabpsWGWfrb+koj
|
20
|
+
rE1h12GTgwaC3r9FOkdnSpClgPYAzTTCJ8kD74qO2zC9pGegrUXdWFM6
|
21
|
+
-----END CERTIFICATE-----
|
data/config/locales/en.yml
CHANGED
data/config/locales/fr.yml
CHANGED
@@ -5,6 +5,8 @@ fr:
|
|
5
5
|
title: Requêtes
|
6
6
|
description: Fournit un formulaire de contact et gère les demandes de contacts.
|
7
7
|
inquiries:
|
8
|
+
spam_filter:
|
9
|
+
captcha_invalid: "Désolé, nous ne pouvons pas vérifier que vous n'êtes pas un robot"
|
8
10
|
config:
|
9
11
|
from_name: "%{name} - %{site_name}"
|
10
12
|
inquiries:
|
data/lib/generators/refinery/inquiries/templates/config/initializers/refinery/inquiries.rb.erb
CHANGED
@@ -21,4 +21,7 @@ Refinery::Inquiries.configure do |config|
|
|
21
21
|
|
22
22
|
# Toggle the spam filter
|
23
23
|
# config.filter_spam = <%= Refinery::Inquiries.filter_spam.inspect %>
|
24
|
+
|
25
|
+
# Toggle recaptcha support with your recaptcha "Site key"
|
26
|
+
# config.recaptcha_site_key = <%= Refinery::Inquiries.recaptcha_site_key.inspect %>
|
24
27
|
end
|
@@ -8,7 +8,7 @@ module Refinery
|
|
8
8
|
config_accessor :send_notifications_for_inquiries_marked_as_spam
|
9
9
|
config_accessor :from_name
|
10
10
|
config_accessor :post_path, :page_path_new, :page_path_thank_you
|
11
|
-
config_accessor :filter_spam
|
11
|
+
config_accessor :filter_spam, :recaptcha_site_key
|
12
12
|
|
13
13
|
self.show_contact_privacy_link = true
|
14
14
|
self.show_phone_number_field = true
|
@@ -19,5 +19,10 @@ module Refinery
|
|
19
19
|
self.page_path_new = "/contact"
|
20
20
|
self.page_path_thank_you = "/contact/thank_you"
|
21
21
|
self.filter_spam = true
|
22
|
+
self.recaptcha_site_key = nil
|
23
|
+
|
24
|
+
def self.filter_spam
|
25
|
+
config.filter_spam && config.recaptcha_site_key.blank?
|
26
|
+
end
|
22
27
|
end
|
23
28
|
end
|
@@ -0,0 +1,100 @@
|
|
1
|
+
require 'httpclient'
|
2
|
+
require 'uri'
|
3
|
+
|
4
|
+
module Refinery
|
5
|
+
module Inquiries
|
6
|
+
class SpamFilter
|
7
|
+
def initialize(inquiry, request)
|
8
|
+
@inquiry = inquiry
|
9
|
+
@request = request
|
10
|
+
@params = request.params
|
11
|
+
end
|
12
|
+
|
13
|
+
def call
|
14
|
+
if recaptcha?
|
15
|
+
if recaptcha_validated?
|
16
|
+
@valid = true
|
17
|
+
@inquiry.save
|
18
|
+
else
|
19
|
+
@inquiry.errors.add(:base, ::I18n.t(:captcha_invalid, scope: "refinery.inquiries.spam_filter"))
|
20
|
+
end
|
21
|
+
elsif simple_filter?
|
22
|
+
@inquiry.save
|
23
|
+
@valid = simple_filter_validated?
|
24
|
+
end
|
25
|
+
|
26
|
+
if notify?
|
27
|
+
send_notification_email!
|
28
|
+
send_confirmation_email!
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def valid?
|
33
|
+
@valid == true
|
34
|
+
end
|
35
|
+
|
36
|
+
def notify?
|
37
|
+
if valid?
|
38
|
+
if simple_filter?
|
39
|
+
@inquiry.ham? || Inquiries.send_notifications_for_inquiries_marked_as_spam
|
40
|
+
else
|
41
|
+
true
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
def recaptcha_validated?
|
47
|
+
return true unless recaptcha?
|
48
|
+
# avoid doing a second request if we already have a result.
|
49
|
+
return @recaptcha_validated unless @recaptcha_validated.nil?
|
50
|
+
|
51
|
+
@recaptcha_validated = recaptcha_success?
|
52
|
+
end
|
53
|
+
|
54
|
+
private
|
55
|
+
|
56
|
+
def recaptcha?
|
57
|
+
Inquiries.recaptcha_site_key.present?
|
58
|
+
end
|
59
|
+
|
60
|
+
GOOGLE_SITEVERIFY_URL = "https://www.google.com/recaptcha/api/siteverify".freeze
|
61
|
+
def recaptcha_success?
|
62
|
+
http = HTTPClient.new
|
63
|
+
response = http.get(
|
64
|
+
GOOGLE_SITEVERIFY_URL,
|
65
|
+
secret: Rails.application.secrets.recaptcha_secret_key,
|
66
|
+
response: @params["g-recaptcha-response"]
|
67
|
+
)
|
68
|
+
JSON.parse(response.body)["success"] == true
|
69
|
+
end
|
70
|
+
|
71
|
+
def simple_filter?
|
72
|
+
Inquiries.filter_spam
|
73
|
+
end
|
74
|
+
|
75
|
+
def simple_filter_validated?
|
76
|
+
return true unless simple_filter?
|
77
|
+
|
78
|
+
@inquiry.ham?
|
79
|
+
end
|
80
|
+
|
81
|
+
def send_notification_email!
|
82
|
+
begin
|
83
|
+
InquiryMailer.notification(@inquiry, @request).deliver_now
|
84
|
+
rescue
|
85
|
+
Rails.logger.warn "There was an error delivering an inquiry notification.\n#{$!}\n"
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
def send_confirmation_email!
|
90
|
+
if Setting.send_confirmation?
|
91
|
+
begin
|
92
|
+
InquiryMailer.confirmation(@inquiry, @request).deliver_now
|
93
|
+
rescue
|
94
|
+
Rails.logger.warn "There was an error delivering an inquiry confirmation:\n#{$!}\n"
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
data/readme.md
CHANGED
@@ -48,6 +48,29 @@ To do this, include it in your `application.css` manifest file and insert:
|
|
48
48
|
//= require refinery/inquiries/inquiries
|
49
49
|
```
|
50
50
|
|
51
|
+
## How do I enable reCAPTCHA support?
|
52
|
+
|
53
|
+
Note: enabling this feature disables the built in spam filtering.
|
54
|
+
|
55
|
+
Just add your reCAPTCHA "Site key" in `config/initializers/refinery/inquiries.rb`:
|
56
|
+
|
57
|
+
```ruby
|
58
|
+
config.recaptcha_site_key = "do NOT put your secret key here"
|
59
|
+
```
|
60
|
+
|
61
|
+
Inside `config/secrets.yml`, the file for application secrets in Rails applications,
|
62
|
+
place the secret key:
|
63
|
+
|
64
|
+
```yml
|
65
|
+
development:
|
66
|
+
recaptcha_secret_key: "This IS your secret key"
|
67
|
+
|
68
|
+
production:
|
69
|
+
recaptcha_secret_key: <%= ENV["RECAPTCHA_SECRET_KEY"] %>
|
70
|
+
```
|
71
|
+
|
72
|
+
Note: This expects you to set your secret key via `ENV` in your production environment.
|
73
|
+
|
51
74
|
## How do I set up email to be sent from GMail, SendGrid or other service?
|
52
75
|
|
53
76
|
Inquiries uses `actionmailer` under the hood so you can refer to [Rails Action Mailer guide](http://guides.rubyonrails.org/action_mailer_basics.html). For example to use GMail see [Action Mailer Configuration for GMail](http://guides.rubyonrails.org/action_mailer_basics.html#action-mailer-configuration-for-gmail) guide.
|
@@ -62,7 +85,7 @@ Go into your 'Inquiries' tab in the Refinery admin area and click on "Edit confi
|
|
62
85
|
|
63
86
|
## Help! How do I send emails from no-reply@domain.com.au instead of no-reply@com.au?
|
64
87
|
|
65
|
-
Simply set the following in config/application.rb
|
88
|
+
Simply set the following in `config/application.rb`:
|
66
89
|
|
67
90
|
```ruby
|
68
91
|
config.action_dispatch.tld_length = 2
|
@@ -1,21 +1,27 @@
|
|
1
1
|
# Encoding: UTF-8
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
|
-
s.name
|
5
|
-
s.version
|
6
|
-
s.summary
|
7
|
-
s.description
|
8
|
-
s.homepage
|
9
|
-
s.email
|
10
|
-
s.authors
|
11
|
-
s.require_paths
|
12
|
-
s.license
|
4
|
+
s.name = %q{refinerycms-inquiries}
|
5
|
+
s.version = %q{3.1.0}
|
6
|
+
s.summary = %q{Inquiry handling functionality for the Refinery CMS project.}
|
7
|
+
s.description = %q{Inquiry handling functionality extracted from Refinery CMS to allow you to have a contact form and manage inquiries in the Refinery backend.}
|
8
|
+
s.homepage = %q{http://refinerycms.com}
|
9
|
+
s.email = %q{info@refinerycms.com}
|
10
|
+
s.authors = ['Uģis Ozols', 'Philip Arndt', 'Rob Yurkowski']
|
11
|
+
s.require_paths = %w(lib)
|
12
|
+
s.license = %q{MIT}
|
13
13
|
|
14
|
-
s.files
|
15
|
-
s.test_files
|
14
|
+
s.files = `git ls-files`.split("\n")
|
15
|
+
s.test_files = `git ls-files -- spec/*`.split("\n")
|
16
16
|
|
17
17
|
s.add_dependency 'refinerycms-core', '~> 3.0.0'
|
18
18
|
s.add_dependency 'refinerycms-settings', '~> 3.0.0'
|
19
19
|
s.add_dependency 'filters_spam', '~> 0.2'
|
20
20
|
s.add_dependency 'actionmailer', '~> 4.2.4'
|
21
|
+
s.add_dependency 'httpclient'
|
22
|
+
|
23
|
+
s.cert_chain = [File.expand_path("../certs/parndt.pem", __FILE__)]
|
24
|
+
if $0 =~ /gem\z/ && ARGV.include?("build") && ARGV.include?(__FILE__)
|
25
|
+
s.signing_key = File.expand_path("~/.ssh/gem-private_key.pem")
|
26
|
+
end
|
21
27
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: refinerycms-inquiries
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0
|
4
|
+
version: 3.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Uģis Ozols
|
@@ -9,8 +9,30 @@ authors:
|
|
9
9
|
- Rob Yurkowski
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
|
-
cert_chain:
|
13
|
-
|
12
|
+
cert_chain:
|
13
|
+
- |
|
14
|
+
-----BEGIN CERTIFICATE-----
|
15
|
+
MIIDhjCCAm6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBNMQ0wCwYDVQQDDARnZW1z
|
16
|
+
MREwDwYKCZImiZPyLGQBGRYBcDEVMBMGCgmSJomT8ixkARkWBWFybmR0MRIwEAYK
|
17
|
+
CZImiZPyLGQBGRYCaW8wHhcNMTYwNjEwMDMwNjQyWhcNMTcwNjEwMDMwNjQyWjBN
|
18
|
+
MQ0wCwYDVQQDDARnZW1zMREwDwYKCZImiZPyLGQBGRYBcDEVMBMGCgmSJomT8ixk
|
19
|
+
ARkWBWFybmR0MRIwEAYKCZImiZPyLGQBGRYCaW8wggEiMA0GCSqGSIb3DQEBAQUA
|
20
|
+
A4IBDwAwggEKAoIBAQDMLLiiRX/NrRDQxcNO/bPNe51IhKeyACDjTTx0VGCG696t
|
21
|
+
qdD23FjUrAYuQTW5P7Auh9qdcCnvPHJSwf31m+EGTshy/hcNYz2k/mrbwAfdytv3
|
22
|
+
GAR+sFnMYtWvVQNeHBWXIaYMiSDP0WtbT6QqQx3SuA6ZpXNXD1dbm64MzHgMHqXP
|
23
|
+
uHnLf2s0VCnTLorPH2J6CO5Y+Sx+IBqJi9/nO2oEEIXQCQRLgRevHk+TovDisW5V
|
24
|
+
OMEPX7fo29R5J2T7mjkNLGJ5Ae1KiU9A60LsMco37HMWE8DM90pg1ues5tg6MfJT
|
25
|
+
yuX4N0rJWdIC5ciHDsyJ4pi21s8fdUulk0YmJALDAgMBAAGjcTBvMAkGA1UdEwQC
|
26
|
+
MAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBSqXg48+kmcdOxIrkZhhgSV1flD1jAa
|
27
|
+
BgNVHREEEzARgQ9nZW1zQHAuYXJuZHQuaW8wGgYDVR0SBBMwEYEPZ2Vtc0BwLmFy
|
28
|
+
bmR0LmlvMA0GCSqGSIb3DQEBBQUAA4IBAQBSSS4nOXpPPMdAK4ApGHxbzS+/u77p
|
29
|
+
V8gLBJX4hKMpbMNmdI+n6YsqvG6kMljgYBamucfrAkKdmHWn9ydST3o8RQAcYxS8
|
30
|
+
bz49gD3c4Nm4P6eEVKFmebO9/MoiM7rMb0lk/xH1drtey/9ulohrg8Dz+BoQJ+9T
|
31
|
+
m2lJzojOU7w461lPVZtKlDlseu68KvEQ2AdUBBa1b6w3S/EFkcdhErOT7dyQpePI
|
32
|
+
+wsbjPvdIWsjWQMn6MasZYIVTnenwP2jg+z9HSNxW0NL2vZx8VabpsWGWfrb+koj
|
33
|
+
rE1h12GTgwaC3r9FOkdnSpClgPYAzTTCJ8kD74qO2zC9pGegrUXdWFM6
|
34
|
+
-----END CERTIFICATE-----
|
35
|
+
date: 2016-12-31 00:00:00.000000000 Z
|
14
36
|
dependencies:
|
15
37
|
- !ruby/object:Gem::Dependency
|
16
38
|
name: refinerycms-core
|
@@ -68,6 +90,20 @@ dependencies:
|
|
68
90
|
- - "~>"
|
69
91
|
- !ruby/object:Gem::Version
|
70
92
|
version: 4.2.4
|
93
|
+
- !ruby/object:Gem::Dependency
|
94
|
+
name: httpclient
|
95
|
+
requirement: !ruby/object:Gem::Requirement
|
96
|
+
requirements:
|
97
|
+
- - ">="
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: '0'
|
100
|
+
type: :runtime
|
101
|
+
prerelease: false
|
102
|
+
version_requirements: !ruby/object:Gem::Requirement
|
103
|
+
requirements:
|
104
|
+
- - ">="
|
105
|
+
- !ruby/object:Gem::Version
|
106
|
+
version: '0'
|
71
107
|
description: Inquiry handling functionality extracted from Refinery CMS to allow you
|
72
108
|
to have a contact form and manage inquiries in the Refinery backend.
|
73
109
|
email: info@refinerycms.com
|
@@ -103,6 +139,7 @@ files:
|
|
103
139
|
- bin/rake
|
104
140
|
- bin/rspec
|
105
141
|
- bin/spring
|
142
|
+
- certs/parndt.pem
|
106
143
|
- config/locales/bg.yml
|
107
144
|
- config/locales/cs.yml
|
108
145
|
- config/locales/da.yml
|
@@ -132,6 +169,7 @@ files:
|
|
132
169
|
- lib/refinery/inquiries.rb
|
133
170
|
- lib/refinery/inquiries/configuration.rb
|
134
171
|
- lib/refinery/inquiries/engine.rb
|
172
|
+
- lib/refinery/inquiries/spam_filter.rb
|
135
173
|
- lib/refinerycms-inquiries.rb
|
136
174
|
- license.md
|
137
175
|
- readme.md
|
@@ -164,7 +202,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
164
202
|
version: '0'
|
165
203
|
requirements: []
|
166
204
|
rubyforge_project:
|
167
|
-
rubygems_version: 2.5.
|
205
|
+
rubygems_version: 2.5.2
|
168
206
|
signing_key:
|
169
207
|
specification_version: 4
|
170
208
|
summary: Inquiry handling functionality for the Refinery CMS project.
|
metadata.gz.sig
ADDED
Binary file
|