cambium 0.3.0 → 1.0.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 +4 -4
- data/LICENSE.txt +1 -1
- data/README.md +339 -15
- data/{lib/generators/cambium/templates/app/assets/javascripts/admin/admin.js.coffee → app/assets/javascripts/cambium/admin/application.js.coffee} +4 -10
- data/app/assets/javascripts/cambium/admin/routers/router.js.coffee +25 -0
- data/app/assets/javascripts/cambium/admin/users.js +2 -0
- data/app/assets/javascripts/cambium/admin/views/dropdown_menu.js.coffee +24 -0
- data/app/assets/javascripts/cambium/admin/views/pickadate.js.coffee +15 -0
- data/app/assets/stylesheets/cambium/admin/application.scss +27 -0
- data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/_colors.scss +7 -7
- data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones.scss +18 -18
- data/app/assets/stylesheets/cambium/admin/partials/_globals.scss +21 -0
- data/app/assets/stylesheets/cambium/admin/partials/activity.scss +52 -0
- data/app/assets/stylesheets/cambium/admin/partials/components.scss +64 -0
- data/app/assets/stylesheets/cambium/admin/partials/dashboard.scss +48 -0
- data/app/assets/stylesheets/cambium/admin/partials/forms.scss +107 -0
- data/app/assets/stylesheets/cambium/admin/partials/header.scss +113 -0
- data/app/assets/stylesheets/cambium/admin/partials/page_title.scss +42 -0
- data/app/assets/stylesheets/cambium/admin/partials/sidebar.scss +41 -0
- data/app/assets/stylesheets/cambium/admin/partials/tables.scss +80 -0
- data/app/assets/stylesheets/cambium/admin/partials/typography.scss +5 -0
- data/app/assets/stylesheets/cambium/admin/partials/wireframe.scss +52 -0
- data/app/assets/stylesheets/cambium/admin/users.css +4 -0
- data/app/controllers/cambium/admin/dashboard_controller.rb +12 -0
- data/app/controllers/cambium/admin/search_controller.rb +9 -0
- data/app/controllers/cambium/admin/users_controller.rb +30 -0
- data/app/controllers/cambium/admin_controller.rb +90 -0
- data/app/helpers/cambium/cambium_helper.rb +205 -0
- data/app/presenters/cambium/admin_presenter.rb +127 -0
- data/app/views/cambium/admin/_activity.html.erb +6 -0
- data/app/views/cambium/admin/_header.html.erb +41 -0
- data/app/views/cambium/admin/_sidebar.html.erb +19 -0
- data/app/views/cambium/admin/_status.html.erb +5 -0
- data/app/views/cambium/admin/dashboard/show.html.erb +5 -0
- data/app/views/cambium/admin/edit.html.erb +7 -0
- data/app/views/cambium/admin/index.html.erb +7 -0
- data/app/views/cambium/admin/new.html.erb +7 -0
- data/app/views/cambium/admin/paper_trail/versions/_version.html.erb +20 -0
- data/app/views/cambium/admin/search/index.html.erb +38 -0
- data/app/views/layouts/admin.html.erb +25 -0
- data/bin/rails +12 -0
- data/cambium.gemspec +19 -15
- data/config/routes.rb +10 -0
- data/lib/cambium/configuration.rb +28 -0
- data/lib/cambium/engine.rb +2 -1
- data/lib/cambium/version.rb +1 -1
- data/lib/cambium.rb +12 -1
- data/lib/generators/cambium/admin_generator.rb +104 -0
- data/lib/generators/cambium/app_generator.rb +205 -0
- data/lib/generators/cambium/controller_generator.rb +81 -0
- data/lib/generators/cambium/gemfile_generator.rb +36 -0
- data/lib/generators/cambium/install_generator.rb +19 -0
- data/lib/generators/cambium/user_generator.rb +40 -0
- data/lib/generators/{cambium/helpers → helpers}/generators_helper.rb +32 -24
- data/lib/generators/templates/Gemfile.erb +79 -0
- data/lib/generators/{cambium/templates/app/assets/javascripts/backbone/app.js.coffee → templates/app/assets/javascripts/application.js.coffee} +9 -1
- data/lib/generators/templates/app/assets/javascripts/views/default_helpers.js.coffee +16 -0
- data/lib/generators/templates/app/assets/stylesheets/admin/admin.scss +3 -0
- data/lib/generators/templates/app/controllers/admin/controller.rb.erb +2 -0
- data/lib/generators/{cambium/templates → templates}/app/controllers/application_controller.rb +1 -5
- data/lib/generators/{cambium/templates → templates}/app/models/user.rb +4 -4
- data/lib/generators/templates/app/views/application/_status.html.erb +3 -0
- data/lib/generators/{cambium/templates → templates}/app/views/layouts/application.html.erb +1 -1
- data/lib/generators/templates/config/admin/controller.yml.erb +24 -0
- data/lib/generators/templates/config/admin/sidebar.yml +9 -0
- data/lib/generators/templates/config/admin/users.yml +31 -0
- data/lib/generators/{cambium/templates → templates}/config/application.rb +6 -4
- data/lib/generators/templates/config/initializers/_hash.rb +23 -0
- data/lib/generators/templates/config/initializers/_settings.rb +18 -0
- data/lib/generators/templates/config/initializers/assets.rb +1 -0
- data/lib/generators/templates/config/initializers/cambium.rb +16 -0
- data/lib/generators/templates/config/private.yml +16 -0
- data/lib/generators/templates/config/routes.rb +54 -0
- data/lib/generators/templates/config/settings.yml +16 -0
- data/lib/generators/{cambium/templates → templates}/gitignore +1 -1
- data/lib/help/cambium_prereqs.txt +13 -0
- data/lib/help/pg_search_post_install.txt +13 -0
- data/lib/{generators/cambium/templates/lib/tasks → tasks}/db.rake +2 -2
- data/lib/{generators/cambium/templates/lib/tasks → tasks}/rename.rake +1 -1
- data/test/controllers/cambium/admin/dashboard_controller_test.rb +9 -0
- data/test/controllers/cambium/admin/users_controller_test.rb +9 -0
- data/test/controllers/cambium/admin_controller_test.rb +9 -0
- metadata +192 -152
- data/bin/cambium +0 -16
- data/lib/generators/cambium/helpers/dependencies_helper.rb +0 -58
- data/lib/generators/cambium/install/admin_generator.rb +0 -110
- data/lib/generators/cambium/install/app_generator.rb +0 -162
- data/lib/generators/cambium/install/config_generator.rb +0 -182
- data/lib/generators/cambium/install/utilities_generator.rb +0 -57
- data/lib/generators/cambium/model/image_generator.rb +0 -67
- data/lib/generators/cambium/model/page_generator.rb +0 -131
- data/lib/generators/cambium/model/post_generator.rb +0 -71
- data/lib/generators/cambium/model/tag_generator.rb +0 -40
- data/lib/generators/cambium/model/user_generator.rb +0 -78
- data/lib/generators/cambium/templates/Gemfile +0 -43
- data/lib/generators/cambium/templates/Gemfile.erb +0 -40
- data/lib/generators/cambium/templates/_partials/pages/admin_icon.rb +0 -6
- data/lib/generators/cambium/templates/app/assets/javascripts/.DS_Store +0 -0
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/collections/.gitkeep +0 -0
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/models/.gitkeep +0 -0
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/models/image.js.coffee +0 -14
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/models/tag.js.coffee +0 -14
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/parser_rules/custom.js +0 -552
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/routers/router.js.coffee +0 -37
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/tag.jst.ejs +0 -7
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/templates/image.jst.ejs +0 -3
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/templates/paginator_controls.jst.ejs +0 -8
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/templates/paginator_nav.jst.ejs +0 -11
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/templates/post_tag.jst.ejs +0 -1
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/views/accordion.js.coffee +0 -33
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/views/counter.js.coffee +0 -25
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/views/dropdown_toggle.js.coffee +0 -16
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/views/image_upload.js.coffee +0 -28
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/views/init_counter.js.coffee +0 -13
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/views/paginator.js.coffee +0 -86
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/views/publishable.js.coffee +0 -12
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/views/tags.js.coffee +0 -158
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/views/wysiwyg.js.coffee +0 -87
- data/lib/generators/cambium/templates/app/assets/javascripts/admin/wysihtml5.js +0 -9521
- data/lib/generators/cambium/templates/app/assets/javascripts/application.js +0 -10
- data/lib/generators/cambium/templates/app/assets/javascripts/backbone/templates/.keep +0 -0
- data/lib/generators/cambium/templates/app/assets/stylesheets/admin/admin.scss +0 -14
- data/lib/generators/cambium/templates/app/assets/stylesheets/admin/partials/_content.scss +0 -88
- data/lib/generators/cambium/templates/app/assets/stylesheets/admin/partials/_form.scss +0 -470
- data/lib/generators/cambium/templates/app/assets/stylesheets/admin/partials/_globals.scss +0 -39
- data/lib/generators/cambium/templates/app/assets/stylesheets/admin/partials/_header.scss +0 -121
- data/lib/generators/cambium/templates/app/assets/stylesheets/admin/partials/_nav.scss +0 -45
- data/lib/generators/cambium/templates/app/assets/stylesheets/admin/partials/_wireframe.scss +0 -24
- data/lib/generators/cambium/templates/app/assets/stylesheets/admin/wysihtml5.css +0 -7
- data/lib/generators/cambium/templates/app/controllers/admin/images_controller.rb +0 -45
- data/lib/generators/cambium/templates/app/controllers/admin/pages_controller.rb +0 -42
- data/lib/generators/cambium/templates/app/controllers/admin/posts_controller.rb +0 -39
- data/lib/generators/cambium/templates/app/controllers/admin/taggings_controller.rb +0 -69
- data/lib/generators/cambium/templates/app/controllers/admin/tags_controller.rb +0 -11
- data/lib/generators/cambium/templates/app/controllers/admin/users_controller.rb +0 -13
- data/lib/generators/cambium/templates/app/controllers/admin_controller.rb +0 -97
- data/lib/generators/cambium/templates/app/controllers/images_controller.rb +0 -45
- data/lib/generators/cambium/templates/app/controllers/pages_controller.rb +0 -12
- data/lib/generators/cambium/templates/app/controllers/posts_controller.rb +0 -11
- data/lib/generators/cambium/templates/app/helpers/admin/pages_controller.rb +0 -47
- data/lib/generators/cambium/templates/app/helpers/admin_helper.rb +0 -121
- data/lib/generators/cambium/templates/app/models/concerns/name.rb +0 -7
- data/lib/generators/cambium/templates/app/models/concerns/title.rb +0 -7
- data/lib/generators/cambium/templates/app/models/image.rb +0 -43
- data/lib/generators/cambium/templates/app/models/page.rb +0 -81
- data/lib/generators/cambium/templates/app/models/post.rb +0 -45
- data/lib/generators/cambium/templates/app/models/tag.rb +0 -33
- data/lib/generators/cambium/templates/app/models/tagging.rb +0 -20
- data/lib/generators/cambium/templates/app/uploaders/image_uploader.rb +0 -91
- data/lib/generators/cambium/templates/app/views/admin/_buttons.html.erb +0 -5
- data/lib/generators/cambium/templates/app/views/admin/_form.html.erb +0 -11
- data/lib/generators/cambium/templates/app/views/admin/_title.html.erb +0 -1
- data/lib/generators/cambium/templates/app/views/admin/edit.html.erb +0 -2
- data/lib/generators/cambium/templates/app/views/admin/images/_image.html.erb +0 -1
- data/lib/generators/cambium/templates/app/views/admin/images/create.js.erb +0 -7
- data/lib/generators/cambium/templates/app/views/admin/images/index.json.jbuilder +0 -4
- data/lib/generators/cambium/templates/app/views/admin/index.html.erb +0 -50
- data/lib/generators/cambium/templates/app/views/admin/new.html.erb +0 -2
- data/lib/generators/cambium/templates/app/views/admin/pages/_form.html.erb +0 -26
- data/lib/generators/cambium/templates/app/views/admin/posts/_form.html.erb +0 -40
- data/lib/generators/cambium/templates/app/views/admin/shared/_footer.html.erb +0 -2
- data/lib/generators/cambium/templates/app/views/admin/shared/_header.html.erb +0 -2
- data/lib/generators/cambium/templates/app/views/admin/shared/_insert_image.html.erb +0 -12
- data/lib/generators/cambium/templates/app/views/admin/shared/_nav.html.erb +0 -12
- data/lib/generators/cambium/templates/app/views/admin/shared/_status.html.erb +0 -3
- data/lib/generators/cambium/templates/app/views/admin/shared/forms/_editor.html.erb +0 -54
- data/lib/generators/cambium/templates/app/views/admin/shared/forms/_form_column_left.html.erb +0 -9
- data/lib/generators/cambium/templates/app/views/admin/shared/forms/_form_column_right.html.erb +0 -9
- data/lib/generators/cambium/templates/app/views/admin/shared/forms/_form_page.html.erb +0 -22
- data/lib/generators/cambium/templates/app/views/admin/shared/forms/_form_section.html.erb +0 -8
- data/lib/generators/cambium/templates/app/views/admin/shared/forms/_publishable.html.erb +0 -33
- data/lib/generators/cambium/templates/app/views/admin/users/_form.html.erb +0 -11
- data/lib/generators/cambium/templates/app/views/application/_status.html.erb +0 -3
- data/lib/generators/cambium/templates/app/views/layouts/.DS_Store +0 -0
- data/lib/generators/cambium/templates/app/views/layouts/admin.html.erb +0 -44
- data/lib/generators/cambium/templates/app/views/page_templates/default.html.erb +0 -2
- data/lib/generators/cambium/templates/app/views/posts/_post.html.erb +0 -4
- data/lib/generators/cambium/templates/app/views/posts/index.html.erb +0 -1
- data/lib/generators/cambium/templates/app/views/posts/show.html.erb +0 -10
- data/lib/generators/cambium/templates/config/app_routes.rb +0 -77
- data/lib/generators/cambium/templates/config/database.mysql2.yml.erb +0 -15
- data/lib/generators/cambium/templates/config/database.pg.yml.erb +0 -14
- data/lib/generators/cambium/templates/config/database.sqlite3.yml.erb +0 -18
- data/lib/generators/cambium/templates/config/initializers/_settings.rb +0 -11
- data/lib/generators/cambium/templates/config/initializers/assets.rb +0 -1
- data/lib/generators/cambium/templates/config/routes.rb.erb +0 -42
- data/lib/generators/cambium/templates/config/settings.yml +0 -15
- data/lib/generators/cambium/templates/config/settings_private.sample.yml +0 -15
- data/lib/generators/cambium/templates/config/settings_private.yml +0 -13
- data/lib/generators/cambium/templates/db/migrate/create_pages.rb.erb +0 -24
- data/lib/generators/cambium/templates/db/migrate/create_posts.rb +0 -19
- data/lib/generators/cambium/templates/lib/.DS_Store +0 -0
- data/lib/help/cambium +0 -7
- /data/{lib/generators/cambium/templates/app/assets/javascripts/backbone/collections → app/assets/javascripts/cambium/admin/templates}/.keep +0 -0
- /data/{lib/generators/cambium/templates/app/assets/javascripts/backbone → app/assets/javascripts/cambium/admin}/views/default_helpers.js.coffee +0 -0
- /data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/__default.scss +0 -0
- /data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/_buttons.scss +0 -0
- /data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/_components.scss +0 -0
- /data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/_forms.scss +0 -0
- /data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/_helpers.scss +0 -0
- /data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/_images.scss +0 -0
- /data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/_nav.scss +0 -0
- /data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/_tables.scss +0 -0
- /data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/_typography.scss +0 -0
- /data/{lib/generators/cambium/templates/app/assets/stylesheets → app/assets/stylesheets/cambium}/admin/bones/bones-config/_wireframe.scss +0 -0
- /data/{lib/generators/cambium/templates/app → app}/models/concerns/idx.rb +0 -0
- /data/{lib/generators/cambium/templates/app → app}/models/concerns/image_cropper.rb +0 -0
- /data/{lib/generators/cambium/templates/app → app}/models/concerns/publishable.rb +0 -0
- /data/{lib/generators/cambium/templates/app → app}/models/concerns/slug.rb +0 -0
- /data/{lib/generators/cambium/templates/app → app}/models/concerns/tags.rb +0 -0
- /data/lib/generators/{cambium/helpers → helpers}/_autoloader.rb +0 -0
- /data/lib/generators/{cambium/templates/app/assets/javascripts/backbone → templates/app/assets/javascripts}/routers/router.js.coffee +0 -0
- /data/lib/generators/{cambium/templates/app/assets/javascripts/backbone/models → templates/app/assets/javascripts/templates}/.keep +0 -0
- /data/lib/generators/{cambium/templates → templates}/app/assets/stylesheets/application.scss +0 -0
- /data/lib/generators/{cambium/templates → templates}/app/views/home/index.html.erb +0 -0
- /data/lib/generators/{cambium/templates → templates}/db/seeds.rb +0 -0
- /data/{lib/generators/cambium/templates/vendor → vendor}/assets/javascripts/modernizr.js +0 -0
- /data/{lib/generators/cambium/templates/vendor → vendor}/assets/stylesheets/normalize.scss +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 99887d04074970f7daa654f9fa7ff4eea5c3f0e7
|
|
4
|
+
data.tar.gz: 3933cd4cb15076a974d220c7331ad161fa563d33
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: db9cf246df9160103a22885bdca5dd61a01619ced628d36902913961190a75030f865b4902eb904b86b86b41b3efc6299a8fed04b711030dce2d8d4455eccb21
|
|
7
|
+
data.tar.gz: 162da5ef45897e73adeaa75e82dbd89076e41c3be2df3ea387dd1b676e6abf9f9fcccbf54f400e7d4fd6efb4c660c4f9389f96154fa8648b8310d92992661248
|
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
|
@@ -1,30 +1,354 @@
|
|
|
1
|
-
|
|
1
|
+
Cambium
|
|
2
|
+
==========
|
|
2
3
|
|
|
3
|
-
Cambium
|
|
4
|
-
worrying about repetitive tasks.
|
|
4
|
+
Cambium serves three main purposes in Ruby on Rails applications:
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
1. Bootstrap Rails' standard installation by performing additional setup
|
|
7
|
+
(things I find myself doing at the beginning of every project).
|
|
8
|
+
2. Facilitate development throughout the life of any project by abstracting
|
|
9
|
+
repeatable bits of code.
|
|
10
|
+
3. Provide a simple, but flexible CMS for those applications that require it.
|
|
8
11
|
|
|
9
|
-
|
|
12
|
+
For now, the documentation will be continued in the README. This will be moved
|
|
13
|
+
out over time.
|
|
10
14
|
|
|
11
|
-
|
|
15
|
+
App Setup
|
|
16
|
+
----------
|
|
12
17
|
|
|
13
|
-
|
|
18
|
+
Cambium lets you get up and running real fast. First, start you rails project
|
|
19
|
+
as you normally would.
|
|
14
20
|
|
|
15
|
-
|
|
21
|
+
```text
|
|
22
|
+
$ rails new my_app -d postgresql
|
|
23
|
+
```
|
|
16
24
|
|
|
17
|
-
|
|
25
|
+
> Note: Cambium only supports PostgreSQL. If you need to use another database,
|
|
26
|
+
> I suggest you add an option into Cambium and create a pull request. However,
|
|
27
|
+
> I strongly encourage you to give PostgreSQL a try.
|
|
18
28
|
|
|
19
|
-
|
|
29
|
+
Add Cambium to your Gemfile.
|
|
20
30
|
|
|
21
|
-
|
|
31
|
+
```ruby
|
|
32
|
+
gem 'cambium', '>= 1.0.0'
|
|
33
|
+
```
|
|
22
34
|
|
|
23
|
-
|
|
35
|
+
> I would probably commit at this time (so it's easy to rollback if you don't
|
|
36
|
+
> like something Cambium did).
|
|
24
37
|
|
|
25
|
-
|
|
38
|
+
Generate Cambium's (simple) configuration file.
|
|
26
39
|
|
|
27
|
-
|
|
40
|
+
```text
|
|
41
|
+
$ bundle exec rails g cambium:install
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Edit the config (config/initializers/cambium.rb) to your liking.
|
|
45
|
+
|
|
46
|
+
Then, get your PostgreSQL database configured by editing `config/database.yml`
|
|
47
|
+
to your appropriate settings.
|
|
48
|
+
|
|
49
|
+
> **Make sure you do not commit between this step and finishing the setup
|
|
50
|
+
> process.** Cambium will ignore this database.yml file, which is good, as it
|
|
51
|
+
> may contain sensitive data.
|
|
52
|
+
|
|
53
|
+
Then, create your database:
|
|
54
|
+
|
|
55
|
+
```text
|
|
56
|
+
$ bundle exec rake db:create
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Although optional, I suggest you at least start with the default `Gemfile`.
|
|
60
|
+
|
|
61
|
+
```text
|
|
62
|
+
$ bundle exec rails g cambium:gemfile
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Remove the gems you don't want and then bundle.
|
|
66
|
+
|
|
67
|
+
```text
|
|
68
|
+
$ bundle install
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
And now you can run Cambium's auto-setup generator.
|
|
72
|
+
|
|
73
|
+
```text
|
|
74
|
+
$ bundle exec rails g cambium:app
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
When you're done, you can migrate (and annotate), and be on your way!
|
|
78
|
+
|
|
79
|
+
```text
|
|
80
|
+
$ bundle exec rake db:migrate
|
|
81
|
+
$ bundle exec annotate
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Admin / CMS
|
|
85
|
+
----------
|
|
86
|
+
|
|
87
|
+
### Install CMS
|
|
88
|
+
|
|
89
|
+
If you want to also setup a CMS, it's as simple as running the generator.
|
|
90
|
+
|
|
91
|
+
```text
|
|
92
|
+
$ bundle exec rails g cambium:admin
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
Run the migrations Cambium created with the admin generator.
|
|
96
|
+
|
|
97
|
+
```text
|
|
98
|
+
$ bundle exec rake db:migrate
|
|
99
|
+
$ bundle exec annotate
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Make sure Cambium's engine is mounted in your `config/routes.rb` file.
|
|
103
|
+
|
|
104
|
+
```ruby
|
|
105
|
+
mount Cambium::Engine => '/'
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
It's best to mount it at the root because Cambium automatically namespaces its
|
|
109
|
+
routes.
|
|
110
|
+
|
|
111
|
+
At this point, you should be able to go to `localhost:3000/admin` and be
|
|
112
|
+
redirected to the login page (if you are not signed in). Once you have an admin
|
|
113
|
+
user and sign in successfully, you will be redirected to the admin dashboard.
|
|
114
|
+
|
|
115
|
+
### Adding Users
|
|
116
|
+
|
|
117
|
+
We have a generator for creating a new user, which takes an `--admin` option if
|
|
118
|
+
you want the user to have admin access.
|
|
119
|
+
|
|
120
|
+
```text
|
|
121
|
+
$ bundle exec rails g cambium:user [username] [password] [--admin / --no-admin]
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### Generating Admin Controllers
|
|
125
|
+
|
|
126
|
+
A big portion of Cambium's power lies in its ability to spin up feature-full
|
|
127
|
+
CMS controllers and views in a snap.
|
|
128
|
+
|
|
129
|
+
Before you generate an admin controller, you need to make sure you have a
|
|
130
|
+
working data model. It's best if the model already has the columns you know
|
|
131
|
+
you're going to need (it's easy to add or remove later, but quicker if you have
|
|
132
|
+
what you need at the beginning).
|
|
133
|
+
|
|
134
|
+
Then you can run the generator.
|
|
135
|
+
|
|
136
|
+
```text
|
|
137
|
+
$ bundle exec rails g cambium:controller [model]
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**Be sure you are using the proper class name of the data model.**
|
|
141
|
+
|
|
142
|
+
For example, if I have a `Page` model, this would be the command:
|
|
143
|
+
|
|
144
|
+
```text
|
|
145
|
+
$ bundle exec rails g cambium:controller Page
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
> Note: I'm working on making Cambium more powerful all the time. At the
|
|
149
|
+
> moment, it works best with simple form-type data.
|
|
150
|
+
|
|
151
|
+
The generator does a few things:
|
|
152
|
+
|
|
153
|
+
* Uses the standard Rails generate to generate a template in the `admin`
|
|
154
|
+
namespace (using the example, your file would be at
|
|
155
|
+
`app/controllers/admin/pages_controller.rb`).
|
|
156
|
+
* Adds a namespaced route to your routes file (`config/routes.rb`).
|
|
157
|
+
* Adds the Cambium config file (at `config/admin/pages.yml` in this example).
|
|
158
|
+
* Adds a generic sidebar item for your controller at
|
|
159
|
+
`config/admin/sidebar.yml`.
|
|
160
|
+
|
|
161
|
+
See below for information on the sidebar and controller settings.
|
|
162
|
+
|
|
163
|
+
### Sidebar Settings
|
|
164
|
+
|
|
165
|
+
The sidebar in Cambium is driven by your `config/admin/sidebar.yml` settings
|
|
166
|
+
file. It's pretty semantic and simple.
|
|
167
|
+
|
|
168
|
+
The default sidebar is:
|
|
169
|
+
|
|
170
|
+
```yaml
|
|
171
|
+
dashboard:
|
|
172
|
+
label: Dashboard
|
|
173
|
+
route: cambium.admin_dashboard
|
|
174
|
+
icon: dashboard
|
|
175
|
+
users:
|
|
176
|
+
label: Users
|
|
177
|
+
route: cambium.admin_users
|
|
178
|
+
icon: users
|
|
179
|
+
controllers: ['users']
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
The important thing to remember is you have to define a unique key for each
|
|
183
|
+
item. For example, if you accidentally named `users` as `dashboard`, then only
|
|
184
|
+
the last `dashboard` item gets rendered.
|
|
185
|
+
|
|
186
|
+
The options are:
|
|
187
|
+
|
|
188
|
+
* `label`: Text within the sidebar link
|
|
189
|
+
* `route`: Route to apply to the link (for custom settings, replace `cambium`
|
|
190
|
+
with `main_app`)
|
|
191
|
+
* `icon`: The name of the icon to use, pulled from [IcoMoon's free
|
|
192
|
+
set](https://icomoon.io/#preview-free)
|
|
193
|
+
* `controllers`: An array of controllers which, if the current page is using
|
|
194
|
+
one of the controllers, the sidebar item will be highlighted (with an
|
|
195
|
+
`active` class)
|
|
196
|
+
|
|
197
|
+
### Controller Settings
|
|
198
|
+
|
|
199
|
+
The controller settings are what drive the behavior of Cambium. And it's why,
|
|
200
|
+
for simple models, you don't have to add any code to your controller and you
|
|
201
|
+
don't need any views.
|
|
202
|
+
|
|
203
|
+
Each controller's settings file is named for that controller, and can be found
|
|
204
|
+
in `config/admin`. For example, the users controller settings are at
|
|
205
|
+
`config/admin/users.yml`.
|
|
206
|
+
|
|
207
|
+
Here is the default set for the users controller:
|
|
208
|
+
|
|
209
|
+
```yaml
|
|
210
|
+
model: User
|
|
211
|
+
table:
|
|
212
|
+
title: Site Users
|
|
213
|
+
scope: all
|
|
214
|
+
columns:
|
|
215
|
+
email:
|
|
216
|
+
heading: Email
|
|
217
|
+
buttons:
|
|
218
|
+
new: New User
|
|
219
|
+
export:
|
|
220
|
+
button: Export Users
|
|
221
|
+
columns:
|
|
222
|
+
name:
|
|
223
|
+
label: Name
|
|
224
|
+
email:
|
|
225
|
+
label: Email
|
|
226
|
+
form:
|
|
227
|
+
new: &new
|
|
228
|
+
title: New User
|
|
229
|
+
fields:
|
|
230
|
+
name:
|
|
231
|
+
type: string
|
|
232
|
+
email:
|
|
233
|
+
type: string
|
|
234
|
+
password:
|
|
235
|
+
type: password
|
|
236
|
+
password_confirmation:
|
|
237
|
+
type: password
|
|
238
|
+
edit:
|
|
239
|
+
<<: *new
|
|
240
|
+
title: Edit User
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
Every setting plays a role. Let's step through each one.
|
|
244
|
+
|
|
245
|
+
* `model`: The name (with class case) of the model to be used for this
|
|
246
|
+
controller
|
|
247
|
+
* `table:title`: The title to show on the controller's index view.
|
|
248
|
+
* `table:scope`: The scope method to run on the model. Most of the time this
|
|
249
|
+
will be `all`, but maybe you need to order, limit, or filter your results.
|
|
250
|
+
You need to do this through an [ActiveRecord
|
|
251
|
+
Scope](http://guides.rubyonrails.org/active_record_querying.html)
|
|
252
|
+
* `table:columns:[column]`: Each column gets its own unique key, which
|
|
253
|
+
distinguishes it from others
|
|
254
|
+
* `table:columns:[column]:heading`: The label for the column in the data table.
|
|
255
|
+
* `table:buttons:new`: Label for the "New" button. If you don't want a
|
|
256
|
+
new button, remove this setting.
|
|
257
|
+
* `export`: This section handles an export option for your data table. Remove
|
|
258
|
+
it if you don't want to offer that.
|
|
259
|
+
* `export:button`: The label for the export button.
|
|
260
|
+
* `export:columns:[column]`: Each column in the exported file gets its own
|
|
261
|
+
unique key, which distinguishes it from others
|
|
262
|
+
* `export:columns:[column]:label`: The heading in the exported file for that
|
|
263
|
+
column.
|
|
264
|
+
* `export:columns:[column]:output`: An optional method you can pass to each
|
|
265
|
+
object to help with display.
|
|
266
|
+
* `form`: Settings for the form.
|
|
267
|
+
* `form:[new/edit]`: New is the defaut, and most of the time Edit will inherit
|
|
268
|
+
from new (the `<<: *new` is what handles that). But you can optionally
|
|
269
|
+
override new values for your edit form.
|
|
270
|
+
* `form:[new/edit]:title`: Title for the form page.
|
|
271
|
+
* `form:[new/edit]:fields:[field]`: Each form field gets its own unique key to
|
|
272
|
+
set it apart from the others.
|
|
273
|
+
* `form:[new/edit]:fields:[field]:type`: The type of the HTML field to render,
|
|
274
|
+
which uses [SimpleForm](https://github.com/plataformatec/simple_form).
|
|
275
|
+
|
|
276
|
+
> Note: Aside from the usual form field types, Cambium uses [Mark It
|
|
277
|
+
> Zero!](https://github.com/seancdavis/mark_it_zero) to render markdown
|
|
278
|
+
> editors. You can pass `markdown` as the `type` option and it will give you a
|
|
279
|
+
> markdown editor.
|
|
280
|
+
|
|
281
|
+
Model Options
|
|
282
|
+
----------
|
|
283
|
+
|
|
284
|
+
Cambium makes use of many gems, and uses the behavior of those gems to drive
|
|
285
|
+
much of its power. In many cases, this requires added options to your model.
|
|
286
|
+
|
|
287
|
+
### Searchable Models
|
|
288
|
+
|
|
289
|
+
To make items searchable (in the CMS and in the app), we use
|
|
290
|
+
[pg_search](https://github.com/Casecommons/pg_search). You need to include the
|
|
291
|
+
`PgSearch` module, and then call out the columns you want to search.
|
|
292
|
+
|
|
293
|
+
For example, if you have a `Page` model and you want `title` and `body` to be
|
|
294
|
+
searchable, you're model might look like this:
|
|
295
|
+
|
|
296
|
+
```ruby
|
|
297
|
+
class Page < ActiveRecord::Base
|
|
298
|
+
include PgSearch
|
|
299
|
+
multisearchable :against => [:title, :body]
|
|
300
|
+
end
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
### Activity Log
|
|
304
|
+
|
|
305
|
+
If you want to track the history of a model's records (which also means adding
|
|
306
|
+
it to the activity log in the CMS), you need to add `has_paper_trail` to your
|
|
307
|
+
model.
|
|
308
|
+
|
|
309
|
+
```ruby
|
|
310
|
+
class Page < ActiveRecord::Base
|
|
311
|
+
has_paper_trail
|
|
312
|
+
end
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
The activity log in particular makes use of the `to_s` method for the model. In
|
|
316
|
+
this way, we make no assumptions about the default attribute that describes a
|
|
317
|
+
model's record. Usually this is something like `title` or `name`. If it were
|
|
318
|
+
`title`, then your model (from above) is:
|
|
319
|
+
|
|
320
|
+
```ruby
|
|
321
|
+
class Page < ActiveRecord::Base
|
|
322
|
+
has_paper_trail
|
|
323
|
+
|
|
324
|
+
def to_s
|
|
325
|
+
title
|
|
326
|
+
end
|
|
327
|
+
end
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
### Markdown to HTML
|
|
331
|
+
|
|
332
|
+
As mentioned above, Cambium uses [Mark It
|
|
333
|
+
Zero!](https://github.com/seancdavis/mark_it_zero) to render markdown editors.
|
|
334
|
+
You, therefore, also have the option to store a markdown text attribute and
|
|
335
|
+
have it automatically converted to HTML using the `after_save` callback.
|
|
336
|
+
|
|
337
|
+
If, for our `Page` example, you have `body_markdown` and `body_html` fields,
|
|
338
|
+
you can add your `body_markdown` attribute to the form and then the following
|
|
339
|
+
to your model:
|
|
340
|
+
|
|
341
|
+
```ruby
|
|
342
|
+
class Page < ActiveRecord::Base
|
|
343
|
+
converts_markdown :body_markdown, :body_html
|
|
344
|
+
end
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
See [this section](https://github.com/seancdavis/mark_it_zero#converting-to-
|
|
348
|
+
html) of the Mark It Zero! docs for more information and options.
|
|
349
|
+
|
|
350
|
+
Contributing
|
|
351
|
+
----------
|
|
28
352
|
|
|
29
353
|
1. Fork it ( https://github.com/[my-github-username]/cambium/fork )
|
|
30
354
|
2. Create your feature branch (`git checkout -b my-new-feature`)
|
|
@@ -1,29 +1,23 @@
|
|
|
1
1
|
#= require jquery
|
|
2
2
|
#= require jquery_ujs
|
|
3
|
-
#= require
|
|
4
|
-
#= require jquery-fileupload/vendor/tmpl
|
|
3
|
+
#= require mark_it_zero/mark_it_zero
|
|
5
4
|
#= require pickadate/picker
|
|
6
5
|
#= require pickadate/picker.date
|
|
7
6
|
#= require pickadate/picker.time
|
|
8
|
-
#= require admin/wysihtml5
|
|
9
|
-
#= require admin/parser_rules/custom
|
|
10
7
|
#= require underscore
|
|
11
8
|
#= require backbone
|
|
12
9
|
#= require_self
|
|
13
10
|
#= require_tree ./templates
|
|
14
|
-
#= require_tree ./models
|
|
15
|
-
#= require_tree ./collections
|
|
16
11
|
#= require_tree ./views
|
|
17
12
|
#= require_tree ./routers
|
|
18
13
|
|
|
19
|
-
window.
|
|
20
|
-
Models: {}
|
|
14
|
+
window.App =
|
|
21
15
|
Collections: {}
|
|
22
16
|
Routers: {}
|
|
23
17
|
Views: {}
|
|
24
18
|
|
|
25
|
-
$
|
|
26
|
-
new
|
|
19
|
+
$ ->
|
|
20
|
+
new App.Routers.Router
|
|
27
21
|
|
|
28
22
|
# Enable pushState for compatible browsers
|
|
29
23
|
enablePushState = true
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
class App.Routers.Router extends Backbone.Router
|
|
2
|
+
|
|
3
|
+
initialize: =>
|
|
4
|
+
@autoLoadClass()
|
|
5
|
+
|
|
6
|
+
autoLoadClass: =>
|
|
7
|
+
# This is a good place to automatically load classes that may be dependent
|
|
8
|
+
# on a page element, and not necessarily the route.
|
|
9
|
+
#
|
|
10
|
+
# For example:
|
|
11
|
+
#
|
|
12
|
+
# new App.Views.Nav if $('.main-nav').length > 0
|
|
13
|
+
#
|
|
14
|
+
# Or, perhaps you need to load a class on every page. Do that, here, too,
|
|
15
|
+
# like this:
|
|
16
|
+
#
|
|
17
|
+
new App.Views.DefaultHelpers
|
|
18
|
+
new App.Views.DropdownMenu if $('.dropdown-menu').length > 0
|
|
19
|
+
new App.Views.Pickadate
|
|
20
|
+
|
|
21
|
+
routes:
|
|
22
|
+
'': 'initHomePage'
|
|
23
|
+
|
|
24
|
+
initHomePage: ->
|
|
25
|
+
console.log "Welcome to this awesome site, built using Cambium!"
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
class App.Views.DropdownMenu extends Backbone.View
|
|
2
|
+
|
|
3
|
+
el: 'body'
|
|
4
|
+
|
|
5
|
+
events:
|
|
6
|
+
'click .dropdown-trigger': 'showDropdown'
|
|
7
|
+
|
|
8
|
+
initialize: ->
|
|
9
|
+
$(document).click(@checkHideDropdown)
|
|
10
|
+
|
|
11
|
+
showDropdown: (e) ->
|
|
12
|
+
e.preventDefault()
|
|
13
|
+
$(e.target).closest('.dropdown-container').find('.dropdown-menu')
|
|
14
|
+
.toggleClass('active')
|
|
15
|
+
true
|
|
16
|
+
|
|
17
|
+
checkHideDropdown: (e) ->
|
|
18
|
+
if(
|
|
19
|
+
!$(e.target).is('.dropdown-menu') &&
|
|
20
|
+
!$(e.target).is('.dropdown-container') &&
|
|
21
|
+
$(e.target).parents('.dropdown-container').length == 0
|
|
22
|
+
)
|
|
23
|
+
$('.dropdown-menu').removeClass('active')
|
|
24
|
+
true
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
class App.Views.Pickadate extends Backbone.View
|
|
2
|
+
|
|
3
|
+
el: 'body'
|
|
4
|
+
|
|
5
|
+
initialize: ->
|
|
6
|
+
$('input.pickadate').pickadate()
|
|
7
|
+
$('input.pickatime').pickatime()
|
|
8
|
+
if $('div.pickadatetime').length > 0
|
|
9
|
+
$('input.pickadatetime-date').pickadate()
|
|
10
|
+
$('input.pickadatetime-time').pickatime()
|
|
11
|
+
$('input.pickadatetime-date, input.pickadatetime-time').change (e) ->
|
|
12
|
+
parent = $(e.target).parents('div.pickadatetime').first()
|
|
13
|
+
val = parent.find('input.pickadatetime-date').val()
|
|
14
|
+
val = "#{val} #{parent.find('input.pickadatetime-time').val()}"
|
|
15
|
+
$(e.target).siblings('input.pickadatetime').first().val(val)
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
|
|
2
|
+
// ------------------------------------------ Vendor
|
|
3
|
+
|
|
4
|
+
@import 'bourbon';
|
|
5
|
+
@import 'cambium/admin/bones/bones';
|
|
6
|
+
@import 'pickadate/classic';
|
|
7
|
+
@import 'pickadate/classic.date';
|
|
8
|
+
@import 'pickadate/classic.time';
|
|
9
|
+
@import 'mark_it_zero/mark_it_zero';
|
|
10
|
+
|
|
11
|
+
// ------------------------------------------ Partials
|
|
12
|
+
|
|
13
|
+
@import 'cambium/admin/partials/globals';
|
|
14
|
+
@import 'cambium/admin/partials/typography';
|
|
15
|
+
@import 'cambium/admin/partials/wireframe';
|
|
16
|
+
@import 'cambium/admin/partials/components';
|
|
17
|
+
@import 'cambium/admin/partials/header';
|
|
18
|
+
@import 'cambium/admin/partials/page_title';
|
|
19
|
+
@import 'cambium/admin/partials/sidebar';
|
|
20
|
+
@import 'cambium/admin/partials/activity';
|
|
21
|
+
@import 'cambium/admin/partials/forms';
|
|
22
|
+
@import 'cambium/admin/partials/tables';
|
|
23
|
+
@import 'cambium/admin/partials/dashboard';
|
|
24
|
+
|
|
25
|
+
// ------------------------------------------ Optional Override
|
|
26
|
+
|
|
27
|
+
@import 'admin/admin';
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/* Color Palette
|
|
2
2
|
============================ */
|
|
3
|
-
$color-1: #
|
|
4
|
-
$color-2: #
|
|
5
|
-
$color-3: #
|
|
6
|
-
$color-4: #
|
|
7
|
-
$color-5: #
|
|
8
|
-
$color-dark: #
|
|
9
|
-
$color-light: #
|
|
3
|
+
$color-1: #77D5D3;
|
|
4
|
+
$color-2: #FED96E;
|
|
5
|
+
$color-3: #9DC2DD;
|
|
6
|
+
$color-4: #DB5F7B;
|
|
7
|
+
$color-5: #24A9A7;
|
|
8
|
+
$color-dark: #293541; // designed to be a dark color
|
|
9
|
+
$color-light: #FFFFFF; // designed to be a light color
|
|
10
10
|
|
|
11
11
|
// used primarily for notifications:
|
|
12
12
|
$color-warning: #CCA300;
|
|
@@ -2,50 +2,50 @@
|
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
4
|
* Welcome to Bones CSS Framework!
|
|
5
|
-
*
|
|
6
|
-
* This is the manifest file for Bones' CSS. It brings all files
|
|
5
|
+
*
|
|
6
|
+
* This is the manifest file for Bones' CSS. It brings all files
|
|
7
7
|
* together.
|
|
8
8
|
*
|
|
9
|
-
* To add or remove modules, simply comment or uncomment and then
|
|
9
|
+
* To add or remove modules, simply comment or uncomment and then
|
|
10
10
|
* use Compass to recompile and compress.
|
|
11
11
|
*
|
|
12
12
|
* Files are noted as recommended and required where applicable.
|
|
13
13
|
*
|
|
14
14
|
* Refer to the ../docs/ directory for more detailed instruction.
|
|
15
|
-
*
|
|
15
|
+
*
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
18
|
/* Vendor
|
|
19
19
|
============================ */
|
|
20
20
|
@import 'bones/vendor/normalize'; // highly recommended for cross-browser consistency
|
|
21
|
-
|
|
21
|
+
|
|
22
22
|
/* Config
|
|
23
23
|
============================ */
|
|
24
24
|
/*
|
|
25
|
-
* These are your configuration files. You should always
|
|
25
|
+
* These are your configuration files. You should always
|
|
26
26
|
* load all of these files, as the variable values are
|
|
27
27
|
* resolved and do not contribute any size to the final
|
|
28
28
|
* bones.css file.
|
|
29
29
|
*
|
|
30
30
|
*/
|
|
31
|
-
@import 'admin/bones/bones-config/colors';
|
|
32
|
-
@import 'admin/bones/bones-config/_default';
|
|
33
|
-
@import 'admin/bones/bones-config/wireframe';
|
|
34
|
-
@import 'admin/bones/bones-config/typography';
|
|
35
|
-
@import 'admin/bones/bones-config/buttons';
|
|
36
|
-
@import 'admin/bones/bones-config/forms';
|
|
37
|
-
@import 'admin/bones/bones-config/tables';
|
|
38
|
-
@import 'admin/bones/bones-config/nav';
|
|
39
|
-
@import 'admin/bones/bones-config/images';
|
|
40
|
-
@import 'admin/bones/bones-config/components';
|
|
41
|
-
@import 'admin/bones/bones-config/helpers';
|
|
31
|
+
@import 'cambium/admin/bones/bones-config/colors';
|
|
32
|
+
@import 'cambium/admin/bones/bones-config/_default';
|
|
33
|
+
@import 'cambium/admin/bones/bones-config/wireframe';
|
|
34
|
+
@import 'cambium/admin/bones/bones-config/typography';
|
|
35
|
+
@import 'cambium/admin/bones/bones-config/buttons';
|
|
36
|
+
@import 'cambium/admin/bones/bones-config/forms';
|
|
37
|
+
@import 'cambium/admin/bones/bones-config/tables';
|
|
38
|
+
@import 'cambium/admin/bones/bones-config/nav';
|
|
39
|
+
@import 'cambium/admin/bones/bones-config/images';
|
|
40
|
+
@import 'cambium/admin/bones/bones-config/components';
|
|
41
|
+
@import 'cambium/admin/bones/bones-config/helpers';
|
|
42
42
|
|
|
43
43
|
/* Main Styles
|
|
44
44
|
============================ */
|
|
45
45
|
@import 'bones/styles/_default'; // required
|
|
46
46
|
@import 'bones/styles/wireframe';
|
|
47
47
|
@import 'bones/styles/typography';
|
|
48
|
-
@import 'bones/styles/icons';
|
|
48
|
+
@import 'bones/styles/icons';
|
|
49
49
|
@import 'bones/styles/buttons';
|
|
50
50
|
@import 'bones/styles/forms';
|
|
51
51
|
@import 'bones/styles/tables';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
* {
|
|
2
|
+
font-family: 'Source Sans Pro', "Helvetica Neue", Helvetica, Arial, sans-serif;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
@mixin transition-all {
|
|
6
|
+
@include transition(all 0.25s ease-in-out);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
@mixin clear-list {
|
|
10
|
+
list-style-type: none;
|
|
11
|
+
margin: 0;
|
|
12
|
+
padding: 0;
|
|
13
|
+
li {
|
|
14
|
+
margin: 0;
|
|
15
|
+
padding: 0;
|
|
16
|
+
a {
|
|
17
|
+
margin: 0;
|
|
18
|
+
padding: 0;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
aside#activity {
|
|
2
|
+
background: $color-light-dark;
|
|
3
|
+
border-left: 1px solid $color-light-darker;
|
|
4
|
+
padding: 25px 10px;
|
|
5
|
+
@include box-sizing(border-box);
|
|
6
|
+
article {
|
|
7
|
+
margin: 0 0 30px 0;
|
|
8
|
+
&:last-child {
|
|
9
|
+
margin-bottom: 0;
|
|
10
|
+
}
|
|
11
|
+
.avatar-container {
|
|
12
|
+
margin: 5px 10px 0 0;
|
|
13
|
+
border-color: $color-light-darker;
|
|
14
|
+
vertical-align: top;
|
|
15
|
+
width: 28px;
|
|
16
|
+
height: 28px;
|
|
17
|
+
}
|
|
18
|
+
.content {
|
|
19
|
+
display: inline-block;
|
|
20
|
+
width: 185px;
|
|
21
|
+
vertical-align: top;
|
|
22
|
+
p {
|
|
23
|
+
margin: 0;
|
|
24
|
+
font-size: 14px;
|
|
25
|
+
line-height: 18px;
|
|
26
|
+
&.action {
|
|
27
|
+
margin-top: 5px;
|
|
28
|
+
}
|
|
29
|
+
&.date {
|
|
30
|
+
color: darken($color-light-darkest, 15%);
|
|
31
|
+
font-weight: 400;
|
|
32
|
+
font-size: 12px;
|
|
33
|
+
line-height: 12px;
|
|
34
|
+
}
|
|
35
|
+
strong {
|
|
36
|
+
font-size: inherit;
|
|
37
|
+
line-height: inherit;
|
|
38
|
+
a {
|
|
39
|
+
font-size: inherit;
|
|
40
|
+
line-height: inherit;
|
|
41
|
+
font-weight: inherit;
|
|
42
|
+
color: inherit;
|
|
43
|
+
@include transition-all;
|
|
44
|
+
&:hover {
|
|
45
|
+
color: $color-dark-lightest;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|