diff -r b73e6caf0031 -r f3521a11d878 See09/WRTKit/UI/Ajax.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/See09/WRTKit/UI/Ajax.js Thu Oct 22 15:52:58 2009 +0100 @@ -0,0 +1,103 @@ +/* +� Copyright 2008 Nokia Corporation. All rights reserved. + +IMPORTANT: The Nokia software ("WRTKit and Example Widget files") is supplied to you by Nokia +Corporation (�Nokia�) in consideration of your agreement to the following terms. Your use, installation +and/or redistribution of the WRTKit and Example Widget files constitutes acceptance of these terms. If +you do not agree with these terms, please do not use, install, or redistribute the WRTKit and Example +Widget files. + +In consideration of your agreement to abide by the following terms, and subject to these terms, Nokia +grants you a personal, non-exclusive license, under Nokia�s copyrights in the WRTKit and Example +Widget files, to use, reproduce, and redistribute the WRTKit and Example files, in text form (for HTML, +CSS, or JavaScript files) or binary form (for associated images), for the sole purpose of creating S60 +Widgets. + +If you redistribute the WRTKit and Example files, you must retain this entire notice in all such +redistributions of the WRTKit and Example files. + +You may not use the name, trademarks, service marks or logos of Nokia to endorse or promote products +that include the WRTKit and Example files without the prior written explicit agreement with Nokia. +Except as expressly stated in this notice, no other rights or licenses, express or implied, are granted by +Nokia herein, including but not limited to any patent rights that may be infringed by your products that +incorporate the WRTKit and Example files or by other works in which the WRTKit and Example files +may be incorporated. + +The WRTKit and Example files are provided on an "AS IS" basis. NOKIA MAKES NO +WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED +WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE, REGARDING THE EXAMPLES OR ITS USE AND OPERATION +ALONE OR IN COMBINATION WITH YOUR PRODUCTS. + +IN NO EVENT SHALL NOKIA BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, AND/OR +DISTRIBUTION OF THE EXAMPLES, HOWEVER CAUSED AND WHETHER UNDER THEORY +OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, +EVEN IF NOKIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +/////////////////////////////////////////////////////////////////////////////// +// Ajax utility calss to create XmlHttpRequest object +function Ajax() +{ + // xmlHttpRequest object + var request = null; + + // branch for native XMLHttpRequest object + if(window.XMLHttpRequest && !(window.ActiveXObject)) { + try + { + request = new XMLHttpRequest(); + try + { + // attach the Bypass code, if the browser is firefox + if(netscape.security.PrivilegeManager.enablePrivilege) + { + // duplicate the function + request._open = request.open; + + // redefine the function definition + request.open = function(method, url, flag) + { + try + { + // Enable Universal Browser Read + netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"); + + // call the native XmlHttpRequest.open method + this._open(method, url, flag); + }catch(e) + { + // call the native XmlHttpRequest.open method + this._open(method, url, flag); + } + } + } + } + catch(e) + { + // eatup all exceptions + } + } + catch(e) { + request = null; + } + // branch for IE/Windows ActiveX version + } else if(window.ActiveXObject) { + try { + request = new ActiveXObject("Msxml2.XMLHTTP"); + } catch(e) { + try { + request = new ActiveXObject("Microsoft.XMLHTTP"); + } catch(e) { + alert('Failed to create XmlHttprequest'); + return null; + } + } + } + + return (request); +}