cms9 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +21 -0
- data/README.md +192 -0
- data/Rakefile +37 -0
- data/app/assets/config/cms9_manifest.js +2 -0
- data/app/assets/images/cms9/cms9_logo.png +0 -0
- data/app/assets/images/cms9/cms9_logo_readme.png +0 -0
- data/app/assets/images/cms9/favicon-128.png +0 -0
- data/app/assets/images/cms9/favicon-16.png +0 -0
- data/app/assets/images/cms9/favicon-32.png +0 -0
- data/app/assets/images/cms9/favicon-64.png +0 -0
- data/app/assets/images/cms9/iCheck/flat/blue.png +0 -0
- data/app/assets/images/cms9/iCheck/flat/blue@2x.png +0 -0
- data/app/assets/javascripts/cms9/admin_lte.js +763 -0
- data/app/assets/javascripts/cms9/application.js +18 -0
- data/app/assets/javascripts/cms9/cable.js +13 -0
- data/app/assets/javascripts/cms9/multiple_values_selection.js +70 -0
- data/app/assets/javascripts/cms9/post_fields.js +5 -0
- data/app/assets/javascripts/cms9/posts.js +37 -0
- data/app/assets/stylesheets/cms9/admin_lte.scss +4932 -0
- data/app/assets/stylesheets/cms9/admin_lte_skins.css +1770 -0
- data/app/assets/stylesheets/cms9/application.scss +7 -0
- data/app/assets/stylesheets/cms9/fields.scss +3 -0
- data/app/assets/stylesheets/cms9/post_definitions.scss +28 -0
- data/app/assets/stylesheets/cms9/posts.scss +3 -0
- data/app/assets/stylesheets/cms9/welcome.scss +20 -0
- data/app/controllers/cms9/application_controller.rb +34 -0
- data/app/controllers/cms9/fields_controller.rb +4 -0
- data/app/controllers/cms9/post_definitions_controller.rb +85 -0
- data/app/controllers/cms9/post_fields_controller.rb +108 -0
- data/app/controllers/cms9/posts_controller.rb +76 -0
- data/app/controllers/cms9/welcome_controller.rb +8 -0
- data/app/helpers/cms9/application_helper.rb +58 -0
- data/app/helpers/cms9/fields_helper.rb +4 -0
- data/app/helpers/cms9/post_definitions_helper.rb +4 -0
- data/app/helpers/cms9/post_fields_helper.rb +4 -0
- data/app/helpers/cms9/posts_helper.rb +4 -0
- data/app/helpers/cms9/welcome_helper.rb +4 -0
- data/app/jobs/cms9/application_job.rb +4 -0
- data/app/mailers/cms9/application_mailer.rb +6 -0
- data/app/models/ckeditor/asset.rb +9 -0
- data/app/models/ckeditor/attachment_file.rb +9 -0
- data/app/models/ckeditor/picture.rb +14 -0
- data/app/models/cms9/application_record.rb +5 -0
- data/app/models/cms9/event.rb +7 -0
- data/app/models/cms9/field.rb +20 -0
- data/app/models/cms9/post.rb +16 -0
- data/app/models/cms9/post_definition.rb +25 -0
- data/app/models/cms9/post_field.rb +23 -0
- data/app/views/cms9/fields/index.html.erb +0 -0
- data/app/views/cms9/post_definitions/edit.html.erb +81 -0
- data/app/views/cms9/post_definitions/index.html.erb +48 -0
- data/app/views/cms9/post_definitions/new.html.erb +41 -0
- data/app/views/cms9/post_fields/_field_form.html.erb +46 -0
- data/app/views/cms9/post_fields/_image_sizer.html.erb +2 -0
- data/app/views/cms9/post_fields/_select.html.erb +24 -0
- data/app/views/cms9/post_fields/_select_blank.html.erb +10 -0
- data/app/views/cms9/post_fields/edit.html.erb +14 -0
- data/app/views/cms9/post_fields/new.html.erb +14 -0
- data/app/views/cms9/posts/_post_form.html.erb +13 -0
- data/app/views/cms9/posts/edit.html.erb +14 -0
- data/app/views/cms9/posts/index.html.erb +42 -0
- data/app/views/cms9/posts/inputs/_date.html.erb +2 -0
- data/app/views/cms9/posts/inputs/_date_time.html.erb +2 -0
- data/app/views/cms9/posts/inputs/_image.html.erb +19 -0
- data/app/views/cms9/posts/inputs/_number.html.erb +2 -0
- data/app/views/cms9/posts/inputs/_select_multiple.html.erb +7 -0
- data/app/views/cms9/posts/inputs/_select_single.html.erb +2 -0
- data/app/views/cms9/posts/inputs/_text.html.erb +2 -0
- data/app/views/cms9/posts/inputs/_text_area.html.erb +2 -0
- data/app/views/cms9/posts/inputs/_time.html.erb +2 -0
- data/app/views/cms9/posts/new.html.erb +14 -0
- data/app/views/cms9/welcome/_post.html.erb +46 -0
- data/app/views/cms9/welcome/_post_definition.html.erb +36 -0
- data/app/views/cms9/welcome/index.html.erb +57 -0
- data/app/views/layouts/cms9/application.html.erb +100 -0
- data/config/initializers/assets.rb +4 -0
- data/config/initializers/ckeditor.rb +59 -0
- data/config/initializers/ckeditor_dragonfly.rb +19 -0
- data/config/initializers/ckeditor_init.rb +3 -0
- data/config/initializers/dragonfly.rb +26 -0
- data/config/routes.rb +11 -0
- data/db/migrate/cms9_create.rb +73 -0
- data/db/schema.rb +49 -0
- data/db/seeds.rb +7 -0
- data/lib/cms9.rb +24 -0
- data/lib/cms9/engine.rb +24 -0
- data/lib/cms9/version.rb +3 -0
- data/lib/events/cms9_events.rb +50 -0
- data/lib/generators/cms9/install/install_generator.rb +81 -0
- data/lib/generators/cms9/install/templates/ckeditor_config.js +14 -0
- data/lib/generators/cms9/install/templates/cms9_configurator.rb +4 -0
- data/lib/sdk/cms9.rb +138 -0
- data/lib/tasks/cms9_tasks.rake +4 -0
- metadata +423 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
.required-field-icons {
|
|
2
|
+
.fa-check {
|
|
3
|
+
color: green;
|
|
4
|
+
}
|
|
5
|
+
.fa-times {
|
|
6
|
+
color: red;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
#upload-image-field {
|
|
11
|
+
margin-top: 10px;
|
|
12
|
+
margin-bottom: 10px;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.post-image {
|
|
16
|
+
display: block;
|
|
17
|
+
border-radius: 3px;
|
|
18
|
+
max-width: 250px;
|
|
19
|
+
margin-top: 20px;
|
|
20
|
+
margin-bottom: 20px;
|
|
21
|
+
&.loaded {
|
|
22
|
+
border: 1px solid #ccc;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.remove-picture-block {
|
|
27
|
+
color: red;
|
|
28
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// Place all the styles related to the Welcome controller here.
|
|
2
|
+
// They will automatically be included in application.css.
|
|
3
|
+
// You can use Sass (SCSS) here: http://sass-lang.com/
|
|
4
|
+
|
|
5
|
+
.fr-toolbar {
|
|
6
|
+
border-top: 5px solid #EB5E28 !important;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.custom-alert {
|
|
10
|
+
position: fixed;
|
|
11
|
+
bottom: 0;
|
|
12
|
+
right: 10px;
|
|
13
|
+
z-index: 999;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.user-block-name {
|
|
17
|
+
color: #999;
|
|
18
|
+
padding: 10px;
|
|
19
|
+
font-size: 12px;
|
|
20
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
module Cms9
|
|
2
|
+
class ApplicationController < ActionController::Base
|
|
3
|
+
protect_from_forgery with: :exception
|
|
4
|
+
helper_method :current_user, :user_logout
|
|
5
|
+
|
|
6
|
+
before_action :authorize
|
|
7
|
+
|
|
8
|
+
def current_user
|
|
9
|
+
current_user_ident = Cms9.configuration.current_user || :current_user
|
|
10
|
+
parent = ::ApplicationController.new
|
|
11
|
+
parent.request = request
|
|
12
|
+
|
|
13
|
+
if parent.respond_to?(current_user_ident)
|
|
14
|
+
parent.send(current_user_ident)
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def user_logout
|
|
19
|
+
logout_ident = Cms9.configuration.destroy_user_session || :destroy_user_session
|
|
20
|
+
parent = ::ApplicationController.new
|
|
21
|
+
parent.request = request
|
|
22
|
+
|
|
23
|
+
if parent.respond_to?(logout_ident)
|
|
24
|
+
parent.send(logout_ident)
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def authorize
|
|
29
|
+
unless current_user.try(:cms9_admin?)
|
|
30
|
+
raise 'Implement cms9_admin? method in current_user context. See https://github.com/klikaba/cms9'
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
module Cms9
|
|
2
|
+
class PostDefinitionsController < Cms9::ApplicationController
|
|
3
|
+
def index
|
|
4
|
+
@posts = PostDefinition.order('created_at desc').page(params[:page]).per(20)
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
def new
|
|
8
|
+
@post = PostDefinition.new
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def edit
|
|
12
|
+
@post = PostDefinition.find(params[:id])
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def create
|
|
16
|
+
@post = PostDefinition.new(post_definition_params)
|
|
17
|
+
|
|
18
|
+
@post.user_id = current_user.id
|
|
19
|
+
|
|
20
|
+
if PostDefinition.where(name: @post[:name]).blank?
|
|
21
|
+
|
|
22
|
+
if @post.save
|
|
23
|
+
@field = PostField.new({
|
|
24
|
+
'name': 'Title',
|
|
25
|
+
'field_type': 'text',
|
|
26
|
+
'required': true,
|
|
27
|
+
'post_definition_id': @post.id,
|
|
28
|
+
'user_id': current_user.id
|
|
29
|
+
})
|
|
30
|
+
if @field.save
|
|
31
|
+
Cms9Events.new.create_event('post_definition', @post.id, params[:action], current_user, nil)
|
|
32
|
+
|
|
33
|
+
redirect_to edit_post_definition_path(@post.id)
|
|
34
|
+
end
|
|
35
|
+
else
|
|
36
|
+
render :new
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
else
|
|
40
|
+
@post.errors.add(:name, " Post Type already exist")
|
|
41
|
+
render :new
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def update
|
|
47
|
+
@post = PostDefinition.find(params[:id])
|
|
48
|
+
@post.user_id = current_user.id
|
|
49
|
+
|
|
50
|
+
field = PostDefinition.where(name: params[:post_definition][:name].downcase)
|
|
51
|
+
|
|
52
|
+
if field.blank? || @post.name == params[:post_definition][:name]
|
|
53
|
+
|
|
54
|
+
if @post.update(post_definition_params)
|
|
55
|
+
Cms9Events.new.create_event('post_definition', @post.id, params[:action], current_user, nil)
|
|
56
|
+
|
|
57
|
+
redirect_to edit_post_definition_path(@post.id)
|
|
58
|
+
else
|
|
59
|
+
render :edit
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
else
|
|
63
|
+
@post.errors.add(:name, " Post Type already exist")
|
|
64
|
+
render :edit
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def destroy
|
|
69
|
+
@post_def = PostDefinition.find(params[:id])
|
|
70
|
+
@post_def.destroy
|
|
71
|
+
|
|
72
|
+
Cms9Events.new.create_event('post_definition', @post_def.id, params[:action], current_user, @post_def.name)
|
|
73
|
+
|
|
74
|
+
@posts = Post.where(post_definition_id: params[:id])
|
|
75
|
+
@posts.destroy_all
|
|
76
|
+
|
|
77
|
+
redirect_to post_definitions_path
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
private
|
|
81
|
+
def post_definition_params
|
|
82
|
+
params.require(:post_definition).permit(:name)
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
end
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
module Cms9
|
|
2
|
+
class PostFieldsController < Cms9::ApplicationController
|
|
3
|
+
def new
|
|
4
|
+
@field = PostField.new
|
|
5
|
+
@field.post_definition_id = params[:post_definition_id]
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
def create
|
|
9
|
+
@field = PostField.new(post_field_params)
|
|
10
|
+
@field.user_id = current_user.id
|
|
11
|
+
|
|
12
|
+
if PostField.where(name: @field[:name], post_definition_id: @field[:post_definition_id]).blank?
|
|
13
|
+
if @field[:field_type] == 'select_single' || @field[:field_type] == 'select_multiple'
|
|
14
|
+
@field.metadata = ''
|
|
15
|
+
values = params[:multi_values]
|
|
16
|
+
|
|
17
|
+
values.each_with_index do |value, index|
|
|
18
|
+
if value != ''
|
|
19
|
+
if index == 0
|
|
20
|
+
@field.metadata = value
|
|
21
|
+
elsif
|
|
22
|
+
@field.metadata = @field.metadata + ',' + value
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
elsif @field[:field_type] != 'select_single' && @field[:field_type] != 'select_multiple' && @field[:field_type] != 'image'
|
|
27
|
+
@field.metadata = nil
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
if @field.save
|
|
31
|
+
Cms9Events.new.create_event('post_definition', @field[:post_definition_id], 'update', current_user, nil)
|
|
32
|
+
redirect_to edit_post_definition_path(id: @field.post_definition_id)
|
|
33
|
+
else
|
|
34
|
+
render :new
|
|
35
|
+
end
|
|
36
|
+
else
|
|
37
|
+
@field.errors.add(:name, "of field already exist")
|
|
38
|
+
render :new
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def edit
|
|
43
|
+
@field = PostField.find(params[:id])
|
|
44
|
+
@post_name = params[:post]
|
|
45
|
+
|
|
46
|
+
if PostField.all_types.index(params[:type]) != nil
|
|
47
|
+
@field.field_type = params[:type]
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
if params[:field_name] != nil
|
|
51
|
+
@field.name = params[:field_name]
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def update
|
|
56
|
+
@field = PostField.find(params[:id])
|
|
57
|
+
@field.user_id = current_user.id
|
|
58
|
+
|
|
59
|
+
field = PostField.where(name: post_field_params[:name], post_definition_id: @field[:post_definition_id])
|
|
60
|
+
|
|
61
|
+
if field.blank? || field.pluck(:id)[0].to_s == params[:id]
|
|
62
|
+
if @field[:field_type] == 'select_single' || @field[:field_type] == 'select_multiple'
|
|
63
|
+
@field.metadata = ''
|
|
64
|
+
values = params[:multi_values]
|
|
65
|
+
|
|
66
|
+
values.each_with_index do |value, index|
|
|
67
|
+
if value != ''
|
|
68
|
+
if index == 0
|
|
69
|
+
@field.metadata = value
|
|
70
|
+
elsif
|
|
71
|
+
@field.metadata = @field.metadata + ',' + value
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
params[:post_field][:metadata] = @field.metadata
|
|
77
|
+
|
|
78
|
+
elsif @field[:field_type] != 'select_single' && @field[:field_type] != 'select_multiple' && @field[:field_type] != 'image'
|
|
79
|
+
@field.metadata = nil
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
if @field.update(post_field_params)
|
|
83
|
+
Cms9Events.new.create_event('post_definition', @field[:post_definition_id], 'update', current_user, nil)
|
|
84
|
+
redirect_to edit_post_definition_path(id: @field.post_definition_id)
|
|
85
|
+
else
|
|
86
|
+
render :edit
|
|
87
|
+
end
|
|
88
|
+
else
|
|
89
|
+
@field.errors.add(:name, "of field already exist")
|
|
90
|
+
render :edit
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
def destroy
|
|
95
|
+
@field = PostField.find(params[:id])
|
|
96
|
+
@field.destroy
|
|
97
|
+
|
|
98
|
+
Cms9Events.new.create_event('post_definition', @field[:post_definition_id], 'update', current_user, nil)
|
|
99
|
+
|
|
100
|
+
redirect_to request.referrer
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
private
|
|
104
|
+
def post_field_params
|
|
105
|
+
params.require(:post_field).permit(:name, :field_type, :post_definition_id, :required, :metadata)
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
end
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
module Cms9
|
|
2
|
+
class PostsController < Cms9::ApplicationController
|
|
3
|
+
def index
|
|
4
|
+
@post_definition = Cms9::PostDefinition.find(params[:post_definition_id])
|
|
5
|
+
@posts = Post.where(post_definition: @post_definition)
|
|
6
|
+
.order('created_at desc')
|
|
7
|
+
.page(params[:page])
|
|
8
|
+
.per(20)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def new
|
|
12
|
+
@post = Post.new
|
|
13
|
+
@post.post_definition_id = params[:post_definition_id]
|
|
14
|
+
|
|
15
|
+
@post.post_definition.post_fields.each do |post_field|
|
|
16
|
+
@post.fields.build(post_field: post_field)
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def create
|
|
21
|
+
@post = Post.new(post_params)
|
|
22
|
+
|
|
23
|
+
@post.user_id = current_user.id
|
|
24
|
+
|
|
25
|
+
if @post.save
|
|
26
|
+
Cms9Events.new.create_event('post', @post.id, params[:action], current_user, nil)
|
|
27
|
+
redirect_to posts_path(post_definition_id: @post.post_definition.id)
|
|
28
|
+
else
|
|
29
|
+
render :new
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def edit
|
|
34
|
+
@post = Post.find(params[:id])
|
|
35
|
+
|
|
36
|
+
@post.post_definition.post_fields.each do |post_field|
|
|
37
|
+
if @post.fields.where(post_field_id: post_field[:id]).blank?
|
|
38
|
+
@post.fields.build(post_field: post_field)
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def update
|
|
44
|
+
@post = Post.find(params[:id])
|
|
45
|
+
|
|
46
|
+
@post.user_id = current_user.id
|
|
47
|
+
|
|
48
|
+
if @post.update(post_params)
|
|
49
|
+
Cms9Events.new.create_event('post', @post.id, params[:action], current_user, nil)
|
|
50
|
+
redirect_to posts_path(post_definition_id: @post.post_definition.id)
|
|
51
|
+
else
|
|
52
|
+
render :edit
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def destroy
|
|
57
|
+
@post = Post.find(params[:id])
|
|
58
|
+
post_definition_id = @post.post_definition.id
|
|
59
|
+
|
|
60
|
+
post_name = Field.where(post_field_id: @post.post_definition.post_fields[0].id, post_id: @post.id)[0]
|
|
61
|
+
Cms9Events.new.create_event('post', @post.id, params[:action], current_user, post_name)
|
|
62
|
+
|
|
63
|
+
@post.destroy
|
|
64
|
+
|
|
65
|
+
redirect_to posts_path(post_definition_id: post_definition_id)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
private
|
|
69
|
+
def post_params
|
|
70
|
+
params.require(:post).permit(:post_definition_id, fields_attributes:
|
|
71
|
+
[:id, :post_id, :post_field_id, :value, { :value => [] },
|
|
72
|
+
:image, :image_uid, :image_name, :remove_image, :image_custom_size])
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
end
|
|
76
|
+
end
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
module Cms9
|
|
2
|
+
module ApplicationHelper
|
|
3
|
+
|
|
4
|
+
def cms9_field(field, options={})
|
|
5
|
+
if field.present?
|
|
6
|
+
case field.post_field.field_type
|
|
7
|
+
when 'text', 'number', 'select_single', 'date', 'time', 'date_time'
|
|
8
|
+
return field.value.blank? ? '' : cms9_text_tag(field)
|
|
9
|
+
when 'text_area'
|
|
10
|
+
return field.value.blank? ? '' : cms9_text_area_tag(field)
|
|
11
|
+
when 'select_multiple'
|
|
12
|
+
return field.value.blank? ? '' : cms9_multiple_choice(field)
|
|
13
|
+
when 'image'
|
|
14
|
+
return field.blank? ? '' : cms9_image_tag(field, options)
|
|
15
|
+
else
|
|
16
|
+
return '<unsupported type>'
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def cms9_text_tag(model)
|
|
22
|
+
return model.to_s
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def cms9_text_area_tag(model)
|
|
26
|
+
return raw(model.to_s)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def cms9_multiple_choice(model)
|
|
30
|
+
@m = model.value.to_s.split("\' ")[0]
|
|
31
|
+
return "#{@m}"
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def cms9_image_tag(model, options={})
|
|
35
|
+
return image_tag(model.image.url, options)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def cms9_number_tag(model)
|
|
39
|
+
return model.to_s
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def cms9_select_single_tag(model)
|
|
43
|
+
return model.to_s
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def cms9_date_tag(model)
|
|
47
|
+
return model.to_s
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
def cms9_time_tag(model)
|
|
51
|
+
return model.to_s
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def cms9_date_time_tag(model)
|
|
55
|
+
return model.to_s
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|