Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

effective_mailchimp

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

effective_mailchimp

  • 0.11.0
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

Effective Mailchimp

Subscribe and unsubscribe users to individual mailchimp campaigns.

Update Mailchimp whenever a user changes their demographics

Getting Started

This requires Rails 6+ and Twitter Bootstrap 4 and just works with Devise.

Please first install the effective_datatables gem.

Please download and install the Twitter Bootstrap4

Add to your Gemfile:

gem 'haml'
gem 'effective_mailchimp'

Run the bundle command to install it:

bundle install

Then run the generator:

rails generate effective_mailchimp:install

The generator will install an initializer which describes all configuration options and creates a database migration.

If you want to tweak the table names, manually adjust both the configuration file and the migration now.

Then migrate the database:

rake db:migrate

Please add the following to your User model:

effective_mailchimp_user

and

Add a link to the admin menu:

- if can? :admin, :effective_mailchimp
  - if can? :index, Effective::MailchimpList
    = nav_link_to 'Mailchimp lists', effective_mailchimp.admin_mailchimp_lists_path

To add the fields to your existing users form

= form_with(model: user) do |f|
  = f.text_field :first_name
  = f.text_field :last_name
  = mailchimp_user_fields(f)
  = f.submit

Configuring Mailchimp Account

Refer to the Marketing API Quick Start

https://mailchimp.com/developer/marketing/guides/quick-start/

Sign up for a Mailchimp account. Create a campaign.

Get API key from:

Visit https://us7.admin.mailchimp.com/account/api/

Click Create an API Key

Get your server from the domain. us7 in the above example.

Configuration

Authorization

All authorization checks are handled via the effective_resources gem found in the config/initializers/effective_resources.rb file.

Permissions

The permissions you actually want to define are as follows (using CanCan):

if user.persisted?
end

if user.admin?
  can :admin, :effective_mailchimp

  can([:index, :edit, :update], Effective::MailchimpList)
  can(:can_subscribe, Effective::MailchimpList) { |list| !list.can_subscribe? }
  can(:cannot_subscribe, Effective::MailchimpList) { |list| list.can_subscribe? }
end

License

MIT License. Copyright Code and Effect Inc.

Testing

Run tests by:

rails test

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Bonus points for test coverage
  6. Create new Pull Request

FAQs

Package last updated on 18 Dec 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc