I attach (copy/paste) a patch to make last prototype.js warning free
under latest firefox
I hope it will be usefull to some others
(please correct me if I made any mistake)
Florian Delizy
Index: prototype.js
===================================================================
--- prototype.js (révision 444)
+++ prototype.js (copie de travail)
@@ -65,12 +65,12 @@
switch(type) {
case 'undefined':
case 'function':
- case 'unknown': return;
+ case 'unknown': return '';
case 'boolean': return object.toString();
}
if (object === null) return 'null';
if (object.toJSON) return object.toJSON();
- if (object.ownerDocument === document) return;
+ if (object.ownerDocument === document) return '';
var results = [];
for (var property in object) {
var value = Object.toJSON(object[property]);
@@ -106,7 +106,7 @@
}
}
-Function.prototype.bindAsEventListener = function(object) {
+Function.prototype.bindAsEventListener = function(object_) {
var __method = this, args = $A(arguments), object = args.shift();
return function(event) {
return __method.apply(object, [event ||
window.event].concat(args));
@@ -215,7 +215,7 @@
replacement = arguments.callee.prepareReplacement(replacement);
while (source.length > 0) {
- if (match = source.match(pattern)) {
+ if ((match = source.match(pattern))) {
result += source.slice(0, match.index);
result += String.interpret(replacement(match));
source = source.slice(match.index + match[0].length);
@@ -470,7 +470,7 @@
any: function(iterator) {
var result = false;
this.each(function(value, index) {
- if (result = !!(iterator || Prototype.K)(value, index))
+ if ((result = !!(iterator || Prototype.K)(value, index)))
throw $break;
});
return result;
@@ -895,7 +895,7 @@
iterator(pair);
}
};
-ObjectRange = Class.create();
+var ObjectRange = Class.create();
Object.extend(ObjectRange.prototype, Enumerable);
Object.extend(ObjectRange.prototype, {
initialize: function(start, end, exclusive) {
@@ -1019,7 +1019,7 @@
this.parameters = params;
- if (params = Hash.toQueryString(params)) {
+ if ((params = Hash.toQueryString(params))) {
// when GET, append parameters to URL
if (this.method == 'get')
this.url += (this.url.include('?') ? '&' : '?') + params;
@@ -1151,6 +1151,7 @@
} catch (e) {
this.dispatchException(e);
}
+ return '';
},
dispatchException: function(exception) {
@@ -1186,7 +1187,7 @@
if (!this.options.evalScripts) response =
response.stripScripts();
- if (receiver = $(receiver)) {
+ if ((receiver = $(receiver))) {
if (this.options.insertion)
new this.options.insertion(receiver, response);
else
@@ -1382,7 +1383,7 @@
recursivelyCollect: function(element, property) {
element = $(element);
var elements = [];
- while (element = element[property])
+ while ((element = element[property]))
if (element.nodeType == 1)
elements.push(Element.extend(element));
return elements;
@@ -1495,7 +1496,7 @@
},
hasClassName: function(element, className) {
- if (!(element = $(element))) return;
+ if (!(element = $(element))) return false;
var elementClassName = element.className;
if (elementClassName.length == 0) return false;
if (elementClassName == className ||
@@ -1505,19 +1506,19 @@
},
addClassName: function(element, className) {
- if (!(element = $(element))) return;
+ if (!(element = $(element))) return '';
Element.classNames(element).add(className);
return element;
},
removeClassName: function(element, className) {
- if (!(element = $(element))) return;
+ if (!(element = $(element))) return '';
Element.classNames(element).remove(className);
return element;
},
toggleClassName: function(element, className) {
- if (!(element = $(element))) return;
+ if (!(element = $(element))) return '';
Element.classNames(element)[element.hasClassName(className) ?
'remove' : 'add'](className);
return element;
},
@@ -1551,7 +1552,7 @@
descendantOf: function(element, ancestor) {
element = $(element), ancestor = $(ancestor);
- while (element = element.parentNode)
+ while ((element = element.parentNode))
if (element == ancestor) return true;
return false;
},
@@ -1696,7 +1697,7 @@
if (!value && element.currentStyle) value =
element.currentStyle[style];
if (style == 'opacity') {
- if (value = (element.getStyle('filter') || '').match(/alpha\
(opacity=(.*)\)/))
+ if ((value = (element.getStyle('filter') || '').match(/alpha\
(opacity=(.*)\)/)))
if (value[1]) return parseFloat(value[1]) / 100;
return 1.0;
}
@@ -2064,7 +2065,7 @@
c = Selector.criteria, le, p, m;
if (Selector._cache[e]) {
- this.matcher = Selector._cache[e]; return;
+ this.matcher = Selector._cache[e]; return '';
}
this.matcher = ["this.matcher = function(root) {",
"var r = root, h = Selector.handlers, c = false,
n;"];
@@ -2073,7 +2074,7 @@
le = e;
for (var i in ps) {
p = ps[i];
- if (m = e.match(p)) {
+ if ((m = e.match(p))) {
this.matcher.push(typeof c[i] == 'function' ? c[i](m) :
new Template(c[i]).evaluate(m));
e = e.replace(m[0], '');
@@ -2085,6 +2086,7 @@
this.matcher.push("return h.unique(n);\n}");
eval(this.matcher.join('\n'));
Selector._cache[this.expression] = this.matcher;
+ return '';
},
compileXPathMatcher: function() {
@@ -2099,7 +2101,7 @@
while (e && le != e && (/\S/).test(e)) {
le = e;
for (var i in ps) {
- if (m = e.match(ps[i])) {
+ if ((m = e.match(ps[i]))) {
this.matcher.push(typeof x[i] == 'function' ? x[i](m) :
new Template(x[i]).evaluate(m));
e = e.replace(m[0], '');
@@ -2174,15 +2176,15 @@
'checked': "[EMAIL PROTECTED]",
'disabled': "[EMAIL PROTECTED]",
'enabled': "[not(@disabled)]",
- 'not': function(m) {
- var e = m[6], p = Selector.patterns,
+ 'not': function(m_) {
+ var e = m_[6], p = Selector.patterns,
x = Selector.xpath, le, m, v;
var exclusion = [];
while (e && le != e && (/\S/).test(e)) {
le = e;
for (var i in p) {
- if (m = e.match(p[i])) {
+ if ((m = e.match(p[i]))) {
v = typeof x[i] == 'function' ? x[i](m) : new
Template(x[i]).evaluate(m);
exclusion.push("(" + v.substring(1, v.length - 1) +
")");
e = e.replace(m[0], '');
@@ -2217,9 +2219,9 @@
var mm, formula = m[6], predicate;
if (formula == 'even') formula = '2n+0';
if (formula == 'odd') formula = '2n+1';
- if (mm = formula.match(/^(\d+)$/)) // digit only
+ if ((mm = formula.match(/^(\d+)$/))) // digit only
return '[' + fragment + "= " + mm[1] + ']';
- if (mm = formula.match(/^(-?\d*)?n(([+-])(\d+))?/)) { // an+b
+ if ((mm = formula.match(/^(-?\d*)?n(([+-])(\d+))?/))) { // an
+b
if (mm[1] == "-") mm[1] = -1;
var a = mm[1] ? Number(mm[1]) : 1;
var b = mm[2] ? Number(mm[2]) : 0;
@@ -2228,6 +2230,7 @@
return new Template(predicate).evaluate({
fragment: fragment, a: a, b: b });
}
+ return '';
}
}
},
@@ -2351,13 +2354,13 @@
},
nextElementSibling: function(node) {
- while (node = node.nextSibling)
+ while ((node = node.nextSibling))
if (node.nodeType == 1) return node;
return null;
},
previousElementSibling: function(node) {
- while (node = node.previousSibling)
+ while ((node = node.previousSibling))
if (node.nodeType == 1) return node;
return null;
},
@@ -2519,7 +2522,7 @@
formula = Number(formula);
for (var i = 0, node; node = nodes[i]; i++)
if (node.nodeIndex == formula) results.push(node);
- } else if (m = formula.match(/^(-?\d*)?n(([+-])(\d+))?/)) { //
an+b
+ } else if ((m = formula.match(/^(-?\d*)?n(([+-])(\d+))?/)))
{ // an+b
if (m[1] == "-") m[1] = -1;
var a = m[1] ? Number(m[1]) : 1;
var b = m[2] ? Number(m[2]) : 0;
@@ -2598,8 +2601,8 @@
return Selector.matchElements(elements, expression || '*')[index
|| 0];
},
- findChildElements: function(element, expressions) {
- var exprs = expressions.join(','), expressions = [];
+ findChildElements: function(element, expressions_) {
+ var exprs = expressions_.join(','), expressions = [];
exprs.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/,
function(m) {
expressions.push(m[1].strip());
});
@@ -3145,6 +3148,7 @@
if (mode == 'horizontal')
return ((this.offset[0] + element.offsetWidth) - this.xcomp) /
element.offsetWidth;
+ return 0;
},
page: function(forElement) {
@@ -3159,7 +3163,7 @@
if (element.offsetParent == document.body)
if (Element.getStyle(element,'position')=='absolute') break;
- } while (element = element.offsetParent);
+ } while ((element = element.offsetParent));
element = forElement;
do {
@@ -3167,7 +3171,7 @@
valueT -= element.scrollTop || 0;
valueL -= element.scrollLeft || 0;
}
- } while (element = element.parentNode);
+ } while ((element = element.parentNode));
return [valueL, valueT];
},
@@ -3268,4 +3272,4 @@
}
}
-Element.addMethods();
\ Pas de fin de ligne à la fin du fichier
+Element.addMethods();
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Spinoffs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/rubyonrails-spinoffs?hl=en
-~----------~----~----~----~------~----~------~--~---