module Slightcms module Admin class PagesController < ApplicationController layout "slightcms_admin_pages" # Show the page tree def index @pages = Slightcms::Page.find :all end # Render the new page form def new @page = Slightcms::Page.new @page.parts.build end # Create a new page def create @page = Slightcms::Page.new(params[:slightcms_page]) if @page.save flash[:notice] = "The page was saved successfully." redirect_to slightcms_admin_pages_path else flash[:error] = "An error occured creating your page!" render :action => :new end end # Render the edit form def edit @page = Slightcms::Page.find(params[:id]) end # Update an existing page def update @page = Slightcms::Page.find(params[:id]) @page.update_attributes(params[:slightcms_page]) if @page.save flash[:notice] = "The page was saved successfully." redirect_to slightcms_admin_pages_path else flash[:error] = "An error occured updating your page!" render :action => :edit end end # Delete an existing page def destroy @page = Slightcms::Page.find(params[:id]) if @page.destroy flash[:notice] = "The page was removed successfully." redirect_to slightcms_pages_path else flash[:error] = "An error occured deleting the page!" redirect_to slightcms_admin_pages_path end end # Move the page up in page-tree def move_up @page = Slightcms::Page.find(params[:id]) @page.move_higher redirect_to slightcms_admin_pages_path end # Move the page down in page-tree def move_down @page = Slightcms::Page.find(params[:id]) @page.move_lower redirect_to slightcms_admin_pages_path end end end end