diff options
Diffstat (limited to 'static/datadumper.js')
-rw-r--r-- | static/datadumper.js | 204 |
1 files changed, 0 insertions, 204 deletions
diff --git a/static/datadumper.js b/static/datadumper.js deleted file mode 100644 index 9f90918..0000000 --- a/static/datadumper.js +++ /dev/null @@ -1,204 +0,0 @@ -/** - * Copyright (c)2005-2009 Matt Kruse (javascripttoolbox.com) - * - * Dual licensed under the MIT and GPL licenses. - * This basically means you can use this code however you want for - * free, but don't claim to have written it yourself! - * Donations always accepted: http://www.JavascriptToolbox.com/donate/ - * - * Please do not link to the .js files on javascripttoolbox.com from - * your site. Copy the files locally to your server instead. - * - */ -var Dumper = (function(){ - // "Private" - var maxIterations = 1000; - var maxDepth = -1; // Max depth that Dumper will traverse in object - var iterations = 0; - var indent = 1; - var indentText = " "; - var newline = "\n"; - var object = null; // Keeps track of the root object passed in - var properties = null; // Holds properties of top-level object to traverse - others are ignored - - function args(a,index) { - var myargs = new Array(); - for (var i=index; i<a.length; i++) { - myargs[myargs.length] = a[i]; - } - return myargs; - }; - - function pad(len) { - var ret = ""; - for (var i=0; i<len; i++) { - ret += indentText; - } - return ret; - }; - - function string(o) { - var level = 1; - var indentLevel = indent; - var ret = ""; - if (arguments.length>1 && typeof(arguments[1])=="number") { - level = arguments[1]; - indentLevel = arguments[2]; - if (o == object) { - return "[original object]"; - } - } - else { - iterations = 0; - object = o; - // If a list of properties are passed in - if (arguments.length>1) { - var list = arguments; - var listIndex = 1; - if (typeof(arguments[1])=="object") { - list = arguments[1]; - listIndex = 0; - } - for (var i=listIndex; i<list.length; i++) { - if (properties == null) { properties = new Object(); } - properties[list[i]]=1; - } - } - } - if (iterations++>maxIterations) { return "[Max Iterations Reached]"; } // Just in case, so the script doesn't hang - if (maxDepth != -1 && level > (maxDepth+1)) { - return "..."; - } - // undefined - if (typeof(o)=="undefined") { - return "[undefined]"; - } - // NULL - if (o==null) { - return "[null]"; - } - // DOM Object - if (o==window) { - return "[window]"; - } - if (o==window.document) { - return "[document]"; - } - // FUNCTION - if (typeof(o)=="function") { - return "[function]"; - } - // BOOLEAN - if (typeof(o)=="boolean") { - return (o)?"true":"false"; - } - // STRING - if (typeof(o)=="string") { - return "'" + o + "'"; - } - // NUMBER - if (typeof(o)=="number") { - return o; - } - if (typeof(o)=="object") { - if (typeof(o.length)=="number" ) { - // ARRAY - if (maxDepth != -1 && level > maxDepth) { - return "[ ... ]"; - } - ret = "["; - for (var i=0; i<o.length;i++) { - if (i>0) { - ret += "," + newline + pad(indentLevel); - } - else { - ret += newline + pad(indentLevel); - } - ret += string(o[i],level+1,indentLevel-0+indent); - } - if (i > 0) { - ret += newline + pad(indentLevel-indent); - } - ret += "]"; - return ret; - } - else { - // OBJECT - if (maxDepth != -1 && level > maxDepth) { - return "{ ... }"; - } - ret = "{"; - var count = 0; - for (i in o) { - if (o==object && properties!=null && properties[i]!=1) { - // do nothing with this node - } - else { - if (typeof(o[i]) != "unknown") { - var processAttribute = true; - // Check if this is a DOM object, and if so, if we have to limit properties to look at - if (o.ownerDocument|| o.tagName || (o.nodeType && o.nodeName)) { - processAttribute = false; - if (i=="tagName" || i=="nodeName" || i=="nodeType" || i=="id" || i=="className") { - processAttribute = true; - } - } - if (processAttribute) { - if (count++>0) { - ret += "," + newline + pad(indentLevel); - } - else { - ret += newline + pad(indentLevel); - } - ret += "'" + i + "' => " + string(o[i],level+1,indentLevel-0+i.length+6+indent); - } - } - } - } - if (count > 0) { - ret += newline + pad(indentLevel-indent); - } - ret += "}"; - return ret; - } - } - }; - - string.popup = function(o) { - var w = window.open("about:blank"); - w.document.open(); - w.document.writeln("<HTML><BODY><PRE>"); - w.document.writeln(string(o,args(arguments,1))); - w.document.writeln("</PRE></BODY></HTML>"); - w.document.close(); - }; - - string.alert = function(o) { - alert(string(o,args(arguments,1))); - }; - - string.write = function(o) { - var argumentsIndex = 1; - var d = document; - if (arguments.length>1 && arguments[1]==window.document) { - d = arguments[1]; - argumentsIndex = 2; - } - var temp = indentText; - indentText = " "; - d.write(string(o,args(arguments,argumentsIndex))); - indentText = temp; - }; - - string.setMaxIterations = function(i) { - maxIterations = i; - }; - - string.setMaxDepth = function(i) { - maxDepth = i; - }; - - string.$VERSION = 1.0; - - return string; -})(); |