adminpanel 2.2.5 → 2.3.0

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.
Files changed (202) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -5
  3. data/CONTRIBUTING.md +22 -0
  4. data/Gemfile +1 -6
  5. data/README.md +8 -13
  6. data/Rakefile +4 -6
  7. data/adminpanel.gemspec +29 -24
  8. data/app/assets/javascripts/{application-admin.js → adminpanel/application.js} +2 -1
  9. data/app/assets/javascripts/adminpanel/images_form_add_remove_fields.js.coffee +11 -0
  10. data/app/assets/javascripts/adminpanel/sections.js.coffee +9 -0
  11. data/app/assets/javascripts/adminpanel/spinner.js.coffee +3 -3
  12. data/app/assets/javascripts/adminpanel/tables.js +4 -3
  13. data/app/assets/javascripts/adminpanel/wysiwyg.js.coffee +4 -1
  14. data/app/assets/stylesheets/{application-admin.css → adminpanel/application.css} +2 -2
  15. data/app/assets/stylesheets/adminpanel/fa-hidden.css.scss +7 -0
  16. data/app/assets/stylesheets/adminpanel/theme.css.scss.erb +3 -27
  17. data/app/assets/stylesheets/adminpanel/turbolinks_progress_load.css.scss +5 -0
  18. data/app/controllers/adminpanel/analytics_controller.rb +3 -3
  19. data/app/controllers/adminpanel/application_controller.rb +5 -11
  20. data/app/controllers/adminpanel/auths_controller.rb +6 -0
  21. data/app/controllers/adminpanel/categories_controller.rb +26 -60
  22. data/app/controllers/adminpanel/permissions_controller.rb +1 -2
  23. data/app/controllers/adminpanel/roles_controller.rb +10 -0
  24. data/app/controllers/adminpanel/sections_controller.rb +14 -14
  25. data/app/controllers/adminpanel/sessions_controller.rb +4 -3
  26. data/app/controllers/adminpanel/users_controller.rb +2 -2
  27. data/app/controllers/concerns/adminpanel/analytics/twitter_analytics.rb +1 -1
  28. data/app/controllers/concerns/adminpanel/facebook_actions.rb +13 -12
  29. data/app/controllers/concerns/adminpanel/galleryzable_actions.rb +13 -9
  30. data/app/controllers/concerns/adminpanel/rest_actions.rb +65 -59
  31. data/app/controllers/concerns/adminpanel/sitemap_actions.rb +1 -1
  32. data/app/controllers/concerns/adminpanel/sortable_actions.rb +29 -0
  33. data/app/controllers/concerns/adminpanel/twitter_actions.rb +5 -5
  34. data/app/helpers/adminpanel/adminpanel_form_builder.rb +104 -64
  35. data/app/helpers/adminpanel/application_helper.rb +20 -9
  36. data/app/helpers/adminpanel/breadcrumbs_helper.rb +2 -2
  37. data/app/helpers/adminpanel/router_helper.rb +8 -4
  38. data/app/helpers/adminpanel/shared_pages_helper.rb +59 -11
  39. data/app/models/ability.rb +2 -2
  40. data/app/models/adminpanel/analytic.rb +3 -3
  41. data/app/models/adminpanel/permission.rb +19 -19
  42. data/app/models/adminpanel/{rol.rb → role.rb} +9 -2
  43. data/app/models/adminpanel/section.rb +10 -6
  44. data/app/models/adminpanel/{image.rb → sectionfile.rb} +1 -1
  45. data/app/models/adminpanel/user.rb +27 -31
  46. data/app/models/concerns/adminpanel/base.rb +33 -19
  47. data/app/models/concerns/adminpanel/galleryzation.rb +18 -5
  48. data/app/models/concerns/adminpanel/sitemap.rb +1 -1
  49. data/app/models/concerns/adminpanel/sortable.rb +69 -0
  50. data/app/uploaders/adminpanel/.keep +1 -0
  51. data/app/views/adminpanel/analytics/_fb_statistic_widget.html.erb +27 -27
  52. data/app/views/adminpanel/categories/_categories_table.html.erb +4 -4
  53. data/app/views/adminpanel/categories/_category_form.html.erb +26 -6
  54. data/app/views/adminpanel/categories/create.js.erb +4 -5
  55. data/app/views/adminpanel/categories/index.html.erb +23 -16
  56. data/app/views/adminpanel/categories/new.js.erb +1 -1
  57. data/app/views/adminpanel/form/_adminpanel_file_field.html.erb +24 -0
  58. data/app/views/adminpanel/form/_belongs_to.html.erb +24 -0
  59. data/app/views/adminpanel/form/_file_field.html.erb +4 -0
  60. data/app/views/adminpanel/form/_has_many.html.erb +19 -0
  61. data/app/views/adminpanel/form/_non_image_file_field.html.erb +4 -0
  62. data/app/views/{shared/_delete_icon_button.html.erb → adminpanel/icons/_delete.html.erb} +3 -1
  63. data/app/views/{shared/_edit_icon_button.html.erb → adminpanel/icons/_edit.html.erb} +3 -3
  64. data/app/views/{shared/_fb_icon_button.html.erb → adminpanel/icons/_facebook.html.erb} +6 -5
  65. data/app/views/adminpanel/icons/_move_to_better.html.erb +16 -0
  66. data/app/views/adminpanel/icons/_move_to_worst.html.erb +17 -0
  67. data/app/views/{shared/_show_icon_button.html.erb → adminpanel/icons/_show.html.erb} +1 -1
  68. data/app/views/{shared/_twitter_icon_button.html.erb → adminpanel/icons/_twitter.html.erb} +1 -1
  69. data/app/views/adminpanel/sections/_sections_table.html.erb +1 -1
  70. data/app/views/adminpanel/sections/edit.html.erb +25 -17
  71. data/app/views/adminpanel/sections/index.html.erb +1 -1
  72. data/app/views/adminpanel/sections/show.html.erb +2 -2
  73. data/app/views/{shared → adminpanel/shared}/_breadcrumb.html.erb +0 -0
  74. data/app/views/adminpanel/shared/_create_remote_resource_button.html.erb +21 -0
  75. data/app/views/{shared → adminpanel/shared}/_error_messages.html.erb +0 -0
  76. data/app/views/{shared → adminpanel/shared}/_fb_publish_modal.html.erb +2 -2
  77. data/app/views/adminpanel/shared/_form_fields.html.erb +21 -0
  78. data/app/views/adminpanel/shared/_gallery_entries.html.erb +11 -0
  79. data/app/views/adminpanel/shared/_image_fields.html.erb +3 -0
  80. data/app/views/adminpanel/shared/_index_records.html.erb +32 -0
  81. data/app/views/adminpanel/shared/_modal.html.erb +20 -0
  82. data/app/views/adminpanel/shared/_new_resource_button.html.erb +17 -0
  83. data/app/views/adminpanel/shared/_remote_form_fields.html.erb +28 -0
  84. data/app/views/{shared → adminpanel/shared}/_twitter_publish_modal.html.erb +0 -0
  85. data/app/views/{shared → adminpanel/shared}/create_belongs_to.js.erb +0 -0
  86. data/app/views/{shared → adminpanel/shared}/create_has_many.js.erb +0 -0
  87. data/app/views/adminpanel/shared/edit.html.erb +42 -0
  88. data/app/views/{shared → adminpanel/shared}/fb_choose_page.html.erb +2 -2
  89. data/app/views/adminpanel/shared/gallery_entries.js.erb +1 -0
  90. data/app/views/adminpanel/shared/index.html.erb +43 -0
  91. data/app/views/adminpanel/shared/index_records.js.erb +1 -0
  92. data/app/views/adminpanel/shared/new.html.erb +42 -0
  93. data/app/views/adminpanel/shared/new.js.erb +2 -0
  94. data/app/views/adminpanel/shared/show.html.erb +77 -0
  95. data/app/views/layouts/{_shim.html.erb → adminpanel/_shim.html.erb} +0 -0
  96. data/app/views/layouts/adminpanel/_side_menu.html.erb +32 -0
  97. data/app/views/layouts/{_top_bar.html.erb → adminpanel/_top_bar.html.erb} +4 -2
  98. data/app/views/layouts/{admin-login.html.erb → adminpanel/application-login.html.erb} +4 -4
  99. data/app/views/layouts/{admin.html.erb → adminpanel/application.html.erb} +8 -6
  100. data/config/initializers/adminpanel/clear_cache.rb +4 -0
  101. data/config/initializers/{pluralization_es.rb → adminpanel/pluralization_es.rb} +0 -0
  102. data/config/initializers/{twitter-oauth.rb → adminpanel/twitter_oauth.rb} +0 -0
  103. data/config/locales/en.yml +93 -59
  104. data/config/locales/es.yml +34 -14
  105. data/config/routes.rb +27 -24
  106. data/lib/adminpanel.rb +3 -1
  107. data/lib/adminpanel/engine.rb +6 -3
  108. data/lib/adminpanel/version.rb +1 -1
  109. data/lib/generators/adminpanel/contact/contact_generator.rb +12 -0
  110. data/{app/models/contact.rb → lib/generators/adminpanel/contact/templates/contact_template.rb} +0 -0
  111. data/lib/generators/adminpanel/dump/dump_generator.rb +37 -0
  112. data/lib/generators/adminpanel/gallery/templates/gallery_template.rb +7 -0
  113. data/lib/generators/adminpanel/gallery/templates/uploader.rb +7 -9
  114. data/lib/generators/adminpanel/initialize/templates/adminpanel_setup.rb +2 -2
  115. data/lib/generators/adminpanel/initialize/templates/create_adminpanel_tables.rb +23 -34
  116. data/lib/generators/adminpanel/initialize/templates/section_uploader.rb +6 -8
  117. data/lib/generators/adminpanel/resource/resource_generator.rb +3 -2
  118. data/lib/generators/adminpanel/resource/resource_generator_helper.rb +6 -8
  119. data/lib/generators/adminpanel/resource/templates/adminpanel_controller_template.rb +1 -1
  120. data/lib/generators/adminpanel/resource/templates/adminpanel_resource_template.rb +2 -2
  121. data/lib/tasks/adminpanel/adminpanel.rake +11 -24
  122. data/lib/tasks/adminpanel/sections.rake +65 -0
  123. data/test/dummy/app/controllers/adminpanel/file_resources_controller.rb +12 -0
  124. data/test/dummy/app/controllers/adminpanel/galleries_controller.rb +4 -0
  125. data/test/dummy/app/controllers/adminpanel/products_controller.rb +5 -5
  126. data/test/dummy/app/models/adminpanel/category.rb +2 -0
  127. data/test/dummy/app/models/adminpanel/file_resource.rb +34 -0
  128. data/test/dummy/app/models/adminpanel/file_resourcefile.rb +13 -0
  129. data/test/dummy/app/models/adminpanel/gallery.rb +32 -0
  130. data/test/dummy/app/models/adminpanel/galleryfile.rb +19 -0
  131. data/test/dummy/app/models/adminpanel/mug.rb +14 -14
  132. data/test/dummy/app/models/adminpanel/photo.rb +1 -0
  133. data/test/dummy/app/models/adminpanel/product.rb +7 -7
  134. data/test/dummy/app/models/adminpanel/test_object.rb +53 -0
  135. data/test/dummy/app/uploader/adminpanel/file_resourcefile_uploader.rb +82 -0
  136. data/test/dummy/app/uploader/adminpanel/photo_uploader.rb +5 -9
  137. data/test/dummy/app/uploader/adminpanel/section_uploader.rb +5 -9
  138. data/test/dummy/config/application.rb +3 -30
  139. data/test/dummy/config/carrierwave.rb +1 -1
  140. data/test/dummy/config/environments/test.rb +10 -4
  141. data/test/dummy/config/initializers/adminpanel_setup.rb +5 -2
  142. data/test/dummy/db/schema.rb +65 -34
  143. data/test/dummy/test/fixtures/adminpanel/categories.yml +7 -0
  144. data/test/dummy/test/fixtures/adminpanel/galleryfiles.yml +18 -0
  145. data/test/dummy/test/fixtures/adminpanel/permissions.yml +7 -7
  146. data/test/dummy/test/fixtures/adminpanel/products.yml +7 -0
  147. data/test/dummy/test/fixtures/adminpanel/{rols.yml → roles.yml} +0 -0
  148. data/test/dummy/test/fixtures/adminpanel/test_objects.yml +7 -0
  149. data/test/dummy/test/fixtures/adminpanel/users.yml +7 -7
  150. data/test/dummy/test/fixtures/dog fries.png +0 -0
  151. data/test/features/categories/categories_index_test.rb +31 -0
  152. data/test/features/shared/concerns/galleryzable_test.rb +22 -0
  153. data/test/features/shared/concerns/sortable_test.rb +26 -0
  154. data/test/features/shared/form/has_many_through_non_category_modal_test.rb +1 -1
  155. data/test/features/shared/form/remote_resource_modal_test.rb +41 -0
  156. data/test/features/shared/resource/edit_test.rb +7 -6
  157. data/test/features/shared/resource/new_test.rb +3 -2
  158. data/test/features/shared/ui/max_images_gallery_test.rb +52 -0
  159. data/test/generators/contact_generator_test.rb +20 -0
  160. data/test/generators/dump_generator_test.rb +51 -0
  161. data/test/generators/resource_generator_test.rb +46 -1
  162. data/test/helpers/breadcrumbs_helper_test.rb +3 -4
  163. data/test/helpers/router_helper_test.rb +1 -1
  164. data/test/helpers/shared_pages_helper_test.rb +120 -0
  165. data/test/models/adminpanel/gallery_test.rb +16 -23
  166. data/test/models/adminpanel/user_test.rb +1 -1
  167. data/test/support/view_case.rb +18 -19
  168. data/test/tasks/adminpanel_rake_test.rb +5 -3
  169. data/test/test_helper.rb +2 -5
  170. metadata +204 -150
  171. data/.rspec +0 -2
  172. data/app/assets/javascripts/adminpanel/images_form.js +0 -23
  173. data/app/assets/javascripts/adminpanel/imagesloaded.js +0 -16
  174. data/app/controllers/adminpanel/galleries_controller.rb +0 -75
  175. data/app/controllers/adminpanel/rols_controller.rb +0 -10
  176. data/app/models/adminpanel/gallery.rb +0 -82
  177. data/app/uploaders/adminpanel/gallery_uploader.rb +0 -56
  178. data/app/views/adminpanel/galleries/_galleries_table.html.erb +0 -15
  179. data/app/views/adminpanel/galleries/create.html.erb +0 -2
  180. data/app/views/adminpanel/galleries/index.html.erb +0 -52
  181. data/app/views/adminpanel/galleries/move_better.js.erb +0 -1
  182. data/app/views/adminpanel/galleries/move_worst.js.erb +0 -1
  183. data/app/views/layouts/_side_menu.html.erb +0 -40
  184. data/app/views/shared/_create_remote_resource_button.html.erb +0 -23
  185. data/app/views/shared/_form_fields.html.erb +0 -63
  186. data/app/views/shared/_gallery_entries.html.erb +0 -11
  187. data/app/views/shared/_image_fields.html.erb +0 -3
  188. data/app/views/shared/_modal.html.erb +0 -8
  189. data/app/views/shared/_new_resource_button.html.erb +0 -17
  190. data/app/views/shared/_remote_form_fields.html.erb +0 -12
  191. data/app/views/shared/edit.html.erb +0 -29
  192. data/app/views/shared/gallery_entries.js.erb +0 -1
  193. data/app/views/shared/index.html.erb +0 -68
  194. data/app/views/shared/new.html.erb +0 -41
  195. data/app/views/shared/new.js.erb +0 -2
  196. data/app/views/shared/show.html.erb +0 -92
  197. data/test/dummy/README.rdoc +0 -261
  198. data/test/dummy/config/environments/development.rb +0 -29
  199. data/test/dummy/config/environments/production.rb +0 -80
  200. data/test/dummy/lib/assets/.gitkeep +0 -0
  201. data/test/dummy/script/rails +0 -6
  202. data/test/unit/gallery_unit_test.rb +0 -21
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fef8cb9f6809d31d1fd29fed4bb1300d2b01600d
4
- data.tar.gz: 6a4ea45adde1810ffa6ec51960d9675ccff39849
3
+ metadata.gz: 123fbcbcae72b11036670a7b18cfb0c3d440f087
4
+ data.tar.gz: c359b05e6b9ede282d438bbec3b62f66f7ac33a6
5
5
  SHA512:
6
- metadata.gz: a33b1b19df8be2773865076cf9a22b8a088b1fb4099034bfc93df43fd240a03415b850b67691cb003f5ff4e10429c10358613ae581ca38667d94748c6c8971bf
7
- data.tar.gz: 00cca2fde41ea57b358ad35fd9af24f0c2010053b4e0ab1c3e3ac9a83d9df0313164473e828f5e033cbb4b1df2f3a05db8383f2b63a5ed7de426a962dd251603
6
+ metadata.gz: 68a5c8063b763d66909ff3c7b2afc375eae0a5af9c7d5434a43a01b5a024b2fa2d49cc79696a2096cfc162babe59381464bb999acafa893731e39615f3eaadd4
7
+ data.tar.gz: 870f5a836d674083e4ca78b6fcdf09263f861ab22a7af6ad58fe743ca3bd34f803257d2e42bfb2c6872d8ed6cc9fff9506a8afcd40b9d0c13da9cb5ff8a98d28
data/.travis.yml CHANGED
@@ -8,8 +8,4 @@ sudo: false
8
8
  cache: bundler
9
9
 
10
10
  env:
11
- - RAILS=4.0.8
12
- - RAILS=4.1.1
13
- - RAILS=4.1.2
14
- - RAILS=4.1.3
15
- - RAILS=4.1.4
11
+ - RAILS=4.2.0.rc3
data/CONTRIBUTING.md ADDED
@@ -0,0 +1,22 @@
1
+ Consider starting the commit message with an applicable emoji:
2
+
3
+ * :lipstick: `:lipstick:` when improving the format/structure of the code
4
+ * :racehorse:`:racehorse:` when improving performance
5
+ * :memo:`:memo:` when writing docs
6
+ * :bug:`:bug:` when fixing a bug
7
+ * :fire:`:fire:` when removing code or files
8
+ * :green_heart:`:green_heart:` when fixing the CI build
9
+ * :white_check_mark:`:white_check_mark:` when adding tests
10
+
11
+ Favor single quotes when not concatenating, double quotes are prefered when concatenating, escaping characters or using a single quote in the string:
12
+
13
+ Single Quotes:
14
+ `puts 'hello world'`
15
+ Double Quotes:
16
+ ```
17
+ h = 'hello'
18
+ w = 'world'
19
+ puts "#{h}, #{w}"
20
+ puts "\n hi"
21
+ puts "it's 6 am"
22
+ ```
data/Gemfile CHANGED
@@ -1,8 +1,3 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gemspec :development_group => :test
4
-
5
- group :assets do
6
- gem 'sass-rails', '~> 4.0'
7
- gem 'coffee-rails', '~> 4.0.1'
8
- end
3
+ gemspec development_group: :test
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # [![CoDN](http://cl.ly/image/130Q0E153d2G/codn180.png)](http://www.codn.mx "CoDN") Adminpanel
2
2
 
3
- CMS for Rails 4, for rails 3.x check the corresponding branch.
3
+ Thank you for considering this gem, we are going to use the lastest Rails version of Rails. make sure you can use it before trying this gem out.
4
4
 
5
5
  [![Gem Version](https://badge.fury.io/rb/adminpanel.svg)](http://badge.fury.io/rb/adminpanel)
6
6
  [![Build Status](https://travis-ci.org/joseramonc/adminpanel.svg?branch=master)](https://travis-ci.org/joseramonc/adminpanel)
@@ -20,7 +20,7 @@ And then execute:
20
20
 
21
21
  In you application.rb
22
22
 
23
- config.default_locale = :es # or :en
23
+ config.i18n.default_locale = :es # or :en
24
24
 
25
25
  no other language is currently supported, but pull requests are welcome.
26
26
 
@@ -28,7 +28,7 @@ Then run:
28
28
 
29
29
  rails g adminpanel:initialize
30
30
  rake db:migrate
31
- to create the database that the adminpanel it's expecting, this will also seed the database with the default user.
31
+ to create the database that the adminpanel it's expecting, this will also seed the database with the default user (email: 'admin@admin.com', password: 'password').
32
32
 
33
33
  Make sure you read the wiki, there is the descriptions of every relevant part of the gem.
34
34
 
@@ -38,16 +38,11 @@ You can seed the sections with help of the [Section task.](https://github.com/jo
38
38
 
39
39
  Then, mount the gem wherever you like!
40
40
 
41
- mount Adminpanel::Engine => "/codn"
42
-
43
- Also make sure to include adminpanel assets in your application.rb if you need to precompile them:
44
-
45
- config.assets.precompile += ['application-admin.js', 'application-admin.css']
46
- Feel free to use it, any doubts, errors or suggestions are welcome in the issues!
41
+ mount Adminpanel::Engine => '/panel'
47
42
 
48
43
  ## Dependencies
49
44
 
50
- Please make sure that you have (rmagick) ImageMagick -v 2.13.2 installed before trying to use the gem.
45
+ Please make sure that you have ImageMagick -v 2.13.2 installed before trying to use the gem.
51
46
 
52
47
  ## Integrated APIs
53
48
 
@@ -55,6 +50,8 @@ Currently the integrations working are:
55
50
 
56
51
  * [Google Analytics Service](https://github.com/joseramonc/adminpanel/wiki/include-Google-Analytics)
57
52
  * [Facebook Share Link to Wall](https://github.com/joseramonc/adminpanel/wiki/include-Adminpanel::Facebook)
53
+ * [Twitter API](https://github.com/joseramonc/adminpanel/wiki/include-Adminpanel::Twitter)
54
+ * [Instagram API](https://github.com/joseramonc/adminpanel/wiki/include-Adminpanel::Instagram)
58
55
 
59
56
  ## Contributing
60
57
 
@@ -64,6 +61,4 @@ Currently the integrations working are:
64
61
  4. Push to the branch (`git push origin my-new-feature`)
65
62
  5. Create new Pull Request
66
63
 
67
- ## To Do:
68
-
69
- #### Check the issues if you'd like to help or request a new feature.
64
+ Any questions, errors or feature suggestions [are welcome in the issues](https://github.com/joseramonc/adminpanel/issues/new)
data/Rakefile CHANGED
@@ -1,11 +1,9 @@
1
- require 'rake/testtask'
2
- require 'rubygems/package_task'
1
+ require "rake/testtask"
2
+ require "rubygems/package_task"
3
3
 
4
- task :default => :test
4
+ task default: :test
5
5
 
6
6
  Rake::TestTask.new do |t|
7
- # t.libs.delete 'lib'
8
- # t.libs = ['test', 'app']
9
7
  t.libs << 'test'
10
8
  t.pattern = 'test/**/*_test.rb'
11
9
  t.warning = false
@@ -15,7 +13,7 @@ end
15
13
  namespace :test do
16
14
  task :isolated do
17
15
  Dir.glob("test/**/*_test.rb").all? do |file|
18
- sh(Gem.ruby, '-w', '-Ilib:test', file)
16
+ sh(Gem.ruby, "-w", "-Ilib:test", file)
19
17
  end or raise "Failures"
20
18
  end
21
19
  end
data/adminpanel.gemspec CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
8
8
  spec.version = Adminpanel::VERSION
9
9
  spec.authors = ['Jose Ramon Camacho', 'Victor Camacho']
10
10
  spec.email = ['info@codn.mx']
11
- spec.description = %q{Gem that makes the CMS for a site a breeze while beings very configurable!,
11
+ spec.description = %q{Gem that focus on making a public site's resources very quickly while being very configurable!,
12
12
  supports facebook sharing, twitter, instagram and google analytics integration}
13
13
  spec.summary = %q{Made with <3 by CoDN}
14
14
  spec.homepage = 'https://github.com/joseramonc/adminpanel'
@@ -21,30 +21,35 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.required_ruby_version = '>= 2.0.0'
23
23
 
24
- spec.requirements << 'rmagick, -v 2.13.2'
25
-
26
- spec.add_runtime_dependency 'rails', '>= 4.0.0','<= 4.1.4'
27
- spec.add_runtime_dependency 'rmagick', '2.13.2'
28
- spec.add_runtime_dependency 'bcrypt', '~> 3.1', '>= 3.1.7'
29
- spec.add_runtime_dependency 'carrierwave', '~> 0.10', '>= 0.10.0'
30
- spec.add_runtime_dependency 'rails-i18n', '~> 4.0'
31
- spec.add_runtime_dependency 'inherited_resources', '~> 1.5'
32
- spec.add_runtime_dependency 'cancancan', '~> 1.8'
33
- spec.add_runtime_dependency 'google-api-client', '0.7.1'
34
- spec.add_runtime_dependency 'faker', '~> 1.3', '>= 1.3.0'
35
- spec.add_runtime_dependency 'font-awesome-rails', '~> 4.1', '>= 4.1.0'
36
- spec.add_runtime_dependency 'koala', '1.9.0'
37
- spec.add_runtime_dependency 'twitter', '5.11.0'
38
- spec.add_runtime_dependency 'omniauth-twitter', '1.0.1'
39
- spec.add_runtime_dependency 'instagram', '1.1.1'
40
-
41
- spec.add_development_dependency 'jquery-rails', '~> 3.0.0', '>= 3.0.0'
42
- spec.add_development_dependency 'turbolinks', '~> 2.2.2', '>= 2.2.2'
43
-
44
- spec.add_development_dependency 'sqlite3', '~> 1.3', '1.3.9'
45
- spec.add_development_dependency 'minitest', '5.3.5'
24
+ spec.requirements << 'imagemagick installed'
25
+
26
+ spec.add_runtime_dependency 'rails', '>= 4.2.0', '< 5.0.0'
27
+ spec.add_runtime_dependency 'mini_magick', '4.0.1'
28
+ spec.add_runtime_dependency 'bcrypt', '~> 3.1', '>= 3.1.7'
29
+ spec.add_runtime_dependency 'carrierwave', '~> 0.10', '>= 0.10.0'
30
+ spec.add_runtime_dependency 'cancancan', '~> 1.9.2', '>= 1.9.2'
31
+
32
+ # Implemented APIs
33
+ spec.add_runtime_dependency 'google-api-client', '0.7.1' # Google analytics
34
+ spec.add_runtime_dependency 'koala', '1.10.1' # Facebook
35
+ spec.add_runtime_dependency 'twitter', '5.13.0' # Twitter
36
+ spec.add_runtime_dependency 'omniauth-twitter', '1.1.0' # login Twitter
37
+ spec.add_runtime_dependency 'instagram', '1.1.3' # Instagram
38
+
39
+ # Asset dependencies
40
+ spec.add_runtime_dependency 'font-awesome-rails', '~> 4.2', '>= 4.2.0'
41
+ spec.add_runtime_dependency 'sass-rails', '~> 5.0.0', '>= 5.0.0'
42
+ spec.add_runtime_dependency 'coffee-rails', '~> 4.1.0', '>= 4.1.0'
43
+ spec.add_runtime_dependency 'jquery-rails', '3.1.2'
44
+ spec.add_runtime_dependency 'turbolinks', '~> 2.5.0', '>= 2.5.2'
45
+
46
+ # Development dependencies
47
+ spec.add_runtime_dependency 'faker', '~> 1.3', '>= 1.3.0'
48
+
49
+ # Test dependencies
50
+ spec.add_development_dependency 'sqlite3', '~> 1.3', '1.3.10'
51
+ spec.add_development_dependency 'minitest', '>= 5.4.0', '<= 6.0.0'
46
52
  spec.add_development_dependency 'minitest-emoji', '2.0.0'
47
53
  spec.add_development_dependency 'minitest-capybara','~> 0.7', '>= 0.7.1'
48
- # spec.add_development_dependency 'mocha'
49
54
  spec.add_development_dependency 'poltergeist', '~> 1.5', '>= 1.5.1'
50
55
  end
@@ -14,5 +14,6 @@
14
14
  //= require jquery_ujs
15
15
  //= require turbolinks
16
16
  //= require adminpanel/bootstrap
17
- //= require_tree ./adminpanel/.
17
+ //= require_tree .
18
18
  Turbolinks.enableTransitionCache();
19
+ Turbolinks.enableProgressBar();
@@ -0,0 +1,11 @@
1
+ $(document).on 'click', '.add-fields', (e) ->
2
+ e.preventDefault()
3
+
4
+ time = new Date().getTime()
5
+ regexp = new RegExp($(@).data('id'), 'g')
6
+ $(@).before($(@).data('fields').replace(regexp, time))
7
+
8
+ $(document).on 'click', '.remove-fields', (e) ->
9
+ e.preventDefault()
10
+ $(@).prev('input[type=hidden]').val('1')
11
+ $(@).parent().parent().parent().addClass('hidden')
@@ -0,0 +1,9 @@
1
+ $(document).on 'click', '.btn.btn-danger.remove-fields', ->
2
+ $('a.add-fields').removeClass 'hidden'
3
+
4
+ $(document).on 'click', 'a.add-fields', ->
5
+ $collectionContainer = $(@).closest('.file-collection-container')
6
+ maxFiles = $collectionContainer.data('max')
7
+ numberOfFiles = $collectionContainer.find('.product-image:not(.hidden)').length + 1
8
+ if maxFiles != 0 && numberOfFiles > maxFiles
9
+ $(@).addClass('hidden')
@@ -1,5 +1,5 @@
1
1
  $(document).on 'click', 'a.spinner-link', ->
2
- $( this ).attr 'data-clicked', true
2
+ $( @ ).attr 'data-clicked', true
3
3
 
4
4
  $(document).on 'page:fetch', ->
5
5
  $('a.spinner-link[data-clicked="true"]').children('i:first').toggleClass('hidden')
@@ -7,5 +7,5 @@ $(document).on 'page:fetch', ->
7
7
 
8
8
  $(document).on 'page:restore', ->
9
9
  $('a.spinner-link[data-clicked="true"]').children('i:first').remove()
10
- $('a.spinner-link[data-clicked="true"]').children('i:first').toggleClass 'hidden'
11
- $('a.spinner-link[data-clicked="true"]').data 'clicked', false
10
+ $('a.spinner-link[data-clicked="true"]').children('i:first').toggleClass('hidden')
11
+ $('a.spinner-link[data-clicked="true"]').attr 'data-clicked', false
@@ -107,12 +107,12 @@ function SwitchCalendars(startCalendar, endCalendar, e) {
107
107
  }
108
108
 
109
109
  var ready = function() {
110
- $('#information-table').dataTable( {
110
+ $('#information-table').dataTable({
111
111
  "sDom": "<'row-fluid'<'span6'l><'span6'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
112
112
  "sPaginationType": "bootstrap",
113
113
  "oLanguage": {
114
114
  "sLengthMenu": "Registros: _MENU_ ",
115
- "sZeroRecords": "No se encontro ningún registro que coincida con su búsqueda",
115
+ "sZeroRecords": "No se encontró ningún registro que coincida con su búsqueda",
116
116
  "sInfo": "Mostrando registros del _START_ al _END_ (_TOTAL_ registros en total)",
117
117
  "sInfoEmpty": "No hay entradas para mostrar",
118
118
  "sInfoFiltered": "(_MAX_ registros fueron filtrados)",
@@ -121,7 +121,8 @@ var ready = function() {
121
121
  "sPrevious": "Anterior",
122
122
  "sNext": "Siguiente"
123
123
  }
124
- }
124
+ },
125
+ "bDestroy": true
125
126
  });
126
127
  }
127
128
 
@@ -1,3 +1,6 @@
1
- $(document).ready ->
1
+ init_wysiwygs = ->
2
2
  $('.wysihtml5').each (i, elem) ->
3
3
  $(elem).wysihtml5()
4
+
5
+ $(document).ready init_wysiwygs
6
+ $(document).on 'page:load', init_wysiwygs
@@ -8,7 +8,7 @@
8
8
  * You're free to add application-wide styles to this file and they'll appear at the top of the
9
9
  * compiled file, but it's generally better to create a new file per style scope.
10
10
  *
11
- *= require_self
11
+ *= require_tree .
12
12
  *= require font-awesome
13
- *= require_tree ./adminpanel/.
13
+ *= require_self
14
14
  */
@@ -0,0 +1,7 @@
1
+ // revert font awesome 4.2 to font awesome 4.1 behavior when hidden, in 4.1 the content
2
+ //was empty so there's no space when it's hidden.
3
+ .fa.hidden {
4
+ &:before {
5
+ content: "";
6
+ }
7
+ }
@@ -562,32 +562,8 @@ table.table thead .sorting_desc_disabled { background: url(<%= asset_path 'admin
562
562
  }
563
563
 
564
564
  /* ----------- Side menu ----------- */
565
- .b_F79999:hover, .b_F79999.active{
566
- border-left: 2px solid #F79999;
567
- }
568
- .b_C3F7A7:hover, .b_C3F7A7.active{
569
- border-left: 2px solid #C3F7A7;
570
- }
571
- .b_9FDDF6:hover, .b_9FDDF6.active{
572
- border-left: 2px solid #9FDDF6;
573
- }
574
- .b_F6F1A2:hover, .b_F6F1A2.active{
575
- border-left: 2px solid #F6F1A2;
576
- }
577
- .b_C1F8A9:hover, .b_C1F8A9.active{
578
- border-left: 2px solid #C1F8A9;
579
- }
580
- .b_9FDDF6:hover, .b_9FDDF6.active{
581
- border-left: 2px solid #9FDDF6;
582
- }
583
- .b_F5C294:hover, .b_F5C294.active{
584
- border-left: 2px solid #F5C294;
585
- }
586
- .b_D1B2D1:hover, .b_D1B2D1.active{
587
- border-left: 2px solid #D1B2D1;
588
- }
589
- .b_99FFCC:hover, .b_99FFCC.active{
590
- border-left: 2px solid #99FFCC;
565
+ .accordion-navigation:hover, .accordion-navigation.active{
566
+ border-left: 2px solid #EF5493;
591
567
  }
592
568
 
593
569
  .accordion-heading{
@@ -1576,7 +1552,7 @@ table.table thead .sorting_desc_disabled { background: url(<%= asset_path 'admin
1576
1552
  }
1577
1553
 
1578
1554
  .widget-tasks-statistics{
1579
- .userstats{
1555
+ .userstats {
1580
1556
  .white.facebook-insights {
1581
1557
  z-index: 0;
1582
1558
  p.insight-value { font-size: 11px; }
@@ -0,0 +1,5 @@
1
+ html.turbolinks-progress-bar {
2
+ &:before {
3
+ background-color: #6DD0F7 !important;
4
+ }
5
+ }
@@ -3,7 +3,7 @@ module Adminpanel
3
3
  include Adminpanel::Analytics::TwitterAnalytics
4
4
  include Adminpanel::Analytics::InstagramAnalytics
5
5
 
6
- skip_before_filter :set_model
6
+ skip_before_action :set_resource_collection
7
7
  before_action :check_if_fb_account, only:[:fb]
8
8
 
9
9
  API_VERSION = 'v3'
@@ -69,7 +69,7 @@ module Adminpanel
69
69
  )
70
70
 
71
71
  @visits = visitCount.data.rows.collect do |r|
72
- {
72
+ {
73
73
  date: "#{r[2]}/#{r[1]}/#{r[0]}",
74
74
  visits: r[3]
75
75
  }
@@ -156,7 +156,7 @@ module Adminpanel
156
156
  private
157
157
  def check_if_fb_account
158
158
  @auth = Adminpanel::Auth.find_by_key('facebook')
159
- if @auth.nil? || auth.value == ''
159
+ if @auth.nil? || @auth.value == ''
160
160
  redirect_to analytics_path
161
161
  end
162
162
  end
@@ -1,34 +1,28 @@
1
1
  module Adminpanel
2
2
  class ApplicationController < ActionController::Base
3
3
  protect_from_forgery
4
- inherit_resources
5
4
  authorize_resource
6
5
 
7
- layout 'admin'
6
+ layout 'adminpanel/application'
8
7
 
9
- before_filter :signed_in_user, :set_model, :strong_params_for_cancan
8
+ before_action :signed_in_user, :set_model
10
9
 
11
10
  include SessionsHelper
12
11
  include Adminpanel::RestActions
12
+ include Adminpanel::SortableActions
13
13
  include Adminpanel::GalleryzableActions
14
14
  include Adminpanel::FacebookActions
15
15
  include Adminpanel::TwitterActions
16
16
  include Adminpanel::SitemapActions
17
17
 
18
18
  private
19
- def strong_params_for_cancan
20
- resource = controller_name.singularize.to_sym
21
- method = "#{resource}_params"
22
- params[resource] &&= send(method) if respond_to?(method, true)
23
- end
24
-
25
19
  rescue_from CanCan::AccessDenied do |exception|
26
20
  sign_out
27
- redirect_to signin_path, :alert => I18n.t('authentication.not_authorized')
21
+ redirect_to signin_path, alert: I18n.t('authentication.not_authorized')
28
22
  end
29
23
 
30
24
  def signed_in_user
31
- redirect_to signin_url, :notice => I18n.t('authentication.welcome') unless signed_in?
25
+ redirect_to signin_url, notice: I18n.t('authentication.welcome') unless signed_in?
32
26
  end
33
27
 
34
28
  def set_model
@@ -1,5 +1,11 @@
1
1
  module Adminpanel
2
2
  class AuthsController < ApplicationController
3
+
4
+ def destroy
5
+ Rails.cache.clear
6
+ super
7
+ end
8
+
3
9
  private
4
10
  def auth_params
5
11
  params.require(:auth).permit(:name, :value, :key)