
	dojo.require("dojo.dnd.*");
	dojo.require("dojo.event.*");
	dojo.require("dojo.dnd.HtmlDragCopy");
	dojo.require("dojo.lfx.*");
	dojo.require("dojo.html.style");
	
	var idCount = 100;
	var counter = 0;
	var dropTargets = new Array();
	var dragSources = new Array();
	
	var cloneTile = null;
	var gadgetTable = null;
	var tbTable = null;
	window.id = "_win_";
	
	dojo.event.topic.registerPublisher("/init", window, "init");

	function init(){
	//debugger
	   	for (var i in gadgetManager.tbTable) {
			var t = dojo.byId("tb_tr");	
			loadMsg("Initializing "+gadgetManager.tbTable[i].Module.ModulePrefs.id+"...");		
			new Gadget(gadgetManager.tbTable[i], null, t);
		}
		
	    if (!gadgetTable)
	    	return;
	    	
		for (var i in gadgetTable) {		
			var tt = gadgetTable[i];
			var t = dojo.byId(i);	
			if (!t) {
				var tr = document.getElementById("t_tr");
				var td = document.createElement("td");
				td.setAttribute('vAlign', 'top');
				t = document.createElement("table");
				//t.setAttribute("border", "1");
				t.setAttribute("cellspacing", "4");
				t.setAttribute("cellpadding", "4");
				t.setAttribute('id', i);
				td.appendChild(t);
     			tr.appendChild(td);
			}	
			//debugger	
			for (var j=0; j<tt.length; j++) {		
				loadMsg("Initializing "+tt[j].Module.ModulePrefs.id+"...");		
			
			    var g = new Gadget(tt[j], null, t, null, 1);
			    if (gMap) {
			    	var gg = gMap[g.id];
				    if (gg) {
				    //debugger
				    	var m = gg[1][0];
				    	for (var i=0; i<m.length; i++)
					    	g.fg["opt"]["Pub"][m[i][0]] = m[i][1];
						m = gg[1][1];
				    	for (var i=0; i<m.length; i++)
					    	g.fg["opt"]["Sub"][m[i][0]] = m[i][1];
					 }
				}
			}
			//debugger
			new Gadget(null, null, t);
			
		
		}

		gadgetManager.doAfterLoad();
		dojo.byId("msgDiv").style.display = "none";

	//msg(document.getElementById("t").innerHTML);
	}
	
	
	function onPageUnload() {
		var res = "{";
		var k=0;
		var m = gadgetManager.gadgetMap;
		for (var i in m) {
			var g = m[i];
			if (g.state==0)
		    	continue;
		    if (k>0)
		    	res +=",";
		    g.setCookie();
			res += "'"+m[i].id+"':"+g.cookie;	
			k++;
		}
		res +="}";
		createCookie("gadgets", res, 100);
		var sss = gadgetManager.serializeEvents();
		createCookie("events", sss, 100);
		//msg(readCookie("gadgets"));
		
	}
	
	dojo.addOnLoad(init);
	dojo.event.connect("before", window, "onunload", window, "onPageUnload");

