﻿popup = function() {
	var configuration = { states: { loading: 1, loaded: 2 }, CSSs: { flashBackgroundContainer: "flash_background"} }; var state; var richMediaContainer; var frameContainer; var isFrameTransparent = false; var restoreLayerByUrlList = new Array(); function getElem(id) {
		return document.getElementById(id);
	} function show(elem) { elem.style.display = "block"; } function hide(elem) { elem.style.display = "none"; } function checkforSeperatorAtEnd(str) { var lastChar = str.substring(str.length - 1, str.length); if (lastChar == "&" || lastChar == "?") { return true; } else { return false; } } function removeSeperatorFromEnd(str) {
		if (checkforSeperatorAtEnd(str)) {
			str = str.substring(0, str.length - 1);
		} return str;
	} function formatUrl(url) {
		if (url.indexOf("cmvar")) { url.replace("cc=<cmvar:cc />", ""); url.replace("lc=<cmvar:lc />", ""); url.replace("cc=<cmvar:cc/>", ""); url.replace("lc=<cmvar:lc/>", ""); } while (checkforSeperatorAtEnd(url)) {
			url = removeSeperatorFromEnd(url);
		} var seperator = "?"; if (url.indexOf("?") != -1) { seperator = "&"; } if (url.indexOf("cc=") == -1) { url = url + seperator + "cc=" + getParam("cc"); seperator = "&"; } if (url.indexOf("lc=") == -1) { url = url + seperator + "lc=" + getParam("lc"); } return url;
	} function createIframeContainer(width, height, scroll) {
		if (scroll) {
			var scr = scroll;
		} else { var scr = "no"; } var htmlCode = '<iframe id="layerContent" frameborder="' + 0 + '" height="' + height + '" width="' + width + '" scrolling="' + scr + '" allowTransparency="true" style="height:' + height + 'px;"></iframe>'; return htmlCode;
	} function getFrameContainerElem(el) {
		var divs = frameContainer.getElementsByTagName("DIV");
		for (x = 0; x < divs.length; x++) { if (divs[x].id == el) { return divs[x]; } } 
	} function addLink(linkData) {
		var link = document.createElement("a"); link.setAttribute("href", linkData.url); link.setAttribute("target", "_blank"); if (linkData.img == "") {
			link.innerHTML = linkData.label; link.className = "link";
		} else {
			if (isIExp6() && linkData.img.lastIndexOf(".png") != -1) {
				link.innerHTML = "<img style=\"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + linkData.img + '\', sizingMethod=\'image\')" src="/cws/images/cws/see_the_phone_spacer.gif" alt="' + linkData.label + '" />';
			} else { link.innerHTML = '<img src="' + linkData.img + '" alt="' + linkData.label + '" />'; } 
		} return link;
	} function showPlaynowVideoTour(id, param) { el = document.getElementById(id); el.appendChild(param); } function showSocialSharingItems(id, param) {
		el = document.getElementById(id);
		var headerText = document.createTextNode(param.header); var descrText = document.createTextNode(param.text); var disclHdr = document.createElement("B"); disclHdr.appendChild(document.createTextNode(param.disclaim_header)); var disclTxt = document.createElement("I"); disclTxt.appendChild(document.createTextNode(param.disclaim_text));
		var url = param.legalUrl; url = url.replace("&amp;", "&"); var legalLink = document.createElement("a"); legalLink.setAttribute("href", url); legalLink.setAttribute("title", param.label); legalLink.innerHTML = param.label; legalLink.className = "link"; legalLink.setAttribute("target", "_blank");
		el.appendChild(document.createElement("BR")); el.appendChild(document.createElement("BR")); var outer = document.createElement("Div"); outer.className = "social_sharing_outer"; outer.id = "social_sharing_outer"; var header = document.createElement("h2"); header.appendChild(headerText);
		header.className = "colored"; outer.appendChild(header); outer.appendChild(document.createElement("BR")); outer.appendChild(descrText); outer.appendChild(document.createElement("BR")); outer.appendChild(document.createElement("BR")); outer.appendChild(document.createElement("BR"));
		var items = param.items; for (i = 0; i < items.length; i++) {
			div = document.createElement("Div"); div.className = "floatleft social_sharing_item"; innerDiv1 = document.createElement("Div"); innerDiv1.className = "floatleft"; innerDiv1.style.width = "52px"; innerDiv2 = document.createElement("Div");
			innerDiv2.className = "floatleft"; innerDiv2.style.marginTop = "9px"; innerDiv2.style.width = "125px"; var img = document.createElement("IMG"); var url1 = document.createElement("A"); var url2 = document.createElement("A"); var txt = document.createTextNode(items[i].name); img.setAttribute("src", items[i].iconUrl);
			img.setAttribute("alt", items[i].name); img.style.height = "36px"; img.style.width = "36px"; img.style.marginRight = "13px"; var tmpUrl = items[i].url; if (items[i].encoding == "URLENCODING") {
				tmpUrl = tmpUrl.replace("<pageName>", escape(document.location.href)); tmpUrl = tmpUrl.replace("&lt;pageName&gt;", escape(document.location.href));
			} else { tmpUrl = tmpUrl.replace("<pageName>", document.location.href); tmpUrl = tmpUrl.replace("&lt;pageName&gt;", document.location.href); } url1.setAttribute("href", tmpUrl); url1.setAttribute("title", items[i].name); url1.setAttribute("target", "_blank"); url1.appendChild(img);
			url1.style.textDecoration = "none"; if (isIE()) { url1.onclick = (function(label) { return function() { void (0); }; })(items[i].name); } url2.setAttribute("href", tmpUrl); url2.setAttribute("title", items[i].name); url2.setAttribute("target", "_blank"); url2.appendChild(document.createTextNode(" "));
			url2.appendChild(txt); url2.className = "link"; url2.appendChild(document.createElement("BR")); if (isIE()) { url2.onclick = (function(label) { return function() { void (0); }; })(items[i].name); } innerDiv1.appendChild(url1); innerDiv2.appendChild(url2); div.appendChild(innerDiv1);
			div.appendChild(innerDiv2); outer.appendChild(div);
		} div = document.createElement("Div"); div.style.clear = "both"; outer.appendChild(div); outer.appendChild(document.createElement("BR")); outer.appendChild(document.createElement("BR")); outer.appendChild(disclHdr); outer.appendChild(document.createElement("BR"));
		outer.appendChild(disclTxt); outer.appendChild(legalLink); outer.appendChild(document.createElement("BR")); el.appendChild(outer);
	} function createMiniCampaignContainer(richMediaContainer, optParams1, width, height) {
		var optParams; if (((typeof optParams1) == "string")) {
			optParams = new Object();
			optParams = eval("(" + optParams1 + ")");
		} else { optParams = optParams1; } var campaignContainer = document.createElement("div"); var textContainer = document.createElement("div"); var mediaContainer = document.createElement("div"); var campaignHeader = document.createElement("h1");
		campaignHeader.className = "campaign_header"; var campaignDesc = document.createElement("div"); campaignDesc.className = "campaign_desc"; if (optParams.imgUrl.lastIndexOf(".swf") != -1) {
			var flashVars = "cc=" + getParam("cc") + "&lc=" + getParam("lc"); mediaContainer.innerHTML = createFlashTags(optParams.imgUrl, "442", "347", flashVars, "left", "transparent", "none", "", "mediaCampaign");
		} else {
			var campaignImg = document.createElement("img"); campaignImg.setAttribute("width", 347); campaignImg.setAttribute("height", 442); if (isIExp6()) {
				campaignImg.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + optParams.imgUrl + "', sizingMethod='auto')";
				campaignImg.setAttribute("src", "/cws/images/cws/see_the_phone_spacer.gif");
			} else { campaignImg.setAttribute("src", optParams.imgUrl); } mediaContainer.appendChild(campaignImg);
		} var campaignStyle = optParams.style; if (optParams.backgroundUrl.lastIndexOf(".swf") != -1) {
			campaignContainer.style.background = "none";
			var flashBackgroundContainer = document.createElement("div"); flashBackgroundContainer.className = configuration.CSSs.flashBackgroundContainer + " " + optParams.style; richMediaContainer.appendChild(flashBackgroundContainer); var flashVars = "cc=" + getParam("cc") + "&lc=" + getParam("lc");
			flashBackgroundContainer.innerHTML = createFlashTags(optParams.backgroundUrl, height, width, flashVars, "left", "transparent", "none", "", "mediaCampaign");
		} if (optParams.backgroundUrl.lastIndexOf(".jpg") != -1) {
			campaignContainer.style.backgroundImage = "url(" + optParams.backgroundUrl + ")";
			campaignContainer.style.backgroundRepeat = "no-repeat";
		} campaignHeader.innerHTML = optParams.header; campaignDesc.innerHTML = optParams.description; campaignContainer.className = "campaign_" + campaignStyle; campaignContainer.style.height = height + "px"; campaignContainer.style.width = width + "px";
		mediaContainer.className = "campaign_img_container floatleft"; textContainer.className = "campaign_text_container floatleft"; richMediaContainer.appendChild(campaignContainer); textContainer.appendChild(campaignHeader); textContainer.appendChild(campaignDesc); var linkData1 = optParams.link1;
		var linkData2 = optParams.link2; if (linkData1.src != "") { var newLink = addLink(linkData1); textContainer.appendChild(newLink); } if (linkData2.src != "") { var newLink2 = addLink(linkData2); textContainer.appendChild(newLink2); } switch (optParams.layout) {
			case "media_text": campaignContainer.appendChild(mediaContainer);
				campaignContainer.appendChild(textContainer); break; case "text_media": campaignContainer.appendChild(textContainer); campaignContainer.appendChild(mediaContainer); break; case "text": campaignContainer.appendChild(textContainer); break; default: campaignContainer.appendChild(textContainer);
				campaignContainer.appendChild(mediaContainer); break;
		} return campaignContainer;
	} function createFullDiv() {
		var fullDiv = document.createElement("div"); fullDiv.id = "fulldiv"; var bgImgUsed = false; if (navigator.appVersion.toLowerCase().indexOf("mac") > 0) {
			if (navigator.userAgent.toLowerCase().indexOf("firefox") != -1) {
				fullDiv.style.backgroundImage = "url('/cws/images/bg_popup_layer.png')";
				bgImgUsed = true;
			} 
		} if (!bgImgUsed) { fullDiv.style.filter = "alpha(opacity=25)"; fullDiv.style.opacity = "0.25"; fullDiv.style.backgroundColor = "#000000"; } var body = document.getElementsByTagName("body"); body[0].appendChild(fullDiv); return fullDiv;
	} function openLayerTransparent(id, url, type, width, height, product, statsTitle, optParams, dontAddBrowserHistory) {
		isFrameTransparent = true;
		frameContainer = getElem("frame_container_transparent"); openLayer(id, url, type, width, height, product, statsTitle, optParams, dontAddBrowserHistory);
	} function openLayer(id, url, type, width, height, product, statsTitle, optParams, dontAddBrowserHistory) {
		if (typeof dontAddBrowserHistory == "undefined") {
			dontAddBrowserHistory = false;
		} try {
			if (document.getElementById("fulldiv")) { var fulldiv = document.getElementById("fulldiv"); } else { var fulldiv = createFullDiv(); } if (document.getElementById("frame_container") == null) { createHtml(); } show(fulldiv); if (state != configuration.states.loaded) {
				var pageheight = document.documentElement.scrollHeight;
				fulldiv.style.height = pageheight + "px"; state = configuration.states.loaded;
			} var shadowHeight; if (!isFrameTransparent) { frameContainer = getElem("frame_container"); } richMediaContainer = getFrameContainerElem("embedded_content"); switch (type) {
				case "socialsharing": shadowHeight = height + 39;
					if (getElem("popupline")) { show(getElem("popupline")); } showSocialSharingItems("embedded_content", optParams); break; case "flashpresentation": shadowHeight = height + 39; var iframeHTML = createIframeContainer(width, height); richMediaContainer.innerHTML = iframeHTML; var iframeContainer = getElem("layerContent");
					if (iframeContainer.src == "") { iframeContainer.src = url; } break; case "enhancedpresentation": shadowHeight = height + 39; var iframeHTML = createIframeContainer(width, height); richMediaContainer.innerHTML = iframeHTML; var iframeContainer = getElem("layerContent"); if (iframeContainer.src == "") {
						iframeContainer.src = url;
					} break; case "campaignsite": createMiniCampaignContainer(richMediaContainer, optParams, width, height); shadowHeight = height + 39; break; case "playnowvideotour": shadowHeight = height + 39; if (getElem("popupline")) { show(getElem("popupline")); } showPlaynowVideoTour("embedded_content", optParams);
					break; case "compareproducts": if (comparePopUpHeader) { shadowHeight = height + 59; var el = getElem("pop_header"); el.innerHTML = comparePopUpHeader; el.style.display = "block"; } else { shadowHeight = height + 59; } var iframeHTML = createIframeContainer(900, 653, "auto"); richMediaContainer.innerHTML = iframeHTML;
					url = formatUrl(url); var iframeContainer = getElem("layerContent"); if (iframeContainer.src == "") { iframeContainer.src = url; } break; case "iframe": shadowHeight = height + 39; var iframeHTML = createIframeContainer(710, 450); richMediaContainer.innerHTML = iframeHTML; url = formatUrl(url);
					var iframeContainer = getElem("layerContent"); if (iframeContainer.src == "") { iframeContainer.src = url; } if (getElem("popupline")) { show(getElem("popupline")); } break; default: break;
			} resize(type, width, height, shadowHeight); var frame_container = frameContainer; var windowheight = document.documentElement.clientHeight;
			var offsety = 0; if (typeof (window.pageYOffset) == "number") { offsety = window.pageYOffset; } else {
				if (document.body && (document.body.scrollLeft || document.body.scrollTop)) { offsety = document.body.scrollTop; } else {
					if (document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop)) {
						offsety = document.documentElement.scrollTop;
					} 
				} 
			} if (windowheight > shadowHeight) { frame_container.style.top = (((windowheight - shadowHeight) / 2) + offsety) + "px"; } else { frame_container.style.top = (13 + offsety) + "px"; } show(frame_container); if (navigator.appVersion.toLowerCase().indexOf("mac") > 0) {
				if (navigator.userAgent.toLowerCase().indexOf("firefox") != -1) {
					window.onscroll = initScroll;
					document.documentElement.scrollTop = offsety + 1;
				} 
			} if (!dontAddBrowserHistory) { addMediaByUrl(id); } if (type == "socialsharing") {
				var socialSharingElement = getElem("social_sharing_outer"); socialHeight = socialSharingElement.offsetHeight; socialHeight += 75; if (isIE6()) {
					socialHeight -= 52;
				} resize(type, width, socialHeight, socialHeight);
			} 
		} catch (e) { } 
	} function addMediaByUrl(id) {
		var newUrl = ""; var parameter = "#layerid=" + id; var currentUrl = window.location.href; var anchorIndex = currentUrl.indexOf("#"); if (anchorIndex > -1) {
			var parsedUrl = currentUrl.split("#");
			newUrl = parsedUrl[0];
		} else { newUrl = currentUrl; } window.location.href = newUrl + parameter;
	} function restoreLayerByUrl() {
		var activeItem = -1; var RMitems = restoreLayerByUrlList; var currentUrl = window.location.href; var anchorIndex = currentUrl.indexOf("#layerid="); if (anchorIndex > -1) {
			var parameter = currentUrl.substr(anchorIndex).toLowerCase();
			var parsedUrl = parameter.split("="); var mediaId = parsedUrl[1]; if (mediaId != null) { for (i = 0; i < RMitems.length; i++) { if (unescape(RMitems[i].id) == unescape(mediaId)) { activeItem = i; break; } } } 
		} if (activeItem != -1) {
			popup.openLayer(RMitems[activeItem].id, RMitems[activeItem].url, RMitems[activeItem].type, RMitems[activeItem].width, RMitems[activeItem].height, null, null, RMitems[activeItem].optParams);
		} 
	} function createLayerByUrlList(id, url, type, width, height, optParams) { restoreLayerByUrlList.push(new layerItem(id, url, type, width, height, optParams)); } function layerItem(id, url, type, width, height, optParams) {
		this.id = id; this.url = url; this.type = type; this.width = width;
		this.height = height; this.optParams = optParams;
	} function resizeTransparent(width, height) {
		var pop_middle = getFrameContainerElem("pop_middle"); var frame_container = frameContainer; pop_middle.style.height = height + "px"; pop_middle.style.width = width + "px"; if (getParam("lc") == "he" || getParam("lc") == "ar") {
			frame_container.style.right = Math.ceil(($("body").width() - width) / 2) + "px";
		} else { frame_container.style.left = Math.ceil(($("body").width() - width) / 2) + "px"; } richMediaContainer.style.height = height + "px";
	} function resize(type, width, height, shadowHeight) {
		if (isFrameTransparent) { resizeTransparent(width, height); return; } var pop_top = getElem("pop_top");
		var pop_bottom = getElem("pop_bottom"); var pop_left = getElem("pop_left"); var pop_right = getElem("pop_right"); var pop_middle = getElem("pop_middle"); var pop_middle_bg = getElem("pop_middle_bg"); var embedded_img = getElem("embedded_img"); var frame_container = frameContainer;
		var shadowWidth = width + 26; try {
			frame_container.style.width = (shadowWidth + 24) + "px"; pop_top.style.width = shadowWidth + "px"; pop_bottom.style.width = shadowWidth + "px"; pop_left.style.height = shadowHeight + "px"; pop_right.style.height = shadowHeight + "px"; pop_middle.style.height = shadowHeight + "px";
			pop_middle.style.width = width + "px"; pop_middle_bg.style.height = shadowHeight + "px"; pop_middle_bg.style.width = width + "px"; if (getParam("lc") == "he" || getParam("lc") == "ar") { frame_container.style.right = Math.ceil(($("body").width() - (shadowWidth + 24)) / 2) + "px"; } else {
				frame_container.style.left = Math.ceil(($("body").width() - (shadowWidth + 24)) / 2) + "px";
			} richMediaContainer.style.height = height + "px";
		} catch (e) { } 
	} function initScroll() { var content_frame = getElem("layerContent"); content_frame.src = content_frame.src; } function hideLayer() {
		if (getFrameContainerElem("layerContent")) {
			var content_frame = getFrameContainerElem("layerContent");
			if (content_frame.src != "") { content_frame.src = ""; } 
		} var el = getElem("pop_header"); el.style.display = "none"; setTimeout("popup.closeLayer()", 100); if (navigator.appVersion.toLowerCase().indexOf("mac") > 0 && navigator.userAgent.toLowerCase().indexOf("firefox") != -1) {
			window.onscroll = null;
		} var currentUrl = window.location.href; if (currentUrl.indexOf("#") > -1) { var parsedUrl = currentUrl.split("#"); if (parsedUrl[1].indexOf("view=") == -1) { newUrl = parsedUrl[0]; window.location.href = newUrl + "#a"; } } 
	} function createHtml() {
		var layerHtml = '<div id="frame_container" class="neoFrameContainer">';
		layerHtml += '  <div class="pop_top_left"></div>'; layerHtml += '  <div id="pop_top" class="pop_top"></div>'; layerHtml += '  <div class="pop_top_right"></div>'; layerHtml += '  <div style="clear:both;"></div>'; layerHtml += '  <div id="pop_left" class="pop_left"></div>';
		layerHtml += '  <div id="pop_middle_bg" class="pop_middle_bg" style="height: auto;"></div>'; layerHtml += '  <div id="pop_middle" class="pop_middle" style="height: auto;">'; layerHtml += '    <div id="pop_header" class="pop_header floatleft" style="display:none"></div>';
		layerHtml += '	 <div class="floatright close_button" onClick="popup.hideLayer();">'; layerHtml += "      <label>Close</label>"; layerHtml += "      <span></span>"; layerHtml += "    </div>"; layerHtml += '    <div style="clear:both;"></div>'; layerHtml += '    <div id="popupline"><!-- --></div>';
		layerHtml += '    <div id="embedded_content"></div>'; layerHtml += '    <div id="campaign_desc" style="display:none;"></div>'; layerHtml += '    <div class="whitespace"><!-- --></div>'; layerHtml += "  </div>"; layerHtml += '  <div id="pop_right" class="pop_right"></div>';
		layerHtml += '  <div style="clear:both;"></div>'; layerHtml += '  <div class="pop_bottom_left"></div>'; layerHtml += '  <div id="pop_bottom" class="pop_bottom"></div>'; layerHtml += '  <div class="pop_bottom_right"></div>'; layerHtml += "</div>"; layerHtml += '<div id="frame_container_transparent" class="neoFrameContainer" style="position:absolute; top:10%; z-index:13; display:none; text-align:left;">';
		layerHtml += '  <div id="pop_middle" class="pop_middle" style="height: auto;">'; layerHtml += '    <div id="embedded_content"></div>'; layerHtml += "  </div>"; layerHtml += "</div>"; $("body").append(layerHtml);
	} function closeLayer() {
		if (getFrameContainerElem("popupline")) {
			hide(getFrameContainerElem("popupline"));
		} var frame_container = frameContainer; var fulldiv = getElem("fulldiv"); frame_container.style.display = "none"; fulldiv.style.display = "none"; richMediaContainer.innerHTML = ""; isFrameTransparent = false;
	} function isIExp6() {
		var userAgent = navigator.userAgent.toLowerCase();
		return (userAgent.indexOf("msie 6") != -1);
	} return { config: configuration, openLayer: openLayer, hideLayer: hideLayer, closeLayer: closeLayer, openLayerTransparent: openLayerTransparent, createLayerByUrlList: createLayerByUrlList, restoreLayerByUrl: restoreLayerByUrl };
} ();
