trusty-cms 2.0.9.pre.beta → 2.0.10.pre.beta

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 (67) hide show
  1. checksums.yaml +5 -13
  2. data/.gitignore +2 -0
  3. data/Gemfile +5 -1
  4. data/Gemfile.lock +30 -12
  5. data/Rakefile +24 -4
  6. data/app/assets/javascripts/admin/page-edit.js +3 -3
  7. data/app/assets/javascripts/admin/tabcontrol.js.erb +14 -14
  8. data/app/assets/javascripts/admin/treetable.js +4 -2
  9. data/app/assets/stylesheets/admin/_base.scss +3 -3
  10. data/app/assets/stylesheets/admin/modules/_links.scss +1 -1
  11. data/app/assets/stylesheets/admin/partials/_content.scss +9 -2
  12. data/app/assets/stylesheets/admin/partials/_forms.scss +59 -17
  13. data/app/assets/stylesheets/admin/partials/_layout.scss +1 -2
  14. data/app/assets/stylesheets/admin/partials/_popup.scss +0 -11
  15. data/app/assets/stylesheets/admin/partials/_tabcontrol.scss +4 -4
  16. data/app/assets/stylesheets/admin/partials/_typography.scss +4 -0
  17. data/app/helpers/admin/node_helper.rb +4 -4
  18. data/app/models/trusty_cms/config.rb +1 -0
  19. data/app/views/admin/pages/edit.html.haml +1 -1
  20. data/app/views/admin/pages/remove.html.haml +1 -1
  21. data/app/views/admin/preferences/edit.html.haml +35 -35
  22. data/app/views/admin/users/_password_fields.html.haml +1 -1
  23. data/config/application.rb +2 -1
  24. data/config/boot.rb +0 -1
  25. data/config/environments/development.rb +1 -0
  26. data/config/environments/test.rb +2 -4
  27. data/config/routes.rb +1 -0
  28. data/lib/generators/trusty_cms/templates/routes.rb.erb +0 -1
  29. data/lib/tasks/database.rake +1 -3
  30. data/lib/trusty_cms.rb +1 -1
  31. data/spec/dummy/README.rdoc +28 -0
  32. data/spec/dummy/Rakefile +5 -0
  33. data/spec/dummy/bin/bundle +3 -0
  34. data/spec/dummy/bin/rails +4 -0
  35. data/spec/dummy/bin/rake +4 -0
  36. data/spec/dummy/bin/setup +29 -0
  37. data/spec/dummy/config.ru +4 -0
  38. data/spec/dummy/config/application.rb +151 -0
  39. data/spec/dummy/config/boot.rb +6 -0
  40. data/spec/dummy/config/database.yml +28 -0
  41. data/spec/dummy/config/environment.rb +5 -0
  42. data/spec/dummy/config/environments/development.rb +49 -0
  43. data/spec/dummy/config/environments/production.rb +79 -0
  44. data/spec/dummy/config/environments/test.rb +42 -0
  45. data/spec/dummy/config/initializers/assets.rb +11 -0
  46. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  47. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  48. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  49. data/spec/dummy/config/initializers/inflections.rb +16 -0
  50. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  51. data/spec/dummy/config/initializers/session_store.rb +3 -0
  52. data/spec/dummy/config/initializers/trusty_cms_config.rb +20 -0
  53. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  54. data/spec/dummy/config/locales/en.yml +23 -0
  55. data/spec/dummy/config/routes.rb +0 -0
  56. data/spec/dummy/config/secrets.yml +22 -0
  57. data/spec/dummy/db/schema.rb +122 -0
  58. data/spec/dummy/public/404.html +67 -0
  59. data/spec/dummy/public/422.html +67 -0
  60. data/spec/dummy/public/500.html +66 -0
  61. data/spec/dummy/public/favicon.ico +0 -0
  62. data/spec/features/pages_spec.rb +0 -1
  63. data/spec/helpers/regions_helper_spec.rb +1 -1
  64. data/spec/rails_helper.rb +3 -4
  65. data/spec/spec_helper.rb +13 -77
  66. data/trusty_cms.gemspec +2 -1
  67. metadata +157 -76
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- YzZlNzVjNDNjNWJlYjUxOTZiOWM2NzcxOWUxMzY1NzI4ZjA4ZDI3NQ==
5
- data.tar.gz: !binary |-
6
- NWY2YThhMzczMWQ3NjAzOTI2YWQ4OWYxOWJhZDM1MzUyM2M5MDU4NQ==
2
+ SHA1:
3
+ metadata.gz: a7590ad24723593fb10926b12ed30b81acbae091
4
+ data.tar.gz: f00f59504392dabf938b509478dbbe28b8a6ab92
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- NDk4OWI0ZWViYThjNDlkMWIxYmQwYTdhY2RiMTBiZTI5ZWE2MGU2ZjY5ZjU4
10
- MjJlZjVjYjg0MzRiZjQxMjIwNTYzZTI2MjA3M2JiYmQyZmI2NmVkNDg5OGRi
11
- MDI5OGU3MmZkZmU2ZDY5ZjFmNDFhY2I2OGE3MjE0NjE2NGZmNjk=
12
- data.tar.gz: !binary |-
13
- NGJkMzNmYzE3ODNhMTFhNmY5NGFhMTgxYjFlYzNmYjM0M2ZlY2Y1Mjg1ZWI2
14
- NmMwYzE0YWRiMWViMGUzNjYyZjFjYWU3YzcxYWFiYjEyZWQxZDQyNjU1YzQz
15
- YmFlMzdlNzNiZmY4ZDljOWFiOWQ0YmIxNWEzYjhjMWI5NTA1MmY=
6
+ metadata.gz: 17828472ac5124c3b4727409edd75321f578d96b4dec89dcfd8ecad5ffdbacb61e36a4ff494abfb9a5ab3d52905d62e146196218d69f5b976782f590f7a1d32a
7
+ data.tar.gz: e629dc11e7fb3fdbb7886c0b424f6bc8813127592b2cc3cb4c8279d16892a6a1485839fe88bd13b469e39ab54e1dccacef75aaf226037b8f33e1d6a6b37d6478
data/.gitignore CHANGED
@@ -3,6 +3,8 @@ db/*.db
3
3
  log/*.log
4
4
  pkg
5
5
  tmp/*
6
+ spec/dummy/log/*.log
7
+ spec/dummy/tmp/*
6
8
  .DS_Store
7
9
  .svn
8
10
  TAGS
data/Gemfile CHANGED
@@ -7,7 +7,7 @@ source 'https://rubygems.org'
7
7
  # requires radiant and therefore pulls in every
8
8
  # dependency mentioned in radiant.gemspec.
9
9
 
10
- gem 'trustygems', '~> 0.1.0'
10
+ gem 'trustygems', '~> 0.2.0'
11
11
 
12
12
  gemspec
13
13
 
@@ -42,4 +42,8 @@ group :development, :test do
42
42
  gem 'database_cleaner', '~> 1.3.0'
43
43
  gem 'poltergeist', '~> 1.5.1'
44
44
  gem "ckeditor", "~> 4.1.0"
45
+ gem 'factory_girl_rails', '~> 4.5.0'
46
+ gem 'rails-observers'
47
+ gem "protected_attributes"
48
+ gem "pry-byebug"
45
49
  end
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- trusty-cms (2.0.9.pre.beta)
4
+ trusty-cms (2.0.10.pre.beta)
5
5
  RedCloth (~> 4.2)
6
6
  acts_as_tree (~> 2.1)
7
7
  bundler (~> 1.7)
@@ -30,6 +30,7 @@ GEM
30
30
  remote: https://rubygems.org/
31
31
  specs:
32
32
  RedCloth (4.2.9)
33
+ RedCloth (4.2.9-java)
33
34
  actionmailer (4.2.3)
34
35
  actionpack (= 4.2.3)
35
36
  actionview (= 4.2.3)
@@ -68,8 +69,10 @@ GEM
68
69
  acts_as_tree (2.2.0)
69
70
  activerecord (>= 3.0.0)
70
71
  addressable (2.3.8)
71
- arel (6.0.2)
72
+ arel (6.0.3)
72
73
  builder (3.2.2)
74
+ byebug (5.0.0)
75
+ columnize (= 0.9.0)
73
76
  capybara (2.3.0)
74
77
  mime-types (>= 1.16)
75
78
  nokogiri (>= 1.3.3)
@@ -77,7 +80,7 @@ GEM
77
80
  rack-test (>= 0.5.4)
78
81
  xpath (~> 2.0)
79
82
  chunky_png (1.3.4)
80
- ckeditor (4.1.2)
83
+ ckeditor (4.1.3)
81
84
  cocaine
82
85
  orm_adapter (~> 0.5.0)
83
86
  climate_control (0.0.3)
@@ -86,6 +89,7 @@ GEM
86
89
  cocaine (0.5.7)
87
90
  climate_control (>= 0.0.3, < 1.0)
88
91
  coderay (1.1.0)
92
+ columnize (0.9.0)
89
93
  compass (1.0.3)
90
94
  chunky_png (~> 1.2)
91
95
  compass-core (~> 1.0.2)
@@ -108,14 +112,19 @@ GEM
108
112
  rails (>= 3.0)
109
113
  diff-lcs (1.2.5)
110
114
  erubis (2.7.0)
111
- eventmachine (1.0.7)
112
- eventmachine (1.0.7-java)
115
+ eventmachine (1.0.8)
116
+ eventmachine (1.0.8-java)
113
117
  execjs (2.5.2)
118
+ factory_girl (4.5.0)
119
+ activesupport (>= 3.0.0)
120
+ factory_girl_rails (4.5.0)
121
+ factory_girl (~> 4.5.0)
122
+ railties (>= 3.0.0)
114
123
  ffi (1.9.10)
115
124
  ffi (1.9.10-java)
116
- globalid (0.3.5)
125
+ globalid (0.3.6)
117
126
  activesupport (>= 4.1.0)
118
- haml (4.0.6)
127
+ haml (4.0.7)
119
128
  tilt
120
129
  haml-rails (0.9.0)
121
130
  actionpack (>= 4.0.1)
@@ -123,7 +132,7 @@ GEM
123
132
  haml (>= 4.0.6, < 5.0)
124
133
  html2haml (>= 1.0.1)
125
134
  railties (>= 4.0.1)
126
- highline (1.7.2)
135
+ highline (1.7.3)
127
136
  hike (1.2.3)
128
137
  html2haml (2.0.0)
129
138
  erubis (~> 2.7.0)
@@ -149,7 +158,7 @@ GEM
149
158
  method_source (0.8.2)
150
159
  mime-types (2.6.1)
151
160
  mini_portile (0.6.2)
152
- minitest (5.7.0)
161
+ minitest (5.8.0)
153
162
  multi_json (1.11.2)
154
163
  mysql (2.9.1)
155
164
  nokogiri (1.6.6.2)
@@ -172,6 +181,9 @@ GEM
172
181
  method_source (~> 0.8.1)
173
182
  slop (~> 3.4)
174
183
  spoon (~> 0.0)
184
+ pry-byebug (3.2.0)
185
+ byebug (~> 5.0)
186
+ pry (~> 0.10)
175
187
  rack (1.6.4)
176
188
  rack-cache (1.2)
177
189
  rack (>= 0.4)
@@ -197,6 +209,8 @@ GEM
197
209
  rails-deprecated_sanitizer (>= 1.0.1)
198
210
  rails-html-sanitizer (1.0.2)
199
211
  loofah (~> 2.0)
212
+ rails-observers (0.1.2)
213
+ activemodel (~> 4.0)
200
214
  railties (4.2.3)
201
215
  actionpack (= 4.2.3)
202
216
  activesupport (= 4.2.3)
@@ -225,7 +239,7 @@ GEM
225
239
  rspec-mocks (~> 3.0.0)
226
240
  rspec-support (~> 3.0.0)
227
241
  rspec-support (3.0.4)
228
- ruby_parser (3.7.0)
242
+ ruby_parser (3.7.1)
229
243
  sexp_processor (~> 4.1)
230
244
  sass (3.4.16)
231
245
  sass-rails (5.0.1)
@@ -259,7 +273,7 @@ GEM
259
273
  thread_safe (0.3.5)
260
274
  thread_safe (0.3.5-java)
261
275
  tilt (1.4.1)
262
- trustygems (0.1.0)
276
+ trustygems (0.2.1)
263
277
  rake
264
278
  tzinfo (1.2.2)
265
279
  thread_safe (~> 0.1)
@@ -284,10 +298,14 @@ DEPENDENCIES
284
298
  ckeditor (~> 4.1.0)
285
299
  compass-rails (~> 2.0.1)
286
300
  database_cleaner (~> 1.3.0)
301
+ factory_girl_rails (~> 4.5.0)
287
302
  launchy (~> 2.4.2)
288
303
  poltergeist (~> 1.5.1)
304
+ protected_attributes
289
305
  pry (~> 0.10.0)
306
+ pry-byebug
307
+ rails-observers
290
308
  rspec-rails (~> 3.0.0)
291
309
  thin (~> 1.6.2)
292
310
  trusty-cms!
293
- trustygems (~> 0.1.0)
311
+ trustygems (~> 0.2.0)
data/Rakefile CHANGED
@@ -2,7 +2,27 @@
2
2
  # Add your own tasks in files placed in lib/tasks ending in .rake,
3
3
  # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
4
4
 
5
- require File.expand_path('../config/application', __FILE__)
6
- STDOUT.sync = true
7
- TrustyCms::Application.load_tasks
8
- require 'trustygems'
5
+ # require File.expand_path('../config/application', __FILE__)
6
+ # STDOUT.sync = true
7
+ # TrustyCms::Application.load_tasks
8
+
9
+ require 'pry'
10
+ require 'byebug'
11
+ require 'trustygems'
12
+
13
+ #!/usr/bin/env rake
14
+ begin
15
+ require 'bundler/setup'
16
+ rescue LoadError
17
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
18
+ end
19
+ APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
20
+ load 'rails/tasks/engine.rake'
21
+ Bundler::GemHelper.install_tasks
22
+ Dir[File.join(File.dirname(__FILE__), 'tasks/**/*.rake')].each {|f| load f }
23
+ require 'rspec/core'
24
+ require 'rspec/core/rake_task'
25
+ desc "Run all specs in spec directory (excluding plugin specs)"
26
+ RSpec::Core::RakeTask.new(:spec => 'app:db:test:prepare')
27
+ task :default => :spec
28
+ #TrustyCms::Application.load_tasks
@@ -11,7 +11,7 @@
11
11
  }
12
12
  )
13
13
  }
14
- }
14
+ };
15
15
 
16
16
  PageEdit.partAdded = function (tabId) {
17
17
  $('#add_part_busy').hide();
@@ -20,12 +20,12 @@
20
20
  $('#part_name_field').val('');
21
21
  TabControl.updateTabsBasedOnPages();
22
22
  TabControl.selectTab($('div#tab_control .tabs .tab').last().attr('id'));
23
- }
23
+ };
24
24
 
25
25
  PageEdit.partLoading = function () {
26
26
  $('#add_part_button').attr('disabled', true);
27
27
  $('#add_part_busy').show();
28
- }
28
+ };
29
29
 
30
30
  PageEdit.validPartName = function () {
31
31
  var partNameField = $('#part_name_field');
@@ -15,29 +15,29 @@
15
15
  TabControl.removeTab($(this).closest('.tab').attr('id'));
16
16
  });
17
17
 
18
- TabControl.selectTab($pages.first().attr('id'));
18
+ TabControl.selectTab($pages.first().attr('id').replace(/-/, "_"));
19
19
  }
20
20
  }
21
21
 
22
+ TabControl.selectTab = function(id) {
23
+ id = id.replace(/^tab_/, '').replace(/^page_/, '');
24
+ var underscored_id = id.replace(/_/g, "-");
25
+ var $pages = $('div#tab_control .pages .page');
26
+ var $tabs = $('div#tab_control .tabs .tab');
27
+
28
+ $pages.hide();
29
+ $tabs.removeClass('here');
30
+
31
+ $pages.filter('#page_' + underscored_id).show();
32
+ $tabs.filter('#tab_' + id).addClass('here');
33
+ }
34
+
22
35
  TabControl.addTab = function(tabText) {
23
36
  $('div#tab_control .tabs').append("<a id='tab_" + tabText + "' href='#' class='tab'><span>" + tabText + "</span><img src='" + relative_url_root + "<%= asset_path('admin/tab_close.png') %>' class='close' alt='Remove part' title='Remove part' /></a>");
24
37
  var $page_part_index = $('#page_part_index_field');
25
38
  $page_part_index.val(parseInt($page_part_index.val()) + 1);
26
39
  }
27
40
 
28
- TabControl.selectTab = function(id) {
29
- id = id.replace(/^tab_/, '').replace(/^page_/, '');
30
- var underscored_id = id.replace("_", "-");
31
- var $pages = $('div#tab_control .pages .page');
32
- var $tabs = $('div#tab_control .tabs .tab');
33
-
34
- $pages.hide();
35
- $tabs.removeClass('here');
36
-
37
- $pages.filter('#page_' + underscored_id).show();
38
- $tabs.filter('#tab_' + id).addClass('here');
39
- }
40
-
41
41
  TabControl.removeTab = function(id) {
42
42
  id = id.replace(/^tab_/, '').replace(/^page_/, '');
43
43
  var underscored_id = id.replace("_", "-");
@@ -25,15 +25,16 @@ $(function() {
25
25
  },
26
26
  onNodeExpand: function() {
27
27
  var node = this;
28
+ var spinner = $($(node.row[0]).find(".busy")[0]);
29
+ spinner.show();
28
30
  persistStore.set(node.id, 'expanded');
29
31
  // Render loader/spinner while loading
30
32
  $.ajax({
31
- async: false, // Must be false, otherwise loadBranch happens after showChildren?
33
+ async: true, // Must be false, otherwise loadBranch happens after showChildren?
32
34
  url: "/admin/pages/" + node.row.data('ttPageId') + "/children?index=" + node.id
33
35
  }).done(function(html) {
34
36
  var rows = $(html).filter("tr");
35
37
 
36
-
37
38
  $("#pages").treetable("loadBranch", node, rows);
38
39
  $.each(node.children, function() {
39
40
  var state = persistStore.get(this.id);
@@ -44,6 +45,7 @@ $(function() {
44
45
  $('a.dropdown').each(function(){
45
46
  Dropdown.setup(this);
46
47
  });
48
+ spinner.hide();
47
49
  });
48
50
  }
49
51
  });
@@ -1,14 +1,14 @@
1
1
  // Fonts
2
- $base-font-family: "Lucida Grande", "Bitstream Vera Sans", Helvetica, Verdana, Arial, sans-serif;
2
+ $base-font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
3
3
  $base-font-size: 15px;
4
4
 
5
5
  // Links
6
- $base-link-color:#66d9e0 ;
6
+ $base-link-color:#94BDC3 ;
7
7
  $alt-link-color: red;
8
8
 
9
9
  // Header
10
10
  $header: #000 !default;
11
- $primary-tab: rgba(white, 0.3);
11
+ $primary-tab: rgba(236, 6, 115, 0.6);
12
12
  $primary-tab-current: white;
13
13
 
14
14
  // Modules
@@ -8,7 +8,7 @@
8
8
 
9
9
  @mixin alt-link {
10
10
  color: $alt-link-color;
11
- text-decoration: underline;
11
+ text-decoration: none;
12
12
  &:hover {
13
13
  text-decoration: none;
14
14
  }
@@ -25,9 +25,16 @@ table.fieldset {
25
25
  }
26
26
 
27
27
  body.reversed {
28
+ fieldset h1 {
29
+ font-size: 1.5em;
30
+ }
31
+ #content > h1:first-of-type {
32
+ font-size: 2em;
33
+ }
28
34
  h1 {
29
- border-bottom: 1px solid #ababab;
30
- background: #7e7e7e;
35
+ color: #94BDC3;
36
+ border-bottom: 1px solid #94BDC3;
37
+ background: #fff;
31
38
  font-size: 125%;
32
39
  margin: -20px -20px 20px;
33
40
  padding: 15px 20px;
@@ -22,6 +22,7 @@
22
22
  font-size: 95%;
23
23
  text-shadow: none;
24
24
  margin-right: 1em;
25
+ text-align: left;
25
26
  }
26
27
  &.multi_option {
27
28
  margin-bottom: 0.3em;
@@ -51,7 +52,6 @@
51
52
  text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.1);
52
53
  }
53
54
  a {
54
- color: white;
55
55
  &.action {
56
56
  background-color: #7e7e7e;
57
57
  font-size: 75%;
@@ -83,17 +83,6 @@
83
83
  margin: 0 1em 0 0;
84
84
  }
85
85
  }
86
- .buttons {
87
- color: #666666;
88
- font-size: 80%;
89
- margin: 2.5em 0 1em;
90
- button, input.button {
91
- font-size: 150%;
92
- }
93
- a {
94
- @include alt-link;
95
- }
96
- }
97
86
  }
98
87
  }
99
88
 
@@ -103,7 +92,7 @@
103
92
  }
104
93
 
105
94
  .drawer_contents {
106
- background: #7e7e7e;
95
+ background: #c9c9c9;
107
96
  @include border-bottom-right-radius(6px);
108
97
  margin: 0;
109
98
  margin-right: 2px;
@@ -282,9 +271,8 @@ body.reversed {
282
271
  form {
283
272
  p {
284
273
  label {
285
- color: whitesmoke;
274
+ color: #B9B9B9;
286
275
  font-weight: normal;
287
- text-shadow: 1px 1px 0 #888888;
288
276
  .hint {
289
277
  display: inline;
290
278
  }
@@ -298,7 +286,7 @@ body.reversed {
298
286
  @include alt-box;
299
287
  }
300
288
  fieldset {
301
- background: #858585;
289
+ background: #fff;
302
290
  padding: 20px 15px;
303
291
  margin-bottom: 20px;
304
292
  overflow: hidden;
@@ -320,7 +308,17 @@ body.reversed {
320
308
  color: #eeeeee;
321
309
  }
322
310
  textarea {
323
- border: 1px solid white;
311
+ border: 1px solid #EAEAEA;
312
+ }
313
+ input:not([type=submit]):focus, textarea:focus {
314
+ border: 1px #EC65A5;
315
+ -webkit-box-shadow: 0 0 10px #EC65A5;
316
+ -moz-box-shadow: 0 0 10px #EC65A5;
317
+ box-shadow: 0 0 10px #EC65A5;
318
+ outline: 0;
319
+ }
320
+ input[type=checkbox] {
321
+ border-radius: 5px;
324
322
  }
325
323
  .box {
326
324
  @include single-box-shadow(rgba(0, 0, 0, 0.15), 2px, 2px, 3px);
@@ -417,3 +415,47 @@ body.edit_user, body.edit_personal_preferences {
417
415
  }
418
416
  }
419
417
  }
418
+
419
+ .button, button, input[type=button], input[type=submit] {
420
+ -webkit-appearance: none;
421
+ font-size: 1.1em;
422
+ padding: .5em 3em;
423
+ margin: 0.5em;
424
+ color: #f3f3f3;
425
+ background-color: #94BDC3;
426
+ border: 2px outset buttonface;
427
+ -webkit-border-radius: 5px;
428
+ -moz-border-radius: 5px;
429
+ border-radius: 5px;
430
+ text-decoration: none;
431
+ &:hover {
432
+ color: #94BDC3;
433
+ background-color: #f3f3f3;
434
+ -webkit-transition: all .2s;
435
+ -moz-transition: all .2s;
436
+ -ms-transition: all .2s;
437
+ -o-transition: all .2s;
438
+ transition: all .2s;
439
+ }
440
+ &:hover > .fa {
441
+ color: #94BDC3;
442
+ -webkit-transition: all .2s;
443
+ -moz-transition: all .2s;
444
+ -ms-transition: all .2s;
445
+ -o-transition: all .2s;
446
+ transition: all .2s;
447
+ }
448
+ .fa {
449
+ color: #f3f3f3;
450
+ }
451
+ }
452
+
453
+ .hover {
454
+ color: #94BDC3;
455
+ background-color: #f3f3f3;
456
+ -webkit-transition: all .2s;
457
+ -moz-transition: all .2s;
458
+ -ms-transition: all .2s;
459
+ -o-transition: all .2s;
460
+ transition: all .2s;
461
+ }