Class: Muck::EntriesController
- Inherits:
-
ApplicationController
- Object
- ApplicationController
- Muck::EntriesController
- Defined in:
- app/controllers/muck/entries_controller.rb
Instance Method Summary collapse
- #browse_by_tags ⇒ Object
- #collections ⇒ Object
- #index ⇒ Object
-
#initialize ⇒ EntriesController
constructor
A new instance of EntriesController.
- #search ⇒ Object
- #show ⇒ Object
- #track_clicks ⇒ Object
Constructor Details
#initialize ⇒ EntriesController
Returns a new instance of EntriesController.
5 6 7 |
# File 'app/controllers/muck/entries_controller.rb', line 5 def initialize @no_index = true end |
Instance Method Details
#browse_by_tags ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'app/controllers/muck/entries_controller.rb', line 17 def @tag_filter = params[:tags] @grain_size = params[:grain_size] || 'all' if !fragment_exist?({:controller => 'entries', :action => 'index', :language => Language.locale_id, :filter => @tag_filter, :grain_size => @grain_size}) @search = @tag_filter.split('/').join(' AND ') if !@tag_filter.empty? @tag_cloud = TagCloud.(Language.locale_id, @grain_size, @tag_filter) _search(:and) end respond_to do |format| format.html { render :template => 'entries/browse_by_tags' } end end |
#collections ⇒ Object
69 70 71 72 73 |
# File 'app/controllers/muck/entries_controller.rb', line 69 def collections @feeds = Feed.find(:all, :order => "harvested_from_title, title") @languages = Language.find(:all, :order => "name") render :template => "documents/collections", :layout => "default" end |
#index ⇒ Object
9 10 11 12 13 14 15 |
# File 'app/controllers/muck/entries_controller.rb', line 9 def index @grain_size = params[:grain_size] || 'all' @tag_cloud = TagCloud.(Language.locale_id, @grain_size) unless fragment_exist?({:controller => 'entries', :action => 'index', :language => Language.locale_id}) respond_to do |format| format.html { render :template => 'entries/index' } end end |
#search ⇒ Object
30 31 32 33 34 35 36 37 |
# File 'app/controllers/muck/entries_controller.rb', line 30 def search @search = params[:q] @grain_size = params[:grain_size] || 'all' _search respond_to do |format| format.html { render :template => 'entries/search' } end end |
#show ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'app/controllers/muck/entries_controller.rb', line 39 def show @entry = Entry.find(params[:id], :include => :feed) if @entry.nil? render_text "Unable to find the specified document" return end @entry_title = @entry.title + ' (' + @entry.feed.short_title + ')' @page_title = @entry_title + ' - ' + I18n.t('muck.raker.related_resources_title') # I18n.locale = @entry.language[0..1] @limit = params[:limit] ? params[:limit].to_i : 20 @limit = 40 if @limit > 40 respond_to do |format| format.html do @recommendations = @entry.recommendations(@limit, 'relevance', params[:details] == 'true') if params[:details] == 'true' render :template => "entries/details" else render :template => "entries/show" end end format.xml { render :xml => @entry } end end |
#track_clicks ⇒ Object
64 65 66 67 |
# File 'app/controllers/muck/entries_controller.rb', line 64 def track_clicks user_agent = request.env['HTTP_USER_AGENT'] redirect_to Entry.track_click(session, params[:id], request.env['HTTP_REFERER'], params[:target], request.env['HTTP_X_FORWARDED_FOR'], user_agent) if !/Googlebot/.match(user_agent) end |