String.implement({//simple regex doesn't work in ie. entityDecode: function(){ var replacements = new Hash({'lt':'<','gt':'>','amp':'&','quot':'"','#039':"'"}); return ( this.replace( new RegExp('&('+replacements.getKeys().join('|')+');', "gi"), function(replaceStr){return replacements[replaceStr.replace('&', '').replace(';', '')];} )); } }); window.addEvent('domready', function(){ /*FFx2 fix for navigation*/ if((function x(){})[-6]=='x'){ var p = $('box_navTop'); var e = p.getElement('.navTop').setStyle('float','left'); var ed = e.getDimensions(); var pd = p.getDimensions(); var pp = parseInt(p.getStyle('padding-left'), 10) + parseInt(p.getStyle('padding-right'), 10); var m = ((pd.width - pp) - (ed.width))/2; e.setStyles({'margin-left': m}); } /*last contxt margin*/ var lastCtxt = $$('.box_contxt div.space_b20'); if(lastCtxt && lastCtxt.length > 0) lastCtxt[lastCtxt.length-1].setStyle('margin-bottom', 0); /* ACCORDIONs */ $$('.box_cnt_accordion').each(function(element){ if(element.id != undefined) { var id = element.id; var myAccordion = ''; //check for id in a[name] in toggler... var show = 0; if(window.location.hash.replace('#','').toInt()){ var el = $$('#'+id+' .cnt_accordion_toggle a').filter(function(link){ return link.get('name')==window.location.hash.replace('#',''); })[0]; if(el){ var ev = el.getParent(); var show = ev.getAllPrevious('.cnt_accordion_toggle').length; //console.log(ev, show); } } var myAccordion = new Accordion($$('#'+id+' .cnt_accordion_toggle'), $$('#'+id+' .cnt_accordion_content'), {'show':show, 'opacity':false}); var numAccordionToggle = 0; $$('#'+id+' .cnt_accordion_toggle').each(function(element){ if(numAccordionToggle == 0) { element.addClass('on'); } else { element.addClass('off'); } numAccordionToggle++; }); myAccordion.addEvent('active', function(toggler, element){ toggler.removeClass('off'); toggler.addClass('on'); toggler.setStyles({ 'margin-bottom': '1px', 'border-bottom': '1px solid #ccc' }); }); myAccordion.addEvent('background', function(toggler, element){ toggler.addClass('off'); toggler.removeClass('on'); toggler.setStyles({ 'margin-bottom': 0, 'border-bottom': 0 }); }); } if(element.getChildren().length != 0){ element.getLast('.cnt_accordion_toggle').setStyles({ 'margin-bottom': 0, 'border-bottom': 0 }); } }); //.cnt_tabcontainer_panel (not exclusively) $$('ul.cnt_more_info_list li:last-child').setStyles({ 'margin-bottom': 0, 'border-bottom': 0 }); /* TABSWAPPER */ $$('.cnt_tabcontainer_tabset').setStyle('visibility', 'visible'); $$('.cnt_tabcontainer_panelheading').setStyle('display', 'none'); $$('.box_cnt_tabcontainer').each(function(element){ if(element.id != undefined) { var id= element.id; new TabSwapper({ selectedClass: 'on', deselectedClass: 'off', tabs: $$('#'+id+' li.tab'), clickers: $$('#'+id+' li.tab a'), sections: $$('#'+id+' div.cnt_tabcontainer_panelset div.cnt_tabcontainer_panel'), /*use transitions to fade across*/ smooth: false, smoothSize: false//, //cookieName: 'tabPosition'+id }); } }); /*more_info_list*/ $$('ul.cnt_more_info_list li').each(function(element){ if (!$$('ul.cnt_more_info_list').hasClass('cnt_article_list')) { if(!element.hasClass('heading') && !element.hasClass('padding') && element.getElement('div.descr') != null && element.getElement('div.strong') != null){ element.addEvent('mouseenter', function(event){ element.addClass('hover'); }); element.addEvent('mouseleave', function(event){ element.removeClass('hover'); }); } } }); $$('ul.cnt_more_info_list li.padding').each(function(element){ element.addEvent('mouseenter', function(event){ element.addClass('hover'); }); element.addEvent('mouseleave', function(event){ element.removeClass('hover'); }); element.addEvent('click', function(event){ var link = element.getElement('a'); var url = link.href; try{}catch(err){if(typeof link.onclick == 'function'){link.onclick();}} event.stop(); event.stopPropagation(); if(link.hasClass('popup')){ link.fireEvent('click', event); } else { if(link.get('target') == '_blank'){ popNewWin(url); return; } else { window.location = url; } } }); }); /*little helper*/ $$('.box_cnt_glossar .box_cnt_accordion div.on').each(function(element){ element.addEvent('mouseenter', function(event){element.addClass('hover');}); element.addEvent('mouseleave', function(event){element.removeClass('hover');}); }); $$('#frame_cnt a.popup, #frame_left a.popup').addEvent('click', function(ev){ ev.stop(); var dimensions = [800, 600]; if(this.rel && this.rel.test(/^popup/i)){ dimensions = this.rel.replace(/[[]|]/gi," ").split(' ')[1].split('x'); } if(this.hasClass('scroll')){ popGenericScroll(this.href, dimensions); return; } popGeneric(this.href, dimensions); }); /*END DOMREADY*/ }); /*quicksearch*/ var cachedQuickFinder = null; function loadQuickFinder(ulelement){ var jsonUrl = 'http://francais.bbraun.ch/cps/rde/xchg/bbraun-ch-fr/hs.xsl/productqf.json.txt'; if(cachedQuickFinder == null) var jsonRequest = new Request.JSON({url: jsonUrl, onComplete: function(result){ cachedQuickFinder = result; fillQuickFinder(ulelement, result); }}).get(); else{ //fillQuickFinder(ulelement, cachedQuickFinder); } } function fillQuickFinder(ulelement, result){ var resSize = result.length; ulelement = $(ulelement); var mainEls = ulelement.getChildren(); for(var i=0; i < resSize; i++){ var numSubRes = result[i].sub; mainEls[i].adopt(createQuickFinderlist(result[i].sub)); } quickFinderEvents(ulelement); } function createQuickFinderlist(productList){ var numItems = productList.length; var ulEl = new Element('ul'); var liEls = []; var linkBase = 'http://francais.bbraun.ch/cps/rde/xchg/bbraun-ch-fr/hs.xsl/'; for (var i = 0;i < numItems;i++){ liEls[i] = new Element('li').adopt(new Element('a', {'href':linkBase+productList[i].url, 'html': productList[i].name+' '})); if(productList[i].sub.length > 0){ liEls[i].adopt(createQuickFinderlist(productList[i].sub)) } ulEl.adopt(liEls[i]); } return ulEl; } function quickFinderEvents(ulelement){ ulelement.getElements('li').each(function(el) { if(el.getElements('ul').length > 0) { el.addEvent('mouseenter', function(ev){ el.store('mouseentered', true); //el.getElement('a').setStyle('font-weight', 'bold');#C2284E el.getElement('a').setStyle('color', '#C2284E'); var ul = el.getElement('ul'); ul.setStyle('display', 'block'); ul.setStyle('z-index', '1000'); ul.setStyle('height', 'auto'); //console.log(ul.getSize().y, (element.getSize().y)-1); //console.log(element); if((ul.getSize().y -2) > (ulelement.getSize().y)-1) { //element.setStyle('height', ul.getSize().y+1); ulelement.getParent().getElements('ul').setStyle('height', ul.getSize().y-2); }else { ul.setStyle('height', (ulelement.getSize().y)-1); } ie6QuickFinderFrame(ulelement, ul); if(el.getParent().getParent().tagName == 'DIV'&& !Browser.Engine.trident)//only first sublevel el.getElement('ul').setStyle('opacity', 0.9); }); el.addEvent('mouseleave', function(ev){ el.store('mouseentered', false); var mouseLeaveFunc = function(el) { if(this.retrieve('mouseentered')) { return; } this.getElement('ul').setStyle('display', 'none'); ie6QuickFinderFrame(ulelement, this.getElement('ul')); if(this.getParent().getParent().tagName == 'DIV' && !Browser.Engine.trident) //only first sublevel this.getElement('ul').setStyle('opacity', 1); } mouseLeaveFunc.delay(500, el); el.getElement('a').setStyle('color', '#666'); el.getElement('ul').setStyle('z-index', '1'); }); } }); } function ie6QuickFinderFrame(ul, ulelement){ if(!Browser.Engine.trident) { return; } var ieFrame = $$('#ie6PrQuIframe'); if(ieFrame.length == 0) { var ieFrame = new Element('iframe',{'src':'about:blank', 'id':'ie6PrQuIframe'}).inject(ul, 'before'); } var maxX = 0; $$('.box_QuickFinder ul').each(function(el){ if(el.getPosition().x > maxX) { maxX = el.getPosition().x; } }); var iHeight = ul.getSize().y; ieFrame.setStyle('width', maxX + 117).setStyle('height', iHeight); } window.addEvent('domready', function(){ /*QUICKFINDER*/ /* hide last border, first level */ $$('ul.quicksearch_list > li:last-child').each(function(element){ element.setStyle('border-bottom-width', '0px'); }); /*init quickfinder*/ $$('.box_QuickFinder').each(function(element){ var trigger = element.getElements('img.quicksearch_trigger')[0]; var triggered = element.getElements('img.quicksearch_triggered')[0]; if(trigger != null) { trigger.addEvent('click', function(event){ var finderElement = event.target.getParent().getParent(); //debug(finderElement); if(finderElement == null || finderElement.getElement('ul') == null){return;} finderElement.getElement('img.quicksearch_trigger').setStyle('display', 'none'); finderElement.getElement('img.quicksearch_triggered').setStyle('display', 'block'); finderElement.getElement('ul').setStyle('display', 'block'); var quickFinderMenu = finderElement.getElement('ul'); loadQuickFinder(quickFinderMenu); quickFinderMenu.setStyle('display', 'block'); var menuHeight = quickFinderMenu.getSize().y; //console.log(menuHeight); quickFinderMenu.getElements('ul').setStyle('height', menuHeight-1); //finderElement.getElements('ul li').setStyle('opacity', 1); }); triggered.addEvent('click', function(event){ var finderElement = event.target.getParent().getParent(); finderElement.getElement('img.quicksearch_trigger').setStyle('display', 'block'); finderElement.getElement('img.quicksearch_triggered').setStyle('display', 'none'); //finderElement.getElements('ul li').setStyle('opacity', 0); finderElement.getElement('ul').setStyle('display', 'none'); }); // debug(element.getElements('li>ul')); if(element.hasClass('on')) { trigger.fireEvent('click', {'target':trigger}); //element.getElement('img.quicksearch_trigger').setStyle('display', 'none'); //element.getElement('img.quicksearch_triggered').setStyle('display', 'block'); //element.getElement('ul').setStyle('display', 'block'); //element.getElements('ul li').setStyle('opacity', 1); } } }); /*END DOMREADY*/ }); /*quicksearch*/ window.addEvent('domreadybak', function(){ /*QUICKFINDER*/ /* hide last border, first level */ $$('ul.quicksearch_list > li:last-child').each(function(element){ element.setStyle('border-bottom-width', '0px'); }); /*init quickfinder*/ $$('.box_QuickFinder').each(function(element){ var trigger = element.getElements('img.quicksearch_trigger')[0]; var triggered = element.getElements('img.quicksearch_triggered')[0]; if(trigger != null) { trigger.addEvent('click', function(event){ var finderElement = event.target.getParent().getParent(); //debug(finderElement); finderElement.getElement('img.quicksearch_trigger').setStyle('display', 'none'); finderElement.getElement('img.quicksearch_triggered').setStyle('display', 'block'); finderElement.getElement('ul').setStyle('display', 'block'); var quickFinderMenu = finderElement.getElement('ul'); quickFinderMenu.setStyle('display', 'block'); var menuHeight = quickFinderMenu.getSize().y; //console.log(menuHeight); quickFinderMenu.getElements('ul').setStyle('height', menuHeight-1); //finderElement.getElements('ul li').setStyle('opacity', 1); }); triggered.addEvent('click', function(event){ var finderElement = event.target.getParent().getParent(); finderElement.getElement('img.quicksearch_trigger').setStyle('display', 'block'); finderElement.getElement('img.quicksearch_triggered').setStyle('display', 'none'); //finderElement.getElements('ul li').setStyle('opacity', 0); finderElement.getElement('ul').setStyle('display', 'none'); }); element.getElements('li').each(function(el) { if(el.getElements('ul').length > 0) { el.addEvent('mouseenter', function(ev){ el.getElement('a').setStyle('font-weight', 'bold'); el.getElement('ul').setStyle('display', 'block'); if(el.getParent().getParent().tagName == 'DIV')//only first sublevel el.getElement('ul').setStyle('opacity', 0.9); }); el.addEvent('mouseleave', function(ev){ el.getElement('a').setStyle('font-weight', 'normal'); el.getElement('ul').setStyle('display', 'none'); if(el.getParent().getParent().tagName == 'DIV') //only first sublevel el.getElement('ul').setStyle('opacity', 1); }); } }); // debug(element.getElements('li>ul')); if(element.hasClass('on')) { element.getElement('img.quicksearch_trigger').setStyle('display', 'none'); element.getElement('img.quicksearch_triggered').setStyle('display', 'block'); element.getElement('ul').setStyle('display', 'block'); //element.getElements('ul li').setStyle('opacity', 1); } } }); /*END DOMREADY*/ }); /* AUTOCOMPLETER*/ var cachedAutoCompleteString = ''; var cachedAutoCompleteResult = {}; window.addEvent('domready', function(){ $$('input.search_input').each(function(element){ element.store('orgvalue', element.value); element.addEvent('focus', function(event){ if(event.target.value==event.target.retrieve('orgvalue')) event.target.value=""; }); element.addEvent('blur', function(event){ if(event.target.value=="") { event.target.value=event.target.retrieve('orgvalue'); } }); }); $$('#main_search').each(function(element){ /*element.addEvent('focus', function(ev){ if($('main_search').value == 'search')$('main_search').value = ''; });*/ element.addEvent('keydown', function(event){ (function(){ var search = event.target.value; if(search.length < 2) { bbraunAutocomplete({}, ''); return; } bbraunAutocompleteSearch(search); }).delay(30) //bbraunAutocompleteSearch(search).delay(15); }); }); $(document.body).addEvent('click', function(ev){//close suggested search var bsa = $('box_search_autocomplete'); if(!bsa){return;} if(bsa.style.display == 'block' && !$(ev.target).getParent('#box_search_autocomplete')){ bsa.style.display = 'none'; } }); }); function bbraunAutocompleteSearch(searchString) { if(cachedAutoCompleteString.length == 0 || searchString.match(cachedAutoCompleteString) == null) { //if($('main_search').value.length > searchString) var jsonUrl = 'http://francais.bbraun.ch/cps/rde/xchg/bbraun-ch-fr/hs.xsl/'; searchString = $('main_search').value; var jsonRequest = new Request({url: jsonUrl+"getSuggestions.txt", onComplete: function(resultText){ if(!resultText.contains('{')){ var result = {}; } else { var result = JSON.decode(resultText); } cachedAutoCompleteString = searchString; cachedAutoCompleteResult = result; bbraunAutocomplete(result, ''); }}).get({'q': searchString}); } else { bbraunAutocomplete(cachedAutoCompleteResult, searchString); } } function bbraunAutocomplete(obj, filterStr) { //obj = $(obj); //debug(filterStr, obj); filterStr = $('main_search').value; $('box_search_autocomplete').empty(); var newResult = new Element('ul'); if(obj.length > 0) { var i = 0; obj.each(function(result){ var docCheckVisible = ((result.doccheck && result.sessDocCheck) || !result.doccheck) if(filterStr != '') { //if(result.name.toLowerCase().match(filterStr.toLowerCase()) != null || result.teaser.toLowerCase().match(filterStr.toLowerCase()) != null || result.prid.toLowerCase().match(filterStr.toLowerCase()) != null) { if(result.name.toLowerCase().indexOf(filterStr.toLowerCase()) == 0) { var newli = bbraunAutocompleteNewSection(result.name, result.teaser, result.img, result.prid, docCheckVisible ); //debug(newli); //if(i == 0) {newli.addClass('first');} newli.inject(newResult); i++; } } else { var newli = bbraunAutocompleteNewSection(result.name, result.teaser, result.img, result.prid, docCheckVisible ); //if(i == 0) {newli.addClass('first');} newli.inject(newResult); i++; } }); } //debug(newResult.getChildren().length) var headlineLi = new Element('li', { 'class': 'search_autocomplete_header', 'html': 'Produits' }); var viewAllLi = new Element('li', { 'class': 'search_autocomplete_footer', 'html': 'Voir toutes les résultats' }).addEvent('click', function(ev){$(document.body).getElement('form').submit();}); if(newResult.getChildren().length > 0) { headlineLi.inject(newResult, 'top'); viewAllLi.inject(newResult, 'top'); $('box_search_autocomplete').setStyle('display', 'block'); $('box_search_autocomplete').setStyle('opacity', 0.9); } else { $('box_search_autocomplete').setStyle('display', 'none'); /* //no-products-found-box. not needed yet. var noresLi= new Element('li', { 'class': 'search_autocomplete_header', 'html': 'No Products found' }); headlineLi.inject(newResult, 'top'); noresLi.inject(newResult); viewAllLi.inject(newResult); $('box_search_autocomplete').setStyle('display', 'block'); $('box_search_autocomplete').setStyle('opacity', 0.9); */ } // debug(newResult); if(filterStr.length < 2){ $('box_search_autocomplete').setStyle('display', 'none'); } newResult.inject($('box_search_autocomplete')); } function bbraunAutocompleteNewSection(name, teaser, image, url, docCheckVisible ){ var imgStr = ""; var jsonUrl = 'http://francais.bbraun.ch/cps/rde/xchg/bbraun-ch-fr/hs.xsl/'; if(image != ""){imgStr = ''+name+'';} if(docCheckVisible){teaser = teaser.entityDecode();}else{teaser='Cette page est protégée par DocCheck. DocCheck est un service Internet d’identification pour médecins et pharmaciens. Veuillez vous inscrire pour obtenir un mot de passe. Après avoir reçu votre mot de passe, vous pourrez vous connecter.';} return new Element('li', { 'html': ''+imgStr+''+name.entityDecode()+''+teaser+'' }); } /*TOOLTIPS*/ //remove the flipping behaviour Tips.implement( { position: function(event){ var size = window.getSize(), scroll = window.getScroll(); var tip = {x: this.tip.offsetWidth, y: this.tip.offsetHeight}; var props = {x: 'left', y: 'top'}; for (var z in props){ var pos = event.page[z] + this.options.offsets[z]; //if ((pos + tip[z] - scroll[z]) > size[z]) pos = event.page[z] - this.options.offsets[z] - tip[z]; this.tip.setStyle(props[z], pos); } } } ); //init window.addEvent('domready', function(){ var myTips = new Tips('a.tooltipArea', {className:'toolTipContainer'}); $$('a.tooltipArea').each(function(el){ el.store('tip:text', el.getAttribute('rel')+' '); //add nonbreaking space -> opacity on firefox sometimes renders last char incorrectly }); myTips.addEvent('show', function(tip){ tip.setStyles({'visibility':'visible', 'opacity': 0.9}); }); //small ones ('websites'-page) var myTipsSmall = new Tips('a.tooltipAreaSmall', {className:'toolTipContainerSmall'}); $$('a.tooltipAreaSmall').each(function(el){ el.store('tip:text', el.getAttribute('rel')+' '); }); myTipsSmall.addEvent('show', function(tip){ tip.setStyles({'visibility':'visible', 'opacity': 0.9}); }); }); /* CHOOSE LOCATION */ window.addEvent('domready', function(){ $$('.box_imgMap .continent_chooser a, .box_imgMap map area').each(function(el){ el.addEvent('click', function(ev){ $$('.box_imgMap .continent_chooser a').setStyle('font-weight', 'normal'); ev.target.setStyle('font-weight', 'bold'); var searchFor = ev.target.getAttribute('rel'); $$('.box_imgMap .choose_location')[0].getChildren().setStyle('display', 'none'); $$('.box_imgMap .choose_location .continent')[0].setStyle('display', 'inline'); var contRequest = new Request({method: 'get', url: searchFor, onSuccess: function(responseText, responseXML){ responseText = this.response.text; responseXML = this.response.xml; $$('.box_imgMap .choose_location .continent')[0].innerHTML = responseText; //get links in continent $$('.box_imgMap .choose_location .continent')[0].getElements('a').addEvent('click', function(event){ $$('.box_imgMap .choose_location .continent a').setStyle('font-weight', 'normal'); event.target.setStyle('font-weight', 'bold'); //console.log(event.target); var searchFor = event.target.getAttribute('rel'); $$('.choose_location .country, .choose_location .location').setStyle('display', 'none'); $$('.choose_location .country')[0].setStyle('display', 'inline'); var countrRequest = new Request({method: 'get', url: searchFor, onSuccess: function(responseText, responseXML){ responseText = this.response.text; responseXML = this.response.xml; $$('.box_imgMap .choose_location .country')[0].innerHTML = responseText; //get links in continent $$('.box_imgMap .choose_location .country')[0].getElements('a').addEvent('click', function(event){ $$('.box_imgMap .choose_location .country a').setStyle('font-weight', 'normal'); event.target.setStyle('font-weight', 'bold'); //console.log(event.target); var searchFor = event.target.getAttribute('rel'); $$('.choose_location .location')[0].setStyle('display', 'inline'); //.load('location.php?q='+searchFor+'&what=location'); var locRequest = new Request({method: 'get', url: searchFor, onSuccess: function(responseText, responseXML){ responseText = this.response.text; responseXML = this.response.xml; $$('.box_imgMap .choose_location .location')[0].innerHTML = responseText; }}).send(); event.stop(); }); }}).send(); event.stop(); }); }}).send(); ev.stop(); }); }); $$('#box_imgMap_map').each(function(el){ el.store('oldsrc', el.getProperty('src')); }); $$('.continent_chooser a, .box_imgMap map area').each(function(el){ el.addEvent('mouseout', function(){ //console.log($$('img#box_imgMap_map')); $('box_imgMap_map').setProperty('src', $('box_imgMap_map').retrieve('oldsrc')); }); el.addEvent('mouseover', function(ev){ //console.log('img/img_map'+el.getAllPrevious().length+'.jpg') $$('#box_imgMap_map').setProperty('src', alternateImages[el.getAllPrevious().length]); }); el.addEvent('click', function(ev){ $$('#box_imgMap_map').store('oldsrc', $('box_imgMap_map').getProperty('src')); }); }); $$('.box_imgMap map area').each(function(el){ el.addEvent('click', function(ev){ var elNum = el.getAllPrevious().length; $$('.box_imgMap .continent_chooser a')[elNum].setStyle('font-weight', 'bold'); }); }); }); /* PRINT */ window.addEvent('domready', function(e){ $$('a.print').each(function(el){ el.addEvent('click', function(ev){ ev.stop(); //do not follow href... ev.stopPropagation(); //var printWindow = window.open(el.href, "bbraun_print", 'status=0,toolbar=0,location=0,menubar=0,directories=0,scrollbars=1,height=689,width=488'); if(el.hasClass('print2')){ //press release: more width var printWindow = window.open(el.href, "bbraun_print2", 'status=0,toolbar=0,location=0,menubar=0,directories=0,scrollbars=1,height=689,width=666'); } else { var printWindow = window.open(el.href, "bbraun_print", 'status=0,toolbar=0,location=0,menubar=0,directories=0,scrollbars=1,height=689,width=488'); } printWindow.onload = function(){ if (window.focus) {printWindow.focus();} //printWindow.print(); }; }); }); if(!$(document.body).hasClass('pdf') && typeof $('box_navTop') == 'object')if($$('#box_navTop')[0] && $$('#box_navTop')[0].getStyle('display')=='none'){ $$('.box_contxt').each(function(el){ if($$('.box_cnt')[1]){ el.inject($$('.box_cnt')[1], 'top').setStyle('display', 'block'); } }); $$('.cnt_accordion_content').each(function(element){element.setStyle('height', 'auto');}); } }); window.addEvent('domready', function(e){ if(Browser.Engine.trident) { $$('.box_cnt_glossar .box_cnt_accordion div.cnt_accordion_toggle').each(function(element){ element.addEvent('mouseenter', function(event){element.addClass('hover');}); element.addEvent('mouseleave', function(event){element.removeClass('hover');}); }); } }); /* Pop-Up GoogleMaps */ function popGoogleMaps(url) { newwindow=window.open(url,'GoogleMapsWin',"width=500,height=300,location=no,menubar=no,resizable=yes,status=yes,toolbar=no,top="+((screen.height-300)/2)+",left="+((screen.width-500)/2)); if (window.focus) {newwindow.focus()} return false; } function popNewWin(url) { newwindow=window.open(url,'',''); if (window.focus) {newwindow.focus()} return false; } function popGeneric(url, dimensions, scroll) { if(!dimensions || !dimensions[0] || !parseInt(dimensions[0],10) || !parseInt(dimensions[1],10)){dimensions = [800,600];} newwindow=window.open(url,'BBraunWin',"width="+dimensions[0]+",height="+dimensions[1]+",location=no,menubar=no,resizable=yes,status=yes,"+(scroll?"scrollbars=1,":'')+"toolbar=no,top="+((screen.height-dimensions[1])/2)+",left="+((screen.width-dimensions[0])/2)); if (window.focus && newwindow.focus) {newwindow.focus()} return false; } function popGenericScroll(url, dimensions) { return popGeneric(url, dimensions, true); } /* NEWS+PHOTO AUTOSUBMIT */ window.addEvent('domready', function(e){ $$('.cnt_pressphoto_select select').addEvent('change', function(ev){ var el = ev.target; if(!el.hasClass('noauto')){ el.getParent('form').submit(); } }); }); /*lightbox loc*/ var bbr_lb_img = 'Bild'; var bbr_lb_of = 'von'; /*sitemap*/ window.addEvent('domready', function(){ $$('.box_sitemap').each(function(el){ var siteAccordion = new Accordion(el.getElements('h4'), el.getElements('.box_sitemap_cnt'), {'show':0, 'opacity':false, 'alwaysHide':true, 'show': -1}); el.getElements('h4').addEvent('click', function(ev){ ev.stop(); //do not follow href... ev.stopPropagation(); }); siteAccordion.addEvent('active', function(toggler, element){ element.getParent().addClass('box_sitemap_active').setStyle('margin-bottom', '25px'); }); siteAccordion.addEvent('background', function(toggler, element){ element.getParent().removeClass('box_sitemap_active').setStyle('margin-bottom', '0');; }); }); }); /* lists, floated images and IE */ window.addEvent('domready', function(){ if(Browser.Engine.trident) { $$('.cnt_img_text').each(function(el){ if( el.getElement('div.img_lt') != null && el.getElement('ul') != null ){ var imgwidth = el.getElement('img').getSize.x + 10; el.getElements('ul').setStyle('margin-left', imgwidth); } }); $$('div.prodNav_4levels').each(function(el){ if(el.getChildren().length == 1) { el.getElement('.lvl1').setStyle('clear', 'left'); } else { $$('div.lvl4').each(function(el){ el.getParent().setStyle('width', '732px').setStyle('margin-right', '-20px'); }); } }); /* $$('div.lvl2').each(function(el){ el.getParent().setStyle('width', '357px'); }); $$('div.lvl3').each(function(el){ el.getParent().setStyle('width', '543px'); });*/ } }); /* email replace*/ window.addEvent('domready', function(){ $$('span.mailreplace').each(function(el){ var linkClass = 'more'; if(el.hasClass('noMore')){ linkClass = ''; } var mail = el.get('text').replace(/ \[dot\] /g, '.').replace(' [at] ', '@'); var mailt = mail; if (mail.length > 23 && el.getParent('.box_contxt')){ mailt = mail.replace('@', '@ '); } new Element('a',{ 'href': 'mailto:'+mail, 'text': mailt, 'class': linkClass }).replaces(el); }); }); /* BMI Calculator */ var BmiCalc = new Class({ Implements: [Events, Options], options: { container: $(document.body), strings: { weight: '', height: '', send: '', cancel: '', yourBmi: '', comment: '', results: [ '', '', '', '', '', '' ] } }, initialize: function(options){ this.setOptions(options); this.buildForm(); }, calc: function(options) { if(!options.height || !options.weight){ return; } var m = options.height / 100; return (options.weight/(m*m)).round(2); }, calcOutput: function(options) { var bmi = this.calc(options); if(!bmi){ $('bmi_output').setStyle('display', 'none'); return; } var comment = ''; if (bmi >= 40.00) { comment = this.options.strings.results[0];} else if (bmi >=35.00 && bmi < 40) {comment = this.options.strings.results[1];} else if (bmi >=30.00 && bmi < 35) {comment = this.options.strings.results[2];} else if (bmi >=25.00 && bmi < 30) {comment = this.options.strings.results[3];} else if (bmi >=18.50 && bmi < 25) {comment = this.options.strings.results[4];} else if (bmi < 18.50) { comment = this.options.strings.results[5];} $('bmi_output').setStyle('display', 'block'); $('bmi_result').set('text', bmi); $('bmi_comment').set('html', comment); }, buildForm: function(options){ this.form = new Element('form', {html:'

BMI

' +'' +'
' +'
' +'' }).inject(new Element('div', {id:'frame_formbuilder'})); this.form.getParent().inject(this.options.container); this.form.addEvent('submit', function(ev){ ev.stop(); this.calcOutput({height:$('bmi_height').get('value'), weight:$('bmi_weight').get('value')}); }.bind(this)); $('bmi_cancel').addEvent('click', function(){$('bmi_output').setStyle('display', 'none');}); } }); var bmi = null; window.addEvent('domready', function(ev){ if($('bmi_calc')){ bmi = new BmiCalc({container:$('bmi_calc')}); } });