ecm_sliders 0.0.1.pre → 0.0.2.pre
Sign up to get free protection for your applications and to get access to all the features.
- data/app/controllers/ecm/sliders/sliders_controller.rb +1 -1
- data/app/helpers/ecm/sliders_helper.rb +1 -1
- data/app/models/ecm/sliders/slider.rb +13 -1
- data/app/views/ecm/sliders/sliders/_slider.html.erb +1 -4
- data/app/views/ecm/sliders/sliders/index.html.erb +4 -1
- data/db/migrate/001_create_ecm_sliders_sliders.rb +1 -0
- data/lib/ecm/sliders/active_admin/ecm_sliders_sliders.rb +3 -0
- data/lib/ecm/sliders/version.rb +1 -1
- data/lib/tasks/ecm_sliders_tasks.rake +7 -0
- metadata +3 -3
@@ -1,6 +1,6 @@
|
|
1
1
|
module Ecm::SlidersHelper
|
2
2
|
def render_slider(name, options = {})
|
3
|
-
slider = Ecm::Sliders::Slider.where(:name => name.to_s).first
|
3
|
+
slider = Ecm::Sliders::Slider.where(:name => name.to_s).for_locale(I18n.locale).first
|
4
4
|
if slider.nil?
|
5
5
|
return I18n.t('ecm.sliders.slider.warnings.not_found', :name => name)
|
6
6
|
else
|
@@ -14,6 +14,7 @@ class Ecm::Sliders::Slider < ActiveRecord::Base
|
|
14
14
|
:ecm_sliders_items_attributes,
|
15
15
|
:ecm_sliders_items_count,
|
16
16
|
:identifier,
|
17
|
+
:locale,
|
17
18
|
:name,
|
18
19
|
:slug
|
19
20
|
|
@@ -24,7 +25,18 @@ class Ecm::Sliders::Slider < ActiveRecord::Base
|
|
24
25
|
friendly_id :name, :use => :slugged
|
25
26
|
|
26
27
|
# validations
|
28
|
+
validates :locale, :inclusion => I18n.available_locales.map(&:to_s),
|
29
|
+
:if => proc { |slider| slider.locale.present? }
|
27
30
|
validates :name, :presence => true,
|
28
|
-
:uniqueness =>
|
31
|
+
:uniqueness => { :scope => :locale }
|
32
|
+
|
33
|
+
# class methods
|
34
|
+
def self.for_locale(locale)
|
35
|
+
where(
|
36
|
+
self.arel_table[:locale].eq(locale).or(
|
37
|
+
self.arel_table[:locale].eq(nil)
|
38
|
+
)
|
39
|
+
).order('locale DESC')
|
40
|
+
end
|
29
41
|
end
|
30
42
|
|
@@ -1,13 +1,10 @@
|
|
1
1
|
<div class="slider">
|
2
|
-
|
3
2
|
<div id="slider-<%= slider.to_param %>" class="carousel slide">
|
4
|
-
<!-- Carousel items -->
|
5
3
|
<div class="carousel-inner">
|
6
4
|
<%= render slider.ecm_sliders_items %>
|
7
5
|
</div>
|
8
|
-
<!-- Carousel nav -->
|
9
6
|
<a class="carousel-control left" href="#slider-<%= slider.to_param %>" data-slide="prev">‹</a>
|
10
7
|
<a class="carousel-control right" href="#slider-<%= slider.to_param %>" data-slide="next">›</a>
|
11
8
|
</div>
|
12
|
-
|
13
9
|
</div>
|
10
|
+
|
@@ -6,6 +6,7 @@ ActiveAdmin.register Ecm::Sliders::Slider do
|
|
6
6
|
|
7
7
|
form do |f|
|
8
8
|
f.inputs do
|
9
|
+
f.input :locale, :as => :select, :collection => I18n.available_locales.map(&:to_s)
|
9
10
|
f.input :name
|
10
11
|
f.input :description
|
11
12
|
end
|
@@ -29,6 +30,7 @@ ActiveAdmin.register Ecm::Sliders::Slider do
|
|
29
30
|
selectable_column
|
30
31
|
|
31
32
|
column :name
|
33
|
+
column :locale
|
32
34
|
column :description
|
33
35
|
column :ecm_sliders_items_count
|
34
36
|
column :created_at
|
@@ -64,6 +66,7 @@ ActiveAdmin.register Ecm::Sliders::Slider do
|
|
64
66
|
sidebar Ecm::Sliders::Slider.human_attribute_name(:details), :only => :show do
|
65
67
|
attributes_table_for ecm_sliders_slider do
|
66
68
|
row :name
|
69
|
+
row :locale
|
67
70
|
row :ecm_sliders_items_count
|
68
71
|
row :created_at
|
69
72
|
row :updated_at
|
data/lib/ecm/sliders/version.rb
CHANGED
@@ -35,6 +35,13 @@ namespace :ecm do
|
|
35
35
|
Ecm::Sliders::Slider.create! do |s|
|
36
36
|
s.name = "Slider Gallery #{i}"
|
37
37
|
end
|
38
|
+
|
39
|
+
I18n.available_locales.each do |locale|
|
40
|
+
Ecm::Sliders::Slider.create! do |s|
|
41
|
+
s.name = "Slider Gallery #{i}"
|
42
|
+
s.locale = locale.to_s
|
43
|
+
end if (rand(3) == 0)
|
44
|
+
end
|
38
45
|
end
|
39
46
|
end
|
40
47
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ecm_sliders
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 961915980
|
5
5
|
prerelease: 6
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
9
|
+
- 2
|
10
10
|
- pre
|
11
|
-
version: 0.0.
|
11
|
+
version: 0.0.2.pre
|
12
12
|
platform: ruby
|
13
13
|
authors:
|
14
14
|
- Roberto Vasquez Angel
|