function ajaxgeturl (url,item){
    var http_request = false;
//alert(url)
        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
                // See note below about this line
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            document.getElementById(item).innerHTML= '<p>Giving up :( Cannot create an XMLHTTP instance)</p>';
            alert('Impossivel criar motor de ajax, necessita de ter o javascript activado ou permitir a execução de controlos ActiveXneste computador');
            return false;
        }
        http_request.onreadystatechange = function() { ajaxloadurl(http_request, item); };
        http_request.open('GET', url, true);
        http_request.send(null);
}



function ajaxloadurl(http_request, item){
    //document.getElementById(item).innerHTML='';

    if (http_request.readyState == 4) {
        if (http_request.status == 200) {
            //alert(http_request.responseText);
		 document.getElementById(item).innerHTML=http_request.responseText 
            	parsejava (http_request.responseText) ;
        } else {
            document.getElementById(item).innerHTML='<p>There was a problem with the request.</p>';
        }
    }
}

function ajaxeditor (url,item){
    var http_request = false;

        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
                // See note below about this line
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            document.getElementById(item).innerHTML= '<p>Giving up :( Cannot create an XMLHTTP instance</p>';
            return false;
        }
        http_request.onreadystatechange = function() { ajaxeditorcallback(http_request, item); };
        http_request.open('GET', url, true);
        http_request.send(null);

}



function ajaxeditorcallback(http_request, item){
    //document.getElementById(item).innerHTML='';

    if (http_request.readyState == 4) {
        if (http_request.status == 200) {
            //alert(http_request.responseText);
            document.getElementById(item).innerHTML= http_request.responseText ;
            tinyMCE.execCommand('mceAddControl', true, 'page_editor_editor');
            //jseditor();
        } else {
            document.getElementById(item).innerHTML='<p>There was a problem with the request.</p>';
        }
    }
}


   function ajaxposturl(url, parameters, item) {
      http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) {
            http_request.overrideMimeType('text/xml');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      
      http_request.onreadystatechange = function() { ajaxloadurl(http_request, item); };
      http_request.open('POST', url, true);
      http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      http_request.send(parameters);
     
      
   }
   
   
   
   
   function parsejava(content) {
         var search = content;
         var script ;
         
         var is_singleq = 0; var singleq = "'";
         var is_doubleq = 0; var doubleq = '"';
         var is_escaped = 0; var escap = "\\";
         var layer = 0;
               
         while( script = search.match(/(<script[^>]+javascript[^>]+>\s*(<!--)?)/)) {
            search = search.substr(search.indexOf(RegExp.$1) + RegExp.$1.length);
            if (!(endscript = search.match(/((-->)?\s*<\/script>)/))) break;
            block = search.substr(0, search.indexOf(RegExp.$1));
            search = search.substring(block.length + RegExp.$1.length);
            
            while(func = block.match(/(function(.+?)\((.*?)\)\s*\{)/)) {
               eval(block.substr(0,block.indexOf(RegExp.$1)));
               // for evaluating non functions
               
               block = block.substr(block.indexOf(RegExp.$1) + RegExp.$1.length);
               name = RegExp.$2;
               param = RegExp.$3;
               
               is_singleq = 0;
               is_doubleq = 0;
               is_escaped = 0;
               layer = 0;
               
               
               for(i=0;i<block.length;i++) {
                  c = block.substr(i,1);
                  
                  if ((is_singleq || is_doubleq) && is_escaped) {
                     is_escaped = 0;
                  } else if (!is_doubleq && (c==singleq)) {
                     is_singleq = !is_singleq;
                  } else if (!is_singleq && (c==doubleq)) {
                     is_doubleq = !is_doubleq;
                  } else if ((is_singleq || is_doubleq) && (c==escap)) {
                     is_escaped = 1;
                  } else if ( c=="{") {
                     layer++;
                  } else if ( c=="}") {
                     if ( layer==0 ) {
                        break;
                     }
                     layer--;
                  }
               }
               
               code = block.substr(0,i-1);
               block = block.substr(i +1);
               
               code = code.replace(/\n/g, '\\n');
               code = code.replace(/\r/g, '\\r');
               code = code.replace(/'/g,"\\'");
               
               eval(name + " = new Function('"+param+"','"+code+"');");
            }
            eval(block); // for evaluating non functions
         }
        // document.getElementById(div).innerHTML=content;
      } 
