Class: Cms::DynamicViewsController

Inherits:
BaseController show all
Defined in:
app/controllers/cms/dynamic_views_controller.rb

Instance Method Summary collapse

Methods included from PageHelper

#cms_toolbar, #container, #container_has_block?, #current_page, #generator_tag, #page_title, #render_breadcrumbs, #render_portlet

Methods included from PathHelper

#cms_connectable_path, #cms_index_path_for, #cms_index_url_for, #cms_new_path_for, #cms_new_url_for, #cms_revert_to_path_for, #cms_versions_path_for, #edit_cms_connectable_path

Methods included from ErrorHandling

#handle_access_denied, #handle_server_error, included

Instance Method Details

#createObject



19
20
21
22
23
24
25
26
27
# File 'app/controllers/cms/dynamic_views_controller.rb', line 19

def create
  @view = dynamic_view_type.new(params[dynamic_view_type.name.underscore])
  if @view.save
    flash[:notice] = "#{dynamic_view_type} '#{@view.name}' was created"
    redirect_to cms_index_path_for(dynamic_view_type.name.underscore.pluralize)
  else
    render :action => "new"
  end
end

#destroyObject



42
43
44
45
46
# File 'app/controllers/cms/dynamic_views_controller.rb', line 42

def destroy
  @view.destroy
  flash[:notice] = "#{dynamic_view_type} '#{@view.name}' was deleted"
  redirect_to cms_index_path_for(dynamic_view_type.name.underscore.pluralize)    
end

#indexObject



11
12
13
# File 'app/controllers/cms/dynamic_views_controller.rb', line 11

def index
  @views = dynamic_view_type.paginate(:page => params[:page], :order => "name")
end

#newObject



15
16
17
# File 'app/controllers/cms/dynamic_views_controller.rb', line 15

def new
  @view = dynamic_view_type.new_with_defaults
end

#revert_toObject



57
58
59
60
61
62
# File 'app/controllers/cms/dynamic_views_controller.rb', line 57

def revert_to
  do_command("reverted to version #{params[:version]}") do
    revert_view(params[:version])
  end
  redirect_to_first params[:_redirect_to], dynamic_view_path
end

#showObject



29
30
31
# File 'app/controllers/cms/dynamic_views_controller.rb', line 29

def show
  render "#{template_directory}/show"
end

#updateObject



33
34
35
36
37
38
39
40
# File 'app/controllers/cms/dynamic_views_controller.rb', line 33

def update
  if @view.update_attributes(params[dynamic_view_type.name.underscore])
    flash[:notice] = "#{dynamic_view_type} '#{@view.name}' was updated"
    redirect_to cms_index_path_for(dynamic_view_type.name.underscore.pluralize)
  else
    render :action => "edit"
  end
end

#versionObject



52
53
54
55
# File 'app/controllers/cms/dynamic_views_controller.rb', line 52

def version
  @view = @view.as_of_version(params[:version])
  render "#{template_directory}/show"
end

#versionsObject



48
49
50
# File 'app/controllers/cms/dynamic_views_controller.rb', line 48

def versions
  render "#{template_directory}/versions"    
end