ecm_sliders 0.0.1.pre

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/MIT-LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright 2012 Roberto Vasquez Angel
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.rdoc ADDED
@@ -0,0 +1,3 @@
1
+ = ECM Sliders
2
+
3
+ This project rocks and uses MIT-LICENSE.
data/Rakefile ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env rake
2
+ begin
3
+ require 'bundler/setup'
4
+ rescue LoadError
5
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
6
+ end
7
+ begin
8
+ require 'rdoc/task'
9
+ rescue LoadError
10
+ require 'rdoc/rdoc'
11
+ require 'rake/rdoctask'
12
+ RDoc::Task = Rake::RDocTask
13
+ end
14
+
15
+ RDoc::Task.new(:rdoc) do |rdoc|
16
+ rdoc.rdoc_dir = 'rdoc'
17
+ rdoc.title = 'EcmSliders'
18
+ rdoc.options << '--line-numbers'
19
+ rdoc.rdoc_files.include('README.rdoc')
20
+ rdoc.rdoc_files.include('lib/**/*.rb')
21
+ end
22
+
23
+
24
+
25
+
26
+ Bundler::GemHelper.install_tasks
27
+
@@ -0,0 +1,6 @@
1
+ class Ecm::Sliders::SlidersController < ApplicationController
2
+ def index
3
+ @sliders = Ecm::Sliders::Slider.all
4
+ end
5
+ end
6
+
@@ -0,0 +1,10 @@
1
+ module Ecm::SlidersHelper
2
+ def render_slider(name, options = {})
3
+ slider = Ecm::Sliders::Slider.where(:name => name.to_s).first
4
+ if slider.nil?
5
+ return I18n.t('ecm.sliders.slider.warnings.not_found', :name => name)
6
+ else
7
+ return render(slider)
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,44 @@
1
+ class Ecm::Sliders::Item < ActiveRecord::Base
2
+ self.table_name = 'ecm_sliders_items'
3
+
4
+ # acts as list
5
+ acts_as_list :scope => :ecm_sliders_slider
6
+
7
+ # acts as markup
8
+ acts_as_markup :language => :variable, :columns => [ :body ]
9
+
10
+ # associations
11
+ belongs_to :ecm_sliders_slider,
12
+ :class_name => Ecm::Sliders::Slider,
13
+ :counter_cache => :ecm_sliders_items_count,
14
+ :inverse_of => :ecm_sliders_items
15
+
16
+ # attributes
17
+ attr_accessible :body,
18
+ :ecm_sliders_slider,
19
+ :ecm_sliders_slider_id,
20
+ :image,
21
+ :position,
22
+ :url
23
+
24
+ # callbacks
25
+ after_initialize :set_defaults
26
+
27
+ # paperclip
28
+ has_attached_file :image,
29
+ :styles => Ecm::Sliders::Configuration.item_image_styles
30
+
31
+ # validations
32
+ validates :ecm_sliders_slider_id, :presence => true
33
+ validates :markup_language, :presence => true,
34
+ :inclusion => Ecm::Sliders::Configuration.markup_languages
35
+
36
+ private
37
+
38
+ def set_defaults
39
+ if self.new_record?
40
+ self.markup_language ||= Ecm::Sliders::Configuration.default_markup_language
41
+ end
42
+ end
43
+ end
44
+
@@ -0,0 +1,30 @@
1
+ class Ecm::Sliders::Slider < ActiveRecord::Base
2
+ self.table_name = 'ecm_sliders_sliders'
3
+
4
+ # associations
5
+ has_many :ecm_sliders_items,
6
+ :class_name => Ecm::Sliders::Item,
7
+ :dependent => :destroy,
8
+ :foreign_key => :ecm_sliders_slider_id,
9
+ :order => 'position',
10
+ :inverse_of => :ecm_sliders_slider
11
+
12
+ # attributes
13
+ attr_accessible :description,
14
+ :ecm_sliders_items_attributes,
15
+ :ecm_sliders_items_count,
16
+ :identifier,
17
+ :name,
18
+ :slug
19
+
20
+ accepts_nested_attributes_for :ecm_sliders_items, :allow_destroy => true
21
+
22
+ # friendly id
23
+ extend FriendlyId
24
+ friendly_id :name, :use => :slugged
25
+
26
+ # validations
27
+ validates :name, :presence => true,
28
+ :uniqueness => true
29
+ end
30
+
@@ -0,0 +1,13 @@
1
+ <div class="item<%= " active" if item_counter == 0 %>">
2
+ <% if item.url.present? %>
3
+ <%= link_to(image_tag(item.image.url(:slider)), item.url) %>
4
+ <% else %>
5
+ <%= image_tag(item.image.url(:slider)) %>
6
+ <% end %>
7
+
8
+ <% if item.body.present? %>
9
+ <div class="carousel-caption slider-body">
10
+ <%= mu(item, :body) %>
11
+ </div>
12
+ <% end %>
13
+ </div>
@@ -0,0 +1,13 @@
1
+ <div class="slider">
2
+
3
+ <div id="slider-<%= slider.to_param %>" class="carousel slide">
4
+ <!-- Carousel items -->
5
+ <div class="carousel-inner">
6
+ <%= render slider.ecm_sliders_items %>
7
+ </div>
8
+ <!-- Carousel nav -->
9
+ <a class="carousel-control left" href="#slider-<%= slider.to_param %>" data-slide="prev">&lsaquo;</a>
10
+ <a class="carousel-control right" href="#slider-<%= slider.to_param %>" data-slide="next">&rsaquo;</a>
11
+ </div>
12
+
13
+ </div>
@@ -0,0 +1,3 @@
1
+ <h1><%= Ecm::Sliders::Slider.model_name.human(:count => :other) %></h1>
2
+
3
+ <%= render @sliders %>
@@ -0,0 +1,9 @@
1
+ de:
2
+ ecm:
3
+ sliders:
4
+ active_admin:
5
+ menu: Slider
6
+ slider:
7
+ warnings:
8
+ not_found: Slider %{name} nicht gefunden
9
+
@@ -0,0 +1,9 @@
1
+ en:
2
+ ecm:
3
+ sliders:
4
+ active_admin:
5
+ menu: sliders
6
+ slider:
7
+ warnings:
8
+ not_found: Could not find slider %{name}
9
+
@@ -0,0 +1,24 @@
1
+ ---
2
+ de:
3
+ activerecord:
4
+ models:
5
+ ecm/sliders/item:
6
+ one: Slider Item
7
+ other: Slider Items
8
+ attributes:
9
+ ecm/sliders/item:
10
+ body: Inhalt
11
+ created_at: Erstellt am
12
+ ecm_sliders_slider_id: Slider
13
+ ecm_sliders_slider: Slider
14
+ image_content_type: Dateintyp
15
+ image_file_name: Dateiname
16
+ image_file_size: Dateigrösse
17
+ image_fingerprint: Dateifingerabdruck
18
+ image_updated_at: Datei erstellt am
19
+ position: Position
20
+ updated_at: Aktualisiert am
21
+ url: URL
22
+ resources:
23
+ ecm_sliders_slider_items: slider-items
24
+
@@ -0,0 +1,24 @@
1
+ ---
2
+ en:
3
+ activerecord:
4
+ models:
5
+ ecm/sliders/item:
6
+ one: slider item
7
+ other: slider items
8
+ attributes:
9
+ ecm/sliders/item:
10
+ body: body
11
+ created_at: created at
12
+ ecm_sliders_slider_id: slider
13
+ ecm_sliders_slider: slider
14
+ image_content_type: image filetype
15
+ image_file_name: imagte filename
16
+ image_file_size: image filesize
17
+ image_fingerprint: image fingerprint
18
+ image_updated_at: image updated at
19
+ position: position
20
+ updated_at: updated at
21
+ url: url
22
+ resources:
23
+ ecm_sliders_slider_items: slider-items
24
+
@@ -0,0 +1,19 @@
1
+ ---
2
+ de:
3
+ activerecord:
4
+ models:
5
+ ecm/sliders/slider:
6
+ one: Slider
7
+ other: Slider
8
+ attributes:
9
+ ecm/sliders/slider:
10
+ created_at: Erstellt am
11
+ description: Beschreibung
12
+ ecm_sliders_items: Slider Items
13
+ ecm_sliders_items_count: Slider Items
14
+ name: Name
15
+ slug: Freundliche ID
16
+ updated_at: Aktualisiert am
17
+ resources:
18
+ ecm_sliders_sliders: sliders
19
+
@@ -0,0 +1,19 @@
1
+ ---
2
+ en:
3
+ activerecord:
4
+ models:
5
+ ecm/sliders/slider:
6
+ one: slider
7
+ other: sliders
8
+ attributes:
9
+ ecm/sliders/slider:
10
+ created_at: created at
11
+ description: description
12
+ ecm_sliders_items: slider items
13
+ ecm_sliders_items_count: slider items
14
+ name: name
15
+ slug: friendly id
16
+ updated_at: updated at
17
+ resources:
18
+ ecm_sliders_sliders: sliders
19
+
@@ -0,0 +1,16 @@
1
+ class CreateEcmSlidersSliders < ActiveRecord::Migration
2
+ def change
3
+ create_table :ecm_sliders_sliders do |t|
4
+ t.string :name
5
+ t.text :description
6
+
7
+ # friendly id
8
+ t.string :slug
9
+
10
+ # associations
11
+ t.integer :ecm_sliders_items_count, :default => 0, :null => false
12
+
13
+ t.timestamps
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,24 @@
1
+ class CreateEcmSlidersItems < ActiveRecord::Migration
2
+ def change
3
+ create_table :ecm_sliders_items do |t|
4
+ t.text :body
5
+ t.string :url
6
+ t.integer :position
7
+
8
+ # acts as markup
9
+ t.string :markup_language
10
+
11
+ # associations
12
+ t.references :ecm_sliders_slider
13
+
14
+ # paperclip
15
+ t.string :image_file_name
16
+ t.integer :image_file_size
17
+ t.string :image_content_type
18
+ t.timestamp :image_updated_at
19
+ t.string :image_fingerprint
20
+
21
+ t.timestamps
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,57 @@
1
+ include ActiveAdmin::ActsAsList::Helper if defined?(::ActiveAdmin)
2
+
3
+ ActiveAdmin.register Ecm::Sliders::Item do
4
+ # menu entry settings
5
+ menu :parent => Proc.new { I18n.t('ecm.sliders.active_admin.menu') }.call
6
+
7
+ # active_admin-acts_as_list
8
+ sortable_member_actions
9
+
10
+ form do |f|
11
+ f.inputs do
12
+ f.input :ecm_sliders_slider
13
+ f.input :image, :as => :file,
14
+ :hint => f.template.image_tag(f.object.image.url(:thumb))
15
+ f.input :url
16
+ f.input :body
17
+ end
18
+
19
+ f.actions
20
+ end
21
+
22
+ index do
23
+ selectable_column
24
+ column :thumbnail do |item|
25
+ link_to(image_tag(item.image.url(:small_thumb)), [:admin, item])
26
+ end
27
+ column :ecm_sliders_slider
28
+ column(:url) { |item| link_to_if(item.url.present?, item.url, item.url) }
29
+ column :created_at
30
+ column :updated_at
31
+ default_actions
32
+ end
33
+
34
+ show do
35
+ attributes_table do
36
+ row(:image) { |item| image_tag(item.image.url(:slider)) }
37
+ row :image_file_name
38
+ row :image_file_size
39
+ row :image_content_type
40
+ row :image_updated_at
41
+ row :image_fingerprint
42
+ end
43
+
44
+ panel Ecm::Sliders::Item.human_attribute_name(:body) do
45
+ div { ecm_sliders_item.body }
46
+ end
47
+ end # show
48
+
49
+ sidebar Ecm::Sliders::Item.human_attribute_name(:details), :only => :show do
50
+ attributes_table_for ecm_sliders_item do
51
+ row :ecm_sliders_slider
52
+ row(:url) { |item| link_to_if(item.url.present?, item.url, item.url) }
53
+ row :created_at
54
+ row :updated_at
55
+ end
56
+ end # sidebar
57
+ end if defined?(ActiveAdmin)
@@ -0,0 +1,73 @@
1
+ include ActiveAdmin::ActsAsList::Helper if defined?(::ActiveAdmin)
2
+
3
+ ActiveAdmin.register Ecm::Sliders::Slider do
4
+ # menu entry settings
5
+ menu :parent => Proc.new { I18n.t('ecm.sliders.active_admin.menu') }.call
6
+
7
+ form do |f|
8
+ f.inputs do
9
+ f.input :name
10
+ f.input :description
11
+ end
12
+
13
+ f.inputs do
14
+ f.has_many :ecm_sliders_items do |item|
15
+ if item.object.persisted?
16
+ item.input :_destroy, :as => :boolean, :label => I18n.t('active_admin.delete')
17
+ end
18
+ item.input :image, :as => :file,
19
+ :hint => item.template.image_tag(item.object.image.url(:thumb))
20
+ item.input :url
21
+ item.input :body
22
+ end # f.has_many
23
+ end
24
+
25
+ f.actions
26
+ end
27
+
28
+ index do
29
+ selectable_column
30
+
31
+ column :name
32
+ column :description
33
+ column :ecm_sliders_items_count
34
+ column :created_at
35
+ column :updated_at
36
+
37
+ default_actions
38
+ end
39
+
40
+ show do
41
+ panel Ecm::Sliders::Slider.human_attribute_name(:description) do
42
+ div { ecm_sliders_slider.description }
43
+ end
44
+
45
+ panel Ecm::Sliders::Slider.human_attribute_name(:ecm_sliders_items) do
46
+ table_for ecm_sliders_slider.ecm_sliders_items, :i18n => Ecm::Sliders::Item do
47
+ sortable_columns
48
+
49
+ column :thumbnail do |item|
50
+ link_to(image_tag(item.image.url(:small_thumb)), [:admin, item])
51
+ end
52
+ column(:url) { |item| link_to_if(item.url.present?, item.url, item.url) }
53
+ column :created_at
54
+ column :updated_at
55
+
56
+ column do |item|
57
+ link_to(I18n.t('active_admin.view'), [:admin, item], :class => "member_link view_link") +
58
+ link_to(I18n.t('active_admin.edit'), [:edit, :admin, item], :class => "member_link edit_link")
59
+ end
60
+ end
61
+ end
62
+ end
63
+
64
+ sidebar Ecm::Sliders::Slider.human_attribute_name(:details), :only => :show do
65
+ attributes_table_for ecm_sliders_slider do
66
+ row :name
67
+ row :ecm_sliders_items_count
68
+ row :created_at
69
+ row :updated_at
70
+ end
71
+ end # sidebar
72
+ end if defined?(ActiveAdmin)
73
+
@@ -0,0 +1,22 @@
1
+ require 'active_support/core_ext/module/delegation'
2
+ require 'active_support/core_ext/module/attribute_accessors'
3
+ require 'active_support/hash_with_indifferent_access'
4
+
5
+ module Ecm
6
+ module Sliders
7
+ module Configuration
8
+ def configure
9
+ yield self
10
+ end
11
+
12
+ mattr_accessor :item_image_styles
13
+ @@item_image_styles = {}
14
+
15
+ mattr_accessor :markup_languages
16
+ @@markup_languages = []
17
+
18
+ mattr_accessor :default_markup_language
19
+ @@default_markup_language = nil
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,12 @@
1
+ module Ecm
2
+ module Sliders
3
+ class Engine < ::Rails::Engine
4
+ # active admin
5
+ initializer :ecm_sliders_engine do
6
+ ::ActiveAdmin.setup do |active_admin_config|
7
+ active_admin_config.load_paths += Dir[File.dirname(__FILE__) + '/active_admin']
8
+ end
9
+ end if defined?(::ActiveAdmin)
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,14 @@
1
+ module Ecm
2
+ module Sliders
3
+ class Routing
4
+ def self.routes(router, options = {})
5
+ options.reverse_merge!(
6
+ { :slider_actions => [ :index ] }
7
+ )
8
+
9
+ router.resources :ecm_sliders_sliders, :only => options[:slider_actions], :controller => 'ecm/sliders/sliders'
10
+ end
11
+ end
12
+ end
13
+ end
14
+
@@ -0,0 +1,5 @@
1
+ module Ecm
2
+ module Sliders
3
+ VERSION = "0.0.1.pre"
4
+ end
5
+ end
@@ -0,0 +1,15 @@
1
+ require 'active_admin-acts_as_list'
2
+ require 'acts_as_list'
3
+ require 'acts_as_markup'
4
+ require 'friendly_id'
5
+ require 'paperclip'
6
+
7
+ require 'ecm/sliders/engine'
8
+ require 'ecm/sliders/configuration'
9
+ require 'ecm/sliders/routing'
10
+
11
+ module Ecm
12
+ module Sliders
13
+ extend Configuration
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module Ecm
2
+ module Sliders
3
+ module Generators
4
+ class InstallGenerator < Rails::Generators::Base
5
+ desc "Generates the intializer"
6
+
7
+ source_root File.expand_path('../templates', __FILE__)
8
+
9
+ def generate_intializer
10
+ copy_file "ecm_sliders.rb", "config/initializers/ecm_sliders.rb"
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,17 @@
1
+ Ecm::Sliders.configure do |config|
2
+ # Item options
3
+
4
+ # image sizes for slider items
5
+ config.item_image_styles = {
6
+ :small_thumb => "80x60>",
7
+ :medium_thumb => "160x120>",
8
+ :slider => "830x477"
9
+ }
10
+
11
+ # Accepted markup languages for the item body
12
+ config.markup_languages = %w[ markdown rdoc textile ]
13
+
14
+ # Default markup language for the item body
15
+ config.default_markup_language = 'textile'
16
+ end
17
+
@@ -0,0 +1,23 @@
1
+ module Ecm
2
+ module Sliders
3
+ module Generators
4
+ class LocalesGenerator < Rails::Generators::Base
5
+ desc "Copies the locale files to your application"
6
+
7
+ source_root File.expand_path('../../../../../../config/locales', __FILE__)
8
+
9
+ def generate_locales
10
+ copy_file "ecm.sliders.en.yml", "config/locales/ecm.sliders.en.yml"
11
+ copy_file "ecm.sliders.de.yml", "config/locales/ecm.sliders.de.yml"
12
+
13
+ copy_file "ecm.sliders.item.en.yml", "config/locales/ecm.sliders.item.en.yml"
14
+ copy_file "ecm.sliders.item.de.yml", "config/locales/ecm.sliders.item.de.yml"
15
+
16
+ copy_file "ecm.sliders.slider.en.yml", "config/locales/ecm.sliders.slider.en.yml"
17
+ copy_file "ecm.sliders.slider.de.yml", "config/locales/ecm.sliders.slider.de.yml"
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+
@@ -0,0 +1,60 @@
1
+ namespace :ecm do
2
+ namespace :sliders do
3
+ namespace :db do
4
+ desc "Purges and creates example data"
5
+ task :populate!, [] => [:environment] do |t, args|
6
+ Rake::Task["ecm:sliders:db:clear!"].execute
7
+ Rake::Task["ecm:sliders:db:populate"].execute
8
+ end
9
+
10
+ desc "Clears all data!"
11
+ task :clear!, [] => [:environment] do |t, args|
12
+ Rake::Task["ecm:sliders:db:clear_sliders!"].execute
13
+ Rake::Task["ecm:sliders:db:clear_items!"].execute
14
+ end
15
+
16
+ desc "Clears all sliders!"
17
+ task :clear_sliders!, [] => [:environment] do |t, args|
18
+ Ecm::Sliders::Slider.delete_all
19
+ end
20
+
21
+ desc "Clears all items!"
22
+ task :clear_items!, [] => [:environment] do |t, args|
23
+ Ecm::Sliders::Item.delete_all
24
+ end
25
+
26
+ desc "Creates example data"
27
+ task :populate, [] => [:environment] do |t, args|
28
+ Rake::Task["ecm:sliders:db:populate_sliders"].execute
29
+ Rake::Task["ecm:sliders:db:populate_items"].execute
30
+ end
31
+
32
+ desc "Creates example data for sliders"
33
+ task :populate_sliders, [] => [:environment] do |t, args|
34
+ 5.times do |i|
35
+ Ecm::Sliders::Slider.create! do |s|
36
+ s.name = "Slider Gallery #{i}"
37
+ end
38
+ end
39
+ end
40
+
41
+ desc "Creates example data for items"
42
+ task :populate_items, [] => [:environment] do |t, args|
43
+ require "ffaker"
44
+ require "forgery"
45
+
46
+ sliders = Ecm::Sliders::Slider.all
47
+ 50.times do
48
+ Ecm::Sliders::Item.create! do |i|
49
+ i.ecm_sliders_slider = sliders.choice
50
+ i.image = File.open(File.join(Ecm::Sliders::Engine.root, 'spec/files', 'ecm/sliders/items', 'example.png'))
51
+ i.body = Faker::Lorem.paragraph(rand(3)) if (rand(4) != 0)
52
+ i.url = Faker::Internet.http_url if (rand(2) == 0)
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
59
+
60
+
metadata ADDED
@@ -0,0 +1,406 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ecm_sliders
3
+ version: !ruby/object:Gem::Version
4
+ hash: 961915968
5
+ prerelease: 6
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 1
10
+ - pre
11
+ version: 0.0.1.pre
12
+ platform: ruby
13
+ authors:
14
+ - Roberto Vasquez Angel
15
+ autorequire:
16
+ bindir: bin
17
+ cert_chain: []
18
+
19
+ date: 2012-09-24 00:00:00 Z
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: active_admin-acts_as_list
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ hash: 19
30
+ segments:
31
+ - 0
32
+ - 0
33
+ - 6
34
+ version: 0.0.6
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: acts_as_list
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ hash: 11
46
+ segments:
47
+ - 0
48
+ - 1
49
+ - 8
50
+ version: 0.1.8
51
+ type: :runtime
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ name: acts_as_markup
55
+ prerelease: false
56
+ requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ hash: 3
62
+ segments:
63
+ - 0
64
+ version: "0"
65
+ type: :runtime
66
+ version_requirements: *id003
67
+ - !ruby/object:Gem::Dependency
68
+ name: friendly_id
69
+ prerelease: false
70
+ requirement: &id004 !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ hash: 47
76
+ segments:
77
+ - 4
78
+ - 0
79
+ - 8
80
+ version: 4.0.8
81
+ type: :runtime
82
+ version_requirements: *id004
83
+ - !ruby/object:Gem::Dependency
84
+ name: paperclip
85
+ prerelease: false
86
+ requirement: &id005 !ruby/object:Gem::Requirement
87
+ none: false
88
+ requirements:
89
+ - - ~>
90
+ - !ruby/object:Gem::Version
91
+ hash: 13
92
+ segments:
93
+ - 2
94
+ - 7
95
+ version: "2.7"
96
+ type: :runtime
97
+ version_requirements: *id005
98
+ - !ruby/object:Gem::Dependency
99
+ name: rails
100
+ prerelease: false
101
+ requirement: &id006 !ruby/object:Gem::Requirement
102
+ none: false
103
+ requirements:
104
+ - - ~>
105
+ - !ruby/object:Gem::Version
106
+ hash: 31
107
+ segments:
108
+ - 3
109
+ - 2
110
+ - 8
111
+ version: 3.2.8
112
+ type: :runtime
113
+ version_requirements: *id006
114
+ - !ruby/object:Gem::Dependency
115
+ name: sqlite3
116
+ prerelease: false
117
+ requirement: &id007 !ruby/object:Gem::Requirement
118
+ none: false
119
+ requirements:
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ hash: 3
123
+ segments:
124
+ - 0
125
+ version: "0"
126
+ type: :development
127
+ version_requirements: *id007
128
+ - !ruby/object:Gem::Dependency
129
+ name: thin
130
+ prerelease: false
131
+ requirement: &id008 !ruby/object:Gem::Requirement
132
+ none: false
133
+ requirements:
134
+ - - ">="
135
+ - !ruby/object:Gem::Version
136
+ hash: 3
137
+ segments:
138
+ - 0
139
+ version: "0"
140
+ type: :development
141
+ version_requirements: *id008
142
+ - !ruby/object:Gem::Dependency
143
+ name: yard
144
+ prerelease: false
145
+ requirement: &id009 !ruby/object:Gem::Requirement
146
+ none: false
147
+ requirements:
148
+ - - ">="
149
+ - !ruby/object:Gem::Version
150
+ hash: 3
151
+ segments:
152
+ - 0
153
+ version: "0"
154
+ type: :development
155
+ version_requirements: *id009
156
+ - !ruby/object:Gem::Dependency
157
+ name: activeadmin
158
+ prerelease: false
159
+ requirement: &id010 !ruby/object:Gem::Requirement
160
+ none: false
161
+ requirements:
162
+ - - ">="
163
+ - !ruby/object:Gem::Version
164
+ hash: 3
165
+ segments:
166
+ - 0
167
+ version: "0"
168
+ type: :development
169
+ version_requirements: *id010
170
+ - !ruby/object:Gem::Dependency
171
+ name: sass-rails
172
+ prerelease: false
173
+ requirement: &id011 !ruby/object:Gem::Requirement
174
+ none: false
175
+ requirements:
176
+ - - ">="
177
+ - !ruby/object:Gem::Version
178
+ hash: 3
179
+ segments:
180
+ - 0
181
+ version: "0"
182
+ type: :development
183
+ version_requirements: *id011
184
+ - !ruby/object:Gem::Dependency
185
+ name: coffee-rails
186
+ prerelease: false
187
+ requirement: &id012 !ruby/object:Gem::Requirement
188
+ none: false
189
+ requirements:
190
+ - - ">="
191
+ - !ruby/object:Gem::Version
192
+ hash: 3
193
+ segments:
194
+ - 0
195
+ version: "0"
196
+ type: :development
197
+ version_requirements: *id012
198
+ - !ruby/object:Gem::Dependency
199
+ name: capybara
200
+ prerelease: false
201
+ requirement: &id013 !ruby/object:Gem::Requirement
202
+ none: false
203
+ requirements:
204
+ - - ">="
205
+ - !ruby/object:Gem::Version
206
+ hash: 3
207
+ segments:
208
+ - 0
209
+ version: "0"
210
+ type: :development
211
+ version_requirements: *id013
212
+ - !ruby/object:Gem::Dependency
213
+ name: rspec-rails
214
+ prerelease: false
215
+ requirement: &id014 !ruby/object:Gem::Requirement
216
+ none: false
217
+ requirements:
218
+ - - ~>
219
+ - !ruby/object:Gem::Version
220
+ hash: 3
221
+ segments:
222
+ - 2
223
+ - 0
224
+ version: "2.0"
225
+ type: :development
226
+ version_requirements: *id014
227
+ - !ruby/object:Gem::Dependency
228
+ name: shoulda-matchers
229
+ prerelease: false
230
+ requirement: &id015 !ruby/object:Gem::Requirement
231
+ none: false
232
+ requirements:
233
+ - - ">="
234
+ - !ruby/object:Gem::Version
235
+ hash: 3
236
+ segments:
237
+ - 0
238
+ version: "0"
239
+ type: :development
240
+ version_requirements: *id015
241
+ - !ruby/object:Gem::Dependency
242
+ name: factory_girl_rails
243
+ prerelease: false
244
+ requirement: &id016 !ruby/object:Gem::Requirement
245
+ none: false
246
+ requirements:
247
+ - - ~>
248
+ - !ruby/object:Gem::Version
249
+ hash: 15
250
+ segments:
251
+ - 1
252
+ - 0
253
+ version: "1.0"
254
+ type: :development
255
+ version_requirements: *id016
256
+ - !ruby/object:Gem::Dependency
257
+ name: ffaker
258
+ prerelease: false
259
+ requirement: &id017 !ruby/object:Gem::Requirement
260
+ none: false
261
+ requirements:
262
+ - - ">="
263
+ - !ruby/object:Gem::Version
264
+ hash: 3
265
+ segments:
266
+ - 0
267
+ version: "0"
268
+ type: :development
269
+ version_requirements: *id017
270
+ - !ruby/object:Gem::Dependency
271
+ name: forgery
272
+ prerelease: false
273
+ requirement: &id018 !ruby/object:Gem::Requirement
274
+ none: false
275
+ requirements:
276
+ - - "="
277
+ - !ruby/object:Gem::Version
278
+ hash: 11
279
+ segments:
280
+ - 0
281
+ - 5
282
+ - 0
283
+ version: 0.5.0
284
+ type: :development
285
+ version_requirements: *id018
286
+ - !ruby/object:Gem::Dependency
287
+ name: rb-inotify
288
+ prerelease: false
289
+ requirement: &id019 !ruby/object:Gem::Requirement
290
+ none: false
291
+ requirements:
292
+ - - ~>
293
+ - !ruby/object:Gem::Version
294
+ hash: 47
295
+ segments:
296
+ - 0
297
+ - 8
298
+ - 8
299
+ version: 0.8.8
300
+ type: :development
301
+ version_requirements: *id019
302
+ - !ruby/object:Gem::Dependency
303
+ name: guard-rspec
304
+ prerelease: false
305
+ requirement: &id020 !ruby/object:Gem::Requirement
306
+ none: false
307
+ requirements:
308
+ - - ">="
309
+ - !ruby/object:Gem::Version
310
+ hash: 3
311
+ segments:
312
+ - 0
313
+ version: "0"
314
+ type: :development
315
+ version_requirements: *id020
316
+ - !ruby/object:Gem::Dependency
317
+ name: guard-bundler
318
+ prerelease: false
319
+ requirement: &id021 !ruby/object:Gem::Requirement
320
+ none: false
321
+ requirements:
322
+ - - ">="
323
+ - !ruby/object:Gem::Version
324
+ hash: 3
325
+ segments:
326
+ - 0
327
+ version: "0"
328
+ type: :development
329
+ version_requirements: *id021
330
+ description: ECM Module Template.
331
+ email:
332
+ - roberto@vasquez-angel.de
333
+ executables: []
334
+
335
+ extensions: []
336
+
337
+ extra_rdoc_files: []
338
+
339
+ files:
340
+ - app/controllers/ecm/sliders/sliders_controller.rb
341
+ - app/helpers/ecm/sliders_helper.rb
342
+ - app/views/ecm/sliders/sliders/index.html.erb
343
+ - app/views/ecm/sliders/sliders/_slider.html.erb
344
+ - app/views/ecm/sliders/items/_item.html.erb
345
+ - app/models/ecm/sliders/item.rb
346
+ - app/models/ecm/sliders/slider.rb
347
+ - config/locales/ecm.sliders.de.yml
348
+ - config/locales/ecm.sliders.item.en.yml
349
+ - config/locales/ecm.sliders.slider.en.yml
350
+ - config/locales/ecm.sliders.item.de.yml
351
+ - config/locales/ecm.sliders.en.yml
352
+ - config/locales/ecm.sliders.slider.de.yml
353
+ - db/migrate/002_create_ecm_sliders_items.rb
354
+ - db/migrate/001_create_ecm_sliders_sliders.rb
355
+ - lib/generators/ecm/sliders/locales/locales_generator.rb
356
+ - lib/generators/ecm/sliders/install/install_generator.rb
357
+ - lib/generators/ecm/sliders/install/templates/ecm_sliders.rb
358
+ - lib/tasks/ecm_sliders_tasks.rake
359
+ - lib/ecm/sliders/active_admin/ecm_sliders_items.rb
360
+ - lib/ecm/sliders/active_admin/ecm_sliders_sliders.rb
361
+ - lib/ecm/sliders/engine.rb
362
+ - lib/ecm/sliders/version.rb
363
+ - lib/ecm/sliders/routing.rb
364
+ - lib/ecm/sliders/configuration.rb
365
+ - lib/ecm_sliders.rb
366
+ - MIT-LICENSE
367
+ - Rakefile
368
+ - README.rdoc
369
+ homepage: https://github.com/robotex82/ecm_faq
370
+ licenses: []
371
+
372
+ post_install_message:
373
+ rdoc_options: []
374
+
375
+ require_paths:
376
+ - lib
377
+ required_ruby_version: !ruby/object:Gem::Requirement
378
+ none: false
379
+ requirements:
380
+ - - ">="
381
+ - !ruby/object:Gem::Version
382
+ hash: 3
383
+ segments:
384
+ - 0
385
+ version: "0"
386
+ required_rubygems_version: !ruby/object:Gem::Requirement
387
+ none: false
388
+ requirements:
389
+ - - ">"
390
+ - !ruby/object:Gem::Version
391
+ hash: 25
392
+ segments:
393
+ - 1
394
+ - 3
395
+ - 1
396
+ version: 1.3.1
397
+ requirements: []
398
+
399
+ rubyforge_project:
400
+ rubygems_version: 1.8.24
401
+ signing_key:
402
+ specification_version: 3
403
+ summary: ECM Module Template.
404
+ test_files: []
405
+
406
+ has_rdoc: