class DefaultDetails {
	constructor() {
		this._eventSupport = new MyEventSupport();
		this._selectedItem = null;
//		this._eventSupport.addEventListener("selectionChanged",this,this.renderProperties);
		this._eventSupport.addEventListener("modelChanged",this,this.renderProperties);
//		this.model = window;
	}
	
	init() {
		return this;
	}

	get iFrame() { 
		if (this._iFrame == null) {
			this._iFrame = document.getElementById("detailIframe");
		}
		return this._iFrame; 
	}
	get window() { return this.iFrame.contentWindow; }
	get document() { return this.window.document; }
	get wodaDocument() { return document; }
	get URL() { return this.iFrame.src; }
	set URL(newValue) { 
		this.iFrame.src = newValue; 
	}
	get selectedItem() { return this._selectedItem; }
	set selectedItem(newValue) { 
		this._selectedItem = newValue; 
//		this._eventSupport.getEvent("selectionChanged").fire(this,this._selectedItem);
	}
	get model() { return this._model; }
	set model(newValue) { 
		this._model = newValue; 
		this._eventSupport.getEvent("modelChanged").fire(this,this._model);
	}
	
	
	
	select(element) {
		this._selectedItem = null;

		var item = element;
		console.log(item);
		this._eventSupport.getEvent("select").fire(this,item);
		
	}
	
	renderProperties(event,data) {
		var This = event.target;
		
		
		var itemBean = This.document.weBeans.lookup("DefaultItem");
		var propertyBean = This.document.weBeans.lookup("DefaultProperty");
		var element = This.document.getElementById("Property");

		var dataProperty = {
							"name":data.name,
							"onclick":"/structr/rest/"+data.name
		}
		itemBean.apply(element,dataProperty);
		
		for(var i in data) {
			var dataProperty = {
								"name":i,
								"value":data[i],
			}
			if (Array.isArray(data[i])) {
				dataProperty.readonly = "readonly";
				dataProperty.value = "";
				dataProperty.id = "property:"+i;
				
				for (var a in data[i]) {
					var v = JSON.stringify(data[i][a])+"] ";
					dataProperty.value += v;					
				}
			}
			
			propertyBean.append(element,dataProperty);
		}
	
		
	}
	
	
}