var LB={};Fx.Morph.prototype.options.duration=300;Fx.Morph.prototype.options.transition=Fx.Transitions.Expo.easeOut;function disableInputs(c,a){var b;if(c&&(/form/i).test(c.tagName)){b=c}else{b=document.forms[c];b=b?new Element(b):null}if(!b){return}b.getElements("input,textarea,select").each(function(d){d.disabled=a})}var ZIndexManager={level:0,step:1000,layers:new Hash()};ZIndexManager.getCurrentIndex=function(){return this.level*this.step};ZIndexManager.getLayerIndex=function(a){if(!a){return 0}var b=this.layers.get(a);if(!b){b=++this.level;this.layers.set(a,b)}return b*this.step};ZIndexManager.freeIndex=function(b){if(!b||!this.layers.has(b)){return}var c=this.layers.get(b);this.layers.erase(b);var a=0;this.layers.each(function(e,d){if(a<e){a=e}});if(a>c){return}this.level=a};var StackableOverlay={overlayDivName:"__stackableOverlay_",contentDivName:"__stackableOverlay_Content_",currentLevel:0,originalXY:new Array()};StackableOverlay.getContentDiv=function(a){if(!a||a>this.currentLevel){a=this.currentLevel}if(a<1){return null}return $(this.contentDivName+a)};StackableOverlay.getOverlayDiv=function(a){if(!a||a>this.currentLevel){a=this.currentLevel}if(a<1){return null}return $(this.overlayDivName+a)};StackableOverlay.pushOverlay=function(f,c){var a=++this.currentLevel;this.originalXY.push({x:window.getScroll().x,y:window.getScroll().y});var d=new Element("div");var b=window.getScrollSize();d.id=this.overlayDivName+a;d.setStyles({opacity:0,position:"fixed",top:0,left:0,bottom:0,right:0});d.setStyle("z-index",StackableOverlay.getCurrentZIndex());d.setStyle("background-color","#000");d.inject($$("body")[0],"top");if(typeof f=="function"){f(d)}else{d.setStyles({opacity:0.8})}var e=new Element("div");e.id=this.contentDivName+a;e.setStyles({opacity:0,position:"absolute"});e.setStyle("z-index",StackableOverlay.getCurrentZIndex()+1);e.inject(d,"after");if(typeof c=="function"){c(e)}else{e.setStyle("opacity",1)}return e};StackableOverlay.popOverlay=function(c,a){var d=$(this.contentDivName+this.currentLevel),b=$(this.overlayDivName+this.currentLevel);StackableOverlay.decreaseCurrentLevel();this.originalXY.pop();if(typeof a=="function"){a(d)}d.destroy();if(typeof c=="function"){c(b)}b.destroy()};StackableOverlay.getCurrentZIndex=function(){return ZIndexManager.getLayerIndex(this.contentDivName+this.currentLevel)};StackableOverlay.decreaseCurrentLevel=function(){ZIndexManager.freeIndex(this.contentDivName+this.currentLevel);this.currentLevel--};StackableOverlay.getRevealPosition=function(a){if(!a||a>this.currentLevel){a=this.currentLevel}if(a<1||this.originalXY.length<a){return null}return this.originalXY[a-1]};StackableOverlay.scrollToRevealPosition=function(){if(this.originalXY.length<1){return}var b=this.originalXY[this.originalXY.length-1];var a=new Fx.Scroll(window,{wait:false,duration:500,transition:Fx.Transitions.Quad.easeInOut});a.start(b.x,b.y)};function showPageOnOverlay(b,g,f,a){a=$extend({duration:400,width:500,topMargin:50,clickClose:true,closeButton:true,onClose:null,onShow:null},a);if(!g){g=Lang.common.overlayBoxTitle}var d={duration:a.duration};var c=function(){StackableOverlay.popOverlay();if(a.onClose!=null){a.onClose()}};var e=StackableOverlay.pushOverlay(function(h){if(a.clickClose){h.addEvent("click",function(j){c()})}h.set("morph",d);h.morph({opacity:[0,0.7]});h.closeOverlay=c},function(j){j.addClass("overlayContent");var h=window.getScroll();j.setStyles({opacity:1,left:(window.getSize().x/2-(a.width/2))+h.x,width:a.width+"px"});j.set("morph",d);j.morph({top:[h.y,h.y+a.topMargin]});var k=new Element("div");k.addClass("ajaxBox");k.inject(j);if(a.closeButton){new Element("div").addClass("ajaxBoxCloseButton").addEvent("click",function(l){c()}).inject(k)}new Element("h1",{text:g}).addClass("ajaxBoxHeader").inject(k);new Element("div").addClass("ajaxBoxContent").inject(k)});if(b){new Request.HTML({url:b,update:e.getElement(".ajaxBoxContent"),onFailure:function(h){var k=JSON.decode(h.responseText,true);var j=k?k.error:h.responseText;alert(j);c()},onComplete:(function(){ProfileManager.updateCurrentColor();if(a.onShow){a.onShow()}}).bind(this)}).get({format:"ajax"})}else{e.getElement(".ajaxBoxContent").set("html",f);ProfileManager.updateCurrentColor();if(a.onShow){a.onShow()}}return e.getElement(".ajaxBoxContent")}var ObjectLock=new Class({__locked:false,tryLock:function(){if(!this.__locked){this.__locked=true;return true}return false},unlock:function(){this.__locked=false}});function numberPretty(a){var b=("00"+a);return b.substring(b.length-2)}function dateFormat(a){return numberPretty(a.getDate())+"."+numberPretty(a.getMonth()+1)+"."+a.getFullYear()+" "+numberPretty(a.getHours())+":"+numberPretty(a.getMinutes())}function humaneDate(e,c){var b={ago:"Vor",now:"Vor kurzem",minute:"Minute",minutes:"Minuten",hour:"Stunde",hours:"Stunden",day:"Tag",days:"Tagen",week:"Woche",weeks:"Wochen",month:"Monat",months:"Monate",year:"Jahr",years:"Jahre"},j=[[60,b.now],[3600,b.minute,b.minutes,60],[86400,b.hour,b.hours,3600],[604800,b.day,b.days,86400],[2628000,b.week,b.weeks,604800],[31536000,b.month,b.months,2628000],[Infinity,b.year,b.years,31536000]],a=typeof e=="string",e=a?new Date((""+e).replace(/-/g,"/").replace(/[TZ]/g," ")):e,c=c||new Date,l=(c-e+(c.getTimezoneOffset()-(a?0:e.getTimezoneOffset()))*60000)/1000,f;if(l<0){l=Math.abs(l);f=""}else{f=b.ago+" "}if(l>172800){return dateFormat(e)}if(l>86400){return"Gestern um "+numberPretty(e.getHours())+":"+numberPretty(e.getMinutes())}function h(n,o){var m=0.1;if(n>=o&&n<=o*(1+m)){return o}return n}for(var g=0,k=j[0];j[g];k=j[++g]){if(l<k[0]){if(g===0){return k[1]}var d=Math.ceil(h(l,k[3])/(k[3]));return(g>0?f:"")+d+" "+(d!=1?k[2]:k[1])}}}function submitAjaxForm(d,c){function a(f){if(c.showError){c.showError(f)}else{alert(f)}}if(!c){c={}}var e=c.data?c.data:d;switch(typeOf(e)){case"element":e=document.id(e).toQueryString();break;case"object":case"hash":e=Object.toQueryString(e)}e+=window.location.hash?"&hash="+window.location.hash:"";var b=c.requestClass?c.requestClass:Request.JSON;new b({url:d.action,format:"ajax",secure:false,onSuccess:function(k,h,g,f){try{if(typeof c.onSuccess=="function"){c.onSuccess(k,h,g,f)}}catch(j){}if(k!=null){if(k.message){a(k.message)}if(k.url){if(k.url=="reload"){window.location.reload()}else{window.location.href=k.url}return}}disableInputs(d,false);if(c.defaultField&&c.defaultField.nodeName){c.defaultField.focus()}},onFailure:function(f){var j=JSON.decode(f.responseText,true);var h=j?j.error:f.responseText;a(h);try{if(typeof c.onFailure=="function"){c.onFailure(f,j)}}catch(g){}disableInputs(d,false);if(c.defaultField&&c.defaultField.nodeName){c.defaultField.focus()}},onComplete:function(){if(typeof c.onComplete=="function"){c.onComplete()}}}).post(e);disableInputs(d,true);return false}function centerAbsoluteLayer(a){var d=$(window).getSize();var b=$(window).getScroll();var c=a.getSize();a.setStyles({left:(d.x+b.x)/2-c.x/2})}function showPopupLayer(c,b){if(!b){b={}}var e=b.zIndexKey?b.zIndexKey:c;var h=new Array();$$(".popupFrame").each(function(j){if(j.layerId==e&&!h.contains(j)){h.push(j)}});var g=h.length;if(!b.skipClosing&&b.closeExisting){for(i=0;i<h.length;i++){g--;h[i].doClose()}}var f=null;if(g<1){var a=ZIndexManager.getLayerIndex(e);var d=$("isLoading");d.show("block");centerAbsoluteLayer(d);new Request.HTML({url:c,method:"get",format:"ajax",onSuccess:function(m,k,n,l){d.hide();f=k[0];f.inject(document.body,"top");f.layerId=e;var j=$("buttonClosePopup");if(j){j.addEvent("click",function(){f.doClose()})}if(b.onLoad){b.onLoad(f)}b.skipClosing=true;showPopupLayer(c,b)}}).send();return false}else{f=h[0]}f.show("block");centerAbsoluteLayer(f);f.doClose=function(k){var j=false;if(b.onClose){j=!b.onClose(f)}if(!j){if(b.disposeOnClose){f.dispose();ZIndexManager.freeIndex(e)}else{f.hide()}}};if(b.onShow){b.onShow(f)}return false}function showNotificationLayer(c,b){if(!b){b=1200}$("notificationLayerMessage").set("html",c);var a=$("ajaxNotificationLayerPopup");a.setStyles({visibility:"visible",opacity:1,display:"block","z-index":ZIndexManager.getCurrentIndex()+10});centerAbsoluteLayer(a);a.getElement(".focus").focus();if(b>0){(function(){$("ajaxNotificationLayerPopup").fade("out")}).delay(b)}}function showConfirmLayer(c,b){var a=$("ajaxConfirmLayerPopup");if(!b){b=function(d){d.fade("out")}}a.getElement(".popupContent p").set("text",c);a.setStyles({visibility:"visible",opacity:1,display:"block"});a.getElement(".buttonBlue").onclick=b.pass(a);centerAbsoluteLayer(a)}Element.Events.hashchange={onAdd:function(){var b=self.location.hash;var a=function(){if(b==self.location.hash){return}else{b=self.location.hash}var c=(b.indexOf("#")==0?b.substr(1):b);window.fireEvent("hashchange",c);document.fireEvent("hashchange",c)};if("onhashchange" in window){window.onhashchange=a}else{a.periodical(100)}}};function $chk(a){return !!(a||a===0)}function displayBubble(h,d,b,g){g=g?g:0;b=b?b:0;var c=$(h);var a=d?$(d):document.body;c.show("block");var f=a.getCoordinates();var e=c.getSize();c.setStyles({position:"absolute",top:f.top-e.y+g,left:f.left+b})}function iterFindOne(d,c){for(var b in d){var a=c(b,d[b]);if(a){return a}}return null}function bindAutocomplete(a,b){$(regForm).completer=new Meio.Autocomplete.Select(a,b,{valueField:"courseId",minChars:2,valueFilter:function(c){return c.id},filter:{filter:function(d,c){return true},formatItem:function(e,d,c){if(d.id[0]=="*"){return"<span>"+d.name+"</span>"}return e?d.name.replace(new RegExp("("+e.escapeRegExp()+")","gi"),"<strong>$1</strong>"):d.name},formatMatch:function(e,d,c){return d.name}},listOptions:{width:450}});$(regForm).completer.elements.list.positionNextTo=function(c){var d=this.options.width,e=this.node;var f=c.getCoordinates();e.setStyle("width",d=="field"?c.getWidth().toInt()-e.getStyle("border-left-width").toInt()-e.getStyle("border-right-width").toInt():d);e.setPosition({x:f.left+1,y:f.bottom-1})}.bind($(regForm).completer.elements.list)}function saveNewUserName(a,c){var b=new Request({url:saveNewNameUrl,format:"ajax",method:"post",onSuccess:function(d){if(c){c(d)}}});b.send(Object.toQueryString({name:a}))}var ContextMenu=new Class({Implements:[Events,Options],options:{closeOnOutsideClick:true},buttonSelector:null,lastClickedItem:null,popupFrame:null,initialize:function(a,b){this.setOptions(b);this.popupFrame=$(a);if(this.options.closeOnOutsideClick){$(document.body).addEvent("click",function(c){if(this.popupFrame.isVisible()){if(!this.popupFrame.contains(c.target)&&this.lastClickedItem!=c.target){this.closeContextMenu()}}}.bind(this))}this.attach()},attach:function(){this.popupFrame.getElements("a").each(function(a){a.addEvent("click",function(b){this.fireEvent("contextMenuClicked",[a,b]);this.closeContextMenu();return false}.bind(this))}.bind(this))},showContextMenu:function(a,b){if(this.popupFrame.isVisible()){this.closeContextMenu()}this.lastClickedItem=a;this.fireEvent("show",[a,b]);this.popupFrame.show()},closeContextMenu:function(){this.fireEvent("hide");this.popupFrame.hide()}});var FeedbackForm={initOk:false,container:null,form:null,init:function(a,c){if(this.initOk){return}this.container=$(a);this.form=$(c);if(Browser.Plugins.Flash){$("flashVersion").value=Browser.Plugins.Flash.version+" - "+Browser.Plugins.Flash.build}if(window.currentUserId!=undefined){this.form.getElement("#feedbackMailContainer").hide();this.form.getElement("#feedbackMailNote").hide()}var b=this;this.form.getElement("input.closeLayer").addEvent("click",function(){b.container.fade("out")});this.form.addEvent("submit",function(d){d.stop();submitAjaxForm(b.form,{showError:function(e){b.showErrorMessage.pass(e,b)},onSuccess:function(e){showNotificationLayer("Vielen Dank!",2000);b.container.fade("hide")}})});this.initOk=true},show:function(a,b){this.init(a,b);this.showErrorMessage(null);this.container.fade("in");centerAbsoluteLayer(this.container);this.form.getElement(".default").focus()},showErrorMessage:function(b){var a=this.container.getElement(".statusNote");if(b){a.show();a.getElement(".statusMessage").set("text",b)}else{a.hide()}}};var inputIdWithoutFocus=new Array();var checkedElems=new Array();var handleInputStates=function(a){if(a.value!=""||a.focused){a.setStyle("background","#fff")}else{a.setStyle("background","transparent")}};var handleLabeledInputField=function(a){if(a.type=="submit"){return}checkedElems.push(a);a.addEvent("keyup",function(b){checkedElems.forEach(function(c){handleInputStates(c)})});a.addEvent("blur",function(b){a.focused=false;handleInputStates(a)});if(!inputIdWithoutFocus.contains(a.id)){a.addEvent("focus",function(b){a.focused=true;a.setStyle("background","#fff")})}if(a.value!=""){a.setStyle("background","#fff")}};function linkifyText(a){if(!a){return a}a=a.replace(/(https?:\/\/|(www\.))(\S+)(\w{2,4})(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/gi,function(b){var c=b;if(!b.match("^https?://")){c="http://"+b}return'<a target="_blank" rel="nofollow" href="'+c+'">'+b+"</a>"});return a};
