inline_forms 5.1.0 → 5.1.1

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: 52f4a06037437f39577e650e97424ad15c3eeda2
4
- data.tar.gz: 14c177bf9e3c0049e357aa71bac9118c3bffd308
3
+ metadata.gz: 508d19cb75c838a6c031cda1af55fd3d5c4dc164
4
+ data.tar.gz: 7f0b89f9d09ab310576781a3c76fed0849092508
5
5
  SHA512:
6
- metadata.gz: 3abe277abf781d80902b92eaa0a3a88457de1f6605b15c6f9c4abc0856b50986ad6b0f207896c0188fd26f05b1d1c6427156005e4f181080f03e9f3d714993df
7
- data.tar.gz: 915e21c01f8916b26270c89556dbed943838be92c476a26c9a97e785f264dda037289adc0243fb4d34a1f1a6237ad6d09c47583b9f3503189e056166ad4d3df2
6
+ metadata.gz: 9d84b37c2928f2a3a3aa7430adb571f9034020c5b63b7bcb010b60e705277aeb6989087aef7634a8e147e7fd0408814f62899eed190350aab6ad1593eda62e34
7
+ data.tar.gz: 9cdf6fd442d5994e0c6ff8c611fe62ac88751ad209f1ca9fd1fcaae8336a903c7cda6ee71b0a7587866d79ee95a48463809567a7f217a9d23dcfa1fc20eebc33
@@ -8,18 +8,16 @@ module VersionsConcern
8
8
  def list_versions
9
9
  @update_span = params[:update]
10
10
  @object = referenced_object
11
- respond_to do |format|
12
- format.html { } unless @Klass.not_accessible_through_html?
13
- format.js { render :versions_list }
14
- end
15
- end
16
-
17
- def close_versions_list
18
- @update_span = params[:update]
19
- @object = referenced_object
20
- respond_to do |format|
21
- format.html { } unless @Klass.not_accessible_through_html?
22
- format.js { render :versions }
11
+ close = params[:close] || false
12
+ if close
13
+ respond_to do |format|
14
+ format.js { render :versions }
15
+ end
16
+ else
17
+ respond_to do |format|
18
+ format.html { } unless @Klass.not_accessible_through_html?
19
+ format.js { render :versions_list }
20
+ end
23
21
  end
24
22
  end
25
23
  end
@@ -0,0 +1,28 @@
1
+ # -*- encoding : utf-8 -*-
2
+ InlineForms::SPECIAL_COLUMN_TYPES[:audio_field]=:string
3
+
4
+ def audio_field_show(object, attribute)
5
+ o = object.send(attribute)
6
+ msg = "<i class='fi-pencil' title='Edit #{attribute.to_s}'></i>".html_safe
7
+ if o.send(:present?)
8
+ if o.respond_to? :palm
9
+ audio_html = audio_tag(o.send(:palm).send(:url), autoplay: false, controls: true)
10
+ else
11
+ audio_html = audio_tag(o.send(:url), autoplay: false, controls: true)
12
+ end
13
+ end
14
+ link_to_edit = link_to_inline_edit object, attribute, msg
15
+ if cancan_disabled? || ( can? :update, object, attribute )
16
+ "#{audio_html} #{link_to_edit}".html_safe
17
+ else
18
+ audio_html.html_safe
19
+ end
20
+ end
21
+
22
+ def audio_field_edit(object, attribute)
23
+ file_field_tag attribute, class: 'input_text_field'
24
+ end
25
+
26
+ def audio_field_update(object, attribute)
27
+ object.send(attribute.to_s + '=', params[attribute.to_sym])
28
+ end
@@ -99,7 +99,7 @@ module InlineFormsHelper
99
99
  :class => html_class,
100
100
  :title => t('inline_forms.view.list_versions')
101
101
  )
102
- if current_user.role? :superadmin
102
+ if can? :list_versions, object.class.name.pluralize.underscore.to_sym
103
103
  raw out
104
104
  end
105
105
  end
@@ -107,9 +107,10 @@ module InlineFormsHelper
107
107
  # close versions list link
108
108
  def close_versions_list_link(object, update_span, html_class = 'button close_button' )
109
109
  link_to "<i class='fi-x'></i>".html_safe,
110
- send('close_versions_list_' + @object.class.to_s.underscore + "_path",
110
+ send('list_versions_' + @object.class.to_s.underscore + "_path",
111
111
  object,
112
- :update => update_span
112
+ :update => update_span,
113
+ :close => true
113
114
  ),
114
115
  :remote => true,
115
116
  :class => html_class,
@@ -206,6 +207,10 @@ module InlineFormsHelper
206
207
  values
207
208
  end
208
209
 
210
+ def version_modified_by id
211
+ user = User.find_by_id id
212
+ user.nil? ? 'Unknown' : user.name
213
+ end
209
214
 
210
215
  end
211
216
 
@@ -115,7 +115,7 @@
115
115
  <% end %>
116
116
  <% end %>
117
117
  <% end %>
118
- <% if current_user.role? :superadmin %>
118
+ <% if can? :list_versions, @object.class.name.pluralize.underscore.to_sym %>
119
119
  <% css_class_id = "#{@object.class.name.underscore}_#{@object.id}_versions" -%>
120
120
  <div id="<%= css_class_id -%>">
121
121
  <%= render 'versions' %>
@@ -45,7 +45,7 @@
45
45
  <%= version.event -%>
46
46
  </div>
47
47
  <div class="small-2 column">
48
- <%= version.whodunnit.nil? ? 'nil' : version.author.name -%>
48
+ <%= version_modified_by version.whodunnit -%>
49
49
  </div>
50
50
  <div class="small-8 column">
51
51
  <% if version.changeset.empty? %>
@@ -7,6 +7,7 @@
7
7
  <%= t('inline_forms.general.application_title') %> v<%= InlineForms::VERSION %>
8
8
  </title>
9
9
  <%= stylesheet_link_tag "inline_forms/devise" %>
10
+ <%= stylesheet_link_tag "inline_forms_devise" %>
10
11
  <%= csrf_meta_tags %>
11
12
  </head>
12
13
 
@@ -6,7 +6,7 @@ add_source 'https://rubygems.org'
6
6
 
7
7
  gem 'cancancan', '~> 2.0'
8
8
  gem 'carrierwave'
9
- gem 'ckeditor'
9
+ gem 'ckeditor', github: 'galetahub/ckeditor'
10
10
  gem 'coffee-rails'
11
11
  gem 'compass-rails'
12
12
  gem 'devise'
@@ -21,12 +21,12 @@ gem 'mini_magick'
21
21
  gem 'mysql2'
22
22
  gem 'paper_trail'
23
23
  gem 'rails-i18n'
24
- gem 'rails', '~> 5.0.6'
24
+ gem 'rails', '~> 5.1.4'
25
25
  gem 'rake'
26
26
  gem 'remotipart', '~> 1.0'
27
27
  gem 'rvm'
28
28
  gem 'sass-rails'
29
- gem 'tabs_on_rails', git: 'https://github.com/acesuares/tabs_on_rails.git', :branch => 'update_remote'
29
+ gem 'tabs_on_rails'
30
30
  gem 'therubyracer'
31
31
  gem 'uglifier'
32
32
  gem 'figaro'
@@ -95,7 +95,6 @@ devise_for :users, :path_prefix => 'auth'
95
95
  resources :users do
96
96
  post 'revert', :on => :member
97
97
  get 'list_versions', :on => :member
98
- get 'close_versions_list', :on => :member
99
98
  end
100
99
  ROUTE
101
100
 
@@ -106,7 +105,7 @@ create_file "db/migrate/" +
106
105
  Time.now.utc.strftime("%Y%m%d%H%M%S") +
107
106
  "_" +
108
107
  "devise_create_users.rb", <<-DEVISE_MIGRATION.strip_heredoc
109
- class DeviseCreateUsers < ActiveRecord::Migration
108
+ class DeviseCreateUsers < ActiveRecord::Migration[5.0]
110
109
 
111
110
  def change
112
111
  create_table(:users) do |t|
@@ -254,7 +253,7 @@ create_file "db/migrate/" +
254
253
  Time.now.utc.strftime("%Y%m%d%H%M%S") +
255
254
  "_" +
256
255
  "inline_forms_create_join_table_user_role.rb", <<-ROLES_MIGRATION.strip_heredoc
257
- class InlineFormsCreateJoinTableUserRole < ActiveRecord::Migration
256
+ class InlineFormsCreateJoinTableUserRole < ActiveRecord::Migration[5.0]
258
257
  def self.up
259
258
  create_table :roles_users, :id => false, :force => true do |t|
260
259
  t.integer :role_id
@@ -274,17 +273,8 @@ append_to_file "db/seeds.rb", "Role.create({ id: 1, name: 'superadmin', descript
274
273
  say "- Installaing ZURB Foundation..."
275
274
  generate "foundation:install", "-f"
276
275
 
277
- say "- Copy images..."
278
- %w(glass_plate.gif).each do |image|
279
- copy_file File.join(GENERATOR_PATH, 'lib/generators/assets/images' , image), File.join('app/assets/images' , image)
280
- end
281
-
282
- say "- Copy javascripts..."
283
- remove_file 'app/assets/javascripts/application.js'
284
- %w(application.js inline_forms.js).each do |javascript|
285
- copy_file File.join(GENERATOR_PATH, 'lib/generators/assets/javascripts' , javascript), File.join('app/assets/javascripts' , javascript)
286
- end
287
-
276
+ say "- Copy inline_forms_devise file for custom styles..."
277
+ copy_file File.join(GENERATOR_PATH, 'lib/generators/assets/stylesheets/inline_forms_devise.css'), 'app/assets/stylesheets/inline_forms_devise.css'
288
278
 
289
279
  say "- Add human_attribute_name in app/models/application_record.rb"
290
280
  remove_file 'app/models/application_record.rb' # the one that 'rails new' created
@@ -301,10 +291,7 @@ say "- Set languages for ckeditor to ['en', 'nl'] in config/initializers/ckedito
301
291
  insert_into_file "config/initializers/ckeditor.rb", " config.assets_languages = ['en', 'nl']\n", :after => "config.assets_languages = ['en', 'uk']\n"
302
292
 
303
293
  say "- Paper_trail install..."
304
- generate "paper_trail:install" # TODO One day, we need some management tools so we can actually SEE the versions, restore them etc.
305
-
306
- say "- Import migrations from engines"
307
- run "bundle exec rails railties:install:migrations" # This is needed to add changeset field to the paper_trail versions table
294
+ generate "paper_trail:install --with-changes"
308
295
 
309
296
  # Create Translations
310
297
  say "- Generate models and tables and views for translations..." # TODO Translations need to be done in inline_forms, and then generate a yml file, perhaps
@@ -317,7 +304,7 @@ create_file "db/migrate/" +
317
304
  Time.now.utc.strftime("%Y%m%d%H%M%S") +
318
305
  "_" +
319
306
  "inline_forms_create_view_for_translations.rb", <<-VIEW_MIGRATION.strip_heredoc
320
- class InlineFormsCreateViewForTranslations < ActiveRecord::Migration
307
+ class InlineFormsCreateViewForTranslations < ActiveRecord::Migration[5.0]
321
308
  def self.up
322
309
  execute 'CREATE VIEW translations
323
310
  AS
@@ -496,7 +483,7 @@ remove_file 'spec/models/user_spec.rb'
496
483
 
497
484
  # precompile devise.css
498
485
  say "- Precompile devise.css in environments/production.rb... (Since Rails 5 in config/initializers/assets.rb !)"
499
- append_file "config/initializers/assets.rb", " Rails.application.config.assets.precompile += %w( devise.css )\n"
486
+ append_file "config/initializers/assets.rb", " Rails.application.config.assets.precompile += %w( inline_forms_devise.css )\n"
500
487
 
501
488
  # devise mailer stuff
502
489
  say "- Injecting devise mailer stuff in environments/production.rb..."
@@ -0,0 +1 @@
1
+ /* Put here your custom styles for inline_forms devise views */
@@ -111,7 +111,8 @@ module InlineForms
111
111
  ## :drop_down, :references and :belongs_to all end up with the column_type :belongs_to
112
112
  @belongs_to << ' belongs_to :' + attribute.name + "\n"
113
113
  end
114
- if attribute.type == :image_field # upload images via carrierwave
114
+ # upload images or audio files via carrierwave
115
+ case attribute.type when :image_field, :audio_field then
115
116
  @carrierwave_mounters << ' mount_uploader :' + attribute.name + ', ' + "#{attribute.name}_uploader".camelcase + "\n"
116
117
  end
117
118
  if attribute.type == :has_many ||
@@ -173,7 +174,6 @@ module InlineForms
173
174
  resources :#{resource_name} do
174
175
  post 'revert', :on => :member
175
176
  get 'list_versions', :on => :member
176
- get 'close_versions_list', :on => :member
177
177
  end
178
178
  ROUTE
179
179
  end
@@ -138,14 +138,6 @@ module InlineForms
138
138
  # Declare as a Rails::Engine, see http://www.ruby-forum.com/topic/211017#927932
139
139
  class Engine < Rails::Engine
140
140
 
141
- initializer :append_migrations do |app|
142
- unless app.root.to_s.match(root.to_s)
143
- config.paths["db/migrate"].expanded.each do |path|
144
- app.config.paths["db/migrate"] << path
145
- end
146
- end
147
- end
148
-
149
141
  initializer "inline_forms.assets.precompile" do |app|
150
142
  app.config.assets.precompile += %w( inline_forms/inline_forms.scss
151
143
  inline_forms/devise.css
@@ -1,4 +1,4 @@
1
1
  # -*- encoding : utf-8 -*-
2
2
  module InlineForms
3
- VERSION = "5.1.0"
3
+ VERSION = "5.1.1"
4
4
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inline_forms
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.1.0
4
+ version: 5.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ace Suares
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2018-02-06 00:00:00.000000000 Z
13
+ date: 2018-02-12 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rvm
@@ -167,6 +167,7 @@ files:
167
167
  - app/controllers/geo_code_curacao_controller.rb
168
168
  - app/controllers/inline_forms_application_controller.rb
169
169
  - app/controllers/inline_forms_controller.rb
170
+ - app/helpers/form_elements/audio_field.rb
170
171
  - app/helpers/form_elements/check_box.rb
171
172
  - app/helpers/form_elements/check_list.rb
172
173
  - app/helpers/form_elements/chicas_dropdown_with_family_members.rb
@@ -255,18 +256,10 @@ files:
255
256
  - bin/inline_forms
256
257
  - bin/inline_forms_app_template.rb
257
258
  - bin/inline_forms_installer_core.rb
258
- - config/initializers/paper_trail.rb
259
- - db/migrate/20180116154757_add_object_changes_to_versions.rb
260
259
  - inline_forms.gemspec
261
- - lib/app/controllers/concerns/versions_concern.rb
262
- - lib/app/views/devise/sessions/_flash.html.erb
263
- - lib/app/views/devise/sessions/_top-bar.html.erb
264
- - lib/app/views/inline_forms/_versions.html.erb
265
- - lib/app/views/inline_forms/_versions_list.html.erb
266
- - lib/app/views/inline_forms/versions.js.erb
267
- - lib/app/views/inline_forms/versions_list.js.erb
268
260
  - lib/generators/USAGE
269
261
  - lib/generators/assets/stylesheets/inline_forms.scss
262
+ - lib/generators/assets/stylesheets/inline_forms_devise.css
270
263
  - lib/generators/inline_forms_generator.rb
271
264
  - lib/generators/templates/_inline_forms_tabs.html.erb
272
265
  - lib/generators/templates/abstract_mysql2_adapter.rb
@@ -1,7 +0,0 @@
1
- PaperTrail.config.track_associations = false
2
-
3
- PaperTrail::Version.class_eval do
4
- def author
5
- User.find(whodunnit) if whodunnit
6
- end
7
- end
@@ -1,5 +0,0 @@
1
- class AddObjectChangesToVersions < ActiveRecord::Migration[5.0]
2
- def change
3
- add_column :versions, :object_changes, :text
4
- end
5
- end
@@ -1,25 +0,0 @@
1
- module VersionsConcern
2
- extend ActiveSupport::Concern
3
-
4
- included do
5
- before_action :set_paper_trail_whodunnit
6
- end
7
-
8
- def list_versions
9
- @update_span = params[:update]
10
- @object = referenced_object
11
- respond_to do |format|
12
- format.html { } unless @Klass.not_accessible_through_html?
13
- format.js { render :versions_list }
14
- end
15
- end
16
-
17
- def close_versions_list
18
- @update_span = params[:update]
19
- @object = referenced_object
20
- respond_to do |format|
21
- format.html { } unless @Klass.not_accessible_through_html?
22
- format.js { render :versions }
23
- end
24
- end
25
- end
@@ -1,7 +0,0 @@
1
- <% if !flash.empty? %>
2
- <div id='inline_forms_devise_flash_div' class='row'>
3
- <% flash.each do |name, msg| %>
4
- <%= content_tag :div, msg, :id => "flash_#{name}", :class => 'devise flash' %>
5
- <% end %>
6
- </div>
7
- <% end %>
@@ -1,12 +0,0 @@
1
- <div class='contain-to-grid'>
2
- <nav id='inline_forms_devise_top_nav_bar' class='top-bar' data-topbar>
3
- <ul class='title-area'>
4
- <li class='name'>
5
- <h1><a href='/'><%= t('inline_forms.devise.title_for_devise') %> <%= InlineForms::VERSION %></a></h1>
6
- </li>
7
- <li class='toggle-topbar menu-icon'>
8
- <a href='#'><span></span></a>
9
- </li>
10
- </ul>
11
- </nav>
12
- </div>
@@ -1,14 +0,0 @@
1
- <% css_class_id = "#{@object.class.name.underscore}_#{@object.id}_versions" -%>
2
- <div class="row form_element_header associated_auto_header callout">
3
- <div class='medium-11 large-11 column' >
4
- <%= "Versions (#{@object.versions.length})" %>
5
- </div>
6
- <div class='medium-1 large-1 column'>
7
- <%= link_to_versions_list(
8
- 'list_versions_' + @object.class.to_s.underscore + "_path",
9
- @object,
10
- css_class_id
11
- )
12
- %>
13
- </div>
14
- </div>
@@ -1,75 +0,0 @@
1
- <% path_to_object = @object.class.to_s.underscore + '_path' %>
2
- <% css_class_id = "#{@object.class.name.underscore}_#{@object.id}_versions" -%>
3
- <div class="row form_element_header associated_auto_header callout">
4
- <div class='medium-11 large-11 column' >
5
- <%= "Versions (#{@object.versions.length})" %>
6
- </div>
7
- <div class='medium-1 large-1 column'>
8
- <%= close_versions_list_link(
9
- @object,
10
- css_class_id
11
- )
12
- %>
13
- </div>
14
- </div>
15
- <div class="row <%= cycle('odd', 'even') %>">
16
- <div class='small-12 column'>
17
- <div class="small-1 column">
18
- &nbsp;
19
- </div>
20
- <div class="small-1 column">
21
- <strong>Event</strong>
22
- </div>
23
- <div class="small-2 column">
24
- <strong>Done by</strong>
25
- </div>
26
- <div class="small-8 column">
27
- <strong>Changeset</strong>
28
- </div>
29
- </div>
30
- </div>
31
- <div class="row <%= cycle('odd', 'even') %>">
32
- <% @object.versions.reverse.each do | version | %>
33
- <div class='small-12 column'>
34
- <div class="small-1 column">
35
- <%= link_to t('inline_forms.view.restore'),
36
- send('revert_' + @object.class.to_s.underscore + "_path",
37
- version,
38
- :update => "#{@object.class.name.underscore}_#{@object.id}"
39
- ),
40
- :remote => true,
41
- :method => :post
42
- %>
43
- </div>
44
- <div class="small-1 column">
45
- <%= version.event -%>
46
- </div>
47
- <div class="small-2 column">
48
- <%= version.whodunnit.nil? ? 'nil' : version.author.name -%>
49
- </div>
50
- <div class="small-8 column">
51
- <% if version.changeset.empty? %>
52
- <em>empty</em>
53
- <% else %>
54
- <% version.changeset.each do |attribute, value| %>
55
- <% next if attribute == 'updated_at' %>
56
- <table>
57
- <tr>
58
- <th colspan="2" class="text-center"><%= attribute %></th>
59
- <th></th>
60
- </tr>
61
- <tr>
62
- <td>old value</td>
63
- <td>new value</td>
64
- </tr>
65
- <tr>
66
- <td><%= value[0] %></td>
67
- <td><%= value[1] %></td>
68
- </tr>
69
- </table>
70
- <% end %>
71
- <% end %>
72
- </div>
73
- </div>
74
- <% end %>
75
- </div>
@@ -1,4 +0,0 @@
1
- $('#<%= @update_span %>').fadeOut("slow", function() {
2
- $(this).html('<%= escape_javascript(render(:partial => 'inline_forms/versions' ))%>');
3
- $(this).fadeIn("slow");
4
- });
@@ -1 +0,0 @@
1
- $('#<%= @update_span %>').html('<%= escape_javascript(render(:partial => 'inline_forms/versions_list' ))%>')