var selectedFolder = '';
var clone;
 


function hideFolderContextMenu() {
			if (hide == true) {
				jQuery("#folderOptions").hide("fast");
				lastId = null;
			}
}

function moveFileToFolder(idFile, idFolder) {
		var params = 'idFile='+idFile;
		params += '&idFolder='+idFolder;
		//alert(params);
		var url = ed_basename + '/x-move-file-to-folder';
		document.getElementById('loadingDiv').style.visibility = 'visible';
		var req = new Ajax(url, {postBody: params, onComplete: showResponse, update: ''}).request();
		function showResponse(request) {
	     	loadFileList(ownerId, hiddenSelCatId, hiddenFromRecord, hiddenOrderBy, hiddenAsc);
	     	showMessage(request);
	    }   
}

function newFolder(){
		
		
		var newFolder = null
		var url = ed_basename + '/x-check-new-folder-name';
		//alert(document.getElementById('newFolderInput').value);
		if (document.getElementById('newFolderInput') && document.getElementById('newFolderInput').value != null)
			newFolder = document.getElementById('newFolderInput').value;
		else 
			newFolder = null;
		
		if (newFolder == '' || newFolder == null) {alert(_("FOLDER_EMPTY")); return false;}
		var params = 'newFolder='+encodeURIComponent(newFolder);
		document.getElementById('loadingDiv').style.visibility = 'visible';
		var req = new Ajax(url, {postBody: params, onComplete: showResponse, update: ''}).request();
		function showResponse(request) {
	     	document.getElementById('loadingDiv').style.visibility = 'hidden';
	     	submitNewFolder(request);
	    }  
}

function submitNewFolder() {
		var name = document.getElementById('folder').value;
		
		if (name == null || name == '') {
			alert(_("FOLDER_EMPTY")); return false;
		}
		var params = 'folderNewName='+name+'&hiddenSelCatId='+hiddenSelCatId;
		
		
		var url = ed_basename + '/x-add-new-folder';
		document.getElementById('loadingDiv').style.visibility = 'visible';
		var req = new Ajax(url, {postBody: params, onComplete: showResponse, update: ''}).request();
		function showResponse(request) {
			tb_remove();
	     	showMessage(request);
	     	loadFileList(ownerId, hiddenSelCatId, hiddenFromRecord);
	     	loadChangeFolder();
	    } 
	      
		
}


 
function showFolderOptions(id) {
            

			hide = false;
			jQuery("#options").hide("fast");
			
			var element = document.getElementById('folderOptions');
			var clickEl1 = document.getElementById('folderOptionsItem1');
			var clickEl2 = document.getElementById('folderOptionsItem2');
			var clickEl3 = document.getElementById('folderOptionsItem3');
			var clickEl5 = document.getElementById('folderOptionsItem5');
			var elemId = id;
			
			clickEl1.onclick=function(){jQuery("#folderOptions").hide("fast"); lastId = null; folderSettings(elemId, 'links');};
			clickEl2.onclick=function(){jQuery("#folderOptions").hide("fast"); lastId = null; folderSettings(elemId, 'email');};
			clickEl3.onclick=function(){jQuery("#folderOptions").hide("fast"); lastId = null; folderSettings(elemId, 'rename');};
			clickEl5.onclick=function(){dropFolder(elemId, '');};

            clickEl1.onmouseover=function(){hide=false; clickEl1.style.background = "#eaeaea";};
            clickEl1.onmouseout=function(){hide = true; setTimeout('hideContextMenu()', 2000); clickEl1.style.background = "transparent url(../images/ico-gen-odkaz.gif) no-repeat 10px 50%";};
            clickEl2.onmouseover=function(){hide=false; clickEl2.style.background = "#eaeaea";};
            clickEl2.onmouseout=function(){hide = true; setTimeout('hideContextMenu()', 2000); clickEl2.style.background = "transparent url(../images/ico-zas-email.gif) no-repeat 10px 50%";};
            clickEl3.onmouseover=function(){hide=false; clickEl3.style.background = "#eaeaea";};
            clickEl3.onmouseout=function(){hide = true; setTimeout('hideContextMenu()', 2000); clickEl3.style.background = "transparent url(../images/ico-rename.gif) no-repeat 10px 50%";};
            clickEl5.onmouseover=function(){hide=false; clickEl5.style.background = "#eaeaea";};
            clickEl5.onmouseout=function(){hide = true; setTimeout('hideContextMenu()', 2000); clickEl5.style.background = "transparent url(../images/ico-smazat.gif) no-repeat 10px 50%";};



			var obj = document.getElementById('folderOption_'+id);	
			var objOrig = obj;

			var elleft = eltop = i = 0;
		    if(obj.offsetParent)
		        while(1) 
		        {
		          if (i<2)
		          	elleft += obj.offsetLeft;
		          eltop += obj.offsetTop;
		          if(!obj.offsetParent)
		            break;
		          obj = obj.offsetParent;
		          i++;
		        }
		    else if(obj.x) {
		        elleft += obj.x;
		        eltop += obj.y;
			}
	    	elleft += 26;
	    	
	    	eltop -= 10;
	    	if (objOrig.className == 'bottomOption') eltop -= 100;

	    	element.style.left = elleft + 'px';
	    	element.style.top = eltop + 'px';
	    	
			if (jQuery("div").filter("#folderOptions").is(":visible")) {
				if (lastId == id) {
					jQuery("#folderOptions").hide("fast");
					lastId = null;
				} 
				else {
					lastId = id;
				}
			}
			else {
				if (lastId == id) {
					jQuery("#folderOptions").hide("fast");
					lastId = null;
				}
				else {
					jQuery("#folderOptions").show("fast");
					lastId = id;
				}
				
			}
	    	
}

function folderSettings(id, type){
		
		var url = ed_basename+'/x-folder-'+type+'/'+id;
		
        var params = '';
        var req = new Ajax(url, {postBody: params, onComplete: showResponse, update: ''}).request();
        function showResponse(request) {
        	if (loaded) {
                document.getElementById("TB_ajaxContent").innerHTML = request;
                //document.getElementById("TB_ajaxContent").innerHTML = null;
                loaded = false;
                loadOrangeButton();
            }
            else {
                folderSettings(id, type);
                return;
            }
        }
}

function renameFolder(id, name){
	
	if (document.getElementById('name')) {
		var newName = document.getElementById('name').value;
	}
	else var newName = window.prompt(_("NEW_FOLDER_NAME"), name);
	
	if ( (newName != '') && (newName != name) && (newName != null) ){
		
		var url = '/x-rename-folder';
		var params = 'folderId='+encodeURIComponent(id)+'&newName='+encodeURIComponent(newName);
		document.getElementById('loadingDiv').style.visibility = 'visible';
		
		var req = new Ajax(url, {postBody: params, onComplete: showResponse}).request();
	}
	
	function showResponse(request) {
	      	document.getElementById('loadingDiv').style.visibility = 'hidden';
	      	if (document.getElementById('name')) {
	      		tb_remove();
	      	}
	      	else window.location = '/nastaveni-adresaru';
	      	loadFileList(ownerId, hiddenSelCatId, hiddenFromRecord, hiddenOrderBy, hiddenAsc);
	}
}

function dropFolder(id, redir) {
	var params = 'folderid=' + id;
	var url = ed_basename + '/x-get-foldername';
	document.getElementById('loadingDiv').style.visibility = 'visible';
	var req = new Ajax(url, {postBody: params, onComplete: showResponse, update: ''}).request();
	
	function showResponse(request) {
		document.getElementById('loadingDiv').style.visibility = 'hidden';
		request = request.replace( /\s/g, "" );
		
		if ( window.confirm(_("FOLDER_REMOVE1") + request + _("FOLDER_REMOVE2")) ){
			var url = '/x-drop-folder';
			var params = 'folderId='+encodeURIComponent(id);
			document.getElementById('loadingDiv').style.visibility = 'visible';
			var req = new Ajax(url, {postBody: params, onComplete: showResponse2}).request();
		}
		
		function showResponse2(request) {
		      	document.getElementById('loadingDiv').style.visibility = 'hidden';
		      	//alert(request);
		      	if (redir != '') 
		      		window.location = redir;
		      	else 
		      		loadFileList(ownerId, hiddenSelCatId, hiddenFromRecord, hiddenOrderBy, hiddenAsc);
		}
		
	}
}

function sendFolderLink(id) {
	var email = encodeURIComponent(document.getElementById('contactEmail').value);
	if (email == null || email == '') {alert(_("EMAIL_EMPTY")); return false;}
	var params = '';
	params += '&folderId=' + id;
	params += '&contactEmail=' + email;
	
	
	var url = ed_basename+'/x-send-folder-link';
	document.getElementById('loadingDiv').style.visibility = 'visible';
	var req = new Ajax(url, {postBody: params, onComplete: showResponse, update: ''}).request();
	function showResponse(request) {
	     document.getElementById('loadingDiv').style.visibility = 'hidden'; 
	     tb_remove();
	     showMessage(request);
	}
}

function checkAllIncFolders(){
		if ( document.getElementById('fCheckCtrl').checked ){
			var check = true;
		} else {
			var check = false;
		}
		var cbA = document.getElementsByName('fileCheck[]');
		var cbF = document.getElementsByName('folderCheck[]');
		for (var i = 0; i < cbA.length; i++){
			cbA[i].checked = check;
			if (check){
				document.getElementById('row'+cbA[i].value).className = 'selRow';
			} else {
				if ( (i % 2) == 0 ){
					document.getElementById('row'+cbA[i].value).className = 'light';
				} else {
					document.getElementById('row'+cbA[i].value).className = 'dark';
				}
			}
		}
		for (var i = 0; i < cbF.length; i++){
			cbF[i].checked = check;
			if (check){
				document.getElementById('folder'+cbF[i].value).className = 'selRow';
			} else {
				if ( (i % 2) == 0 ){
					document.getElementById('folder'+cbF[i].value).className = 'light';
				} else {
					document.getElementById('folder'+cbF[i].value).className = 'dark';
				}
			}
		}
}

function doFolderAction(){
	
		var sb = document.getElementById('actionSelBox');
		
		var fArr = getChecked('fileCheck[]');
		var foldArr = getChecked('folderCheck[]');
		
		if (fArr.length < 1 && foldArr < 1){
			alert(_("NO_FILES_OR_FOLDERS"));
			return false;
		}
		if (sb[sb.selectedIndex].value != '0')
		switch(sb[sb.selectedIndex].value){
			case 'shareSelected':
				var cArr = getChecked('contactCheck[]');
				var cArrNE = getChecked('contactNotEdiskCheck[]');
				if (cArr.length < 1 && cArrNE.length < 1){
					alert(_("NO_CONTACT"));
					return false;
				}
				shareFiles();
				break;
			case 'sendLinkPerEmail':
					sendLinkPerEmail();
				break;
			case 'generateLink':
					getFileLinks();
				break;
			case 'unlink':
				if (fArr.length < 1 && foldArr >= 1) {
					if (!confirm(_("CONFIRM_MULTI_DELETE_FOLDERS")) ) return false;
				}
				else if (fArr.length >= 1 && foldArr < 1) {
					if (!confirm(_("CONFIRM_MULTI_DELETE")) ) return false;
				}
				else if (fArr.length >= 1 && foldArr >= 1) {
					if (!confirm(_("CONFIRM_MULTI_DELETE_BOTH")) ) return false;
				}
				
				deleteFilesAndFolders();
				
				break;
			default:
				folder();
				break;
		}
}

function deleteFilesAndFolders(){
		
		var cbArray = getChecked('fileCheck[]');
		var foldArray = getChecked('folderCheck[]');
		
		if ( cbArray.length <= 0 && foldArray <= 0){
			return;
		}
		
		var params = '';
		for(i = 0; i < cbArray.length; i++ ){
			params += '&fileCheck[]=' + cbArray[i];
		}
		var url = ed_basename + '/x-unlink-files/acc'+sessId;
		document.getElementById('loadingDiv').style.visibility = 'visible';
		var req = new Ajax(url, {postBody: params, onComplete: showResponse, update: ''}).request();
		function showResponse(request) {
			var params = '';
			for(i = 0; i < foldArray.length; i++ ){
				params += '&folderCheck[]=' + foldArray[i];
			}
			var url = ed_basename + '/x-unlink-folders/acc'+sessId;
			var req = new Ajax(url, {postBody: params, onComplete: showInnerResponse, update: ''}).request();
			
			function showInnerResponse(innerrequest) {
				loadFileList(ownerId, hiddenSelCatId, hiddenFromRecord, hiddenOrderBy, hiddenAsc);
		     	document.getElementById('loadingDiv').style.visibility = 'hidden';
		     	showMessage(request + ' ' + innerrequest);
			}
	     	
	    }
}

function folder(){
		var fArr = getChecked('fileCheck[]');
		var foldArr = getChecked('folderCheck[]');
		
		var sb = document.getElementById('actionSelBox');
		var url = ed_basename+'/x-move-folders-and-files/acc/'+sessId;
		
		var params = 'folder=' + sb[sb.selectedIndex].value;
		
		for (var i = 0; i < fArr.length; i++){
			params += '&fileCheck[]=' + fArr[i];
		}
		for (var i = 0; i < foldArr.length; i++){
			if (sb[sb.selectedIndex].value != foldArr[i])
				params += '&folderCheck[]=' + foldArr[i];
		}
		
		
		document.getElementById('loadingDiv').style.visibility = 'visible';
		var req = new Ajax(url, {postBody: params, onComplete: showResponse, update: ''}).request();
		function showResponse(request) {
	     	loadFileList(ownerId, hiddenSelCatId, hiddenFromRecord, hiddenOrderBy, hiddenAsc);
	     	showMessage(request); 
	     	document.getElementById('loadingDiv').style.visibility = 'hidden';
	    }
	
}

