spina 0.11.1 → 0.12.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of spina might be problematic. Click here for more details.

Files changed (131) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +41 -12
  3. data/Rakefile +1 -0
  4. data/app/assets/fonts/spina/ics_spina.eot +0 -0
  5. data/app/assets/fonts/spina/ics_spina.svg +5 -3
  6. data/app/assets/fonts/spina/ics_spina.ttf +0 -0
  7. data/app/assets/fonts/spina/ics_spina.woff +0 -0
  8. data/app/assets/icons/spina/lock.svg +3 -0
  9. data/app/assets/icons/spina/preview/ics_spina-preview.html +16 -1
  10. data/app/assets/javascripts/spina/admin/application.coffee.erb +3 -25
  11. data/app/assets/javascripts/spina/admin/navigation.coffee +7 -0
  12. data/app/assets/javascripts/spina/admin/pages.coffee.erb +1 -13
  13. data/app/assets/javascripts/spina/admin/trix.coffee.erb +2 -1
  14. data/app/assets/stylesheets/spina/_admin_editing.sass +0 -4
  15. data/app/assets/stylesheets/spina/_buttons.sass +8 -8
  16. data/app/assets/stylesheets/spina/_configuration.sass +5 -1
  17. data/app/assets/stylesheets/spina/_custom_animations.sass +26 -26
  18. data/app/assets/stylesheets/spina/_fonts.sass +5 -1
  19. data/app/assets/stylesheets/spina/_forms.sass +66 -33
  20. data/app/assets/stylesheets/spina/_gallery.sass +32 -15
  21. data/app/assets/stylesheets/spina/_ics_spina.scss +1 -0
  22. data/app/assets/stylesheets/spina/_login.sass +10 -4
  23. data/app/assets/stylesheets/spina/_mixins.sass +5 -0
  24. data/app/assets/stylesheets/spina/_modal.sass +4 -4
  25. data/app/assets/stylesheets/spina/_notifications.sass +5 -5
  26. data/app/assets/stylesheets/spina/_sortable_lists.sass +9 -9
  27. data/app/assets/stylesheets/spina/_tables.sass +9 -9
  28. data/app/assets/stylesheets/spina/_wizard.sass +5 -5
  29. data/app/assets/stylesheets/spina/admin/application.sass +4 -1
  30. data/app/assets/stylesheets/spina/application.sass +0 -1
  31. data/app/assets/stylesheets/spina.sass +23 -27
  32. data/app/controllers/spina/admin/accounts_controller.rb +2 -7
  33. data/app/controllers/spina/admin/admin_controller.rb +8 -3
  34. data/app/controllers/spina/admin/attachments_controller.rb +0 -2
  35. data/app/controllers/spina/admin/navigations_controller.rb +3 -2
  36. data/app/controllers/spina/admin/pages_controller.rb +7 -8
  37. data/app/controllers/spina/admin/password_resets_controller.rb +49 -0
  38. data/app/controllers/spina/admin/photos_controller.rb +15 -34
  39. data/app/controllers/spina/admin/sessions_controller.rb +1 -1
  40. data/app/controllers/spina/admin/users_controller.rb +8 -9
  41. data/app/controllers/spina/application_controller.rb +3 -9
  42. data/app/controllers/spina/pages_controller.rb +3 -3
  43. data/app/helpers/spina/admin/pages_helper.rb +16 -23
  44. data/app/mailers/spina/user_mailer.rb +21 -0
  45. data/app/models/concerns/spina/optionable.rb +12 -0
  46. data/app/models/concerns/spina/part.rb +5 -1
  47. data/app/models/concerns/spina/partable.rb +20 -5
  48. data/app/models/concerns/spina/photo_collectable.rb +24 -0
  49. data/app/models/spina/account.rb +16 -6
  50. data/app/models/spina/layout_part.rb +1 -0
  51. data/app/models/spina/option.rb +17 -0
  52. data/app/models/spina/page.rb +36 -63
  53. data/app/models/spina/page_part.rb +1 -0
  54. data/app/models/spina/photo_collection.rb +1 -13
  55. data/app/models/spina/structure_item.rb +4 -8
  56. data/app/models/spina/structure_part.rb +2 -13
  57. data/app/models/spina/user.rb +1 -0
  58. data/app/presenters/spina/pages/menu_presenter.rb +18 -49
  59. data/app/views/layouts/spina/mail.html.erb +1 -0
  60. data/app/views/spina/admin/page_partables/{colors → options}/_form.html.haml +2 -3
  61. data/app/views/spina/admin/page_partables/photo_collections/_form.html.haml +7 -7
  62. data/app/views/spina/admin/page_partables/structures/_form.html.haml +7 -8
  63. data/app/views/spina/admin/pages/_form.html.haml +2 -2
  64. data/app/views/spina/admin/pages/_form_advanced.html.haml +2 -2
  65. data/app/views/spina/admin/password_resets/edit.html.haml +13 -0
  66. data/app/views/spina/admin/password_resets/new.html.haml +13 -0
  67. data/app/views/spina/admin/photos/_photo.html.haml +2 -1
  68. data/app/views/spina/admin/photos/{_wysihtml5_select.html.haml → _trix_select.html.haml} +2 -4
  69. data/app/views/spina/admin/photos/create.js.erb +3 -5
  70. data/app/views/spina/admin/photos/{wysihtml5_infinite_scroll.js.erb → trix_infinite_scroll.js.erb} +0 -2
  71. data/app/views/spina/admin/photos/{wysihtml5_insert.js.coffee → trix_insert.js.erb} +2 -2
  72. data/app/views/spina/admin/photos/trix_select.js.erb +3 -0
  73. data/app/views/spina/admin/sessions/new.html.haml +3 -1
  74. data/app/views/spina/admin/shared/_primary_navigation.html.haml +1 -1
  75. data/app/views/spina/admin/shared/_rich_text_field.html.haml +2 -1
  76. data/app/views/spina/admin/structure_items/_fields.html.haml +3 -3
  77. data/app/views/spina/admin/structure_partables/lines/_form.html.haml +5 -2
  78. data/app/views/spina/admin/structure_partables/options/_form.html.haml +7 -0
  79. data/app/views/spina/admin/structure_partables/photo_collections/_form.html.haml +12 -9
  80. data/app/views/spina/admin/structure_partables/photos/_form.html.haml +10 -7
  81. data/app/views/spina/admin/structure_partables/texts/_form.html.haml +5 -2
  82. data/app/views/spina/admin/users/_form.html.haml +1 -1
  83. data/app/views/spina/shared/_admin_bar.html.haml +1 -1
  84. data/app/views/spina/shared/_navigation.html.haml +1 -1
  85. data/app/views/spina/user_mailer/forgot_password.html.erb +1 -0
  86. data/app/views/spina/user_mailer/forgot_password.txt.erb +1 -0
  87. data/config/locales/en.yml +10 -0
  88. data/config/locales/nl.yml +2 -0
  89. data/config/routes.rb +5 -9
  90. data/db/migrate/1_create_spina_tables.rb +8 -7
  91. data/db/migrate/2_create_spina_translation_tables.rb +7 -26
  92. data/db/migrate/3_create_spina_navigations.rb +1 -1
  93. data/db/migrate/4_add_password_reset_token_to_spina_users.rb +6 -0
  94. data/db/migrate/5_remove_translated_columns.rb +11 -0
  95. data/db/migrate/6_create_spina_options.rb +8 -0
  96. data/lib/generators/spina/install_generator.rb +0 -22
  97. data/lib/generators/spina/templates/app/views/default/shared/_navigation.html.haml +1 -1
  98. data/lib/generators/spina/templates/app/views/demo/shared/_navigation.html.haml +1 -1
  99. data/lib/generators/spina/templates/config/initializers/themes/default.rb +9 -0
  100. data/lib/generators/spina/templates/config/initializers/themes/demo.rb +1 -9
  101. data/lib/spina/engine.rb +4 -3
  102. data/lib/spina/theme.rb +2 -1
  103. data/lib/spina/version.rb +1 -1
  104. data/lib/spina.rb +0 -23
  105. metadata +32 -69
  106. data/app/assets/images/spina/marker.png +0 -0
  107. data/app/assets/images/spina/mask.png +0 -0
  108. data/app/assets/images/spina/wheel.png +0 -0
  109. data/app/assets/stylesheets/spina/_cards.sass +0 -54
  110. data/app/assets/stylesheets/spina/_farbtastic.sass +0 -37
  111. data/app/assets/stylesheets/spina/_wysihtml5.sass +0 -79
  112. data/app/assets/stylesheets/spina/wysihtml5_textarea.sass +0 -14
  113. data/app/controllers/spina/admin/page_parts_controller.rb +0 -11
  114. data/app/helpers/spina/application_helper.rb +0 -30
  115. data/app/models/spina/ability.rb +0 -20
  116. data/app/models/spina/color.rb +0 -7
  117. data/app/presenters/spina/pages/breadcrumb.rb +0 -102
  118. data/app/views/layouts/spina/email.html.erb +0 -124
  119. data/app/views/spina/admin/layout_partables/colors/_form.html.haml +0 -4
  120. data/app/views/spina/admin/page_parts/_wysihtml5_link.html.haml +0 -12
  121. data/app/views/spina/admin/page_parts/insert_wysihtml5_link.js +0 -5
  122. data/app/views/spina/admin/page_parts/wysihtml5_link.js +0 -2
  123. data/app/views/spina/admin/photos/create_and_select.js.erb +0 -7
  124. data/app/views/spina/admin/photos/create_multiple.js.erb +0 -4
  125. data/app/views/spina/admin/photos/wysihtml5_select.js.erb +0 -3
  126. data/vendor/assets/javascripts/spina/jquery.farbtastic.js +0 -345
  127. data/vendor/assets/javascripts/spina/morris.js +0 -1767
  128. data/vendor/assets/javascripts/spina/raphael.js +0 -8111
  129. data/vendor/assets/javascripts/spina/wysihtml5.js +0 -269
  130. data/vendor/assets/javascripts/spina/wysihtml5_parser_rules.js +0 -551
  131. data/vendor/assets/stylesheets/spina/_morris.scss +0 -2
@@ -1,551 +0,0 @@
1
- /**
2
- * Full HTML5 compatibility rule set
3
- * These rules define which tags and css classes are supported and which tags should be specially treated.
4
- *
5
- * Examples based on this rule set:
6
- *
7
- * <a href="http://foobar.com">foo</a>
8
- * ... becomes ...
9
- * <a href="http://foobar.com" target="_blank" rel="nofollow">foo</a>
10
- *
11
- * <img align="left" src="http://foobar.com/image.png">
12
- * ... becomes ...
13
- * <img class="wysiwyg-float-left" src="http://foobar.com/image.png" alt="">
14
- *
15
- * <div>foo<script>alert(document.cookie)</script></div>
16
- * ... becomes ...
17
- * <div>foo</div>
18
- *
19
- * <marquee>foo</marquee>
20
- * ... becomes ...
21
- * <span>foo</marquee>
22
- *
23
- * foo <br clear="both"> bar
24
- * ... becomes ...
25
- * foo <br class="wysiwyg-clear-both"> bar
26
- *
27
- * <div>hello <iframe src="http://google.com"></iframe></div>
28
- * ... becomes ...
29
- * <div>hello </div>
30
- *
31
- * <center>hello</center>
32
- * ... becomes ...
33
- * <div class="wysiwyg-text-align-center">hello</div>
34
- */
35
- var wysihtml5ParserRules = {
36
- /**
37
- * CSS Class white-list
38
- * Following css classes won't be removed when parsed by the wysihtml5 html parser
39
- */
40
- "classes": {
41
- "wysiwyg-clear-both": 1,
42
- "wysiwyg-clear-left": 1,
43
- "wysiwyg-clear-right": 1,
44
- "wysiwyg-color-aqua": 1,
45
- "wysiwyg-color-black": 1,
46
- "wysiwyg-color-blue": 1,
47
- "wysiwyg-color-fuchsia": 1,
48
- "wysiwyg-color-gray": 1,
49
- "wysiwyg-color-green": 1,
50
- "wysiwyg-color-lime": 1,
51
- "wysiwyg-color-maroon": 1,
52
- "wysiwyg-color-navy": 1,
53
- "wysiwyg-color-olive": 1,
54
- "wysiwyg-color-purple": 1,
55
- "wysiwyg-color-red": 1,
56
- "wysiwyg-color-silver": 1,
57
- "wysiwyg-color-teal": 1,
58
- "wysiwyg-color-white": 1,
59
- "wysiwyg-color-yellow": 1,
60
- "wysiwyg-float-left": 1,
61
- "wysiwyg-float-right": 1,
62
- "wysiwyg-font-size-large": 1,
63
- "wysiwyg-font-size-larger": 1,
64
- "wysiwyg-font-size-medium": 1,
65
- "wysiwyg-font-size-small": 1,
66
- "wysiwyg-font-size-smaller": 1,
67
- "wysiwyg-font-size-x-large": 1,
68
- "wysiwyg-font-size-x-small": 1,
69
- "wysiwyg-font-size-xx-large": 1,
70
- "wysiwyg-font-size-xx-small": 1,
71
- "wysiwyg-text-align-center": 1,
72
- "wysiwyg-text-align-justify": 1,
73
- "wysiwyg-text-align-left": 1,
74
- "wysiwyg-text-align-right": 1
75
- },
76
- /**
77
- * Tag list
78
- *
79
- * Following options are available:
80
- *
81
- * - add_class: converts and deletes the given HTML4 attribute (align, clear, ...) via the given method to a css class
82
- * The following methods are implemented in wysihtml5.dom.parse:
83
- * - align_text: converts align attribute values (right/left/center/justify) to their corresponding css class "wysiwyg-text-align-*")
84
- <p align="center">foo</p> ... becomes ... <p> class="wysiwyg-text-align-center">foo</p>
85
- * - clear_br: converts clear attribute values left/right/all/both to their corresponding css class "wysiwyg-clear-*"
86
- * <br clear="all"> ... becomes ... <br class="wysiwyg-clear-both">
87
- * - align_img: converts align attribute values (right/left) on <img> to their corresponding css class "wysiwyg-float-*"
88
- *
89
- * - remove: removes the element and it's content
90
- *
91
- * - rename_tag: renames the element to the given tag
92
- *
93
- * - set_class: adds the given class to the element (note: make sure that the class is in the "classes" white list above)
94
- *
95
- * - set_attributes: sets/overrides the given attributes
96
- *
97
- * - check_attributes: checks the given HTML attribute via the given method
98
- * - url: checks whether the given string is an url, deletes the attribute if not
99
- * - alt: strips unwanted characters. if the attribute is not set, then it gets set (to ensure valid and compatible HTML)
100
- * - numbers: ensures that the attribute only contains numeric characters
101
- */
102
- "tags": {
103
- "tr": {
104
- "add_class": {
105
- "align": "align_text"
106
- }
107
- },
108
- "strike": {
109
- "remove": 1
110
- },
111
- "form": {
112
- "rename_tag": "div"
113
- },
114
- "rt": {
115
- "rename_tag": "span"
116
- },
117
- "code": {},
118
- "acronym": {
119
- "rename_tag": "span"
120
- },
121
- "br": {
122
- "add_class": {
123
- "clear": "clear_br"
124
- }
125
- },
126
- "details": {
127
- "rename_tag": "div"
128
- },
129
- "h4": {
130
- "add_class": {
131
- "align": "align_text"
132
- }
133
- },
134
- "em": {},
135
- "title": {
136
- "remove": 1
137
- },
138
- "multicol": {
139
- "rename_tag": "div"
140
- },
141
- "figure": {
142
- "rename_tag": "div"
143
- },
144
- "xmp": {
145
- "rename_tag": "span"
146
- },
147
- "small": {
148
- "rename_tag": "span",
149
- "set_class": "wysiwyg-font-size-smaller"
150
- },
151
- "area": {
152
- "remove": 1
153
- },
154
- "time": {
155
- "rename_tag": "span"
156
- },
157
- "dir": {
158
- "rename_tag": "ul"
159
- },
160
- "bdi": {
161
- "rename_tag": "span"
162
- },
163
- "command": {
164
- "remove": 1
165
- },
166
- "ul": {},
167
- "progress": {
168
- "rename_tag": "span"
169
- },
170
- "dfn": {
171
- "rename_tag": "span"
172
- },
173
- "iframe": {
174
- "remove": 1
175
- },
176
- "figcaption": {
177
- "rename_tag": "div"
178
- },
179
- "a": {
180
- "check_attributes": {
181
- "href": "url"
182
- },
183
- "set_attributes": {
184
- "rel": "nofollow",
185
- "target": "_self"
186
- }
187
- },
188
- "img": {
189
- "check_attributes": {
190
- "width": "numbers",
191
- "alt": "alt",
192
- "src": "url",
193
- "height": "numbers"
194
- },
195
- "add_class": {
196
- "align": "align_img"
197
- }
198
- },
199
- "rb": {
200
- "rename_tag": "span"
201
- },
202
- "footer": {
203
- "rename_tag": "div"
204
- },
205
- "noframes": {
206
- "remove": 1
207
- },
208
- "abbr": {
209
- "rename_tag": "span"
210
- },
211
- "u": {},
212
- "bgsound": {
213
- "remove": 1
214
- },
215
- "sup": {
216
- "rename_tag": "span"
217
- },
218
- "address": {
219
- "rename_tag": "div"
220
- },
221
- "basefont": {
222
- "remove": 1
223
- },
224
- "nav": {
225
- "rename_tag": "div"
226
- },
227
- "h1": {
228
- "add_class": {
229
- "align": "align_text"
230
- }
231
- },
232
- "head": {
233
- "remove": 1
234
- },
235
- "tbody": {
236
- "add_class": {
237
- "align": "align_text"
238
- }
239
- },
240
- "dd": {
241
- "rename_tag": "div"
242
- },
243
- "s": {
244
- "rename_tag": "span"
245
- },
246
- "li": {},
247
- "td": {
248
- "check_attributes": {
249
- "rowspan": "numbers",
250
- "colspan": "numbers"
251
- },
252
- "add_class": {
253
- "align": "align_text"
254
- }
255
- },
256
- "object": {
257
- "remove": 1
258
- },
259
- "div": {
260
- "add_class": {
261
- "align": "align_text"
262
- }
263
- },
264
- "option": {
265
- "rename_tag": "span"
266
- },
267
- "select": {
268
- "rename_tag": "span"
269
- },
270
- "i": {},
271
- "track": {
272
- "remove": 1
273
- },
274
- "wbr": {
275
- "remove": 1
276
- },
277
- "fieldset": {
278
- "rename_tag": "div"
279
- },
280
- "big": {
281
- "rename_tag": "span",
282
- "set_class": "wysiwyg-font-size-larger"
283
- },
284
- "button": {
285
- "rename_tag": "span"
286
- },
287
- "noscript": {
288
- "remove": 1
289
- },
290
- "svg": {
291
- "remove": 1
292
- },
293
- "input": {
294
- "remove": 1
295
- },
296
- "table": {},
297
- "keygen": {
298
- "remove": 1
299
- },
300
- "h5": {
301
- "add_class": {
302
- "align": "align_text"
303
- }
304
- },
305
- "meta": {
306
- "remove": 1
307
- },
308
- "map": {
309
- "rename_tag": "div"
310
- },
311
- "isindex": {
312
- "remove": 1
313
- },
314
- "mark": {
315
- "rename_tag": "span"
316
- },
317
- "caption": {
318
- "add_class": {
319
- "align": "align_text"
320
- }
321
- },
322
- "tfoot": {
323
- "add_class": {
324
- "align": "align_text"
325
- }
326
- },
327
- "base": {
328
- "remove": 1
329
- },
330
- "video": {
331
- "remove": 1
332
- },
333
- "strong": {},
334
- "canvas": {
335
- "remove": 1
336
- },
337
- "output": {
338
- "rename_tag": "span"
339
- },
340
- "marquee": {
341
- "rename_tag": "span"
342
- },
343
- "b": {},
344
- "q": {
345
- "check_attributes": {
346
- "cite": "url"
347
- }
348
- },
349
- "applet": {
350
- "remove": 1
351
- },
352
- "span": {},
353
- "rp": {
354
- "rename_tag": "span"
355
- },
356
- "spacer": {
357
- "remove": 1
358
- },
359
- "source": {
360
- "remove": 1
361
- },
362
- "aside": {
363
- "rename_tag": "div"
364
- },
365
- "frame": {
366
- "remove": 1
367
- },
368
- "section": {
369
- "rename_tag": "div"
370
- },
371
- "body": {
372
- "rename_tag": "div"
373
- },
374
- "ol": {},
375
- "nobr": {
376
- "rename_tag": "span"
377
- },
378
- "html": {
379
- "rename_tag": "div"
380
- },
381
- "summary": {
382
- "rename_tag": "span"
383
- },
384
- "var": {
385
- "rename_tag": "span"
386
- },
387
- "del": {
388
- "remove": 1
389
- },
390
- "blockquote": {
391
- "check_attributes": {
392
- "cite": "url"
393
- }
394
- },
395
- "style": {
396
- "remove": 1
397
- },
398
- "device": {
399
- "remove": 1
400
- },
401
- "meter": {
402
- "rename_tag": "span"
403
- },
404
- "h3": {
405
- "add_class": {
406
- "align": "align_text"
407
- }
408
- },
409
- "textarea": {
410
- "rename_tag": "span"
411
- },
412
- "embed": {
413
- "remove": 1
414
- },
415
- "hgroup": {
416
- "rename_tag": "div"
417
- },
418
- "font": {
419
- "rename_tag": "span",
420
- "add_class": {
421
- "size": "size_font"
422
- }
423
- },
424
- "tt": {
425
- "rename_tag": "span"
426
- },
427
- "noembed": {
428
- "remove": 1
429
- },
430
- "thead": {
431
- "add_class": {
432
- "align": "align_text"
433
- }
434
- },
435
- "blink": {
436
- "rename_tag": "span"
437
- },
438
- "plaintext": {
439
- "rename_tag": "span"
440
- },
441
- "xml": {
442
- "remove": 1
443
- },
444
- "h6": {
445
- "add_class": {
446
- "align": "align_text"
447
- }
448
- },
449
- "param": {
450
- "remove": 1
451
- },
452
- "th": {
453
- "check_attributes": {
454
- "rowspan": "numbers",
455
- "colspan": "numbers"
456
- },
457
- "add_class": {
458
- "align": "align_text"
459
- }
460
- },
461
- "legend": {
462
- "rename_tag": "span"
463
- },
464
- "hr": {},
465
- "label": {
466
- "rename_tag": "span"
467
- },
468
- "dl": {
469
- "rename_tag": "div"
470
- },
471
- "kbd": {
472
- "rename_tag": "span"
473
- },
474
- "listing": {
475
- "rename_tag": "div"
476
- },
477
- "dt": {
478
- "rename_tag": "span"
479
- },
480
- "nextid": {
481
- "remove": 1
482
- },
483
- "pre": {},
484
- "center": {
485
- "rename_tag": "div",
486
- "set_class": "wysiwyg-text-align-center"
487
- },
488
- "audio": {
489
- "remove": 1
490
- },
491
- "datalist": {
492
- "rename_tag": "span"
493
- },
494
- "samp": {
495
- "rename_tag": "span"
496
- },
497
- "col": {
498
- "remove": 1
499
- },
500
- "article": {
501
- "rename_tag": "div"
502
- },
503
- "cite": {},
504
- "link": {
505
- "remove": 1
506
- },
507
- "script": {
508
- "remove": 1
509
- },
510
- "bdo": {
511
- "rename_tag": "span"
512
- },
513
- "menu": {
514
- "rename_tag": "ul"
515
- },
516
- "colgroup": {
517
- "remove": 1
518
- },
519
- "ruby": {
520
- "rename_tag": "span"
521
- },
522
- "h2": {
523
- "add_class": {
524
- "align": "align_text"
525
- }
526
- },
527
- "ins": {
528
- "rename_tag": "span"
529
- },
530
- "p": {
531
- "add_class": {
532
- "align": "align_text"
533
- }
534
- },
535
- "sub": {
536
- "rename_tag": "span"
537
- },
538
- "comment": {
539
- "remove": 1
540
- },
541
- "frameset": {
542
- "remove": 1
543
- },
544
- "optgroup": {
545
- "rename_tag": "span"
546
- },
547
- "header": {
548
- "rename_tag": "div"
549
- }
550
- }
551
- };
@@ -1,2 +0,0 @@
1
- .morris-hover{position:absolute;z-index:1000;}.morris-hover.morris-default-style{border-radius:10px;padding:6px;color:#666;background:rgba(255, 255, 255, 0.8);border:solid 2px rgba(230, 230, 230, 0.8);font-family:sans-serif;font-size:12px;text-align:center;}.morris-hover.morris-default-style .morris-hover-row-label{font-weight:bold;margin:0.25em 0;}
2
- .morris-hover.morris-default-style .morris-hover-point{white-space:nowrap;margin:0.1em 0;}