var NetronautUI_Widget=new Class({Implements:Events,ie:Browser.Engine.trident,ie6:Browser.Engine.trident&&Browser.Engine.version=='4',ie7:Browser.Engine.trident&&Browser.Engine.version=='5',ie8:Browser.Engine.trident&&Browser.Engine.version=='6',dom:{},options:{},initialize:function(el,options){switch($type(el)){case false:this.dom.el=new Element('div');break;case'object':this.dom.el=el.dom.container;this.dom.object=el;this.dom.object.fireEvent('addedToWidget',[this]);break;default:this.dom.el=el;};this.dom.el.addClass('netronautui-widget');this.dom.container=this.dom.el;this.dom.hitarea=[];if(options)this.setOptions(options);this.render();},setOptions:function(options){for(var i in options){this.options[i]=options[i];}},render:function(){},open:function(){this.dom.container.setStyle('display','block');},close:function(){this.dom.container.setStyle('display','none');},setSize:function(size){if($type(size.x))this.dom.container.setStyle('width',size.x);if($type(size.y))this.dom.container.setStyle('height',size.y);this.fireEvent('resize');return this;},getSize:function(){return this.dom.container.measure(function(){return this.getSize()});},position:function(options){this.dom.container.position(options);return this;},setPosition:function(position){this.dom.container.setPosition(position);return this;},getPosition:function(){return this.dom.container.measure(function(){return this.getPosition()});},closeOnClick:function(event){node=event.target;while(node){var found=false;this.dom.hitarea.each(function(item){if(node==item){found=true;}});if(found)return;node=node.parentNode;};this.close();}});var NetronautUI_Window=new Class({Extends:NetronautUI_Widget,options:{visible:false,overlayOpacity:0.8,autoClose:false,addOverlay:false,positionOnTarget:false,position:'fixed',alwaysInView:false},visible:false,fxFrame:null,fxOverlay:null,initialize:function(el,options){this.parent(el,options);this.dom.hitarea=[this.dom.container];if(this.ie7||this.ie6){this.setInnerSize({x:this.dom.el.measure(function(){return this.getSize().x})});};if(this.options.autoClose==true){var closeOnEsc=function(event){if(event.key=='esc')this.close();}.bind(this);var autoclose=this.closeOnClick.bind(this);this.addEvent('open',function(){document.addEvent('mousedown',autoclose);document.addEvent('keyup',closeOnEsc);});this.addEvent('close',function(){document.removeEvent('mousedown',autoclose);document.removeEvent('keyup',closeOnEsc);});};if(this.options.addOverlay==true&&this.ie6){var windowChange=this.ieOverlayFix.bind(this);this.addEvent('beforeOpen',function(){windowChange();window.addEvent('scroll',windowChange).addEvent('resize',windowChange);});this.addEvent('close',function(){window.removeEvent('scroll',windowChange).removeEvent('resize',windowChange);});};if(this.options.visible==true){this.open();}},render:function(){if(this.options.addOverlay==true){var o=this.dom.overlay=new Element('div').setStyles({opacity:this.options.overlayOpacity,backgroundColor:'#000000',position:'fixed',width:'100%',height:'100%','z-index':9998}).setStyle('display','none').inject(document.getElement('body')).setPosition({x:0,y:0});if(this.ie6)o.setStyle('position','absolute');};var c=this.dom.container=new Element('div',{'class':'netronaut-ui-window'}).setStyle('display','none').inject(document.getElement('body')).adopt(new Element('div',{'class':'skin-topleft'}).adopt(new Element('div',{'class':'skin-topright'}).adopt(new Element('div',{'class':'skin-top'}))),new Element('div',{'class':'skin-left'}).adopt(new Element('div',{'class':'skin-right'}).adopt(new Element('div',{'class':'skin-center'}).adopt(this.dom.el))),new Element('div',{'class':'skin-bottomleft'}).adopt(new Element('div',{'class':'skin-bottomright'}).adopt(new Element('div',{'class':'skin-bottom'})))).setStyle('z-index',9999);c.setStyle('position',this.options.position);if(this.ie6)c.setStyle('position','absolute');this.dom.el.setStyles({'display':'','visibility':'visible'});},open:function(event){if(this.visible)return;this.fireEvent('beforeOpen',event);if(event&&this.options.positionOnTarget){this.position({'relativeTo':event.target,'position':(this.options.positionOnTarget.position?this.options.positionOnTarget.position:'center'),'edge':(this.options.positionOnTarget.edge?this.options.positionOnTarget.edge:'center')});if(this.options.alwaysInView){var size=this.getSize();var winSize=window.getSize();var winScroll=window.getScroll();this.positionAdjustMinMax({x:winScroll.x,y:winScroll.y},{x:winScroll.x+winSize.x-size.x,y:winScroll.y+winSize.y-size.y});}};this.dom.container.style.display='';this.fxFrame=new Fx.Tween(this.dom.container,{property:'opacity',duration:200}).set(0).start(1);if(this.options.addOverlay==true){this.dom.overlay.style.display='';this.fxOverlay=new Fx.Tween(this.dom.overlay,{property:'opacity',duration:200}).set(0).start(this.options.overlayOpacity);};this.visible=true;this.fireEvent('open',event);return this;},close:function(){this.fireEvent('beforeClose');if(this.dom.container.getStyle('display')=='none')return;this.fxFrame.cancel();this.dom.container.style.display='none';if(this.options.addOverlay==true){this.fxOverlay.cancel();this.dom.overlay.style.display='none';};this.visible=false;this.fireEvent('close');return this;},positionAdjustMinMax:function(minimum,maximum){var pos=this.getPosition();if(pos.x<minimum.x)pos.x=minimum.x;if(pos.x>maximum.x)pos.x=maximum.x;if(pos.y<minimum.y)pos.y=minimum.y;if(pos.y>maximum.y)pos.y=maximum.y;this.setPosition(pos);},setSize:function(size){var center=this.dom.container.getElement('.skin-center');this.setInnerSize({x:!$type(size.x)?null:size.x-parseInt(center.getStyle('margin-left'))-parseInt(center.getStyle('margin-right')),y:!$type(size.y)?null:size.y-this.dom.container.getElement('.skin-top').getSize().y-this.dom.container.getElement('.skin-bottom').getSize().y});return this;},setInnerSize:function(size){var center=this.dom.container.getElement('.skin-center');if($type(size.x))center.setStyle('width',size.x);if($type(size.y))center.setStyle('height',size.y);if(this.ie6||this.ie7)this.ieSizeFix();this.fireEvent('resize',size);return this;},increaseZIndex:function(increase){var increase=increase|1;this.dom.container.setStyle('z-index',parseInt(this.dom.container.getStyle('z-index'))+increase);},ieSizeFix:function(){var center=this.dom.container.getElement('.skin-center');var size=center.measure(function(){return this.getSize()});this.dom.container.setStyle('width',size.x+parseInt(center.getStyle('margin-left'))+parseInt(center.getStyle('margin-right')));this.dom.container.getElement('.skin-top').setStyle('width',size.x);this.dom.container.getElement('.skin-bottom').setStyle('width',size.x);},ieOverlayFix:function(){this.dom.overlay.setStyle('height',window.getSize().y);this.dom.overlay.position();}});;var NetronautUI_WindowDecorator=new Class({Extends:NetronautUI_Widget,initialize:function(el,options){this.parent(el,options);this.dom.object.addEvent('open',this.open.bind(this));this.dom.object.addEvent('close',this.close.bind(this));},render:function(){this.dom.el.addClass('netronautui-windowdecorator');if(this.options.closeButton){var options=this.options.closeButton;options.offset=options.offset||{x:0,y:0};var closeButton=new Element('button',{'class':'close','events':this.options.closeButton.events,'styles':{'position':'relative'}}).inject(this.dom.container);var placeButton=function(){closeButton.setStyles({'left':this.getSize().x-parseInt(closeButton.getStyle('width'))/2+options.offset.x,'top':-(this.getSize().y-parseInt(closeButton.getStyle('height'))/2)+options.offset.y});}.bind(this.dom.object);this.dom.object.addEvent('open',placeButton);this.dom.object.addEvent('resize',placeButton);}}});var NetronautUI_Widgets_Iframe=new Class({Extends:NetronautUI_Widget,initialize:function(el,options){this.parent(el,options);this.addEvent('addedToWidget',function(target){target.addEvent('resize',function(size){this.setSize(size);this.dom.loader.setPosition({x:(this.getSize().x-parseInt(this.dom.loader.getStyle('width')))/2,y:(this.getSize().y-parseInt(this.dom.loader.getStyle('height')))/2});}.bind(this));});this.dom.iframe.addEvent('load',function(){this.dom.loader.setStyle('display','none');this.dom.iframe.setStyle('display','block');}.bind(this))},render:function(){this.dom.el.addClass('netronautui-widgets-iframe');this.dom.loader=new Element('div',{'class':'netronautui-loader',styles:{'position':'relative','display':'none'}}).inject(this.dom.el);this.dom.iframe=new Element('iframe').set('frameborder',0);if(this.options.name){this.dom.iframe.name=this.options.name;}},load:function(url){url=url||'';this.dom.loader.setStyle('display','block');this.dom.iframe.setStyle('display','none').inject(this.dom.el).src=url;}});;var NetronautUI_Widgets_Calendar=new Class({Extends:NetronautUI_Widget,options:{date:null,viewDate:null,limit:{from:null,to:null},days:null,months:null,markCurrent:true},monthItems:[],initialize:function(el,options){options=options||{};options.date=options.date||new Date();options.days=options.days||Locale.get('Date.days');options.months=options.months||Locale.get('Date.months');this.parent(el,options);this.dom.previous.addEvent('click',this.viewMonthRelative.pass(-1,this));this.dom.next.addEvent('click',this.viewMonthRelative.pass(1,this));},render:function(){this.dom.el.addClass('netronautui-calendar');this.dom.head=new Element('div',{'class':'netronautui-calendar-header'}).adopt(this.dom.previous=new Element('button',{'type':'button','class':'button netronautui-calendar-previous'}),this.dom.next=new Element('button',{'type':'button','class':'netronautui-calendar-next'}),this.dom.caption=new Element('div',{'class':'netronautui-calendar-caption'})).inject(this.dom.el);var thead=new Element('thead').adopt(tr=new Element('tr'));Array.each(this.options.days,function(day){new Element('td',{text:day.substr(0,1),href:'javascript:void(0);',title:day}).inject(tr);});this.dom.calendar=new Element('table',{'class':'netronautui-calendar-calendar'}).inject(this.dom.el).adopt(thead,new Element('tbody'));return this;},viewMonth:function(date){var date=(date||this.options.viewDate||this.options.date||new Date()).clone().clearTime();this.options.viewDate=date;this.dom.caption.set('text',this.options.months[date.get('month')]+' '+date.get('year'));var d=date.clone().set('date',1);var month_start_day=d.get('day');var days_to_display=Math.ceil((month_start_day+d.get('lastdayofmonth'))/7)*7;d.decrement('day',month_start_day);if(this.getLimit().from&&d.clone().decrement('day',1).diff(this.getLimit().from)>0){this.dom.previous.addClass('disabled').addClass('netronautui-calendar-previous-disabled').set('disabled','disabled');}else{this.dom.previous.removeClass('disabled').removeClass('netronautui-calendar-previous-disabled').erase('disabled');};if(this.getLimit().to&&d.clone().increment('day',days_to_display).diff(this.getLimit().to)<0){this.dom.next.addClass('disabled').addClass('netronautui-calendar-next-disabled').set('disabled','disabled');}else{this.dom.next.removeClass('disabled').removeClass('netronautui-calendar-next-disabled').erase('disabled');};var row=new Element('tr').inject(this.dom.calendar.getElement('tbody').empty());this.monthItems=Array();for(var i=0;i<days_to_display;i++){var item;var cell=new Element('td').inject(row).adopt(item=new Element('button',{'type':'button','class':'button',text:d.get('date'),events:{'click':function(event){this.bind.fireEvent('select',[this.date,event]);}}}));item.bind=this;item.date=d.clone();this.monthItems.push(item);if(this.options.markCurrent&&d.diff(this.options.date.clone().clearTime())==0){cell.addClass('netronautui-calendar-current-date');};if(d.get('month')==date.get('month')){cell.addClass('netronautui-calendar-current-month');};if((this.options.limit.from&&d.diff(this.options.limit.from)>0)||(this.options.limit.to&&d.diff(this.options.limit.to)<0)){item.set('disabled','disabled').addClass('disabled');};d.increment('day',1);if(d.get('day')==0){row=new Element('tr').inject(this.dom.calendar.getElement('tbody'));}};this.fireEvent('viewMonth',this.options.viewDate);return this;},getMonthItems:function(){return this.monthItems;},viewMonthRelative:function(to_month){var d=this.options.viewDate||this.options.date.clone();this.viewMonth(to_month<0?d.decrement('month',Math.abs(to_month)):d.increment('month',Math.abs(to_month)));this.fireEvent('changeMonth');return this;},setDate:function(date){this.options.date=date.clearTime();return this;},getDate:function(){return this.options.date;},gotoDate:function(date){this.setDate(date);this.viewMonth(date);return this;},setLimit:function(limit){this.options.limit={from:limit.from?limit.from.clearTime():null,to:limit.to?limit.to.clearTime():null};return this;},getLimit:function(){return this.options.limit;}});;var NetronautUI_Widgets_InputDate=new Class({Extends:NetronautUI_Widget,calendar:null,date:new Date(),initialize:function(el,options){this.parent(el,options);this.calendar=new NetronautUI_Widgets_Calendar().setLimit({from:new Date()});var win=new NetronautUI_Window(this.calendar,{positionOnTarget:{position:'centerBottom',edge:'centerTop'},autoClose:true});win.dom.hitarea.push(this.dom.el);this.dom.hitarea.extend(win.dom.hitarea);win.increaseZIndex();this.dom.el.addEvent('focus',function(event){var date=Date.parse(this.dom.el.value);this.calendar.gotoDate(date);win.open(event);this.dom.el.select();}.bind(this)).addEvent('change',function(event){var date=Date.parse(this.dom.el.value);if(isNaN(date.getTime())){date=new Date();};this.fireEvent('change');this.update(date);this.fireEvent('update',date);win.close();}.bind(this));this.calendar.addEvent('select',function(date){this.fireEvent('select',date);this.update(date);this.fireEvent('update',date);win.close();}.bind(this));},update:function(date){this.date=date;this.calendar.setDate(date);this.dom.el.value=date.format('short_date');}});var Minisearch_Data=new Class({Implements:Events,cookie_name:null,options:new Hash({'location':'','dates':{'arrival':0,'departure':0,'tolerance':{'arrival':0,'departure':0}},'persons':{'adults':2,'children':[]},'category':[0],'options':{'max_price':0,'max_beach_distance':0,'pets_allowed':false,'smoking':null}}),initialize:function(cookie_name){this.cookie_name=cookie_name;this.read();this.valid_data();},read:function(){this.options.extend(new Hash(JSON.decode(Cookie.read(this.cookie_name))));this.valid_data();},write:function(){document.cookie=this.cookie_name+'='+encodeURIComponent(JSON.encode(this.options.getClean()))+'; path=/; expires='+new Date().clearTime().increment('day',1).format('%c')+';';},valid_data:function(){if(this.options.dates.arrival==0){d=new Date().clearTime();this.options.dates.arrival=d.getTime();};if(this.options.dates.departure==0){this.options.dates.departure=new Date(this.options.dates.arrival).increment('day',7);};departure_minimal_ts=new Date(this.options.dates.arrival).increment('day',1).getTime();if(this.options.dates.departure<departure_minimal_ts){this.options.dates.departure=departure_minimal_ts;}}});var Minisearch_Form=new Class({Extends:NetronautUI_Widget,data:{},result_window:null,date_from:null,date_to:null,optionsDialogue:null,initialize:function(el,options){if(options.render){this.render=options.render.bind(this);delete options.render;};this.parent(el,options);this.data=options.data;this.update();this.dom.el.getElement('form').addEvent('submit',function(event){new Event(event).stop();this.submit(event.target.action);}.bind(this));if(this.dom.search){this.dom.search.addEvent('focus',function(){this.select();});};this.date_from.calendar.setLimit({from:new Date()});this.date_to.calendar.setLimit({from:this.date_from.calendar.getDate().clone().increment('day',1)});this.date_from.addEvent('update',function(date){if((d=new Date().clearTime()).diff(date)<0){this.date_from.update(d);return;};var diff=new Date(this.data.options.dates.arrival).diff(new Date(this.data.options.dates.departure));this.data.options.dates.arrival=date.getTime();this.date_to.calendar.setLimit({from:date.clone().increment('day',1)});date=date.clone().increment('day',diff);this.date_to.update(date);this.data.options.dates.departure=date.getTime();this.data.write()}.bind(this));this.date_to.addEvent('update',function(date){var date_from=new Date(this.data.options.dates.arrival);var diff=date_from.diff(new Date(this.data.options.dates.departure));if(date_from.diff(date)<1){date=date_from.clone().increment('day',diff);this.date_to.update(date);};this.data.options.dates.departure=date.getTime();this.data.write()}.bind(this));this.dom.hitarea.extend(this.date_from.dom.hitarea);this.dom.hitarea.extend(this.date_to.dom.hitarea);var winOptions={'positionOnTarget':true,'autoClose':true,'position':'absolute','alwaysInView':true};var widget_options=new Minisearch_FormOptions();var win_guests=new NetronautUI_Window(widget_options,winOptions).setSize({x:640});widget_options.addEvent('save',win_guests.close.bind(win_guests));widget_options.addEvent('cancel',win_guests.close.bind(win_guests));this.dom.hitarea.extend(win_guests.dom.hitarea);this.optionsDialogue=win_guests;this.addEvent('guestDetailSelected',function(event){win_guests.open(new Event(event).stop());win_guests.dom.object.dom.el.getElements('fieldset')[event.target==this.dom.guests.getElement('a')?0:1].getElement('input').select();});win_guests.addEvent('beforeOpen',function(){widget_options.setData(this.data.options);}.bind(this)).addEvent('open',function(){this.dom.el.getElement('input').select();});widget_options.addEvent('save',function(){this.data.options.extend(widget_options.getData());this.data.write();this.update();}.bind(this));var elements;if(elements=this.dom.category){elements.each(function(el){if(!this.data.options.category)return;el.checked=this.data.options.category.contains(el.value);}.bind(this));var update=function(item){if(item==elements.getLast()&&item.checked){elements.each(function(el){if(el==elements.getLast())return;el.checked=false;});}else{elements.getLast().checked=false;};this.data.options.category=[];elements.each(function(el){if(!el.checked)return;this.data.options.category.combine(el.value);}.bind(this));this.data.write();}.bind(this);elements.each(function(el){el.addEvent('click',update.pass(el));}.bind(this));}},submit:function(url){if(!this.result_window){var iframe=new NetronautUI_Widgets_Iframe(null,{name:'search_result'});this.result_window=new NetronautUI_Window(iframe,{autoClose:true,addOverlay:true});new NetronautUI_WindowDecorator(this.result_window,{'closeButton':{events:{'click':this.result_window.close.bind(this.result_window)},'offset':{x:-8,y:6}}});var windowOnResize=function(){this.setSize({x:document.getSize().x*0.85,y:document.getSize().y*0.85});this.setPosition({x:(window.getSize().x-this.getSize().x)/2,y:(window.getSize().y-this.getSize().y)/2});}.bind(this.result_window);this.result_window.addEvent('beforeOpen',windowOnResize).addEvent('open',window.addEvent.pass(['resize',windowOnResize],window)).addEvent('close',window.removeEvent.pass(['resize',windowOnResize],window));}else{var iframe=this.result_window.dom.object;};if(this.dom.search){this.data.options.location=this.dom.search.value;this.data.write();};var proxy_url='/search/provider/wildeast/';if((m=url.match(/objekt\[\]=(\d+)/))&&m[1]){proxy_url+='object_id/'+m[1]+'/';};iframe.load(proxy_url);this.result_window.open();},render:function(){this.dom.form=this.dom.el.getElement('form');this.dom.search=this.dom.form.getElement('input[name=ort_name]');this.date_from=new NetronautUI_Widgets_InputDate(this.dom.form.getElement('[name=date_from]'));this.date_to=new NetronautUI_Widgets_InputDate(this.dom.form.getElement('[name=date_to]'));this.dom.el.getElement('.option-guests').empty().adopt(this.dom.guests=new Element('div'),this.dom.options_icons=new Element('p'),new Element('div').adopt(new Element('a',{'class':'light',href:'javascript:void(0);',text:'Suche anpassen'}).addEvent('click',function(event){this.fireEvent('guestDetailSelected',event)}.bind(this))));this.dom.category=this.dom.form.getElements('.option-category')[0].getElements('input');},update:function(){this.date_from.update(new Date(this.data.options.dates.arrival));this.date_to.update(new Date(this.data.options.dates.departure));this.updateGuestDetail(this.data.options.persons);if(!this.dom.options_icons)return this;var open_icon_option=function(event){this.optionsDialogue.open(event.stop());this.optionsDialogue.dom.el.getElements('fieldset')[2].getElement('input').select();}.bind(this);this.dom.options_icons.empty();new Hash({'max_price':'Maximaler Tagespreis %max_price%€','max_beach_distance':'Maximale Entfernung zum Strand %max_beach_distance%km','pets_allowed':'Haustiere erlaubt'}).each(function(text,opt){if(!(value=this.data.options.options[opt]))return;new Element('button',{'class':'minisearch-form-options-icon-'+opt,title:text.replace(new RegExp('%'+opt+'%'),this.data.options.options[opt]),events:{'click':open_icon_option}}).inject(this.dom.options_icons);}.bind(this));if(null!=(value=this.data.options.options.smoking)){var opt=(this.data.options.options.smoking?'':'no')+'smoking';new Element('button',{'class':'minisearch-form-options-icon-'+opt,title:opt=='smoking'?'Raucher':'Nichtraucher',events:{'click':open_icon_option}}).inject(this.dom.options_icons);};return this;},updateGuestDetail:function(data){this.dom.guests.innerHTML='';var num_adults=Number(data.adults);if(!num_adults&&(!data.children||!data.children.length)){num_adults=1;};if(num_adults>0){var a=new Element('a',{href:'javascript:void(0);',html:num_adults+' Erwachsen'+(num_adults==1?'er':'e')});a.inject(this.dom.guests).addEvent('click',function(event){this.fireEvent('guestDetailSelected',event);}.bind(this));};new Element('br').inject(this.dom.guests);var child_open=function(event){this.fireEvent('guestDetailSelected',event);}.bind(this);var addChild=function(child){new Element('a',{href:'javascript:void(0);',html:childText(child)}).addEvent('click',child_open).inject(this.dom.guests);}.bind(this);var childText=function(child){return(child&&child.count>0?child.count:'kein')+' Kind'+(child&&child.count>1?'er':'')+(child&&child.count>0?' ('+child.age+')':'');};if(!data.children.length){addChild(null);return;};addChild(data.children[0]);if(data.children.length>1){var text=[];for(var i=1;i<data.children.length;i++){text.push(childText(data.children[i]));};this.dom.guests.appendChild(document.createTextNode(', '));new Element('a',{href:'javascript:void(0);',text:'[..]',title:(text.length>1?text.length+' weitere Kinder: ':'')+text.join(', '),events:{'click':child_open}}).inject(this.dom.guests);}}});;var Minisearch_FormOptions=new Class({Extends:NetronautUI_Widget,childrenSet:null,childRowTemplate:null,render:function(){this.dom.el.addClass('minisearch-form-options');var form=new Element('form',{events:{'submit':function(event){event.stop();this.fireEvent('save')}.bind(this)}}).inject(this.dom.el);new Element('div',{'class':'caption',text:'Suchoptionen anpassen'}).inject(form);new Element('div',{'class':'minisearch-pane-left'}).adopt(new Element('p',{text:'Bitte geben Sie die Anzahl der Personen an, für die Sie eine Übernachtung suchen.'}),new Element('div',{'class':'subcaption',text:'Erwachsene'}),new Element('fieldset',{'class':'minisearch-form1'}).adopt(new Element('p').adopt(this.dom.adults=new Element('input',{type:'text',maxlength:'2','class':'text'}),new Element('span',{text:'Erwachsene'}))),new Element('div',{'class':'subcaption',text:'Kinder'}),this.childrenSet=new Element('fieldset',{'class':'minisearch-form2'}).adopt((this.childRowTemplate=new Element('p').adopt(new Element('input',{type:'text',maxlength:'2','class':'text'}),new Element('span',{text:'Kind/er - Alter (0-17):'}),new Element('input',{type:'text',maxlength:'2','class':'text'}),new Element('span',{text:'Jahre'}),new Element('button',{type:'button','class':'delete'}))).clone()),new Element('p').adopt(new Element('a',{'class':'minisearch-button-addchild',href:'javascript:void(0);',text:'+ Weitere Kinder',events:{'click':this.addChild.bind(this,[])}}))).inject(form);new Element('div',{'class':'minisearch-pane-right'}).adopt(new Element('p',{text:'Mit folgenden weiteren Optionen können Sie Ihre Suche stärker einschränken.'}),new Element('div',{'class':'subcaption',text:'Weitere Optionen'}),new Element('fieldset',{'class':'form3'}).adopt(new Element('p').adopt(new Element('label',{'for':'max_price',text:'Maximaler Tagespreis'}),this.dom.option_max_price=new Element('input',{id:'max_price',type:'text','class':'text'}),document.createTextNode('EUR')),new Element('p').adopt(new Element('label',{'for':'max_beach_distance',text:'Maximale Entfernung zum Strand'}),this.dom.option_max_beach_distance=new Element('input',{id:'max_beach_distance',type:'text','class':'text'}),document.createTextNode('km')),new Element('p').adopt(new Element('label',{'for':'pets_allowed',text:'Haustiere erlaubt'}),this.dom.option_pets_allowed=new Element('input',{id:'pets_allowed',type:'checkbox','class':'checkbox'}))),new Element('div',{'class':'subcaption',text:'Raucher / Nichtraucher'}),new Element('fieldset',{'class':'form4'}).adopt(new Element('ul').adopt(new Element('li').adopt(new Element('input',{id:'smoking_1',type:'radio','name':'smoking',value:null}),new Element('label',{'for':'smoking_1',text:'egal'})),new Element('li').adopt(new Element('input',{id:'smoking_2',type:'radio','name':'smoking',value:true}),new Element('label',{'for':'smoking_2',text:'Nichtraucher'})),new Element('li').adopt(new Element('input',{id:'smoking_3',type:'radio','name':'smoking',value:false}),new Element('label',{'for':'smoking_3',text:'Raucher'}))))).inject(form);this.dom.option_smoking=this.dom.el.getElements('input[id^=smoking]');new Element('div',{'class':'clearfix'}).inject(form);new Element('p',{'class':'minisearch-control-submit'}).adopt(new Element('input',{'type':'button','name':'cancel','value':'Abbrechen',events:{'click':this.fireEvent.pass('cancel',this),'keyup':function(event){if(event.key=='enter')this.fireEvent('cancel')}.bind(this)}}),new Element('input',{'type':'submit','name':'save','value':'OK'})).inject(form);},addChild:function(count,age){var count=count||1;var age=age||0;var node=this.childRowTemplate.clone();node.getElements('input')[0].value=count;node.getElements('input')[1].value=age;node.inject(this.childrenSet);node.getElements('input')[(count=='1'?1:0)].select();node.getElement('button.delete').addEvent('click',function(event){this.removeChild(event.stop());}.bind(this));},removeChild:function(event){var row=event.target.getParent('p');row.destroy();if(!this.childrenSet.getElements('p').length){this.addChild('0','0');}},getData:function(){var data={};var num_adults=Number(this.dom.el.getElements('fieldset')[0].getElement('input').value);data.persons={adults:/^\d+$/.test(num_adults)&&num_adults>0?num_adults:2,children:[]};var children_age_map=new Hash();this.dom.el.getElements('fieldset')[1].getElements('p').each(function(row){var count=parseInt(row.getElements('input')[0].value);var age=parseInt(row.getElements('input')[1].value);if(!/^\d+$/.test(count))count=1;if(!/^\d+$/.test(age)||!(age>=0&&age<18))age=0;if(count<1)return;children_age_map.set(age,children_age_map.get(age)+count);});children_age_map.each(function(count,age){data.persons.children.push({age:age,count:count})});data.options={max_price:parseInt(this.dom.option_max_price.value),max_beach_distance:parseInt(this.dom.option_max_beach_distance.value),pets_allowed:this.dom.option_pets_allowed.checked,smoking:(this.dom.option_smoking[0].checked)?null:this.dom.option_smoking[1].checked?false:true};return data;},setData:function(data){this.dom.el.getElement('input').value=data.persons.adults;this.childrenSet.empty();data.persons.children.each(function(item){this.addChild(item.count,item.age);},this);if(!data.persons.children.length){this.addChild('0','0');};this.dom.option_max_price.value=(i=parseInt(data.options.max_price))?i:'';this.dom.option_max_beach_distance.value=(i=parseInt(data.options.max_beach_distance))?i:'';this.dom.option_pets_allowed.checked=data.options.pets_allowed;this.dom.option_smoking[data.options.smoking==null?0:data.options.smoking?2:1].checked=true;}});window.addEvent('domready',function(){var search_data=new Minisearch_Data('search-data');document.form=new Minisearch_Form(document.id('minisearch-form-default'),{data:search_data});});

