function clickEvent(e){
	// Assign Event to the gwstore namespace
	YAHOO.gwstore.evnt = e;
	
	
	if(YAHOO.gwstore.panel.manager == 'OverlayManager'){
		if (!YAHOO.lang.isNull(YAHOO.gwstore.panel.manager.getActive())){
			var pactive = YAHOO.gwstore.panel.manager.getActive();
			pactive.hide();
		}
	}
	

	// Initialise variables
	var events = 
	{
		"event": [
			{
				 "name": "confirm_dialog",
				 "script": "delete_box",
				 "callback":"confirmDelete",
				 "dependancy":["container","json","connection"]
			 },
			{
				"name": "page_request", 
				"script": "xhr_request", 
				"callback":"requestPage",
				"dependancy":["json"]
			},
			{
				"name": "site_request", 
				"script": "site_request", 
				"callback":"sitePage",
				"dependancy":["json"]
			},
			{
				"name": "edit", 
				"script": "edit_request", 
				"callback":"siteEdit",
				"dependancy":["menu","button","editor","json","connection"]
			},
			{
				"name": "view_panel", 
				"script": "Panel", 
				"callback":"gwPanel",
				"dependancy":["container","annimation","dragdrop"]
			},
			{
				"name": "tab_display",
				"script": "Tabs", 
				"callback":"gwTabs",
				"dependancy":""
			},
			{
				"name": "switch_image", 
				"script": "ImageSwitch", 
				"callback":"gwSwitch",
				"dependancy":""
			}
		]		
    };
    var script;
	var in_array = false;
	var node = '';
	// Get the original element
	var tel = $(Event.element(e));
	var target_event = tel.readAttribute('event');
	
	if (target_event == null){
		var newel = DOM.getAncestorByTagName(tel,"a");
		target_event = newel.readAttribute('event');
		el = newel;
	}
	
	if (newel == null){
		el = tel;
	}
	if (target_event != null){
		events.event.find(function(s) {
			if (s.name === target_event){
				if (s.name === "edit"){
					var par = DOM.getAncestorByClassName(el,"edit");
					node = par.id;
				}
				in_array = true;
				script = s.script;
				callback = s.callback;
				dependancy = s.dependancy;
			}
		});
		if (in_array){	
			
			t = "YAHOO.gwstore."+callback;
			if (LANG.isObject(eval(t))){
				var myc = eval(callback);
				myc();				
			}
			else{
				if (dependancy != ""){
					YAHOO.gwstore.loader(dependancy,script,callback,node);
				}
				else {
					getScript(script,callback,node);
				}
			}
			EVENT.stopEvent(e);
		}
	}
}       
		
	YAHOO.gwstore.panel.addPanel = function(el,p){
		 if (YAHOO.gwstore.myarr.indexOf(el) >= 0){
		 	var key = YAHOO.gwstore.myarr.indexOf(el);
		 	//alert(YAHOO.gwstore.panelarr[key]);
		 	//YAHOO.gwstore.panel.manager.register(YAHOO.gwstore.panelarr);
		 	YAHOO.gwstore.panelarr[key].show();
		 	
		 	
		 }
		 else {
		 	YAHOO.gwstore.panel.manager = new YAHOO.widget.OverlayManager();
		 	YAHOO.gwstore.myarr.push(el);
		 	YAHOO.gwstore.panelarr.push(p);
		 	YAHOO.gwstore.panel.manager.register(YAHOO.gwstore.panelarr);
		 	p.show();
		 }
	}                                  


