exception_handler 0.5.1 → 0.6.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 (47) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/.travis.yml +4 -4
  4. data/Gemfile +1 -3
  5. data/README.md +111 -98
  6. data/app/assets/images/exception_handler/connect/facebook.png +0 -0
  7. data/app/assets/images/exception_handler/connect/fusion.png +0 -0
  8. data/app/assets/images/exception_handler/connect/linkedin.png +0 -0
  9. data/app/assets/images/exception_handler/connect/twitter.png +0 -0
  10. data/app/assets/images/exception_handler/connect/youtube.png +0 -0
  11. data/app/assets/images/exception_handler/noise.png +0 -0
  12. data/app/assets/images/favicon.ico +0 -0
  13. data/app/assets/stylesheets/exception_handler.css.erb +18 -0
  14. data/app/assets/stylesheets/styles/_base.css.erb +34 -0
  15. data/app/assets/stylesheets/styles/_exception.css.erb +105 -0
  16. data/app/assets/stylesheets/styles/_footer.css.erb +27 -0
  17. data/app/assets/stylesheets/styles/_responsive.css +5 -0
  18. data/app/controllers/exception_handler/exception_controller.rb +28 -33
  19. data/app/mailers/exception_handler/exception_mailer.rb +17 -0
  20. data/app/models/exception_handler/exception.rb +191 -0
  21. data/app/views/exception_handler/exception/show.html.erb +3 -32
  22. data/app/views/exception_handler/mailers/layout.haml +8 -0
  23. data/app/views/exception_handler/mailers/layout.text.erb +1 -0
  24. data/app/views/exception_handler/mailers/new_exception.erb +4 -0
  25. data/app/views/layouts/exception.html.erb +15 -23
  26. data/config/locales/exception_handler.en.yml +13 -0
  27. data/exception_handler.gemspec +61 -16
  28. data/lib/exception_handler.rb +20 -79
  29. data/lib/exception_handler/config.rb +20 -22
  30. data/lib/exception_handler/engine.rb +36 -0
  31. data/lib/generators/exception_handler/migration_generator.rb +28 -10
  32. data/lib/generators/exception_handler/views_generator.rb +5 -5
  33. data/lib/generators/templates/migration.rb.erb +12 -11
  34. metadata +41 -64
  35. data/app/assets/images/exception_handler/close.png +0 -0
  36. data/app/assets/images/exception_handler/home.png +0 -0
  37. data/app/assets/stylesheets/exception_handler/error.css.erb +0 -309
  38. data/app/helpers/exception_handler/application_helper.rb +0 -56
  39. data/app/models/exception_handler/error.rb +0 -14
  40. data/app/services/exception_handler/exception.rb +0 -34
  41. data/config/locales/en.yml +0 -9
  42. data/lib/exception_handler/parse.rb +0 -23
  43. data/lib/exception_handler/parser/data.rb +0 -59
  44. data/lib/exception_handler/parser/ignore.rb +0 -32
  45. data/lib/exception_handler/version.rb +0 -3
  46. data/post_install_message.md +0 -53
  47. data/spec/helpers/exception_handler/application_helper_spec.rb +0 -42
@@ -2,13 +2,13 @@ module ExceptionHandler
2
2
  class ViewsGenerator < Rails::Generators::Base
3
3
 
4
4
  #Views
5
- @@views = %w(views controllers helpers models assets)
5
+ VIEWS = %w(views controllers models assets)
6
6
 
7
7
  #Options
8
- class_option :files, aliases: "-v", default: @@views, type: :array, desc: "Select file types (views, models, controllers, assets)"
8
+ class_option :files, aliases: "-v", default: VIEWS, type: :array, desc: "Select file types (views, models, controllers, assets)"
9
9
 
10
10
  #Needed to reference files
11
- source_root File.expand_path("../../../../app", __FILE__)
11
+ source_root File.expand_path("../../../../app", __FILE__)
12
12
 
13
13
  ###########################################
14
14
 
@@ -25,7 +25,7 @@ module ExceptionHandler
25
25
  def generate_files args
26
26
 
27
27
  #Valid?
28
- return raise args.inspect unless args.nil? || (args-@@views).empty?
28
+ return raise args.inspect unless args.nil? || (args-VIEWS).empty?
29
29
 
30
30
  #Types
31
31
  for arg in args do
@@ -39,4 +39,4 @@ module ExceptionHandler
39
39
  ###########################################
40
40
 
41
41
  end
42
- end
42
+ end
@@ -1,15 +1,16 @@
1
- class Create<%= table_name.to_s.gsub("_","").titleize %> < ActiveRecord::Migration
2
- def change
1
+ class Create<%= table_name.to_s.gsub("_","").titleize %> < ActiveRecord::Migration<%= migration_version %>
2
+
3
+ def self.up
3
4
  create_table :<%= table_name %> do |t|
4
- t.references :usable, polymorphic: true
5
- t.text :class_name
6
- t.text :message
7
- t.text :trace
8
- t.text :target_url
9
- t.text :referer_url
10
- t.text :params
11
- t.text :user_agent
5
+ <% ExceptionHandler::ATTRS.each do |attr| %>
6
+ t.text :<%= attr %>
7
+ <% end %>
12
8
  t.timestamps
13
9
  end
14
10
  end
15
- end
11
+
12
+ def self.down
13
+ drop_table :<%= table_name %>
14
+ end
15
+
16
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: exception_handler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Peck
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-14 00:00:00.000000000 Z
11
+ date: 2016-11-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -17,7 +17,7 @@ dependencies:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.6'
20
- type: :development
20
+ type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
@@ -28,32 +28,32 @@ dependencies:
28
28
  name: rails
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 4.0.0
34
- type: :development
33
+ version: 4.2.0
34
+ type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 4.0.0
40
+ version: 4.2.0
41
41
  - !ruby/object:Gem::Dependency
42
- name: activerecord
42
+ name: responders
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
47
+ version: '2.3'
48
+ type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '2.3'
55
55
  - !ruby/object:Gem::Dependency
56
- name: activesupport
56
+ name: autoprefixer-rails
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
@@ -84,42 +84,42 @@ dependencies:
84
84
  name: rspec
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: '3.3'
89
+ version: '0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - "~>"
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
- version: '3.3'
96
+ version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rspec-rails
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - "~>"
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: '3.3'
103
+ version: '0'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - "~>"
108
+ - - ">="
109
109
  - !ruby/object:Gem::Version
110
- version: '3.3'
110
+ version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: sqlite3
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - "~>"
115
+ - - ">="
116
116
  - !ruby/object:Gem::Version
117
117
  version: 1.3.10
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - "~>"
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: 1.3.10
125
125
  description: Rails gem to create custom error pages. Captures exceptions using "exception_app"
@@ -141,34 +141,35 @@ files:
141
141
  - app/assets/images/exception_handler/alert.png
142
142
  - app/assets/images/exception_handler/bg.jpg
143
143
  - app/assets/images/exception_handler/bg_overlay.png
144
- - app/assets/images/exception_handler/close.png
145
144
  - app/assets/images/exception_handler/connect/facebook.png
146
145
  - app/assets/images/exception_handler/connect/fusion.png
147
146
  - app/assets/images/exception_handler/connect/linkedin.png
148
147
  - app/assets/images/exception_handler/connect/twitter.png
149
148
  - app/assets/images/exception_handler/connect/youtube.png
150
- - app/assets/images/exception_handler/home.png
151
149
  - app/assets/images/exception_handler/noise.png
152
150
  - app/assets/images/exception_handler/overlay.png
153
- - app/assets/stylesheets/exception_handler/error.css.erb
151
+ - app/assets/images/favicon.ico
152
+ - app/assets/stylesheets/exception_handler.css.erb
153
+ - app/assets/stylesheets/styles/_base.css.erb
154
+ - app/assets/stylesheets/styles/_exception.css.erb
155
+ - app/assets/stylesheets/styles/_footer.css.erb
156
+ - app/assets/stylesheets/styles/_responsive.css
154
157
  - app/controllers/exception_handler/exception_controller.rb
155
- - app/helpers/exception_handler/application_helper.rb
156
- - app/models/exception_handler/error.rb
157
- - app/services/exception_handler/exception.rb
158
+ - app/mailers/exception_handler/exception_mailer.rb
159
+ - app/models/exception_handler/exception.rb
158
160
  - app/views/exception_handler/exception/show.html.erb
161
+ - app/views/exception_handler/mailers/layout.haml
162
+ - app/views/exception_handler/mailers/layout.text.erb
163
+ - app/views/exception_handler/mailers/new_exception.erb
159
164
  - app/views/layouts/exception.html.erb
160
- - config/locales/en.yml
165
+ - config/locales/exception_handler.en.yml
161
166
  - exception_handler.gemspec
162
167
  - lib/exception_handler.rb
163
168
  - lib/exception_handler/config.rb
164
- - lib/exception_handler/parse.rb
165
- - lib/exception_handler/parser/data.rb
166
- - lib/exception_handler/parser/ignore.rb
167
- - lib/exception_handler/version.rb
169
+ - lib/exception_handler/engine.rb
168
170
  - lib/generators/exception_handler/migration_generator.rb
169
171
  - lib/generators/exception_handler/views_generator.rb
170
172
  - lib/generators/templates/migration.rb.erb
171
- - post_install_message.md
172
173
  - spec/database.yml
173
174
  - spec/dummy/Rakefile
174
175
  - spec/dummy/app/assets/config/manifest.js
@@ -229,36 +230,12 @@ files:
229
230
  - spec/dummy/public/apple-touch-icon.png
230
231
  - spec/dummy/public/favicon.ico
231
232
  - spec/exception_handler.rb
232
- - spec/helpers/exception_handler/application_helper_spec.rb
233
233
  - spec/spec_helper.rb
234
234
  homepage: http://github.com/richpeck/exception_handler
235
235
  licenses:
236
236
  - MIT
237
237
  metadata: {}
238
- post_install_message: "########################################################################################\n##
239
- \ _____ _ _ _ _ _ _ ##\n##
240
- | ___| | | (_) | | | | | | | ##\n##
241
- | |____ _____ ___ _ __ | |_ _ ___ _ __ | |_| | __ _ _ __ __| | | ___ _ __
242
- \ ##\n## | __\\ \\/ / __/ _ \\ '_ \\| __| |/ _ \\| '_ \\ | _ |/ _` | '_ \\
243
- / _` | |/ _ \\ '__| ##\n## | |___> < (_| __/ |_) | |_| | (_) | | | | | | | |
244
- (_| | | | | (_| | | __/ | ##\n## \\____/_/\\_\\___\\___| .__/ \\__|_|\\___/|_|
245
- |_| \\_| |_/\\__,_|_| |_|\\__,_|_|\\___|_| ## \n## | | ##\n##
246
- \ |_| ##\n########################################################################################\n\nIMPORTANT
247
- -\n**IF UPGRADING EXCEPTION HANDLER (to 0.4.7)***\n**DELETE INITIALIZER (config/initializers/exception_handler.rb)**\n\nWe've
248
- changed the initialization process for ExceptionHandler.\n\nThe initializer has
249
- been replaced with /config/application.rb\noptions:\n\n#config/application.rb\nconfig.exception_handler
250
- = {\n\tdb: \tfalse, #-> defaults to :errors if true, else use :table_name\n\temail:
251
- \tfalse, #-> need to integrate\n\tsocial: {\n\t :twitter \t=> \t'frontlineutils',\n\t
252
- \ :facebook \t=> \t'frontline.utilities',\n\t :linkedin \t=> \t'frontline-utilities',\n\t
253
- \ :youtube \t=>\t'frontlineutils',\n\t :fusion \t=> \t'frontlineutils',\n\t
254
- \ :url => {\n\t\t :facebook \t=> \t'https://facebook.com',\n\t\t :twitter
255
- \t=> \t'http://twitter.com',\n\t\t :youtube \t=>\t'https://youtube.com/user',\n\t\t
256
- \ :linkedin \t=> \t'https://linkedin.com/company',\n\t\t :fusion \t=> \t'https://frontlinefusion.com',\n\t\t},\n\t},\n\tlayouts:
257
- {\n\t '400' => nil,\n\t '500' => 'exception'\n\t},\n}\n\nIf you've made any
258
- changes to your initializer,\nyou MUST DELETE it, replacing the options with\nthose
259
- in config/application.rb, or\nconfig/environments/production.rb.\n\nMore info on
260
- the ExceptionHandler github page:\nhttp://github.com/richpeck/exception_handler\n\nThank
261
- you & enjoy!!"
238
+ post_install_message:
262
239
  rdoc_options: []
263
240
  require_paths:
264
241
  - lib
@@ -266,7 +243,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
266
243
  requirements:
267
244
  - - ">="
268
245
  - !ruby/object:Gem::Version
269
- version: '0'
246
+ version: 2.1.0
270
247
  required_rubygems_version: !ruby/object:Gem::Requirement
271
248
  requirements:
272
249
  - - ">="
@@ -274,7 +251,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
274
251
  version: '0'
275
252
  requirements: []
276
253
  rubyforge_project:
277
- rubygems_version: 2.4.5.1
254
+ rubygems_version: 2.6.6
278
255
  signing_key:
279
256
  specification_version: 4
280
257
  summary: Rails gem to show custom error pages in production. Also logs errors in db
@@ -1,309 +0,0 @@
1
- /* Vars */
2
- <% size = 18 %>
3
- <% opacity = 0.85 %>
4
- <% footer = 50 %>
5
- <% radius = 5 %>
6
- <% title_bg = "rgba(227,11,11,1)" %>
7
-
8
- /**************/
9
- /* Responsive */
10
- /**************/
11
-
12
- @media screen and (max-width: 950px) {
13
- html { background-size: cover !important; }
14
- .container .error { width: 55% !important; }
15
- }
16
-
17
- /***********/
18
- /* Styling */
19
- /***********/
20
-
21
- * { margin: 0; }
22
- html, body, .container { height: 100%; }
23
- html {
24
- height: 100%;
25
- background: #010008 url(<%= asset_url("exception_handler/bg.jpg") %>) top left no-repeat;
26
- background-size: 100% 100%;
27
- }
28
- body {
29
- font-family: Helvetica, Arial, Sans-Serif;
30
- font-size: 14px;
31
- text-transform: capitalize;
32
- }
33
- body:before,
34
- body:after {
35
- content: "";
36
- position: absolute;
37
- top: 0;
38
- left: 0;
39
- width: 100%;
40
- height: 100%;
41
- z-index: 1000;
42
- }
43
- body:before{ background-image: url(<%=asset_url("exception_handler/noise.png") %>); background-repeat: repeat; }
44
- body:after{ background-image: url(<%=asset_url("exception_handler/bg_overlay.png") %>); background-repeat: no-repeat; }
45
-
46
- a { color: #fff; text-decoration: none; }
47
- a:hover { text-decoration: underline; }
48
-
49
- .container {
50
- position: relative;
51
- min-height: 100%;
52
- overflow-y: hidden; /* Shouldn't need to have this */
53
- margin-bottom: -<%= footer * 1.2 %>px;
54
- z-index: 1100;
55
- }
56
-
57
- .container .error {
58
- display: block;
59
- margin: 10% auto 0;
60
- width: 25%;
61
- color: #000;
62
- text-align: center;
63
- overflow: hidden;
64
- background: rgba(255,255,255,1);
65
- border: 1px solid rgba(0,0,0,1);
66
- border-radius: <%= radius %>px;
67
-
68
- -moz-background-clip: padding;
69
- -webkit-background-clip: padding-box;
70
- background-clip: padding-box;
71
-
72
- -webkit-transition: width 0.15s ease-in-out;
73
- -moz-transition: width 0.15s ease-in-out;
74
- -ms-transition: width 0.15s ease-in-out;
75
- -o-transition: width 0.15s ease-in-out;
76
- transition: width 0.15s ease-in-out;
77
- }
78
-
79
- .container .error img.alert {
80
- display: block;
81
- margin: 0 auto 20px auto;
82
- }
83
-
84
- .container .message > * { display: block; }
85
- .container .message .title {
86
- display: block;
87
- position: relative;
88
- font-weight: bold;
89
- font-size: 0.85em;
90
- margin: 0;
91
- color: rgba(255,255,255,1);
92
- background: <%= title_bg %>;
93
- padding: 12px 15px;
94
- text-align: left;
95
- text-shadow: 0px 1px 0px rgba(0,0,0,1);
96
- overflow-y: hidden;
97
-
98
- /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#7a07ed+0,000000+100&amp;0+0,1+100 */
99
- background: <%= title_bg %> -moz-linear-gradient(top, rgba(227,11,11,0) 0%, rgba(0,0,0,0.4) 100%); /* FF3.6+ */
100
- background: <%= title_bg %> -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(227,11,11,0)), color-stop(100%,rgba(0,0,0,0.4))); /* Chrome,Safari4+ */
101
- background: <%= title_bg %> -webkit-linear-gradient(top, rgba(227,11,11,0) 0%,rgba(0,0,0,0.4) 100%); /* Chrome10+,Safari5.1+ */
102
- background: <%= title_bg %> -o-linear-gradient(top, rgba(227,11,11,0) 0%,rgba(0,0,0,0.4) 100%); /* Opera 11.10+ */
103
- background: <%= title_bg %> -ms-linear-gradient(top, rgba(227,11,11,0) 0%,rgba(0,0,0,0.4) 100%); /* IE10+ */
104
- background: <%= title_bg %> linear-gradient(to bottom, rgba(227,11,11,0) 0%,rgba(0,0,0,0.4) 100%); /* W3C */
105
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007a07ed', endColorstr='#000000',GradientType=0 ); /* IE6-9 */
106
- }
107
- .container .message .title:before,
108
- .container .message .title:after {
109
- position: absolute;
110
- content: "";
111
- width: 100%;
112
- left: 0;
113
- }
114
- .container .message .title:before {
115
- position: absolute;
116
- content: "";
117
- width: 100%;
118
- left: 0;
119
- height: 100%;
120
- top: 0;
121
- background: url(<%= asset_url("exception_handler/overlay.png") %>) repeat;
122
- background-size: 100%;
123
- }
124
- .container .message .title:after {
125
- height: 1px;
126
- background: rgba(255,255,255,0.1);
127
- bottom: 0px;
128
- }
129
- .container .message .title a.close {
130
- float: right;
131
- position: relative;
132
- top: 2px;
133
- right: -2px;
134
- }
135
- .container .message .title a.close img {
136
- width: 12px;
137
-
138
- -webkit-transition: opacity 0.15s ease-in-out;
139
- -moz-transition: opacity 0.15s ease-in-out;
140
- -ms-transition: opacity 0.15s ease-in-out;
141
- -o-transition: opacity 0.15s ease-in-out;
142
- transition: opacity 0.15s ease-in-out;
143
- }
144
- .container .message .title a.close:hover img { opacity: 0.75; }
145
-
146
- /***********/
147
- /* Details */
148
- /***********/
149
-
150
- .container .message .details {
151
- position: relative;
152
- margin: 0;
153
- padding: 0;
154
- height: 310px;
155
- width: 100%;
156
- background-image: url(<%= asset_url("exception_handler/alert.jpg") %>);
157
- background-repeat: no-repeat;
158
- background-size: cover;
159
- background-position: center top;
160
- }
161
- .container .message .details:before,
162
- .container .message .details:after {
163
- display: block;
164
- content: "";
165
- position: absolute;
166
- left: 0;
167
- top: 0;
168
- width: 100%;
169
- z-index: 1000;
170
- }
171
- .container .message .details:after {
172
- height: 2px;
173
-
174
- /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&amp;1+0,0+100 */
175
- background: -moz-linear-gradient(top, rgba(0,0,0,0.485) 0%, rgba(0,0,0,0) 100%); /* FF3.6+ */
176
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.85)), color-stop(100%,rgba(0,0,0,0))); /* Chrome,Safari4+ */
177
- background: -webkit-linear-gradient(top, rgba(0,0,0,0.85) 0%,rgba(0,0,0,0) 100%); /* Chrome10+,Safari5.1+ */
178
- background: -o-linear-gradient(top, rgba(0,0,0,0.85) 0%,rgba(0,0,0,0) 100%); /* Opera 11.10+ */
179
- background: -ms-linear-gradient(top, rgba(0,0,0,0.85) 0%,rgba(0,0,0,0) 100%); /* IE10+ */
180
- background: linear-gradient(to bottom, rgba(0,0,0,0.85) 0%,rgba(0,0,0,0) 100%); /* W3C */
181
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
182
-
183
- }
184
- .container .message .details:before {
185
- height: 100%;
186
- outline-offset: -1px;
187
- outline: 1px solid rgba(255,255,255,0.1);
188
- }
189
- .container .message .details img {
190
- margin: 10% 0 0 0;
191
- padding: 0;
192
- }
193
- .container .message .details .status {
194
- position: absolute;
195
- left: 0;
196
- bottom: 0;
197
- width: 100%;
198
- color: #fff;
199
- padding: 1em 15px;
200
- font-size: 1.1em;
201
- font-weight: bold;
202
- background: rgba(0,0,0,0.5);
203
- text-align: left;
204
- }
205
-
206
- .container .message .info {
207
- display: block;
208
- padding-top: 15px;
209
- margin: auto;
210
- font-size: 0.75em;
211
- background: rgba(232,232,232,1);
212
- }
213
- .container .message .info > * {
214
- display: block;
215
- padding-left: 15px;
216
- padding-right: 15px;
217
- }
218
- .container .message > .info h2 {
219
- margin: 10px 0;
220
- font-size: 1.75em;
221
- text-align: left;
222
- }
223
- .container .message > .info .notification {
224
- display: block;
225
- position: relative;
226
- clear: both;
227
- margin: 20px 0 0;
228
- padding-top: 5px;
229
- padding-bottom: 5px;
230
- text-align: left;
231
- background: rgba(205,205,205,1);
232
- border-top: 1px solid rgba(175,175,175,1);
233
- }
234
- .container .message > .info .notification > * { vertical-align: middle; }
235
- .container .message > .info .notification strong {
236
- display: inline-block;
237
- max-width: 75%;
238
- text-overflow: ellipsis;
239
- white-space: nowrap;
240
- overflow-x: hidden;
241
- }
242
- .container .message > .info .notification .version {
243
- display: inline-block;
244
- text-transform: lowercase;
245
- padding: 0 15px 0 0;
246
- margin: 0 10px 0 0;
247
- border-right: 1px solid rgba(175,175,175,1);
248
- }
249
- .container .message > .info .notification a.home {
250
- float: right;
251
- position: relative;
252
- right: -6px;
253
- opacity: <%= opacity * 0.5 %>;
254
-
255
- -webkit-transition: opacity 0.15s ease-in-out;
256
- -moz-transition: opacity 0.15s ease-in-out;
257
- -ms-transition: opacity 0.15s ease-in-out;
258
- -o-transition: opacity 0.15s ease-in-out;
259
- transition: opacity 0.15s ease-in-out;
260
- }
261
- .container .message > .info .notification a.home:hover { opacity: <%= opacity %>; }
262
- .container .message > .info .notification a.home img { height: 12px; }
263
-
264
- /**********/
265
- /* Footer */
266
- /**********/
267
-
268
- footer {
269
- display: block;
270
- position: relative;
271
- vertical-align: middle;
272
- clear: both;
273
- color: #fff;
274
- margin: 15px 2% 0;
275
- padding: 14px 0;
276
- box-sizing: border-box;
277
- max-height: <%= footer %>;
278
- z-index: 1100;
279
- border-top: 1px solid rgba(255,255,255,0.1);
280
- }
281
-
282
- footer .app { text-transform: uppercase; }
283
- footer .app strong { font-size: 1em; letter-spacing: 1px; }
284
- footer .app span { font-size: 0.9em; }
285
-
286
- footer .connect {
287
- display: block;
288
- float: right;
289
- clear: both;
290
- text-align: center;
291
- }
292
-
293
- footer .connect:hover a { opacity: <%= opacity * 0.5 %>; }
294
- footer .connect a {
295
- display: inline-block;
296
- opacity: <%= opacity * 0.7 %>;
297
- padding-left: 4px;
298
- margin: 0 -1px; /* Use 0 -1px for inline block & ERB - HAML removes whitespace; ERB does now - http://haml.info/docs/yardoc/file.REFERENCE.html#whitespace_removal__and_ */
299
- transition: opacity 0.2s ease;
300
- vertical-align: middle;
301
- }
302
-
303
- footer .connect a img { display: block; padding: 0 5px; }
304
- footer .connect a.facebook img { height: <%= size * 0.92 %>px; }
305
- footer .connect a.twitter img { height: <%= size * 0.88 %>px; }
306
- footer .connect a.youtube img { height: <%= size %>px; }
307
- footer .connect a.linkedin img { height: <%= size * 0.97 %>px; }
308
- footer .connect a.fusion img { height: <%= size %>px; }
309
- footer .connect:hover a:hover { opacity: 1; }