
/**
*		Main CMS JavaScrips
*/
  
  /**
  * collection of inplace editor elements
  */
  var inplaceEditorElements = new Hash();
  
  /**
  * function check browser
  */
  function isIE(){
  	var browserName=navigator.appName; 
		if (browserName=="Microsoft Internet Explorer") {
 			return true;	
 		}	else {
    	return false;	
		}
  }
  
  /**
  * if internet explorer reimplement function getElementsByName
  */
  if(isIE()){
		document.getElementsByName = function(name, tag){
	    if(!tag){
	        tag = '*';
	    }
	    var elems = document.getElementsByTagName(tag);
	    var res = []
	    for(var i=0;i<elems.length;i++){
	        att = elems[i].getAttribute('name');
	        if(att == name) {
	            res.push(elems[i]);
	        }
	    }
	    return res;
		}
	}
  
	function toggleForm(formId,linkId){
    document.getElementById(formId).toggle();
    document.getElementById(linkId).toggle();
  }

  function Loader(){
    $("cms-loader").toggle();
  }
 
 	function toggleBlind(){
    if(document.getElementById('cms-items').style.display == 'none' ){
      $('cms-items').show();
      new Effect.Scale('cms-items', 13000, {scaleY: false, scaleContent: false, afterFinish: function() {$('cms').setStyle({backgroundImage: 'url(/img/cms/cms-back.gif)'}); }} );
    } else {
      new Effect.Scale('cms-items', 0.00013, {scaleY: false, scaleContent: false, afterFinish: function() {$('cms-items').hide(); $('cms-items').setStyle({'width': '1px'}); $('cms').setStyle({backgroundImage: 'url(/img/cms/cms.gif)'}); } } );
    }
  }
 
 	function RiposteSWF(options, swfId) {
		window.swfId = swfId;
		if(typeof window.uploadSWF == 'undefined'){
		 	window.uploadSWF = new Array();
		}
		if(typeof window.uploadSWF[swfId] == 'undefined') {
				window.uploadSWF[swfId] = new SWFUpload(options);
		} else {
			window.uploadSWF[swfId].selectFiles();
		}
	}
       
  function loadSWFJSFiles() {
		if(typeof swfuploadJS == 'undefined') loadjsfile('/js/swfupload/swfupload.js');
 		if(typeof swfuploadQueueJS == 'undefined') loadjsfile('/js/swfupload/swfupload.queue.js');
  	if(typeof fileprogressJS == 'undefined') loadjsfile('/js/swfupload/fileprogress.js');
  	if(typeof handlersJS == 'undefined') loadjsfile('/js/swfupload/handlers.js');
	}

	function loadjsfile(filename){
  	var fileref=document.createElement('script')
  	fileref.setAttribute("type","text/javascript")
  	fileref.setAttribute("src", filename)
  	if (typeof fileref!="undefined")
  		document.getElementsByTagName("head")[0].appendChild(fileref)
 	}
  
  function openLightWindow() {
  	myLightWindow.activateWindow({width:400, 
  																height:400,
  																type:'page',
  																title: 'Chose project', 
  																href: '/lightwindow/project' });
  	
  	setTimeout('loadAjaxForm()',1000); 															
  }
  
  function loadAjaxForm(){
  	Event.observe('form-chngeproject','submit',function(event) { new Ajax.Updater('main-project','/guide/mainproject/', {asynchronous:true, evalScripts:true, parameters:Form.serialize('form-chngeproject'), requestHeaders:['X-Update', 'main-project']}) }, false);
  }
  
  function enterEditMode(){
  	$A(document.getElementsByName("cms-item")).each(function(i) { i.style.visibility='visible'; });
 		inplaceEditorElements.each(function(pair) { pair.value.registerListeners(); });
  	if ($("enterEditMode")) $("enterEditMode").style.display="none";
  	if ($("leaveEditMode")) $("leaveEditMode").style.display="block";
  	setCookie('CakeCookie[editmode]',1,'/');
  }
  
  function leaveEditMode(){
  	$A(document.getElementsByName("cms-item")).each(function(i) { i.style.visibility='hidden'; });
  	inplaceEditorElements.each(function(pair) { pair.value.destroy(); });
  	if ($("enterEditMode")) $("enterEditMode").style.display="block";
  	if ($("leaveEditMode")) $("leaveEditMode").style.display="none";
  	setCookie('CakeCookie[editmode]',0,'/');
  }
  
  function checkEditMode(){
  	if(getCookie('CakeCookie[editmode]') == 1) {
  		$A(document.getElementsByName("cms-item")).each(function(i) { i.style.visibility='visible'; });
  		if ($("enterEditMode")) $("enterEditMode").style.display="none";
  		if ($("leaveEditMode")) $("leaveEditMode").style.display="block";
  	} else {
  		$A(document.getElementsByName("cms-item")).each(function(i) { i.style.visibility='hidden'; });
  		if ($("enterEditMode")) $("enterEditMode").style.display="block";
  		if ($("leaveEditMode")) $("leaveEditMode").style.display="none";
  	}
  }
  
  function toggleActiveIcon(elementId,action) {
  	if(action) {
  		$('lock'+elementId).style.display = 'inline';
  		$('unlock'+elementId).style.display = 'none';
  	} else {
  		$('lock'+elementId).style.display = 'none';
  		$('unlock'+elementId).style.display = 'inline';
  	}
  }
    
  function setCookie(name, value, path, expires, domain, secure ) 
	{
		// set time, it's in milliseconds
		var today = new Date();
		today.setTime( today.getTime() );
		
		/*
		if the expires variable is set, make the correct 
		expires time, the current script below will set 
		it for x number of days, to make it for hours, 
		delete * 24, for minutes, delete * 60 * 24
		*/
		if (expires){
			expires = expires * 1000 * 60 * 60 * 24;
		}
		var expires_date = new Date( today.getTime() + (expires) );
		
		document.cookie = name + "=" +escape( value ) +
		( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + 
		( ( path ) ? ";path=" + path : "" ) + 
		( ( domain ) ? ";domain=" + domain : "" ) +
		( ( secure ) ? ";secure" : "" );
	}
	
	 function getCookie(name) { 
		if (document.cookie!="") { 
			var toCookie=document.cookie.split("; "); 
			for (i=0; i<toCookie.length; i++) {
 				var nameCookie=toCookie[i].split("=")[0]; 
 				var value=toCookie[i].split("=")[1]; 
 				if (nameCookie==name) return unescape(value) 
			}
		}
	}
  
	function KeyCheck(e) {
   var key = (window.event) ? event.keyCode : e.keyCode;
   if(key == 120){
   	 document.location.href="/users/login";
   }
  }
    
   Event.observe(window, 'load', function() {  
   	 setTimeout('checkEditMode()',500);   
     if(isIE()) {
     	 document.onkeyup = KeyCheck;       
     } else {
	     Event.observe(document, 'keypress', function(event){    
	              var key = event.keyCode ? event.keyCode : event.charCode;			
								if(key == 120) document.location.href="/users/login"; 
	     });  
     }
    });  
    
    
