-
Notifications
You must be signed in to change notification settings - Fork 9
/
analytics_request.rb
37 lines (30 loc) · 997 Bytes
/
analytics_request.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
require 'support/gds/needed_report'
require 'support/requests/request'
module Support
module Requests
class AnalyticsRequest < Request
REQUEST_DETAILS_ATTRS = [
:google_analytics_request_details,
:single_point_of_contact_request_details,
:report_request_details,
:help_request_details
].freeze
attr_accessor(*REQUEST_DETAILS_ATTRS)
validate :one_or_more_request_details_present
def self.label
"Analytics access, reports and help"
end
def self.description
"Request access to Google Analytics or help with analytics or reports"
end
def one_or_more_request_details_present
request_details = REQUEST_DETAILS_ATTRS.select do |request_details_attribute|
!send(request_details_attribute).to_s.empty?
end
if request_details.empty?
errors.add(:base, 'Please enter details for at least one type of request')
end
end
end
end
end