cms9 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (95) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +192 -0
  4. data/Rakefile +37 -0
  5. data/app/assets/config/cms9_manifest.js +2 -0
  6. data/app/assets/images/cms9/cms9_logo.png +0 -0
  7. data/app/assets/images/cms9/cms9_logo_readme.png +0 -0
  8. data/app/assets/images/cms9/favicon-128.png +0 -0
  9. data/app/assets/images/cms9/favicon-16.png +0 -0
  10. data/app/assets/images/cms9/favicon-32.png +0 -0
  11. data/app/assets/images/cms9/favicon-64.png +0 -0
  12. data/app/assets/images/cms9/iCheck/flat/blue.png +0 -0
  13. data/app/assets/images/cms9/iCheck/flat/blue@2x.png +0 -0
  14. data/app/assets/javascripts/cms9/admin_lte.js +763 -0
  15. data/app/assets/javascripts/cms9/application.js +18 -0
  16. data/app/assets/javascripts/cms9/cable.js +13 -0
  17. data/app/assets/javascripts/cms9/multiple_values_selection.js +70 -0
  18. data/app/assets/javascripts/cms9/post_fields.js +5 -0
  19. data/app/assets/javascripts/cms9/posts.js +37 -0
  20. data/app/assets/stylesheets/cms9/admin_lte.scss +4932 -0
  21. data/app/assets/stylesheets/cms9/admin_lte_skins.css +1770 -0
  22. data/app/assets/stylesheets/cms9/application.scss +7 -0
  23. data/app/assets/stylesheets/cms9/fields.scss +3 -0
  24. data/app/assets/stylesheets/cms9/post_definitions.scss +28 -0
  25. data/app/assets/stylesheets/cms9/posts.scss +3 -0
  26. data/app/assets/stylesheets/cms9/welcome.scss +20 -0
  27. data/app/controllers/cms9/application_controller.rb +34 -0
  28. data/app/controllers/cms9/fields_controller.rb +4 -0
  29. data/app/controllers/cms9/post_definitions_controller.rb +85 -0
  30. data/app/controllers/cms9/post_fields_controller.rb +108 -0
  31. data/app/controllers/cms9/posts_controller.rb +76 -0
  32. data/app/controllers/cms9/welcome_controller.rb +8 -0
  33. data/app/helpers/cms9/application_helper.rb +58 -0
  34. data/app/helpers/cms9/fields_helper.rb +4 -0
  35. data/app/helpers/cms9/post_definitions_helper.rb +4 -0
  36. data/app/helpers/cms9/post_fields_helper.rb +4 -0
  37. data/app/helpers/cms9/posts_helper.rb +4 -0
  38. data/app/helpers/cms9/welcome_helper.rb +4 -0
  39. data/app/jobs/cms9/application_job.rb +4 -0
  40. data/app/mailers/cms9/application_mailer.rb +6 -0
  41. data/app/models/ckeditor/asset.rb +9 -0
  42. data/app/models/ckeditor/attachment_file.rb +9 -0
  43. data/app/models/ckeditor/picture.rb +14 -0
  44. data/app/models/cms9/application_record.rb +5 -0
  45. data/app/models/cms9/event.rb +7 -0
  46. data/app/models/cms9/field.rb +20 -0
  47. data/app/models/cms9/post.rb +16 -0
  48. data/app/models/cms9/post_definition.rb +25 -0
  49. data/app/models/cms9/post_field.rb +23 -0
  50. data/app/views/cms9/fields/index.html.erb +0 -0
  51. data/app/views/cms9/post_definitions/edit.html.erb +81 -0
  52. data/app/views/cms9/post_definitions/index.html.erb +48 -0
  53. data/app/views/cms9/post_definitions/new.html.erb +41 -0
  54. data/app/views/cms9/post_fields/_field_form.html.erb +46 -0
  55. data/app/views/cms9/post_fields/_image_sizer.html.erb +2 -0
  56. data/app/views/cms9/post_fields/_select.html.erb +24 -0
  57. data/app/views/cms9/post_fields/_select_blank.html.erb +10 -0
  58. data/app/views/cms9/post_fields/edit.html.erb +14 -0
  59. data/app/views/cms9/post_fields/new.html.erb +14 -0
  60. data/app/views/cms9/posts/_post_form.html.erb +13 -0
  61. data/app/views/cms9/posts/edit.html.erb +14 -0
  62. data/app/views/cms9/posts/index.html.erb +42 -0
  63. data/app/views/cms9/posts/inputs/_date.html.erb +2 -0
  64. data/app/views/cms9/posts/inputs/_date_time.html.erb +2 -0
  65. data/app/views/cms9/posts/inputs/_image.html.erb +19 -0
  66. data/app/views/cms9/posts/inputs/_number.html.erb +2 -0
  67. data/app/views/cms9/posts/inputs/_select_multiple.html.erb +7 -0
  68. data/app/views/cms9/posts/inputs/_select_single.html.erb +2 -0
  69. data/app/views/cms9/posts/inputs/_text.html.erb +2 -0
  70. data/app/views/cms9/posts/inputs/_text_area.html.erb +2 -0
  71. data/app/views/cms9/posts/inputs/_time.html.erb +2 -0
  72. data/app/views/cms9/posts/new.html.erb +14 -0
  73. data/app/views/cms9/welcome/_post.html.erb +46 -0
  74. data/app/views/cms9/welcome/_post_definition.html.erb +36 -0
  75. data/app/views/cms9/welcome/index.html.erb +57 -0
  76. data/app/views/layouts/cms9/application.html.erb +100 -0
  77. data/config/initializers/assets.rb +4 -0
  78. data/config/initializers/ckeditor.rb +59 -0
  79. data/config/initializers/ckeditor_dragonfly.rb +19 -0
  80. data/config/initializers/ckeditor_init.rb +3 -0
  81. data/config/initializers/dragonfly.rb +26 -0
  82. data/config/routes.rb +11 -0
  83. data/db/migrate/cms9_create.rb +73 -0
  84. data/db/schema.rb +49 -0
  85. data/db/seeds.rb +7 -0
  86. data/lib/cms9.rb +24 -0
  87. data/lib/cms9/engine.rb +24 -0
  88. data/lib/cms9/version.rb +3 -0
  89. data/lib/events/cms9_events.rb +50 -0
  90. data/lib/generators/cms9/install/install_generator.rb +81 -0
  91. data/lib/generators/cms9/install/templates/ckeditor_config.js +14 -0
  92. data/lib/generators/cms9/install/templates/cms9_configurator.rb +4 -0
  93. data/lib/sdk/cms9.rb +138 -0
  94. data/lib/tasks/cms9_tasks.rake +4 -0
  95. 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,2 @@
1
+ <%= field.label field.object.post_field.name %>
2
+ <%= field.date_field :value, as: :date, value: field.object.value, class: 'form-control', required: field.object.post_field.required %>
@@ -0,0 +1,2 @@
1
+ <%= field.label field.object.post_field.name %>
2
+ <%= field.datetime_local_field :value, as: :time, value: field.object.value, class: 'form-control', required: field.object.post_field.required %>
@@ -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,2 @@
1
+ <%= field.label field.object.post_field.name %>
2
+ <%= field.number_field :value, { class: 'form-control', required: field.object.post_field.required } %>
@@ -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,2 @@
1
+ <%= field.label field.object.post_field.name %>
2
+ <%= field.select :value, field.object.post_field.metadata.split(','), { prompt: 'Select Type' }, { class: 'form-control type-selector', required: field.object.post_field.required } %>
@@ -0,0 +1,2 @@
1
+ <%= field.label field.object.post_field.name %>
2
+ <%= field.text_field :value, { class: 'form-control', required: field.object.post_field.required, minlength: 3 }%>
@@ -0,0 +1,2 @@
1
+ <%= field.label field.object.post_field.name %>
2
+ <%= field.cktext_area :value, { required: field.object.post_field.required } %>
@@ -0,0 +1,2 @@
1
+ <%= field.label field.object.post_field.name %>
2
+ <%= field.time_field :value, as: :time, value: field.object.value, { class: 'form-control', required: field.object.post_field.required } %>
@@ -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