| Class | Sadmin::ScheduleEventsController |
| In: |
app/controllers/sadmin/schedule_events_controller.rb
|
| Parent: | Sadmin::EventsController |
Controlador para el acceso a las agendas privadas desde la parte de administración de la web.
Sólo los usuarios que tienen permiso para ver alguna agenda privada pueden acceder a este controlador.
Cambiar la agenda de un evento.
# File app/controllers/sadmin/schedule_events_controller.rb, line 44
44: def change_schedule
45: if params[:new_schedule_id].eql?('agenda')
46: change_schedule_to_agenda
47: else
48: if s = Schedule.exists?(params[:new_schedule_id])
49: @schedule = Schedule.find(params[:new_schedule_id])
50: @event.update_attributes(:schedule_id => @schedule.id)
51: redirect_to sadmin_schedule_event_path(:id => @event.id, :schedule_id => @schedule.id)
52: else
53: flash[:warning] = t('sadmin.events.no_ha_indicado_la_agenda')
54: redirect_to sadmin_event_path(@event)
55: end
56: end
57: end
Eliminar evento.
Los eventos privados no están incluidos en las alertas por email así que se pueden borrar directamente.
# File app/controllers/sadmin/schedule_events_controller.rb, line 29
29: def destroy
30: get_event
31: month = @event.starts_at.month
32: year = @event.starts_at.year
33:
34: if @event.destroy
35: flash[:notice] = t('sadmin.eliminado_correctamente', :article => Event.human_name.gender_article, :what => Event.human_name)
36: redirect_to calendar_sadmin_events_url(:year => year, :month => month)
37: else
38: flash[:error] = t('sadmin.no_eliminado_correctamente', :article => Event.human_name.gender_article, :what => Event.human_name)
39: redirect_to :action => 'show'
40: end
41: end
Formulario para crear nuevo evento privado.
# File app/controllers/sadmin/schedule_events_controller.rb, line 13
13: def new
14: @title = t('sadmin.modificar_what', :what => Event.human_name)
15:
16: begin
17: default_date = Date.parse("#{@year}-#{@month}-#{@day}")
18: rescue ArgumentError
19: default_date = Time.now
20: end
21:
22: @event = @schedule.events.new(:starts_at => default_date, :ends_at => default_date, :confirmed => true)
23:
24: end