| Module | Flvorful::SuperInplaceControls::InstanceMethods |
| In: |
vendor/plugins/super_inplace_controls/lib/super_inplace_controls.rb
|
# File vendor/plugins/super_inplace_controls/lib/super_inplace_controls.rb, line 70
70: def colorize(hex_code)
71: jquery_enabled? ? "#{hex_code}" : hex_code
72: end
# File vendor/plugins/super_inplace_controls/lib/super_inplace_controls.rb, line 137
137: def inplace_error_render
138: unless @error_messages.blank?
139: errors_html = render_errors_html
140: render :update do |page|
141: page.select("##{@id_string}_form ##{@field_id}").map do |e|
142: e.add_class_name "fieldWithError"
143: end
144: page.show "#{@id_string}_form"
145: page << "if (document.getElementById('#{@error_messages}') != null) {"
146: page.replace_html @error_messages, errors_html
147: page.visual_effect @error_visual_effect, @error_messages
148: page << "}"
149: end
150: else
151: raise @item.errors.inspect
152: end
153: end
# File vendor/plugins/super_inplace_controls/lib/super_inplace_controls.rb, line 74
74: def jquery_enabled?
75: ActionView::Helpers::PrototypeHelper.const_defined?("JQUERY_VAR")
76: end
# File vendor/plugins/super_inplace_controls/lib/super_inplace_controls.rb, line 110
110: def render_errors_html
111: ret = content_tag(:h2, "Errors")
112: ret << content_tag(:ul, nil) do
113: @item.errors.full_messages.map { |e| content_tag(:li, e) }
114: end
115: end
# File vendor/plugins/super_inplace_controls/lib/super_inplace_controls.rb, line 88
88: def set_final_text(object, attribute, options)
89: unless options[:final_text].nil?
90: if options[:final_text] == :collection
91: @final_text = @item.send(attribute.to_s.gsub("_ids", "").pluralize).map do |e|
92: e.title || e.name
93: end.join(", ")
94: else
95: methods = options[:final_text]
96: sum_of_methods = @item
97: methods.each do |meth|
98: sum_of_methods = sum_of_methods.send(meth)
99: end
100: @final_text = sum_of_methods
101: end
102: @final_text
103: else
104: @final_text = @item.send(attribute).to_s
105: end
106: @final_text = (" " * 9) if @final_text.blank?
107: @final_text
108: end
# File vendor/plugins/super_inplace_controls/lib/super_inplace_controls.rb, line 78
78: def setup_inplace_object(object, attribute, options)
79: @item = object.to_s.camelize.constantize.find(params[:id])
80: @id_string = "#{object}_#{attribute}_#{@item.id}"
81: @field_id = "#{object}_#{attribute}"
82: @error_messages = options[:error_messages] || "error_messages"
83: @highlight_endcolor = colorize(options[:highlight_endcolor] || "#ffffff")
84: @highlight_startcolor = colorize(options[:highlight_startcolor] || "#ffff99")
85: @error_visual_effect = options[:error_visual_effect] || :slide_down
86: end
# File vendor/plugins/super_inplace_controls/lib/super_inplace_controls.rb, line 117
117: def standard_inplace_render
118: render :update do |page|
119: page.replace_html "#{@id_string}", @final_text
120: page.hide "#{@id_string}_form"
121: page << "if (document.getElementById('#{@error_messages}') != null) {"
122: page.hide @error_messages
123: page << "}"
124: if jquery_enabled?
125: page.remove_class_name ".fieldWithError", "fieldWithError"
126: else
127: page.select("##{@id_string}_form ##{@field_id}").map do |e|
128: e.remove_class_name "fieldWithError"
129: end
130: end
131:
132: page.show "#{@id_string}"
133: page.visual_effect :highlight, "#{@id_string}", :duration => 0.5, :endcolor => "#{@highlight_endcolor}", :startcolor => "#{@highlight_startcolor}"
134: end
135: end