caboose-cms 0.0.7 → 0.1.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.
Files changed (57) hide show
  1. data/app/assets/images/caboose/caboose_nav.png +0 -0
  2. data/app/assets/javascripts/caboose/admin.js +37 -0
  3. data/app/assets/javascripts/caboose/application.js +2 -1
  4. data/app/assets/javascripts/caboose/model.form.page.js +30 -0
  5. data/app/assets/javascripts/caboose/station.js +223 -0
  6. data/app/assets/stylesheets/caboose/admin.css +57 -0
  7. data/app/assets/stylesheets/caboose/caboose.css +146 -16
  8. data/app/assets/stylesheets/caboose/tinymce.css +25 -0
  9. data/app/controllers/caboose/pages_controller.rb +43 -19
  10. data/app/controllers/caboose/permissions_controller.rb +91 -73
  11. data/app/controllers/caboose/roles_controller.rb +49 -37
  12. data/app/controllers/caboose/settings_controller.rb +100 -0
  13. data/app/controllers/caboose/station_controller.rb +13 -0
  14. data/app/controllers/caboose/users_controller.rb +51 -44
  15. data/app/models/caboose/caboose_plugin.rb +2 -6
  16. data/app/models/caboose/page.rb +3 -3
  17. data/app/models/caboose/page_bar_generator.rb +37 -28
  18. data/app/models/caboose/page_plugin.rb +43 -0
  19. data/app/models/caboose/permission_plugin.rb +27 -0
  20. data/app/models/caboose/role.rb +19 -1
  21. data/app/models/caboose/role_plugin.rb +27 -0
  22. data/app/models/caboose/setting.rb +5 -0
  23. data/app/models/caboose/settings_plugin.rb +27 -0
  24. data/app/models/caboose/user.rb +1 -2
  25. data/app/models/caboose/user_plugin.rb +28 -0
  26. data/app/views/caboose/pages/edit.html.erb +7 -27
  27. data/app/views/caboose/pages/edit_settings.html.erb +38 -0
  28. data/app/views/caboose/pages/sitemap.html.erb +12 -0
  29. data/app/views/caboose/permissions/edit.html.erb +21 -4
  30. data/app/views/caboose/permissions/index.html.erb +29 -21
  31. data/app/views/caboose/permissions/new.html.erb +22 -2
  32. data/app/views/caboose/roles/edit.html.erb +40 -27
  33. data/app/views/caboose/roles/index.html.erb +3 -5
  34. data/app/views/caboose/roles/new.html.erb +30 -11
  35. data/app/views/caboose/settings/edit.html.erb +23 -0
  36. data/app/views/caboose/settings/index.html.erb +33 -0
  37. data/app/views/caboose/settings/new.html.erb +25 -0
  38. data/app/views/caboose/users/edit.html.erb +11 -14
  39. data/app/views/caboose/users/index.html.erb +2 -4
  40. data/app/views/caboose/users/new.html.erb +2 -0
  41. data/app/views/caboose/users/update_pic.html.erb +1 -1
  42. data/app/views/layouts/caboose/_station.html.erb +43 -14
  43. data/app/views/layouts/caboose/{caboose.html.erb → admin.html.erb} +2 -2
  44. data/config/routes.rb +16 -5
  45. data/lib/caboose.rb +1 -1
  46. data/lib/caboose/engine.rb +15 -6
  47. data/lib/caboose/version.rb +1 -1
  48. data/lib/sample_files/tinymce.yml +22 -0
  49. data/lib/tasks/caboose.rake +21 -1
  50. metadata +40 -12
  51. data/app/assets/javascripts/caboose/caboose.js +0 -28
  52. data/app/assets/javascripts/caboose/permissions.js +0 -0
  53. data/app/assets/javascripts/caboose/roles.js +0 -35
  54. data/app/assets/javascripts/caboose/users.js +0 -38
  55. data/app/views/caboose/permissions/show.html.erb +0 -15
  56. data/app/views/caboose/roles/show.html.erb +0 -20
  57. data/app/views/caboose/users/update_resume.html.erb +0 -14
@@ -0,0 +1,33 @@
1
+ <h1>Settings</h1>
2
+
3
+ <form action='/admin/settings' method='get'>
4
+ <table cellpadding='4' cellspacing='0' border='0'>
5
+ <tr><td>Name: </td><td><input type='text' name='name' value='<%= @gen.params['name'] %>' style='width: 200px;' /></td></tr>
6
+ </table>
7
+ <p><input type='submit' value='Search' /></p>
8
+ </form>
9
+
10
+ <% if (@settings.count > 0) %>
11
+
12
+ <table class='data'>
13
+ <tr>
14
+ <%= raw @gen.sortable_table_headings({
15
+ 'name' => 'Name',
16
+ 'value' => 'Value'
17
+ })
18
+ %>
19
+ </tr>
20
+ <% @settings.each do |setting| %>
21
+ <tr onclick="window.location='/admin/settings/<%= setting.id %>/edit';">
22
+ <td><%= setting.name %></td>
23
+ <td><%= setting.value %></td>
24
+ </tr>
25
+ <% end %>
26
+ </table>
27
+ <p><%= raw @gen.generate %></p>
28
+
29
+ <% else %>
30
+
31
+ <p>There are no settings.</p>
32
+
33
+ <% end %>
@@ -0,0 +1,25 @@
1
+
2
+ <h1>New Setting</h1>
3
+ <div id='setting_new_container'></div>
4
+
5
+ <% content_for :caboose_js do %>
6
+ <script type='text/javascript'>
7
+
8
+ var setting = false;
9
+ $(document).ready(function() {
10
+
11
+ setting = new Model({
12
+ name: 'Setting',
13
+ id: 'new',
14
+ listing_url: 'get /admin/settings',
15
+ create_url: 'post /admin/settings',
16
+ attributes: [
17
+ { name: 'name' , type: 'text' , value: '' },
18
+ { name: 'value' , type: 'textarea' , value: '' }
19
+ ]
20
+ });
21
+
22
+ });
23
+
24
+ </script>
25
+ <% end %>
@@ -1,6 +1,6 @@
1
1
 
2
2
  <h1>Edit User</h1>
3
- <div id='user_<%= @user.id %>_container'></div>
3
+ <div id='user_<%= @edituser.id %>_container'></div>
4
4
 
5
5
  <% content_for :caboose_js do %>
6
6
  <script type="text/javascript">
@@ -8,12 +8,15 @@
8
8
  $(document).ready(function() {
9
9
  var user = new Model({
10
10
  name: 'User',
11
- id: <%= @user.id %>,
11
+ id: <%= @edituser.id %>,
12
+ listing_url: 'get /admin/users',
13
+ update_url: 'put /admin/users/<%= @edituser.id %>',
14
+ delete_url: 'delete /admin/users/<%= @edituser.id %>',
12
15
  attributes: [
13
- { name: 'first_name' , type: 'text', value: "<%= @user.first_name %>" },
14
- { name: 'last_name' , type: 'text', value: "<%= @user.last_name %>" },
15
- { name: 'username' , type: 'text', value: "<%= @user.username %>" },
16
- { name: 'email' , type: 'text', value: "<%= @user.email %>" },
16
+ { name: 'first_name' , type: 'text', value: "<%= @edituser.first_name %>" },
17
+ { name: 'last_name' , type: 'text', value: "<%= @edituser.last_name %>" },
18
+ { name: 'username' , type: 'text', value: "<%= @edituser.username %>" },
19
+ { name: 'email' , type: 'text', value: "<%= @edituser.email %>" },
17
20
  { name: 'password' , type: 'password' },
18
21
  {
19
22
  name: 'roles',
@@ -23,19 +26,13 @@ $(document).ready(function() {
23
26
  empty_text: '[No roles]',
24
27
  multiple: true,
25
28
  loading_message: 'Getting roles...',
26
- options_url: '/roles/options'
29
+ options_url: '/admin/roles/options'
27
30
  },
28
31
  {
29
32
  name: 'pic',
30
33
  type: 'image',
31
34
  value: '',
32
- update_url: '/users/<%= @user.id %>/update-pic'
33
- },
34
- {
35
- name: 'resume',
36
- type: 'file',
37
- value: '',
38
- update_url: '/users/<%= @user.id %>/update-resume'
35
+ update_url: '/admin/users/<%= @edituser.id %>/update-pic'
39
36
  }
40
37
  ]
41
38
  });
@@ -1,8 +1,6 @@
1
1
  <h1>Users</h1>
2
2
 
3
- <p><a href='/users/new'>New User</a></p>
4
-
5
- <form action='/users' method='get'>
3
+ <form action='/admin/users' method='get'>
6
4
  <table cellpadding='4' cellspacing='0' border='0'>
7
5
  <tr><td>First name: </td><td><input type='text' name='first_name' value='<%= @gen.params['first_name'] %>' style='width: 200px;' /></td></tr>
8
6
  <tr><td>Last name: </td><td><input type='text' name='last_name' value='<%= @gen.params['last_name'] %>' style='width: 200px;' /></td></tr>
@@ -22,7 +20,7 @@
22
20
  %>
23
21
  </tr>
24
22
  <% @users.each do |user| %>
25
- <tr onclick="window.location='/users/<%= user.id %>/edit';">
23
+ <tr onclick="window.location='/admin/users/<%= user.id %>/edit';">
26
24
  <td><%= user.first_name %></td>
27
25
  <td><%= user.last_name %></td>
28
26
  <td><%= user.username %></td>
@@ -11,6 +11,8 @@ $(document).ready(function() {
11
11
  user = new Model({
12
12
  name: 'User',
13
13
  id: 'new',
14
+ listing_url: 'get /admin/users',
15
+ create_url: 'post /admin/users',
14
16
  attributes: [
15
17
  { name: 'username', type: 'text', value: '' }
16
18
  ]
@@ -3,7 +3,7 @@
3
3
  $(document).ready(function() {
4
4
  parent.Model.upload_finished({
5
5
  name: 'user',
6
- id: <%= @user.id %>,
6
+ id: <%= @edituser.id %>,
7
7
  attribute_name: 'pic',
8
8
  success: true,
9
9
  error: false,
@@ -1,23 +1,52 @@
1
+ <%
1
2
 
2
- <div id='caboose_station'>
3
+ @nav = Caboose.plugin_hook('admin_nav', [], @user, @page)
4
+
5
+ initial_state = session[:caboose_station_state].nil? ? 'min' : session[:caboose_station_state]
6
+ open_tabs = session[:caboose_station_open_tabs].nil? ? [] : session[:caboose_station_open_tabs]
7
+ return_url = session[:caboose_station_return_url].nil? ? '/' : session[:caboose_station_return_url]
8
+ return_url = '/' if return_url.starts_with?('/admin/') || return_url == '/admin'
9
+
10
+ style = ''
11
+ if (initial_state == 'left')
12
+ style = " style='display: block; left: 0;'"
13
+ elsif (initial_state == 'right')
14
+ style = " style='display: block; right: 0;'"
15
+ end
16
+
17
+ %>
18
+ <div id='caboose_station' class='state_<%= initial_state %>'<%= raw style %>>
19
+
3
20
  <% if (@user.nil? || @user.id == Caboose::User::LOGGED_OUT_USER_ID) %>
21
+ <h2>Caboose Station</h2>
4
22
  <a href='/login' class='login'>Login</a>
5
23
  <% else %>
6
- <ul>
24
+ <ul class='account'>
7
25
  <li class='my_account'><a href='/users/<%= @user.id %>/edit'>My Account</a></li>
8
26
  <li class='logout'><a href='/logout'>Logout</a></li>
9
- <% if (@user.is_allowed('admin', 'view')) %>
10
- <li class='admin'><a href='/admin'>Admin</a></li>
11
- <% end %>
12
- <%
13
- uru = session['use_redirect_urls'].nil? ? true : session['use_redirect_urls']
14
- %>
15
- <li><a href="javascript:setServerVar('use_redirect_urls', <%= uru ? '0' : '1' %>, 'redirect_message');"><%= uru ? 'Disable' : 'Enable' %> Redirect Urls</a><span id='redirect_message'></span></li>
16
- <% if (!@tasks.nil?) %>
17
- <% @tasks.each do |href, task| %>
18
- <li><a href='<%= href %>'><%= task %></a></li>
19
- <% end %>
20
- <% end %>
21
27
  </ul>
28
+ <h2>Caboose Station</h2>
29
+ <ul class='admin'>
30
+ <% i = 0 %>
31
+ <% @nav.each do |item| %>
32
+ <% id = item['id'].nil? ? i.to_s : item['id'] %>
33
+ <li id='nav_item_<%= id %>'><a href='#' class='top_level'><%= item['text'] %></a>
34
+ <% if (!item['children'].nil? && item['children'].count > 0) %>
35
+ <%
36
+ visible = open_tabs.include?(id) || (!item['show_children_default'].nil? && item['show_children_default'])
37
+ style = visible ? '' : " style='display: none;'"
38
+ %>
39
+ <ul id='subnav_<%= id %>' class='<%= visible ? 'visible' : 'hidden' %>'<%= raw style %>>
40
+ <% item['children'].each do |item2| %>
41
+ <li><a href='<%= item2['href'] %>'><%= item2['text'] %></a></li>
42
+ <% end %>
43
+ </ul>
44
+ <% end %>
45
+ </li>
46
+ <% i + 1 %>
47
+ <% end %>
48
+ </ul>
49
+ <a href='<%= return_url %>' class='close'>Close</a>
22
50
  <% end %>
51
+
23
52
  </div>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <title>Caboose</title>
6
- <%= stylesheet_link_tag "caboose/application", :media => "all" %>
6
+ <%= stylesheet_link_tag "caboose/admin", :media => "all" %>
7
7
  <%= yield :caboose_css %>
8
8
  <%= csrf_meta_tags %>
9
9
  </head>
@@ -19,7 +19,7 @@
19
19
  </div>
20
20
  <div class="footer"></div>
21
21
  <%= render :partial => 'layouts/caboose/station' %>
22
- <%= javascript_include_tag "caboose/application" %>
22
+ <%= javascript_include_tag "caboose/admin" %>
23
23
  <%= yield :caboose_js %>
24
24
  </body>
25
25
  </html>
data/config/routes.rb CHANGED
@@ -1,16 +1,18 @@
1
1
  Caboose::Engine.routes.draw do
2
2
 
3
3
  get "admin" => "admin#index"
4
+ put "admin/station" => "station#index"
4
5
 
5
6
  get "login" => "login#index"
6
7
  post "login" => "login#login"
7
8
  get "logout" => "logout#index"
8
9
 
9
- post "admin/users/:id/update-pic" => "users#update_pic"
10
10
  get "admin/users" => "users#index"
11
+ get "admin/users/options" => "users#options"
12
+ get "admin/users/new" => "users#new"
13
+ post "admin/users/:id/update-pic" => "users#update_pic"
11
14
  get "admin/users/:id/edit" => "users#edit"
12
15
  put "admin/users/:id" => "users#update"
13
- get "admin/users/new" => "users#new"
14
16
  post "admin/users" => "users#create"
15
17
  delete "admin/users/:id" => "users#destroy"
16
18
 
@@ -23,19 +25,28 @@ Caboose::Engine.routes.draw do
23
25
  delete "admin/roles/:id" => "roles#destroy"
24
26
 
25
27
  get "admin/permissions" => "permissions#index"
26
- get "admin/permissions/:id" => "permissions#show"
27
- get "admin/permissions/:id/edit" => "permissions#edit"
28
- put "admin/permissions/:id" => "permissions#update"
28
+ get "admin/permissions/options" => "permissions#options"
29
29
  get "admin/permissions/new" => "permissions#new"
30
+ get "admin/permissions/:id/edit" => "permissions#edit"
31
+ put "admin/permissions/:id" => "permissions#update"
30
32
  post "admin/permissions" => "permissions#create"
31
33
  delete "admin/permissions/:id" => "permissions#destroy"
32
34
 
35
+ get "admin/settings" => "settings#index"
36
+ get "admin/settings/options" => "settings#options"
37
+ get "admin/settings/new" => "settings#new"
38
+ get "admin/settings/:id/edit" => "settings#edit"
39
+ put "admin/settings/:id" => "settings#update"
40
+ post "admin/settings" => "settings#create"
41
+ delete "admin/settings/:id" => "settings#destroy"
42
+
33
43
  get "pages" => "pages#index"
34
44
  get "pages/sitemap-options" => "pages#sitemap_options"
35
45
  get "pages/robots-options" => "pages#robots_options"
36
46
  get "pages/content-format-options" => "pages#content_format_options"
37
47
  get "pages/new" => "pages#new"
38
48
  get "pages/:id/redirect" => "pages#redirect"
49
+ get "pages/:id/edit-settings" => "pages#edit_settings"
39
50
  get "pages/:id/edit" => "pages#edit"
40
51
  get "pages/:id" => "pages#show"
41
52
  put "pages/:id" => "pages#update"
data/lib/caboose.rb CHANGED
@@ -9,7 +9,7 @@ module Caboose
9
9
  @@assets_path = "assets"
10
10
 
11
11
  mattr_accessor :plugins
12
- @@plugins = []
12
+ @@plugins = ['Caboose::UserPlugin', 'Caboose::RolePlugin', 'Caboose::PermissionPlugin', 'Caboose::PagePlugin', 'Caboose::SettingsPlugin']
13
13
 
14
14
  # Any paths to modeljs javascript files
15
15
  mattr_accessor :modeljs_js_files
@@ -1,3 +1,6 @@
1
+
2
+ require 'tinymce-rails'
3
+
1
4
  module Caboose
2
5
 
3
6
  def Caboose.log(message, title = nil)
@@ -14,15 +17,21 @@ module Caboose
14
17
  end
15
18
  end
16
19
 
17
- def Caboose.plugin_hook(tag, args = nil)
20
+ def Caboose.plugin_hook(*args)
21
+ resp = nil
22
+ args[0] = args[0].to_sym
18
23
  Caboose.plugins.each do |mod|
19
- func = "#{tag}_hook"
20
- if (mod.constantize.respond_to?(func))
21
- args = mod.constantize.send(func.to_sym, args)
24
+ #resp = mod.constantize.send(*args)
25
+ if (mod.constantize.respond_to?(args[0]))
26
+ resp = mod.constantize.send(*args)
22
27
  end
23
- #args = mod.send(func.to_sym, args)
24
28
  end
25
- return args
29
+ return resp
30
+ end
31
+
32
+ def Caboose.json(obj, defaultvalue = "")
33
+ return defaultvalue.to_json if obj.nil?
34
+ return obj.to_json
26
35
  end
27
36
 
28
37
  class Engine < ::Rails::Engine
@@ -1,3 +1,3 @@
1
1
  module Caboose
2
- VERSION = "0.0.7"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -0,0 +1,22 @@
1
+
2
+ default:
3
+ theme_advanced_toolbar_align: left
4
+ theme_advanced_buttons3_add:
5
+ - tablecontrols
6
+ plugins:
7
+ - table
8
+
9
+ caboose:
10
+ width: '540px'
11
+ height: '130px'
12
+ convert_urls: false
13
+ content_css: '/assets/caboose/tinymce.css'
14
+ theme_advanced_toolbar_location: top
15
+ theme_advanced_toolbar_align: left
16
+ theme_advanced_statusbar_location: bottom
17
+ theme_advanced_resizing: true
18
+ theme_advanced_buttons1: "bold,italic,underline,|,bullist,numlist,|,link,unlink,anchor,image,|,tablecontrols,|,code"
19
+ theme_advanced_buttons2: ""
20
+ theme_advanced_buttons3: ""
21
+ theme_advanced_buttons4: ""
22
+ plugins: "autolink,lists,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template"
@@ -1,3 +1,4 @@
1
+ require "caboose/version"
1
2
 
2
3
  namespace :caboose do
3
4
 
@@ -6,6 +7,7 @@ namespace :caboose do
6
7
  init_config
7
8
  init_routes
8
9
  init_assets
10
+ init_tinymce
9
11
  init_session
10
12
  init_schema
11
13
  init_data
@@ -15,7 +17,9 @@ namespace :caboose do
15
17
  desc "Configures the host application to use caboose for routing"
16
18
  task :init_routes => :environment do init_routes end
17
19
  desc "Initializes all the required caboose js, css and layout files in the host application"
18
- task :init_assets => :environment do init_assets end
20
+ task :init_assets => :environment do init_assets end
21
+ desc "Initializes the tinymce config file in the host application"
22
+ task :init_tinymce => :environment do init_tinymce end
19
23
  desc "Configures the host application to use active record session storing"
20
24
  task :init_session => :environment do init_session end
21
25
  desc "Initializes the caboose database schema"
@@ -74,6 +78,11 @@ namespace :caboose do
74
78
  init_file('app/views/layouts/layout_default.html.erb')
75
79
  end
76
80
 
81
+ def init_tinymce
82
+ puts "Adding the tinymce config file..."
83
+ init_file('config/tinymce.yml')
84
+ end
85
+
77
86
  def init_session
78
87
  puts "Setting the session config..."
79
88
 
@@ -106,6 +115,7 @@ namespace :caboose do
106
115
  c.drop_table :pages if c.table_exists?('pages')
107
116
  c.drop_table :page_permissions if c.table_exists?('page_permissions')
108
117
  c.drop_table :sessions if c.table_exists?('sessions')
118
+ c.drop_table :settings if c.table_exists?('settings')
109
119
  end
110
120
 
111
121
  def create_tables
@@ -197,6 +207,10 @@ namespace :caboose do
197
207
  c.add_index :sessions, :updated_at
198
208
  c.change_column :sessions, :created_at, :datetime, :null => true
199
209
  c.change_column :sessions, :updated_at, :datetime, :null => true
210
+ c.create_table :settings do |t|
211
+ t.string :name
212
+ t.text :value
213
+ end
200
214
 
201
215
  end
202
216
 
@@ -246,5 +260,11 @@ namespace :caboose do
246
260
  Caboose::PagePermission.create(role_id: elo_role.id, page_id: home_page.id, action: 'view')
247
261
  Caboose::PagePermission.create(role_id: elo_role.id, page_id: login_page.id, action: 'view')
248
262
 
263
+ # Create the required settings
264
+ Caboose::Setting.create(name: 'version' , value: Caboose::VERSION)
265
+ Caboose::Setting.create(name: 'site_name' , value: 'New Caboose Site')
266
+ Caboose::Setting.create(name: 'site_url' , value: 'www.mycaboosesite.com')
267
+ Caboose::Setting.create(name: 'admin_email' , value: 'william@nine.is')
268
+
249
269
  end
250
270
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: caboose-cms
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-05-28 00:00:00.000000000 Z
12
+ date: 2013-06-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -59,6 +59,22 @@ dependencies:
59
59
  - - ! '>='
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: mysql2
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ type: :runtime
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
62
78
  - !ruby/object:Gem::Dependency
63
79
  name: modeljs
64
80
  requirement: !ruby/object:Gem::Requirement
@@ -76,14 +92,14 @@ dependencies:
76
92
  - !ruby/object:Gem::Version
77
93
  version: '0'
78
94
  - !ruby/object:Gem::Dependency
79
- name: mysql2
95
+ name: tinymce-rails
80
96
  requirement: !ruby/object:Gem::Requirement
81
97
  none: false
82
98
  requirements:
83
99
  - - ! '>='
84
100
  - !ruby/object:Gem::Version
85
101
  version: '0'
86
- type: :development
102
+ type: :runtime
87
103
  prerelease: false
88
104
  version_requirements: !ruby/object:Gem::Requirement
89
105
  none: false
@@ -99,14 +115,15 @@ extensions: []
99
115
  extra_rdoc_files: []
100
116
  files:
101
117
  - app/assets/images/caboose/caboose_nav.png
118
+ - app/assets/javascripts/caboose/admin.js
102
119
  - app/assets/javascripts/caboose/application.js
103
- - app/assets/javascripts/caboose/caboose.js
104
120
  - app/assets/javascripts/caboose/login.js
105
- - app/assets/javascripts/caboose/permissions.js
106
- - app/assets/javascripts/caboose/roles.js
107
- - app/assets/javascripts/caboose/users.js
121
+ - app/assets/javascripts/caboose/model.form.page.js
122
+ - app/assets/javascripts/caboose/station.js
123
+ - app/assets/stylesheets/caboose/admin.css
108
124
  - app/assets/stylesheets/caboose/application.css
109
125
  - app/assets/stylesheets/caboose/caboose.css
126
+ - app/assets/stylesheets/caboose/tinymce.css
110
127
  - app/controllers/caboose/admin_controller.rb
111
128
  - app/controllers/caboose/application_controller.rb
112
129
  - app/controllers/caboose/login_controller.rb
@@ -114,6 +131,8 @@ files:
114
131
  - app/controllers/caboose/pages_controller.rb
115
132
  - app/controllers/caboose/permissions_controller.rb
116
133
  - app/controllers/caboose/roles_controller.rb
134
+ - app/controllers/caboose/settings_controller.rb
135
+ - app/controllers/caboose/station_controller.rb
117
136
  - app/controllers/caboose/users_controller.rb
118
137
  - app/helpers/caboose/application_helper.rb
119
138
  - app/helpers/caboose/permissions_helper.rb
@@ -124,38 +143,46 @@ files:
124
143
  - app/models/caboose/page.rb
125
144
  - app/models/caboose/page_bar_generator.rb
126
145
  - app/models/caboose/page_permission.rb
146
+ - app/models/caboose/page_plugin.rb
127
147
  - app/models/caboose/permission.rb
148
+ - app/models/caboose/permission_plugin.rb
128
149
  - app/models/caboose/role.rb
150
+ - app/models/caboose/role_plugin.rb
151
+ - app/models/caboose/setting.rb
152
+ - app/models/caboose/settings_plugin.rb
129
153
  - app/models/caboose/std_class.rb
130
154
  - app/models/caboose/user.rb
155
+ - app/models/caboose/user_plugin.rb
131
156
  - app/views/caboose/admin/index.html.erb
132
157
  - app/views/caboose/application/show.html.erb
133
158
  - app/views/caboose/extras/error.html.erb
134
159
  - app/views/caboose/extras/error404.html.erb
135
160
  - app/views/caboose/login/index.html.erb
136
161
  - app/views/caboose/pages/edit.html.erb
162
+ - app/views/caboose/pages/edit_settings.html.erb
137
163
  - app/views/caboose/pages/index.html.erb
138
164
  - app/views/caboose/pages/new.html.erb
139
165
  - app/views/caboose/pages/show.html.erb
166
+ - app/views/caboose/pages/sitemap.html.erb
140
167
  - app/views/caboose/pages/update_pic.html.erb
141
168
  - app/views/caboose/pages/update_resume.html.erb
142
169
  - app/views/caboose/permissions/edit.html.erb
143
170
  - app/views/caboose/permissions/index.html.erb
144
171
  - app/views/caboose/permissions/new.html.erb
145
- - app/views/caboose/permissions/show.html.erb
146
172
  - app/views/caboose/roles/edit.html.erb
147
173
  - app/views/caboose/roles/index.html.erb
148
174
  - app/views/caboose/roles/new.html.erb
149
- - app/views/caboose/roles/show.html.erb
175
+ - app/views/caboose/settings/edit.html.erb
176
+ - app/views/caboose/settings/index.html.erb
177
+ - app/views/caboose/settings/new.html.erb
150
178
  - app/views/caboose/users/edit.html.erb
151
179
  - app/views/caboose/users/index.html.erb
152
180
  - app/views/caboose/users/new.html.erb
153
181
  - app/views/caboose/users/update_pic.html.erb
154
- - app/views/caboose/users/update_resume.html.erb
155
182
  - app/views/layouts/caboose/_station.html.erb
156
183
  - app/views/layouts/caboose/_top_nav.html.erb
184
+ - app/views/layouts/caboose/admin.html.erb
157
185
  - app/views/layouts/caboose/application.html.erb
158
- - app/views/layouts/caboose/caboose.html.erb
159
186
  - app/views/layouts/caboose/error404.html.erb
160
187
  - config/routes.rb
161
188
  - lib/caboose/engine.rb
@@ -168,6 +195,7 @@ files:
168
195
  - lib/sample_files/caboose_before.js
169
196
  - lib/sample_files/caboose_station.html.erb
170
197
  - lib/sample_files/layout_default.html.erb
198
+ - lib/sample_files/tinymce.yml
171
199
  - lib/tasks/caboose.rake
172
200
  - MIT-LICENSE
173
201
  - Rakefile