/**
 * @author Adam McIntyre
 * @author adam.mcintyre@molecular.com
 * 
 * Misc. Nikon Utilities
 * NOTE: If you're minifying this, make sure to catch all the conditional compilation.
 */

IconRollovers=function(){return{addIconRollovers:function(container){var icons=YAHOO.util.Dom.getElementsByClassName('iconRollover','img',container);var obj=this;for(i=0;i<icons.length;i++){var el=icons[i];YAHOO.util.Event.addListener(el,'mouseover',obj.showOverlay);YAHOO.util.Event.addListener(el,'mouseout',obj.hideOverlay);}},showOverlay:function(){var el=this;var xy=YAHOO.util.Dom.getXY(el);var ov=document.getElementById('overlay_iconRollover');if(ov==null){ov=document.createElement('div');ov.id='overlay_iconRollover';ov.className='pop_glossary';var tmpHtml='<div class="hd"><div class="rnd le_bg"></div><h3 class="nkYellow">&nbsp;</h3></div>';tmpHtml+='<div class="bd"><div class="definition">&nbsp;</div></div>';tmpHtml+='<div class="ft le_bg">&nbsp;</div><div class="corner le_bg tl">&nbsp;</div>';ov.innerHTML=tmpHtml;document.body.appendChild(ov)}
YAHOO.util.Selector.query('h3',ov,true).innerHTML=el.alt;YAHOO.util.Selector.query('div.definition',ov,true).innerHTML=el.title;var shiftLeft=(xy[0]+ov.offsetWidth)>YAHOO.util.Dom.getViewportWidth();var shiftTop=(xy[1]+ov.offsetHeight)>YAHOO.util.Dom.getViewportHeight();var cEl=YAHOO.util.Selector.query('div.corner',ov,true);if(shiftLeft&&shiftTop){cEl.className="corner le_bg br";var newX=xy[0]-ov.offsetWidth-el.offsetWidth+cEl.offsetWidth;var newY=xy[1]-ov.offsetHeight-el.offsetHeight+(cEl.offsetWidth/2);YAHOO.util.Dom.setXY(ov,[newX,newY]);}
else if(!shiftLeft&&shiftTop){cEl.className="corner le_bg bl";var newX=xy[0]+el.offsetWidth+cEl.offsetWidth;var newY=xy[1]-ov.offsetHeight-el.offsetHeight+(cEl.offsetWidth/2);YAHOO.util.Dom.setXY(ov,[newX,newY]);}
else if(shiftLeft&&!shiftTop){cEl.className="corner le_bg tr";var newX=xy[0]-ov.offsetWidth-el.offsetWidth+cEl.offsetWidth;var newY=xy[1]+el.offsetHeight+(cEl.offsetWidth/2);YAHOO.util.Dom.setXY(ov,[newX,newY]);}
else{cEl.className="corner le_bg tl";var newX=xy[0]+el.offsetWidth+cEl.offsetWidth;var newY=xy[1]+el.offsetHeight+(cEl.offsetWidth/2);YAHOO.util.Dom.setXY(ov,[newX,newY]);}},hideOverlay:function(e,el){var ov=document.getElementById('overlay_iconRollover');ov.style.left="-5000px";}}}();
function addRollover(anId){
/*@cc_on
document.getElementById(anId).attachEvent('onmouseover',swapImages);
document.getElementById(anId).attachEvent('onmouseout',swapImages);
return true;
@*/    
document.getElementById(anId).addEventListener('mouseover',swapImages,false);document.getElementById(anId).addEventListener('mouseout',swapImages,false);}
function swapImages(e){if(!e)e=window.event;if(e.target)var o=e.target;else var o=e.srcElement;if(o.nodeType==3)o=o.parentNode;if(!o.src)return false;if(o.src.indexOf('_on')<0){o.src=(o.src.substr(0,o.src.length-4)+'_on'+o.src.substr(o.src.length-4));}
else{o.src=o.src.substr(0,o.src.length-7)+o.src.substr(o.src.length-4);}}
function inline_swapImages(o){if(!o.src)return false;if(o.src.indexOf('_on')<0){o.src=(o.src.substr(0,o.src.length-4)+'_on'+o.src.substr(o.src.length-4));}
else{o.src=o.src.substr(0,o.src.length-7)+o.src.substr(o.src.length-4);}}
function evenOddRowClass(rowName){var els=YAHOO.util.Dom.getElementsByClassName(rowName);for(var i=0;i<els.length;i++){if(i%2==0){YAHOO.util.Dom.addClass(els[i],'odd');}
else{YAHOO.util.Dom.addClass(els[i],'even');}}}
function formatGrid(){var els=YAHOO.util.Dom.getElementsByClassName('lens');for(var i=1;i<=els.length;i+=2){var leftEl=document.getElementById('body_'+i);var rightEl=document.getElementById('body_'+(i+1));if(rightEl){var leftHt=leftEl.offsetHeight;var rightHt=rightEl.offsetHeight;if(leftHt>rightHt){leftEl.style.height=leftHt+'px';rightEl.style.height=leftHt+'px';}
else{leftEl.style.height=rightHt+'px';rightEl.style.height=rightHt+'px';}}}}
function preparePrint(){if(typeof YAHOO==='object'){var contentBlocks=YAHOO.util.Dom.getElementsByClassName('tabContent','div','tabContentBlock')
for(var i=0;i<contentBlocks.length;i++){if(!(contentBlocks[i].style.display=='block')){contentBlocks[i].className="noD";contentBlocks[i].style.display="block";}}}
var pWin=window.open('/static/html/print_frame.html');testOpenInterval=setInterval(function(){if(pWin.document){clearInterval(testOpenInterval);setTimeout(function(){pWin.document.getElementById('body_content').innerHTML=document.body.innerHTML.replace(/<script\b[^>]*>([\s\S])*?<\/script>/ig,function(){return arguments[1]}).replace(/on(load|mouseover|click|mouseout)="(.*?)"/ig,'');pWin.print();},200);}},150);}
function productPrint(){if(document&&document.URL){if(document.URL.indexOf('?')>0){window.open(document.URL+'&mode=print');}
else{window.open(document.URL+'?mode=print');}}
else{if(window.location.href.indexOf('?')>0){window.open(window.location.href+'&mode=print');}
else{window.open(window.location.href+'?mode=print');}}}
function prepareLePrint(){if(window.location.href.indexOf('#')>-1){var urlParts=window.location.href.split('#');if(urlParts[1].indexOf('?')>0){var params=urlParts[1].split('?');window.open(urlParts[0]+'?'+params[1]+'&mode=print'+'#'+params[0]);}
else if(urlParts[0].indexOf('?')>0){window.open(urlParts[0]+='&mode=print'+'#'+urlParts[1]);}
else{window.open(urlParts[0]+='?mode=print'+'#'+urlParts[1]);}}
else if(window.location.href.indexOf('?')>0)
window.open(window.location.href+'&mode=print');else
window.open(window.location.href+'?mode=print');}
function horizCenter(cn){var nd=document.getElementById(cn);var fc=document.getElementById('firstChild_'+cn);nd.style.width=fc.offsetWidth+'px';}
function clearInput(el,txt){if(el.value==txt){el.value='';el.style.color='#000';}}
function fadeSwap(inEl,outEl){if(typeof inEl=='string')inEl=document.getElementById(inEl);if(typeof outEl=='string')outEl=document.getElementById(outEl);var anim=new YAHOO.util.Anim(inEl,{opacity:{to:1}},0.25,YAHOO.util.Easing.easeIn);var f=function(){new YAHOO.util.Anim(outEl,{opacity:{to:0}},0.25,YAHOO.util.Easing.easeOut).animate();}
anim.onStart.subscribe(f);anim.animate();}
function formatWrap(regExStr,charNumber){var els=YAHOO.util.Dom.getElementsByClassName('wrap');var reg=eval(regExStr);for(var i=0;i<els.length;i++){var h=els[i].innerHTML;if(h.length>charNumber){var m=reg.exec(h);if(m){var mStr=m[0];var idx=h.indexOf(mStr);els[i].innerHTML=h.substr(0,idx+mStr.length)+'<br/>'+h.substr(idx+mStr.length);}}}}
function loadProductTab(){var m=document.location.href.match(/tab=([^&]*)&?/);if(m){var param=m[1];var tabs=tabView.get('tabs');for(var i=0;i<tabs.length;i++){if(param.replace("%20"," ").toLowerCase()==tabs[i].get('href').substr(1).toLowerCase()){tabView.set('activeIndex',i);}}}}
function handeSort(el){var val=el.options[el.selectedIndex].value;var sUrl=window.location.href;sUrl=sUrl.indexOf('?')>0?sUrl:sUrl+'?';if(sUrl.indexOf('sort=')>0){window.location.href=sUrl.replace(/sort=([^&]*)/,function($0,$1){return'sort='+val});}
else{window.location.href=sUrl+"&sort="+val;}}
if(typeof YAHOO!='undefined'){YAHOO.util.Event.onDOMReady(function(){var el=document.getElementsByTagName('body')[0].firstChild;if(el.nodeType==3)el=el.nextSibling;el.style.width='990px';var fl=document.getElementsByTagName('link')[0];fl.parentNode.removeChild(fl);});}
function nikonMultilingual_init(){levelContent('top_l','div');levelContent('promo_links','div','bottom');levelContent('promo_summary','div',null,function(el){var pNode=YAHOO.util.Dom.getAncestorByClassName(el,'product_view');if(pNode&&pNode.getAttribute('data-pid')&&pNode.getAttribute('data-pName')){OmnitureHelper.setProdViewEvent([pNode.getAttribute('data-pid'),pNode.getAttribute('data-pName').replace(/'/ig,'&#39;').replace(/"/ig,'&quot;')]);}});levelContent('abstract','div');levelContent('listItem_inner','div');}
YAHOO.util.Event.onDOMReady(nikonMultilingual_init);
function fixIEwrap(el){if(typeof YAHOO!='undefined'&&YAHOO.env.ua.ie>0&&YAHOO.env.ua.ie<7){el=YAHOO.util.Dom.get(el);var maxWidth=parseInt(YAHOO.util.Dom.getStyle(el,'width'),10)
var pNode=el.parentNode.parentNode;YAHOO.util.Dom.setStyle(pNode,'marginRight','0');var pWidth=parseInt(YAHOO.util.Dom.getStyle(pNode,'width'),10);if(maxWidth>pWidth){YAHOO.util.Dom.setStyle(pNode,'width',maxWidth);}
else{maxWidth=pWidth;};pNode=pNode.parentNode;YAHOO.util.Dom.setStyle(pNode,'marginRight','0');if(maxWidth>parseInt(YAHOO.util.Dom.getStyle(pNode,'width'),10)){YAHOO.util.Dom.setStyle(pNode,'width',maxWidth);}
else{maxWidth=parseInt(YAHOO.util.Dom.getStyle(pNode,'width'),10);}
if(parseInt(YAHOO.util.Dom.getStyle(pNode,'width'),10)>950){YAHOO.util.Dom.setStyle(pNode,'width','996px');}
else{var pNode=pNode.parentNode;YAHOO.util.Dom.setStyle(pNode,'marginRight','0');var pWidth=parseInt(YAHOO.util.Dom.getStyle(pNode,'width'),10);if(maxWidth>pWidth){YAHOO.util.Dom.setStyle(pNode,'width',maxWidth);}
else if(pWidth>950){YAHOO.util.Dom.setStyle(pNode,'width','996px');}
if(YAHOO.util.Dom.getStyle(pNode.parentNode,'width').toLowerCase()!='auto'&&parseInt(YAHOO.util.Dom.getStyle(pNode.parentNode,'width'),10)>950){YAHOO.util.Dom.setStyle(pNode.parentNode,'width','996px');}
pNode=pNode.parentNode;while(pNode.parentNode.tagName.toLowerCase()!='body'){YAHOO.util.Dom.setStyle(pNode,'marginRight','0');if(maxWidth>parseInt(YAHOO.util.Dom.getStyle(pNode,'width'),10)){YAHOO.util.Dom.setStyle(pNode,'width',maxWidth);}
if(parseInt(YAHOO.util.Dom.getStyle(pNode.parentNode,'width'),10)>950){YAHOO.util.Dom.setStyle(pNode.parentNode,'width','996px');}
pNode=pNode.parentNode;}}
if(el.parentNode.style.display=='none'){el.parentNode.style.display='block';}}}
function fixTabHeights(e,o){if(!e.prevValue){var bd=YAHOO.util.Selector.query('div.bd',o.get('contentEl'),true);var tabHeight=YAHOO.util.Selector.query('ul.yui-nav','related_tabbed_content',true).offsetHeight;if(bd.offsetHeight<tabHeight){var topPadding=parseInt(YAHOO.util.Dom.getStyle(bd,'paddingTop'),10);var btmPadding=parseInt(YAHOO.util.Dom.getStyle(bd,'paddingBottom'),10);YAHOO.util.Dom.setStyle(bd,'height',(tabHeight-topPadding-btmPadding)+'px');if(o.get('contentEl').parentNode.offsetHeight<=tabHeight){YAHOO.util.Dom.setStyle(o.get('contentEl').parentNode,'height',o.get('contentEl').offsetHeight+'px');}}}}
function closeNoContentGap(elId){if(!elId)elId='contentBuffer__'
var el=document.getElementById(elId);var pEl=el.parentNode;if(pEl&&pEl.style.height!=''){pEl.style.height='0px';}
if(pEl&&pEl.style.minHeight!=''){pEl.style.minHeight='0px';}}
function fixArticleHeight(){var aEl=document.getElementById('container_article');var mEl=document.getElementById('media_center');if(mEl){if(aEl.offsetHeight<=(mEl.offsetHeight+mEl.offsetTop)){YAHOO.util.Event.onDOMReady(function(){setTimeout(function(){aEl.style.height=mEl.offsetHeight+mEl.offsetTop+40+'px'},100);});}}
if(typeof YAHOO!=='undefined'){if(YAHOO.util.Dom.hasClass('article_header','hd_light')){var hdEl=document.getElementById('article_header');var el=YAHOO.util.Selector.query('h1',hdEl,true);var hdHeight=parseInt(YAHOO.util.Dom.getStyle(el,'height'),10);if(isNaN(hdHeight)){hdHeight=el.offsetHeight;}
var lnHeight=parseInt(YAHOO.util.Dom.getStyle(el,'lineHeight'),10);if(hdHeight>=(4*lnHeight)){YAHOO.util.Dom.addClass(hdEl,'hd_doublePad');}
else if(hdHeight>=(3*lnHeight)){YAHOO.util.Dom.addClass(hdEl,'hd_pad');}}}}
var countrytimeoutHolder=null;function showCountries(){YAHOO.util.Dom.setStyle("countrySelector",'display',"block");return false;}
function hoverCountries(){clearTimeout(countrytimeoutHolder);}
function hideCountries(){countrytimeoutHolder=setTimeout(function(){YAHOO.util.Dom.setStyle("countrySelector",'display',"none")},500);}
function levelContent(className,elemType,align,cb){var els=YAHOO.util.Dom.getElementsByClassName(className,elemType);var highestHeight=0;var heightsArray=[];if(els.length>1){for(var i=0;i<els.length;i++){var thisHeight=els[i].offsetHeight;heightsArray[i]=thisHeight;if(thisHeight>highestHeight){highestHeight=thisHeight;}}
for(var i=0;i<els.length;i++){if(align=='middle'){var delta=highestHeight-heightsArray[i];var halfDelta=Math.round(delta/2);YAHOO.util.Dom.setStyle(els[i],'padding-top',halfDelta+"px");if(delta%2){YAHOO.util.Dom.setStyle(els[i],'padding-bottom',halfDelta+"px");}else{YAHOO.util.Dom.setStyle(els[i],'padding-bottom',(halfDelta+1)+"px");}}else if(align=='bottom'){var delta=highestHeight-heightsArray[i];YAHOO.util.Dom.setStyle(els[i],'padding-top',delta+"px");}else{YAHOO.util.Dom.setStyle(els[i],'height',highestHeight+"px");}
if(cb){cb(els[i]);}}}}
if(YAHOO.env.ua.ie>0&&YAHOO.env.ua.ie<7){YAHOO.util.Event.addListener(window,'load',function(){if(typeof DD_belatedPNG!=='undefined'){DD_belatedPNG.fix('h1.shifted, h2.shifted, h3.shifted, h4.shifted, div#hero img, div#list.product div.bd div.container img.product, div.promo_bw div.mid_c img.promoImg, table tr td img.png, img.camera, li.pv-item img.product');}});}
function resetForms(){}