Module: Newsfeed::Logging
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/newsfeed/logging.rb
Instance Method Summary collapse
- #activities(opts = {}) ⇒ Object
- #init_newsfeedlab(feed_name = nil, feed_id = nil) ⇒ Object
- #log_create_activity ⇒ Object
- #log_destroy_activity ⇒ Object
- #log_update_activity ⇒ Object
Instance Method Details
#activities(opts = {}) ⇒ Object
48 49 50 51 52 53 54 |
# File 'lib/newsfeed/logging.rb', line 48 def activities(opts={}) defaults = {:start => 0, :count => 49, :feed_name => nil, :feed_id => nil} opts = defaults.merge(opts) feed = init_newsfeedlab(opts[:feed_name], opts[:feed_id]) feed.fetch(opts[:start], opts[:count]) end |
#init_newsfeedlab(feed_name = nil, feed_id = nil) ⇒ Object
11 12 13 14 15 16 17 18 19 |
# File 'lib/newsfeed/logging.rb', line 11 def init_newsfeedlab(feed_name=nil, feed_id=nil) newsfeedlab_config = YAML.load(ERB.new(Rails.root.join('config', 'newsfeedlab.yml').read).result)[Rails.env] || {} client = Newsfeed::Client.new(newsfeedlab_config['api_url']) project = client.projects(newsfeedlab_config['project_name']) @log_config = self.newsfeed_log_settings rescue {} feed = project.feed(feed_name || @log_config[:feed_name], feed_id || @log_config[:feed_id]) return feed end |
#log_create_activity ⇒ Object
21 22 23 24 25 26 27 28 |
# File 'lib/newsfeed/logging.rb', line 21 def log_create_activity feed = init_newsfeedlab() return unless @log_config[:log].include?(:create) obj = {:event => "create", :type => self.class.to_s.downcase, :id => (self.id.to_s rescue nil)} obj[:obj] = ActiveSupport::JSON.decode(@log_config[:obj]) unless @log_config[:obj].nil? feed.push(obj) end |
#log_destroy_activity ⇒ Object
39 40 41 42 43 44 45 46 |
# File 'lib/newsfeed/logging.rb', line 39 def log_destroy_activity feed = init_newsfeedlab() return unless @log_config[:log].include?(:destroy) obj = {:event => "destroy", :type => self.class.to_s.downcase, :id => (self.id.to_s rescue nil)} obj[:obj] = ActiveSupport::JSON.decode(@log_config[:obj]) unless @log_config[:obj].nil? feed.push(obj) end |
#log_update_activity ⇒ Object
30 31 32 33 34 35 36 37 |
# File 'lib/newsfeed/logging.rb', line 30 def log_update_activity feed = init_newsfeedlab() return unless @log_config[:log].include?(:update) obj = {:event => "update", :type => self.class.to_s.downcase, :id => (self.id.to_s rescue nil)} obj[:obj] = ActiveSupport::JSON.decode(@log_config[:obj]) unless @log_config[:obj].nil? feed.push(obj) end |