pixelforce_cms 2.0 → 2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 94e369f2069cd38fa8eecd04613410930fcb3f57
4
- data.tar.gz: cdfd0a098e1909fd2b2f65283bc56a11cf506781
3
+ metadata.gz: bd2e70dd107d9131554c4e3134dcb1b7bdc6827c
4
+ data.tar.gz: 2fae870adf6af25ef738821f6d25c6687bfe4849
5
5
  SHA512:
6
- metadata.gz: 52905a0d469cccf95820593d9c4617ec799481c7c612e307e30a10a4e006d5d605fce3d6b9954173a85735e46fc2d5a9fe27f4ce35871fcbf3b497f7eff99f0d
7
- data.tar.gz: 6136a1284ad341df49261e678d1fd3175d441d4d886037069f360cd678b6945eb3f1764e61b4597efcace98535f6bed62367c4d5eea6e1370d734e66e1a7b072
6
+ metadata.gz: ba808c2f4cef772bb0b24f1f0e98506818a377eb8d0b7d51989fcdb56b8b7b14fbed3ce3ea9bdccfea17cbb20ae4d5e64c9d99d32af04afbe68d6e2a0f01c509
7
+ data.tar.gz: 01ccf3940f2e550fe716182319b9469bca6be6afb93e9dc33e9dbf7af52fb2a9f7e0b298d6e27561dea808aa571c57b75d2d47a2797bb34db754fe5f0902f29e
@@ -57,6 +57,7 @@ module PixelforceCms
57
57
 
58
58
  def copy_model_files
59
59
  copy_file "pretty_url.rb", "app/models/concerns/pretty_url.rb"
60
+ copy_file "arrayable.rb", "app/models/concerns/arrayable.rb"
60
61
  copy_file "double.rb", "app/models/double.rb"
61
62
  end
62
63
 
@@ -51,8 +51,7 @@ gem 'au_state_select', '~> 1.1'
51
51
  #ancestry
52
52
  gem 'ancestry'
53
53
 
54
- group :test do
55
- gem 'rspec'
54
+ group :development, :test do
56
55
  gem 'rspec-rails', '~> 3.0'
57
56
  gem 'simplecov'
58
57
  gem "factory_girl_rails", "~> 4.0"
@@ -0,0 +1,33 @@
1
+ module Arrayable
2
+ extend ActiveSupport::Concern
3
+
4
+ module ClassMethods
5
+ def attr_arrayable(*args)
6
+ args.each do |arg|
7
+ target_class = arg.to_s.gsub('_ids', '').camelize
8
+ scope "by_#{arg}".gsub('_ids', '').to_sym, -> (object) do
9
+ case object
10
+ when Integer, String
11
+ where("? = ANY(#{self.table_name}.#{arg})", object)
12
+ when target_class.constantize
13
+ where("? = ANY(#{self.table_name}.#{arg})", object.id)
14
+ when Array
15
+ where("ARRAY[?] && #{arg}", object)
16
+ end
17
+ end
18
+
19
+ class_eval %Q(
20
+ def #{arg.to_s.gsub('_ids', '').pluralize}
21
+ #{target_class}.where(id: #{arg})
22
+ end
23
+
24
+ def #{arg}=(ids)
25
+ ids -= [0, nil, ""]
26
+ super(ids)
27
+ end
28
+ )
29
+ end
30
+ end
31
+ end
32
+
33
+ end
@@ -28,3 +28,5 @@
28
28
  @import 'bootstrap';
29
29
  @import 'application';
30
30
  @import 'style';
31
+ @import 'style.responsive';
32
+ // @import 'layouts/header';
@@ -91,6 +91,3 @@ abbr[title] { border: 0; }
91
91
  .pull-none { float: none; }
92
92
  .media > .pull-left { margin-right: $gutter*2; }
93
93
  .media > .pull-right { margin-left: $gutter*2; }
94
-
95
- @import 'style.responsive';
96
- @import 'layouts/*';
@@ -1,3 +1,3 @@
1
1
  module PixelforceCms
2
- VERSION = "2.0"
2
+ VERSION = "2.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pixelforce_cms
3
3
  version: !ruby/object:Gem::Version
4
- version: '2.0'
4
+ version: '2.2'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Zhang
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-03 00:00:00.000000000 Z
11
+ date: 2015-03-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -62,6 +62,7 @@ files:
62
62
  - lib/generators/pixelforce_cms/templates/application/_footer.html.haml
63
63
  - lib/generators/pixelforce_cms/templates/application/_head.html.haml
64
64
  - lib/generators/pixelforce_cms/templates/application/_header.html.haml
65
+ - lib/generators/pixelforce_cms/templates/arrayable.rb
65
66
  - lib/generators/pixelforce_cms/templates/base_controller.rb
66
67
  - lib/generators/pixelforce_cms/templates/contact_us.rb
67
68
  - lib/generators/pixelforce_cms/templates/contacts_controller.rb