/***********************************
    Developed by: Alishov Anar   
    Company: Paradigma       

    Description: Table Sort Script

    (C)2004 All right reserverd.     
***********************************/

function debug(e, sch) {
	var lpp = 35;
	var c = 0;
	var et = typeof(e);
	var et = et.toString();
	var sech = new RegExp(sch, 'gi');
	var text = '';
	if (et != 'undefined') {
		if (et == 'object') {
			var pages = 0;
			var page = 1;
			var re = /\n/g;

			for (t in e)
				if (!t.match(sech)) continue;
				else pages++;

			var es = pages;
			pages = Math.round(pages / lpp);
			var isname = (e.name!=''&&e.name!='[object]'&&e.name!='undefined'&&e.name!=null);
			var o = 'Page ' + page + '/' + pages + " of '" + (isname?e.name:(e.id!=''?e.id:(e.tagName!=''?e.tagName:'Unknown'))) + "' Elements: " + es + '\n\n';
			var oo = '';
			var rez = new Array();
			var ess = 0;

			for (t in e) {
				if (!t.match(sech)) continue;
				ess++;
				tt = ((t.toString()).length<=8) ? '\t\t' : '\t';
				text = '';
				if (!(t == 'dataFormatAs' || t == 'dataFld' || t == 'dataSrc')) text = e[t];
				else text = "Can't read this field.";
				texttype = typeof(text);
				texttype = texttype.toString();
				if (texttype == 'object') text = '---';
				oo = ess + '. ' + t +' [' + texttype + '] '+tt+':\t ' + text + ' \t' + '\n' ;;
				c++;
				rez = o.match(re);
				if (rez.length>lpp) more = true;
				else more = false;
				if (!more) { 
					o += oo;
					oo = '';
				} else c = lpp;
				if (c >= lpp) {
					page++;
					c = 0;
					if (!confirm(o)) return false
					var isname = (e.name!=''&&e.name!='[object]'&&e.name!='undefined'&&e.name!=null);
					o = 'Page ' + page + '/' + pages + " of '" + (isname?e.name:(e.id!=''?e.id:(e.tagName!=''?e.tagName:'Unknown'))) + "' Elements: " + es + '\n\n' + oo;
				}
			}
			if (c > 0) if (!confirm(o)) return false
			if (c == 0) alert(e);
		} else {
			alert('Scalar: ' + e);
		}
	} else {
		alert(e);
	}
}

function debug2window(e) {
	wnd = window.open('', 'debug');
	wnd.document.body.innerHTML = '';
	wnd.document.writeln('<pre><code><table border=1>');
	o = '';
	c = 0;
	et = typeof(e);
	et = et.toString();
	if (et != 'undefined') {
		if (et == 'object') {
			for (t in e) {
				tt = ((t.toString()).length<=8) ? '\t\t' : '\t';
				text = e[t];
				texttype = typeof(text);
				texttype = texttype.toString();
				if (texttype != 'object') {
					tn = '\t';
					o += '<tr><td>' + texttype + ' </td><td> ' + t + ' </td><td> ' + text + ' </td></tr>';
				} else {
					tn = '\t';
					text = '---'; // 'ÄÄÄ'; //e.name;
					o += '<tr><td>' + texttype + ' </td><td> ' + t + ' </td><td> ' + text + ' </td></tr>';
//					o +=  texttype + ' \t:\t ' + t + ' '+tt+':\t ' + text + ' '+tn + '\n' ;
				}
				c++;
				if (c >= 40) {
					c = 0;
					wnd.document.write(o + '<br>');
					o = '';
				}
			}
			if (c > 0) wnd.document.writeln(o + '<br>');
			if (c == 0) wnd.document.writeln(e + '<br>');
		} else {
			wnd.document.writeln('Scalar: ' + e + '<br>');
		}
	} else {
		wnd.document.writeln(e + '<br>');
	}
	wnd.document.writeln('</table></code></pre>');
}

