/* * Baynote Observer for att.com * Last updated: August 25, 2009 */ var bn_searchEnabled = true; var bn_policyLoaded = false; function bn_isNotEmpty(name) { return (name != null) && (name != ""); } function bn_getCookie(c_name) { if (document.cookie.length>0) { c_start=document.cookie.indexOf(c_name + "="); if (c_start!=-1) { c_start=c_start + c_name.length+1; c_end=document.cookie.indexOf(";",c_start); if (c_end==-1) c_end=document.cookie.length; return unescape(document.cookie.substring(c_start,c_end)); } } return ""; } function bn_setCookie(c_name,c_value,c_domain,expiredays) { var exdate=new Date(); exdate.setDate(exdate.getDate()+expiredays); if (c_domain != null && c_domain != "") { document.cookie = c_name+"="+escape(c_value)+";domain="+c_domain+";path=/"+((expiredays==null)?"":";expires="+exdate.toGMTString()); } else { document.cookie = c_name+"="+escape(c_value)+";path=/"+((expiredays==null)?"":";expires="+exdate.toGMTString()); } } function bn_getOrderInfo() { if (typeof(bnOrderId) != "undefined" && bn_isNotEmpty(bnOrderId)) { baynote_tag.attrs.purchaseId = bnOrderId; if (typeof(bnOrderTotal) != "undefined" && bn_isNotEmpty(bnOrderTotal)) { baynote_tag.attrs.totalPurchases = parseFloat(bnOrderTotal); baynote_tag.specialTarget = true; } if (typeof(bnOrderDetails) != "undefined" && bn_isNotEmpty(bnOrderDetails)) { baynote_tag.attrs.purchaseDetails = bnOrderDetails; } if (typeof(bnOrderType) != "undefined" && bn_isNotEmpty(bnOrderType)) { baynote_tag.attrs.purchaseType = bnOrderType; } } } function bn_getCustomerInfo() { if (typeof(bnCustomerType) != "undefined" && bn_isNotEmpty(bnCustomerType)) baynote_tag.attrs.customerType = bnCustomerType; } function bn_getMeta(meta_name) { var metas = document.getElementsByTagName("meta"); if (!metas) return; for (var i = 0; i < metas.length; i++) { if (!metas[i]) return; if (metas[i].name.toLowerCase() == meta_name.toLowerCase()) { return metas[i].content; } } } function bn_removeHtml(raw) { raw = raw.replace(/\<[^>]*\>/g, ""); raw = raw.replace(/\<.*/, ""); raw = raw.replace(/\ /g, " "); raw = raw.replace(/^\s+/, ""); raw = raw.replace(/\s+$/, ""); raw = raw.replace(/\n/g, " "); raw = raw.replace(/\s+/m, ' ') ; return raw; } function bn_getAnsCtrSummary() { var paragraphs = document.getElementsByTagName("dt"); if (!paragraphs) return; for (var i=0; i= 0 || summary.indexOf("Fix") >= 0) { if (summary.length > 180) summary = summary.substring(0,180) + "..."; if (summary != "") return summary; } } } } function bn_getAskAttInfo() { var info = getElementsByClassName("solution", "div")[0]; var title = info.getElementsByTagName("h2")[0].innerHTML; var summary = info.getElementsByTagName("p")[0].innerHTML; baynote_tag.title = title; baynote_tag.summary = summary; } function bn_getAskCategoryInfo() { var info = getElementsByClassName("content", "div")[0]; var title = info.getElementsByTagName("h2")[0].innerHTML; var summary = info.getElementsByTagName("p")[0].innerHTML; baynote_tag.title = title; baynote_tag.summary = summary; } function bn_getSummary() { var bn_locHref = window.location.href; var bn_metaDesc = bn_getMeta("baynote_summary"); if (!bn_isNotEmpty(bn_metaDesc)) { bn_metaDesc = bn_getMeta("description"); } if (bn_isNotEmpty(bn_metaDesc)) { baynote_tag.summary = bn_metaDesc; } else if (bn_locHref.indexOf("/answer-center/") > 0 || bn_locHref.indexOf("/support/") > 0) { var bn_ansDesc = bn_getAnsCtrSummary(); if (bn_isNotEmpty(bn_ansDesc)) { baynote_tag.summary = bn_ansDesc; } } else if (bn_locHref.indexOf("ask.att.com/") > 0 && bn_locHref.indexOf("session=") > 0) { bn_getAskAttInfo(); } else if (bn_locHref.indexOf("ask.att.com/") > 0 && bn_locHref.indexOf("action=category") > 0) { bn_getAskCategoryInfo(); } } function bn_getAttrs() { var cookie = bn_getCookie("attPersistantLocalization"); var keys = cookie.split("|"); for (var i = 0; i < keys.length; i++) { var value = keys[i].substring(keys[i].indexOf("=")+1, keys[i].length); if (keys[i].search("ltype") == 0) { baynote_tag.docAttrs.ltype = value; } else if (keys[i].search("segment") == 0) { baynote_tag.docAttrs.segment = value; } else if (keys[i].search("company") == 0) { baynote_tag.docAttrs.company = value; } else if (keys[i].search("state") == 0) { baynote_tag.docAttrs.state = value; } } } function bn_showObserver() { var bn_locHref = window.location.href; if (bn_locHref.indexOf("https://") == 0) { baynote_tag.server = "https://attwireless-www.baynote.net"; } else { baynote_tag.server = "http://attwireless-www.baynote.net"; } baynote_tag.customerId = "attwireless"; baynote_tag.code = "www"; baynote_tag.type = "baynoteObserver"; if (bn_locHref.indexOf(".att.com") > 0) { baynote_globals.cookieDomain = "att.com"; } else if (bn_locHref.indexOf(".bellsouth.com") > 0) { baynote_globals.cookieDomain = "bellsouth.com"; } else if (bn_locHref.indexOf(".sbc.com") > 0) { baynote_globals.cookieDomain = "sbc.com"; } bn_getOrderInfo(); bn_getCustomerInfo(); bn_getSummary(); if (bn_locHref.match(/^https?:\/\/www\.wireless\.att\.com\//)) { } else { bn_getAttrs(); } baynote_tag.show(); } function bn_checkPolicy() { if (!bnPolicy.get("guide","ok")) { bn_searchEnabled = false; bn_setCookie('bn_search','false',baynote_globals.cookieDomain,90); } else { bn_setCookie('bn_search','true',baynote_globals.cookieDomain,90); } bn_policyLoaded = true; } function bn_waitForPolicy() { if(typeof(bnResourceManager) != "undefined" && bnResourceManager != null) { bnResourceManager.waitForResource("Policy", function() { bn_checkPolicy(); }); } } if(typeof(baynote_tag)!="undefined") { bn_showObserver(); bn_waitForPolicy(); } /* Developed by Robert Nyman, http://www.robertnyman.com Code/licensing: http://code.google.com/p/getelementsbyclassname/ */ function getElementsByClassName (className, tag, elm){ if (document.getElementsByClassName) { getElementsByClassName = function (className, tag, elm) { elm = elm || document; var elements = elm.getElementsByClassName(className), nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null, returnElements = [], current; for(var i=0, il=elements.length; i