/******************************************************************************/
/* A main.js függvényei és váltózói(objektumok)                               
/* getEventSource()                                                           
/* findParent()
/* checkEmail()
/* ifEmailActivate()
/* formToQueryString()
/* $()
/* HumanReadable()
/* $lang()
/* loadLanguage()
/* generateSecImg()
/* setRegFormSubmit()
/* regFormSubmit()
/* changeemailForm()
/* settingsForm()
/* loginAfterTimeout()
/* userDelFormSubmit()
/* setSortType()
/* sortedFilelist()
/* fileSpaceStats()
/* addNewDir()
/* renameDir()
/* deleteDir()
/* contextFileMenuScripts
/* selectAllRegist()
/* selectAll()
/* deselectAllRegist()
/* deselectAll()
/* deleteAllSelected()
/* deleteSelected()
/* confirmFileSpace()
/* setAddnewDir()
/* externallinks()
/******************************************************************************/

var _info = navigator.userAgent;
var ie = (_info.indexOf("MSIE") > 0);

function printf(S, L) {
  var nS = "";
  var tS = S.split("%s");
  if (tS.length != L.length+1) throw "Input error";
 
  for(var i=0; i<L.length; i++)
   nS += tS[i] + L[i];
  return nS + tS[tS.length-1];
}

var regexEmail=/^[A-Z0-9._%+\-!#]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4}$/i
var language=""

var ACTIVE_PATH = "/";
var ACTIVE_PARENT;
var ACTIVE_ITEM;
var ACTIVE_DIR = "/";
var ACTIVE_SORT_ITEM;
var SORT_TYPE = '';
var DISPLAY_TYPE;
var UPLOAD_TYPE = '';
var IMAGES = new Array();
var ACTIVE_IMAGE;
var SESSIONID = '';
var QUOTA_USED = 0;
var AJAXLOGIN = false;
var UPLOAD_MODE = false;

var context_menus = ['context_menu','context_filemenu'];

//Context menük eltüntetése
document.onmousedown = function(ev)
{   
 try{  
  for(var i=0; i<context_menus.length; i++)
  {
    if($(context_menus[i]).style.display == 'block')
    {      
      $(context_menus[i]).style.display = 'none';      
      var divs = $('context_menu').getElementsByTagName('div');
      for(j=0; j<divs.length; j++)
      {         
         divs[j].style.display = 'block';         
      }                                                     
    }
  }  
 }
 catch(err){}   
        
}

function getEventSource(ev)
{
   ev || (ev = window.event);      
      
   if(typeof ev.target != 'undefined')
   {
      return ev.target;             
   }      
   else if(typeof ev.srcElement != 'undefined')
   {
      return ev.srcElement;                 
   }
   else
   {
      return true;
   }
}

function findParent(element, tagName) 
{
   var element = element;
   while (element.parentNode && (!element.tagName ||(element.tagName.toUpperCase() != tagName.toUpperCase())))
   {
     element = element.parentNode;
   }  
   return element;
}

function checkEmail(n){if(n.match(regexEmail)){return true}else{return false}}
function ifEmailActivate(e,n)
{
	if(checkEmail(e)){$(n).disabled=false}
	else{$(n).disabled=true}
}

function formToQuerystring(form)
{
	es=form.getElementsByTagName("*")
	re=new Array()
	for(e in es)
	{
		if(!es[e].disabled && es[e].name)
		{
			re.push(encodeURIComponent(es[e].name)+"="+(es[e].value==null?'':encodeURIComponent(es[e].value)))
		}
	}
	return re.join("&")
}

Array.prototype.without = function(item){
   for(j=0; j<this.length; j++)
   {
      if(item == this[j])
      {
        this.splice(j,1);
        break;
      }
   }
   return this;         
}

function $(n){return document.getElementById(n);}

function HumanReadable(size)
{
   if(size>=1073741824){return Math.round((size/1073741824)*100)/100+' G';}
   if(size>=1048576){return Math.round((size/1048576)*100)/100+' M';}
   if(size>=1024){return Math.round((size/1024)*100)/100+' K';}
   return size+' b';
}

function $lang(n)
{
	l=language.SelectSingleNode("/language/lang[@name='"+n+"']")
	return (l?l.firstChild.nodeValue:n)
}
/*
function loadLanguage()
{  
	var oXML = new FCKXml();
	oXML.LoadUrl('/language.xml',function(fckXml){language=fckXml})
}
*/
function generateSecimg(n)
{	
	$(n).style.backgroundImage="url('/img/ajax-loader.gif')";
	$(n).getElementsByTagName('img')[0].src='/img/ajax-loader.gif'
	var oXML = new FCKXml();
	oXML.LoadUrl('?r=ajax.secimg',function(fckXml)
	{
		var imgsrc=fckXml.SelectSingleNode('/doc/secimg/text').firstChild.nodeValue
		$(n).getElementsByTagName('img')[0].src='/image/secimg.php?'+imgsrc
		$(n).style.backgroundImage="none"
	});	
}

function addEvent(obj, evType, fn)
{
	if(evType=="submit"){obj.onsubmit=function(){return false}}
	if(obj.addEventListener){obj.addEventListener(evType, fn, false);return true;}
	else if(obj.attachEvent){var r=obj.attachEvent("on"+evType, fn);return r;}
	else{return false;}
}  

function activationResend()
{
   $('regactResendcodeformsubmit').onclick = function(e){
      $('regact_loader').style.display = 'block';
	    var oXML = new FCKXml();
	    oXML.PostUrl('?r=ajax.reg',$('email').value,function(fckXml)
	    {
		     setTimeout("$('email').disabled=false;$('regformloading').style.display='none';document.body.style.cursor='default'",1);
		     var err=fckXml.SelectSingleNode('/doc/sendregcodemail').firstChild.nodeValue
		     if(err=='ok')
		     {
		        alert($lang('regact.ok'))
			    document.location.href='?page=regact';
		     }
		     else
		     {
                 $('regact_loader').style.display = 'none';	      
			     alert($lang('regact.alreadyactive'))			 
		     }
	    })      
      eventStop(e);
   }
}

function setRegFormSubmit(){addEvent($('regform'),'submit',regFormSubmit)}

function regFormSubmit(e)
{
	setTimeout("$('regformsubmit').disabled=true;$('regformloading').style.display='block';document.body.style.cursor='progress'",1)
	if(!checkEmail($('email').value))
	{
		alert($lang('registration.error.email'));
		setTimeout("$('regformsubmit').disabled=false;$('regformloading').style.display='none';document.body.style.cursor='default'",1);
		return false;
	}
	
	var oXML = new FCKXml();
	oXML.PostUrl('?r=ajax.reg',formToQuerystring($('regform')),function(fckXml)
	{
		setTimeout("$('regformsubmit').disabled=false;$('regformloading').style.display='none';document.body.style.cursor='default'",1);
		var err=fckXml.SelectSingleNode('/doc/reg/error').firstChild.nodeValue
		if(err=='0')
		{//success
			document.location.href='?page=regact'
		}
		else
		{//error
			generateSecimg('secimg')
			alert($lang('registration.error.'+err))
            /*
			if(confirm($lang('regact.inactive')))
			{
				document.location.href='?page=regact';
			}	
			*/
		}
	}	
	)
	//$('timelockbar').contentWindow.checkKeepalive(false)
    return false;
}

function changeemailformSubmit(e)
{
	setTimeout("$('changeemailformsubmit').disabled=true;$('changeemailformloading').style.display='block';document.body.style.cursor='progress'",1)
	if(!checkEmail($('newemail').value))
	{
		alert($lang('settings.changeemail.error.email'));
		setTimeout("$('changeemailformsubmit').disabled=false;$('changeemailformloading').style.display='none';document.body.style.cursor='default'",1);
		return false;
	}
	
	var oXML = new FCKXml();
	oXML.PostUrl('?r=ajax.changeemail',formToQuerystring($('changeemailform')),function(fckXml)
	{
		setTimeout("$('changeemailformsubmit').disabled=false;$('changeemailformloading').style.display='none';document.body.style.cursor='default'",1)
		var err=fckXml.SelectSingleNode('/doc/changeemail/error').firstChild.nodeValue
		if(err=='0')
		{//success
			if(fckXml.SelectSingleNode('/doc/changeemail/done').firstChild.nodeValue=='codesended')
			{
				$('validaterow').style.display='table-row'
				alert($lang('settings.changeemail.codesended'))
			}
			if(fckXml.SelectSingleNode('/doc/changeemail/done').firstChild.nodeValue=='emailChanged')
			{
				if(confirm($lang('settings.changeemail.success'))){document.location.href='/logout.php'}		
			}
			
		}
		else if(err=='notloggedin')
		{
			loginAfterTimeout()
		}
		else
		{//error			
			alert($lang('settings.changeemail.error.'+err))
			if($('validate').value!=''&&err!='codeAuthWrongEmail'){$('validate').value=''}
		}
	}
	)
	$('timelockbar').contentWindow.checkKeepalive(false);
	timeLockReload();
    return false
}

function settingsformSubmit(e)
{
	setTimeout("$('settingsformsubmit').disabled=true;$('settingsformloading').style.display='block';document.body.style.cursor='progress'",1)

	var oXML = new FCKXml();
	oXML.PostUrl('?r=ajax.settings',formToQuerystring($('settingsform')),function(fckXml)
	{
		setTimeout("$('settingsformsubmit').disabled=false;$('settingsformloading').style.display='none';document.body.style.cursor='default'",1)
		var err=fckXml.SelectNodes('/doc/posthandler/errors/var')
		if(err.length>0)
		{
			/*
			for(vari in err)
			{				
				  alert($lang('settings.error.'+err[vari].getAttribute('name')+'.'+err[vari].childNodes[1].firstChild.nodeValue))
			}
			*/		
			var item = '';
			for(var i=0; i<err.length; i++)
			{						
				if(err[i].childNodes[1])
				{
					item = err[i].childNodes[1].firstChild.nodeValue;
				}
				else
				{					
					item = err[i].childNodes.item(0).firstChild.nodeValue;
				}
				alert($lang('settings.error.'+err[i].getAttribute('name') + '.' + item))
			}
		}
		else if(fckXml.SelectSingleNode('/doc/posthandler/dbupdate'))
		{
			alert($lang('saved'))
		}
	}
	)
	$('timelockbar').contentWindow.checkKeepalive(false);
	timeLockReload();
	return false
}

function changepwformSubmit(e)
{
	setTimeout("$('changepwformsubmit').disabled=true;$('changepwformloading').style.display='block';document.body.style.cursor='progress'",1)

	var oXML = new FCKXml();
	oXML.PostUrl('?r=ajax.changepw',formToQuerystring($('changepwform')),function(fckXml)
	{
		setTimeout("$('changepwformsubmit').disabled=false;$('changepwformloading').style.display='none';document.body.style.cursor='default'",1)
		var err=fckXml.SelectNodes('/doc/posthandler/errors/var')
		if(err.length>0)
		{
			/*
			for(vari in err)
			{				
				  alert($lang('settings.error.'+err[vari].getAttribute('name')+'.'+err[vari].childNodes[1].firstChild.nodeValue))
			}
			*/		
			var item = '';
			for(var i=0; i<err.length; i++)
			{						
				if(err[i].childNodes[1])
				{
					item = err[i].childNodes[1].firstChild.nodeValue;
				}
				else
				{					
					item = err[i].childNodes.item(0).firstChild.nodeValue;
				}
				alert($lang('settings.error.'+err[i].getAttribute('name') + '.' + item))
			}
		}
		else if(fckXml.SelectSingleNode('/doc/posthandler/dbupdate'))
		{
			alert($lang('saved'))
		}
	}
	)
	$('timelockbar').contentWindow.checkKeepalive(false);
	timeLockReload();
	return false
}


// user törlése ----------------------------------------------------------------

function userDelFormSubmit(e)
{
	setTimeout("$('userdelformsubmit').disabled=true;$('userdelformloading').style.display='block';document.body.style.cursor='progress'",1);
              
	if(!confirm($lang('userdel.confirmText')))
  {
     setTimeout("$('userdelformsubmit').disabled=false;$('userdelformloading').style.display='none';document.body.style.cursor='default'",1);  
     return false;
  }   
	
	var oXML = new FCKXml();
	oXML.PostUrl('?r=ajax.userdel', '', function(fckXml)
	{	
		setTimeout("$('userdelformsubmit').disabled=false;$('userdelformloading').style.display='none';document.body.style.cursor='default'",1)    		
		var err = fckXml.SelectSingleNode('doc/userdel/error').firstChild.nodeValue;
    	
		if(err=='0')
		{			
		    var errcode = fckXml.SelectSingleNode('doc/userdel/deleted').firstChild.nodeValue;
		    if(errcode == '1')
		    {
				   document.location.href='/logout.php';
        }
        else
        {
           alert($lang('userdel.error.deleteError'));
        }  						
		}
		else if(err=='notloggedin')
		{
		  alert($lang('userdel.error.notLoggedUser'));			
		}    	
	})	
  return false;
}

// user törlése vége -----------------------------------------------------------

function setSortType(form)
{
  var radios = $(form).getElementsByTagName('input');
  for(i=0; i<radios.length; i++)
  {     
     if(radios[i].checked)
     {         
        SORT_TYPE = radios[i].value;
        return;       
     }
  }       
}

//rendezés ---------------------------------------------------------------------
function sortedFilelist(form)
{
   var form = $(form);
   var radios = form.getElementsByTagName('input');
   for(i=0; i<radios.length; i++)
   {
      radios[i].onclick = function(){
         if(ACTIVE_PATH)
         {         
           SORT_TYPE = this.value;
           setDisplayType();
           //filelister.js
           new fileLister(ACTIVE_PATH, FILELIST_TABLE, FILELIST_TBODY, FILELIST_URL);  
           //filelister.js         
           savePreferences();
           $('timelockbar').contentWindow.checkKeepalive(false);
		   timeLockReload();
         }  
      }
   }
}
//rendezés vége ----------------------------------------------------------------

// elfoglalt terület kijelzése -------------------------------------------------
function fileSpaceStats(main_quota_div, space_quota, space_used, notAlert)
{
  if(!$('leftcolloggedin')) return;
	var oXML = new FCKXml();  
	oXML.LoadUrl('?r=ajax.filespacestats', function(fckXml)
	{			  	      	  
	  SESSIONID = fckXml.SelectSingleNode('doc/filespacestats/session').firstChild.nodeValue;	     
    var err = fckXml.SelectSingleNode('doc/filespacestats/error').firstChild.nodeValue;    
    if(err != '0')
    {
       if(err == 'notloggedin')
		   {
		       loginAfterTimeout();			
		   }          
    }      
    else
    {
       var main_div = $(main_quota_div);            
       var quota_div = $(space_quota);
       quota_div.innerHTML = '';  
       var quota = HumanReadable(fckXml.SelectSingleNode('doc/filespacestats/quota').firstChild.nodeValue);
       var used = HumanReadable(fckXml.SelectSingleNode('doc/filespacestats/used').firstChild.nodeValue);
       
       QUOTA_USED = fckXml.SelectSingleNode('doc/filespacestats/used').firstChild.nodeValue;
       
       var quota_ = fckXml.SelectSingleNode('doc/filespacestats/quota').firstChild.nodeValue;
       var used_ = fckXml.SelectSingleNode('doc/filespacestats/used').firstChild.nodeValue;     
       var rate = parseFloat(used_)/parseFloat(quota_);
       var used_width = 300*rate;                                       
       
       var used_span_txt = document.createTextNode(used);
       var quota_div_txt = document.createTextNode(quota);                   
       
       var used_div = document.createElement('div');
       used_div.id = space_used;
       used_div.style.width = used_width + 'px';
       
       var used_span = document.createElement('span');
       used_span.className = 'space_used_blocked_span';       
       used_span.style.visibility = 'hidden';
       
       used_span.appendChild(used_span_txt);                
       main_div.appendChild(used_span);
       clientWidth = used_span.clientWidth;
       main_div.removeChild(used_span);       
       var dif = used_width - clientWidth;
       if(dif > 0)
       {
          paddingLeft = Math.floor(dif/2);
          used_span.style.marginLeft = paddingLeft + 'px';
       }                     
              
       //kijelzés összeállítása
       if(!$('space_quota_div_txt'))
       {
          var divtext = document.createElement('div');
          divtext.id = 'space_quota_div_txt';
          divtext.appendChild(quota_div_txt);
          main_div.appendChild(divtext);
       }   
              
       quota_div.appendChild(used_div);               
                                             
       if((clientWidth + 4) <= used_width)
       {                    
          used_div.appendChild(used_span);
          used_span.style.visibility = 'visible';
       }
       else
       {
          quota_div.appendChild(used_span);
          used_span.style.visibility = 'visible';
       } 
       
       //ha nincs feltöltve kép figyelmeztet
       if(QUOTA_USED == '0' && !notAlert)
       {
          if(confirm($lang('filemanager.quotaUsed')))
          {
            //$('uploading_div').style.display = 'block';
			uploaderPopupOpen()
          }
       }             
    }
  })
  //$('timelockbar').contentWindow.checkKeepalive(false)  
  timeLockReload();
}
//elfoglalt terület kijelzése vége ---------------------------------------------

//select all -------------------------------------------------------------------
function selectAllRegist(button, tbody)
{
   $(button).onclick = selectAll;  
}

function selectAll()
{
   var imgs = $(FILELIST_TBODY).getElementsByTagName('img');   
   if(!imgs.length) return;
   IMAGES.clear();
   for(i=0; i<imgs.length; i++)
   {
      if(!findParent(imgs[i], 'td').className.match('clicked'))
      {
         findParent(imgs[i], 'td').className += '_clicked'
      }
      IMAGES.push(imgs[i]);
   }   
}
//select all vége --------------------------------------------------------------

//deselect all -----------------------------------------------------------------
function deselectAllRegist(button, tbody)
{
   $(button).onclick = deselectAll;  
}

function deselectAll()
{
   var td, imgs = $(FILELIST_TBODY).getElementsByTagName('img');
   if(!imgs.length) return;
   IMAGES.clear();
   for(i=0; i<imgs.length; i++)
   {
      td = findParent(imgs[i], 'td');
      if(td.className.match('clicked'))
      {
         td.className = td.className.replace('_clicked','');
      }     
   }   
}
//deselect all vége ------------------------------------------------------------

//delete all selected ----------------------------------------------------------
function deleteAllSelected(button)
{   
   $(button).onclick = deleteSelected;  
}

function deleteSelected()
{
   if(!IMAGES.length) return;
   var images_array = '';
   for(i=0; i<IMAGES.length; i++)
   {
      images_array += 'delfile[]=' + encodeURIComponent(IMAGES[i].getAttribute('title')) + '&';
   }   
   images_array = images_array.substring(0,images_array.length-1);   
   
   if(!confirm($lang('filemanager.massDelete.confirm') + '\n' + '(' + IMAGES.length + ' db)'))
   {
      for(i=0; i<IMAGES.length; i++)
      {
         IMAGES[i].parentNode.parentNode.className = IMAGES[i].parentNode.parentNode.className.replace('_clicked',''); 
      }       
      IMAGES = new Array();
      return;
   }  
	 var oXML = new FCKXml();  
	 oXML.PostUrl('?r=ajax.filefunctions&method=massdel&dir=' + ACTIVE_PATH, images_array, function(fckXml)
	 {			  	      	  
     var err = fckXml.SelectSingleNode('doc/filefunctions/error').firstChild.nodeValue;
     if(err != '0')
     {
       if(err == 'notloggedin')
		   {
		       loginAfterTimeout();			
		   }           
       if(err == 'deleteFailed')
       {
          alert($lang('filemanager.error.deleteFailed'));			
       }
       var failed_files = fckXml.SelectNodes('doc/filefunctions/massdel/file');
       if(failed_files.length)
       {
          var filename, error;
          for(var i=0; i<failed_files.length; i++)
          {
             filename = failed_files[i].getElementsByTagName('name').item(0).firstChild.nodeValue;
             error = failed_files[i].getElementsByTagName('error').item(0).firstChild.nodeValue;
             alert(filename + '\n' + error);
          }
       }		  
     }
     else
     {   
        var td;                       
        for(i=0; i<IMAGES.length; i++)
        {
           td = findParent(IMAGES[i], 'td');
           td.parentNode.removeChild(td);           
        }
        IMAGES = new Array();
     } 
     fileSpaceStats('space_quota_main', 'space_quota_div', 'space_used_div');   
   })           
   $('timelockbar').contentWindow.checkKeepalive(false);
   timeLockReload();
}
//delete all selected vége ----------------------------------------------------- 


//addNewDir a terméklista alján ------------------------------------------------
function setAddNewDir()
{
   /*
   $('dirlist_newdir').onclick = function(){
      ACTIVE_PATH = '/';
      ACTIVE_PARENT = $('leftcolloggedin');
      addNewDir();
   }
   */
}
//addNewDir a terméklista alján vége -------------------------------------------

function  loginAfterTimeout()
{   
   showLogin();
}

function showLogin()
{
   if($('twoMinWarningParent'))
      $('twoMinWarningParent').parentNode.removeChild($('twoMinWarningParent'));
   var width = (ie)? 269 : 279;
   var div = Builder.node('div',{'id':'loginAfterTimeout_div','style':'width:' + width + 'px;height:178px;'});
   if(!$('indicator_lightbox'))         
   messageLightbox.show([div,width, 178]);
   var width = (ie)? 249 : 259;
   var iframe= Builder.node('iframe',{'id':'loginAfterTimeout_iframe','src':'?r=login','style':'width:'+ width + 'px;height:164px;border:10px solid #fff;','frameborder':'0','scrolling':'no'});     
   div.style.display = 'block'; 
   div.innerHTML = ''   
   div.appendChild(iframe);
   div.parentNode.style.background = 'transparent';
   div.parentNode.style.borderColor = 'transparent';     
}

function setLogin()
{      
   if(!AJAXLOGIN) return;   
   $('loginForm').onsubmit = function(){  	    
	    var oXML = new FCKXml();
	    oXML.PostUrl('?r=ajax.login',formToQuerystring($('loginForm')),function(fckXml)
	    {		  
	       if(fckXml.SelectSingleNode('/doc/login').firstChild)
	       {
		        var err = fckXml.SelectSingleNode('/doc/login/error');		              	       
		        if(err)
		        {
			         alert($lang('login.error'))		     	                 
		        }
		        else
		        {
		           parent.timeLockReload();   
				   parent.messageLightbox.hide();
                   //parent.document.getElementById("loginAfterTimeout_div").style.display = 'none';	
                   //parent.document.getElementById("indicator_overlay").style.display = 'none'               	                	          
				   //parent.document.getElementById("indicator_lighbox").style.display = 'none'				   
                }
		     }			 
	    })
		return false;
   }  
}

function show2minwarnConfirm()
{	   
   var height = (ie)? '144' : '154'; 
   messageLightbox.show([build2MinWarningBox(), 300, height]);	
}

function build2MinWarningBox()
{	    
	//var height = (ie)? 'height:144px' : 'min-height:10px';    
	var parentdiv = Builder.node('div',{'id':'twoMinWarningParent','style':'width:300px;border:10px solid #f7f7f7 !important'});
	var boxdiv = Builder.node('div',{'className':'box confirm', 'id':'twoMinWarning'});
	var h3 = Builder.node('h3');
	var b = Builder.node('b',{'className':'noicon'});	
	var boxContent = Builder.node('div',{'className':'boxContent'});
	var textdiv = Builder.node('div',{'className':'twoMinWarningtext'}, $lang('timelock.twominwarning'));	
	var boxContentOverflow = Builder.node('div',{'className':'boxContentOverflow'});
    var boxFooter = Builder.node('div',{'className':'boxFooter'});  
    var boxBottomRight = Builder.node('div',{'className':'boxBottomCenter'});
    
	var buttonDiv = Builder.node('div',{'className':'button'});
    var okButton = Builder.node('button',{'id':'twoMinWarningOk'},$lang('timelock.twominwarningOK'));	

    buttonDiv.appendChild(okButton);

    h3.appendChild(b);
	boxFooter.appendChild(boxBottomRight);
	boxContentOverflow.appendChild(textdiv);
	boxBottomRight.appendChild(buttonDiv);	
	boxContent.appendChild(boxContentOverflow);
	boxdiv.appendChild(h3);
	boxdiv.appendChild(boxContent);
	boxdiv.appendChild(boxFooter);
	parentdiv.appendChild(boxdiv);	  

	okButton.onclick = function(){
		timeLockReload();
		messageLightbox.hide();
	}		
    return parentdiv;	
}


function dirConfirm(type)
{	   
   var height = (ie)? '144' : '154'; 
   var div = $('newdirDiv').parentNode.removeChild($('newdirDiv'));
   div.style.display = 'block';
   div.style.width = '300px';
   messageLightbox.show([div, 300, height]);
   if(type == 'new')
   {
	   $('dirConfirmHeader').innerHTML = $lang('filemanager.newDir');
	   setNewdirButtons();
   }
   else
   {
	   $('dirConfirmHeader').innerHTML = ACTIVE_ITEM.innerHTML + ' ' + $lang('filemanager.renameDir.dirnamePrefix');
	   setRenamedirButtons();
   }
}

function setNewdirButtons()
{
    $('newdirOK').onclick = newDir;    

	$('newdirCancel').onclick = dirCancel;	
}

function setRenamedirButtons()
{
    $('newdirOK').onclick = renameDirTo;    

	$('newdirCancel').onclick = dirCancel;	
}

function dirCancel()
{
	$('newdirTextField').value = '';
	var div = $('newdirDiv').parentNode.removeChild($('newdirDiv'));
	div.style.display = 'none';
	document.body.appendChild(div);
	messageLightbox.hide();
}

function eventStop(event) 
{
    if (event.preventDefault) 
    {
      event.preventDefault();
      event.stopPropagation();
    } 
    else 
    {
      event.returnValue = false;
      event.cancelBubble = true;
    }  
}

function externallinks()
{
	var ls=document.getElementsByTagName('a');
	for(var i=0;i<ls.length;i++){
   	if(ls[i].getAttribute('rel')=='external')
	  {
		   ls[i].className+=ls[i].className?' extlink':'extlink';
		   ls[i].onclick=function(){window.open(this.href);return false}
	  }
  }
}  

var onLoadFuncts="";
onLoadFuncts+="externallinks(); ";

function timeLockReload()
{
   $('timelockbar').setAttribute('src','?r=timelock');
}



window.onbeforeunload = function()
{
    if($('photoprod_div_title_stepnum') && $('warning_lightbox').style.display != 'block')
	{
	  if($('photoprod_div_title_stepnum').innerHTML.match('2') || $('photoprod_div_title_stepnum').innerHTML.match('3'))				
      {						
		 return $lang('filemanager.photoprod.breakOrder');
      }    			  
    }
}

function setUploadMode()
{
	UPLOAD_MODE = false;
}

function childFileLister(active_path)
{	
	new fileLister(active_path, FILELIST_TABLE, FILELIST_TBODY, FILELIST_URL);
}

function childDirLister(active_path, active_lister)
{	
	act_lister = (active_lister == 'root_gallery')? 'leftcolleggedin' : active_lister;
	if(active_lister == 'root_gallery')
	{	   
	   new loadDirList(act_lister , 'leftcolloggedin', '?r=ajax.directorytree', active_path);
    }
	else
	{			
		new loadDirList(act_lister , 'leftcolloggedin', '?r=ajax.directorytree', active_path, true);
	}
}

window.onload=function(){
	 var oXML = new FCKXml();
	 oXML.LoadUrl('/language.xml',function(fckXml){
      language=fckXml;      
      if(onLoadFuncts!="")
      {
         setTimeout(onLoadFuncts,1);
         //onLoadFuncts="";
      }
   })
}