/* -- BEGIN SPHERE JS -- */
// site id for bookmarket
var SPHERE_SITE_ID = "";
SPHERE_SITE_ID = "blogsmith_widget_engadget";
// Media tracking pixel
document.write('');
// Omniture
/*
The core url used by all methods to make calls to the remote omniture code.
the 'action' arg will be the name of a method to be called by eval in the
sphereomni_api js code.
*/
function getSphereOmnitureRemoteActionUrl(action){
return "http://www.sphere.com/partner/omniture/sphereomni_api.php?siteid=blogsmith_widget_engadget&evt="+action;
}
function getSphereOmnitureQueueActionUrl(action){
return "http://www.sphere.com/partner/omniture/sphereomni_queue.php?evt="+action+"&siteid=blogsmith_widget_engadget";
}
Sphere = {}
Sphere.addStylesheet = function(stylesheet_href) {
var stylesheet = document.createElement("link");
stylesheet.rel = "stylesheet";
stylesheet.type = "text/css";
stylesheet.href = stylesheet_href;
stylesheet.media = "all";
document.lastChild.firstChild.appendChild(stylesheet);
}
Sphere.Browser = new function() {
var ua, s, i;
this.isIE = false;
this.isNS = false;
this.version = null;
ua = navigator.userAgent;
s = "MSIE";
if ((i = ua.indexOf(s)) >= 0) {
this.isIE = true;
this.version = parseFloat(ua.substr(i + s.length));
return;
}
s = "Netscape6/";
if ((i = ua.indexOf(s)) >= 0) {
this.isNS = true;
this.version = parseFloat(ua.substr(i + s.length));
return;
}
// Treat any other "Gecko" browser as NS 6.1.
s = "Gecko";
if ((i = ua.indexOf(s)) >= 0) {
this.isNS = true;
this.version = 6.1;
return;
}
}
Sphere.Tracker = new function() {
this.track = function ( ele, site, area, quadtitle,sphereid,metadata) {
if( !ele.href ) return;
/*
-- the following may or may not be present, so check and init if necessary
-- sphereid is used by ssi and represents site id by proxy
-- metadata should be in the form of a pipe-delimited string
e.g. k=v|b=y
*/
try{
if(!quadtitle){ quadtitle = '';}
}catch(anErr){
quadtitle = '';
}
try{
if(!sphereid){ sphereid = '';}
}catch(anErr){
sphereid = '';
}
try{
if(!metadata){ metadata = '';}
if (document.referrer != ''){
metadata += "|referrer=" + document.referrer;
}
}catch(anErr){
metadata = '';
}
sphereom = new SphereOmniture();
sphereom.click(ele.href, area, site, quadtitle,sphereid,metadata);
}
}
Sphere.Inline = new function() {
var content;
this.processContent = function (content) {
if( !content || !content.content || content.content=="") return;
// append content and omniture frame
// ********************************
document.getElementById(content.location).innerHTML = content.content+ "
" ;
// omniture init
// deprecated. now called when content loads
//sphereom = new SphereOmniture();
//sphereom.init();
}
this.search = function(posStr, local, auxVars) {
var url = escape(local || location.href);
if(auxVars) url = url+'&auxVars='+escape(auxVars);
document.write("");
}
function zoomToFull() {
//alert("zoomToFull");
Animator.add( {
process: function() {
if( sideBar.clientHeight >= sideBar.scrollHeight-20) {
sideBar.style.height = sideBar.scrollHeight+'px';
return false;
}
sideBar.style.height = (sideBar.clientHeight + 15) +'px';
return true;
}
});
}
}
Sphere.Widget = new function() {
var SKELETON_MARKUP = ' ';
var CONTENT_URL = 'http://www.sphere.com/widgets/sphereit/content?siteid=blogsmith_widget_engadget';
if(document.characterSet) CONTENT_URL += ('&cset='+escape(document.characterSet));
CONTENT_URL += '&CXNID=1000009.430098529NXC&url=';
var widget; var widgetContent; var widgetLoading;
var content;
var dragObj = {};
if(document.getElementsByTagName('base').length>0) {
if (window.addEventListener){
window.addEventListener('load', appendStylesheet, false);
} else if (window.attachEvent){
window.attachEvent('onload', appendStylesheet);
}
} else {
appendStylesheet();
}
if (Math.random() <= 0.1) {
try{
sphereom = new SphereOmniture();
sphereom.track('popup_view', 'blogsmith_widget_engadget_popup_view','','','');
}catch(anErr){}
}
this.search = function( source ) {
if( !content || (source && content.source!=source ) ) {
requestContent( source );
dragObj.elNode = null;
if( widget ){ widget.parentNode.removeChild(widget); content=null; widget=null; }
}
if( !widget ) draw();
show();
/*
var reqimgurl = 'http://stats.sphere.com/widgets/sphereit/?action=display&siteid=blogsmith_widget_engadget';
var reqimg = new Image();
reqimg.src = reqimgurl;
if (reqimg.style) {
// In Safari 2.0.x, reqimg has no style until it's appended, so skip this (fixed in Safari 3)
reqimg.style.display = 'none';
document.body.appendChild(reqimg);
}
*/
return false;
}
this.close = function() {
if( widget ) widget.style.display ='none';
}
this.processContent = function (incomingContent) {
content = incomingContent;
for(i=0;i<1000;i++){ test='444'};
if( !widgetContent ) return;
widgetContent.innerHTML = content.content+ "" ;
widgetContent.style.height = widgetLoading.clientHeight +'px';
widgetLoading.style.display = 'none';
widgetContent.style.display = 'block';
zoomToFull();
// moved from search for popup
sphereom = new SphereOmniture();
sphereom.popup();
}
function requestContent( local ) {
//alert("requestContent");
Sphere.Widget.script = document.createElement('script');
Sphere.Widget.script.src = CONTENT_URL + escape(local || location.href);
setTimeout(function(){ document.body.appendChild(Sphere.Widget.script);}, 1);
}
function zoomToFull() {
//alert("zoomToFull");
Animator.add( {
process: function() {
if( widgetContent.clientHeight >= widgetContent.scrollHeight-20) {
widgetContent.style.height = widgetContent.scrollHeight+'px';
if( iecheck() ) {
ieahack(widget.getElementsByTagName("a"));
document.getElementById("sphereiframeblock").style.height = (Number(widget.scrollHeight)-24)+'px';
document.getElementById("sphereiframeblock").style.display = 'block';
alphaBackgrounds();
}
center();
return false;
}
widgetContent.style.height = (widgetContent.clientHeight + 20) +'px';
center();
return true;
}
});
}
function ieahack( col ) {
for( var i=0; i");
}
function iecheck(inc_seven) {
if (navigator.platform == "Win32" && navigator.appName == "Microsoft Internet Explorer" && window.attachEvent) {
var rslt = navigator.appVersion.match(/MSIE (\d+\.\d+)/, '');
var iever = (inc_seven)?(rslt != null && Number(rslt[1]) >= 5.5):(rslt != null && Number(rslt[1]) >= 5.5 && Number(rslt[1]) < 7 );
}
return iever;
}
function wait(ms){ var now=new Date();var exitTime=now.getTime()+ms;while(true){now=new Date();if(now.getTime()>exitTime){return;}}}
function alphaBackgrounds() {
//alert('alphaBackgrounds()');
if (navigator.platform == "Win32" && navigator.appName == "Microsoft Internet Explorer" && window.attachEvent) {
var rslt = navigator.appVersion.match(/MSIE (\d+\.\d+)/, '');
var itsAllGood = (rslt != null && Number(rslt[1]) >= 5.5 && Number(rslt[1]) < 7 );
for (i=0; i -1){ appendPopup = "_popup"; }
try{
if(!quadtitle){ quadtitle = '';}
}catch(anErr){
quadtitle = '';
}
theURL = getSphereOmnitureQueueActionUrl("fireSphereOmClickAction");
theURL += appendPopup+"&quad="+quad+"&fquadname="+quadtitle+"&context="+context+"&lnk="+escape(lnk)+"&loc="+escape(window.location)+"&sphereid="+sphereid+"&metadata="+escape(metadata);
// getSphereRemoteFrame().src = theURL;
omImg = new Image();
omImg.src = theURL;
}
function _trackSphereOm(quad,context,quadtitle,sphereid,metadata){
try{
if(!quadtitle){ quadtitle = '';}
}catch(anErr){
quadtitle = '';
}
theURL = getSphereOmnitureQueueActionUrl("fireSphereOmTrackAction");
theURL += "&quad="+quad+"&fquadname="+quadtitle+"&context="+context+"&loc="+escape(window.location)+"&sphereid="+sphereid+"&metadata="+escape(metadata);
// getSphereRemoteFrame().src = theURL;
omImg = new Image();
omImg.src = theURL;
}
function _trackAOLPopup(quad, context){
if(OMNI_AOL_POPUP_INIT){ return false; } else { OMNI_AOL_POPUP_INIT = true; }
theURL = getSphereOmnitureRemoteActionUrl("fireSphereOmTrackAction");
theURL += "&quad="+quad+"&context="+context;
getSphereRemoteFrame().src = theURL;
wait(400);
}
function _trackAolOm(lnk,lnkType,lnkName,lnkPos){
theURL = getSphereOmnitureRemoteActionUrl("fireSphereOmTrackAction");
theURL += "&lnk="+escape(lnk)+"&lnkType="+lnkType+"&lnkName="+lnkName+"&lnkPos="+lnkPos;
getSphereRemoteFrame().src = theURL;
wait(200);
}
function _initAolOm(){
theURL = getSphereOmnitureRemoteActionUrl("fireSphereOmInitAolAction");
getSphereRemoteFrame().src = theURL;
wait(200);
}
SphereOmniture.prototype.init = _initSphereOm;
SphereOmniture.prototype.popup = _initSphereOmPopup;
SphereOmniture.prototype.initaol = _initAolOm;
SphereOmniture.prototype.track = _trackSphereOm;
SphereOmniture.prototype.click = _clickSphereOm;
SphereOmniture.prototype.trackaol = _trackAolOm;
SphereOmniture.prototype.trackAOLPopup = _trackAOLPopup;
/*****************************
SphereOm Remote object api
-- This was put in place to isolate the omniture.js code,
which causes conflicts with our partner's omniture implementations.
It creates an IMG with an exposed set of pass-thru functions that
access the omniture code.
******************************/
function getSphereRemoteFrame(){
iele = document.getElementById("sphereomnitureframe");
return iele;
}
//***************** END OBJ *******************
// added this method so that gadget would call search after data had loaded.
//-----------------------------------
function loadGadgetView(permlnk){
if(Sphere.Inline){
//alert("found an inline");
Sphere.Inline.search("sphereInline", permlnk);
} else {
//alert("no inline");
}
}
/* -- END SPHERE JS -- */