

var Ajax_cms = new Object();
Ajax_cms.isUpdating = true;

//mentéshez ajax kérés
Ajax_cms.Request = function(method, url, query, callback, position)
{
  this.position = position;
	this.isUpdating = true;
	this.callbackMethod = callback;
	this.request = (window.XMLHttpRequest)? new XMLHttpRequest(): new ActiveXObject("MSXML2.XMLHTTP"); 
	
	this.request.onreadystatechange = function() { Ajax_cms.checkReadyState(); };

	if(method.toLowerCase() == 'get') url = url+"?"+query;
	this.request.open(method, url, true);
	this.request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  this.request.setRequestHeader("Connection", "close");	
	this.request.send(query);
	
}
	
Ajax_cms.checkReadyState = function(_id)
{

	switch(this.request.readyState)
	{
		case 1: document.getElementById(this.position+'_error').style.display='block';document.getElementById(this.position+'_error').innerHTML = loadinganimation ;  break;
		
    case 2: break;
		case 3: break;
		
		case 4:
		
			this.isUpdating = false;
			document.getElementById(this.position+'_error').style.display='none';
      result = this.request.responseText;
      
      if(result!='error'){
      
        if(result!='')
        {
        
          document.getElementById(this.position+'_error').innerHTML =''; 
          
          document.getElementById(this.position+'_div').innerHTML = result;
          //Ha van textarea az ajaxos cuccban, akkor az ráloadolja.
            tinyMCE.init({
            	  mode : "textareas",
            	  theme : "advanced",
            	  editor_selector : "mceSimple",
            
                theme_advanced_toolbar_location : "top",
                language: "en",
            		plugins : "emotions",
            		content_css : urlroot+"css/style_tinymce.css",
            		theme_advanced_buttons1 : "bold,italic,underline,strikethrough,emotions",
            		theme_advanced_buttons2 : "",
            		theme_advanced_buttons3 : "",
            		theme_advanced_toolbar_location : "top",
            		theme_advanced_toolbar_align : "left",				
            		theme_advanced_resizing : false,
            		theme_advanced_resize_horizontal : false,
            		theme_advanced_path : false,
            		theme_advanced_path_location : "bottom",		
            		extended_valid_elements : "a[name|href|target|title|onclick],img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name|obj|param|embed]",
            		paste_use_dialog : false,
            		paste_auto_cleanup_on_paste : true,
            		paste_convert_headers_to_strong : false,
            		paste_strip_class_attributes : "all",
            		paste_remove_spans : true,
            		paste_remove_styles : true,
            		accessibility_warnings : false,
            		relative_urls: false,
            		convert_urls: false
          
                	
            });          
         
        }else{
          document.getElementById(this.position+'_submit').disabled=false;       
        }
        
      }else{
        document.getElementById(this.position+'_submit').disabled=false;
        document.getElementById(this.position+'_error').innerHTML ='Mysql Error';
      }  
      //this.request.responseXML.documentElement;
		//	this.callbackMethod('<script type=text/javascript >function test{ alert("sadsad"); }</script>');
			
		break;
		
	}
	
}


//Hiba kereséshez az ajax kérés
Ajax_cms.RequestError = function(method, url, query, callback, position)
{
  var eze=position;
  this.position = position;
	this.isUpdating = true;
	this.callbackMethod = callback;
	this.request = (window.XMLHttpRequest)? new XMLHttpRequest(): new ActiveXObject("MSXML2.XMLHTTP"); 
	this.request.onreadystatechange = function() {
  this.position = eze;	
	if(Ajax_cms.checkReadyStateError())
	{
    Post.Send(document.getElementById(this.position));
  }
  };
	if(method.toLowerCase() == 'get') url = url+"?"+query;
	this.request.open(method, url, true);
	this.request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  this.request.setRequestHeader("Connection", "close");	
	this.request.send(query);
}
	
Ajax_cms.checkReadyStateError = function(_id)
{
	switch(this.request.readyState)
	{
		case 1: 	
    document.getElementById(this.position+'_error').innerHTML = loadinganimation; 
    
    break;
		case 2: break;
		case 3: break;
		case 4:
			this.isUpdating = false;
			result = this.request.responseText;
      if(result=='')
      {
        return true;
      }else{
          document.getElementById(this.position+'_submit').disabled=false;       
          document.getElementById(this.position+'_error').innerHTML = result; 
          if(document.getElementById(this.position+'_errors'))
          {
            var tmperror = document.getElementById(this.position+'_errors').value;
            var tmperrorArray = new Array(); tmperrorArray = tmperror.split(',');
            for(i=0;i<tmperrorArray.length;i++){
             tmperrorItem = tmperrorArray[i].split('#');
             //document.getElementById(tmperrorItem[0]).style.background='#ff0000';
             //document.getElementById(tmperrorItem[0]).style.color='#ffffff';
              if(tmperrorItem[0]!='')
              {
               document.getElementById(tmperrorItem[0]+'_error').innerHTML=tmperrorItem[1];
              }
            }  
          }else{
            alert('Hiba');
          }          
      }
	}
}
