var OverlayArea=Class.create();OverlayArea.prototype={initialize:function(F,E,A,D,G,B,C){this.areaid=F;this.width=E;this.height=A;this.type=D;this.id=G;this.userid=B;this.typeowner=C;this.overlayCount=0;this.maxOverlays=10;this.overlayWidth=130;this.overlayHeight=20;this.insertUrl="/ajax/overlay/insert";this.deleteUrl="/ajax/overlay/delete";this.fetchUrl="/ajax/overlay/getall";this.loadingDiv='<div id="loading_insertOverlay" style="position:absolute;top:300px;left:200px;display:none;">';this.loadingDiv+='<img src="/images/icons/ajax-loader-white.gif" /></div>';this.area=$(F);this.nullPoint=null;this.init()},init:function(){Event.stopObserving(this.area);Event.observe(this.area,"load",this.fetchExistingOverlays.bindAsEventListener(this));this.nullPoint=Position.cumulativeOffset(this.area);new Insertion.After(this.area,this.loadingDiv)},fetchExistingOverlays:function(C){var B=this;var D="&type="+this.type+"&id="+this.id;D+="&nullpointx="+B.nullPoint[0]+"&nullpointy="+B.nullPoint[1];var A=this.fetchUrl;new Ajax.Request(A,{method:"post",postBody:D,onSuccess:B.fetchOverlaysSuccess.bindAsEventListener(B),onFailure:B.ajaxFailure.bindAsEventListener(B)});Event.observe(this.area,"click",B.insertOverlay.bindAsEventListener(B));return false},fetchOverlaysSuccess:function(D){parts=D.responseText.split("###");var A=parts[0].evalJSON(true);var C=this;if(typeof (A)=="object"){A.each(function(E){C.setOverlay(E);++this.overlayCount})}if(parts.length>1){var B=parts[1].evalJSON(true);if(typeof (B)=="object"){B.each(function(E){C.setMarkedUser(E)})}}},insertOverlay:function(A){if(this.type==1){alert(Szene1Translator.translate("serviceCurrentlyNotAvailable"))}return ;if(this.overlayCount>=this.maxOverlays){alert(Szene1Translator.translate("reachedMaximumCountOfXMyPics",this.maxOverlays));return false}else{if(this.isUserOverlayExisting()){alert(Szene1Translator.translate("youAlreadySetAMyPicHere"));return false}else{if(confirm(Szene1Translator.translate("doYouWantToSetAMyPicHere"))==true){this.validateOverlay(A)}else{return false}}}},validateOverlay:function(C){var D=Event.pointerX(C);var B=Event.pointerY(C);$("loading_insertOverlay").setStyle({top:((B-15)+"px"),left:((D-10)+"px")});var A=D-this.nullPoint[0];var E=B-this.nullPoint[1];if(!this.checkOverlayWithinBounds(A,E)){alert(Szene1Translator.translate("myPicOutOfBoundsPleaseTryAgain"));return false}if(!this.checkOverlayPosition(D,B)){alert(Szene1Translator.translate("thereIsAlreadyAMyPicHere"));return false}$("loading_insertOverlay").show();this.saveNewOverlay(A,E)},saveNewOverlay:function(A,E){var C=this;var D="&type="+this.type+"&id="+this.id+"&mediaowner="+this.typeowner;D+="&offsetx="+A+"&offsety="+E;D+="&nullpointx="+this.nullPoint[0]+"&nullpointy="+this.nullPoint[1];var B=this.insertUrl;new Ajax.Request(B,{method:"post",postBody:D,onSuccess:C.insertOverlaySuccess.bindAsEventListener(C),onFailure:C.ajaxFailure.bindAsEventListener(C)})},insertOverlaySuccess:function(B){var A=B.responseText;if(A=="exist"){alert(Szene1Translator.translate("youAlreadySetAMyPicHere"))}else{if(A=="0"){alert(Szene1Translator.translate("errorSettingMyPic"))}else{this.setOverlay(A)}}$("loading_insertOverlay").remove()},setOverlay:function(A){new Insertion.After(this.area,A);++this.overlayCount},setMarkedUser:function(A){$("mypicContainer").innerHTML+=A},deleteOverlay:function(A,D){if(confirm(Szene1Translator.translate("doYouWantToRemoveThisMarking"))==true){if($(A)){var F=$(A);var C=this;var E=F.top;var H=F.left;$(D).removeClassName("ICON16_RB_DELETE");$(D).update('<img src="/images/icons/ajax-loader-white.gif" />');var G="&id="+(A.split("_").last());var B=C.deleteUrl;new Ajax.Request(B,{method:"post",postBody:G,onSuccess:function(I){if(I.responseText!="0"){$(A).remove();--C.overlayCount}else{}},onFailure:C.ajaxFailure.bindAsEventListener(C)})}}},isUserOverlayExisting:function(A){var B="ol_"+this.type+"_"+this.id+"_"+this.userid;if($(B)){return true}return false},checkOverlayWithinBounds:function(A,D){var C=this.width+(this.overlayWidth/2);var B=this.height+(this.overlayHeight/2);if(((this.overlayWidth+A)>C)||((this.overlayHeight+D)>B)){return false}return true},checkOverlayPosition:function(H,F){var E=0;var G=false;var D=this.area;var C=this.overlayWidth;var A=this.overlayHeight;var B=$("szene1").getElementsByClassName("foto_overlay");G=$A(B).any(function(N){var J=Position.cumulativeOffset(N);var M=J[1]-A;var L=J[0]-C;var I='<div id="tempBox" style="position:absolute;top:'+M+"px;";I+="left:"+L+"px;margin:0px;padding:0px;";I+="width:"+2*C+"px;height:"+2*A+'px;"></div>';new Insertion.After(D,I);var K=$("tempBox");if(Position.within(K,H,F)){K.remove();return true}K.remove();return false});if(G){return false}return true},ajaxFailure:function(A){$("loading_insertOverlay").remove();alert("Error "+A.responseText)}};
