diff --git a/app/views/flags/.#_flaglink.html.erb b/app/views/flags/.#_flaglink.html.erb
new file mode 120000
index 0000000..d96c12d
--- /dev/null
+++ b/app/views/flags/.#_flaglink.html.erb
@@ -0,0 +1 @@
+andreas@andreas-ThinkPad-S430.11733:1434727463
\ No newline at end of file
diff --git a/app/views/flags/_flaglink.html.erb b/app/views/flags/_flaglink.html.erb
new file mode 100644
index 0000000..aef4ae1
--- /dev/null
+++ b/app/views/flags/_flaglink.html.erb
@@ -0,0 +1 @@
+<%= flag_link(@obj,flag, content_tag("i", "", class:"fa fa-flag").to_s) %>
diff --git a/lib/flagable.rb b/lib/flagable.rb
index 102cfc0..a08c9ae 100644
--- a/lib/flagable.rb
+++ b/lib/flagable.rb
@@ -12,16 +12,17 @@ module Flagable
end
module LocalInstanceMethods
def flag
- @obj=controller_name.classify.constantize.find(params[:id])
+ @obj=controller_name.classify.constantize.find(params[:id])
lflag=("flag_"+params[:flag]).to_sym
unless params[:flag].nil? || params[:flag].empty? || params[:value].nil?
if @obj.respond_to?(lflag.to_s+"=")
- @obj.send(lflag.to_s+"=",params[:value])
+ @obj.send(lflag.to_s+"=",params[:value])
+ @obj.save
end
end
respond_to do |format|
- format.html {render :text=>@obj.to_yaml}
- format.js {render :text => "$(\"#{@obj.flaglinkid(params[:flag])}\").replaceWith("+ActionController::Base.helpers.escape_javascript(ActionController::Base.helpers.flag_link(@obj,params[:flag],ActionController::Base.helpers.content_tag("i", "", class:"fa fa-flag")))+ "); alert('#{lflag.to_s} #{ ActionController::Base.helpers.escape_javascript(@obj.to_yaml.to_s)}');"}
+ format.html {render partial: "flags/flaglink", locals: {flag: params[:flag]}}
+ format.js {render :text => "$(\"\##{@obj.flaglinkid(params[:flag])}\").replaceWith("+ActionController::Base.helpers.escape_javascript(render partial: "flags/flaglink", locals: {flag: params[:flag]})+ "); alert('#{lflag.to_s} #{ ActionController::Base.helpers.escape_javascript(@obj.to_yaml.to_s)}');"}
end
end
end
@@ -54,7 +55,7 @@ module Flagable
def flag_link(obj, flag, text)
value=obj.get_flag(flag)
color=(value) ? "red" :"grey"
-link_to text, Rails.application.routes.url_helpers.flag_beispiel_path(obj,{flag: flag, value: !value, theme: nil, locale: nil}), remote: true, style:("color:" +color ), id: obj.flaglinkid(flag)
+ link_to text, flag_beispiel_path(obj,{flag: flag, value: !value, theme: nil, locale: nil}), remote: true, style:("color:" +color ), id: obj.flaglinkid(flag)
end
end
end