var winCtrl = {
}

winCtrl._getTopMostWin = function() {
	var w = window
	while (w.parent&&w.parent!=w) w = w.parent	
	return w.top;
}
winCtrl.isTopMost=(window==winCtrl._getTopMostWin())

winCtrl.openWindow = function ( args, callback ) {
	this._getTopMostWin().openWindow(args,callback)
}

winCtrl.closeMe = function(retCode) {
	this._getTopMostWin().closeTopModalWindow(retCode)
}

winCtrl.tryLogin = function(callback) {
	this.openWindow ( {url: "/System/Phorum/a_login.php", width:400, height:250}, function(userDisplayName) { 				
		var tw = winCtrl._getTopMostWin()
		if (window!=tw&&tw._doOnLogin) tw._doOnLogin(userDisplayName);
		if (callback) { setTimeout(function() { callback(userDisplayName) }, 50) }
	})
}

/*winCtrl._doOnLoad = function() {
	if (!this.isTopMost) this._getTopMostWin().childWinLoaded(window)
}


window.attachEvent("onload", function() {winCtrl._doOnLoad()})
*/

if (winCtrl.isTopMost) {
	document.write("<script src='/System/JavaScript/ModalSupport/WinMgr.js'></scr"+"ipt>")

	window.openWindow = function ( params, callback ) {
		var w = createNewWindow(params)
		if (params.url) w.navigate(params.url)
		w.show(); w.callBackOnClose = callback
		return w
	}

	window.closeTopModalWindow = function(retCode) {
		if (!window._lastOpenWindow) return
		if (retCode!=null&&_lastOpenWindow.callBackOnClose)_lastOpenWindow.callBackOnClose(retCode)
		_lastOpenWindow.close()
	}
	/*
	window.modalWindows = []
	window.openWindow = function ( params, callback ) {
		var newWin = isc.Window.create( {			
			title: params.title?params.title:"Loading...",
			width: params.width?params.width:600, height:params.height?params.height: 450,
			autoCenter: true,	    
			isModal: true,
			showModalMask: window.modalWindows.length==0,
			autoDraw: false,
			dismissOnEscape: false,
			canDragResize: params.isResizable==null?true:params.isResizable,
			closeClick : function () { closeTopModalWindow(); newWin = null; return false },
			items: [
				isc.HTMLPane.create({autoDraw:false, 
				contentsURL:params.url,
				contentsType:"page"
				})
			]
		});
		newWin.show();
		window.modalWindows[window.modalWindows.length] = {win: newWin, cb: callback}
	}

	window.closeTopModalWindow = function (retCode) {
		if (window.modalWindows.length<1) return
		var data = window.modalWindows[window.modalWindows.length-1]
		data.win.hide(); data.win.clear(); data.win.destroy();
		window.modalWindows = window.modalWindows.slice(0,window.modalWindows.length-1)	
		if (data.cb&&retCode!=null) data.cb(retCode)
	}
	
	window.childWinLoaded = function ( win ) {
		if (window.modalWindows.length>0) window.modalWindows[window.modalWindows.length-1].win.setTitle(win.document.title)
	}*/
}


