
/* ###################################
### control link: open link browser
################################### */

function mgnlDialogCopyToOpenBrowser(source,repository){
	
	mgnlDebug("copyFrom: source: " + source, "dialog");

	var callBackCommand = new MgnlDialogCopyToBrowserCallBackCommand(source,repository);
	mgnlOpenTreeBrowser(source,source,repository,null,null,callBackCommand)
}


function MgnlDialogCopyToBrowserCallBackCommand(source,repository){
	this.callback = function(value){
		//var response = copyMoveNode( source, value, 'copy', repository );
		copyMoveNode( source, value, 'copy', repository );
		//while(ajax.readyState!=4)
		//window.setTimeout('getResponse();',1000);
		//alert(ajax.responseText);
	}
}

function mgnlDialogCopyToTypeOpenBrowser(source,repository,type,trashPath){
	
	mgnlDebug("copyFrom: source: " + source, "dialog");

	var callBackCommand = new MgnlDialogCopyToTypeBrowserCallBackCommand(source,repository,type,trashPath);
	mgnlOpenTreeBrowser(source,source,repository,null,null,callBackCommand)
}

function MgnlDialogCopyToTypeBrowserCallBackCommand(source,repository,type,trashPath){
	this.callback = function(value){
		//var response = copyMoveNode( source, value, 'copy', repository );
		copyMoveToTypeNode( source, value, 'copyToType', repository, type, trashPath );
		//var newName = getAjaxResponse();
		//alert(newName);
		//mgnlOpenDialog('/mk/tenders/tenderAnnouncement','mainColumnParagraphs',newName,'ppTenderCorrection','website');
		//copyMoveNode1( source, value, 'copyToType', repository, type );
		//while(ajax.readyState!=4)
		//window.setTimeout('window.close();',3000);
                window.close();
		//alert(ajax.responseText);
		//self.opener.location.reload();
	}
}

function mgnlDialogLinkBrowserResize()
	{
	var divTree=document.getElementById("mgnlTreeDiv");

	if (divTree)
		{
		var sizeObj=mgnlGetWindowSize();
		var h=sizeObj.h-50;
		var w=sizeObj.w-20;

		divTree.style.width=w;
		divTree.style.height=h;
		var iFrameTree=document.getElementById("mgnlDialogLinkBrowserIFrame");
		iFrameTree.style.height=h;
		}
	}

function mgnlDialogLinkBrowserWriteBack(){
	var iFrameDoc=mgnlGetIFrameDocument('mgnlDialogLinkBrowserIFrame');
	var addressBar=iFrameDoc.getElementById("mgnlTreeControlAddressBar");
	//alert("pred close...");
	// this should be allway the case
	if(window.top.mgnlCallBackCommand){
		mgnlDebug("mgnlDialogLinkBrowserWriteBack: calling callback function", "dialog");
		window.top.mgnlCallBackCommand.callback(addressBar.value);
	}
	
	window.close();
}

////////////////////////////////////////////////////////////////////////////////////

function mgnlOpenHDDBrowser(pathSelected, pathOpen, repository, width, height, callBackCommand){
	mgnlDebug("mgnlOpenHDDBrowser","dialog");
	if (!width) width=450;
	if (!height) height=550;
	var src="${pageContext.request.contextPath}/.magnolia/dialogpages/hddBrowser.html?mgnlCK="+mgnlGetCacheKiller();
	if (pathSelected) src+="&pathSelected="+pathSelected;
	if (pathOpen) src+="&pathOpen="+pathOpen;
	if (repository) src+="&repository="+repository;
	var w=window.open(src,"mgnlTreeBrowser","width="+width+",height="+height+",resizable=yes,status=yes,scrollbars=no");

	if (w){
		mgnlDebug("register call back function", "dialog");
		w.mgnlCallBackCommand = callBackCommand;
	}
}


function mgnlDialogLinkOpenHDDBrowser(controlName,repository,extension,addcontext){
	var control = document.getElementById(controlName);
	var pathSelected = control.value;
	pathSelected = pathSelected.replace(".html","");

	var pathOpen=""; //without selection: open path of editing page
	var pathElem=document.getElementById("mgnlPath");
	if (pathElem) pathOpen=pathElem.value;
	
	mgnlDebug("link: selectedPath: " + pathSelected, "dialog");
	mgnlDebug("link: pathOpen: " + pathOpen, "dialog"); 

	var callBackCommand = new MgnlDialogLinkBrowserCallBackCommand(control, extension);
	mgnlOpenHDDBrowser(pathSelected,pathOpen,repository,null,null,callBackCommand)
}



