Class: Tandem::PagesController

Inherits:
ApplicationController show all
Defined in:
app/controllers/tandem/pages_controller.rb

Instance Method Summary collapse

Methods inherited from ApplicationController

#current_user

Instance Method Details

#createObject

POST /pages POST /pages.json



54
55
56
57
58
59
60
61
62
63
64
# File 'app/controllers/tandem/pages_controller.rb', line 54

def create
  respond_to do |format|
    if @page.save
      format.html { redirect_to @page, notice: 'Page was successfully created.' }
      format.json { render json: @page, status: :created, location: @page }
    else
      format.html { render action: "new" }
      format.json { render json: @page.errors, status: :unprocessable_entity }
    end
  end
end

#destroyObject

DELETE /pages/1 DELETE /pages/1.json



82
83
84
85
86
87
88
89
# File 'app/controllers/tandem/pages_controller.rb', line 82

def destroy
  @page.destroy

  respond_to do |format|
    format.html { redirect_to pages_url }
    format.json { head :ok }
  end
end

#editObject

GET /pages/1/edit



46
47
48
49
50
# File 'app/controllers/tandem/pages_controller.rb', line 46

def edit
  respond_to do |format|
    format.html { render layout: false if request.xhr? }
  end
end

#homeObject

GET /pages/home GET /pages.home.json



8
9
10
11
12
13
14
15
# File 'app/controllers/tandem/pages_controller.rb', line 8

def home
  @page = Page.where(is_default: true).first || Page.first || create_default_page
  authorize!(:show, Page)
  respond_to do |format|
    format.html { render (@page.template.present? ? @page.template : 'show'), notice: @page.new_record? ? 'No Pages Found.' : '' }
    format.json { render json: @page }
  end
end

#indexObject

GET /pages GET /pages.json



19
20
21
22
23
24
# File 'app/controllers/tandem/pages_controller.rb', line 19

def index
  respond_to do |format|
    format.html # index.html.erb
    format.json { render json: @pages }
  end
end

#newObject

GET /pages/new GET /pages/new.json



37
38
39
40
41
42
43
# File 'app/controllers/tandem/pages_controller.rb', line 37

def new
  @page.parent ||= Page.where(id: params['parent_id']).first
  respond_to do |format|
    format.html { render layout: false if request.xhr? }
    format.json { render json: @page }
  end
end

#showObject

GET /pages/1 GET /pages/1.json



28
29
30
31
32
33
# File 'app/controllers/tandem/pages_controller.rb', line 28

def show
  respond_to do |format|
    format.html { render @page.template if @page.template.present? }
    format.json { render json: @page }
  end
end

#updateObject

PUT /pages/1 PUT /pages/1.json



68
69
70
71
72
73
74
75
76
77
78
# File 'app/controllers/tandem/pages_controller.rb', line 68

def update
  respond_to do |format|
    if @page.update_attributes(params[:page])
      format.html { redirect_to @page, notice: 'Page was successfully updated.' }
      format.json  { head :no_content }
    else
      format.html { render action: "edit" }
      format.json { render json: @page.errors, status: :unprocessable_entity }
    end
  end
end