diff options
Diffstat (limited to 'phonegap/www/jslib/utils.js')
-rw-r--r-- | phonegap/www/jslib/utils.js | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/phonegap/www/jslib/utils.js b/phonegap/www/jslib/utils.js new file mode 100644 index 000000000..ffc6d44bd --- /dev/null +++ b/phonegap/www/jslib/utils.js @@ -0,0 +1,50 @@ +/* + * utils.js + * Useful javascript functions, shared between mySociety sites. + * + * Copyright (c) 2006 UK Citizens Online Democracy. All rights reserved. + * Email: francis@mysociety.org. WWW: http://www.mysociety.org + * + * $Id: utils.js,v 1.3 2006-10-10 15:53:05 matthew Exp $ + * + */ + +mySociety = { + /* Returns an XMLHTTP object, if available. + * Returns false if XMLHTTP not supported. */ + getXMLHTTP : function() { + var xmlhttp=false; + /*@cc_on @*/ + /*@if (@_jscript_version >= 5) + // JScript gives us Conditional compilation, we can cope with old IE versions. + // and security blocked creation of the objects. + try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } + catch (e) { + try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } + catch (E) { xmlhttp = false; } + } + @end @*/ + if (!xmlhttp && typeof XMLHttpRequest!='undefined') { + try { xmlhttp = new XMLHttpRequest(); } + catch (e) { xmlhttp=false; } + } + if (!xmlhttp && window.createRequest) { + try { xmlhttp = window.createRequest(); } + catch (e) { xmlhttp=false; } + } + return xmlhttp; + }, + + asyncRequest : function(url, func) { + var xmlhttp = mySociety.getXMLHTTP(); + if (!xmlhttp) + return false; + xmlhttp.open('GET', url, true); + xmlhttp.onreadystatechange = function() { + func(xmlhttp); + } + xmlhttp.send(null); + return xmlhttp; + } +} + |