liquid_cms 0.3.1.0 → 0.3.2.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.
- data/CHANGELOG.rdoc +10 -0
- data/Gemfile +0 -3
- data/README.rdoc +16 -2
- data/TODO.rdoc +0 -2
- data/app/controllers/cms/assets_controller.rb +20 -6
- data/app/controllers/cms/components_controller.rb +11 -3
- data/app/controllers/cms/pages_controller.rb +15 -4
- data/app/helpers/cms/common_helper.rb +31 -32
- data/app/liquid/cms_paperclip_extension.rb +75 -3
- data/app/liquid/tags/{data_tag.rb → cms/data_tag.rb} +0 -0
- data/app/models/cms/asset.rb +1 -1
- data/app/models/cms/component.rb +3 -3
- data/app/views/cms/assets/_form.html.erb +1 -2
- data/app/views/cms/assets/update.js.rjs +1 -0
- data/app/views/cms/components/update.js.rjs +1 -0
- data/app/views/cms/pages/_form.html.erb +3 -3
- data/app/views/cms/pages/update.js.rjs +1 -0
- data/app/views/layouts/cms.html.erb +4 -3
- data/config/initializers/cms/simple_form.rb +70 -12
- data/config/initializers/cms/simple_form_updates.rb +9 -3
- data/config/locales/cms/en.yml +6 -0
- data/lib/generators/liquid_cms/install_generator.rb +5 -1
- data/lib/generators/liquid_cms/templates/migration_rev2.rb +13 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/LICENSE +16 -20
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/lib/codemirror.css +68 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/lib/codemirror.js +2197 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/lib/overlay.js +51 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/lib/runmode.js +27 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/clike/clike.js +247 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/clike/index.html +102 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/clojure/clojure.js +207 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/clojure/index.html +85 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/coffeescript/LICENSE +22 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/coffeescript/coffeescript.js +325 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/coffeescript/index.html +722 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/css/css.js +124 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/css/index.html +56 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/diff/diff.css +3 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/diff/diff.js +13 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/diff/index.html +99 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/haskell/haskell.js +242 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/haskell/index.html +60 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/htmlmixed/htmlmixed.js +79 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/htmlmixed/index.html +52 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/javascript/index.html +78 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/javascript/javascript.js +352 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/jinja2/index.html +38 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/jinja2/jinja2.js +42 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/lua/index.html +72 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/lua/lua.js +140 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/markdown/index.html +340 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/markdown/markdown.css +10 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/markdown/markdown.js +230 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/ntriples/index.html +33 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/ntriples/ntriples.js +172 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/pascal/LICENSE +7 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/pascal/index.html +49 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/pascal/pascal.js +138 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/php/index.html +49 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/php/php.js +116 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/plsql/index.html +63 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/plsql/plsql.js +217 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/python/LICENSE.txt +21 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/python/index.html +123 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/python/python.js +320 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/r/LICENSE +24 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/r/index.html +74 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/r/r.js +141 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/rst/index.html +526 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/rst/rst.css +75 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/rst/rst.js +333 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/ruby/LICENSE +24 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/ruby/index.html +172 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/ruby/ruby.js +195 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/scheme/index.html +65 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/scheme/scheme.js +202 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/smalltalk/index.html +56 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/smalltalk/smalltalk.js +122 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/sparql/index.html +41 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/sparql/sparql.js +143 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/stex/index.html +96 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/stex/stex.js +167 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/velocity/index.html +103 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/velocity/velocity.js +146 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/xml/index.html +42 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/xml/xml.js +231 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/xmlpure/index.html +60 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/xmlpure/xmlpure.js +481 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/yaml/index.html +68 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/mode/yaml/yaml.js +95 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/theme/cobalt.css +17 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/theme/default.css +19 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/theme/eclipse.css +24 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/theme/elegant.css +9 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/theme/neat.css +8 -0
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/theme/night.css +20 -0
- data/lib/generators/liquid_cms/templates/public/cms/javascripts/cms.js +1 -1
- data/lib/generators/liquid_cms/templates/public/cms/javascripts/codemirror_custom.js +96 -0
- data/lib/generators/liquid_cms/templates/public/cms/stylesheets/codemirror_changes.css +26 -0
- data/lib/generators/liquid_cms/templates/public/cms/stylesheets/liquid.css +7 -0
- data/lib/generators/liquid_cms/templates/public/cms/stylesheets/simple_form.css +0 -8
- data/lib/liquid_cms/version.rb +1 -1
- data/liquid_cms.gemspec +1 -1
- data/test/functional/assets_controller_test.rb +35 -20
- data/test/functional/components_controller_test.rb +15 -5
- data/test/functional/pages_controller_test.rb +19 -6
- data/test/rails_app/Gemfile +1 -2
- data/test/rails_app/config/locales/cms/en.yml +26 -4
- data/test/rails_app/db/migrate/20110511161859_create_liquid_cms_upgrade_rev2.rb +13 -0
- data/test/unit/asset_test.rb +1 -1
- data/test/unit/component_test.rb +1 -1
- metadata +89 -32
- data/generators/liquid_cms/templates/migration_rev1.rb +0 -38
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/css/csscolors.css +0 -55
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/css/docs.css +0 -158
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/css/font.js +0 -15
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/css/jscolors.css +0 -59
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/css/sparqlcolors.css +0 -43
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/css/xmlcolors.css +0 -55
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/codemirror.js +0 -582
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/editor.js +0 -1671
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/highlight.js +0 -68
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/mirrorframe.js +0 -81
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/parsecss.js +0 -161
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/parsedummy.js +0 -32
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/parsehtmlmixed.js +0 -93
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/parsejavascript.js +0 -359
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/parsesparql.js +0 -162
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/parsexml.js +0 -291
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/select.js +0 -699
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/stringstream.js +0 -159
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/tokenize.js +0 -57
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/tokenizejavascript.js +0 -174
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/undo.js +0 -413
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/unittests.js +0 -44
- data/lib/generators/liquid_cms/templates/public/cms/codemirror/js/util.js +0 -133
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Test Harness for CodeMirror
|
|
3
|
-
* JS-unit compatible tests here. The two available assertions are
|
|
4
|
-
* assertEquals (strict equality) and assertEquivalent (looser equivalency).
|
|
5
|
-
*
|
|
6
|
-
* 'editor' is a global object for the CodeMirror editor shared between all
|
|
7
|
-
* tests. After manipulating it in each test, try to restore it to
|
|
8
|
-
* approximately its original state.
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
function testSetGet() {
|
|
12
|
-
var code = 'It was the best of times.\nIt was the worst of times.';
|
|
13
|
-
editor.setCode(code);
|
|
14
|
-
assertEquals(code, editor.getCode());
|
|
15
|
-
editor.setCode('');
|
|
16
|
-
assertEquals('', editor.getCode());
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
function testSetStylesheet() {
|
|
20
|
-
function cssStatus() {
|
|
21
|
-
// Returns a list of tuples, for each CSS link return the filename and
|
|
22
|
-
// whether it is enabled.
|
|
23
|
-
links = editor.win.document.getElementsByTagName('link');
|
|
24
|
-
css = [];
|
|
25
|
-
for (var x = 0, link; link = links[x]; x++) {
|
|
26
|
-
if (link.rel.indexOf("stylesheet") !== -1) {
|
|
27
|
-
css.push([link.href.substring(link.href.lastIndexOf('/') + 1),
|
|
28
|
-
!link.disabled])
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
return css;
|
|
32
|
-
}
|
|
33
|
-
assertEquivalent([], cssStatus());
|
|
34
|
-
editor.setStylesheet('css/jscolors.css');
|
|
35
|
-
assertEquivalent([['jscolors.css', true]], cssStatus());
|
|
36
|
-
editor.setStylesheet(['css/csscolors.css', 'css/xmlcolors.css']);
|
|
37
|
-
assertEquivalent([['jscolors.css', false], ['csscolors.css', true], ['xmlcolors.css', true]], cssStatus());
|
|
38
|
-
editor.setStylesheet([]);
|
|
39
|
-
assertEquivalent([['jscolors.css', false], ['csscolors.css', false], ['xmlcolors.css', false]], cssStatus());
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
// Update this list of tests as new ones are added.
|
|
43
|
-
var tests = ['testSetGet', 'testSetStylesheet'];
|
|
44
|
-
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
/* A few useful utility functions. */
|
|
2
|
-
|
|
3
|
-
// Capture a method on an object.
|
|
4
|
-
function method(obj, name) {
|
|
5
|
-
return function() {obj[name].apply(obj, arguments);};
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
// The value used to signal the end of a sequence in iterators.
|
|
9
|
-
var StopIteration = {toString: function() {return "StopIteration"}};
|
|
10
|
-
|
|
11
|
-
// Apply a function to each element in a sequence.
|
|
12
|
-
function forEach(iter, f) {
|
|
13
|
-
if (iter.next) {
|
|
14
|
-
try {while (true) f(iter.next());}
|
|
15
|
-
catch (e) {if (e != StopIteration) throw e;}
|
|
16
|
-
}
|
|
17
|
-
else {
|
|
18
|
-
for (var i = 0; i < iter.length; i++)
|
|
19
|
-
f(iter[i]);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
// Map a function over a sequence, producing an array of results.
|
|
24
|
-
function map(iter, f) {
|
|
25
|
-
var accum = [];
|
|
26
|
-
forEach(iter, function(val) {accum.push(f(val));});
|
|
27
|
-
return accum;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
// Create a predicate function that tests a string againsts a given
|
|
31
|
-
// regular expression. No longer used but might be used by 3rd party
|
|
32
|
-
// parsers.
|
|
33
|
-
function matcher(regexp){
|
|
34
|
-
return function(value){return regexp.test(value);};
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
// Test whether a DOM node has a certain CSS class.
|
|
38
|
-
function hasClass(element, className) {
|
|
39
|
-
var classes = element.className;
|
|
40
|
-
return classes && new RegExp("(^| )" + className + "($| )").test(classes);
|
|
41
|
-
}
|
|
42
|
-
function removeClass(element, className) {
|
|
43
|
-
element.className = element.className.replace(new RegExp(" " + className + "\\b", "g"), "");
|
|
44
|
-
return element;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
// Insert a DOM node after another node.
|
|
48
|
-
function insertAfter(newNode, oldNode) {
|
|
49
|
-
var parent = oldNode.parentNode;
|
|
50
|
-
parent.insertBefore(newNode, oldNode.nextSibling);
|
|
51
|
-
return newNode;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
function removeElement(node) {
|
|
55
|
-
if (node.parentNode)
|
|
56
|
-
node.parentNode.removeChild(node);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
function clearElement(node) {
|
|
60
|
-
while (node.firstChild)
|
|
61
|
-
node.removeChild(node.firstChild);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
// Check whether a node is contained in another one.
|
|
65
|
-
function isAncestor(node, child) {
|
|
66
|
-
while (child = child.parentNode) {
|
|
67
|
-
if (node == child)
|
|
68
|
-
return true;
|
|
69
|
-
}
|
|
70
|
-
return false;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
// The non-breaking space character.
|
|
74
|
-
var nbsp = "\u00a0";
|
|
75
|
-
var matching = {"{": "}", "[": "]", "(": ")",
|
|
76
|
-
"}": "{", "]": "[", ")": "("};
|
|
77
|
-
|
|
78
|
-
// Standardize a few unportable event properties.
|
|
79
|
-
function normalizeEvent(event) {
|
|
80
|
-
if (!event.stopPropagation) {
|
|
81
|
-
event.stopPropagation = function() {this.cancelBubble = true;};
|
|
82
|
-
event.preventDefault = function() {this.returnValue = false;};
|
|
83
|
-
}
|
|
84
|
-
if (!event.stop) {
|
|
85
|
-
event.stop = function() {
|
|
86
|
-
this.stopPropagation();
|
|
87
|
-
this.preventDefault();
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
if (event.type == "keypress") {
|
|
92
|
-
event.code = (event.charCode == null) ? event.keyCode : event.charCode;
|
|
93
|
-
event.character = String.fromCharCode(event.code);
|
|
94
|
-
}
|
|
95
|
-
return event;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
// Portably register event handlers.
|
|
99
|
-
function addEventHandler(node, type, handler, removeFunc) {
|
|
100
|
-
function wrapHandler(event) {
|
|
101
|
-
handler(normalizeEvent(event || window.event));
|
|
102
|
-
}
|
|
103
|
-
if (typeof node.addEventListener == "function") {
|
|
104
|
-
node.addEventListener(type, wrapHandler, false);
|
|
105
|
-
if (removeFunc) return function() {node.removeEventListener(type, wrapHandler, false);};
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
node.attachEvent("on" + type, wrapHandler);
|
|
109
|
-
if (removeFunc) return function() {node.detachEvent("on" + type, wrapHandler);};
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
function nodeText(node) {
|
|
114
|
-
return node.textContent || node.innerText || node.nodeValue || "";
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
function nodeTop(node) {
|
|
118
|
-
var top = 0;
|
|
119
|
-
while (node.offsetParent) {
|
|
120
|
-
top += node.offsetTop;
|
|
121
|
-
node = node.offsetParent;
|
|
122
|
-
}
|
|
123
|
-
return top;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
function isBR(node) {
|
|
127
|
-
var nn = node.nodeName;
|
|
128
|
-
return nn == "BR" || nn == "br";
|
|
129
|
-
}
|
|
130
|
-
function isSpan(node) {
|
|
131
|
-
var nn = node.nodeName;
|
|
132
|
-
return nn == "SPAN" || nn == "span";
|
|
133
|
-
}
|