var loadingImageRS;!function(n){"use strict";var t=function(t,i){var u=this,nt=n.extend({},i),r=n.extend(!0,{},{allowFreeEntries:!0,allowDuplicates:!1,ajaxConfig:{},autoSelect:!0,selectFirst:!1,queryParam:"query",beforeSend:function(){},cls:"",data:null,dataUrlParams:{},disabled:!1,disabledField:null,displayField:"name",editable:!0,expanded:!1,expandOnFocus:!1,groupBy:null,hideTrigger:!1,highlight:!0,id:null,infoMsgCls:"",inputCfg:{},invalidCls:"ms-inv",matchCase:!1,maxDropHeight:290,maxEntryLength:null,maxEntryRenderer:function(n){return"Please reduce your entry by "+n+" character"+(n>1?"s":"")},maxSuggestions:null,maxSelection:10,maxSelectionRenderer:function(n){return"Sie können nur maximal "+n+" auswählen!"},method:"POST",minChars:0,minCharsRenderer:function(n){return"Please type "+n+" more character"+(n>1?"s":"")},mode:"local",name:null,noSuggestionText:"No suggestions",placeholder:"Type or click here",renderer:null,required:!1,resultAsString:!1,resultAsStringDelimiter:",",resultsField:"results",selectionCls:"",selectionContainer:null,selectionPosition:"inner",selectionRenderer:null,selectionStacked:!1,sortDir:"asc",sortOrder:null,strictSuggest:!1,style:"",toggleOnClick:!1,typeDelay:400,useTabKey:!1,useCommaKey:!0,useZebraStyle:!1,value:null,valueField:"id",vregex:null,vtype:null,disableFilter:!1},nt);this.addToSelection=function(t,i){if(!r.maxSelection||e.length<r.maxSelection){n.isArray(t)||(t=[t]);var o=!1;n.each(t,function(t,i){(r.allowDuplicates||-1===n.inArray(i[r.valueField],u.getValue()))&&(e.push(i),o=!0)});!0===o&&(f._renderSelection(),this.empty(),!0!==i&&n(this).trigger("selectionchange",[this,this.getSelection()]))}this.input.attr("placeholder","inner"===r.selectionPosition&&this.getValue().length>0?"":r.placeholder)};this.clear=function(n){this.removeFromSelection(e.slice(0),n)};this.collapse=function(){!0===r.expanded&&(this.combobox.detach(),r.expanded=!1,n(this).trigger("collapse",[this]))};this.disable=function(){this.container.addClass("ms-ctn-disabled");r.disabled=!0;u.input.attr("disabled",!0)};this.empty=function(){this.input.val("")};this.enable=function(){this.container.removeClass("ms-ctn-disabled");r.disabled=!1;u.input.attr("disabled",!1)};this.expand=function(){!r.expanded&&(this.input.val().length>=r.minChars||this.combobox.children().length>0)&&(this.combobox.appendTo(this.container),f._processSuggestions(),r.expanded=!0,n(this).trigger("expand",[this]))};this.isDisabled=function(){return r.disabled};this.isValid=function(){var t=!1===r.required||e.length>0;return(r.vtype||r.vregex)&&n.each(e,function(n,i){t=t&&f._validateSingleItem(i[r.valueField])}),t};this.getDataUrlParams=function(){return r.dataUrlParams};this.getName=function(){return r.name};this.getSelection=function(){return e};this.getRawValue=function(){return u.input.val()};this.getValue=function(){return n.map(e,function(n){return n[r.valueField]})};this.removeFromSelection=function(t,i){n.isArray(t)||(t=[t]);var o=!1;n.each(t,function(t,i){var f=n.inArray(i[r.valueField],u.getValue());f>-1&&(e.splice(f,1),o=!0)});!0===o&&(f._renderSelection(),!0!==i&&n(this).trigger("selectionchange",[this,this.getSelection()]),r.expandOnFocus&&u.expand(),r.expanded&&f._processSuggestions());this.input.attr("placeholder","inner"===r.selectionPosition&&this.getValue().length>0?"":r.placeholder)};this.getData=function(){return l};this.setData=function(n){r.data=n;f._processSuggestions()};this.setName=function(t){r.name=t;t&&(r.name+=t.indexOf("[]")>0?"":"[]");u._valueContainer&&n.each(u._valueContainer.children(),function(n,t){t.name=r.name})};this.setSelection=function(n){this.clear();this.addToSelection(n)};this.setValue=function(t){var i=[];n.each(t,function(t,u){var e=!1,f;(n.each(l,function(n,t){if(t[r.valueField]==u)return i.push(t),e=!0,!1}),e)||("object"==typeof u?i.push(u):(f={},f[r.valueField]=u,f[r.displayField]=u,i.push(f)))});i.length>0&&this.addToSelection(i)};this.setDataUrlParams=function(t){r.dataUrlParams=n.extend({},t)};var w,e=[],s=0,h=!1,c=null,l=[],a=!1,tt=8,v=9,y=13,b=17,k=27,it=32,d=38,g=40,p=188,f={_displaySuggestions:function(t){var i,e,o,h,l,a;if(u.combobox.show(),u.combobox.empty(),i=0,e=0,null===c)f._renderComboItems(t),i=s*t.length;else{for(o in c)e+=1,n("<div/>",{"class":"ms-res-group",html:o}).appendTo(u.combobox),f._renderComboItems(c[o].items,!0);h=u.combobox.find(".ms-res-group").outerHeight();null!==h?(l=e*h,i=s*t.length+l):i=s*(t.length+e)}(i<u.combobox.height()||i<=r.maxDropHeight?u.combobox.height(i):i>=u.combobox.height()&&i>r.maxDropHeight&&u.combobox.height(r.maxDropHeight),1===t.length&&!0===r.autoSelect&&u.combobox.children().filter(":not(.ms-res-item-disabled):last").addClass("ms-res-item-active"),!0===r.selectFirst&&u.combobox.children().filter(":not(.ms-res-item-disabled):first").addClass("ms-res-item-active"),0===t.length&&""!==u.getRawValue())&&(a=r.noSuggestionText.replace(/\{\{.*\}\}/,u.input.val()),f._updateHelper(a),u.collapse());!1===r.allowFreeEntries&&(0===t.length?(n(u.input).addClass(r.invalidCls),u.combobox.hide()):n(u.input).removeClass(r.invalidCls))},_getEntriesFromStringArray:function(t){var i=[];return n.each(t,function(t,u){var f={};f[r.displayField]=f[r.valueField]=n.trim(u);i.push(f)}),i},_highlightSuggestion:function(t){var i=u.input.val(),f;return(n.each(["^","$","*","+","?",".","(",")",":","!","|","{","}","[","]"],function(n,t){i=i.replace(t,"\\"+t)}),0===i.length)?t:(f=!0===r.matchCase?"g":"gi",t.replace(new RegExp("("+i+")(?!([^<]+)?>)",f),"<em>$1<\/em>"))},_moveSelectedRow:function(n){var i,t,f,e;r.expanded||u.expand();i=u.combobox.find(".ms-res-item:not(.ms-res-item-disabled)");t="down"===n?i.eq(0):i.filter(":last");(f=u.combobox.find(".ms-res-item-active:not(.ms-res-item-disabled):first")).length>0&&("down"===n?(0===(t=f.nextAll(".ms-res-item:not(.ms-res-item-disabled)").first()).length&&(t=i.eq(0)),e=u.combobox.scrollTop(),u.combobox.scrollTop(0),t[0].offsetTop+t.outerHeight()>u.combobox.height()&&u.combobox.scrollTop(e+s)):(0===(t=f.prevAll(".ms-res-item:not(.ms-res-item-disabled)").first()).length&&(t=i.filter(":last"),u.combobox.scrollTop(s*i.length)),t[0].offsetTop<u.combobox.scrollTop()&&u.combobox.scrollTop(u.combobox.scrollTop()-s)));i.removeClass("ms-res-item-active");t.addClass("ms-res-item-active")},_processSuggestions:function(t){var e=null,i=t||r.data,o,s,h;if(null!==i){if("function"==typeof i&&(i=i.call(u,u.getRawValue())),"string"==typeof i)return n(u).trigger("beforeload",[u]),o={},o[r.queryParam]=u.input.val(),s=n.extend(o,r.dataUrlParams),void n.ajax(n.extend({type:r.method,url:i,data:s,beforeSend:r.beforeSend,success:function(t){e="string"==typeof t?JSON.parse(t):t;f._processSuggestions(e);n(u).trigger("load",[u,e]);f._asyncValues&&(u.setValue("string"==typeof f._asyncValues?JSON.parse(f._asyncValues):f._asyncValues),f._renderSelection(),delete f._asyncValues)},error:function(){throw"Could not reach server";}},r.ajaxConfig));l=i.length>0&&"string"==typeof i[0]?f._getEntriesFromStringArray(i):i[r.resultsField]||i;h="remote"===r.mode?l:f._sortAndTrim(l);f._displaySuggestions(f._group(h))}},_render:function(t){if(u.setName(r.name),u.container=n("<div/>",{"class":"ms-ctn form-control "+(r.resultAsString?"ms-as-string ":"")+r.cls+(n(t).hasClass("input-lg")?" input-lg":"")+(n(t).hasClass("input-sm")?" input-sm":"")+(!0===r.disabled?" ms-ctn-disabled":"")+(!0===r.editable?"":" ms-ctn-readonly")+(!1===r.hideTrigger?"":" ms-no-trigger"),style:r.style,id:r.id}),u.container.focus(n.proxy(o._onFocus,this)),u.container.blur(n.proxy(o._onBlur,this)),u.container.keydown(n.proxy(o._onKeyDown,this)),u.container.keyup(n.proxy(o._onKeyUp,this)),u.input=n("<input/>",n.extend({type:"text","class":!0===r.editable?"":" ms-input-readonly",readonly:!r.editable,placeholder:r.placeholder,disabled:r.disabled},r.inputCfg)),u.input.focus(n.proxy(o._onInputFocus,this)),u.input.click(n.proxy(o._onInputClick,this)),u.combobox=n("<div/>",{"class":"ms-res-ctn dropdown-menu"}).height(r.maxDropHeight),u.combobox.on("click","div.ms-res-item",n.proxy(o._onComboItemSelected,this)),u.combobox.on("mouseover","div.ms-res-item",n.proxy(o._onComboItemMouseOver,this)),r.selectionContainer?(u.selectionContainer=r.selectionContainer,n(u.selectionContainer).addClass("ms-sel-ctn")):u.selectionContainer=n("<div/>",{"class":"ms-sel-ctn"}),u.selectionContainer.click(n.proxy(o._onFocus,this)),"inner"!==r.selectionPosition||r.selectionContainer?u.container.append(u.input):u.selectionContainer.append(u.input),u.helper=n("<span/>",{"class":"ms-helper "+r.infoMsgCls}),f._updateHelper(),u.container.append(u.helper),n(t).replaceWith(u.container),!r.selectionContainer)switch(r.selectionPosition){case"bottom":u.selectionContainer.insertAfter(u.container);!0===r.selectionStacked&&(u.selectionContainer.width(u.container.width()),u.selectionContainer.addClass("ms-stacked"));break;case"right":u.selectionContainer.insertAfter(u.container);u.container.css("float","left");break;default:u.container.append(u.selectionContainer)}!1===r.hideTrigger&&(u.trigger=n("<div/>",{"class":"ms-trigger",html:'<div class="ms-trigger-ico"><\/div>'}),u.trigger.click(n.proxy(o._onTriggerClick,this)),u.container.append(u.trigger));n(window).resize(n.proxy(o._onWindowResized,this));null===r.value&&null===r.data||("string"==typeof r.data?(f._asyncValues=r.value,f._processSuggestions()):(f._processSuggestions(),null!==r.value&&(u.setValue(r.value),f._renderSelection())));n("body").click(function(n){u.container.hasClass("ms-ctn-focus")&&0===u.container.has(n.target).length&&n.target.className.indexOf("ms-res-item")<0&&n.target.className.indexOf("ms-close-btn")<0&&u.container[0]!==n.target&&o._onBlur()});!0===r.expanded&&(r.expanded=!1,u.expand())},_renderComboItems:function(t,i){var o=this,e="";n.each(t,function(t,u){var s=null!==r.renderer?r.renderer.call(o,u):u[r.displayField],h=null!==r.disabledField&&!0===u[r.disabledField],c=n("<div/>",{"class":"ms-res-item "+(i?"ms-res-item-grouped ":"")+(h?"ms-res-item-disabled ":"")+(t%2==1&&!0===r.useZebraStyle?"ms-res-odd":""),html:!0===r.highlight?f._highlightSuggestion(s):s,"data-json":JSON.stringify(u)});e+=n("<div/>").append(c).html()});u.combobox.append(e);s=u.combobox.find(".ms-res-item:first").outerHeight()},_renderSelection:function(){var t=this,i=0,s=0,c=[],l=!0===r.resultAsString&&!h;u.selectionContainer.find(".ms-sel-item").remove();void 0!==u._valueContainer&&u._valueContainer.remove();n.each(e,function(i,u){var s,h=null!==r.selectionRenderer?r.selectionRenderer.call(t,u):u[r.displayField],a=f._validateSingleItem(u[r.displayField])?"":" ms-sel-invalid";!0===l?s=n("<div/>",{"class":"ms-sel-item ms-sel-text "+r.selectionCls+a,html:h+(i===e.length-1?"":r.resultAsStringDelimiter)}).data("json",u):(s=n("<div/>",{"class":"ms-sel-item "+r.selectionCls+a,html:h}).data("json",u),!1===r.disabled&&n("<span/>",{"class":"ms-close-btn"}).data("json",u).appendTo(s).click(n.proxy(o._onTagTriggerClick,t)));c.push(s)});u.selectionContainer.prepend(c);u._valueContainer=n("<div/>",{style:"display: none;"});n.each(u.getValue(),function(t,i){n("<input/>",{type:"hidden",name:r.name,value:i}).appendTo(u._valueContainer)});u._valueContainer.appendTo(u.selectionContainer);"inner"!==r.selectionPosition||r.selectionContainer||(u.input.width(0),s=u.input.offset().left-u.selectionContainer.offset().left,i=u.container.width()-s-42,u.input.width(i));e.length===r.maxSelection?f._updateHelper(r.maxSelectionRenderer.call(this,e.length)):u.helper.hide()},_selectItem:function(n){1===r.maxSelection&&(e=[]);u.addToSelection(n.data("json"));n.removeClass("ms-res-item-active");!1!==r.expandOnFocus&&e.length!==r.maxSelection||u.collapse();h?h&&(r.expandOnFocus||a)&&(f._processSuggestions(),a&&u.expand()):u.input.focus()},_sortAndTrim:function(t){var f=u.getRawValue(),e=[],i=[],o=u.getValue();return!1===r.disableFilter&&f.length>0?n.each(t,function(n,t){var i=t[r.displayField];(!0===r.matchCase&&i.indexOf(f)>-1||!1===r.matchCase&&i.toLowerCase().indexOf(f.toLowerCase())>-1)&&(!1!==r.strictSuggest&&0!==i.toLowerCase().indexOf(f.toLowerCase())||e.push(t))}):e=t,n.each(e,function(t,u){(r.allowDuplicates||-1===n.inArray(u[r.valueField],o))&&i.push(u)}),null!==r.sortOrder&&i.sort(function(n,t){return n[r.sortOrder]<t[r.sortOrder]?"asc"===r.sortDir?-1:1:n[r.sortOrder]>t[r.sortOrder]?"asc"===r.sortDir?1:-1:0}),r.maxSuggestions&&r.maxSuggestions>0&&(i=i.slice(0,r.maxSuggestions)),i},_group:function(t){return null!==r.groupBy&&(c={},n.each(t,function(n,t){var u=r.groupBy.indexOf(".")>-1?r.groupBy.split("."):r.groupBy,i=t[r.groupBy];if("string"!=typeof u)for(i=t;u.length>0;)i=i[u.shift()];void 0===c[i]?c[i]={title:i,items:[t]}:c[i].items.push(t)})),t},_updateHelper:function(n){u.helper.html(n);u.helper.is(":visible")||u.helper.fadeIn()},_validateSingleItem:function(n){if(null!==r.vregex&&r.vregex instanceof RegExp)return r.vregex.test(n);if(null!==r.vtype)switch(r.vtype){case"alpha":return/^[a-zA-Z_]+$/.test(n);case"alphanum":return/^[a-zA-Z0-9_]+$/.test(n);case"email":return/^(\w+)([\-+.][\w]+)*@(\w[\-\w]*\.){1,5}([A-Za-z]){2,6}$/.test(n);case"url":return/(((^https?)|(^ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i.test(n);case"ipaddress":return/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(n)}return!0}},o={_onBlur:function(){if(u.container.removeClass("ms-ctn-focus"),u.collapse(),h=!1,""!==u.getRawValue()&&!0===r.allowFreeEntries){var t={};t[r.displayField]=t[r.valueField]=u.getRawValue().trim();u.addToSelection(t)}f._renderSelection();!1===u.isValid()?u.container.addClass(r.invalidCls):""!==u.input.val()&&!1===r.allowFreeEntries&&(u.empty(),f._updateHelper(""));n(u).trigger("blur",[u])},_onComboItemMouseOver:function(t){var i=n(t.currentTarget);i.hasClass("ms-res-item-disabled")||(u.combobox.children().removeClass("ms-res-item-active"),i.addClass("ms-res-item-active"))},_onComboItemSelected:function(t){n(t.currentTarget).hasClass("ms-res-item-disabled")||f._selectItem(n(t.currentTarget))},_onFocus:function(){u.input.focus()},_onInputClick:function(){!1===u.isDisabled()&&h&&!0===r.toggleOnClick&&(r.expanded?u.collapse():u.expand())},_onInputFocus:function(){if(!1===u.isDisabled()&&!h){h=!0;u.container.addClass("ms-ctn-focus");u.container.removeClass(r.invalidCls);var t=u.getRawValue().length;!0===r.expandOnFocus&&u.expand();e.length===r.maxSelection?f._updateHelper(r.maxSelectionRenderer.call(this,e.length)):t<r.minChars&&f._updateHelper(r.minCharsRenderer.call(this,r.minChars-t));f._renderSelection();n(u).trigger("focus",[u])}},_onKeyDown:function(t){var s=u.combobox.find(".ms-res-item-active:not(.ms-res-item-disabled):first"),i=u.input.val();if(n(u).trigger("keydown",[u,t]),t.keyCode!==v||!1!==r.useTabKey&&(!0!==r.useTabKey||0!==s.length||0!==u.input.val().length))switch(t.keyCode){case tt:0===i.length&&u.getSelection().length>0&&"inner"===r.selectionPosition&&(e.pop(),f._renderSelection(),n(u).trigger("selectionchange",[u,u.getSelection()]),u.input.attr("placeholder","inner"===r.selectionPosition&&u.getValue().length>0?"":r.placeholder),u.input.focus(),t.preventDefault());break;case v:case k:t.preventDefault();break;case y:(""!==i||r.expanded)&&t.preventDefault();break;case p:!0===r.useCommaKey&&t.preventDefault();break;case b:a=!0;break;case g:t.preventDefault();f._moveSelectedRow("down");break;case d:t.preventDefault();f._moveSelectedRow("up");break;default:e.length===r.maxSelection&&t.preventDefault()}else o._onBlur()},_onKeyUp:function(t){var s,i=u.getRawValue(),h=n.trim(u.input.val()).length>0&&(!r.maxEntryLength||n.trim(u.input.val()).length<=r.maxEntryLength),o={};if(n(u).trigger("keyup",[u,t]),clearTimeout(w),t.keyCode===k&&r.expanded&&u.combobox.hide(),t.keyCode===v&&!1===r.useTabKey||t.keyCode>y&&t.keyCode<it)t.keyCode===b&&(a=!1);else switch(t.keyCode){case d:case g:t.preventDefault();break;case y:case v:case p:if(t.keyCode!==p||!0===r.useCommaKey){if(t.preventDefault(),!0===r.expanded&&(s=u.combobox.find(".ms-res-item-active:not(.ms-res-item-disabled):first")).length>0)return void f._selectItem(s);!0===h&&!0===r.allowFreeEntries&&(o[r.displayField]=o[r.valueField]=i.trim(),u.addToSelection(o),u.collapse(),u.input.focus());break}default:e.length===r.maxSelection?f._updateHelper(r.maxSelectionRenderer.call(this,e.length)):i.length<r.minChars?(f._updateHelper(r.minCharsRenderer.call(this,r.minChars-i.length)),!0===r.expanded&&u.collapse()):r.maxEntryLength&&i.length>r.maxEntryLength?(f._updateHelper(r.maxEntryRenderer.call(this,i.length-r.maxEntryLength)),!0===r.expanded&&u.collapse()):(u.helper.hide(),r.minChars<=i.length&&(w=setTimeout(function(){!0===r.expanded?f._processSuggestions():u.expand()},r.typeDelay)))}},_onTagTriggerClick:function(t){u.removeFromSelection(n(t.currentTarget).data("json"))},_onTriggerClick:function(){if(!1===u.isDisabled()&&(!0!==r.expandOnFocus||e.length!==r.maxSelection))if(n(u).trigger("triggerclick",[u]),!0===r.expanded)u.collapse();else{var t=u.getRawValue().length;t>=r.minChars?(u.input.focus(),u.expand()):f._updateHelper(r.minCharsRenderer.call(this,r.minChars-t))}},_onWindowResized:function(){f._renderSelection()}};null!==t&&f._render(t)};n.fn.magicSuggest=function(i){var r=n(this);return 1===r.length&&r.data("magicSuggest")?r.data("magicSuggest"):(r.each(function(){var f=n(this),u,r;f.data("magicSuggest")||("select"===this.nodeName.toLowerCase()&&(i.data=[],i.value=[],n.each(this.children,function(t,r){r.nodeName&&"option"===r.nodeName.toLowerCase()&&(i.data.push({id:r.value,name:r.text}),n(r).attr("selected")&&i.value.push(r.value))})),u={},n.each(this.attributes,function(n,t){u[t.name]="value"===t.name&&""!==t.value?JSON.parse(t.value):t.value}),r=new t(this,n.extend([],n.fn.magicSuggest.defaults,i,u)),f.data("magicSuggest",r),r.container.data("magicSuggest",r))}),1===r.length?r.data("magicSuggest"):r)};n.fn.magicSuggest.defaults={}}(jQuery);var jumpToSearch=function(n){window.location.href="/orphan-diseases?symptom="+n},srInput=$("#symptomSearchRightSide"),msrs=$(srInput).magicSuggest({data:"/esanum/SuggestSymptoms",allowFreeEntries:!1,highlight:!1,cls:"symptom-search",disableFilter:!0,hideTrigger:!0,id:"symptomSearchInput",expandOnFocus:!0,minChars:3,minCharsRenderer:function(){return"Bitte geben Sie mindestens 3 Buchstaben ein."},noSuggestionText:"Keine Symptome gefunden. Bitte versuchen Sie es erneut.",queryParam:"term",typeDelay:400,placeholder:"Symptom eingeben"});$(msrs).on("selectionchange",function(){jumpToSearch(JSON.stringify(msrs.getSelection()))});loadingImageRS='<div id="loadingImageRS"><img class="not-teaser-img" style="height: 24px; position: absolute;right: 5px;top: 3px;" alt="Loading..." src="/Web/Common/img/loading_green.gif" /><\/div>';$(msrs).on("beforeload",function(){$("#loadingImageRS").remove();$("#symptomSearchRightSide .ms-sel-ctn").append(loadingImageRS)});$(msrs).on("load",function(){$("#loadingImageRS").remove()})