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,14 @@
|
|
|
1
|
+
<div class="row">
|
|
2
|
+
<div class="col-md-12">
|
|
3
|
+
<div class="box box-info">
|
|
4
|
+
<div class="box-header">
|
|
5
|
+
<h3 class="box-title">
|
|
6
|
+
Update Field for <%= @field.post_definition.name %>
|
|
7
|
+
</h3>
|
|
8
|
+
</div>
|
|
9
|
+
<div class="box-body">
|
|
10
|
+
<%= render 'field_form', { edit: true } %>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
14
|
+
</div>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<div class="row">
|
|
2
|
+
<div class="col-md-12">
|
|
3
|
+
<div class="box box-info">
|
|
4
|
+
<div class="box-header">
|
|
5
|
+
<h3 class="box-title">
|
|
6
|
+
Add Field for <%= @field.post_definition.name %>
|
|
7
|
+
</h3>
|
|
8
|
+
</div>
|
|
9
|
+
<div class="box-body">
|
|
10
|
+
<%= render 'field_form', { edit: false } %>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
14
|
+
</div>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<%= form_for @post do |f| %>
|
|
2
|
+
|
|
3
|
+
<%= f.hidden_field :post_definition_id %>
|
|
4
|
+
|
|
5
|
+
<%= f.fields_for :fields do |field| %>
|
|
6
|
+
<%= field.hidden_field :post_id %>
|
|
7
|
+
<%= field.hidden_field :post_field_id %>
|
|
8
|
+
<%= render 'cms9/posts/inputs/' + field.object.post_field.field_type, field: field %>
|
|
9
|
+
<% end %>
|
|
10
|
+
|
|
11
|
+
<%= f.submit class: 'btn btn-primary', style: 'margin-top: 30px;' %>
|
|
12
|
+
|
|
13
|
+
<% end %>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<div class="row">
|
|
2
|
+
<div class="col-md-12">
|
|
3
|
+
<div class="box box-info">
|
|
4
|
+
<div class="box-header">
|
|
5
|
+
<h3 class="box-title">
|
|
6
|
+
Update for <%= Cms9::PostDefinition.find(@post.post_definition_id).name %>
|
|
7
|
+
</h3>
|
|
8
|
+
</div>
|
|
9
|
+
<div class="box-body">
|
|
10
|
+
<%= render 'post_form' %>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
14
|
+
</div>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
|
|
2
|
+
<div class="row">
|
|
3
|
+
<div class="col-md-12">
|
|
4
|
+
<div class="box box-info">
|
|
5
|
+
|
|
6
|
+
<div class="box-header">
|
|
7
|
+
<i class="fa fa-edit"></i>
|
|
8
|
+
<h3 class="box-title"><%= @post_definition.name.pluralize %></h3>
|
|
9
|
+
<div class="pull-right box-tools">
|
|
10
|
+
<%= link_to 'Create', new_post_path(post_definition_id: @post_definition.id), class: 'btn btn-primary btn-sm' %>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
<div class="box-body">
|
|
14
|
+
<table class="table table-hover">
|
|
15
|
+
<thead>
|
|
16
|
+
<th>Name</th>
|
|
17
|
+
<th style="width:160px;">Created</th>
|
|
18
|
+
<th style="width:120px;">Last Update</th>
|
|
19
|
+
<th style="width:120px;">Actions</th>
|
|
20
|
+
</thead>
|
|
21
|
+
<tbody>
|
|
22
|
+
<% @posts.each do |post| %>
|
|
23
|
+
<tr>
|
|
24
|
+
<td><%= post.field('Title').value %></td>
|
|
25
|
+
<td><%= distance_of_time_in_words_to_now(post.created_at) %></td>
|
|
26
|
+
<td>User #<%= post.user_id %></td>
|
|
27
|
+
<td style="text-align: right;">
|
|
28
|
+
<%= link_to "Edit", edit_post_path(post),
|
|
29
|
+
class: 'btn btn-primary btn-sm'%>
|
|
30
|
+
<%= link_to "Delete", post_path(post),
|
|
31
|
+
method: :delete,
|
|
32
|
+
data: { confirm: 'Are you sure?' },
|
|
33
|
+
class: 'btn btn-danger btn-sm'%>
|
|
34
|
+
</td>
|
|
35
|
+
</tr>
|
|
36
|
+
<% end %>
|
|
37
|
+
</tbody>
|
|
38
|
+
</table>
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<%= field.label field.object.post_field.name + " ( " + field.object.post_field.metadata + " )", { style: 'margin-top: 20px;'} %>
|
|
2
|
+
|
|
3
|
+
<% if field.object.image_stored? %>
|
|
4
|
+
<%= link_to "Remove", '#', {
|
|
5
|
+
style: 'display: inline-block;',
|
|
6
|
+
onclick: "deleteFile('edit');",
|
|
7
|
+
id: 'remove-image' } %>
|
|
8
|
+
<%= field.hidden_field :remove_image, { id: 'remove-value' } %>
|
|
9
|
+
<%= field.file_field :image, { id: 'upload-image-field' } %>
|
|
10
|
+
<%= image_tag field.object.image.thumb('250x').url, {
|
|
11
|
+
class: 'post-image loaded',
|
|
12
|
+
id: 'post-image' } %>
|
|
13
|
+
<% else %>
|
|
14
|
+
<a href="#" onclick="deleteFile('new')" id="remove-image" style="display: none;">Remove</a>
|
|
15
|
+
<%= field.file_field :image, {
|
|
16
|
+
id: 'upload-image-field',
|
|
17
|
+
required: field.object.post_field.required } %>
|
|
18
|
+
<img id="post-image" class="post-image"/>
|
|
19
|
+
<% end %>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<%= field.label field.object.post_field.name %>
|
|
2
|
+
<% if field.object.value %>
|
|
3
|
+
<% noEmptyValue = ActiveSupport::JSON.decode(field.object.value).reject { |c| c.empty? } %>
|
|
4
|
+
<%= field.select :value, options_for_select(field.object.post_field.metadata.split(','), noEmptyValue), {}, { multiple: true, class: 'form-control type-selector', required: field.object.post_field.required } %>
|
|
5
|
+
<% else %>
|
|
6
|
+
<%= field.select :value, options_for_select(field.object.post_field.metadata.split(',')), {}, { multiple: true, class: 'form-control type-selector', required: field.object.post_field.required } %>
|
|
7
|
+
<% end %>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<div class="row">
|
|
2
|
+
<div class="col-md-12">
|
|
3
|
+
<div class="box box-info">
|
|
4
|
+
<div class="box-header">
|
|
5
|
+
<h3 class="box-title">
|
|
6
|
+
Create for <%= @post.post_definition.name %>
|
|
7
|
+
</h3>
|
|
8
|
+
</div>
|
|
9
|
+
<div class="box-body">
|
|
10
|
+
<%= render 'post_form' %>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
14
|
+
</div>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
<li>
|
|
2
|
+
<% if event.action == 'create' %>
|
|
3
|
+
<i class="fa fa-file fa-inverse bg-green"></i>
|
|
4
|
+
<% elsif event.action == 'update' %>
|
|
5
|
+
<i class="fa fa-file fa-inverse bg-blue"></i>
|
|
6
|
+
<% else %>
|
|
7
|
+
<i class="fa fa-file fa-inverse bg-red"></i>
|
|
8
|
+
<% end %>
|
|
9
|
+
<div class="timeline-item">
|
|
10
|
+
<span class="time">
|
|
11
|
+
<i class="fa fa-clock-o"></i>
|
|
12
|
+
<%= distance_of_time_in_words_to_now(event.created_at) %>
|
|
13
|
+
</span>
|
|
14
|
+
<h3 class="timeline-header">
|
|
15
|
+
<span>
|
|
16
|
+
<% if event.action == 'destroy' %>
|
|
17
|
+
Deleted post
|
|
18
|
+
<% else %>
|
|
19
|
+
<%= event.action.capitalize %>d post
|
|
20
|
+
<% end %>
|
|
21
|
+
</span>
|
|
22
|
+
|
|
23
|
+
<% if event.deleted_field %>
|
|
24
|
+
<b><%= event.deleted_field %></b>
|
|
25
|
+
<% else %>
|
|
26
|
+
<%= link_to edit_post_path(id: event.post_id) do %>
|
|
27
|
+
<%= Cms9::Cms9Events.new.get_title_value_for_post(event.post_id) %>
|
|
28
|
+
<% end %>
|
|
29
|
+
|
|
30
|
+
<span>
|
|
31
|
+
in post type
|
|
32
|
+
</span>
|
|
33
|
+
|
|
34
|
+
<%= link_to edit_post_definition_path(id: Cms9::Post.find(event.post_id).post_definition.id) do %>
|
|
35
|
+
<%= Cms9::Post.find(event.post_id).post_definition.name %>
|
|
36
|
+
<% end %>
|
|
37
|
+
|
|
38
|
+
<% end %>
|
|
39
|
+
</h3>
|
|
40
|
+
<div class="timeline-body">
|
|
41
|
+
<span class="user-block-name">
|
|
42
|
+
<%= JSON.parse(event.user)[1] ? JSON.parse(event.user)[1] : "User #" + JSON.parse(event.user)[0].to_s %>
|
|
43
|
+
</span>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
</li>
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
<li>
|
|
2
|
+
<% if event.action == 'create' %>
|
|
3
|
+
<i class="fa fa-folder-open bg-green"></i>
|
|
4
|
+
<% elsif event.action == 'update' %>
|
|
5
|
+
<i class="fa fa-folder-open bg-blue"></i>
|
|
6
|
+
<% else %>
|
|
7
|
+
<i class="fa fa-folder-open bg-red"></i>
|
|
8
|
+
<% end %>
|
|
9
|
+
<div class="timeline-item">
|
|
10
|
+
<span class="time">
|
|
11
|
+
<i class="fa fa-clock-o"></i>
|
|
12
|
+
<%= distance_of_time_in_words_to_now(event.created_at) %>
|
|
13
|
+
</span>
|
|
14
|
+
<h3 class="timeline-header">
|
|
15
|
+
<span>
|
|
16
|
+
<% if event.action == 'destroy' %>
|
|
17
|
+
Deleted post type
|
|
18
|
+
<% else %>
|
|
19
|
+
<%= event.action.capitalize %>d post type
|
|
20
|
+
<% end %>
|
|
21
|
+
</span>
|
|
22
|
+
<% if event.deleted_field %>
|
|
23
|
+
<b><%= event.deleted_field %></b>
|
|
24
|
+
<% else %>
|
|
25
|
+
<%= link_to edit_post_definition_path(id: event.post_definition_id) do %>
|
|
26
|
+
<%= Cms9::PostDefinition.find(event.post_definition_id).name %>
|
|
27
|
+
<% end %>
|
|
28
|
+
<% end %>
|
|
29
|
+
</h3>
|
|
30
|
+
<div class="timeline-body">
|
|
31
|
+
<span class="user-block-name">
|
|
32
|
+
<%= JSON.parse(event.user)[1] ? JSON.parse(event.user)[1] : "User #" + JSON.parse(event.user)[0].to_s %>
|
|
33
|
+
</span>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
</li>
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
<div class="row">
|
|
2
|
+
<div class="col-md-12">
|
|
3
|
+
<div class="box box-info">
|
|
4
|
+
<div class="box-header">
|
|
5
|
+
<h3 class="box-title">
|
|
6
|
+
Welcome
|
|
7
|
+
</h3>
|
|
8
|
+
</div>
|
|
9
|
+
<div class="box-body">
|
|
10
|
+
<h3>Welcome to CMS9 dashboard.</h3>
|
|
11
|
+
<p>We've assembled some links to get you started:</p>
|
|
12
|
+
<ul>
|
|
13
|
+
<li><%= link_to 'Crate your first post type', post_definitions_path %></li>
|
|
14
|
+
</ul>
|
|
15
|
+
|
|
16
|
+
<ul class="timeline" style="margin-top: 50px;">
|
|
17
|
+
<li class="time-label">
|
|
18
|
+
<span class="bg-blue">
|
|
19
|
+
<% if params[:limit] == 'all' %>
|
|
20
|
+
All events
|
|
21
|
+
<% else %>
|
|
22
|
+
Last <%= params[:limit] ? params[:limit] : 10 %> events
|
|
23
|
+
<% end %>
|
|
24
|
+
</span>
|
|
25
|
+
<div class="btn-group" style="float: right;">
|
|
26
|
+
<%= link_to root_path(limit: '10'), class: 'btn btn-primary btn-xs' do %>
|
|
27
|
+
<span>10</span>
|
|
28
|
+
<% end %>
|
|
29
|
+
<%= link_to root_path(limit: '20'), class: 'btn btn-primary btn-xs' do %>
|
|
30
|
+
<span>20</span>
|
|
31
|
+
<% end %>
|
|
32
|
+
<%= link_to root_path(limit: '50'), class: 'btn btn-primary btn-xs' do %>
|
|
33
|
+
<span>50</span>
|
|
34
|
+
<% end %>
|
|
35
|
+
<%= link_to root_path(limit: 'all'), class: 'btn btn-danger btn-xs' do %>
|
|
36
|
+
<span>All</span>
|
|
37
|
+
<% end %>
|
|
38
|
+
</div>
|
|
39
|
+
</li>
|
|
40
|
+
|
|
41
|
+
<% @events.each do |event| %>
|
|
42
|
+
<% if event.post_definition_id %>
|
|
43
|
+
<%= render 'post_definition', event: event %>
|
|
44
|
+
<% elsif event.post_id %>
|
|
45
|
+
<%= render 'post', event: event %>
|
|
46
|
+
<% elsif event.post_field_id %>
|
|
47
|
+
<% end %>
|
|
48
|
+
<% end %>
|
|
49
|
+
|
|
50
|
+
<li>
|
|
51
|
+
<i class="fa fa-clock-o bg-gray"></i>
|
|
52
|
+
</li>
|
|
53
|
+
</ul>
|
|
54
|
+
</div>
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
</div>
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' name='viewport'>
|
|
6
|
+
|
|
7
|
+
<title>Cms9</title>
|
|
8
|
+
<%= stylesheet_link_tag "cms9/application", media: "all" %>
|
|
9
|
+
<%= javascript_include_tag "cms9/application" %>
|
|
10
|
+
<%= csrf_meta_tags %>
|
|
11
|
+
<%= favicon_link_tag 'cms9/favicon-16.png', type: 'image/png' %>
|
|
12
|
+
<%= favicon_link_tag 'cms9/favicon-32.png', type: 'image/png' %>
|
|
13
|
+
<%= favicon_link_tag 'cms9/favicon-64.png', type: 'image/png' %>
|
|
14
|
+
<%= favicon_link_tag 'cms9/favicon-64.png', type: 'image/png' %>
|
|
15
|
+
</head>
|
|
16
|
+
|
|
17
|
+
<body class="skin-blue">
|
|
18
|
+
<header class="main-header">
|
|
19
|
+
<a href="#" class="logo">
|
|
20
|
+
<span class="logo-mini"><b>CMS</b>9</span>
|
|
21
|
+
<span class="logo-lg"><b>CMS</b>9</span>
|
|
22
|
+
</a>
|
|
23
|
+
<nav class="navbar navbar-static-top" role="navigation">
|
|
24
|
+
<a href="#" class="navbar-btn sidebar-toggle" data-toggle="offcanvas" role="button">
|
|
25
|
+
<span class="sr-only">Toggle navigation</span>
|
|
26
|
+
<span class="icon-bar"></span>
|
|
27
|
+
<span class="icon-bar"></span>
|
|
28
|
+
<span class="icon-bar"></span>
|
|
29
|
+
</a>
|
|
30
|
+
<div class="navbar-custom-menu">
|
|
31
|
+
<ul class="nav navbar-nav">
|
|
32
|
+
<li class="dropdown notifications-menu">
|
|
33
|
+
<a href="#" class="dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
|
|
34
|
+
<i class="fa fa-gears"></i>
|
|
35
|
+
</a>
|
|
36
|
+
<ul class="dropdown-menu">
|
|
37
|
+
<li class="header">
|
|
38
|
+
<% if current_user.email %>
|
|
39
|
+
<%= current_user.email %>
|
|
40
|
+
<% else %>
|
|
41
|
+
User #<%= current_user.id %>
|
|
42
|
+
<% end %>
|
|
43
|
+
</li>
|
|
44
|
+
<li>
|
|
45
|
+
<ul class="menu">
|
|
46
|
+
<li>
|
|
47
|
+
<%= link_to user_logout, method: :delete do %>
|
|
48
|
+
<i class="fa fa-power-off text-red"></i>
|
|
49
|
+
Logout
|
|
50
|
+
<% end %>
|
|
51
|
+
</li>
|
|
52
|
+
</ul>
|
|
53
|
+
</li>
|
|
54
|
+
</ul>
|
|
55
|
+
</li>
|
|
56
|
+
</ul>
|
|
57
|
+
</div>
|
|
58
|
+
</nav>
|
|
59
|
+
</header>
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
<div class="wrapper row-offcanvas row-offcanvas-left">
|
|
63
|
+
<aside class="left-side sidebar-offcanvas">
|
|
64
|
+
<section class="sidebar">
|
|
65
|
+
<ul class="sidebar-menu">
|
|
66
|
+
<li class="header">MAIN NAVIGATION</li>
|
|
67
|
+
<li class="<%= 'active' if params[:controller] == 'cms9/welcome' %>">
|
|
68
|
+
<%= link_to root_path do %>
|
|
69
|
+
<span class="fa fa-home" aria-hidden="true"></span> Dashboard
|
|
70
|
+
<% end %>
|
|
71
|
+
</li>
|
|
72
|
+
<li class="<%= 'active' if params[:controller] == 'cms9/post_definitions' || params[:controller] == 'cms9/post_fields' %>">
|
|
73
|
+
<%= link_to post_definitions_path do %>
|
|
74
|
+
<span class="fa fa-folder-open" aria-hidden="true"></span> Post Types
|
|
75
|
+
<% end %>
|
|
76
|
+
</li>
|
|
77
|
+
<li class="header">POST TYPES</li>
|
|
78
|
+
<% Cms9::PostDefinition.all.each do |post_def| %>
|
|
79
|
+
<% if params[:id] %>
|
|
80
|
+
<li class="<%= 'active' if params[:controller] == 'cms9/posts' && Cms9::Post.find(params[:id]).post_definition_id == post_def.id %>">
|
|
81
|
+
<% else %>
|
|
82
|
+
<li class="<%= 'active' if params[:controller] == 'cms9/posts' && params[:post_definition_id] == post_def.id.to_s %>">
|
|
83
|
+
<% end %>
|
|
84
|
+
<%= link_to posts_path(post_definition_id: post_def.id) do %>
|
|
85
|
+
<i class="fa fa-edit" aria-hidden="true"></i> <%= post_def.name.pluralize %>
|
|
86
|
+
<% end %>
|
|
87
|
+
</li>
|
|
88
|
+
<% end %>
|
|
89
|
+
</ul>
|
|
90
|
+
</section>
|
|
91
|
+
</aside>
|
|
92
|
+
|
|
93
|
+
<aside class="right-side">
|
|
94
|
+
<section class="content">
|
|
95
|
+
<%= yield %>
|
|
96
|
+
</section>
|
|
97
|
+
</aside>
|
|
98
|
+
</div>
|
|
99
|
+
</body>
|
|
100
|
+
</html>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
Rails.application.config.assets.precompile += %w( cms9/favicon-16.png )
|
|
2
|
+
Rails.application.config.assets.precompile += %w( cms9/favicon-32.png )
|
|
3
|
+
Rails.application.config.assets.precompile += %w( cms9/favicon-64.png )
|
|
4
|
+
Rails.application.config.assets.precompile += %w( cms9/favicon-128.png )
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
module Cms9
|
|
2
|
+
Ckeditor.setup do |config|
|
|
3
|
+
# ==> ORM configuration
|
|
4
|
+
# Load and configure the ORM. Supports :active_record (default), :mongo_mapper and
|
|
5
|
+
# :mongoid (bson_ext recommended) by default. Other ORMs may be
|
|
6
|
+
# available as additional gems.
|
|
7
|
+
require "ckeditor/orm/active_record"
|
|
8
|
+
|
|
9
|
+
# Allowed image file types for upload.
|
|
10
|
+
# Set to nil or [] (empty array) for all file types
|
|
11
|
+
# By default: %w(jpg jpeg png gif tiff)
|
|
12
|
+
# config.image_file_types = %w(jpg jpeg png gif tiff)
|
|
13
|
+
|
|
14
|
+
# Allowed flash file types for upload.
|
|
15
|
+
# Set to nil or [] (empty array) for all file types
|
|
16
|
+
# By default: %w(jpg jpeg png gif tiff)
|
|
17
|
+
# config.flash_file_types = %w(swf)
|
|
18
|
+
|
|
19
|
+
# Allowed attachment file types for upload.
|
|
20
|
+
# Set to nil or [] (empty array) for all file types
|
|
21
|
+
# By default: %w(doc docx xls odt ods pdf rar zip tar tar.gz swf)
|
|
22
|
+
# config.attachment_file_types = %w(doc docx xls odt ods pdf rar zip tar tar.gz swf)
|
|
23
|
+
|
|
24
|
+
# Setup authorization to be run as a before filter
|
|
25
|
+
# By default: there is no authorization.
|
|
26
|
+
# config.authorize_with :cancan
|
|
27
|
+
|
|
28
|
+
# Override parent controller CKEditor inherits from
|
|
29
|
+
# By default: 'ApplicationController'
|
|
30
|
+
# config.parent_controller = 'MyController'
|
|
31
|
+
|
|
32
|
+
# Asset model classes
|
|
33
|
+
# config.picture_model { Ckeditor::Picture }
|
|
34
|
+
# config.attachment_file_model { Ckeditor::AttachmentFile }
|
|
35
|
+
|
|
36
|
+
# Paginate assets
|
|
37
|
+
# By default: 24
|
|
38
|
+
# config.default_per_page = 24
|
|
39
|
+
|
|
40
|
+
# Customize ckeditor assets path
|
|
41
|
+
# By default: nil
|
|
42
|
+
# config.asset_path = "http://www.example.com/assets/ckeditor/"
|
|
43
|
+
|
|
44
|
+
# To reduce the asset precompilation time, you can limit plugins and/or languages to those you need:
|
|
45
|
+
# By default: nil (no limit)
|
|
46
|
+
# config.assets_languages = ['en', 'uk']
|
|
47
|
+
# config.assets_plugins = ['image', 'smiley']
|
|
48
|
+
|
|
49
|
+
# CKEditor CDN
|
|
50
|
+
# More info here http://cdn.ckeditor.com/
|
|
51
|
+
# By default: nil (CDN disabled)
|
|
52
|
+
# config.cdn_url = "//cdn.ckeditor.com/4.5.6/standard/ckeditor.js"
|
|
53
|
+
|
|
54
|
+
# JS config url
|
|
55
|
+
# Used when CKEditor CDN enabled
|
|
56
|
+
# By default: "/assets/ckeditor/config.js"
|
|
57
|
+
# config.js_config_url = "/assets/ckeditor/config.js"
|
|
58
|
+
end
|
|
59
|
+
end
|