// flexible ajax library // author: clemens krack - ckrack@gmail.com - http://tripdown.de var flxajax_request_type = "GET"; function flxajax_init_object() { var A; try { A=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { A=new ActiveXObject("Microsoft.XMLHTTP"); } catch (oc) { A=null; } } if(!A && typeof XMLHttpRequest != "undefined") A = new XMLHttpRequest(); return A; } function flxajax_do_call(func_name, args) { var i, x, n; var uri; var post_data; uri = "/scripts/ajax.php"; if (flxajax_request_type == "GET") { if (uri.indexOf("?") == -1) uri = uri + "?rs=" + escape(func_name); else uri = uri + "&rs=" + escape(func_name); for (i = 0; i < args.length-1; i++) uri = uri + "&rsargs[]=" + escape(args[i]); uri = uri + "&rsrnd=" + new Date().getTime(); post_data = null; } else { post_data = "rs=" + escape(func_name); for (i = 0; i < args.length-1; i++) post_data = post_data + "&rsargs[]=" + escape(args[i]); } x = flxajax_init_object(); x.open(flxajax_request_type, uri, true); if (flxajax_request_type == "POST") { x.setRequestHeader("Method", "POST " + uri + " HTTP/1.1"); x.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); x.setRequestHeader("Content-length",post_data.length); x.setRequestHeader("Connection","close"); } x.onreadystatechange = function() { if (x.readyState != 4) return; var status; var data; status = x.responseText.charAt(0); data = x.responseText.substring(2); if (status == "-") alert("Error: " + data); else args[args.length-1](data); } x.send(post_data); delete x; } // wrapper for ValidarUsuario function x_ValidarUsuario() { flxajax_do_call("ValidarUsuario", x_ValidarUsuario.arguments); } // wrapper for CargarComboProductos function x_CargarComboProductos() { flxajax_do_call("CargarComboProductos", x_CargarComboProductos.arguments); } // wrapper for CargarProvincia function x_CargarProvincia() { flxajax_do_call("CargarProvincia", x_CargarProvincia.arguments); } // wrapper for CargarLocalidad function x_CargarLocalidad() { flxajax_do_call("CargarLocalidad", x_CargarLocalidad.arguments); } // wrapper for CargarSubcategoria function x_CargarSubcategoria() { flxajax_do_call("CargarSubcategoria", x_CargarSubcategoria.arguments); }