lib/rakismet/model.rb in rakismet-1.4.0 vs lib/rakismet/model.rb in rakismet-1.5.0

- old
+ new

@@ -36,11 +36,11 @@ module InstanceMethods def spam? if instance_variable_defined? :@_spam @_spam else - data = akismet_data + data = akismet_data(true) # Only spam? check should include http_headers self.akismet_response = Rakismet.akismet_call('comment-check', data) @_spam = self.akismet_response == 'true' end end @@ -54,11 +54,11 @@ @_spam = false end private - def akismet_data + def akismet_data(include_http_headers = false) akismet = self.class.akismet_attrs.keys.inject({}) do |data,attr| mapped_field = self.class.akismet_attrs[attr] data.merge attr => if mapped_field.is_a?(Proc) instance_eval(&mapped_field) elsif !mapped_field.nil? && respond_to?(mapped_field) @@ -74,9 +74,10 @@ send(attr) elsif Rakismet.request.respond_to?(attr) Rakismet.request.send(attr) end end + akismet.merge! Rakismet.request.http_headers if include_http_headers and Rakismet.request.http_headers akismet.delete_if { |k,v| v.nil? || v.empty? } akismet[:comment_type] ||= 'comment' akismet end end