spree_static_content 0.30.0.beta1 → 0.30.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. data/VERSION +1 -0
  2. data/app/controllers/spree/base_controller_decorator.rb +29 -0
  3. data/config/locales/en.yml +22 -0
  4. data/lib/generators/spree_static_content/install_generator.rb +19 -0
  5. data/lib/generators/templates/db/migrate/20081216193152_create_pages.rb +15 -0
  6. data/lib/generators/templates/db/migrate/20090625125735_extend_pages.rb +21 -0
  7. data/lib/generators/templates/db/migrate/20090814113100_add_visible_to_pages.rb +10 -0
  8. data/lib/generators/templates/db/migrate/20090814142845_add_default_true_to_visible_for_page.rb +8 -0
  9. data/lib/generators/templates/db/migrate/20090829000527_add_index_for_page.rb +10 -0
  10. data/lib/generators/templates/db/migrate/20091219021134_add_meta_fields_to_pages.rb +9 -0
  11. data/lib/generators/templates/db/migrate/20100204105222_add_layout_to_pages.rb +9 -0
  12. data/lib/generators/templates/db/migrate/20100323085528_add_show_in_sidebar_option_to_pages.rb +9 -0
  13. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/lbl-blockquote.png +0 -0
  14. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/lbl-h1.png +0 -0
  15. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/lbl-h2.png +0 -0
  16. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/lbl-h3.png +0 -0
  17. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/lbl-h4.png +0 -0
  18. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/lbl-h5.png +0 -0
  19. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/lbl-h6.png +0 -0
  20. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/lbl-p.png +0 -0
  21. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/lbl-pre.png +0 -0
  22. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/wymiframe.css +90 -0
  23. data/lib/generators/templates/public/javascripts/wymeditor/iframe/default/wymiframe.html +25 -0
  24. data/lib/generators/templates/public/javascripts/wymeditor/jquery.wymeditor.js +4676 -0
  25. data/lib/generators/templates/public/javascripts/wymeditor/jquery.wymeditor.pack.js +1 -0
  26. data/lib/generators/templates/public/javascripts/wymeditor/lang/ca.js +45 -0
  27. data/lib/generators/templates/public/javascripts/wymeditor/lang/cs.js +45 -0
  28. data/lib/generators/templates/public/javascripts/wymeditor/lang/de.js +45 -0
  29. data/lib/generators/templates/public/javascripts/wymeditor/lang/en.js +45 -0
  30. data/lib/generators/templates/public/javascripts/wymeditor/lang/es.js +45 -0
  31. data/lib/generators/templates/public/javascripts/wymeditor/lang/fa.js +46 -0
  32. data/lib/generators/templates/public/javascripts/wymeditor/lang/fr.js +45 -0
  33. data/lib/generators/templates/public/javascripts/wymeditor/lang/he.js +45 -0
  34. data/lib/generators/templates/public/javascripts/wymeditor/lang/hu.js +45 -0
  35. data/lib/generators/templates/public/javascripts/wymeditor/lang/it.js +45 -0
  36. data/lib/generators/templates/public/javascripts/wymeditor/lang/nb.js +45 -0
  37. data/lib/generators/templates/public/javascripts/wymeditor/lang/nl.js +45 -0
  38. data/lib/generators/templates/public/javascripts/wymeditor/lang/nn.js +45 -0
  39. data/lib/generators/templates/public/javascripts/wymeditor/lang/pl.js +45 -0
  40. data/lib/generators/templates/public/javascripts/wymeditor/lang/pt-br.js +45 -0
  41. data/lib/generators/templates/public/javascripts/wymeditor/lang/pt.js +45 -0
  42. data/lib/generators/templates/public/javascripts/wymeditor/lang/ru.js +45 -0
  43. data/lib/generators/templates/public/javascripts/wymeditor/lang/sv.js +45 -0
  44. data/lib/generators/templates/public/javascripts/wymeditor/lang/tr.js +45 -0
  45. data/lib/generators/templates/public/javascripts/wymeditor/lang/zh_cn.js +47 -0
  46. data/lib/generators/templates/public/javascripts/wymeditor/plugins/hovertools/jquery.wymeditor.hovertools.js +57 -0
  47. data/lib/generators/templates/public/javascripts/wymeditor/plugins/resizable/jquery.wymeditor.resizable.js +102 -0
  48. data/lib/generators/templates/public/javascripts/wymeditor/plugins/resizable/readme.txt +124 -0
  49. data/lib/generators/templates/public/javascripts/wymeditor/plugins/tidy/README +19 -0
  50. data/lib/generators/templates/public/javascripts/wymeditor/plugins/tidy/jquery.wymeditor.tidy.js +82 -0
  51. data/lib/generators/templates/public/javascripts/wymeditor/plugins/tidy/tidy.php +36 -0
  52. data/lib/generators/templates/public/javascripts/wymeditor/plugins/tidy/wand.png +0 -0
  53. data/lib/generators/templates/public/javascripts/wymeditor/skins/default/icons.png +0 -0
  54. data/lib/generators/templates/public/javascripts/wymeditor/skins/default/skin.css +133 -0
  55. data/lib/generators/templates/public/javascripts/wymeditor/skins/default/skin.js +40 -0
  56. data/lib/generators/templates/public/javascripts/wymeditor/skins/minimal/images/bg.header.gif +0 -0
  57. data/lib/generators/templates/public/javascripts/wymeditor/skins/minimal/images/bg.selector.silver.gif +0 -0
  58. data/lib/generators/templates/public/javascripts/wymeditor/skins/minimal/images/bg.wymeditor.png +0 -0
  59. data/lib/generators/templates/public/javascripts/wymeditor/skins/minimal/images/icons.silver.gif +0 -0
  60. data/lib/generators/templates/public/javascripts/wymeditor/skins/minimal/skin.css +131 -0
  61. data/lib/generators/templates/public/javascripts/wymeditor/skins/minimal/skin.js +30 -0
  62. data/lib/generators/templates/public/javascripts/wymeditor/skins/silver/COPYING +674 -0
  63. data/lib/generators/templates/public/javascripts/wymeditor/skins/silver/README +27 -0
  64. data/lib/generators/templates/public/javascripts/wymeditor/skins/silver/images/bg.header.gif +0 -0
  65. data/lib/generators/templates/public/javascripts/wymeditor/skins/silver/images/bg.selector.silver.gif +0 -0
  66. data/lib/generators/templates/public/javascripts/wymeditor/skins/silver/images/bg.wymeditor.png +0 -0
  67. data/lib/generators/templates/public/javascripts/wymeditor/skins/silver/images/icons.silver.gif +0 -0
  68. data/lib/generators/templates/public/javascripts/wymeditor/skins/silver/skin.css +297 -0
  69. data/lib/generators/templates/public/javascripts/wymeditor/skins/silver/skin.js +61 -0
  70. data/lib/generators/templates/public/javascripts/wymeditor/skins/twopanels/icons.png +0 -0
  71. data/lib/generators/templates/public/javascripts/wymeditor/skins/twopanels/skin.css +134 -0
  72. data/lib/generators/templates/public/javascripts/wymeditor/skins/twopanels/skin.js +39 -0
  73. data/lib/generators/templates/public/javascripts/wymeditor/skins/wymeditor_icon.png +0 -0
  74. data/lib/generators/templates/public/stylesheets/static.css +42 -0
  75. data/lib/spree_static_content.rb +15 -0
  76. data/lib/spree_static_content_hooks.rb +5 -0
  77. data/spree_static_content.gemspec +146 -0
  78. metadata +83 -9
@@ -0,0 +1,57 @@
1
+ /*
2
+ * WYMeditor : what you see is What You Mean web-based editor
3
+ * Copyright (c) 2008 Jean-Francois Hovinne, http://www.wymeditor.org/
4
+ * Dual licensed under the MIT (MIT-license.txt)
5
+ * and GPL (GPL-license.txt) licenses.
6
+ *
7
+ * For further information visit:
8
+ * http://www.wymeditor.org/
9
+ *
10
+ * File Name:
11
+ * jquery.wymeditor.hovertools.js
12
+ * hovertools plugin for WYMeditor
13
+ *
14
+ * File Authors:
15
+ * Jean-Francois Hovinne (jf.hovinne a-t wymeditor dotorg)
16
+ */
17
+
18
+ //Extend WYMeditor
19
+ WYMeditor.editor.prototype.hovertools = function() {
20
+
21
+ var wym = this;
22
+
23
+ //bind events on buttons
24
+ jQuery(this._box).find(this._options.toolSelector).hover(
25
+ function() {
26
+ wym.status(jQuery(this).html());
27
+ },
28
+ function() {
29
+ wym.status(' ');
30
+ }
31
+ );
32
+
33
+ //classes: add/remove a style attr to matching elems
34
+ //while mouseover/mouseout
35
+ jQuery(this._box).find(this._options.classSelector).hover(
36
+ function() {
37
+ var aClasses = eval(wym._options.classesItems);
38
+ var sName = jQuery(this).attr(WYMeditor.NAME);
39
+ var oClass = WYMeditor.Helper.findByName(aClasses, sName);
40
+
41
+ if(oClass){
42
+ jqexpr = oClass.expr;
43
+ //don't use jQuery.find() on the iframe body
44
+ //because of MSIE + jQuery + expando issue (#JQ1143)
45
+ if(!jQuery.browser.msie)
46
+ jQuery(wym._doc).find(jqexpr).css('background-color','#cfc');
47
+ }
48
+ },
49
+ function() {
50
+ //don't use jQuery.find() on the iframe body
51
+ //because of MSIE + jQuery + expando issue (#JQ1143)
52
+ if(!jQuery.browser.msie)
53
+ jQuery(wym._doc).find('*').removeAttr('style');
54
+ }
55
+ );
56
+
57
+ };
@@ -0,0 +1,102 @@
1
+ /*
2
+ * WYMeditor : what you see is What You Mean web-based editor
3
+ * Copyright (c) 2008 Jean-Francois Hovinne, http://www.wymeditor.org/
4
+ * Dual licensed under the MIT (MIT-license.txt)
5
+ * and GPL (GPL-license.txt) licenses.
6
+ *
7
+ * For further information visit:
8
+ * http://www.wymeditor.org/
9
+ *
10
+ * File Name:
11
+ * jquery.wymeditor.resizable.js
12
+ * resize plugin for WYMeditor
13
+ *
14
+ * File Authors:
15
+ * Peter Eschler (peschler _at_ gmail.com)
16
+ *
17
+ * Version:
18
+ * 0.3
19
+ *
20
+ * Changelog:
21
+ *
22
+ * 0.3
23
+ * - Added 'iframeOriginalSize' and removed 'ui.instance' calls (jfh).
24
+ *
25
+ * 0.2
26
+ * - Added full support for all jQueryUI resizable plugin options.
27
+ * - Refactored and documented code.
28
+ * 0.1
29
+ * - Initial release.
30
+ */
31
+
32
+ /**
33
+ * The resizable plugin makes the wymeditor box vertically resizable.
34
+ * It it based on the ui.resizable.js plugin of the jQuery UI library.
35
+ *
36
+ * The WYMeditor resizable plugin supports all parameters of the jQueryUI
37
+ * resizable plugin. The parameters are passed like this:
38
+ *
39
+ * wym.resizable({ handles: "s,e",
40
+ * maxHeight: 600 });
41
+ *
42
+ * @param options options for the plugin
43
+ */
44
+ WYMeditor.editor.prototype.resizable = function(options) {
45
+
46
+ var wym = this;
47
+ var iframe = jQuery(wym._box).find('iframe');
48
+ var iframeOriginalSize = {};
49
+
50
+ // Define some default options
51
+ var default_options = {
52
+ start: function(e, ui) {
53
+ iframeOriginalSize = {
54
+ width: jQuery(iframe).width(),
55
+ height: jQuery(iframe).height()
56
+ }
57
+ },
58
+
59
+ // resize is called by the jQuery resizable plugin whenever the
60
+ // client area was resized.
61
+ resize: function(e, ui) {
62
+ var diff = ui.size.height - ui.originalSize.height;
63
+ jQuery(iframe).height( iframeOriginalSize.height + diff );
64
+
65
+ // If the plugin has horizontal resizing disabled we need to
66
+ // adjust the "width" attribute of the area css, because the
67
+ // resizing will set a fixed width (which breaks liquid layout
68
+ // of the wymeditor area).
69
+ if( !ui.options.handles['w'] && !ui.options.handles['e'] ) {
70
+ ui.size.width = "inherit";
71
+ }
72
+ },
73
+ handles: "s,e,se",
74
+ minHeight: 250,
75
+ maxHeight: 600
76
+ };
77
+
78
+ // Merge given options with default options. Given options override
79
+ // default ones.
80
+ var final_options = jQuery.extend(default_options, options);
81
+
82
+ // Get the jQuery path from the editor, stripping away the jQuery file.
83
+ // see http://www.oreilly.com/catalog/regex/chapter/ch04.html
84
+ // The match result array contains the path and the filename.
85
+ var jQueryPath = wym.computeJqueryPath().match(/^(.*)\/(.*)$/)[1];
86
+
87
+ // Make an array of the external JavaScript files required by the plugin.
88
+ var jQueryPlugins = [jQueryPath + '/jquery.ui.js',
89
+ jQueryPath + '/jquery.ui.resizable.js'];
90
+
91
+ // First get the jQuery UI base file
92
+ $.getScript(jQueryPlugins[0]);
93
+
94
+ // Get the jQuery UI resizeable plugin and then init the wymeditor resize
95
+ // plugin. It is import to do the initialisation after loading the
96
+ // necessary jQuery UI files has finished, otherwise the "resizable" method
97
+ // would not be available.
98
+ $.getScript(jQueryPlugins[1], function() {
99
+ jQuery(wym._box).resizable(final_options);
100
+ });
101
+
102
+ };
@@ -0,0 +1,124 @@
1
+
2
+
3
+ resizable plugin for WYMeditor
4
+ ##############################
5
+
6
+ The ``resizable`` plugin for WYMeditor_ enables vertical resizing of the
7
+ editor area. The plugin is based on the jQuery UI library.
8
+
9
+ Requirements
10
+ ============
11
+ The following packages are required for using the WYMeditor ``resizable``
12
+ plugin:
13
+
14
+ * jQuery (tested with jQuery ``jquery-1.2.4a.js`` from ``jquery.ui`` package)
15
+ * WYMeditor SVN trunk (Revision: 482)
16
+ * jQuery-UI (tested with ``jquery.ui-1.5b2``)
17
+
18
+ It should be possible to use this plugin with ``WYMeditor-0.4`` but I have not
19
+ tried.
20
+
21
+ Download
22
+ ========
23
+ You can download the WYMeditor ``resizable`` plugin here:
24
+
25
+ * wymeditor-resizable-plugin-0.2.tgz_
26
+ * wymeditor-resizable-plugin-0.1.tgz_
27
+
28
+ See the Changelog_ for more infos about the releases.
29
+
30
+ .. _wymeditor-resizable-plugin-0.2.tgz: http://pyjax.net/download/wymeditor-resizable-plugin-0.2.tgz
31
+ .. _wymeditor-resizable-plugin-0.1.tgz: http://pyjax.net/download/wymeditor-resizable-plugin-0.1.tgz
32
+
33
+ Installation
34
+ ============
35
+ Just extract the downloaded archive into your WYMeditor's ``plugin``
36
+ directory.
37
+
38
+ Usage
39
+ =====
40
+ For general instructions on WYMeditor plugins please refer to the `WYMeditor
41
+ plugin page`_.
42
+
43
+ To use the ``resizable`` plugin simply include the plugin's JavaScript file in
44
+ your code. You **do not** need to include the jQuery UI files - this is done
45
+ automatically by the plugin (see `Internals`_)::
46
+
47
+ <script type="text/javascript"
48
+ src="/js/wymeditor/plugins/resizable/jquery.wymeditor.resizable.js">
49
+ </script>
50
+
51
+ Make sure to adjust the ``src`` attribute to your needs, then initialize the
52
+ plugin in WYMeditor's ``postInit`` function::
53
+
54
+ wymeditor({postInit: function(wym) {
55
+ wym.hovertools(); // other plugins...
56
+ wym.resizable({handles: "s,e",
57
+ maxHeight: 600});
58
+ }
59
+ })
60
+
61
+ The ``resizable`` plugin takes exactly one parameter, which is an object literal
62
+ containing the options of the plugin. The WYMeditor ``resizable`` plugin
63
+ supports all options of the jQuery UI ``resizable`` plugin. These are the
64
+ default values used by the plugin::
65
+
66
+ handles: "s,e,se",
67
+ minHeight: 250,
68
+ maxHeight: 600
69
+
70
+ See the `jQuery UI resizable plugin docs`_ for a list of all options.
71
+
72
+ That's it! You are now able to resize the WYMeditor vertically, horizontally or
73
+ both, depending on your options.
74
+
75
+ .. _jQuery UI resizable plugin docs: http://docs.jquery.com/UI/Resizables
76
+
77
+ Internals
78
+ =========
79
+ The plugin takes care of loading the necessary jQuery UI files (``base`` and
80
+ ``resizable``) from the same path the jQuery library was loaded. Here's how
81
+ it's done::
82
+
83
+ // Get the jQuery path from the editor, stripping away the jQuery file.
84
+ // see http://www.oreilly.com/catalog/regex/chapter/ch04.html
85
+ // The match result array contains the path and the filename.
86
+ var jQueryPath = wym.computeJqueryPath().match(/^(.*)\/(.*)$/)[1];
87
+
88
+ // Make an array of the external JavaScript files required by the plugin.
89
+ var jQueryPlugins = [jQueryPath + '/ui.base.js',
90
+ jQueryPath + '/ui.resizable.js'];
91
+
92
+ // First get the jQuery UI base file
93
+ $.getScript(jQueryPlugins[0]);
94
+
95
+ // Get the jQuery UI resizeable plugin and then init the wymeditor resizable
96
+ // plugin. It is import to do the initialisation after loading the
97
+ // necessary jQuery UI files has finished, otherwise the "resizable" method
98
+ // would not be available.
99
+ $.getScript(jQueryPlugins[1], function() {
100
+ jQuery(wym._box).resizable(final_options);
101
+ });
102
+
103
+ An alternative approach would be to use an AJAX queue when getting the script
104
+ files to ensure that all jQuery files are loaded before the initialisation code
105
+ of the plugin is executed. There is an `jQuery AJAX queue plugin`_ which does
106
+ that.
107
+
108
+ .. _jQuery AJAX queue plugin: http://plugins.jquery.com/project/ajaxqueue
109
+
110
+ Changelog
111
+ =========
112
+
113
+ 0.2
114
+ ---
115
+ - Added full support for all jQuery UI resizable plugin options.
116
+ - Refactored and documented code.
117
+ - Now contains a packed version (775 bytes).
118
+
119
+ 0.1
120
+ ---
121
+ - Initial release.
122
+
123
+ .. _WYMeditor: http://www.wymeditor.org/
124
+ .. _WYMeditor plugin page: http://trac.wymeditor.org/trac/wiki/0.4/Plugins
@@ -0,0 +1,19 @@
1
+ WYMeditor : what you see is What You Mean web-based editor
2
+ Copyright (c) 2008 Jean-Francois Hovinne, http://www.wymeditor.org/
3
+ Dual licensed under the MIT (MIT-license.txt)
4
+ and GPL (GPL-license.txt) licenses.
5
+
6
+ For further information visit:
7
+ http://www.wymeditor.org/
8
+
9
+ File Name:
10
+ README - HTML Tidy plugin for WYMeditor
11
+
12
+ File Authors:
13
+ Jean-François Hovinne (jf.hovinne a-t wymeditor dotorg)
14
+
15
+ Credits:
16
+ 'HTML Tidy' by Dave Ragget - http://tidy.sourceforge.net/
17
+ Icon 'wand' by Mark James - http://famfamfam.com/
18
+
19
+ WYMeditor documentation is available online at http://www.wymeditor.org/
@@ -0,0 +1,82 @@
1
+ /*
2
+ * WYMeditor : what you see is What You Mean web-based editor
3
+ * Copyright (c) 2008 Jean-Francois Hovinne, http://www.wymeditor.org/
4
+ * Dual licensed under the MIT (MIT-license.txt)
5
+ * and GPL (GPL-license.txt) licenses.
6
+ *
7
+ * For further information visit:
8
+ * http://www.wymeditor.org/
9
+ *
10
+ * File Name:
11
+ * jquery.wymeditor.tidy.js
12
+ * HTML Tidy plugin for WYMeditor
13
+ *
14
+ * File Authors:
15
+ * Jean-Francois Hovinne (jf.hovinne a-t wymeditor dotorg)
16
+ */
17
+
18
+ //Extend WYMeditor
19
+ WYMeditor.editor.prototype.tidy = function(options) {
20
+ var tidy = new WymTidy(options, this);
21
+ return(tidy);
22
+ };
23
+
24
+ //WymTidy constructor
25
+ function WymTidy(options, wym) {
26
+
27
+ options = jQuery.extend({
28
+
29
+ sUrl: "wymeditor/plugins/tidy/tidy.php",
30
+ sButtonHtml: "<li class='wym_tools_tidy'>"
31
+ + "<a name='CleanUp' href='#'"
32
+ + " style='background-image:"
33
+ + " url(wymeditor/plugins/tidy/wand.png)'>"
34
+ + "Clean up HTML"
35
+ + "</a></li>",
36
+
37
+ sButtonSelector: "li.wym_tools_tidy a"
38
+
39
+ }, options);
40
+
41
+ this._options = options;
42
+ this._wym = wym;
43
+
44
+ };
45
+
46
+ //WymTidy initialization
47
+ WymTidy.prototype.init = function() {
48
+
49
+ var tidy = this;
50
+
51
+ jQuery(this._wym._box).find(
52
+ this._wym._options.toolsSelector + this._wym._options.toolsListSelector)
53
+ .append(this._options.sButtonHtml);
54
+
55
+ //handle click event
56
+ jQuery(this._wym._box).find(this._options.sButtonSelector).click(function() {
57
+ tidy.cleanup();
58
+ return(false);
59
+ });
60
+
61
+ };
62
+
63
+ //WymTidy cleanup
64
+ WymTidy.prototype.cleanup = function() {
65
+
66
+ var wym = this._wym;
67
+ var html = "<html><body>" + wym.xhtml() + "</body></html>";
68
+
69
+ jQuery.post(this._options.sUrl, { html: html}, function(data) {
70
+
71
+ if(data.length > 0 && data != '0') {
72
+ if(data.indexOf("<?php") == 0) {
73
+ wym.status("Ooops... Is PHP installed?");
74
+ } else {
75
+ wym.html(data);
76
+ wym.status("HTML has been cleaned up.");
77
+ }
78
+ } else {
79
+ wym.status("An error occurred.");
80
+ }
81
+ });
82
+ };
@@ -0,0 +1,36 @@
1
+ <?php
2
+
3
+ if (get_magic_quotes_gpc()) $html = stripslashes($_REQUEST['html']);
4
+ else $html = $_REQUEST['html'];
5
+
6
+ if(strlen($html) > 0) {
7
+
8
+ // Specify configuration
9
+ $config = array(
10
+ 'bare' => true,
11
+ 'clean' => true,
12
+ 'doctype' => 'strict',
13
+ 'drop-empty-paras' => true,
14
+ 'drop-font-tags' => true,
15
+ 'drop-proprietary-attributes' => true,
16
+ 'enclose-block-text' => true,
17
+ 'indent' => false,
18
+ 'join-classes' => true,
19
+ 'join-styles' => true,
20
+ 'logical-emphasis' => true,
21
+ 'output-xhtml' => true,
22
+ 'show-body-only' => true,
23
+ 'wrap' => 0);
24
+
25
+ // Tidy
26
+ $tidy = new tidy;
27
+ $tidy->parseString($html, $config, 'utf8');
28
+ $tidy->cleanRepair();
29
+
30
+ // Output
31
+ echo $tidy;
32
+ } else {
33
+
34
+ echo ('0');
35
+ }
36
+ ?>
@@ -0,0 +1,133 @@
1
+ /*
2
+ * WYMeditor : what you see is What You Mean web-based editor
3
+ * Copyright (c) 2008 Jean-Francois Hovinne, http://www.wymeditor.org/
4
+ * Dual licensed under the MIT (MIT-license.txt)
5
+ * and GPL (GPL-license.txt) licenses.
6
+ *
7
+ * For further information visit:
8
+ * http://www.wymeditor.org/
9
+ *
10
+ * File Name:
11
+ * skin.css
12
+ * main stylesheet for the default WYMeditor skin
13
+ * See the documentation for more info.
14
+ *
15
+ * File Authors:
16
+ * Daniel Reszka (d.reszka a-t wymeditor dotorg)
17
+ */
18
+
19
+ /*TRYING TO RESET STYLES THAT MAY INTERFERE WITH WYMEDITOR*/
20
+ .wym_skin_default p, .wym_skin_default h2, .wym_skin_default h3,
21
+ .wym_skin_default ul, .wym_skin_default li { background: transparent url(); margin: 0; padding: 0; border-width:0; list-style: none; }
22
+
23
+
24
+ /*HIDDEN BY DEFAULT*/
25
+ .wym_skin_default .wym_area_left { display: none; }
26
+ .wym_skin_default .wym_area_right { display: block; }
27
+
28
+
29
+ /*TYPO*/
30
+ .wym_skin_default { font-size: 62.5%; font-family: Verdana, Arial, sans-serif; }
31
+ .wym_skin_default h2 { font-size: 110%; /* = 11px */}
32
+ .wym_skin_default h3 { font-size: 100%; /* = 10px */}
33
+ .wym_skin_default li { font-size: 100%; /* = 10px */}
34
+
35
+
36
+ /*WYM_BOX*/
37
+ .wym_skin_default { border: 1px solid gray; background: #f2f2f2; padding: 5px}
38
+
39
+ /*auto-clear the wym_box*/
40
+ .wym_skin_default:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
41
+ * html .wym_skin_default { height: 1%;}
42
+
43
+
44
+ /*WYM_HTML*/
45
+ .wym_skin_default .wym_html { width: 98%;}
46
+ .wym_skin_default .wym_html textarea { width: 100%; height: 200px; border: 1px solid gray; background: white; }
47
+
48
+
49
+ /*WYM_IFRAME*/
50
+ .wym_skin_default .wym_iframe { width: 98%;}
51
+ .wym_skin_default .wym_iframe iframe { width: 100%; height: 200px; border: 1px solid gray; background: white }
52
+
53
+
54
+ /*AREAS*/
55
+ .wym_skin_default .wym_area_left { width: 150px; float: left;}
56
+ .wym_skin_default .wym_area_right { width: 150px; float: right;}
57
+ .wym_skin_default .wym_area_bottom { height: 1%; clear: both;}
58
+ * html .wym_skin_default .wym_area_main { height: 1%;}
59
+ * html .wym_skin_default .wym_area_top { height: 1%;}
60
+ *+html .wym_skin_default .wym_area_top { height: 1%;}
61
+
62
+ /*SECTIONS SYSTEM*/
63
+
64
+ /*common defaults for all sections*/
65
+ .wym_skin_default .wym_section { margin-bottom: 5px; }
66
+ .wym_skin_default .wym_section h2,
67
+ .wym_skin_default .wym_section h3 { padding: 1px 3px; margin: 0; }
68
+ .wym_skin_default .wym_section a { padding: 0 3px; display: block; text-decoration: none; color: black; }
69
+ .wym_skin_default .wym_section a:hover { background-color: yellow; }
70
+ /*hide section titles by default*/
71
+ .wym_skin_default .wym_section h2 { display: none; }
72
+ /*disable any margin-collapse*/
73
+ .wym_skin_default .wym_section { padding-top: 1px; padding-bottom: 1px; }
74
+ /*auto-clear sections*/
75
+ .wym_skin_default .wym_section ul:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
76
+ * html .wym_skin_default .wym_section ul { height: 1%;}
77
+
78
+ /*option: add this class to a section to make it render as a panel*/
79
+ .wym_skin_default .wym_panel { }
80
+ .wym_skin_default .wym_panel h2 { display: block; }
81
+
82
+ /*option: add this class to a section to make it render as a dropdown menu*/
83
+ .wym_skin_default .wym_dropdown h2 { display: block; }
84
+ .wym_skin_default .wym_dropdown ul { background: white; }
85
+ .wym_skin_default .wym_dropdown:hover ul,
86
+ .wym_skin_default .wym_dropdown.hover ul { display: block; }
87
+
88
+ /*option: add this class to a section to make its elements render buttons (icons are only available for the wym_tools section for now)*/
89
+ .wym_skin_default .wym_buttons li { float:left;}
90
+ .wym_skin_default .wym_buttons a { width: 20px; height: 20px; overflow: hidden; padding: 2px }
91
+ /*image replacements*/
92
+ .wym_skin_default .wym_buttons li a { background: url(icons.png) no-repeat; text-indent: -9999px;}
93
+ .wym_skin_default .wym_buttons li.wym_tools_strong a { background-position: 0 -382px;}
94
+ .wym_skin_default .wym_buttons li.wym_tools_emphasis a { background-position: 0 -22px;}
95
+ .wym_skin_default .wym_buttons li.wym_tools_superscript a { background-position: 0 -430px;}
96
+ .wym_skin_default .wym_buttons li.wym_tools_subscript a { background-position: 0 -454px;}
97
+ .wym_skin_default .wym_buttons li.wym_tools_ordered_list a { background-position: 0 -48px;}
98
+ .wym_skin_default .wym_buttons li.wym_tools_unordered_list a{ background-position: 0 -72px;}
99
+ .wym_skin_default .wym_buttons li.wym_tools_indent a { background-position: 0 -574px;}
100
+ .wym_skin_default .wym_buttons li.wym_tools_outdent a { background-position: 0 -598px;}
101
+ .wym_skin_default .wym_buttons li.wym_tools_undo a { background-position: 0 -502px;}
102
+ .wym_skin_default .wym_buttons li.wym_tools_redo a { background-position: 0 -526px;}
103
+ .wym_skin_default .wym_buttons li.wym_tools_link a { background-position: 0 -96px;}
104
+ .wym_skin_default .wym_buttons li.wym_tools_unlink a { background-position: 0 -168px;}
105
+ .wym_skin_default .wym_buttons li.wym_tools_image a { background-position: 0 -121px;}
106
+ .wym_skin_default .wym_buttons li.wym_tools_table a { background-position: 0 -144px;}
107
+ .wym_skin_default .wym_buttons li.wym_tools_paste a { background-position: 0 -552px;}
108
+ .wym_skin_default .wym_buttons li.wym_tools_html a { background-position: 0 -193px;}
109
+ .wym_skin_default .wym_buttons li.wym_tools_preview a { background-position: 0 -408px;}
110
+
111
+ /*DECORATION*/
112
+ .wym_skin_default .wym_section h2 { background: #ddd; border: solid gray; border-width: 0 0 1px;}
113
+ .wym_skin_default .wym_section h2 span { color: gray;}
114
+ .wym_skin_default .wym_panel { padding: 0; border: solid gray; border-width: 1px; background: white;}
115
+ .wym_skin_default .wym_panel ul { margin: 2px 0 5px; }
116
+ .wym_skin_default .wym_dropdown { padding: 0; border: solid gray; border-width: 1px 1px 0 1px; }
117
+ .wym_skin_default .wym_dropdown ul { border: solid gray; border-width: 0 1px 1px 1px; margin-left: -1px; padding: 5px 10px 5px 3px;}
118
+
119
+ /*DIALOGS*/
120
+ .wym_dialog div.row { margin-bottom: 5px;}
121
+ .wym_dialog div.row input { margin-right: 5px;}
122
+ .wym_dialog div.row label { float: left; width: 150px; display: block; text-align: right; margin-right: 10px; }
123
+ .wym_dialog div.row-indent { padding-left: 160px; }
124
+ /*autoclearing*/
125
+ .wym_dialog div.row:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
126
+ .wym_dialog div.row { display: inline-block; }
127
+ /* Hides from IE-mac \*/
128
+ * html .wym_dialog div.row { height: 1%; }
129
+ .wym_dialog div.row { display: block; }
130
+ /* End hide from IE-mac */
131
+
132
+ /*WYMEDITOR_LINK*/
133
+ a.wym_wymeditor_link { text-indent: -9999px; float: right; display: block; width: 50px; height: 15px; background: url(../wymeditor_icon.png); overflow: hidden; text-decoration: none; }