You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Howard M. Lewis Ship (JIRA)" <ta...@jakarta.apache.org> on 2005/11/11 23:39:06 UTC
[jira] Closed: (TAPESTRY-669) DatePicker.js line 781 javascript error when Array is customized using Prototype.js from http://prototype.conio.net/
[ http://issues.apache.org/jira/browse/TAPESTRY-669?page=all ]
Howard M. Lewis Ship closed TAPESTRY-669:
-----------------------------------------
Fix Version: 4.0
Resolution: Fixed
> DatePicker.js line 781 javascript error when Array is customized using Prototype.js from http://prototype.conio.net/
> --------------------------------------------------------------------------------------------------------------------
>
> Key: TAPESTRY-669
> URL: http://issues.apache.org/jira/browse/TAPESTRY-669
> Project: Tapestry
> Type: Bug
> Components: Framework
> Versions: 4.0
> Environment: Windows XP, Internet Explorer 6
> Reporter: Herbert Hui
> Assignee: Howard M. Lewis Ship
> Priority: Minor
> Fix For: 4.0
>
> Line 781 in DatePicker.js fails when thirdparty methods are added to Array using Prototype.js from http://prototype.conio.net/
> For example if you add the flatten method from http://www.schuerig.de/michael/javascript/stdext.js
> then line 781 will attempt to execute the "frm.replace(/\bflatten\b/,'function(excludeUndefined) {return Array.flatten(this, excludeUndefined);}');"
> Suggested modification to DatePicker.js:
> var keys = new Array('d','dd','ddd','dddd','M','MM','MMM','MMMM','yyyy','yy');
> for (var i = 0; i < keys.length; i++) {
> frm = eval("frm.replace(/\\b" + keys[i] + "\\b/,'" + bits[keys[i]] + "');");
> }
> // borrowed from http://www.schuerig.de/michael/javascript/stdext.js
> // Copyright (c) 2005, Michael Schuerig, michael@schuerig.de
> Array.flatten = function(array, excludeUndefined) {
> if (excludeUndefined === undefined) {
> excludeUndefined = false;
> }
> var result = [];
> var len = array.length;
> for (var i = 0; i < len; i++) {
> var el = array[i];
> if (el instanceof Array) {
> var flat = el.flatten(excludeUndefined);
> result = result.concat(flat);
> } else if (!excludeUndefined || el != undefined) {
> result.push(el);
> }
> }
> return result;
> };
> if (!Array.prototype.flatten) {
> Array.prototype.flatten = function(excludeUndefined) {
> return Array.flatten(this, excludeUndefined);
> }
> }
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org