Sha256: 717ac1bd9907bb55e7cb6cdff9b2ec581be2257cb29ca7bbc786b3bfb0ca2a17

Contents?: true

Size: 1.14 KB

Versions: 3

Compression:

Stored size: 1.14 KB

Contents

require 'rails/generators'

module Inky
  module Generators
    class InstallGenerator < ::Rails::Generators::Base
      desc 'Install Foundation for Emails'
      source_root File.join(File.dirname(__FILE__), 'templates')
      argument :layout_name, type: :string, default: 'mailer', banner: 'layout_name'

      def preserve_original_mailer_layout
        return unless layout_name == 'mailer'

        original_mailer = File.join(layouts_base_dir, 'mailer.html.erb')
        rename_filename = File.join(layouts_base_dir, "old_mailer_#{Time.now.to_i}.html.erb")
        File.rename(original_mailer, rename_filename) if File.exist? original_mailer
      end

      def create_mailer_stylesheet
        template 'foundation_emails.scss', File.join(stylesheets_base_dir, 'foundation_emails.scss')
      end

      def create_mailer_layout
        template 'mailer_layout.html.erb', File.join(layouts_base_dir, "#{layout_name.underscore}.html.erb")
      end

      private

      def stylesheets_base_dir
        File.join('app', 'assets', 'stylesheets')
      end

      def layouts_base_dir
        File.join('app', 'views', 'layouts')
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
inky-rb-1.3.7.0 lib/generators/inky/install_generator.rb
inky-rb-1.3.6.3 lib/generators/inky/install_generator.rb
inky-rb-1.3.6.2 lib/generators/inky/install_generator.rb