Module: Heya
- Extended by:
- Heya
- Included in:
- Heya
- Defined in:
- lib/heya.rb,
lib/heya/config.rb,
lib/heya/engine.rb,
lib/heya/version.rb,
lib/heya/campaigns/base.rb,
lib/heya/campaigns/step.rb,
lib/heya/campaigns/action.rb,
lib/heya/campaigns/queries.rb,
lib/heya/campaigns/scheduler.rb,
app/jobs/heya/application_job.rb,
app/mailers/heya/campaign_mailer.rb,
app/models/heya/campaign_receipt.rb,
lib/heya/active_record_extension.rb,
lib/heya/campaigns/actions/block.rb,
lib/heya/campaigns/actions/email.rb,
app/models/heya/application_record.rb,
lib/heya/campaigns/step_action_job.rb,
app/helpers/heya/application_helper.rb,
app/mailers/heya/application_mailer.rb,
app/models/heya/campaign_membership.rb,
app/controllers/heya/application_controller.rb
Defined Under Namespace
Modules: ActiveRecordRelationExtension, ApplicationHelper, Campaigns
Classes: ApplicationController, ApplicationJob, ApplicationMailer, ApplicationRecord, CampaignGenerator, CampaignMailer, CampaignMembership, CampaignReceipt, Config, Engine, InstallGenerator
Constant Summary
collapse
- VERSION =
"0.7.0"
Instance Attribute Summary collapse
Instance Method Summary
collapse
Instance Attribute Details
#campaigns ⇒ Object
Returns the value of attribute campaigns.
19
20
21
|
# File 'lib/heya.rb', line 19
def campaigns
@campaigns
end
|
Instance Method Details
#config ⇒ Object
35
36
37
|
# File 'lib/heya.rb', line 35
def config
@config ||= Config.new
end
|
30
31
32
33
|
# File 'lib/heya.rb', line 30
def configure
yield(config) if block_given?
config
end
|
#in_segment?(user, segment) ⇒ Boolean
44
45
46
47
48
|
# File 'lib/heya.rb', line 44
def in_segment?(user, segment)
return true if segment.nil?
return user.send(segment) if segment.is_a?(Symbol)
segment.call(user)
end
|
#in_segments?(user, *segments) ⇒ Boolean
39
40
41
42
|
# File 'lib/heya.rb', line 39
def in_segments?(user, *segments)
return false if segments.any? { |s| !in_segment?(user, s) }
true
end
|
#register_campaign(klass) ⇒ Object
22
23
24
|
# File 'lib/heya.rb', line 22
def register_campaign(klass)
campaigns.push(klass) unless campaigns.include?(klass)
end
|
#unregister_campaign(klass) ⇒ Object
26
27
28
|
# File 'lib/heya.rb', line 26
def unregister_campaign(klass)
campaigns.delete(klass)
end
|