community_track_plugin.rb
937 Bytes
class CommunityTrackPlugin < Noosfero::Plugin
def self.plugin_name
'Community Track'
end
def self.plugin_description
_("New kind of content for communities.")
end
def stylesheet?
true
end
def content_types
if context.respond_to?(:params) && context.params
types = []
parent_id = context.params[:parent_id]
types << CommunityTrackPlugin::Track if context.profile.community? && !parent_id
parent = parent_id ? context.profile.articles.find(parent_id) : nil
types << CommunityTrackPlugin::Step if parent.kind_of?(CommunityTrackPlugin::Track)
types
else
[CommunityTrackPlugin::Track, CommunityTrackPlugin::Step]
end
end
def self.extra_blocks
{ CommunityTrackPlugin::TrackListBlock => {:position => 1}, CommunityTrackPlugin::TrackCardListBlock => {} }
end
def content_remove_new(page)
page.kind_of?(CommunityTrackPlugin::Track)
end
end