mercury-rails 0.1.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 (153) hide show
  1. data/LICENSE +20 -0
  2. data/README.rdoc +152 -0
  3. data/VERSION +1 -0
  4. data/app/assets/images/mercury/button.png +0 -0
  5. data/app/assets/images/mercury/clippy.png +0 -0
  6. data/app/assets/images/mercury/default-snippet.png +0 -0
  7. data/app/assets/images/mercury/loading-dark.gif +0 -0
  8. data/app/assets/images/mercury/loading-light.gif +0 -0
  9. data/app/assets/images/mercury/search-icon.png +0 -0
  10. data/app/assets/images/mercury/toolbar/editable/buttons.png +0 -0
  11. data/app/assets/images/mercury/toolbar/markupable/buttons.png +0 -0
  12. data/app/assets/images/mercury/toolbar/primary/_expander.png +0 -0
  13. data/app/assets/images/mercury/toolbar/primary/_pressed.png +0 -0
  14. data/app/assets/images/mercury/toolbar/primary/historypanel.png +0 -0
  15. data/app/assets/images/mercury/toolbar/primary/insertcharacter.png +0 -0
  16. data/app/assets/images/mercury/toolbar/primary/insertlink.png +0 -0
  17. data/app/assets/images/mercury/toolbar/primary/insertmedia.png +0 -0
  18. data/app/assets/images/mercury/toolbar/primary/inserttable.png +0 -0
  19. data/app/assets/images/mercury/toolbar/primary/inspectorpanel.png +0 -0
  20. data/app/assets/images/mercury/toolbar/primary/notespanel.png +0 -0
  21. data/app/assets/images/mercury/toolbar/primary/objectspanel.png +0 -0
  22. data/app/assets/images/mercury/toolbar/primary/preview.png +0 -0
  23. data/app/assets/images/mercury/toolbar/primary/redo.png +0 -0
  24. data/app/assets/images/mercury/toolbar/primary/save.png +0 -0
  25. data/app/assets/images/mercury/toolbar/primary/todospanel.png +0 -0
  26. data/app/assets/images/mercury/toolbar/primary/undo.png +0 -0
  27. data/app/assets/images/mercury/toolbar/snippetable/buttons.png +0 -0
  28. data/app/assets/javascripts/mercury.js +30 -0
  29. data/app/assets/javascripts/mercury/dialog.js.coffee +75 -0
  30. data/app/assets/javascripts/mercury/dialogs/backcolor.js.coffee +6 -0
  31. data/app/assets/javascripts/mercury/dialogs/forecolor.js.coffee +6 -0
  32. data/app/assets/javascripts/mercury/dialogs/formatblock.js.coffee +4 -0
  33. data/app/assets/javascripts/mercury/dialogs/objectspanel.js.coffee +10 -0
  34. data/app/assets/javascripts/mercury/dialogs/style.js.coffee +4 -0
  35. data/app/assets/javascripts/mercury/history_buffer.js.coffee +30 -0
  36. data/app/assets/javascripts/mercury/mercury.js.coffee +293 -0
  37. data/app/assets/javascripts/mercury/modal.js.coffee +177 -0
  38. data/app/assets/javascripts/mercury/modals/htmleditor.js.coffee +10 -0
  39. data/app/assets/javascripts/mercury/modals/insertcharacter.js.coffee +4 -0
  40. data/app/assets/javascripts/mercury/modals/insertlink.js.coffee +92 -0
  41. data/app/assets/javascripts/mercury/modals/insertmedia.js.coffee +72 -0
  42. data/app/assets/javascripts/mercury/modals/insertsnippet.js.coffee +11 -0
  43. data/app/assets/javascripts/mercury/modals/inserttable.js.coffee +56 -0
  44. data/app/assets/javascripts/mercury/native_extensions.js.coffee +47 -0
  45. data/app/assets/javascripts/mercury/page_editor.js.coffee +139 -0
  46. data/app/assets/javascripts/mercury/palette.js.coffee +29 -0
  47. data/app/assets/javascripts/mercury/panel.js.coffee +97 -0
  48. data/app/assets/javascripts/mercury/region.js.coffee +103 -0
  49. data/app/assets/javascripts/mercury/regions/editable.js.coffee +546 -0
  50. data/app/assets/javascripts/mercury/regions/markupable.js.coffee +380 -0
  51. data/app/assets/javascripts/mercury/regions/snippetable.js.coffee +127 -0
  52. data/app/assets/javascripts/mercury/select.js.coffee +40 -0
  53. data/app/assets/javascripts/mercury/snippet.js.coffee +92 -0
  54. data/app/assets/javascripts/mercury/snippet_toolbar.js.coffee +69 -0
  55. data/app/assets/javascripts/mercury/statusbar.js.coffee +25 -0
  56. data/app/assets/javascripts/mercury/table_editor.js.coffee +266 -0
  57. data/app/assets/javascripts/mercury/toolbar.button.js.coffee +152 -0
  58. data/app/assets/javascripts/mercury/toolbar.button_group.js.coffee +42 -0
  59. data/app/assets/javascripts/mercury/toolbar.expander.js.coffee +56 -0
  60. data/app/assets/javascripts/mercury/toolbar.js.coffee +72 -0
  61. data/app/assets/javascripts/mercury/tooltip.js.coffee +67 -0
  62. data/app/assets/javascripts/mercury/uploader.js.coffee +213 -0
  63. data/app/assets/javascripts/mercury/websocket.js.coffee +34 -0
  64. data/app/assets/stylesheets/mercury.css +31 -0
  65. data/app/assets/stylesheets/mercury/dialog.scss +178 -0
  66. data/app/assets/stylesheets/mercury/mercury.scss +119 -0
  67. data/app/assets/stylesheets/mercury/modal.scss +192 -0
  68. data/app/assets/stylesheets/mercury/statusbar.scss +23 -0
  69. data/app/assets/stylesheets/mercury/toolbar.scss +417 -0
  70. data/app/assets/stylesheets/mercury/tooltip.scss +26 -0
  71. data/app/assets/stylesheets/mercury/uploader.scss +109 -0
  72. data/app/controllers/images_controller.rb +19 -0
  73. data/app/controllers/mercury_controller.rb +20 -0
  74. data/app/models/image.rb +14 -0
  75. data/app/views/layouts/mercury.html.haml +12 -0
  76. data/app/views/mercury/modals/character.html.haml +252 -0
  77. data/app/views/mercury/modals/htmleditor.html.haml +8 -0
  78. data/app/views/mercury/modals/link.html.haml +31 -0
  79. data/app/views/mercury/modals/media.html.haml +33 -0
  80. data/app/views/mercury/modals/sanitizer.html.haml +4 -0
  81. data/app/views/mercury/modals/table.html.haml +49 -0
  82. data/app/views/mercury/palettes/backcolor.html.haml +79 -0
  83. data/app/views/mercury/palettes/forecolor.html.haml +79 -0
  84. data/app/views/mercury/panels/history.html.haml +0 -0
  85. data/app/views/mercury/panels/notes.html.haml +0 -0
  86. data/app/views/mercury/panels/snippets.html.haml +10 -0
  87. data/app/views/mercury/selects/formatblock.html.haml +10 -0
  88. data/app/views/mercury/selects/style.html.haml +4 -0
  89. data/app/views/mercury/snippets/example.html.haml +2 -0
  90. data/app/views/mercury/snippets/example_options.html.haml +16 -0
  91. data/config/engine.rb +6 -0
  92. data/config/routes.rb +15 -0
  93. data/db/migrate/20110526035601_create_images.rb +11 -0
  94. data/features/editing/basic.feature +11 -0
  95. data/features/step_definitions/debug_steps.rb +14 -0
  96. data/features/step_definitions/web_steps.rb +211 -0
  97. data/features/support/env.rb +46 -0
  98. data/features/support/paths.rb +35 -0
  99. data/features/support/selectors.rb +42 -0
  100. data/lib/mercury-rails.rb +4 -0
  101. data/log/.gitkeep +0 -0
  102. data/mercury-rails.gemspec +230 -0
  103. data/spec/javascripts/mercury/dialog_spec.js.coffee +258 -0
  104. data/spec/javascripts/mercury/history_buffer_spec.js.coffee +79 -0
  105. data/spec/javascripts/mercury/mercury_spec.js.coffee +52 -0
  106. data/spec/javascripts/mercury/native_extensions_spec.js.coffee +66 -0
  107. data/spec/javascripts/mercury/page_editor_spec.js.coffee +435 -0
  108. data/spec/javascripts/mercury/palette_spec.js.coffee +51 -0
  109. data/spec/javascripts/mercury/panel_spec.js.coffee +147 -0
  110. data/spec/javascripts/mercury/region_spec.js.coffee +261 -0
  111. data/spec/javascripts/mercury/regions/_editable_.js.coffee +0 -0
  112. data/spec/javascripts/mercury/regions/_markupable_.js.coffee +0 -0
  113. data/spec/javascripts/mercury/regions/snippetable_spec.js.coffee +368 -0
  114. data/spec/javascripts/mercury/select_spec.js.coffee +51 -0
  115. data/spec/javascripts/mercury/snippet_spec.js.coffee +246 -0
  116. data/spec/javascripts/mercury/snippet_toolbar_spec.js.coffee +186 -0
  117. data/spec/javascripts/mercury/statusbar_spec.js.coffee +78 -0
  118. data/spec/javascripts/mercury/table_editor_spec.js.coffee +192 -0
  119. data/spec/javascripts/mercury/toolbar.button_group_spec.js.coffee +92 -0
  120. data/spec/javascripts/mercury/toolbar.button_spec.js.coffee +341 -0
  121. data/spec/javascripts/mercury/toolbar.expander_spec.js.coffee +120 -0
  122. data/spec/javascripts/mercury/toolbar_spec.js.coffee +152 -0
  123. data/spec/javascripts/mercury/tooltip_spec.js.coffee +188 -0
  124. data/spec/javascripts/mercury/uploader_spec.js.coffee +512 -0
  125. data/spec/javascripts/responses/blank.html +1 -0
  126. data/spec/javascripts/spec_helper.js +513 -0
  127. data/spec/javascripts/templates/mercury/dialog.html +2 -0
  128. data/spec/javascripts/templates/mercury/page_editor.html +24 -0
  129. data/spec/javascripts/templates/mercury/palette.html +16 -0
  130. data/spec/javascripts/templates/mercury/panel.html +16 -0
  131. data/spec/javascripts/templates/mercury/region.html +2 -0
  132. data/spec/javascripts/templates/mercury/regions/snippetable.html +4 -0
  133. data/spec/javascripts/templates/mercury/select.html +16 -0
  134. data/spec/javascripts/templates/mercury/snippet.html +1 -0
  135. data/spec/javascripts/templates/mercury/snippet_toolbar.html +16 -0
  136. data/spec/javascripts/templates/mercury/statusbar.html +7 -0
  137. data/spec/javascripts/templates/mercury/table_editor.html +65 -0
  138. data/spec/javascripts/templates/mercury/toolbar.button.html +64 -0
  139. data/spec/javascripts/templates/mercury/toolbar.button_group.html +9 -0
  140. data/spec/javascripts/templates/mercury/toolbar.expander.html +18 -0
  141. data/spec/javascripts/templates/mercury/toolbar.html +10 -0
  142. data/spec/javascripts/templates/mercury/tooltip.html +12 -0
  143. data/spec/javascripts/templates/mercury/uploader.html +11 -0
  144. data/vendor/assets/javascripts/jquery-1.6.js +8865 -0
  145. data/vendor/assets/javascripts/jquery-ui-1.8.13.custom.min.js +249 -0
  146. data/vendor/assets/javascripts/jquery-ui-1.8.13.sortable.custom.js +1078 -0
  147. data/vendor/assets/javascripts/jquery.easing.js +173 -0
  148. data/vendor/assets/javascripts/jquery.json2.js +178 -0
  149. data/vendor/assets/javascripts/jquery.serialize_object.js +16 -0
  150. data/vendor/assets/javascripts/jquery.ujs.js +289 -0
  151. data/vendor/assets/javascripts/liquidmetal.js +88 -0
  152. data/vendor/assets/javascripts/showdown.js +1362 -0
  153. metadata +364 -0
@@ -0,0 +1,34 @@
1
+ #Mercury.websocket =
2
+ #
3
+ # websocket: $.websocket("ws://#{$.uri(window.location.href).host}:8081")
4
+ #
5
+ #
6
+ # send: (eventName, options) ->
7
+ # package = {}
8
+ # package[eventName] = options
9
+ # @websocket.send(package)
10
+ #
11
+ #
12
+ # bind: (eventName, callback) ->
13
+ # # todo: this will override any that are already set -- callbacks should be an array that we can push onto
14
+ # $.websocketSettings[eventName] = callback
15
+
16
+ #window.socket = $.websocket(, {
17
+ # lock: (element) ->
18
+ # $('#' + element).attr('disabled', true);
19
+ #
20
+ # unlock: (element) ->
21
+ # $('#' + element).attr('disabled', false);
22
+ #
23
+ # chat: (element) ->
24
+ # $('#chat').get(0).innerHTML += message + "<br/>";
25
+ #});
26
+ #
27
+ #$(document).ready ->
28
+ #
29
+ # $('.shared').bind 'focus', -> window.socket.send({"lock": this.id})
30
+ #
31
+ # $('.shared').bind 'blur', -> window.socket.send({"unlock": this.id})
32
+ #
33
+ # $('.shared').bind 'keypress', (e) ->
34
+ # window.socket.send({chat: $(this).val()}) if (e.charCode == 13)
@@ -0,0 +1,31 @@
1
+ /*!
2
+ * Mercury Editor is a Coffeescript and jQuery based WYSIWYG editor. Mercury Editor utilizes the HTML5 ContentEditable
3
+ * spec to allow editing sections of a given page (instead of using iframes) and provides an editing experience that's as
4
+ * realistic as possible. By not using iframes for editable regions it allows CSS to behave naturally.
5
+ *
6
+ * Mercury Editor was written for the future, and doesn't attempt to support legacy implementations of document editing.
7
+ *
8
+ * Currently supported browsers are
9
+ * - Firefox 4+
10
+ * - Chrome 10+
11
+ * - Safari 5+
12
+ *
13
+ * Copyright (c) 2011 Jeremy Jackson
14
+ *
15
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
16
+ * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
17
+ * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
18
+ * persons to whom the Software is furnished to do so, subject to the following conditions:
19
+ *
20
+ * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
21
+ * Software.
22
+ *
23
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
24
+ * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
25
+ * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
26
+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27
+ *
28
+ *= require_self
29
+ *= require mercury/mercury
30
+ */
31
+
@@ -0,0 +1,178 @@
1
+ /*
2
+ * Dialogs
3
+ *----------------------------------------------------------------------------*/
4
+ .mercury-dialog,
5
+ .mercury-select,
6
+ .mercury-palette {
7
+ -webkit-user-select: none;
8
+ -moz-user-select: none;
9
+ user-select: none;
10
+ position: absolute;
11
+ z-index: 10012;
12
+ width: 30px;
13
+ height: 30px;
14
+ border: 1px solid #727272;
15
+ border-radius: 2px;
16
+ -moz-border-radius: 2px;
17
+ margin-top: -1px;
18
+ background-color: #E2E1E2;
19
+ box-shadow: 1px 1px 4px rgba(0,0,0, .5);
20
+ -moz-box-shadow: 1px 1px 4px rgba(0,0,0, .5);
21
+ font-family: Helvetica, Tahoma, Arial, sans-serif;
22
+ font-size: 8.5pt;
23
+ &.loading {
24
+ background-image: url(/assets/mercury/loading-light.gif);
25
+ background-repeat: no-repeat;
26
+ background-position: center;
27
+ }
28
+ }
29
+ /*
30
+ * Selects
31
+ *----------------------------------------------------------------------------*/
32
+ .mercury-select {
33
+ border-radius: 4px;
34
+ -moz-border-radius: 4px;
35
+ overflow: auto;
36
+ background-color: #FFF;
37
+ }
38
+ /*
39
+ * Panels
40
+ *----------------------------------------------------------------------------*/
41
+ .mercury-panel {
42
+ position: absolute;
43
+ z-index: 10011;
44
+ background-color: #111;
45
+ opacity: .9;
46
+ box-shadow: 1px 1px 4px rgba(0,0,0, .5);
47
+ -moz-box-shadow: 1px 1px 4px rgba(0,0,0, .5);
48
+ border-radius: 4px;
49
+ -moz-border-radius: 4px;
50
+ color: #FFF;
51
+ font-family: Helvetica, Tahoma, Arial, sans-serif;
52
+ font-size: 9.5pt;
53
+ max-width: 500px;
54
+ &.loading {
55
+ background-image: url(/assets/mercury/loading-dark.gif);
56
+ background-repeat: no-repeat;
57
+ background-position: center;
58
+ }
59
+ h1,
60
+ h3 {
61
+ font-size: 9pt;
62
+ padding: 10px 15px 8px;
63
+ margin: 0;
64
+ background: #333;
65
+ white-space: nowrap;
66
+ }
67
+ h1 {
68
+ -webkit-user-select: none;
69
+ -moz-user-select: none;
70
+ user-select: none;
71
+ font-size: 10pt;
72
+ -moz-border-radius-topleft: 4px;
73
+ -moz-border-radius-topright: 4px;
74
+ border-top-left-radius: 4px;
75
+ border-top-right-radius: 4px;
76
+ height: 15px;
77
+ cursor: move;
78
+ text-shadow: 1px 1px 2px rgba(0,0,0, .9);
79
+ }
80
+ h4, h5, h6 {
81
+ margin: 0;
82
+ }
83
+ .mercury-panel-pane {
84
+ box-sizing: border-box;
85
+ -moz-box-sizing: border-box;
86
+ padding: 15px;
87
+ overflow-y: auto;
88
+ overflow-x: hidden;
89
+ width: 100%;
90
+ h3 {
91
+ margin: 10px -15px;
92
+ font-size: 9.5pt;
93
+ font-weight: normal;
94
+ padding: 8px 14px;
95
+ }
96
+ }
97
+ }
98
+ /*
99
+ * Specific Dialogs (eg. color palettes, selects)
100
+ *----------------------------------------------------------------------------*/
101
+ .mercury-color-picker {
102
+ width: 170px;
103
+ height: auto;
104
+ padding: 1px;
105
+ cursor: default;
106
+ .picker {
107
+ float: left;
108
+ width: 15px;
109
+ height: 15px;
110
+ margin: 1px;
111
+ &:hover {
112
+ outline: 1px solid #333;
113
+ }
114
+ }
115
+ .last-picked {
116
+ position: relative;
117
+ top: 1px;
118
+ width: 166px;
119
+ border: 1px solid #333;
120
+ border-radius: 2px;
121
+ margin: 1px 1px 2px 1px;
122
+ -moz-border-radius: 2px;
123
+ clear: left;
124
+ text-align: center;
125
+ }
126
+ }
127
+ .mercury-select-options {
128
+ margin: 10px 0;
129
+ white-space: nowrap;
130
+ * {
131
+ cursor: default;
132
+ padding: 0 10px;
133
+ margin: 0;
134
+ line-height: 1.6em;
135
+ }
136
+ *:hover {
137
+ background-color: #E2E1E2 !important;
138
+ color: #000 !important;
139
+ }
140
+ div[data-tag=pre] {
141
+ font-family: monospace;
142
+ }
143
+ }
144
+ /*
145
+ * Specific Panels (eg. snippets, notes, todos)
146
+ *----------------------------------------------------------------------------*/
147
+ .mercury-snippet-panel {
148
+ width: 300px;
149
+ input.filter {
150
+ outline: none;
151
+ font-size: 1em;
152
+ border-radius: 30px;
153
+ moz-border-radius: 30px;
154
+ width: 100%;
155
+ padding-left: 20px;
156
+ background: #FFF url(/assets/mercury/search-icon.png) no-repeat 4px center;
157
+ }
158
+ ul {
159
+ font-size: .9em;
160
+ padding: 10px 0 0 0;
161
+ margin: 0;
162
+ list-style-type: none;
163
+ li {
164
+ clear: both;
165
+ padding-top: 20px;
166
+ img {
167
+ float: left;
168
+ }
169
+ h4, .description {
170
+ float: right;
171
+ width: 245px;
172
+ }
173
+ h4 {
174
+ margin-bottom: 5px;
175
+ }
176
+ }
177
+ }
178
+ }
@@ -0,0 +1,119 @@
1
+ /*
2
+ *= require_self
3
+ *= require ./dialog
4
+ *= require ./modal
5
+ *= require ./statusbar
6
+ *= require ./toolbar
7
+ *= require ./tooltip
8
+ *= require ./uploader
9
+ */
10
+
11
+
12
+ html, body {
13
+ margin: 0;
14
+ padding: 0;
15
+ overflow: hidden;
16
+ }
17
+
18
+
19
+ /*
20
+ * Forms
21
+ *---------------------------------------------------------------------------*/
22
+ form, form ul, form ol, form li, form fieldset, form p, .filter {
23
+ margin: 0;
24
+ padding: 0;
25
+ abbr {
26
+ border: 0;
27
+ font-variant: normal;
28
+ }
29
+ fieldset {
30
+ margin-bottom: 10px;
31
+ background: #F6F6F6;
32
+ border: 1px solid #CCC;
33
+ border-radius: 7px;
34
+ -moz-border-radius: 7px;
35
+ &:last-child {
36
+ margin-bottom: 0;
37
+ }
38
+ legend {
39
+ font-weight: bold;
40
+ margin-left: 10px;
41
+ margin-bottom: -4px;
42
+ }
43
+ ol {
44
+ margin: 12px 9px;
45
+ li {
46
+ display: block;
47
+ margin-bottom: 10px;
48
+ }
49
+ }
50
+ }
51
+ label {
52
+ display: block;
53
+ float: left;
54
+ width: 23%;
55
+ margin-right: 9px;
56
+ text-align: right;
57
+ line-height: 27px;
58
+ font-size: 1.1em;
59
+ input {
60
+ width: auto !important;
61
+ margin: 0 5px 0 -20px !important;
62
+ }
63
+ }
64
+ select,
65
+ input[type=text],
66
+ input[type=password],
67
+ textarea,
68
+ input.text {
69
+ margin: 0;
70
+ border: 2px solid #CCC;
71
+ padding: 2px 4px;
72
+ font-family: Arial, Geneva, sans-serif;
73
+ font-size: 1.5em;
74
+ width: 74%;
75
+ box-sizing: border-box;
76
+ -moz-box-sizing: border-box;
77
+ }
78
+ fieldset.buttons {
79
+ clear: both;
80
+ padding: 0;
81
+ background: none;
82
+ border: none;
83
+ text-align: left;
84
+ ol {
85
+ margin: 0 -2px 0 0;
86
+ float: right;
87
+ li {
88
+ float: left;
89
+ padding-left: 0.5em;
90
+ padding-right: 0;
91
+ }
92
+ }
93
+ .commit {
94
+ margin: 0;
95
+ input {
96
+ padding: 8px 14px 9px !important;
97
+ font-family: 'HelveticaNeue-Light', 'Helvetica Neue Light', 'Helvetica Neue', sans-serif;
98
+ font-size: 1.3em;
99
+ background: #222 url(/assets/mercury/button.png) repeat-x;
100
+ display: inline-block;
101
+ color: #FFF;
102
+ text-decoration: none;
103
+ -moz-border-radius: 5px;
104
+ -webkit-border-radius: 5px;
105
+ -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
106
+ -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
107
+ text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.25);
108
+ border: 0;
109
+ border-bottom: 1px solid rgba(0, 0, 0, 0.25);
110
+ position: relative;
111
+ cursor: pointer;
112
+ line-height: normal;
113
+ &:hover {
114
+ background-color: #000;
115
+ }
116
+ }
117
+ }
118
+ }
119
+ }
@@ -0,0 +1,192 @@
1
+ /*
2
+ * Modal
3
+ *----------------------------------------------------------------------------*/
4
+ .mercury-modal-overlay {
5
+ position: absolute;
6
+ z-index: 10040;
7
+ top: 0;
8
+ left: 0;
9
+ width: 100%;
10
+ height: 100%;
11
+ opacity: 0;
12
+ display: none;
13
+ background: rgba(0,0,0, .65);
14
+ }
15
+ .mercury-modal {
16
+ position: absolute;
17
+ z-index: 10050;
18
+ top: 0;
19
+ width: 500px;
20
+ overflow: hidden;
21
+ padding: 0 0 10px;
22
+ background: #EFEFEF;
23
+ -webkit-border-bottom-left-radius: 4px;
24
+ -webkit-border-bottom-right-radius: 4px;
25
+ -moz-border-radius-bottomleft: 4px;
26
+ -moz-border-radius-bottomright: 4px;
27
+ border-bottom-left-radius: 4px;
28
+ border-bottom-right-radius: 4px;
29
+ -moz-box-shadow: 0 0 40px rgba(0, 0, 0, .9);
30
+ box-shadow: 0 0 40px rgba(0, 0, 0, .9);
31
+ font: normal normal normal 12px/normal Helvetica, Tahoma, Arial, sans-serif;
32
+ &.loading .mercury-modal-content-container {
33
+ background: #EFEFEF url(/assets/mercury/loading-light.gif) no-repeat center;
34
+ }
35
+ h1.mercury-modal-title {
36
+ -webkit-user-select: none;
37
+ -moz-user-select: none;
38
+ user-select: none;
39
+ margin: 0;
40
+ padding: 2px 10px 0 10px;
41
+ background: #DDD;
42
+ border-bottom: 1px solid #CCC;
43
+ white-space: nowrap;
44
+ font-size: 14px;
45
+ line-height: 23px;
46
+ overflow: hidden;
47
+ &:after {
48
+ content: '\00a0';
49
+ display: block;
50
+ visibility: hidden;
51
+ clear: both;
52
+ height: 0;
53
+ }
54
+ span {
55
+ float: left;
56
+ color: #000;
57
+ text-shadow: #EEE 1px 1px 0;
58
+ }
59
+ a {
60
+ display: block;
61
+ float: right;
62
+ font-size: 10px;
63
+ cursor: pointer;
64
+ color: #666;
65
+ padding: 0 4px;
66
+ line-height: 23px;
67
+ &:hover {
68
+ color: #333;
69
+ }
70
+ }
71
+ }
72
+ .mercury-modal-content-container {
73
+ float: left;
74
+ width: 100%;
75
+ }
76
+ .mercury-modal-content {
77
+ position: relative;
78
+ overflow: auto;
79
+ float: left;
80
+ -moz-box-sizing: border-box;
81
+ box-sizing: border-box;
82
+ padding: 20px 20px 10px;
83
+ font-family: Helvetica, Tahoma, Arial, sans-serif;
84
+ color: #000;
85
+ &:after {
86
+ display: block;
87
+ clear: both;
88
+ content: '\00a0';
89
+ visibility: hidden;
90
+ overflow: hidden;
91
+ height: 0;
92
+ }
93
+ }
94
+ .mercury-modal-pane-container {
95
+ overflow: auto;
96
+ margin: -20px -20px 0;
97
+ padding: 20px 20px 10px;
98
+ .mercury-modal-pane {
99
+ float: left;
100
+ }
101
+ }
102
+ .mercury-modal-controls {
103
+ padding: 15px 0 0;
104
+ border-top: 1px solid #CCC;
105
+ text-align: right;
106
+ }
107
+ textarea {
108
+ resize: none;
109
+ padding: 0;
110
+ box-sizing: border-box;
111
+ -moz-box-sizing: border-box;
112
+ }
113
+ }
114
+ /*
115
+ * Specific Modals (eg. htmleditor)
116
+ *----------------------------------------------------------------------------*/
117
+ /* htmleditor */
118
+ #mercury_htmleditor {
119
+ textarea {
120
+ margin: 0 0 -2px 0;
121
+ padding: 0;
122
+ border: 2px solid #CCC;
123
+ width: 100%;
124
+ }
125
+ .mercury-modal-controls {
126
+ border: 0;
127
+ margin-top: -2px;
128
+ }
129
+ }
130
+ /* html sanitizer (when pasting from msword) */
131
+ #mercury_sanitizer {
132
+ .information {
133
+ background: url(/assets/mercury/clippy.png) no-repeat top left;
134
+ min-height: 65px;
135
+ padding-left: 50px;
136
+ margin-bottom: 10px;
137
+ }
138
+ textarea {
139
+ width: 100%;
140
+ font-family: monospace;
141
+ white-space: pre;
142
+ }
143
+ }
144
+ /* insertcharacter */
145
+ #mercury_insertcharacter {
146
+ .character {
147
+ float: left;
148
+ width: 20px;
149
+ height: 20px;
150
+ border: 1px solid #999;
151
+ background: #FFF;
152
+ margin: 0 2px 2px 0;
153
+ text-align: center;
154
+ font-size: 11pt;
155
+ line-height: 23px;
156
+ cursor: pointer;
157
+ &:hover {
158
+ position: relative;
159
+ margin: -11px -5px 1px -5px;
160
+ width: 32px;
161
+ height: 32px;
162
+ font-size: 19pt;
163
+ line-height: 35px;
164
+ background: #DDD;
165
+ }
166
+ }
167
+ }
168
+ /* table */
169
+ #mercury_table {
170
+ #table_display {
171
+ width: 285px;
172
+ height: 285px;
173
+ float: left;
174
+ padding: 10px;
175
+ background: #F6F6F6;
176
+ border: 1px solid #CCC;
177
+ border-radius: 7px;
178
+ -moz-border-radius: 7px;
179
+ table {
180
+ width: 100%;
181
+ height: 100%;
182
+ }
183
+ td.selected {
184
+ background: #09F;
185
+ }
186
+ }
187
+ #table_options {
188
+ width: 383px;
189
+ float: left;
190
+ margin-left: 10px;
191
+ }
192
+ }