Sha256: ae40ace37f223f48b5472a87c0c1cf3b656f57342e10e38a1ee327ddf89cb42e

Contents?: true

Size: 1.08 KB

Versions: 11

Compression:

Stored size: 1.08 KB

Contents

module SocialNetworking
  module Reports
    # Scenario: a Participant likes a feed item.
    class Like
      def self.columns
        %w( participant_id occurred_at item_type item_participant_id
            item_content )
      end

      def self.all
        Participant.select(:id, :study_id).map do |participant|
          ::SocialNetworking::Like
            .where(participant_id: participant.id).map do |like|
              item = (like.item.try(:item) || like.item)
              next if item.nil?
              item_participant = Participant
                                 .find_by_id(item.try(:participant_id))

              {
                participant_id: participant.study_id,
                occurred_at: like.created_at.iso8601,
                item_type: item.class.to_s,
                item_participant_id: item_participant.try(:study_id),
                item_content: like.item_description
              }
            end
        end.flatten.compact
      end

      def self.to_csv
        ThinkFeelDoEngine::Reports::Reporter.new(self).write_csv
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
social_networking-0.11.8 app/models/social_networking/reports/like.rb
social_networking-0.11.7 app/models/social_networking/reports/like.rb
social_networking-0.11.6 app/models/social_networking/reports/like.rb
social_networking-0.11.5 app/models/social_networking/reports/like.rb
social_networking-0.11.4 app/models/social_networking/reports/like.rb
social_networking-0.11.3 app/models/social_networking/reports/like.rb
social_networking-0.11.2 app/models/social_networking/reports/like.rb
social_networking-0.11.1 app/models/social_networking/reports/like.rb
social_networking-0.11.0 app/models/social_networking/reports/like.rb
social_networking-0.10.0 app/models/social_networking/reports/like.rb
social_networking-0.9.3 app/models/social_networking/reports/like.rb