page_contents_controller.rb
1.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
module Kanjai
class Admin::PageContentsController < AdminController
def show_content_form
@obj = PageContent.find(params[:id])
@page = @obj.page
content_type = params[:content_type]
partial, locals = PageContent.edit_template(content_type)
@obj.build_markers(content_type)
@type_content = content_type
render :partial => partial, locals: locals
end
def add_item
@obj = PageContent.find(params[:id])
@row_item = @obj.build_markers_rows(@obj.type_content)
@current_row = @obj.page_content_markers.where('row_item != ?', @row_item).count
render layout: false
end
def delete_item
@obj = PageContent.find(params[:id])
@row_item = params[:row_item]
@obj.delete_markers_row(@row_item)
render :json => {status: 'ok'}
end
def sorting
@obj = PageContent.find(params[:id])
h = {}
params[:data].each do |key, item|
h[item[:index].to_i] = item[:position].to_i
end
@obj.page_content_markers.each do |item|
if h[item.row_item]
item.update_column(:row_item, h[item.row_item])
end
end
render :json => {status: 'ok'}
end
end
end