aboutsummaryrefslogtreecommitdiff
path: root/static/datadumper.js
diff options
context:
space:
mode:
Diffstat (limited to 'static/datadumper.js')
-rw-r--r--static/datadumper.js204
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 = "&nbsp;";
- 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;
-})();