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

Sign up to get free protection for your applications and to get access to all the features.
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
+ }