keppler 2.0.2 → 2.0.3

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 (236) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +8 -0
  3. data/CODE_OF_CONDUCT.md +74 -0
  4. data/Gemfile.lock +26 -0
  5. data/LICENSE.txt +21 -0
  6. data/README.md +93 -22
  7. data/Rakefile +6 -0
  8. data/bin/keppler +6 -2
  9. data/bin/setup +2 -1
  10. data/exe/keppler +6 -0
  11. data/installer/core/.gitignore +87 -0
  12. data/installer/core/.ruby-version +1 -0
  13. data/installer/core/Gemfile +6 -4
  14. data/installer/core/README.md +86 -50
  15. data/installer/core/app/assets/images/.keep +0 -0
  16. data/installer/core/app/assets/images/admin/astronauta_keppler.svg +123 -0
  17. data/installer/core/app/assets/images/admin/avatar_keppler.svg +100 -0
  18. data/installer/core/app/assets/images/admin/image_default.png +0 -0
  19. data/installer/core/app/assets/images/app/fondo.svg +19 -0
  20. data/installer/core/app/assets/javascripts/admin/file_upload.coffee +11 -0
  21. data/installer/core/app/assets/javascripts/admin/main.coffee +23 -12
  22. data/installer/core/app/assets/javascripts/admin/preview_template.js +2 -2
  23. data/installer/core/app/assets/javascripts/admin/sidebar.js +8 -7
  24. data/installer/core/app/assets/javascripts/admin/swal.js +37 -0
  25. data/installer/core/app/assets/javascripts/admin/switch.js +6 -0
  26. data/installer/core/app/assets/javascripts/admin/tooltips.coffee +3 -0
  27. data/installer/core/app/assets/javascripts/errors/application.js.coffee +1 -0
  28. data/installer/core/app/assets/javascripts/errors/errors.js +113 -0
  29. data/installer/core/app/assets/javascripts/keppler_ga_dashboard/view-selector2.js +1 -1
  30. data/installer/core/app/assets/javascripts/vue_admin/index.js +34 -9
  31. data/installer/core/app/assets/stylesheets/admin/application.scss +4 -14
  32. data/installer/core/app/assets/stylesheets/admin/components/navigation/_navbar.scss +4 -5
  33. data/installer/core/app/assets/stylesheets/admin/components/navigation/_sidebar.scss +26 -17
  34. data/installer/core/app/assets/stylesheets/admin/pages/_appearance.scss +5 -0
  35. data/installer/core/app/assets/stylesheets/admin/pages/_customize.scss +21 -0
  36. data/installer/core/app/assets/stylesheets/admin/pages/_datepicker.scss +1088 -0
  37. data/installer/core/app/assets/stylesheets/admin/pages/_files.scss +26 -9
  38. data/installer/core/app/assets/stylesheets/admin/pages/_form.scss +19 -6
  39. data/installer/core/app/assets/stylesheets/admin/pages/_index.scss +4 -8
  40. data/installer/core/app/assets/stylesheets/admin/pages/_listing.scss +5 -0
  41. data/installer/core/app/assets/stylesheets/admin/pages/_navbar.scss +9 -2
  42. data/installer/core/app/assets/stylesheets/admin/pages/_roles.scss +6 -0
  43. data/installer/core/app/assets/stylesheets/admin/pages/_search.scss +24 -28
  44. data/installer/core/app/assets/stylesheets/admin/pages/_sidebar.scss +1 -1
  45. data/installer/core/app/assets/stylesheets/admin/pages/_switchs.scss +135 -39
  46. data/installer/core/app/assets/stylesheets/admin/pages/_timepicker.scss +16 -0
  47. data/installer/core/app/assets/stylesheets/admin/pages/_user.scss +6 -0
  48. data/installer/core/app/assets/stylesheets/admin/utils/_base.scss +6 -1
  49. data/installer/core/app/assets/stylesheets/admin/utils/_theme.scss +24 -11
  50. data/installer/core/app/assets/stylesheets/admin/utils/_variables.scss +1 -1
  51. data/installer/core/app/assets/stylesheets/app/pages/_front.sass +70 -56
  52. data/installer/core/app/assets/stylesheets/errors/errors.scss +161 -120
  53. data/installer/core/app/assets/stylesheets/vendor/admin-lte/_skin-blue.scss +1 -1
  54. data/installer/core/app/controllers/admin/admin_controller.rb +1 -1
  55. data/installer/core/app/controllers/admin/customizes_controller.rb +6 -8
  56. data/installer/core/app/controllers/admin/meta_tags_controller.rb +14 -18
  57. data/installer/core/app/controllers/admin/roles_controller.rb +176 -0
  58. data/installer/core/app/controllers/admin/scripts_controller.rb +14 -33
  59. data/installer/core/app/controllers/admin/settings_controller.rb +26 -27
  60. data/installer/core/app/controllers/admin/users_controller.rb +35 -29
  61. data/installer/core/app/controllers/app/app_controller.rb +27 -4
  62. data/installer/core/app/controllers/application_controller.rb +39 -1
  63. data/installer/core/app/controllers/concerns/.keep +0 -0
  64. data/installer/core/app/helpers/admin_helper.rb +5 -0
  65. data/installer/core/app/helpers/application_helper.rb +9 -0
  66. data/installer/core/app/helpers/roles_helper.rb +2 -0
  67. data/installer/core/app/inputs/file_material_input.rb +4 -2
  68. data/installer/core/app/inputs/keppler_boolean_input.rb +74 -0
  69. data/installer/core/app/inputs/keppler_file_input.rb +70 -0
  70. data/installer/core/app/mailers/.keep +0 -0
  71. data/installer/core/app/mailers/application_mailer.rb +13 -13
  72. data/installer/core/app/models/.keep +0 -0
  73. data/installer/core/app/models/appearance.rb +2 -0
  74. data/installer/core/app/models/application_record.rb +3 -0
  75. data/installer/core/app/models/concerns/.keep +0 -0
  76. data/installer/core/app/models/concerns/downloadable.rb +13 -0
  77. data/installer/core/app/models/concerns/sortable.rb +9 -0
  78. data/installer/core/app/models/concerns/uploadable.rb +10 -0
  79. data/installer/core/app/models/customize.rb +8 -6
  80. data/installer/core/app/models/front.rb +3 -0
  81. data/installer/core/app/models/google_analytics_setting.rb +2 -0
  82. data/installer/core/app/models/meta_tag.rb +27 -14
  83. data/installer/core/app/models/permission.rb +3 -0
  84. data/installer/core/app/models/role.rb +62 -5
  85. data/installer/core/app/models/script.rb +6 -15
  86. data/installer/core/app/models/setting.rb +2 -0
  87. data/installer/core/app/models/smtp_setting.rb +2 -0
  88. data/installer/core/app/models/social_account.rb +2 -0
  89. data/installer/core/app/models/user.rb +17 -1
  90. data/installer/core/app/policies/application_policy.rb +4 -4
  91. data/installer/core/app/policies/controller_policy.rb +15 -11
  92. data/installer/core/app/policies/role_policy.rb +25 -0
  93. data/installer/core/app/policies/user_policy.rb +1 -1
  94. data/installer/core/app/uploaders/attachment_uploader.rb +18 -1
  95. data/installer/core/app/views/admin/customizes/_description.html.haml +4 -4
  96. data/installer/core/app/views/admin/customizes/_form.html.haml +4 -4
  97. data/installer/core/app/views/admin/customizes/_listing.html.haml +1 -1
  98. data/installer/core/app/views/admin/customizes/_switch_default_template.html.haml +8 -13
  99. data/installer/core/app/views/admin/customizes/_switch_template.html.haml +8 -11
  100. data/installer/core/app/views/admin/customizes/index.html.haml +9 -9
  101. data/installer/core/app/views/admin/layouts/_head.html.haml +3 -3
  102. data/installer/core/app/views/admin/layouts/_keppler_boolean_script.haml +12 -0
  103. data/installer/core/app/views/admin/layouts/_navigation.html.haml +17 -16
  104. data/installer/core/app/views/admin/layouts/_sidebar.html.haml +27 -36
  105. data/installer/core/app/views/admin/layouts/application.html.haml +1 -0
  106. data/installer/core/app/views/admin/layouts/index/remote_messages.js.haml +6 -6
  107. data/installer/core/app/views/admin/meta_tags/_index_show.html.haml +2 -2
  108. data/installer/core/app/views/admin/meta_tags/_listing.html.haml +6 -6
  109. data/installer/core/app/views/admin/meta_tags/index.html.haml +15 -29
  110. data/installer/core/app/views/admin/meta_tags/show.html.haml +7 -8
  111. data/installer/core/app/views/admin/roles/_description.html.haml +13 -0
  112. data/installer/core/app/views/admin/roles/_form.html.haml +27 -0
  113. data/installer/core/app/views/admin/roles/_index_show.html.haml +24 -0
  114. data/installer/core/app/views/admin/roles/_listing.html.haml +46 -0
  115. data/installer/core/app/views/admin/roles/_switch.html.haml +20 -0
  116. data/installer/core/app/views/admin/roles/add_permissions.html.haml +60 -0
  117. data/installer/core/app/views/admin/roles/create_permissions.html.haml +0 -0
  118. data/installer/core/app/views/admin/roles/create_permissions.js.erb +1 -0
  119. data/installer/core/app/views/admin/roles/edit.html.haml +1 -0
  120. data/installer/core/app/views/admin/roles/index.html.haml +80 -0
  121. data/installer/core/app/views/admin/roles/new.html.haml +1 -0
  122. data/installer/core/app/views/admin/roles/reload.js.haml +5 -0
  123. data/installer/core/app/views/admin/roles/show.html.haml +32 -0
  124. data/installer/core/app/views/admin/roles/show.js.haml +4 -0
  125. data/installer/core/app/views/admin/roles/show_description.js.erb +2 -0
  126. data/installer/core/app/views/admin/scripts/_index_show.html.haml +2 -2
  127. data/installer/core/app/views/admin/scripts/_listing.html.haml +13 -13
  128. data/installer/core/app/views/admin/scripts/index.html.haml +12 -26
  129. data/installer/core/app/views/admin/scripts/show.html.haml +4 -4
  130. data/installer/core/app/views/admin/settings/components/_preview.html.haml +1 -1
  131. data/installer/core/app/views/admin/settings/fields/_appearance.html.haml +25 -17
  132. data/installer/core/app/views/admin/settings/fields/_basic_information.html.haml +13 -7
  133. data/installer/core/app/views/admin/settings/fields/_email_setting.html.haml +16 -16
  134. data/installer/core/app/views/admin/settings/fields/_google_analytics_setting.html.haml +1 -1
  135. data/installer/core/app/views/admin/settings/fields/_social_accounts.html.haml +39 -39
  136. data/installer/core/app/views/admin/users/_form.html.haml +18 -25
  137. data/installer/core/app/views/admin/users/_index_show.html.haml +2 -2
  138. data/installer/core/app/views/admin/users/_listing.html.haml +6 -6
  139. data/installer/core/app/views/admin/users/delete_avatar.js.haml +3 -0
  140. data/installer/core/app/views/admin/users/filter_by_role.js.erb +9 -0
  141. data/installer/core/app/views/admin/users/index.html.haml +22 -22
  142. data/installer/core/app/views/admin/users/show.html.haml +10 -12
  143. data/installer/core/app/views/app/front/index.html.haml +137 -87
  144. data/installer/core/app/views/app/layouts/_footer.html.haml +2 -2
  145. data/installer/core/app/views/app/layouts/_head.html.haml +4 -12
  146. data/installer/core/app/views/app/layouts/_meta_tags.html.haml +38 -6
  147. data/installer/core/app/views/app/layouts/application.html.haml +8 -8
  148. data/installer/core/app/views/devise/sessions/new.html.haml +32 -28
  149. data/installer/core/app/views/errors/internal_server_error.html.haml +50 -7
  150. data/installer/core/app/views/errors/not_authorized.html.haml +75 -6
  151. data/installer/core/app/views/errors/not_found.html.haml +101 -7
  152. data/installer/core/app/views/errors/unprocessable.html.haml +50 -7
  153. data/installer/core/bin/update +31 -0
  154. data/installer/core/bin/yarn +11 -0
  155. data/installer/core/config/application.rb +1 -1
  156. data/installer/core/config/environments/production.rb +1 -1
  157. data/installer/core/config/initializers/carrierwave.rb +12 -0
  158. data/installer/core/config/initializers/mime_types.rb +2 -2
  159. data/installer/core/config/initializers/simple_form_bootstrap.rb +20 -1
  160. data/installer/core/config/initializers/simple_form_components.rb +61 -0
  161. data/installer/core/config/locales/en.yml +29 -6
  162. data/installer/core/config/locales/es.yml +32 -5
  163. data/installer/core/config/locales/simple_form.en.yml +1 -0
  164. data/installer/core/config/locales/simple_form.es.yml +3 -2
  165. data/installer/core/config/menu.yml +34 -8
  166. data/installer/core/config/permissions.yml +21 -0
  167. data/installer/core/config/routes.rb +56 -14
  168. data/installer/core/db/migrate/20140812210925_rolify_create_roles.rb +2 -0
  169. data/installer/core/db/migrate/20160128131802_create_scripts.rb +1 -0
  170. data/installer/core/db/migrate/20180503174351_create_permissions.rb +11 -0
  171. data/installer/core/db/seeds.rb +12 -6
  172. data/installer/core/lib/generators/keppler_front/templates/views/template.html.haml +222 -177
  173. data/installer/core/lib/generators/keppler_relation/keppler_relation_generator.rb +1 -1
  174. data/installer/core/lib/generators/keppler_scaffold/keppler_scaffold_generator.rb +57 -40
  175. data/installer/core/lib/generators/keppler_scaffold/templates/controllers/controller.rb +29 -30
  176. data/installer/core/lib/generators/keppler_scaffold/templates/models/model.rb +14 -20
  177. data/installer/core/lib/generators/keppler_scaffold/templates/views/_form.html.haml +24 -35
  178. data/installer/core/lib/generators/keppler_scaffold/templates/views/_index_show.html.haml +12 -11
  179. data/installer/core/lib/generators/keppler_scaffold/templates/views/_listing.html.haml +7 -7
  180. data/installer/core/lib/generators/keppler_scaffold/templates/views/index.html.haml +17 -33
  181. data/installer/core/lib/generators/keppler_scaffold/templates/views/show.html.haml +23 -24
  182. data/installer/core/plugins/keppler_ga_dashboard/app/assets/images/keppler_ga_dashboard/.keep +0 -0
  183. data/installer/core/plugins/keppler_ga_dashboard/config/permissions.yml +4 -0
  184. data/installer/core/plugins/keppler_ga_dashboard/keppler_ga_dashboard.gemspec +1 -1
  185. data/installer/core/test/controllers/.keep +0 -0
  186. data/installer/core/test/controllers/roles_controller_test.rb +48 -0
  187. data/installer/core/test/fixtures/.keep +0 -0
  188. data/installer/core/test/fixtures/permissions.yml +9 -0
  189. data/installer/core/test/helpers/.keep +0 -0
  190. data/installer/core/test/integration/.keep +0 -0
  191. data/installer/core/test/mailers/.keep +0 -0
  192. data/installer/core/test/models/.keep +0 -0
  193. data/installer/core/test/models/permission_test.rb +7 -0
  194. data/installer/core/test/system/roles_test.rb +43 -0
  195. data/installer/core/vendor/assets/javascripts/.keep +0 -0
  196. data/installer/core/vendor/assets/stylesheets/.keep +0 -0
  197. data/installer/plugins/concerns/commons.rb +47 -0
  198. data/installer/plugins/concerns/destroy_multiple.rb +33 -0
  199. data/installer/plugins/concerns/history.rb +24 -0
  200. data/installer/plugins/config/locales/en.yml +104 -0
  201. data/installer/plugins/config/locales/es.yml +139 -0
  202. data/installer/plugins/config/menu.yml +12 -0
  203. data/installer/plugins/config/permissions.yml +1 -0
  204. data/installer/plugins/generators/keppler_scaffold/keppler_scaffold_generator.rb +203 -0
  205. data/installer/plugins/generators/keppler_scaffold/templates/controllers/controller.rb +171 -0
  206. data/installer/plugins/generators/keppler_scaffold/templates/models/model.rb +41 -0
  207. data/installer/plugins/generators/keppler_scaffold/templates/policies/policy.rb +11 -0
  208. data/installer/plugins/generators/keppler_scaffold/templates/views/_description.html.haml +13 -0
  209. data/installer/plugins/generators/keppler_scaffold/templates/views/_form.html.haml +49 -0
  210. data/installer/plugins/generators/keppler_scaffold/templates/views/_index_show.html.haml +26 -0
  211. data/installer/plugins/generators/keppler_scaffold/templates/views/_listing.html.haml +65 -0
  212. data/installer/plugins/generators/keppler_scaffold/templates/views/edit.html.haml +1 -0
  213. data/installer/plugins/generators/keppler_scaffold/templates/views/index.html.haml +97 -0
  214. data/installer/plugins/generators/keppler_scaffold/templates/views/new.html.haml +1 -0
  215. data/installer/plugins/generators/keppler_scaffold/templates/views/reload.js.haml +5 -0
  216. data/installer/plugins/generators/keppler_scaffold/templates/views/show.html.haml +66 -0
  217. data/installer/plugins/generators/keppler_scaffold/templates/views/show.js.haml +4 -0
  218. data/installer/plugins/install.rb +156 -0
  219. data/installer/plugins/layouts/_navigation.html.haml +47 -0
  220. data/installer/plugins/layouts/application.html.haml +24 -0
  221. data/keppler.gemspec +35 -0
  222. data/lib/keppler.rb +0 -1
  223. data/lib/keppler/add.rb +13 -0
  224. data/lib/keppler/cli.rb +134 -5
  225. data/lib/keppler/delete.rb +13 -0
  226. data/lib/keppler/version.rb +1 -1
  227. metadata +117 -23
  228. data/installer/core/app/assets/images/admin/space.png +0 -0
  229. data/installer/core/app/assets/stylesheets/admin/pages/_header.scss +0 -34
  230. data/installer/core/app/assets/stylesheets/admin/pages/_pageslide.scss +0 -125
  231. data/installer/core/db/schema.rb +0 -172
  232. data/installer/lib/conf.rb +0 -31
  233. data/installer/lib/scaffold.rb +0 -10
  234. data/installer/run.sh +0 -17
  235. data/installer/scripts/bin.sh +0 -61
  236. data/lib/keppler/cli/generate.rb +0 -19
@@ -0,0 +1 @@
1
+ = render 'form'
@@ -0,0 +1,5 @@
1
+ $('#objects-container').html("#{j render 'listing', objects: @objects}");
2
+ $('#objects-container').css('opacity', '0');
3
+ $('#spinner2').css('display', 'block');
4
+ var request = $.ajax({url: "/admin/roles", method: "get", dataType: "html"});
5
+ request.done(function(msg){$('#spinner2').css('display', 'none');$('#objects-container').css('opacity', '1');});
@@ -0,0 +1,32 @@
1
+ .container
2
+ .row
3
+ .col-lg-2
4
+ = link_to admin_roles_path, class: "", "data-position" => "bottom", "data-tooltip" => t("keppler.actions.back") do
5
+ .arrow-back.btn.btn-default
6
+ %i.fa.fa-angle-left
7
+ = t('keppler.actions.back')
8
+
9
+ .show-section
10
+ .row
11
+ .col-lg-12
12
+ .box.slice-box
13
+ .box-header.with-border
14
+ %h3.box-title= t("keppler.modules.#{controller_path.underscore}")
15
+ .box-tools.pull-right
16
+ - if can?(Role).update?
17
+ = link_to edit_admin_role_path(@role), class: "btn btn-box-tool", title: "#{t('keppler.actions.edit') }" do
18
+ %i.icon-pencil
19
+ - if can?(Role).destroy?
20
+ = link_to admin_role_path(@role), class: "btn btn-box-tool", title: "#{t('keppler.actions.delete')}", method: :delete, data: { confirm: t("keppler.messages.data_confirm") } do
21
+ %i.icon-trash
22
+ .box-body.box-body-no-padding
23
+ %table.table.table-striped
24
+ %tbody
25
+ - @role.as_json(only: ["name"]).each do |attribute, value|
26
+ %tr.list-row
27
+ %th.display-label= t("activerecord.attributes.#{attribute}")
28
+ %td.display-value.fs-body-1.tc-black-2
29
+ - if @attachments.include?(attribute)
30
+ = image_tag value
31
+ - else
32
+ = value
@@ -0,0 +1,4 @@
1
+ $("#index-show").html("#{j render('index_show')}")
2
+ $("#index-show").css('right', 0)
3
+ $('.listing table').find(".active").removeClass("active")
4
+ $("#row-#{@role.id}").addClass("active")
@@ -0,0 +1,2 @@
1
+ $('#description-list').find('div').addClass('no-visible')
2
+ $("#description-<%= @module.split('::').join('') %>-<%= @action %>").toggleClass('no-visible');
@@ -1,10 +1,10 @@
1
1
  .tab-content
2
2
  %h6.actions
3
- - if Pundit.policy(current_user, Script).update?
3
+ - if can?(Script).update?
4
4
  = link_to edit_admin_script_path(@script), title: t("keppler.actions.edit"), class: 'pull-left' do
5
5
  %i.icon-pencil
6
6
  %span= t('keppler.actions.edit')
7
- - if Pundit.policy(current_user, Script).destroy?
7
+ - if can?(Script).destroy?
8
8
  = link_to admin_script_path(@script), class: 'new-menu', title: 'Delete', method: :delete, data: { confirm: t("keppler.messages.data_confirm") } do
9
9
  %i.icon-trash
10
10
  %span= t('keppler.actions.delete')
@@ -1,42 +1,42 @@
1
1
  - objects.each do |script|
2
2
  %tr{ id: "row-#{script.id}" }
3
3
  %td.item-check{ style: 'width: 10%' }
4
- - if Pundit.policy(current_user, Script).destroy_multiple?
4
+ - if can?(Script).destroy_multiple?
5
5
  .checkbox
6
6
  %label{ for: "checkbox-#{script.id}" }
7
- %input{ type:"checkbox", id: "checkbox-#{script.id}", 'checklist-model' => 'check', 'checklist-value' => "#{script.id}", '@click' => "listDelete(#{script.id})"}
7
+ %input{ type: 'checkbox', id: "checkbox-#{script.id}", 'checklist-model' => 'check', 'checklist-value' => "#{script.id}", '@click' => "listDelete(#{script.id})"}
8
8
  %span.cr
9
9
  %i.cr-icon.glyphicon.glyphicon-ok
10
10
  %td.hide-on-small-and-down
11
- = link_to admin_script_path(script, search: @query), remote: true, class: "show-row" do
11
+ = link_to admin_script_path(script, search: @query), remote: true, class: 'show-row' do
12
12
  %span= script.name
13
- %td.text-overflow{ style: 'max-width: 200px'}
14
- = link_to admin_script_path(script, search: @query), remote: true, class: "show-row" do
13
+ %td{ style: 'max-width: 200px'}
14
+ = link_to admin_script_path(script, search: @query), remote: true, class: 'show-row text-overflow' do
15
15
  %span= script.script
16
16
  %td.hide-on-small-and-down
17
- = link_to admin_script_path(script, search: @query), remote: true, class: "show-row" do
17
+ = link_to admin_script_path(script, search: @query), remote: true, class: 'show-row' do
18
18
  %span= script.url
19
19
  %td{ style: 'padding-right: 30px' }
20
- %a.action-btn.pull-right{:id => "menu-#{script.id}", "aria-expanded" => "false", "aria-haspopup" => "true", "data-toggle" => "dropdown"}
20
+ %a.action-btn.pull-right{:id => "menu-#{script.id}", 'aria-expanded' => 'false', 'aria-haspopup' => 'true', 'data-toggle' => 'dropdown'}
21
21
  %i.icon-options-vertical
22
- %ul.actions.dropdown-menu{"aria-labelledby" => "menu-#{script.id}" }
23
- - if Pundit.policy(current_user, Script).show?
22
+ %ul.actions.dropdown-menu{'aria-labelledby' => "menu-#{script.id}" }
23
+ - if can?(Script).show?
24
24
  %li
25
25
  = link_to admin_script_path(script), class: 'new-menu', title: t('keppler.actions.show') do
26
26
  %i.icon-eye
27
27
  = t('keppler.actions.show')
28
- - if Pundit.policy(current_user, Script).update?
28
+ - if can?(Script).update?
29
29
  %li
30
30
  = link_to edit_admin_script_path(script), class: 'new-menu', title: t('keppler.actions.edit') do
31
31
  %i.icon-pencil
32
32
  = t('keppler.actions.edit')
33
- - if Pundit.policy(current_user, Script).clone?
33
+ - if can?(Script).clone?
34
34
  %li
35
35
  = link_to admin_script_clone_path(script), class: 'new-menu', title: t('keppler.actions.clone') do
36
36
  %i.icon-docs
37
37
  = t('keppler.actions.clone')
38
- - if Pundit.policy(current_user, Script).destroy?
38
+ - if can?(Script).destroy?
39
39
  %li
40
- = link_to admin_script_path(script), class: 'new-menu', title: t('keppler.actions.delete'), method: :delete, data: { confirm: t("keppler.messages.data_confirm") } do
40
+ = link_to admin_script_path(script), class: 'new-menu', title: t('keppler.actions.delete'), method: :delete, data: { confirm: t('keppler.messages.data_confirm') } do
41
41
  %i.icon-trash
42
42
  = t('keppler.actions.delete')
@@ -7,18 +7,18 @@
7
7
  = t("keppler.modules.#{controller_path.underscore}")
8
8
  = entries(@total, @objects)
9
9
  .toolbar
10
- - if Pundit.policy(current_user, Script).download?
10
+ - if can?(Script).download?
11
11
  .toolbar-item
12
- = link_to admin_script_download_path(Script, :format => :xls), class: "tool-btn", title: t('keppler.actions.download_records') do
12
+ = link_to admin_scripts_path(format: :csv), class: 'tool-btn', title: t('keppler.actions.download_records') do
13
13
  %i.icon-cloud-download
14
- - if Pundit.policy(current_user, Script).import?
14
+ - if can?(Script).upload?
15
15
  .toolbar-item
16
- = link_to "", class: "tool-btn", title: t('keppler.actions.upload_records'), id: "script" do
16
+ = link_to '#', class: 'tool-btn', title: t('keppler.actions.upload_records'), id: 'upload' do
17
17
  %i.icon-cloud-upload
18
18
  .toolbar-item
19
- = link_to reload_admin_scripts_path, class: "tool-btn", remote: true do
19
+ = link_to reload_admin_scripts_path, class: 'tool-btn', remote: true do
20
20
  %i.icon-reload
21
- - if Pundit.policy(current_user, Script).destroy_multiple?
21
+ - if can?(Script).destroy_multiple?
22
22
  .toolbar-item
23
23
  .checkbox
24
24
  %label{ for: 'checkbox-all' }
@@ -26,11 +26,11 @@
26
26
  %span.cr
27
27
  %i.cr-icon.glyphicon.glyphicon-ok
28
28
  .toolbar-item
29
- %a.tool-btn{"data-confirm" => "¿Estás seguro?", "data-method" => "delete", "v-bind:href" => "link", :rel => "nofollow", ":class" => "{disabled: !checks}" }
29
+ %a.tool-btn{ 'data-confirm' => '¿Estás seguro?', 'data-method' => 'delete', 'v-bind:href' => 'link', rel: 'nofollow', ':class' => '{disabled: !checks}' }
30
30
  %i.icon-trash
31
31
  .hide
32
- = form_tag admin_script_import_path(@objects), id: "import_form_script", multipart: true, method: :post do
33
- = file_field_tag :file, id: "import_file_script"
32
+ = form_tag admin_script_upload_path(@objects), id: 'upload_form', multipart: true, method: :post do
33
+ = file_field_tag :file, id: 'upload_file'
34
34
  %ol.breadcrumb
35
35
  %li
36
36
  %a{ href: '#' }
@@ -51,9 +51,8 @@
51
51
  %td
52
52
  %th= t('activerecord.attributes.name')
53
53
  %th= t('activerecord.attributes.script')
54
- %th= t('activerecord.attributes.role')
55
- %th{style: "text-align: center;padding-right: 30px;"}
56
- Actions
54
+ %th= t('activerecord.attributes.url')
55
+ %th
57
56
  %tbody#objects-container
58
57
  = render 'admin/layouts/listing_preloader'
59
58
  = render 'listing', objects: @objects
@@ -63,20 +62,7 @@
63
62
  .listing-show.col.l3.m12.hide-on-small-and-down.hide-on-med-and-down
64
63
  = render "description"
65
64
  %aside#index-show.control-sidebar
66
- - if Pundit.policy(current_user, Script).create?
65
+ - if can?(Script).create?
67
66
  .mixed-btn
68
67
  = link_to new_admin_script_path, class: "btn-float" do
69
68
  +
70
-
71
-
72
- :javascript
73
- $(document).ready(function(){
74
- $('#script').click(function(e) {
75
- e.preventDefault()
76
- $('#import_file_script').click()
77
- $('#import_file_script').change(function() {
78
- $('.waiting').css('display', 'block')
79
- $('#import_form_script').submit()
80
- })
81
- });
82
- });
@@ -12,10 +12,10 @@
12
12
  .box-header.with-border
13
13
  %h3.box-title= t("keppler.modules.#{controller_path.underscore}")
14
14
  .box-tools.pull-right
15
- - if Pundit.policy(current_user, Script).update?
15
+ - if can?(Script).update?
16
16
  = link_to edit_admin_script_path(@script), class: "btn btn-box-tool", title: "#{t('keppler.actions.edit') }" do
17
17
  %i.icon-pencil
18
- - if Pundit.policy(current_user, Script).destroy?
18
+ - if can?(Script).destroy?
19
19
  = link_to admin_script_path(@script), class: "btn btn-box-tool", title: "#{t('keppler.actions.delete')}", method: :delete, data: { confirm: t("keppler.messages.data_confirm") } do
20
20
  %i.icon-trash
21
21
 
@@ -23,7 +23,7 @@
23
23
  .box-body.no-padding
24
24
  %table.table.table-striped
25
25
  %tbody
26
- - @script.as_json(only: ["id", "name", "script", "url", "created_at"], methods: [:rol]).each do |attribute, value|
26
+ - @script.as_json(only: ["id", "name", "script", "url", "created_at"]).each do |attribute, value|
27
27
  %tr.list-row
28
- %th.display-label= t("activerecord.attributes.script.#{attribute}")
28
+ %th.display-label= t("activerecord.attributes.#{attribute}")
29
29
  %td.display-value.fs-body-1.tc-black-2= value.to_s.humanize
@@ -23,7 +23,7 @@
23
23
  %a{href:""}
24
24
  = t("devise.sessions.forgot_password")
25
25
  .pull-right
26
- %input.btn-primary{:name => "commit", type: "submit", :value => "Entrar"}/
26
+ %input.btn-primary.keppler-background{:name => "commit", type: "submit", :value => "Entrar"}/
27
27
  .clearfix
28
28
  / /.col
29
29
  .login-footer{style:"transform: scale(0.4);"}
@@ -2,7 +2,7 @@
2
2
  {{ changeColors }}
3
3
  = f.simple_fields_for :appearance, html: {multipart: true} do |f|
4
4
  .col-md-7.col-lg-6
5
- .box.slice-box
5
+ .box.slice-box.hidden-xs
6
6
  .box-header.with-border
7
7
  %h3.box-title Preview
8
8
 
@@ -10,41 +10,36 @@
10
10
  .box-body.box-body-no-padding
11
11
  - if f.object.image_background?
12
12
  .appearance-img{style: "background-image:url(#{f.object.image_background_url})"}
13
- = render "admin/settings/components/preview"
13
+ = render 'admin/settings/components/preview'
14
14
  - else
15
- -# %iframe{src:"http://localhost:3000", frameborder:"0", style:"zoom: 0.75; transform: scale(0.75); transform-origin: 0 0;"}
16
15
  .appearance-img{style: "background-image:url('/assets/admin/profile-menu.jpg')"}
17
- = render "admin/settings/components/preview"
16
+ = render 'admin/settings/components/preview'
18
17
  .col-md-5.col-lg-6
19
18
  .box.slice-box
20
19
  .box-header.with-border
21
20
  %h3.box-title Admin Theme
22
21
 
23
22
  .box-body
24
- .upload-image
25
- .form-group.files.trigger
26
- #icon-file
27
- +
23
+ .upload_image
24
+ .files.form-group.trigger{ class: "#{'files-absolute' unless f.object.image_background.blank?}" }
28
25
  = f.file_field :image_background, class: 'photo_upload'
29
- %center#image
30
- =# image_tag 'image_background.png', class: 'hidden image_to_upload'
26
+ %center.image-show
27
+ = image_tag "#{f.object.image_background.blank? ? '' : f.object.image_background}", class: "#{'hidden' if f.object.image_background.blank?} image_to_upload"
31
28
  %p Principal
32
- %input{type: "color", name: "color", placeholder: "Color", value: "#{@color}", "v-model" => "main"}
29
+ %input{type: 'color', name: 'color', placeholder: 'Color', value: @color, 'v-model' => 'main'}
33
30
  -# = text_field_tag :color, nil, placeholder: "Color", value: @color
34
- -# %br
35
- -# %br
36
31
  -# %p Hover
37
32
  -# = text_field_tag :accent, nil, placeholder: "Accent", value: @accent, class: "color-input"
38
33
  -# .hidden
39
34
  -# = text_field_tag :darken, nil, placeholder: "Darken", value: @darken, class: "color-input"
40
35
  .pull-right
41
36
  - if @render.eql?('appearance')
42
- = link_to appearance_default_admin_settings_path(@render), class: "btn btn-default", method: :put do
43
- = t("keppler.actions.appearance_defaut")
44
- = f.button :submit, t("keppler.actions.apply"), class: "btn btn-primary change-color", style: "margin-left:10px"
37
+ = link_to appearance_default_admin_settings_path(@render), class: 'btn btn-default', method: :put do
38
+ = t('keppler.actions.appearance_defaut')
39
+ = f.button :submit, t('keppler.actions.apply'), class: 'btn btn-primary change-color'
45
40
 
46
41
  :javascript
47
- new Vue({
42
+ var vm = new Vue({
48
43
  el: '#colors',
49
44
  data: {
50
45
  main: "#{@color}"
@@ -52,10 +47,23 @@
52
47
  computed: {
53
48
  changeColors() {
54
49
  if (this.main) {
50
+ $('.keppler-color').css('color', this.main)
51
+ $('.keppler-background').css('background', this.main)
52
+ $('.keppler-border-top-color').css('border-top-color', this.main)
53
+ $('.keppler-border-left-color').css('border-left-color', this.main)
55
54
  $('.logo').css('background', this.main)
56
55
  $('.btn-primary').css('background', this.main)
57
56
  $('.slice-box').css('border-top-color', this.main)
58
57
  $('#span').css('color', this.main)
58
+ $('.side-img-profile').css('background', this.main)
59
+ $('.small-profile-img').css('background', this.main)
60
+ $('.login-logo span').css('color', this.main)
61
+ $('.login-footer span').css('color', this.main)
62
+ $('.sidebar-menu > li:hover > a, .sidebar-menu > li.active > a')
63
+ .css({
64
+ 'color': this.main,
65
+ 'border-left-color': this.main
66
+ })
59
67
  }
60
68
  }
61
69
  }
@@ -1,4 +1,10 @@
1
1
  .col-lg-6
2
+ -# - %i[logo favicon].each do |image_input|
3
+ .info-box
4
+ %span.info-box-img.info-box-icon{ id: image_input.to_s, style: "background-image: url(#{f.object.image_input || '/assets/admin/profile-menu.jpg'})"}
5
+ .info-box-content
6
+ %span.info-box-text
7
+ = f.input image_input
2
8
  .info-box
3
9
  %span#logo.info-box-img.info-box-icon{style: "background-image: url(#{f.object.logo? ? f.object.logo : '/assets/admin/profile-menu.jpg'})"}
4
10
  .info-box-content
@@ -15,16 +21,16 @@
15
21
  .box.slice-box
16
22
  .box-header.with-border
17
23
  %h3.box-title
18
- Basic information
24
+ = t('keppler.sidebar-menu.setting-submenu.basic-information')
19
25
  .box-tools.pull-right
20
- %a.btn.btn-box-tool{"data-widget" => "collapse", type: "button"}
26
+ %a.btn.btn-box-tool{ "data-widget" => "collapse", type: "button" }
21
27
  %i.fa.fa-minus
22
28
  .box-body.pure-input
23
- = f.input :name, input_html: {class: "form-control"}, :required => true, label: false, placeholder: "Name"
24
- = f.input :description, input_html: {class: "form-control"}, :required => true, label: false, placeholder: "Description"
25
- = f.input :email, input_html: {class: "form-control"}, :required => true, label: false, placeholder: "Email"
26
- = f.input :phone, input_html: {class: "form-control"}, :required => true, label: false, placeholder: "Phone number"
27
- = f.input :mobile, input_html: {class: "form-control"}, :required => true, label: false, placeholder: "Mobile"
29
+ = f.input :name, input_html: { class: 'form-control' }, required: true, label: t('activerecord.attributes.name'), placeholder: t('activerecord.attributes.name')
30
+ = f.input :description, input_html: { class: 'form-control' }, required: true, label: t('activerecord.attributes.description'), placeholder: t('activerecord.attributes.description')
31
+ = f.input :email, input_html: { class: 'form-control' }, required: false, label: t('activerecord.attributes.email'), placeholder: 'example@domain.com'
32
+ = f.input :phone, input_html: { class: 'form-control' }, required: false, label: t('activerecord.attributes.phone_one'), placeholder: '+584141234567'
33
+ = f.input :mobile, input_html: { class: 'form-control' }, required: false, label: t('activerecord.attributes.phone_two'), placeholder: '+582123536869'
28
34
  .pull-right
29
35
  = f.button :submit, t("keppler.actions.apply"), :class => "btn-primary"
30
36
  -# .card-image
@@ -1,17 +1,17 @@
1
1
  .col-lg-12
2
- = f.simple_fields_for :smtp_setting do |f|
3
- .box.slice-box
4
- .box-header.with-border
5
- %h3.box-title
6
- Email configuration (SMTP)
7
- .box-tools.pull-right
8
- %a.btn.btn-box-tool{"data-widget" => "collapse", type: "button"}
9
- %i.fa.fa-minus
10
- .box-body.pure-input
11
- = f.input :address
12
- = f.input :port
13
- = f.input :domain_name
14
- = f.input :email
15
- = f.input :password
16
- .pull-right
17
- = f.button :submit, t("keppler.actions.apply"), :class => "btn-primary"
2
+ = f.simple_fields_for :smtp_setting do |f|
3
+ .box.slice-box
4
+ .box-header.with-border
5
+ %h3.box-title
6
+ = t('keppler.sidebar-menu.setting-submenu.email-setting-smtp')
7
+ .box-tools.pull-right
8
+ %a.btn.btn-box-tool{'data-widget' => 'collapse', type: 'button'}
9
+ %i.fa.fa-minus
10
+ .box-body.pure-input
11
+ = f.input :address
12
+ = f.input :port
13
+ = f.input :domain_name
14
+ = f.input :email
15
+ = f.input :password
16
+ .pull-right
17
+ = f.button :submit, t('keppler.actions.apply'), class: "btn-primary"
@@ -2,7 +2,7 @@
2
2
  .box.slice-box
3
3
  .box-header.with-border
4
4
  %h3.box-title
5
- Google Analytics Settings
5
+ = t 'keppler.sidebar-menu.setting-submenu.google-analytics'
6
6
  .box-tools.pull-right
7
7
  %a.btn.btn-box-tool{'data-widget' => 'collapse', type: 'button'}
8
8
  %i.fa.fa-minus
@@ -1,42 +1,42 @@
1
1
  .social-medias-setting.col-lg-12
2
- .box.slice-box
3
- .box-header.with-border
4
- %h3.box-title
5
- Email configuration (SMTP)
6
- .box-tools.pull-right
7
- %a.btn.btn-box-tool{"data-widget" => "collapse", type: "button"}
8
- %i.fa.fa-minus
9
- .box-body.pure-input
10
- = f.simple_fields_for :social_account do |f|
11
- .row
12
- - @social_medias.each_with_index do |social, color|
13
- .col-lg-6.col-md-6.col-sm-12.col-xs-12
14
- = f.input social
2
+ .box.slice-box
3
+ .box-header.with-border
4
+ %h3.box-title
5
+ = t 'keppler.sidebar-menu.setting-submenu.social-accounts'
6
+ .box-tools.pull-right
7
+ %a.btn.btn-box-tool{"data-widget" => "collapse", type: "button"}
8
+ %i.fa.fa-minus
9
+ .box-body.pure-input
10
+ = f.simple_fields_for :social_account do |f|
11
+ .row
12
+ - @social_medias.each_with_index do |social, color|
13
+ .col-lg-6.col-md-6.col-sm-12.col-xs-12
14
+ = f.input social
15
15
 
16
- -# To show a social media icon before input
17
- :javascript
18
- var input = $("#setting_social_account_attributes_#{social}")
19
- input.before(
20
- `<i style="color:#9e9e9e" class="social-icons prefix fa fa-#{social.to_s.split('_').join('-')}"></i>`
21
- )
22
- input.focus(function(){
23
- $('.fa-#{social.to_s.split('_').join('-')}').css('color', "#{@colors[color]}")
24
- })
25
- input.blur(function(){
26
- $('.fa-#{social.to_s.split('_').join('-')}').css('color', "#9e9e9e")
27
- })
16
+ -# To show a social media icon before input
17
+ :javascript
18
+ var input = $("#setting_social_account_attributes_#{social}")
19
+ input.before(
20
+ `<i style="color:#9e9e9e" class="social-icons prefix fab fa-#{social.to_s.split('_').join('-')}"></i>`
21
+ )
22
+ input.focus(function(){
23
+ $('.fa-#{social.to_s.split('_').join('-')}').css('color', "#{@colors[color]}")
24
+ })
25
+ input.blur(function(){
26
+ $('.fa-#{social.to_s.split('_').join('-')}').css('color', "#9e9e9e")
27
+ })
28
28
 
29
- -# To activate colors in social media inputs
30
- :sass
31
- .setting_social_account_#{social}
32
- i.active
33
- color: #{@colors[color]} !important
34
- input:focus:not([readonly])
35
- border: 1px solid #{@colors[color]} !important
36
- // box-shadow: 0 1px 0 0 #{@colors[color]} !important
37
- .control-label.active
38
- color: #{@colors[color]} !important
39
- .row
40
- .col-lg-12
41
- .pull-right
42
- = f.button :submit, t("keppler.actions.apply"), :class => "btn-primary"
29
+ -# To activate colors in social media inputs
30
+ :sass
31
+ .setting_social_account_#{social}
32
+ i.active
33
+ color: #{@colors[color]} !important
34
+ input:focus:not([readonly])
35
+ border: 1px solid #{@colors[color]} !important
36
+ // box-shadow: 0 1px 0 0 #{@colors[color]} !important
37
+ .control-label.active
38
+ color: #{@colors[color]} !important
39
+ .row
40
+ .col-lg-12
41
+ .pull-right
42
+ = f.button :submit, t("keppler.actions.apply"), :class => "btn-primary"