if (typeof(RICHFX_INTERFACE_LOADER)=='undefined') { RICHFX_INTERFACE_LOADER = 1; (function() { var scriptName = "richfx"; // set this to filename of this script var fullScript = "rfxloader"; // to full script, relative to scriptName parent dir var regex = /\/richfx\??/; var removeEvent = function (obj,evType, callback) { if (obj.removeEventListener) obj.removeEventListener(evType, callback, false); else if (obj.detachEvent) obj.detachEvent("on" + evType, callback); } var addEvent = function(obj,evType,callback) { if (obj.addEventListener) obj.addEventListener(evType, callback, false); else if (obj.attachEvent) obj.attachEvent("on"+evType, callback ); return true; } var obj = window; if ( navigator.userAgent.indexOf('Opera') != -1 ) // fix opera bug obj = document; var postload = function(){ var js; var handler = function() { removeEvent(obj, 'load', postload); removeEvent(js, 'load', handler); removeEvent(js, 'readystatechange', handler); } js = document.createElement('script'); js.setAttribute('language', 'javascript'); js.setAttribute('type', 'text/javascript'); addEvent( js, 'load', handler ); // IE only script load checking addEvent( js, 'readystatechange', handler ); var src; var tags = document.getElementsByTagName("SCRIPT"); var pos; for ( var i = 0; i < tags.length; i++ ) { var tmp = tags[i].src; var pos_end = tmp.indexOf('?'); if (pos_end==-1) pos_end = tmp.length-1; pos = tmp.substr(0,pos_end).lastIndexOf('/'); tmp = tmp.substr(pos, pos_end); if (regex.test(tmp)) { src = tags[i].src; break; } } // post: pos is position of /richfx src = src.substr(0,pos+1)+fullScript+src.substr(pos+scriptName.length+1); if (/https?:\/\//i.test(src)) { // fixed urls only var staging = /rfx_staging/i.test(document.location.search); var dontcache = staging || /rfx_dontcache/i.test(document.location.search); if (dontcache) { src = src.replace(".edgesuite.net",""); src = src.replace(/^https:\/\/secure-/i, "https://"); // https://secure-ACCOUNT. } if (staging) { var pos = src.indexOf("."); src = src.substr(0,pos)+".preview"+src.substr(pos); } } js.setAttribute('src', src); var html_doc = document.getElementsByTagName('head').item(0); html_doc.appendChild(js); } addEvent(obj, 'load', postload); })(); }