scinote-web/app/serializers/api/v1/activity_serializer.rb

33 lines
807 B
Ruby

# frozen_string_literal: true
module Api
module V1
class ActivitySerializer < ActiveModel::Serializer
include ActionView::Helpers::TextHelper
include ApplicationHelper
include GlobalActivitiesHelper
def self.serializer_for(model, options)
return TaskSerializer if model.class == MyModule
super
end
type :activities
attributes :id, :type_of, :message
belongs_to :project, serializer: ProjectSerializer
belongs_to :subject, polymorphic: true
belongs_to :owner, key: :user, serializer: UserSerializer
include TimestampableModel
def message
if object.old_activity?
object.message
else
generate_activity_content(object, no_links: true)
end
end
end
end
end