Class Category
In: app/models/category.rb
Parent: ActiveRecord::Base

Clase para los items de los menús de navegación, tanto de OpenIrekia, como de la Agencia, como de los canales de la WebTV

Methods

Included Modules

Sluggable

Constants

LANGUAGES = ['es', 'eu', 'en']

External Aliases

name -> title

Public Instance methods

[Source]

    # File app/models/category.rb, line 51
51:   def albums(finder_opts={})
52:     unless @all_albums
53:       if gallery_channel?
54:         private_tags = self.tags.private.collect {|t| t.name_es}
55:         @all_albums = (private_tags.length > 0) ? Album.published.find_tagged_with(private_tags, finder_opts) : nil
56:       else
57:         @all_albums = []
58:       end
59:     end
60:     @all_albums
61:   end

[Source]

    # File app/models/category.rb, line 43
43:   def featured_video
44:     self.videos.recent.first
45:   end

[Source]

    # File app/models/category.rb, line 47
47:   def gallery_channel?
48:     self.tree.eql?(Tree.find_gallery_tree)
49:   end

Indica si esta categoría es un enlace en lugar de un contenedor de noticias o páginas

[Source]

    # File app/models/category.rb, line 23
23:   def is_a_link?
24:     self.name.match(/\"(.+)\":(.+$)/)
25:   end

Las categorias que acaban con "+", no son link en los menús. Ese + no debe salir en los breadcrumbs

[Source]

    # File app/models/category.rb, line 65
65:   def pretty_name
66:     self.name.sub(/\+$/, '')
67:   end

[Source]

    # File app/models/category.rb, line 33
33:   def videos(finder_opts={})
34:     if webtv_channel?      
35:       private_tags = self.tags.private.collect {|t| t.name_es}
36:       all_videos =  (private_tags.length > 0) ? Video.published.translated.tagged_with(private_tags) : nil
37:     else
38:       all_videos = nil
39:     end
40:     all_videos
41:   end

[Source]

    # File app/models/category.rb, line 29
29:   def webtv_channel?
30:     self.tree.eql?(Tree.find_web_tv_tree)
31:   end

[Validate]