kuppayam 0.1.4 → 0.1.5dev

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 (51) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/kuppayam/utilities.js +28 -0
  3. data/app/assets/stylesheets/kuppayam/custom.css +8 -1
  4. data/app/controllers/kuppayam/base_controller.rb +11 -1
  5. data/app/controllers/kuppayam/documents_controller.rb +4 -0
  6. data/app/helpers/flash_helper.rb +1 -1
  7. data/app/helpers/render_helper.rb +11 -2
  8. data/app/helpers/resource_helper.rb +13 -3
  9. data/app/models/kuppayam/application_record.rb +4 -0
  10. data/app/uploaders/document_uploader.rb +3 -3
  11. data/app/views/kuppayam/documents/create.html.erb +1 -1
  12. data/app/views/kuppayam/documents/edit.js.erb +1 -1
  13. data/app/views/kuppayam/documents/new.js.erb +1 -1
  14. data/app/views/kuppayam/documents/update.html.erb +1 -1
  15. data/app/views/kuppayam/http_status/404.html.erb +1 -0
  16. data/app/views/kuppayam/images/create.html.erb +2 -2
  17. data/app/views/kuppayam/images/crop.html.erb +1 -1
  18. data/app/views/kuppayam/images/edit.js.erb +3 -3
  19. data/app/views/kuppayam/images/new.js.erb +1 -1
  20. data/app/views/kuppayam/images/update.html.erb +3 -3
  21. data/app/views/kuppayam/import_data/new.js.erb +1 -1
  22. data/app/views/kuppayam/import_data/update.html.erb +1 -1
  23. data/app/views/kuppayam/workflows/parrot/create.js.erb +11 -6
  24. data/app/views/kuppayam/workflows/parrot/edit.js.erb +1 -1
  25. data/app/views/kuppayam/workflows/parrot/new.js.erb +2 -2
  26. data/app/views/kuppayam/workflows/parrot/row.js.erb +1 -1
  27. data/app/views/kuppayam/workflows/parrot/update.js.erb +10 -5
  28. data/app/views/kuppayam/workflows/peacock/create.js.erb +11 -6
  29. data/app/views/kuppayam/workflows/peacock/edit.js.erb +2 -2
  30. data/app/views/kuppayam/workflows/peacock/new.js.erb +2 -2
  31. data/app/views/kuppayam/workflows/peacock/row.js.erb +1 -1
  32. data/app/views/kuppayam/workflows/peacock/update.js.erb +11 -6
  33. data/app/views/layouts/kuppayam/_footer.html.erb +1 -0
  34. data/app/views/layouts/kuppayam/_horizontal_menu.html.erb +932 -0
  35. data/app/views/layouts/kuppayam/_sidebar.html.erb +3 -0
  36. data/app/views/layouts/kuppayam/admin.html.erb +63 -6
  37. data/app/views/layouts/kuppayam/blank.html.erb +62 -5
  38. data/app/views/layouts/kuppayam/document_upload.html.erb +3 -2
  39. data/app/views/layouts/kuppayam/image_upload.html.erb +3 -2
  40. data/app/views/layouts/kuppayam/layout_horizontal_menu.html.erb +116 -0
  41. data/app/views/layouts/kuppayam/print_a4.html.erb +32 -0
  42. data/config/locales/kuppayam/general.yml +1 -0
  43. data/lib/kuppayam/action_view/form_helper.rb +1 -1
  44. data/lib/kuppayam/action_view/theme_helper.rb +1 -1
  45. data/lib/kuppayam/engine.rb +2 -0
  46. data/lib/kuppayam/extras/kuppayam/importer.rb +156 -0
  47. data/lib/kuppayam/version.rb +1 -1
  48. data/vendor/assets/fonts/fontawesome/css/font-awesome.css +5 -2
  49. data/vendor/assets/fonts/linecons/css/linecons.css +6 -6
  50. metadata +29 -5
  51. data/app/views/layouts/kuppayam/_overlays.html.erb +0 -47
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 010cd4163a70c1045f7c09ce9e74c0f3902fa657
4
- data.tar.gz: 4c1b0b8d2009939b0b60b584fbc6d7573fa9dd53
3
+ metadata.gz: fff25b3a1858e13c0a72ee9861fa55f751105138
4
+ data.tar.gz: 7783a9884305b36e07f684ad1e4714d5b0213bde
5
5
  SHA512:
6
- metadata.gz: 3a862691aa5c6eacc14fa9f34935618165e898a9e332c4f1297ba07d2752f1f9d6d76c4624bec85d501b58d5f6f9d7bcb3b92c4cb3e384a4dad25a870b035efb
7
- data.tar.gz: a85a021f0b4eb4d2e723fe9cbc3a1df4f877d33c1f5b1869b44a91d89f4dc575c8e4ccc5eeda2831f9eb07ccb54902c987ad96d6e7e9e3696344e0763e5794e6
6
+ metadata.gz: e9429774ce4e5947e544bf4d1790ff7d91618bbf4b5d9f96f0ce831f9af66241948e0bc8294ff9f347ae24c7f4477d5d0bbd0df26171fa5c6abb0043ecbd1b9f
7
+ data.tar.gz: 353c1658f2722045525eb57431a3e924429c3254c6b515e24288f1c7163d0dffc75c24dae8d9c7eba923be7804650f22cfe76a3a13ded23c4d4fae1971d5b693
@@ -10,10 +10,31 @@ function sendAjaxRequest(url, mType){
10
10
  jQuery.ajax({type: methodType, dataType:"script", url:url});
11
11
  }
12
12
 
13
+ var imageUploadModalId = "div_modal_image_upload";
13
14
  var genericModalId = "div_modal_generic";
14
15
  var largeModalId = "div_modal_large";
15
16
  var messageModalId = "div_modal_message";
16
17
 
18
+ // Call this function by passing model Id, heading and a bodyContent.
19
+ // it will pop up bootstrap 3 modal.
20
+ function showImageUploadModal(heading, bodyContent, showHeading){
21
+ $('#' + imageUploadModalId + ' .modal-header .modal-title').text(heading);
22
+ $('#' + imageUploadModalId + ' div.modal-body-main').html(bodyContent);
23
+ $('#' + imageUploadModalId).modal({show: true, backdrop: 'static', keyboard: false});
24
+
25
+ if(showHeading){
26
+ $('#' + imageUploadModalId + ' .modal-header').show();
27
+ }
28
+ else {
29
+ $('#' + imageUploadModalId + ' .modal-header').hide();
30
+ }
31
+
32
+ setTimeout(function() {
33
+ $('#' + imageUploadModalId).modal('handleUpdate'); //Update backdrop on modal show
34
+ $('#' + imageUploadModalId).scrollTop(0); //reset modal to top position
35
+ }, 1000);
36
+ }
37
+
17
38
  // Call this function by passing model Id, heading and a bodyContent.
18
39
  // it will pop up bootstrap 3 modal.
19
40
  function showGenericModal(heading, bodyContent, showHeading){
@@ -72,6 +93,13 @@ function showMessageModal(heading, message, modalId){
72
93
  }, 1000);
73
94
  }
74
95
 
96
+ function closeImageUploadModal(modalId){
97
+ $('#' + imageUploadModalId).modal('hide');
98
+
99
+ showAndHideModals();
100
+ }
101
+
102
+
75
103
  function closeGenericModal(modalId){
76
104
  $('#' + genericModalId).modal('hide');
77
105
 
@@ -52,4 +52,11 @@
52
52
  .btn.btn-secondary.btn-only-hover:hover{
53
53
  background-color: #68b828 !important;
54
54
  color: #fff !important;
55
- }
55
+ }
56
+
57
+ // Fix for overriding fa-class conflicts
58
+
59
+ .fade-in-effect {
60
+ display:block !important;
61
+ }
62
+
@@ -3,13 +3,15 @@ module Kuppayam
3
3
 
4
4
  protect_from_forgery with: :exception
5
5
  rescue_from ActionController::InvalidAuthenticityToken, :with => :handle_invalid_authenticity_token
6
-
6
+
7
7
  layout 'kuppayam/admin'
8
8
 
9
+ before_action :get_nested_resource_objects
9
10
  before_action :set_locale, :stylesheet_filename, :javascript_filename,
10
11
  :set_default_title, :set_navs, :parse_pagination_params,
11
12
  :configure_filters, :configure_notification, :configure_breadcrumbs
12
13
 
14
+
13
15
  include ParamsParserHelper
14
16
  include RenderHelper
15
17
 
@@ -44,6 +46,14 @@ module Kuppayam
44
46
  { locale: I18n.locale }
45
47
  end
46
48
 
49
+ # This is more like a hooker method which is called
50
+ # before all other before_action method.
51
+ # This method can be overriden by inherited controller classes
52
+ # An e.g: would be to call a method to get @store object from params[:store_id]
53
+ # The object @store has to be initiated before the breadcrumbs or set_title methods are called
54
+ def get_nested_resource_objects
55
+ end
56
+
47
57
  def stylesheet_filename
48
58
  @stylesheet_filename = "kuppayam"
49
59
  end
@@ -12,6 +12,10 @@ module Kuppayam
12
12
  @document = @document_class.find(params[:id])
13
13
  end
14
14
 
15
+ def download
16
+ @document = @document_class.find(params[:id])
17
+ end
18
+
15
19
  def new
16
20
  @document = @document_class.new
17
21
  end
@@ -39,7 +39,7 @@ module FlashHelper
39
39
 
40
40
  message = message.strip if message
41
41
 
42
- content_tag(:div, class: "alert #{cls_name} fade in mb-10", "data-alert" => "alert") do
42
+ content_tag(:div, class: "alert #{cls_name} mb-10", "data-alert" => "alert") do
43
43
  raw(link_to("×", "#", class: "close", "data-dismiss" => "alert") + content_tag(:p, message))
44
44
  end unless message.blank?
45
45
  end
@@ -7,6 +7,9 @@ module RenderHelper
7
7
  end
8
8
  end
9
9
 
10
+ # TODO - This is still not fixed.
11
+ # May be it will work on Ajax Request and show sign in pop up.
12
+ # This is not working for HTTP direct requests
10
13
  def handle_invalid_authenticity_token
11
14
  heading = I18n.t("status.invalid_token.heading")
12
15
  message = I18n.t("status.invalid_token.message")
@@ -15,7 +18,10 @@ module RenderHelper
15
18
  notifyError('#{heading}','#{message}');
16
19
  eos
17
20
  respond_to do |format|
18
- format.html { render :status => 404 }
21
+ format.html {
22
+ #redirect_to root_path
23
+ render template: '/kuppayam/404', layout: 'kuppayam/blank', :status => 404
24
+ }
19
25
  format.js { render text: js_message }
20
26
  end
21
27
  end
@@ -38,7 +44,10 @@ module RenderHelper
38
44
 
39
45
  def render_accordingly
40
46
  respond_to do |format|
41
- format.html { get_collections and render params[:action].to_sym }
47
+ format.html {
48
+ get_collections
49
+ render :index
50
+ }
42
51
  format.js {
43
52
  view_path = @resource_options && @resource_options[:view_path] ? "#{@resource_options[:js_view_path]}/#{params[:action]}" : params[:action].to_sym
44
53
  render view_path
@@ -64,7 +64,7 @@ module ResourceHelper
64
64
  @r_object.destroy
65
65
  get_collections
66
66
  set_flash_message(I18n.t('success.deleted'), :success)
67
- set_notification(false, I18n.t('status.success'), I18n.t('success.deleted', item: default_item_name.titleize))
67
+ set_notification(true, I18n.t('status.success'), I18n.t('success.deleted', item: default_item_name.titleize))
68
68
  @destroyed = true
69
69
  else
70
70
  message = I18n.t('errors.failed_to_delete', item: default_item_name.titleize)
@@ -114,7 +114,11 @@ module ResourceHelper
114
114
  end
115
115
 
116
116
  def default_collection_name
117
- params[:controller].split("/").last
117
+ begin
118
+ params[:controller].split("/").last
119
+ rescue
120
+ :items
121
+ end
118
122
  end
119
123
 
120
124
  def default_item_name
@@ -122,7 +126,11 @@ module ResourceHelper
122
126
  end
123
127
 
124
128
  def default_class
125
- default_collection_name.singularize.camelize.constantize
129
+ begin
130
+ default_collection_name.singularize.camelize.constantize
131
+ rescue
132
+ nil
133
+ end
126
134
  end
127
135
 
128
136
  def resource_controller_configuration
@@ -137,6 +145,8 @@ module ResourceHelper
137
145
  item_name: default_item_name,
138
146
  class: default_class,
139
147
  layout: :table,
148
+ show_modal_after_update: true,
149
+ show_modal_after_update: true,
140
150
  view_path: "/kuppayam/workflows/peacock",
141
151
  js_view_path: "/kuppayam/workflows/peacock"
142
152
  }
@@ -1,5 +1,9 @@
1
1
  module Kuppayam
2
2
  class ApplicationRecord < ActiveRecord::Base
3
3
  self.abstract_class = true
4
+
5
+ require 'kuppayam/importer.rb'
6
+ extend Kuppayam::Importer
7
+ extend KuppayamValidators
4
8
  end
5
9
  end
@@ -1,13 +1,13 @@
1
1
  # encoding: utf-8
2
2
 
3
- class ImageUploader < CarrierWave::Uploader::Base
3
+ class DocumentUploader < CarrierWave::Uploader::Base
4
4
 
5
5
  # Override the directory where uploaded files will be stored.
6
6
  # This is a sensible default for uploaders that are meant to be mounted:
7
7
  def store_dir
8
- "uploads/#{Rails.env}/#{model.class.to_s.underscore}/#{model.id}"
8
+ "#{Rails.root}/uploads/#{model.class.to_s.underscore}/#{model.id}"
9
9
  end
10
-
10
+
11
11
  def cache_dir
12
12
  Rails.root.join 'tmp/uploads'
13
13
  end
@@ -1,6 +1,6 @@
1
1
  <%= content_for :javascript_footer do %>
2
2
  <script type="text/javascript">
3
- this.parent.closeGenericModal();
3
+ this.parent.closeDocumentUploadModal();
4
4
 
5
5
  //var heading = "Crop Document";
6
6
  //var bodyContent = "<%#= escape_javascript(render(:partial=>"crop_form")) %>";
@@ -1,7 +1,7 @@
1
1
  // Show the new form in the right box.
2
2
  heading = "Upload Document";
3
3
  bodyContent = "<%= escape_javascript(render(:partial=>'form')) %>";
4
- showGenericModal(heading, bodyContent);
4
+ showGenericModal(heading, bodyContent, true);
5
5
 
6
6
  // When the document upload form is submitted, the server response will appear in this iframe -->
7
7
  var $div = $('<iframe id="iframe_document" name="iframe_document" width="100%" style="display:none"></iframe>').appendTo('body');
@@ -1,7 +1,7 @@
1
1
  // Show the new form in the right box.
2
2
  heading = "Upload Document";
3
3
  bodyContent = "<%= escape_javascript(render(:partial=>'form')) %>";
4
- showGenericModal(heading, bodyContent);
4
+ showGenericModal(heading, bodyContent, true);
5
5
 
6
6
  // When the document upload form is submitted, the server response will appear in this iframe -->
7
7
  var $div = $('<iframe id="iframe_document" name="iframe_document" width="100%" style="display:none"></iframe>').appendTo('body');
@@ -4,7 +4,7 @@
4
4
 
5
5
  // var heading = "Crop Document";
6
6
  // var bodyContent = "<%#= escape_javascript(render(:partial=>'crop_form')) %>";
7
- // this.parent.showGenericModal(heading, bodyContent);
7
+ // this.parent.showGenericModal(heading, bodyContent, true);
8
8
  // this.parent.cropDocument("form_crop_photo");
9
9
 
10
10
  this.parent.$(".<%= @resource.id %>-large-document").attr("src", "<%= @document.document.large.url %>");
@@ -11,7 +11,7 @@
11
11
 
12
12
  var bodyContent = "<%= escape_javascript(render(:partial=>'form')) %>";
13
13
 
14
- this.parent.showGenericModal(heading, bodyContent);
14
+ this.parent.showImageUploadModal(heading, bodyContent, true);
15
15
 
16
16
  <%
17
17
  text = "You have few errors. They have been highlighted."
@@ -22,7 +22,7 @@
22
22
 
23
23
  <% else %>
24
24
 
25
- this.parent.closeGenericModal();
25
+ this.parent.closeImageUploadModal();
26
26
 
27
27
  //var heading = "Crop Image";
28
28
  //var bodyContent = "<%#= escape_javascript(render(:partial=>"crop_form")) %>";
@@ -1,6 +1,6 @@
1
1
  <%= content_for :javascript_footer do %>
2
2
  <script type="text/javascript">
3
- this.parent.closeGenericModal();
3
+ this.parent.closeImageUploadModal();
4
4
 
5
5
  this.parent.$(".<%= @resource.id %>-large-image").attr("src", "<%= @image.image.large.url %>");
6
6
  this.parent.$(".<%= @resource.id %>-small-image").attr("src", "<%= @image.image.small.url %>");
@@ -1,8 +1,8 @@
1
1
  <% if @image_type %>
2
- heading = "Edit <%= @image_type.split('::').last.titleize %>";
2
+ var heading = "Edit <%= @image_type.split('::').last.titleize %>";
3
3
  <% else %>
4
- heading = "Edit Image";
4
+ var heading = "Edit Image";
5
5
  <% end %>
6
6
 
7
7
  bodyContent = "<%= escape_javascript(render(:partial=>'form')) %>";
8
- showGenericModal(heading, bodyContent);
8
+ showImageUploadModal(heading, bodyContent, true);
@@ -5,4 +5,4 @@
5
5
  <% end %>
6
6
 
7
7
  bodyContent = "<%= escape_javascript(render(:partial=>'form')) %>";
8
- showGenericModal(heading, bodyContent);
8
+ showImageUploadModal(heading, bodyContent);
@@ -11,7 +11,7 @@
11
11
 
12
12
  bodyContent = "<%= escape_javascript(render(:partial=>'form')) %>";
13
13
 
14
- this.parent.showGenericModal(heading, bodyContent);
14
+ this.parent.showImageUploadModal(heading, bodyContent);
15
15
 
16
16
  <%
17
17
  text = "You have few errors. They have been highlighted."
@@ -22,11 +22,11 @@
22
22
 
23
23
  <% else %>
24
24
 
25
- this.parent.closeGenericModal();
25
+ this.parent.closeImageUploadModal();
26
26
 
27
27
  // var heading = "Crop Image";
28
28
  // var bodyContent = "<%#= escape_javascript(render(:partial=>'crop_form')) %>";
29
- // this.parent.showGenericModal(heading, bodyContent);
29
+ // this.parent.showGenericModal(heading, bodyContent, true);
30
30
  // this.parent.cropImage("form_crop_photo");
31
31
 
32
32
  this.parent.$(".<%= @resource.id %>-large-image").attr("src", "<%= @image.image.large.url %>");
@@ -5,7 +5,7 @@
5
5
  heading = "Import Data";
6
6
  <% end %>
7
7
  bodyContent = "<%= escape_javascript(render(:partial=>'form')) %>";
8
- showGenericModal(heading, bodyContent);
8
+ showGenericModal(heading, bodyContent, true);
9
9
 
10
10
  // When the document upload form is submitted, the server response will appear in this iframe -->
11
11
  var $div = $('<iframe id="iframe_document" name="iframe_document" width="100%" style="display:none"></iframe>').appendTo('body');
@@ -4,7 +4,7 @@
4
4
 
5
5
  // var heading = "Crop Document";
6
6
  // var bodyContent = "<%#= escape_javascript(render(:partial=>'crop_form')) %>";
7
- // this.parent.showGenericModal(heading, bodyContent);
7
+ // this.parent.showGenericModal(heading, bodyContent, true);
8
8
  // this.parent.cropDocument("form_crop_photo");
9
9
 
10
10
  this.parent.$(".<%= @resource.id %>-large-document").attr("src", "<%= @document.document.large.url %>");
@@ -1,13 +1,18 @@
1
1
  <% if @r_object.errors.blank? %>
2
2
 
3
3
  // Inserting the row on top of the table and highlighting it
4
- $('#div_<%= @resource_options[:item_name] %>_index table > tbody').prepend("<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/row", locals: {@resource_options[:item_name].to_sym => @r_object, i: -1})) %>")
4
+ $('#div_<%= @resource_options[:item_name] %>_index table > tbody').prepend("<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/row", locals: {@resource_options[:item_name].to_sym => @r_object, i: -1})) %>");
5
5
  $("#tr_<%= @resource_options[:item_name] %>_<%= @r_object.id %>").css("background-color", "#fffddd");
6
6
 
7
- // Showing the saved data in the modal
8
- var heading = "<%= raw @r_object.try(:display_name) %>";
9
- var bodyContent = "<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/show")) %>";
10
- showGenericModal(heading, bodyContent, false);
7
+ <% if @resource_options[:show_modal_after_create] %>
8
+ // Showing the saved data in the modal
9
+ var heading = "<%= raw @r_object.try(:display_name) %>";
10
+ var bodyContent = "<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/show")) %>";
11
+ showGenericModal(heading, bodyContent, false);
12
+ <% else %>
13
+ // Closing the modal if it is opened
14
+ closeGenericModal();
15
+ <% end %>
11
16
 
12
17
  // Showing Growl Like Message
13
18
  notifySuccess("<%= escape_javascript(@notification[:title]) %>", "<%= escape_javascript(@notification[:message]) %>");
@@ -17,7 +22,7 @@
17
22
  // Reload the form with errors
18
23
  var heading = "Add an <%= @resource_options[:collection_name] %>";
19
24
  var bodyContent = "<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/form")) %>";
20
- showGenericModal(heading, bodyContent);
25
+ showGenericModal(heading, bodyContent, true);
21
26
 
22
27
  // Show Main Error Message on the form
23
28
  <% error_message = content_tag(:div, I18n.t('errors.errors_highlighted'), class: "alert alert-danger mt-20") %>
@@ -1,7 +1,7 @@
1
1
  // Load the form
2
2
  var heading = "Edit '<%= raw @r_object.try(:display_name) %>'";
3
3
  var bodyContent = "<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/form")) %>";
4
- showGenericModal(heading, bodyContent);
4
+ showGenericModal(heading, bodyContent, true);
5
5
 
6
6
  // Initialize WYSIHTML Editor
7
7
  $(".wysihtml5").wysihtml5(
@@ -1,7 +1,7 @@
1
1
  // Load the form
2
- var heading = "Add <%= @resource_options[:collection_name] %>";
2
+ var heading = "Add <%= @resource_options[:collection_name].to_s.titleize %>";
3
3
  var bodyContent = "<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/form")) %>";
4
- showGenericModal(heading, bodyContent);
4
+ showGenericModal(heading, bodyContent, true);
5
5
 
6
6
  // Initialize WYSIHTML Editor
7
7
  $(".wysihtml5").wysihtml5(
@@ -1,7 +1,7 @@
1
1
  <% if @r_object && @r_object.errors.blank? %>
2
2
 
3
3
  // Updating the edited row and highlighting it
4
- $("#tr_<%= @resource_options[:item_name] %>_<%= @r_object.id %>").replaceWith("<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/row", locals: { @resource_options[:item_name].to_sym => @r_object, i: -1})) %>")
4
+ $("#tr_<%= @resource_options[:item_name] %>_<%= @r_object.id %>").replaceWith("<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/row", locals: { @resource_options[:item_name].to_sym => @r_object, i: -1})) %>");
5
5
  $("#tr_<%= @resource_options[:item_name] %>_<%= @r_object.id %>").css("background-color", "#fffddd");
6
6
 
7
7
  // Refresh the modal content if it is open
@@ -4,10 +4,15 @@
4
4
  $('#tr_<%= @resource_options[:item_name] %>_<%= @r_object.id %>').replaceWith("<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/row", locals: { @resource_options[:item_name].to_sym => @r_object, i: -1})) %>");
5
5
  $("#tr_<%= @resource_options[:item_name] %>_<%= @r_object.id %>").css("background-color", "#fffddd");
6
6
 
7
- // Showing the saved data in the modal
8
- var heading = "<%= raw @r_object.try(:display_name) %>";
9
- var bodyContent = "<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/show")) %>";
10
- showGenericModal(heading, bodyContent, false);
7
+ <% if @resource_options[:show_modal_after_update] %>
8
+ // Showing the saved data in the modal
9
+ var heading = "<%= raw @r_object.try(:display_name) %>";
10
+ var bodyContent = "<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/show")) %>";
11
+ showGenericModal(heading, bodyContent, false);
12
+ <% else %>
13
+ // Closing the modal if it is opened
14
+ closeGenericModal();
15
+ <% end %>
11
16
 
12
17
  // Showing Growl Like Message
13
18
  notifySuccess("<%= @notification[:title] %>", "<%= @notification[:message] %>");
@@ -17,7 +22,7 @@
17
22
  // Reload the form with errors
18
23
  var heading = "Edit '<%= raw @r_object.try(:display_name) %>'";
19
24
  var bodyContent = "<%= escape_javascript(render(:partial=>"#{@resource_options[:view_path]}/form")) %>";
20
- showGenericModal(heading, bodyContent);
25
+ showGenericModal(heading, bodyContent, true);
21
26
 
22
27
  // Show Main Error Message on the form
23
28
  <% error_message = content_tag(:div, I18n.t('errors.errors_highlighted'), class: "alert alert-danger mt-20") %>