// ultraflash.js embeds flash inside a document and supports some additional functions // ultralibrary.js and flashplacement.js are DEPRECATED DEPRECATED DEPRECATED DEPRICATED do not use /* USAGE: <script type="text/javascript"> var ad_height=yyy; var ad_width=xxx; var Flash_File_Path='pathtoswf.swf'; var Flash_8_File_Path='pathtov8swf.swf';  // OPTIONAL var HTML_Failover_Path='pathtohtml.html'; var SLOW_Failover_Path='pathtohtml.html'; // OPTIONAL </script><script type="text/javascript" src="http://cache.ultramercial.com/s/ultraflash.js"></script> */ // from javascriptpatches.js var undefined; function isUndefined(propy) { return (typeof propy == 'undefined'); }if (isUndefined(Array.prototype.pop) == true) Array.prototype.pop = function() { var lastItem = undefined; if ( this.length > 0 ) { lastItem = this[this.length - 1]; this.length--; }return lastItem; }; if (isUndefined(Array.prototype.push) == true) Array.prototype.push = function() { var currentLength = this.length; for (var i = 0; i < arguments.length; i++)  this[currentLength + i] = arguments[i]; return this.length; }; function qe(x) { // some js implementations do not support string.replace // eg return x.replace("/'/", "\\'"); fails // so do it the long way var y=""; for (var i=0,j=x.length;i<j;i++) { if (x.charAt(i)=="'") y+="\\'"; else y+=x; }return y; }function qq(x) { return "'"+qe(x)+"'"; }function getDomain() { // returns the page's domain myregexp = new RegExp("(http|https)://([^/]*)/"); var m=myregexp.exec(location.href); if (m==null) return null; var first=m[2].indexOf('.'); if (first==m[2].lastIndexOf('.')) return m[2]; else return m[2].substring(first+1,m[2].length); }function getPagename() { // returns the page's raw name sans domain, path & etc. var parsed=location.href.split('?'); parsed=parsed[0].split('/'); return parsed.pop(); }function getParameter(parameterName) { // returns the named parameter var isat=location.href.indexOf('?'); if (isat>0) { var a=location.href.substr(isat+1).split('&'); for (var i=0,j=a.length;i<j;i++) { var elements=a[i].split('='); if (elements[0]==escape(parameterName)) return unescape(elements[1]); }}return false; }function currentTime() { // current time in microseconds var timenow=new Date(); return timenow.getTime(); }function goURL(aURL) { // redirects to a URL without storing it in the browser's history window.location.replace(aURL); }function goURLsoftly(aURL) { // redirects with history (back button) location.href=aURL; }function getCookie(name) { // retrieves a cookie value given its name or returns 'null' var nameEQ=name+"="; var ca = document.cookie.split(';'); for (var i=0,j=ca.length;i<j;i++) { var c = ca[i]; while (c.charAt(0)==' ') c=c.substring(1,c.length); if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); }return null; }function setCookie(cookieName, cookieValue, expiresinminutes) { // supply expiresinminutes or get a sessioncookie var cv=new Array(); cv.push(cookieName+"="+escape(cookieValue)); if (expiresinminutes) { if (expiresinminutes!=parseInt(expiresinminutes)) expiresinminutes=0; var rightnow=new Date(); var cookieExpires=new Date(); cookieExpires.setTime(rightnow.getTime()+60000*parseInt(expiresinminutes)); cv.push("expires=" + cookieExpires.toGMTString()); }cv.push("path=/"); cv.push("domain=."+getDomain()); document.cookie=cv.join(';'); }function clearCookie(cookieName) { setCookie(cookieName,""); }function inArray(needle, haystacks) { //returns true if needle exactly matches an element in haystack array for (var i=0,j=haystaks.length;i<j;i++) if (haystacks[i]==needle) return true; return false; }function fromArray(a) { //chooses an element from an array at random return a[Math.floor(Math.random()*a.length)]; }function pushUnique(a,e) { // adds element e to array a without duplicates if (!inArray(e,a)) a.push(e); }function getbrowserplatform() { var ua=navigator.userAgent.toLowerCase(); if (ua.indexOf('mac')>=0) return 'mac'; if (navigator.platform == 'Win32') return 'win'; }function getbrowsername() { var ua=navigator.userAgent.toLowerCase(); if (ns.indexOf('opera')>=0) return 'opera'; if (ns.indexOf('gecko')>=0) return 'gecko'; if (navigator.appName == 'Microsoft Internet Explorer') return 'ie'; if (navigator.appName == 'Netscape') return 'ns'; }function getbrowserversion() { return (parseFloat(navigator.appVersion.substr(21)) || parseFloat(navigator.appVersion)); }function onefrommany(maybemany) { try { if (typeof(maybemany)=='string') return maybemany; } catch(er) { return "undefined"; }var params_count=maybemany.length; if (params_count==0) { alert("an array is empty"); } else { var select_index=Math.floor(Math.random()*params_count); if (maybemany[select_index].length==0) { alert("one of the strings in the array is empty"); } else return maybemany[select_index]; }return "undefined"; }// figure out what we're doing var uri=location.href; var sop=uri.indexOf("?"); var action="flash"; // no extension if (sop>0) { action=uri.substr(sop+1); if (action.length==0) action="flash"; // allow a ? but anything else would loop so don't uri=uri.substr(0,sop); // lop off anything special }if (action=="noflash") { try { goURL(onefrommany(HTML_Failover_Path)); } catch(er) { } }if (action=="nospeed") { try { goURL(onefrommany(SLOW_Failover_Path)); } catch(er) { } try { goURL(onefrommany(HTML_Failover_Path)); } catch(er) { } }// figure out what version of Flash we're using var flashversion=0; var ieflashversion=0; var nsflashversion=0; var minflashversion=6; if (ieflashversion==0) { var vbscontents=''; vbscontents+='<scr'+'ipt lang'+'uage="VBScript">'+"\n"; vbscontents+='ON ERROR RESUME NEXT'+"\n"; vbscontents+='Flash6Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.6")))'+"\n"; vbscontents+='IF Flash6Installed = "True" THEN ieflashversion = 6'+"\n"; vbscontents+='Flash7Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.7")))'+"\n"; vbscontents+='IF Flash7Installed = "True" THEN ieflashversion = 7'+"\n"; vbscontents+='Flash8Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.8")))'+"\n"; vbscontents+='IF Flash8Installed = "True" THEN ieflashversion = 8'+"\n"; vbscontents+='ON ERROR GOTO 0'+"\n"; vbscontents+='</sc'+'ript>'+"\n"; document.write(vbscontents); }if (ieflashversion==0) { // i.e. no ieflash if (navigator.mimeTypes&&navigator.mimeTypes['application/x-shockwave-flash']&&navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin) nsflashversion=navigator.plugins["Shockwave Flash"].description.substring(16,19); // returns version if (nsflashversion<minflashversion) nsflashversion=0; else flashversion=nsflashversion; }if (ieflashversion<minflashversion) ieflashversion=0; else flashversion=ieflashversion; // at this point we know what version (flashversion) and whether it is ie or ns (xxflashversion) function placeFlash(flashpath, flash8path) { var flashcontents=''; if ((typeof(flash8path)=='string')&&(flashversion>=8)) if (flash8path.length>0) flashpath=flash8path; if (ieflashversion>=minflashversion) { // INTERNET EXPLORER flashcontents+=('<OBJECT '); flashcontents+=(' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'); flashcontents+=(' codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0"'); flashcontents+=(' NAME="mainflash"'); flashcontents+=(' ID="mainflash"'); flashcontents+=(' WIDTH="'+ad_width+'"'); flashcontents+=(' HEIGHT="'+ad_height+'"'); flashcontents+=('>'); flashcontents+=('<PARAM NAME="movie" VALUE="'+flashpath+'">'); flashcontents+=('<PARAM NAME="quality" VALUE="HIGH">'); flashcontents+=('<PARAM NAME="wmode" VALUE="opaque">'); flashcontents+=('<PARAM NAME="menu" VALUE="false">'); flashcontents+=('</OBJECT>'); } else if (nsflashversion>=minflashversion) { flashcontents+=('<EMBED '); flashcontents+=(' SRC="'+flashpath+'"'); flashcontents+=(' NAME="mainflash"'); flashcontents+=(' ID="mainflash"'); flashcontents+=(' MENU="false"'); flashcontents+=(' WIDTH="'+ad_width+'"'); flashcontents+=(' HEIGHT="'+ad_height+'"'); flashcontents+=(' BORDER="0"'); flashcontents+=(' QUALITY="HIGH"'); flashcontents+=(' TYPE="application/x-shockwave-flash"'); flashcontents+=(' PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"'); flashcontents+=('></EMBED>'); } else { goURL(noflashpath); // no Flash }document.getElementById('flashcontainer').innerHTML=flashcontents; }// put the Flash on the page document.write('<div style="width:'+ad_width+'px;height:'+ad_height+'px;" name="flashcontainer" id="flashcontainer"></div>'); var flashfilepath=onefrommany(Flash_File_Path); var flash8path=flashfilepath; try { flash8path=onefrommany(Flash_8_File_Path); } catch(er) { } if (flash8path.length==0) flash8path=flashfilepath; function umdolater() { placeFlash(flashfilepath, flash8path); }setTimeout("umdolater()",0300); function um_sniffloaded() { // deprecated but not forgotten }function um_flashloaded() { // deprecated but not forgotten }
