Class Admin::AlbumsController
In: app/controllers/admin/albums_controller.rb
Parent: Sadmin::BaseController

Controlador para la gestión de álbums en la WebTV

Methods

Public Instance methods

Auto complete para los tags

[Source]

    # File app/controllers/admin/albums_controller.rb, line 80
80:   def auto_complete_for_album_tag_list_es
81:     auto_complete_for_tag_list(params[:album][:tag_list_es])
82:     if @tags.length > 0
83:       render :inline => "<%= content_tag(:ul, @tags.map {|t| content_tag(:li, t.nombre)}) %>"
84:     else
85:       render :nothing => true
86:     end    
87:   end

Marca la foto elegida como portada para este álbum

[Source]

    # File app/controllers/admin/albums_controller.rb, line 65
65:   def choose_cover
66:     @album = Album.find(params[:id])
67:     aphoto = @album.album_photos.find_by_photo_id(params[:photo_id])
68:     previous_cover = @album.album_photos.find_by_cover_photo(true)
69:     render :update do |page|
70:       if aphoto.update_attributes(:cover_photo => true)
71:         page.replace "photo_cover_#{aphoto.id}", :partial => "aphoto_cover", :locals => {:aphoto => aphoto}
72:         if previous_cover && previous_cover.update_attributes(:cover_photo => false)
73:           page.replace "photo_cover_#{previous_cover.id}", :partial => "aphoto_cover", :locals => {:aphoto => previous_cover}
74:         end
75:       end
76:     end
77:   end

Creación de un álbum

[Source]

    # File app/controllers/admin/albums_controller.rb, line 27
27:   def create
28:     @album = Album.new(params[:album])
29:     if @album.save
30:       flash[:notice] = "El album se ha creado correctamente"
31:       redirect_to admin_album_path(@album)
32:     else
33:       render :action => "new"
34:     end
35:   end

Eliminación de un álbum

[Source]

    # File app/controllers/admin/albums_controller.rb, line 53
53:   def destroy
54:     @album = Album.find(params[:id])
55:     if @album.destroy
56:       flash[:notice] = "El album ha sido eliminado"
57:       redirect_to admin_albums_path
58:     else
59:       flash[:error] = "El album no ha sido eliminado"
60:       redirect_to admin_album_path(@album)
61:     end
62:   end

Modificación de un álbum

[Source]

    # File app/controllers/admin/albums_controller.rb, line 38
38:   def edit
39:     @album = Album.find(params[:id])
40:   end

Listado de álbums

[Source]

    # File app/controllers/admin/albums_controller.rb, line 7
 7:   def index
 8:     @albums = Album.paginate :page => params[:page], :order => "title_es"
 9:     
10:     @orphane_photos_counter = Photo.count(:conditions => "NOT EXISTS (SELECT 1 FROM album_photos WHERE album_photos.photo_id=photos.id)")
11:     @first_orphane_photo = Photo.find(:first, 
12:       :conditions => "NOT EXISTS (SELECT 1 FROM album_photos WHERE album_photos.photo_id=photos.id)", 
13:       :order => "created_at DESC")
14:   end

Formulario de creación de álbum

[Source]

    # File app/controllers/admin/albums_controller.rb, line 22
22:   def new
23:     @album = Album.new
24:   end

Vista de un álbum

[Source]

    # File app/controllers/admin/albums_controller.rb, line 17
17:   def show
18:     @album = Album.find(params[:id])
19:   end

Actualización de un álbum

[Source]

    # File app/controllers/admin/albums_controller.rb, line 43
43:   def update
44:     @album = Album.find(params[:id])
45:     if @album.update_attributes(params[:album])
46:       redirect_to admin_album_path(@album)
47:     else
48:       render :action => "new"
49:     end
50:   end

[Validate]