Most visitors online was 12542 , on 28 Apr 2024
Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!
Join Today!If I need anything, I'll be sure to ask you first!I have groups and homes for holocms 100% working if u want, but im sure theres plenty of releases on rz of that for holo/haddo... lmk
[/COLOR]
[COLOR=#222222]
[/COLOR][COLOR=#222222]
#registerform input.register-ok {
background: #FFF url(../images/registration/ok_icon.gif) no-repeat 99% 50%;
}
[/COLOR][COLOR=#222222]
[/COLOR][COLOR=#222222]HabboView.add(function(){HabboEditor.addCallback("setGender",function(e){$("register-gender").value=e}),HabboEditor.addCallback("setFigure",function(e){$("register-figure").value=e}),HabboEditor.addCallback("setEditorState",function(e){$("register-editor-state").value=e}),window.refreshingAvatars=!1,$("register-avatars-refresh")&&Event.observe($("register-avatars-refresh"),"click",function(e){window.refreshingAvatars=!0}),$("register-birthday")&&(RegistrationForm.createEnterValidBirthdayTooltip(),Event.observe($("register-birthday"),"click",function(){Tips.get("register-birthday")&&($("register-birthday").removeClassName("error"),Tips.get("register-birthday").hideTip())})),$("register-name")&&(RegistrationForm.createCheckButtonTooltip(),RegistrationForm.createNameTooltip(),RegistrationForm.previousName=$F("register-name"),Event.observe($("register-name"),"keydown",function(e){if(e.keyCode==Event.KEY_TAB||e.keyCode==Event.KEY_RETURN)Event.stop(e),RegistrationForm.Validator._checkName();else{var t=$F("register-name");t!=RegistrationForm.previousName&&(RegistrationForm.Validator._resetErrorState($("register-name")),RegistrationForm.previousName=t,RegistrationForm.Validator._lastCheckedName="",$("registration-overlay").style.display="block",RegistrationForm._toggleFormSection("register-section-3",!0),"create"!=RegistrationForm.nameTooltipState&&(RegistrationForm.nameTooltipState="create",RegistrationForm.createNameTooltip(),Tips.get($("register-name")).showTip())),RegistrationForm.Validator._nameCheckNeeded=!0}}),Event.observe($("register-name-check"),"click",function(e){Event.stop(e),RegistrationForm.Validator._checkName()}),$("register-name-check-container").show(),Event.observe($("register-name"),"blur",function(e){""!==$F("register-name")&&RegistrationForm.Validator._nameCheckNeeded&&(RegistrationForm.nameSuggestionEnabled||Tips.get("register-name-check").showTip(),RegistrationForm.Validator._showErrorState($("register-name")))}),Event.observe($("register-name"),"focus",function(e){Tips.get("register-name-check").hideTip()})),$("register-password")&&(RegistrationForm.createPasswordTooltip(),new Form.Element.Observer($("register-password"),.5,RegistrationForm.Validator.checkPasswordValidity),Event.observe($("register-password"),"keyup",function(e){var t=$("register-password"),r=$F("register-password");RegistrationForm.Validator._lastCheckedPassword="",Tips.get(t).hideTip(),""!==r&&r.length<6?(RegistrationForm.Validator._showErrorState(t,!0),"tooshort"!=RegistrationForm.passwordTooltipState&&(RegistrationForm.passwordTooltipState="tooshort",RegistrationForm.createPasswordTooShortTooltip())):""===r&&(RegistrationForm.Validator._resetErrorState(t),RegistrationForm.Validator._resetErrorState($("register-password2")),$("register-password2").value="","create"!=RegistrationForm.passwordTooltipState&&(RegistrationForm.passwordTooltipState="create",RegistrationForm.createPasswordTooltip())),Tips.get(t).showTip()}),Event.observe($("register-password2"),"focus",function(e){""===$F("register-password")&&$("register-password").focus(),Tips.get("register-password").showTip()}),Event.observe($("register-password2"),"blur",function(e){Tips.get("register-password").hideTip()}),Event.observe($("register-password2"),"keyup",function(e){var t=$("register-password2"),r=$F("register-password2");""!==r?$("register-password").hasClassName("error")?"invalid"!=RegistrationForm.passwordTooltipState&&(RegistrationForm.passwordTooltipState="invalid",RegistrationForm.createPasswordInvalidTooltip()):r==$F("register-password")?(RegistrationForm.Validator._showSuccessState(t),"success"!=RegistrationForm.passwordTooltipState&&(RegistrationForm.passwordTooltipState="success",RegistrationForm.createPasswordSuccessTooltip())):(RegistrationForm.Validator._showErrorState(t,!0),"notsame"!=RegistrationForm.passwordTooltipState&&(RegistrationForm.passwordTooltipState="notsame",RegistrationForm.createRetypedPasswordNotSameTootip())):""!==$F("register-password")&&(RegistrationForm.Validator._resetErrorState(t),"retype"!=RegistrationForm.passwordTooltipState&&(RegistrationForm.passwordTooltipState="retype",RegistrationForm.createRetypePasswordTooltip())),Tips.get("register-password").showTip()})),$("register-email")&&(RegistrationForm.createEmailToolTip(),new Form.Element.Observer($("register-email"),.5,RegistrationForm.Validator.checkEmailValidity),Event.observe($("register-email"),"keyup",function(e){var t=$F("register-email"),r=$("register-email");RegistrationForm.Validator._lastCheckedEmail="",Tips.get(r).hideTip(),""===t?(RegistrationForm.Validator._resetErrorState(r),RegistrationForm.Validator._resetErrorState($("register-email2")),$("register-email2").value="","create"!=RegistrationForm.emailTooltipState&&(RegistrationForm.emailTooltipState="create",RegistrationForm.createEmailToolTip())):RegistrationForm.Validator.validateEmail(t)||(RegistrationForm.Validator._showErrorState(r,!0),"invalid"!=RegistrationForm.emailTooltipState&&(RegistrationForm.emailTooltipState="invalid",RegistrationForm.createInvalidEmailTooltip())),Tips.get(r).showTip()}),Event.observe($("register-email2"),"keyup",function(e){var t=$("register-email2"),r=$F("register-email2");""!==r?$("register-email").hasClassName("error")?"invalid"!=RegistrationForm.emailTooltipState&&(RegistrationForm.emailTooltipState="invalid",RegistrationForm.createInvalidEmailTooltip()):r==$F("register-email")?(RegistrationForm.Validator._showSuccessState(t),"success"!=RegistrationForm.emailTooltipState&&(RegistrationForm.emailTooltipState="success",RegistrationForm.createEmailSuccessTooltip())):(RegistrationForm.Validator._showErrorState(t,!0),"notsame"!=RegistrationForm.emailTooltipState&&(RegistrationForm.emailTooltipState="notsame",RegistrationForm.createRetypedEmailNotSameTootip())):""!==$F("register-email")&&(RegistrationForm.Validator._resetErrorState(t),"retype"!=RegistrationForm.emailTooltipState&&(RegistrationForm.emailTooltipState="retype",RegistrationForm.createRetypeEmailTooltip())),Tips.get("register-email").showTip()}),Event.observe($("register-email2"),"focus",function(e){""===$F("register-email")&&$("register-email").focus(),Tips.get("register-email").showTip()}),Event.observe($("register-email2"),"blur",function(e){Tips.get("register-email").hideTip()})),Event.observe($("registerform"),"submit",RegistrationForm.handleSubmit)}),RegistrationForm={ageLimit:-1,banHours:-1,parentEmailAgeLimit:-1,previousName:null,passwordTooltipState:null,emailTooltipState:null,nameTooltipState:null,elementFocused:null,isCaptchaEnabled:!1,personalInfoDisabled:!1,nameSuggestionEnabled:!1,captchaPublicKey:"none",registrationTipStyle:{className:"bubbletip left",title:" ",hook:{target:"topRight",tip:"bottomRight"},fixed:!0,startEvent:"focus",endEvent:"blur"},defaultPos:{offset:{x:40,y:-6}},init:function(e){e&&($("registration-overlay").style.display="block",RegistrationForm._toggleFormSection("register-section-3",!0),RegistrationForm.personalInfoDisabled=!0,RegistrationForm.createPersonalInfoDisabledTooltip(),$("register-name")&&$("register-name").focus())},handleSubmit:function(e){window.refreshingAvatars||(RegistrationForm.Validator.validate()?RegistrationForm.isRegistrationAllowed()?!RegistrationForm.Validator._parentEmailOk&&RegistrationForm.isParentEmailNeeded()?(Event.stop(e),RegistrationForm.showParentEmailCaptchaField(),$("register-parentEmail-bubble").focus()):!RegistrationForm.Validator._captchaOk&&RegistrationForm.isCaptchaEnabled?(Event.stop(e),RegistrationForm.showParentEmailCaptchaField(),$("imagestring")?$("imagestring").focus():$("recaptcha_response_field")&&$("recaptcha_response_field").focus()):(Event.stopObserving($("registerform"),"submit",RegistrationForm.handleSubmit),Event.observe($("registerform"),"submit",function(e){return!1})):(Event.stop(e),Cookie.set("rb",1,RegistrationForm.banHours/24),RegistrationForm.showAgeLimitMessage()):(Event.stop(e),Element.show("form-validation-error-box")))},cancel:function(e){location.href=habboReqPath+"index.php"+(e||"")},isParentEmailNeeded:function(){if(-1<RegistrationForm.parentEmailAgeLimit&&$("register-birthday")){var e=RegistrationForm._calculateAge();if(-1!=e)return e<=RegistrationForm.parentEmailAgeLimit}return!1},showParentEmailCaptchaField:function(){if($("register-parent-email"))RegistrationForm.isParentEmailNeeded()&&RegistrationForm.Validator.checkParentEmailValidity();else{Element.hide("form-validation-error-box");var e="";RegistrationForm.isParentEmailNeeded()&&(e=e.concat(L10N.get("register.message.parent_email_js_form"))),RegistrationForm.isCaptchaEnabled&&(e=e.concat(L10N.get("register.message.captcha_js_form"))),RegistrationForm._showErrorBubble("register-parent-email",e,function(){RegistrationForm._disableFormFields(!0,["register-button-continue","register-parentEmail-bubble","imagestring","register-permission-bubble","recaptcha_response_field"]),$("captcha-reload")?Event.observe($("captcha-reload"),"click",function(e){Event.stop(e),Utils.reloadCaptcha()}):$("recaptcha-reload")&&(Event.observe($("recaptcha-reload"),"click",function(e){Event.stop(e),Recaptcha.reload()}),Utils.showRecaptcha("recaptcha_challenge",RegistrationForm.captchaPublicKey))}),$("imagestring")&&Event.observe($("imagestring"),"keyup",RegistrationForm.Validator.checkCapchaValidity),$("recaptcha_response_field")&&Event.observe($("recaptcha_response_field"),"keyup",RegistrationForm.Validator.checkCapchaValidity),$("register-parentEmail-bubble")&&(Prototype.Browser.IE&&($("bean_month").setStyle({visibility:"hidden"}),$("bean_year").setStyle({visibility:"hidden"})),Rounder.addCorners($("parentEmail-error-box-container"),4,4,"rounded-container"),Event.observe($("register-parentEmail-bubble"),"keypress",function(e){e.keyCode==Event.KEY_TAB||e.keyCode==Event.KEY_RETURN?RegistrationForm.Validator.checkParentEmailValidity():(RegistrationForm.Validator._lastCheckedParentEmail="",RegistrationForm.Validator._parentEmailOk=!1,RegistrationForm.Validator._resetErrorState($("register-parentEmail-bubble")),$("parentEmail-error-box-content").innerHTML=L10N.get("register.tooltip.enteremail"))}),RegistrationForm._track("parentEmail"))}},showAgeLimitMessage:function(){RegistrationForm._showErrorBubble("register-ageLimit",L10N.get("register.message.age_limit_ban"),function(){RegistrationForm._disableFormFields(!1,["register-parentEmail-cancel"])}),RegistrationForm._track("ageLimit")},isRegistrationAllowed:function(){if(-1<RegistrationForm.ageLimit){var e=RegistrationForm._calculateAge();if(-1!=e)return e>=RegistrationForm.ageLimit}return!0},createNameTooltip:function(){new Tip("register-name",L10N.get("register.tooltip.name"),Object.extend({target:$("register-section-2"),offset:{x:155,y:3}},RegistrationForm.registrationTipStyle))},createPasswordTooltip:function(){RegistrationForm._createTooltip("register-password","register.tooltip.password")},createRetypePasswordTooltip:function(){RegistrationForm._createTooltip("register-password","register.tooltip.retypepassword")},createCheckButtonTooltip:function(){new Tip("register-name-check",L10N.get("register.tooltip.namecheck"),{className:"bubbletip left",title:" ",hook:{target:"topRight",tip:"bottomRight"},offset:{x:130,y:-3},startEvent:"focus",endEvent:"blur"})},createPersonalInfoDisabledTooltip:function(){new Tip("registration-overlay",L10N.get("register.tooltip.personalinfo.disabled"),{className:"bubbletip left",title:" ",hook:{target:"topRight",tip:"bottomRight"},fixed:!0,offset:{x:20,y:150}})},createNameSuccessTooltip:function(){new Tip("register-name",L10N.get("register.tooltip.namechecksuccess"),Object.extend({offset:{x:85,y:-6}},RegistrationForm.registrationTipStyle))},createPasswordSuccessTooltip:function(){RegistrationForm._createTooltip("register-password","register.tooltip.passwordsuccess")},createPasswordTooShortTooltip:function(){RegistrationForm._createTooltip("register-password","register.tooltip.passwordtooshort")},createRetypedPasswordNotSameTootip:function(){RegistrationForm._createTooltip("register-password","register.tooltip.passwordnotsame")},createPasswordInvalidTooltip:function(){RegistrationForm._createTooltip("register-password","register.tooltip.invalidpassword")},createEmailToolTip:function(){RegistrationForm._createTooltip("register-email","register.tooltip.email")},createRetypeEmailTooltip:function(){RegistrationForm._createTooltip("register-email","register.tooltip.retypeemail")},createInvalidEmailTooltip:function(){RegistrationForm._createTooltip("register-email","register.tooltip.invalidemail")},createEmailSuccessTooltip:function(){RegistrationForm._createTooltip("register-email","register.tooltip.emailsuccess")},createRetypedEmailNotSameTootip:function(){RegistrationForm._createTooltip("register-email","register.tooltip.emailnotsame")},createEnterPasswordTooltip:function(){RegistrationForm._createTooltip("register-password","register.tooltip.enterpassword")},createEnterNameToolTip:function(){RegistrationForm._createTooltip("register-name","register.tooltip.entername")},createEnterEmailTooltip:function(){RegistrationForm._createTooltip("register-email","register.tooltip.enteremail")},createEnterBirthdayTooltip:function(){RegistrationForm._createTooltip("register-birthday","register.tooltip.enterbirthday")},createEnterValidBirthdayTooltip:function(){RegistrationForm._createTooltip("register-birthday","register.tooltip.invalidbirthday")},_createTooltip:function(e,t){new Tip(e,L10N.get(t),Object.extend(RegistrationForm.defaultPos,RegistrationForm.registrationTipStyle))},updateNameFromBubble:function(e){var t=$("register-name");t.value=e,t.removeClassName("error"),t.addClassName("register-ok"),RegistrationForm.Validator._lastCheckedName=e,RegistrationForm.Validator._nameCheckNeeded=!1,"success"!=RegistrationForm.nameTooltipState&&(RegistrationForm.nameTooltipState="success",RegistrationForm.createNameSuccessTooltip(),Tips.get("register-name-check").hideTip()),$("registration-overlay").style.display="none",RegistrationForm._toggleFormSection("register-section-3",!1),RegistrationForm.personalInfoDisabled=!1,RegistrationForm.nameSuggestionEnabled=!1,$("register-password").focus()},_showErrorBubble:function(e,t,r){var i=$("register-buttons"),o=Builder.node("div",{id:e,className:"bubbletip"},[Builder.node("div",{className:"title"}),Builder.node("div",{id:"error-bubble-content",className:"content"})]);i.appendChild(o),$("error-bubble-content").innerHTML=t,Element.hide(o),r&&r();var a=Element.getDimensions(o),s=Element.getDimensions(i);o.style.left=s.width-a.width/2-50+"px",o.style.top=$("register-button-continue").offsetTop-a.height-50+"px",Element.show(o)},_calculateAge:function(){var e=$F("bean_year"),t=$F("bean_month"),r=$F("bean_day");if(e&&t&&r){var i=new Date,o=new Date;o.setFullYear(e,t-1,r);var a=i.getFullYear()-o.getFullYear();if((o.getMonth()>i.getMonth()||o.getMonth()==i.getMonth()&&o.getDate()>i.getDate())&&a--,0<=a)return a}return-1},_disableFormFields:function(i,o){var a=$("registerform"),e=a.getElementsByTagName("*");$A(e).each(function(e){if(("select"==e.tagName.toLowerCase()||"input"==e.tagName.toLowerCase())&&"hidden"!=e.type&&-1==o.indexOf(e.id)&&(e.disabled=!0,i&&"button"!=e.type&&"submit"!=e.type)){var t=e.value,r=e.name;("radio"!=e.type&&"checkbox"!=e.type||"radio"==e.type&&e.checked||"checkbox"==e.type&&e.checked)&&a.appendChild(Builder.node("input",{type:"hidden",name:r,value:t})),e.name=r+"Disabled"}})},_toggleFormSection:function(e,t){var r=$(e).getElementsByTagName("*");$A(r).each(function(e){"select"!=e.tagName.toLowerCase()&&"input"!=e.tagName.toLowerCase()||(e.disabled=t)})},_track:function(e){window.pageTracker&&pageTracker._trackPageview("/register/"+e)}},RegistrationForm.Validator={_lastCheckedName:null,_lastCheckedPassword:null,_lastCheckedEmail:null,_lastCheckedParentEmail:null,_lastCheckedCaptcha:null,_nameCheckNeeded:!0,_captchaOk:!1,_parentEmailOk:!1,validate:function(){var r=!0,e=function(e,t){t()||(r=!1,RegistrationForm.Validator._showErrorState($(e),!0),RegistrationForm.elementFocused=e)};return RegistrationForm.elementFocused="",RegistrationForm.personalInfoDisabled||($("register-birthday")&&e("register-birthday",function(){return!!($F("bean_year")&&$F("bean_month")&&$F("bean_day"))&&!((new Date).setFullYear($F("bean_year"),$F("bean_month")-1,$F("bean_day"))>new Date)}),$("register-email")&&(e("register-email",function(){return""===$F("register-email")&&(RegistrationForm.emailTooltipState="enter"),RegistrationForm.Validator.validateEmail($F("register-email"))&&!$("register-email").hasClassName("error")}),e("register-email2",function(){return!!$("register-email").hasClassName("error")||(""===$F("register-email2")?RegistrationForm.emailTooltipState="retype":$F("register-email")!=$F("register-email2")&&(RegistrationForm.emailTooltipState="notsame",RegistrationForm.createRetypedEmailNotSameTootip()),RegistrationForm.Validator.validateEmail($F("register-email2"))&&$F("register-email")==$F("register-email2"))})),$("register-password")&&(e("register-password",function(){return""===$F("register-password")&&(RegistrationForm.passwordTooltipState="enter",RegistrationForm.createEnterPasswordTooltip()),!!$F("register-password")&&!$("register-password").hasClassName("error")}),e("register-password2",function(){return!!$("register-password").hasClassName("error")||(""===$F("register-password2")?(RegistrationForm.passwordTooltipState="retype",RegistrationForm.createRetypePasswordTooltip()):$F("register-password")!=$F("register-password2")&&(RegistrationForm.emailTooltipState="notsame",RegistrationForm.createRetypedPasswordNotSameTootip()),!!$F("register-password2")&&$F("register-password")==$F("register-password2"))}))),$("register-name")&&e("register-name",function(){return""===$F("register-name")&&(RegistrationForm.nameTooltipState="enter",RegistrationForm.createEnterNameToolTip()),!!$F("register-name")&&!$("register-name").hasClassName("error")}),$("register-parentEmail")&&e("parentEmail",function(){return RegistrationForm.Validator.checkParentEmailValidity(),RegistrationForm.Validator._parentEmailOk}),$("recaptcha_response_field")&&e("recaptcha_response_field",function(){return!!$F("recaptcha_response_field")&&(RegistrationForm.Validator._captchaOk=!0),!!$F("recaptcha_response_field")}),RegistrationForm.Validator._showNonFieldTips(),r},checkNameAvailability:function(){Tips.get("register-name-check").hideTip();var e=$F("register-name");""!==e&&RegistrationForm.Validator._nameCheckNeeded?($("register-name").addClassName("register-loading"),RegistrationForm.Validator._lastCheckedName=e,new Ajax.Request(habboReqPath+"xmlhttp.php?action=username_availability",{method:"post",parameters:{name:e},onComplete:function(e,t){var r;($("register-name").removeClassName("register-loading"),t.registration_name_in_use||t.registration_name)?($("register-name").removeClassName("register-ok"),$("register-name").addClassName("error"),t.registration_name_in_use&&""!==e.responseText?(r=e.responseText,RegistrationForm.nameSuggestionEnabled=!0):r=t.registration_name?t.registration_name:t.registration_name_in_use,new Tip("register-name",r,{className:"bubbletip left",title:" ",hook:{target:"topRight",tip:"bottomRight"},offset:{x:85,y:-3},fixed:!0,startEvent:"focus",endEvent:null}),RegistrationForm.Validator._boundNameClickObserver=RegistrationForm.Validator._nameClickObserver.bindAsEventListener(document),RegistrationForm.Validator._nameCheckNeeded=!0,Event.observe(document,"click",RegistrationForm.Validator._boundNameClickObserver),$("register-name").focus(),Tips.get("register-name").showTip()):(RegistrationForm.Validator._showSuccessState($("register-name")),"success"!=RegistrationForm.nameTooltipState&&(RegistrationForm.nameTooltipState="success",RegistrationForm.createNameSuccessTooltip()),$("name-error-box").hide(),RegistrationForm.Validator._nameCheckNeeded=!1,Event.stopObserving(document,"click",RegistrationForm.Validator._boundNameClickObserver),$("registration-overlay").style.display="none",RegistrationForm._toggleFormSection("register-section-3",!1),RegistrationForm.personalInfoDisabled=!1,$("register-password").focus())}})):""===e&&$("register-name").removeClassName("register-ok")},checkEmailValidity:function(){var o=$F("register-email"),a=$("register-email");o!=RegistrationForm.Validator._lastCheckedEmail&&RegistrationForm.Validator.validateEmail(o)&&(RegistrationForm.Validator._lastCheckedEmail=o,new Ajax.Request(habboReqPath+"xmlhttp.php?action=email_availability",{method:"post",parameters:{email:o},onComplete:function(e,t){if("emailOk"==t){var r=$F("register-email2"),i=$("register-email2");r&&r==o?(RegistrationForm.Validator._resetErrorState(i),RegistrationForm.Validator._showSuccessState(i),RegistrationForm.emailTooltipState="success",RegistrationForm.createEmailSuccessTooltip()):r&&""!==r?(RegistrationForm.Validator._showErrorState(i,!1),"notsame"!=RegistrationForm.emailTooltipState&&(RegistrationForm.emailTooltipState="notsame",RegistrationForm.createRetypedEmailNotSameTootip())):"retype"!=RegistrationForm.emailTooltipState&&(RegistrationForm.emailTooltipState="retype",RegistrationForm.createRetypeEmailTooltip()),a.removeClassName("error"),a.addClassName("register-ok")}else RegistrationForm.Validator._showErrorState(a,!1),"invalid"!=RegistrationForm.emailTooltipState&&(RegistrationForm.emailTooltipState="invalid",RegistrationForm.createInvalidEmailTooltip());Tips.get(a).showTip()}}))},checkCapchaValidity:function(e){RegistrationForm.Validator._captchaOk=""!==Event.element(e).value},checkPasswordValidity:function(){var o=$("register-password"),a=$F("register-password");a&&6<=a.length&&a!=RegistrationForm.Validator._lastCheckedPassword&&(RegistrationForm.Validator._lastCheckedPassword=a,new Ajax.Request(habboReqPath+"xmlhttp.php?action=complex_password",{method:"post",parameters:{password:a},onComplete:function(e,t){if("charOk"==t){var r=$F("register-password2"),i=$("register-password2");r&&r==a?(RegistrationForm.Validator._resetErrorState(i),RegistrationForm.Validator._showSuccessState(i),RegistrationForm.passwordTooltipState="success",RegistrationForm.createPasswordSuccessTooltip()):r&&""!==r?(RegistrationForm.Validator._showErrorState(i,!1),"notsame"!=RegistrationForm.passwordTooltipState&&(RegistrationForm.passwordTooltipState="notsame",RegistrationForm.createRetypedPasswordNotSameTootip())):"retype"!=RegistrationForm.passwordTooltipState&&(RegistrationForm.passwordTooltipState="retype",RegistrationForm.createRetypePasswordTooltip()),o.removeClassName("error"),o.addClassName("register-ok")}else RegistrationForm.Validator._showErrorState(o,!1),RegistrationForm.passwordTooltipState="error",new Tip("register-password",e.responseText,Object.extend(RegistrationForm.defaultPos,RegistrationForm.registrationTipStyle));Tips.get(o).showTip()}}))},_showErrorState:function(e,t){e.removeClassName("register-ok"),e.addClassName("error"),t&&!e.disabled&&e.focus()},_showSuccessState:function(e){e.removeClassName("error"),e.addClassName("register-ok")},_resetErrorState:function(e){e.removeClassName("error"),e.removeClassName("register-ok")},validateEmail:function(e){return!!e&&-1!=e.search(/[^@]+@[^@]+/i)},_nameClickObserver:function(e){var t=Event.element(e);"namelist-link"==t.className?(Event.stop(e),RegistrationForm.updateNameFromBubble(t.name)):"register-name"!=t.id&&Tips.get($("register-name")).hideTip()},_checkName:function(){var e=$F("register-name");""!==e&&e!=RegistrationForm.Validator._lastCheckedName?(RegistrationForm.Validator._resetErrorState($("register-name")),RegistrationForm.Validator.checkNameAvailability()):$("register-name").focus()},_showNonFieldTips:function(){"register-birthday"==RegistrationForm.elementFocused&&Tips.get("register-birthday").showTip()}};var HabboEditor=function(){var e=!0,r=[];return{addCallback:function(e,t){r[e]||(r[e]=[]),r[e].push(t)},setGenderAndFigure:function(e,t){this.setGender(e),this.setFigure(t)},setFigure:function(t){t,r.setFigure&&r.setFigure.each(function(e){e(t)})},setGender:function(t){t,r.setGender&&r.setGender.each(function(e){e(t)})},setAllowedToProceed:function(t){e=t,r.setAllowedToProceed&&r.setAllowedToProceed.each(function(e){e(t)})},isAllowedToProceed:function(){return e},showHabboClubNotice:function(){r.showHabboClubNotice&&r.showHabboClubNotice.each(function(e){e()})},hideHabboClubNotice:function(){r.hideHabboClubNotice&&r.hideHabboClubNotice.each(function(e){e()})},showOldFigureNotice:function(){r.showOldFigureNotice&&r.showOldFigureNotice.each(function(e){e()})},hideOldFigureNotice:function(){r.hideOldFigureNotice&&r.hideOldFigureNotice.each(function(e){e()})},setEditorState:function(t){r.setEditorState&&r.setEditorState.each(function(e){e(t)})}}}();
[/COLOR][COLOR=#222222]
<html>
<head>
<title>{$mybb->settings['bbname']} - {$lang->profile}</title>
{$headerinclude}
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/myhabbo.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/skins.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/dialogs.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/buttons.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/control.textarea.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/boxes.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/myhabbo.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/assets.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/group.css" type="text/css" />
{$navi2}
<script src="{$theme['imgdir']}/static/js/homeview.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/homeauth.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/homeedit.js" type="text/javascript"></script>
<script type="text/javascript">
document.observe('dom:loaded', function() {
initView({$id}, {$id});
});
function cancelEditing(expired) {
location.replace('member.php?action=profile&uid={$id}');
}
</script>
</head>
<body id="{$mode}">
{$header}
<div id="content-container">
<div id="navi2-container" class="pngbg">
<div id="navi2" class="pngbg clearfix">
<ul>
<li><a href="{$mybb->settings['bburl']}/index.php">Homepage</a></li>
<li class="selected">My Page</li>
<li>Account Settings</li>
<li class="last">{$mybb->settings['bbname']} Club</li>
</ul>
</div>
</div>
</div>
<div id="container">
<div id="content" style="position: relative;" class="clearfix">
<div id="mypage-wrapper" class="cbb blue">
<div class="box-tabs-container box-tabs-left clearfix">
{$edit}
<h2 class="page-owner">{$formattedname}</h2>
<ul class="box-tabs"></ul>
</div>
<div id="mypage-content">
{$editpage}
<div id="mypage-bg" class="{$background}{">
<div id="playground-outer">
<div id="playground">
{$display}
</div>
</div>
</div>
</div>
<script language="JavaScript" type="text/javascript">
initEditToolbar();
initMovableItems();
document.observe('dom:loaded', initDraggableDialogs);
</script>
<div id="edit-save" style="display:none;"></div>
{$footer}
</body>
</html>
<html>
<head>
<title>{$mybb->settings['bbname']} - {$lang->profile}</title>
{$headerinclude}
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/myhabbo.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/skins.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/dialogs.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/buttons.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/control.textarea.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/boxes.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/assets.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/myhabbo.css" type="text/css" />
{$profileincludes}
</head>
<body id="{$profilemode}">
{$header}
<div id="content-container">
<div id="navi2-container" class="pngbg">
<div id="navi2" class="pngbg clearfix">
<ul>
<li><a href="{$mybb->settings['bburl']}/index.php">Homepage</a></li>
<li class="selected">My Page</li>
<li>Account Settings</li>
<li class="last">{$mybb->settings['bbname']} Club</li>
</ul>
</div>
</div>
</div>
<div id="container">
<div id="content" class="clearfix">
<div id="mypage-wrapper" class="cbb blue">
<div class="box-tabs-container box-tabs-left clearfix">
{$editbutton}
<h2 class="page-owner">{$formattedname}</h2>
<ul class="box-tabs"></ul>
</div>
<div id="mypage-content">
{$toptoolbar}
<div id="mypage-bg" class="{$profilebackground}">
<div id="playground-outer">
<div id="playground">
{$profilecontents}
</div>
</div>
</div>
</div>
</div>
{$footer}
</body>
</html>
global $db;
$mode = $mybb->get_input('key');
$type = $mybb->get_input('type');
$widget = $db->escape_string($mybb->get_input('itemId', MyBB::INPUT_INT));
// $noteText = $mybb->get_input('noteText');
// $newskin = $mybb->get_input('skin', MyBB::INPUT_INT);
$stickerid = $db->escape_string($mybb->get_input('selectedStickerId', MyBB::INPUT_INT));
$z = $db->escape_string($mybb->get_input('zindex', MyBB::INPUT_INT));
if(empty($type) && empty($widget) && empty($stickerid) && empty($z) != "")
{
error_no_permission();
exit;
}
if($mode == 'inventory')
{
$query = $db->simple_select("profileinventory", "message", "type = '1'", array("limit" => 1));
if($db->num_rows($query) > 0)
{
$results = $db->fetch_array($query);
header('X-JSON: [["Inventory", "Webstore"], ["'.$results['message'].'_pre", "'.$results['message'].'", "'.$results['message'].'", "Sticker", null, 1]]');
}
else
{
header('X-JSON: [["Inventory", "Webstore"], []]');
}
echo '
<div style="position: relative;">
<div id="inventory-categories-container">
<h4>Categories:</h4>
<div id="inventory-categories">
<ul class="purchase-main-category">
<li id="inv-cat-stickers" class="selected-main-category-no-subcategories"><div><strong>Stickers</strong></div></li>
<li id="inv-cat-bling" class="main-category-no-subcategories"><div>∟ Alpha Bling</div></li>
<li id="inv-cat-plastic" class="main-category-no-subcategories"><div>∟ Alpha Platic</div></li>
<li id="inv-cat-wood" class="main-category-no-subcategories"><div>∟ Alpha Wood</div></li>
<li id="inv-cat-buttons" class="main-category-no-subcategories"><div>∟ Buttons</div></li>
<li id="inv-cat-backgrounds" class="main-category-no-subcategories"><div><strong>Backgrounds</strong></div></li>
<li id="inv-cat-widgets" class="main-category-no-subcategories"><div><strong>Widgets</strong></div></li>
<li id="inv-cat-notes" class="main-category-no-subcategories"><div><strong>Notes</strong></div></li>
</ul>
</div>
</div>
<div id="inventory-content-container">
<div id="inventory-items-container">
<h4>Click an item to select it:</h4>
<div id="inventory-items">
<ul id="inventory-item-list">';
$query = $db->simple_select("profileinventory", "fid, message", "type = '1'");
$number = $db->num_rows($query);
if($number > 0)
{
while($results = $db->fetch_array($query))
{
echo '
<li id="inventory-item-'.$results['fid'].'" title="'.$results['message'].'">
<div class="webstore-item-preview '.$results['message'].'_pre">
<div class="webstore-item-mask"><div class="webstore-item-count"><div>∞</div></div></div>
</div>
</li>';
}
if($number < 20)
{
$number = 20 - $number;
for($count = 1; $count <= $number; $count++)
{
echo '<li class="webstore-item-empty"></li>';
}
}
}
else
{
echo '
<div class="webstore-frank">
<div class="blackbubble">
<div class="blackbubble-body">
<p><strong>Your inventory for this category is completely empty!</strong></p>
<br class="clear" />
</div>
</div>
<div class="blackbubble-bottom">
<div class="blackbubble-bottom-body"><img src="'.$bburl.'/web-gallery/images/box-scale/bubble_tail_small.gif" alt="" class="invitation-tail" /></div>
</div>
<div class="webstore-frank-image"><img src="'.$bburl.'/web-gallery/images/frank/sorry.gif" alt="" /></div>
</div>';
}
echo '
</ul>
</div>
</div>
<div id="inventory-preview-container">
<div id="inventory-preview-default"></div>
<div id="inventory-preview">
<h4> </h4>
<div id="inventory-preview-box"></div>
<div id="inventory-preview-place" class="clearfix">
<div class="clearfix">
<a href="#" class="new-button" id="inventory-place"><b>Place</b><i></i></a>
</div>
</div>
</div>
</div>
</div>
<div id="webstore-close-container">
<div class="clearfix"><a href="#" id="webstore-close" class="new-button"><b>Close</b><i></i></a></div>
</div>';
}
elseif($mode == 'inventory_items')
{
if($type == 'stickers')
{
$typeset = 1;
}
else if($type == 'widgets')
{
$typeset = 2;
}
else if($type == 'notes')
{
$typeset = 3;
}
else if($type == 'backgrounds')
{
$typeset = 4;
}
if($typeset != 2)
{
$query = $db->simple_select("profileinventory", "fid, message", "type = '".$typeset."'");
$number = $db->num_rows($query);
echo '
<ul id="webstore-item-list">';
if($number > 0)
{
while($results = $db->fetch_array($query))
{
echo '
<li id="inventory-item-'.$results['fid'].'" title="'.$results['message'].'">
<div class="webstore-item-preview '.$inventorytype.$results['message'].'_pre">
<div class="webstore-item-mask"><div class="webstore-item-count"><div>∞</div></div></div>
</div>
</li>';
}
if($number < 20)
{
$number = 20 - $number;
for($count = 1; $count <= $number; $count++)
{
echo '<li class="webstore-item-empty"></li>';
}
}
}
else
{
echo '
<div class="webstore-frank">
<div class="blackbubble">
<div class="blackbubble-body">
<p><strong>Your inventory for this category is completely empty!</strong></p>
<br class="clear" />
</div>
</div>
<div class="blackbubble-bottom">
<div class="blackbubble-bottom-body"><img src="'.$bburl.'/web-gallery/images/box-scale/bubble_tail_small.gif" alt="" class="invitation-tail" /></div>
</div>
<div class="webstore-frank-image"><img src="'.$bburl.'/web-gallery/images/frank/sorry.gif" alt="" /></div>
</div>';
}
echo '
</ul>';
}
else
{
echo '
<ul id="inventory-item-list">
<li id="inventory-item-p-1" title="Guestbook" class="webstore-widget-item '.webstorewidgetdisabled(2).'">
<div class="webstore-item-preview w_guestbookwidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>Guestbook</h3>
<p>Guestbook</p>
</div>
</li>
<li id="inventory-item-p-2" title="My Friends" class="webstore-widget-item '.webstorewidgetdisabled(3).'">
<div class="webstore-item-preview w_friendswidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Friends</h3>
<p>Display all your friends</p>
</div>
</li>
<li id="inventory-item-p-3" title="My Badges" class="webstore-widget-item '.webstorewidgetdisabled(4).'">
<div class="webstore-item-preview w_badgeswidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Badges</h3>
<p>Show your badges on your page.</p>
</div>
</li>
<li id="inventory-item-p-4" title="My Video" class="webstore-widget-item '.webstorewidgetdisabled(5).'">
<div class="webstore-item-preview w_movieswidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Video</h3>
<p>Lights, camera and action.</p>
</div>
</li>
<li id="inventory-item-p-5" title="My Ratings" class="webstore-widget-item '.webstorewidgetdisabled(6).'">
<div class="webstore-item-preview w_ratingwidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Ratings</h3>
<p>Let other people rate your page.</p>
</div>
</li>
<li id="inventory-item-p-6" title="My Trax" class="webstore-widget-item '.webstorewidgetdisabled(7).'">
<div class="webstore-item-preview w_traxplayerwidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Trax</h3>
<p>Listen to music on your page.</p>
</div>
</li>
</ul>';
}
}
else if($mode == 'inventory_preview')
{
header('X-JSON: ["'.inventorypreview($widget, $type).'_pre", "'.inventorypreview($widget, $type).'", "'.inventorypreview($widget, $type).'", "'.$type.'", null, 1]');
echo '
<h4> </h4>
<div id="inventory-preview-box"></div>
<div id="inventory-preview-place" class="clearfix">
<div class="clearfix"><a href="#" class="new-button" id="inventory-place"><b>Place</b><i></i></a></div>
</div>';
}
else if($mode == 'place_sticker')
{
$query = $db->simple_select("profileinventory", "*", "fid = '".$stickerid."' AND type = '1'", array("limit" => 1));
if($db->num_rows($query) > 0)
{
$results = $db->fetch_array($query);
$insert = array(
'message' => $results['message'],
'type' => '1',
'subtype' => '0',
'pid' => $myid,
'x' => '10',
'y' => '10',
'z' => $z
);
$db->insert_query("profilestickers", $insert);
$query = $db->simple_select("profilestickers", "*", "pid = '".$myid."' AND message = '".$results['message']."' AND type = '1'", array("order_by" => "fid DESC", "limit" => 1));
$results = $db->fetch_array($query);
header('X-JSON: ['.$results['fid'].','.$results['fid'].']');
echo '<div class="movable sticker '.$results['message'] . '" style="left: 10px; top: 10px; z-index: '.$results['z'].'" id="sticker-'.$results['fid'].'">
<img src="'.$bburl.'/web-gallery/images/myhabbo/icon_edit.gif" class="edit-button" id="sticker-' . $results['fid'] . '-edit" />
<script language="JavaScript" type="text/javascript">
Event.observe(\'sticker-'.$results['fid'].'-edit\', \'click\', function(e) { openEditMenu(e, '.$results['fid'].', \'sticker\', \'sticker-'.$results['fid'].'-edit\'); }, false);
</script>
</div>';
}
global $db;
$mode = $mybb->get_input('key');
$type = $mybb->get_input('type');
$widget = $db->escape_string($mybb->get_input('itemId', MyBB::INPUT_INT));
// $noteText = $mybb->get_input('noteText');
// $newskin = $mybb->get_input('skin', MyBB::INPUT_INT);
$stickerid = $db->escape_string($mybb->get_input('selectedStickerId', MyBB::INPUT_INT));
$z = $db->escape_string($mybb->get_input('zindex', MyBB::INPUT_INT));
if(empty($type) && empty($widget) && empty($stickerid) && empty($z) != "")
{
error_no_permission();
exit;
}
if($mode == 'inventory')
{
$query = $db->simple_select("profileinventory", "message", "type = '1'", array("limit" => 1));
if($db->num_rows($query) > 0)
{
$results = $db->fetch_array($query);
header('X-JSON: [["Inventory", "Webstore"], ["'.$results['message'].'_pre", "'.$results['message'].'", "'.$results['message'].'", "Sticker", null, 1]]');
}
else
{
header('X-JSON: [["Inventory", "Webstore"], []]');
}
echo '
<div style="position: relative;">
<div id="inventory-categories-container">
<h4>Categories:</h4>
<div id="inventory-categories">
<ul class="purchase-main-category">
<li id="inv-cat-stickers" class="selected-main-category-no-subcategories"><div><strong>Stickers</strong></div></li>
<li id="inv-cat-bling" class="main-category-no-subcategories"><div>∟ Alpha Bling</div></li>
<li id="inv-cat-plastic" class="main-category-no-subcategories"><div>∟ Alpha Platic</div></li>
<li id="inv-cat-wood" class="main-category-no-subcategories"><div>∟ Alpha Wood</div></li>
<li id="inv-cat-buttons" class="main-category-no-subcategories"><div>∟ Buttons</div></li>
<li id="inv-cat-backgrounds" class="main-category-no-subcategories"><div><strong>Backgrounds</strong></div></li>
<li id="inv-cat-widgets" class="main-category-no-subcategories"><div><strong>Widgets</strong></div></li>
<li id="inv-cat-notes" class="main-category-no-subcategories"><div><strong>Notes</strong></div></li>
</ul>
</div>
</div>
<div id="inventory-content-container">
<div id="inventory-items-container">
<h4>Click an item to select it:</h4>
<div id="inventory-items">
<ul id="inventory-item-list">';
getitems(1);
echo '
</ul>
</div>
</div>
<div id="inventory-preview-container">
<div id="inventory-preview-default"></div>
<div id="inventory-preview">
<h4> </h4>
<div id="inventory-preview-box"></div>
<div id="inventory-preview-place" class="clearfix">
<div class="clearfix">
<a href="#" class="new-button" id="inventory-place"><b>Place</b><i></i></a>
</div>
</div>
</div>
</div>
</div>
<div id="webstore-close-container">
<div class="clearfix"><a href="#" id="webstore-close" class="new-button"><b>Close</b><i></i></a></div>
</div>';
}
elseif($mode == 'inventory_items')
{
if($type == 'stickers')
{
$typeset = 1;
}
else if($type == 'widgets')
{
$typeset = 2;
}
else if($type == 'notes')
{
$typeset = 3;
}
else if($type == 'backgrounds')
{
$typeset = 4;
}
if($typeset != 2)
{
echo '
<ul id="webstore-item-list">';
getitems($typeset);
echo '
</ul>';
}
else
{
echo '
<ul id="inventory-item-list">
<li id="inventory-item-p-1" title="Guestbook" class="webstore-widget-item '.webstorewidgetdisabled(2).'">
<div class="webstore-item-preview w_guestbookwidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>Guestbook</h3>
<p>Guestbook</p>
</div>
</li>
<li id="inventory-item-p-2" title="My Friends" class="webstore-widget-item '.webstorewidgetdisabled(3).'">
<div class="webstore-item-preview w_friendswidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Friends</h3>
<p>Display all your friends</p>
</div>
</li>
<li id="inventory-item-p-3" title="My Badges" class="webstore-widget-item '.webstorewidgetdisabled(4).'">
<div class="webstore-item-preview w_badgeswidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Badges</h3>
<p>Show your badges on your page.</p>
</div>
</li>
<li id="inventory-item-p-4" title="My Video" class="webstore-widget-item '.webstorewidgetdisabled(5).'">
<div class="webstore-item-preview w_movieswidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Video</h3>
<p>Lights, camera and action.</p>
</div>
</li>
<li id="inventory-item-p-5" title="My Ratings" class="webstore-widget-item '.webstorewidgetdisabled(6).'">
<div class="webstore-item-preview w_ratingwidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Ratings</h3>
<p>Let other people rate your page.</p>
</div>
</li>
<li id="inventory-item-p-6" title="My Trax" class="webstore-widget-item '.webstorewidgetdisabled(7).'">
<div class="webstore-item-preview w_traxplayerwidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Trax</h3>
<p>Listen to music on your page.</p>
</div>
</li>
</ul>';
}
}
else if($mode == 'inventory_preview')
{
header('X-JSON: ["'.inventorypreview($widget, $type).'_pre", "'.inventorypreview($widget, $type).'", "'.inventorypreview($widget, $type).'", "'.$type.'", null, 1]');
echo '
<h4> </h4>
<div id="inventory-preview-box"></div>
<div id="inventory-preview-place" class="clearfix">
<div class="clearfix"><a href="#" class="new-button" id="inventory-place"><b>Place</b><i></i></a></div>
</div>';
}
else if($mode == 'place_sticker')
{
$query = $db->simple_select("profileinventory", "*", "fid = '".$stickerid."' AND type = '1'", array("limit" => 1));
if($db->num_rows($query) > 0)
{
$results = $db->fetch_array($query);
$insert = array(
'message' => $results['message'],
'type' => '1',
'subtype' => '0',
'pid' => $myid,
'x' => '10',
'y' => '10',
'z' => $z
);
$db->insert_query("profilestickers", $insert);
$query = $db->simple_select("profilestickers", "*", "pid = '".$myid."' AND message = '".$results['message']."' AND type = '1'", array("order_by" => "fid DESC", "limit" => 1));
$results = $db->fetch_array($query);
header('X-JSON: ['.$results['fid'].','.$results['fid'].']');
echo '<div class="movable sticker '.$results['message'] . '" style="left: 10px; top: 10px; z-index: '.$results['z'].'" id="sticker-'.$results['fid'].'">
<img src="'.$bburl.'/web-gallery/images/myhabbo/icon_edit.gif" class="edit-button" id="sticker-' . $results['fid'] . '-edit" />
<script language="JavaScript" type="text/javascript">
Event.observe(\'sticker-'.$results['fid'].'-edit\', \'click\', function(e) { openEditMenu(e, '.$results['fid'].', \'sticker\', \'sticker-'.$results['fid'].'-edit\'); }, false);
</script>
</div>';
}
}
$query = $db->simple_select("profileinventory", "*", "fid = '".$stickerid."' AND type = '1'", array("limit" => 1));
$query = $db->simple_select("profileinventory", "message", "fid = '".$stickerid."' AND type = '1'", array("limit" => 1));
$query = $db->simple_select("profilestickers", "*", "pid = '".$myid."' AND message = '".$results['message']."' AND type = '1'", array("order_by" => "fid DESC", "limit" => 1));
$query = $db->simple_select("profilestickers", "fid, message, z", "pid = '".$myid."' AND message = '".$results['message']."' AND type = '1'", array("order_by" => "fid DESC", "limit" => 1));
$db->insert_query("profilestickers", array('message' => $results['message'], 'type' => '1', 'subtype' => '0', 'pid' => $myid, 'x' => '10', 'y' => '10', 'z' => $z));
[LEFT][COLOR=#dd0000]["Inventory", "Webstore"]
[/COLOR][/LEFT]
[LEFT][COLOR=#dd0000]["Inventory"][/COLOR][/LEFT]
[LEFT][COLOR=#0000bb]$db[/COLOR][COLOR=#007700]->[/COLOR][COLOR=#0000bb]escape_string[/COLOR][COLOR=#007700]()[/COLOR][/LEFT]
$mode = $mybb->get_input('key');
$type = $mybb->get_input('type');
$widget = $mybb->get_input('itemId', MyBB::INPUT_INT);
// $noteText = $mybb->get_input('noteText');
// $newskin = $mybb->get_input('skin', MyBB::INPUT_INT);
$stickerid = $mybb->get_input('selectedStickerId', MyBB::INPUT_INT);
$z = $mybb->get_input('zindex', MyBB::INPUT_INT);
if(empty($type) && empty($widget) && empty($stickerid) && empty($z) != "")
{
error_no_permission();
}
global $db;
if($mode == 'inventory')
{
$query = $db->simple_select("profileinventory", "message", "type = '1'", array("limit" => 1));
if($db->num_rows($query) > 0)
{
$results = $db->fetch_array($query);
header('X-JSON: [["Inventory"], ["'.$results['message'].'_pre", "'.$results['message'].'", "'.$results['message'].'", "Sticker", null, 1]]');
}
else
{
header('X-JSON: [["Inventory"], []]');
}
echo '
<div style="position: relative;">
<div id="inventory-categories-container">
<h4>Categories:</h4>
<div id="inventory-categories">
<ul class="purchase-main-category">
<li id="inv-cat-stickers" class="selected-main-category-no-subcategories"><div><strong>Stickers</strong></div></li>
<li id="inv-cat-bling" class="main-category-no-subcategories"><div>∟ Alpha Bling</div></li>
<li id="inv-cat-plastic" class="main-category-no-subcategories"><div>∟ Alpha Platic</div></li>
<li id="inv-cat-wood" class="main-category-no-subcategories"><div>∟ Alpha Wood</div></li>
<li id="inv-cat-buttons" class="main-category-no-subcategories"><div>∟ Buttons</div></li>
<li id="inv-cat-backgrounds" class="main-category-no-subcategories"><div><strong>Backgrounds</strong></div></li>
<li id="inv-cat-widgets" class="main-category-no-subcategories"><div><strong>Widgets</strong></div></li>
<li id="inv-cat-notes" class="main-category-no-subcategories"><div><strong>Notes</strong></div></li>
</ul>
</div>
</div>
<div id="inventory-content-container">
<div id="inventory-items-container">
<h4>Click an item to select it:</h4>
<div id="inventory-items">
<ul id="inventory-item-list">';
getitems(1);
echo '
</ul>
</div>
</div>
<div id="inventory-preview-container">
<div id="inventory-preview-default"></div>
<div id="inventory-preview">
<h4> </h4>
<div id="inventory-preview-box"></div>
<div id="inventory-preview-place" class="clearfix">
<div class="clearfix">
<a href="#" class="new-button" id="inventory-place"><b>Place</b><i></i></a>
</div>
</div>
</div>
</div>
</div>
<div id="webstore-close-container">
<div class="clearfix"><a href="#" id="webstore-close" class="new-button"><b>Close</b><i></i></a></div>
</div>';
}
elseif($mode == 'inventory_items')
{
if($type == 'stickers')
{
$typeset = 1;
}
else if($type == 'widgets')
{
$typeset = 2;
}
else if($type == 'notes')
{
$typeset = 3;
}
else if($type == 'backgrounds')
{
$typeset = 4;
}
if($typeset != 2)
{
echo '
<ul id="webstore-item-list">';
getitems($typeset);
echo '
</ul>';
}
else
{
echo '
<ul id="inventory-item-list">
<li id="inventory-item-p-1" title="Guestbook" class="webstore-widget-item '.webstorewidgetdisabled(2).'">
<div class="webstore-item-preview w_guestbookwidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>Guestbook</h3>
<p>Guestbook</p>
</div>
</li>
<li id="inventory-item-p-2" title="My Friends" class="webstore-widget-item '.webstorewidgetdisabled(3).'">
<div class="webstore-item-preview w_friendswidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Friends</h3>
<p>Display all your friends</p>
</div>
</li>
<li id="inventory-item-p-3" title="My Badges" class="webstore-widget-item '.webstorewidgetdisabled(4).'">
<div class="webstore-item-preview w_badgeswidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Badges</h3>
<p>Show your badges on your page.</p>
</div>
</li>
<li id="inventory-item-p-4" title="My Video" class="webstore-widget-item '.webstorewidgetdisabled(5).'">
<div class="webstore-item-preview w_movieswidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Video</h3>
<p>Lights, camera and action.</p>
</div>
</li>
<li id="inventory-item-p-5" title="My Ratings" class="webstore-widget-item '.webstorewidgetdisabled(6).'">
<div class="webstore-item-preview w_ratingwidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Ratings</h3>
<p>Let other people rate your page.</p>
</div>
</li>
<li id="inventory-item-p-6" title="My Trax" class="webstore-widget-item '.webstorewidgetdisabled(7).'">
<div class="webstore-item-preview w_traxplayerwidget_pre">
<div class="webstore-item-mask"></div>
</div>
<div class="webstore-widget-description">
<h3>My Trax</h3>
<p>Listen to music on your page.</p>
</div>
</li>
</ul>';
}
}
else if($mode == 'inventory_preview')
{
if(empty($widget))
{
exit;
}
header('X-JSON: ["'.inventorypreview($widget, $type).'_pre", "'.inventorypreview($widget, $type).'", "'.inventorypreview($widget, $type).'", "'.$type.'", null, 1]');
echo '
<h4> </h4>
<div id="inventory-preview-box"></div>
<div id="inventory-preview-place" class="clearfix">
<div class="clearfix"><a href="#" class="new-button" id="inventory-place"><b>Place</b><i></i></a></div>
</div>';
}
else if($mode == 'place_sticker')
{
$query = $db->simple_select("profileinventory", "message", "fid = '".$stickerid."' AND type = '1'", array("limit" => 1));
if($db->num_rows($query) > 0)
{
$results = $db->fetch_array($query);
$db->insert_query("profilestickers", array('message' => htmlspecialchars_uni($results['message']), 'type' => '1', 'subtype' => '0', 'pid' => $myid, 'x' => '10', 'y' => '10', 'z' => $z));
$query = $db->simple_select("profilestickers", "fid, message, z", "pid = '".$myid."' AND message = '".htmlspecialchars_uni($results['message'])."' AND type = '1'", array("order_by" => "fid DESC", "limit" => 1));
$results = $db->fetch_array($query);
header('X-JSON: ['.$results['fid'].','.$results['fid'].']');
echo '<div class="movable sticker '.$results['message'].'" style="left: 10px; top: 10px; z-index: '.$results['z'].'" id="sticker-'.$results['fid'].'">
<img src="'.$bburl.'/web-gallery/images/myhabbo/icon_edit.gif" class="edit-button" id="sticker-' . $results['fid'] . '-edit" />
<script type="text/javascript">
Event.observe(\'sticker-'.$results['fid'].'-edit\', \'click\', function(e) { openEditMenu(e, '.$results['fid'].', \'sticker\', \'sticker-'.$results['fid'].'-edit\'); }, false);
</script>
</div>';
}
}
<div class="habblet-container">
<div class="cbb clearfix red">
<h2 class="title">What's going on?</h2>
<div id="hotcampaigns-habblet-list-container">
<ul id="hotcampaigns-habblet-list">
<li class="">
<div class="hotcampaign-container">
<a href="">
<img src="" align="left" alt="" /></a>
<h3>'</h3>
<p></p>
<p class="link"><a href="">Go there »</a></p>
</div>
</li>
</ul>
</div>
</div>
</div>
<script type="text/javascript">if (!$(document.body).hasClassName('process-template')) { Rounder.init(); }</script>
#hotcampaigns-habblet-list-container {
padding:5px 5px 0 5px;
}
#hotcampaigns-habblet-list-container p {
padding:5px
}
#hotcampaigns-habblet-list {
list-style-type:none;
margin:0;
padding:0
}
#hotcampaigns-habblet-list li {
float:left;
clear:both;
width:100%
}
#hotcampaigns-habblet-list li div.hotcampaign-container {
padding:5px 10px
}
#hotcampaigns-habblet-list li.even:hover {background-color:#dceafa}#hotcampaigns-habblet-list li.odd:hover{background-color:#f1f8ff}#hotcampaigns-habblet-list li p.link{margin:0;padding:0;text-align:right}#hotcampaigns-habblet-list li p.link a{color:#399001}#hotcampaigns-habblet-list li p{margin:0;padding:0}#hotcampaigns-habblet-list li h3{font-size:13px;margin:5px 0 0 0;padding:0}#hotcampaigns-habblet-list li img{margin:5px 5px 5px 0}#avatar-selector-habblet{padding-top:5px}#avatar-selector-habblet li{height:64px}
[COLOR=#222222]
[/COLOR][COLOR=#222222] <li id="mygroups"><a href="#"><span>My Groups</span></a><span class="r"></span></li>
<li id="myrooms"><a href="#"><span>My Rooms</span></a><span class="r"></span></li>
[/COLOR]
[COLOR=#222222]
[/COLOR][COLOR=#222222]<a [B]onclick="openOrFocusHelp(this); return false"[/B] href="http://192.168.1.219/mybb/misc.php?action=help" [B]target="habbohelp"[/B]>Help</a>
[/COLOR]
[COLOR=#222222]
[/COLOR][COLOR=#222222]#qtab-container-myrooms p.create-room, #qtab-container-mygroups p.create-group,
#qtab-container-myrooms p.create-room a, #qtab-container-mygroups p.create-group a {
padding: 0 21px 2px 0;
background: transparent url(../images/myhabbo_icons.png) no-repeat 100% -236px;
}
div.favourite-group, div.owned-group, div.admin-group, #quickmenu-groups li a.group-room,
#promogroups-habblet-list-container a.group-room {
display: block;
float: right;
width: 16px;
height: 16px;
background: transparent url(../images/info_icons.png) no-repeat;
}
div.favourite-group { background-position: 100% -433px; }
div.owned-group { background-position: 100% -480px; }
div.admin-group { background-position: 100% -528px; }
#quickmenu-groups li a.group-room, #promogroups-habblet-list-container a.group-room { background-position: 0 -800px; width: 19px; }
#promogroups-habblet-list-container a.group-room { margin-top: 15px; width: 24px; }
[/COLOR]
[COLOR=#222222]
[/COLOR][COLOR=#222222]HabboView.add(function() {
if (document.habboLoggedIn && $("subnavi-user")) {
var B = new QuickMenu();
var A = $A([
["myfriends", "habblet/quickmenu.php?key=friends_all"],
["mygroups", "habblet/quickmenu.php?key=groups"],
["myrooms", "habblet/quickmenu.php?key=rooms"]
]);
A.each(function(C) {
B.add($(C[0]), function(D) {
var E = C[1];
Element.wait(D);
new Ajax.Updater(D, E, {
onComplete: function() {
new QuickMenuListPaging(C[0], E)
}
})
})
});
Event.observe(document.body, "click", function(C) {
B.closeContainer()
})
}
});
HabboView.add(function() {
if (document.habboLoggedIn && $("subnavi-user")) {
var B = new QuickMenu();
var A = $A([
["myfriends", "habblet/ajax_habblet/quickmenu.php?key=friends_all"],
["mygroups", "habblet/ajax_habblet/quickmenu.php?key=groups"],
["myrooms", "habblet/ajax_habblet/quickmenu.php?key=rooms"]
]);
A.each(function(C) {
B.add($(C[0]), function(D) {
var E = C[1];
Element.wait(D);
new Ajax.Updater(D, E, {
onComplete: function() {
new QuickMenuListPaging(C[0], E)
}
})
})
});
Event.observe(document.body, "click", function(C) {
B.closeContainer()
})
}
});
[/COLOR]
[COLOR=#222222]
[/COLOR][COLOR=#222222]function openOrFocusHelp(C) {
var E = (C.href ? C.href : C);
var D = HabboClient._openEmptyHabboWindow("habbohelp");
var B = false;
try {
B = (D.habboHelp)
} catch (A) {}
if (B) {
D.focus()
} else {
D.location.href = E;
D.focus()
}
}
[/COLOR]
function roomForward(C, B, A) {
HabboClient.roomForward(C, B, A)
}
var TagHelper = Class.create();
TagHelper.initialized = false;
TagHelper.init = function(A) {
if (TagHelper.initialized) {
return
}
TagHelper.initialized = true;
TagHelper.loggedInAccountId = A;
TagHelper.bindEventsToTagLists()
};
TagHelper.addFormTagToMe = function() {
var A = $("add-tag-input");
TagHelper.addThisTagToMe($F(A), true);
Form.Element.clear(A)
};
TagHelper.bindEventsToTagLists = function() {
var A = function(B) {
TagHelper.tagListClicked(B, TagHelper.loggedInAccountId)
};
$$(".tag-list.make-clickable").each(function(B) {
Event.observe(B, "click", A);
Element.removeClassName(B, "make-clickable")
})
};
TagHelper.setTexts = function(A) {
TagHelper.options = A
};
TagHelper.tagListClicked = function(E) {
var D = Event.element(E);
var B = Element.hasClassName(D, "tag-add-link");
var A = Element.hasClassName(D, "tag-remove-link");
if (B || A) {
var F = Element.up(D, ".tag-list li");
if (!F) {
return
}
var C = TagHelper.findTagNameForContainer(F);
Event.stop(E);
if (B) {
TagHelper.addThisTagToMe(C, true)
} else {
TagHelper.removeThisTagFromMe(C)
}
}
};
TagHelper.findTagNameForContainer = function(A) {
var B = Element.down(A, ".tag");
if (!B) {
return null
}
return B.innerHTML.strip()
};
TagHelper.addThisTagToMe = function(B, C, A) {
if (typeof(A) == "undefined") {
A = {}
}
new Ajax.Request("/myhabbo/tag/add", {
parameters: "accountId=" + encodeURIComponent(TagHelper.loggedInAccountId) + "&tagName=" + encodeURIComponent(B),
onSuccess: function(E) {
var D = E.responseText;
if (D == "valid" && C) {
$$(".tag-list li").each(function(F) {
if (TagHelper.findTagNameForContainer(F) == B) {
var H = Element.down(F, ".tag-add-link");
var G = $$(".tag-remove-link").first();
H.title = G ? G.title : "";
H.removeClassName("tag-add-link").addClassName("tag-remove-link")
}
})
} else {
if (D == "taglimit") {
Dialog.showInfoDialog("tag-error-dialog", TagHelper.options.tagLimitText, TagHelper.options.buttonText, null)
} else {
if (D == "invalidtag") {
Dialog.showInfoDialog("tag-error-dialog", TagHelper.options.invalidTagText, TagHelper.options.buttonText, null)
}
}
}
if (D == "valid" || D == "") {
if (C) {
TagHelper.reloadMyTagsList()
} else {
TagHelper.reloadSearchBox(B, 1)
}
if (typeof(A.onSuccess) == "function") {
A.onSuccess()
}
}
}
})
};
TagHelper.reloadSearchBox = function(A, B) {
if ($("tag-search-habblet-container")) {
new Ajax.Updater($("tag-search-habblet-container"), "/habblet/ajax/tagsearch", {
method: "post",
parameters: "tag=" + A + "&pageNumber=" + B,
evalScripts: true
})
}
};
TagHelper.removeThisTagFromMe = function(A) {
new Ajax.Request("/myhabbo/tag/remove", {
parameters: "accountId=" + encodeURIComponent(TagHelper.loggedInAccountId) + "&tagName=" + encodeURIComponent(A),
onSuccess: function(C) {
var B = function(D) {
$$(".tag-list li").each(function(E) {
if (TagHelper.findTagNameForContainer(E) == A) {
var G = Element.down(E, ".tag-remove-link");
var F = $$(".tag-add-link").first();
if (F) {
G.title = F.title || "";
G.removeClassName("tag-remove-link").addClassName("tag-add-link")
}
}
})
};
TagHelper.reloadMyTagsList({
onSuccess: B
})
}
})
};
TagHelper.reloadMyTagsList = function(B) {
var A = {
evalScripts: true
};
Object.extend(A, B);
new Ajax.Updater($("my-tags-list"), "/habblet/mytagslist", A)
};
TagHelper.matchFriend = function() {
var A = $F("tag-match-friend");
if (A) {
new Ajax.Updater($("tag-match-result"), habboReqPath + "/habblet/ajax/tagmatch", {
parameters: {
friendName: A
},
onComplete: function(D) {
var C = $("tag-match-value");
if (C) {
var B = parseInt(C.innerHTML, 10);
if (typeof TagHelper.CountEffect == "undefined") {
$("tag-match-value-display").innerHTML = B + " %";
Element.show("tag-match-slogan")
} else {
var E;
if (B > 0) {
E = 1.5
} else {
E = 0.1
}
new TagHelper.CountEffect("tag-match-value-display", {
duration: E,
transition: Effect.Transitions.sinoidal,
from: 0,
to: B,
afterFinish: function() {
Effect.Appear("tag-match-slogan", {
duration: 1
})
}
})
}
}
}
})
}
};
var TagFight = Class.create();
TagFight.init = function() {
if ($F("tag1") && $F("tag2")) {
TagFight.start()
} else {
return false
}
};
TagFight.start = function() {
$("fightForm").style.display = "none";
$("tag-fight-button").style.display = "none";
$("fightanimation").src = habboStaticFilePath + "/images/tagfight/tagfight_loop.gif";
$("fight-process").style.display = "block";
setTimeout("TagFight.run()", 3000)
};
TagFight.run = function() {
new Ajax.Updater("fightResults", "/habblet/ajax/tagfight", {
method: "post",
parameters: "tag1=" + $F("tag1") + "&tag2=" + $F("tag2"),
onComplete: function() {
$("fight-process").style.display = "none";
$("fightForm").style.display = "none";
$("tag-fight-button-new").style.display = "block"
}
})
};
TagFight.newFight = function() {
$("fight-process").style.display = "none";
$("fightForm").style.display = "block";
$("fightResultCount").style.display = "none";
$("tag-fight-button").style.display = "block";
$("tag-fight-button-new").style.display = "none";
$("fightanimation").src = habboStaticFilePath + "/images/tagfight/tagfight_start.gif";
$("tag1").value = "";
$("tag2").value = ""
};
var HabbletGroupPaging = Class.create(HabbletPaging, {
initialize: function($super, A) {
this.setOptions({
contentElementId: "groups-habblet-list-container",
pagingElementId: "groups-habblet-list-container-list-paging",
pagingListLinkClass: "groups-habblet-list-container-list-paging-link"
});
$super(A)
}
});
var HighscoreHabblet = Class.create();
HighscoreHabblet.prototype = {
initialize: function(A) {
this.habbletId = A;
this.containerEl = $("highscores-habblet-list-container-" + A);
this._setupPaging();
this._setupGameLinks()
},
_setupPaging: function() {
if ($("habblet-paging-" + this.habbletId)) {
Event.observe($("habblet-paging-" + this.habbletId), "click", function(A) {
Event.stop(A);
this._handlePagingClick(A)
}.bind(this))
}
},
_handlePagingClick: function(D) {
var C = Event.findElement(D, "a");
if (Element.hasClassName(C, "list-paging-link")) {
var A = $F(this.habbletId + "-pageNumber");
var B = $F(this.habbletId + "-gameId");
switch (C.id.split("-").last()) {
case "next":
A++;
break;
case "previous":
A--;
break
}
this._updateContent(A, B)
}
},
_setupGameLinks: function() {
Event.observe($("highscores-habblet-games-" + this.habbletId), "click", function(A) {
Event.stop(A);
this._handleGameLinkClick(A)
}.bind(this))
},
_handleGameLinkClick: function(C) {
var B = Event.findElement(C, "a");
if (Element.hasClassName(B, "highscores-habblet-game-link")) {
var A = B.id.split("-").last();
this._updateContent(0, A)
}
},
_updateContent: function(A, B) {
new Ajax.Updater(this.containerEl, habboReqPath + "/habblet/personalhighscores", {
method: "post",
parameters: {
pageNumber: A,
gameId: B,
hid: this.habbletId
},
onComplete: function() {
this._setupPaging();
this._setupGameLinks()
}.bind(this)
})
}
};
var BestExpsHabblet = Class.create();
BestExpsHabblet.prototype = {
initialize: function(A) {
this.habbletId = A;
this.containerEl = $("best-exps-habblet-list-container-" + A);
this._setupTypeLinks();
this._setupOffsetLinks()
},
_setupTypeLinks: function() {
Event.observe($("best-exps-habblet-types-" + this.habbletId), "click", function(A) {
Event.stop(A);
this._handleTypeLinkClick(A)
}.bind(this))
},
_setupOffsetLinks: function() {
var A = $F(this.habbletId + "-type");
if (A == "alltime") {
return
}
Event.observe($("best-exps-habblet-offset-" + this.habbletId), "click", function(B) {
Event.stop(B);
this._handleOffsetLinkClick(B)
}.bind(this))
},
_handleTypeLinkClick: function(C) {
var B = Event.findElement(C, "a");
if (Element.hasClassName(B, "best-exps-habblet-type-link")) {
var A = B.id.split("-").last();
this._updateContent(A, 0)
}
},
_handleOffsetLinkClick: function(C) {
var B = Event.findElement(C, "a");
if (Element.hasClassName(B, "best-exps-habblet-offset-link")) {
var D = B.id.split("-").last();
var A = $F(this.habbletId + "-type");
this._updateContent(A, -D)
}
},
_updateContent: function(A, B) {
new Ajax.Updater(this.containerEl, habboReqPath + "/habblet/bestexps", {
method: "post",
parameters: {
type: A,
offset: B,
hid: this.habbletId
},
onComplete: function() {
this._setupTypeLinks();
this._setupOffsetLinks()
}.bind(this)
})
}
};
var HallOfFameHabblet = Class.create();
HallOfFameHabblet.prototype = {
initialize: function(A) {
this.habbletId = A;
this.containerEl = $("hall-of-fame-habblet-list-container-" + A);
this._setupGameLinks()
},
_setupGameLinks: function() {
Event.observe($("hall-of-fame-habblet-games-" + this.habbletId), "click", function(A) {
Event.stop(A);
this._handleGameLinkClick(A)
}.bind(this))
},
_handleGameLinkClick: function(C) {
var B = Event.findElement(C, "a");
if (Element.hasClassName(B, "hall-of-fame-habblet-game-link")) {
var A = B.id.split("-").last();
this._updateContent(A, 0)
}
},
_updateContent: function(A) {
new Ajax.Updater(this.containerEl, habboReqPath + "/habblet/halloffame", {
method: "post",
parameters: {
game: A,
hid: this.habbletId
},
onComplete: function() {
this._setupGameLinks()
}.bind(this)
})
}
};
var RoomSelectionHabblet = {
initClosableHabblet: function() {
$("habblet-close-roomselection").observe("click", function(A) {
RoomSelectionHabblet.showConfirmation()
})
},
hideHabblet: function() {
new Ajax.Request(habboReqPath + "habblet/ajax_roomselectionHide.php");
Effect.Fade("roomselection", {
afterFinish: function() {
$("roomselection").remove()
}
})
},
showConfirmation: function() {
Overlay.show();
var A = Dialog.createDialog("roomselection-dialog", L10N.get("roomselection.hide.title"), false, false, false, RoomSelectionHabblet.hideConfirmation);
Dialog.setAsWaitDialog(A);
Dialog.makeDialogDraggable(A);
Dialog.moveDialogToCenter(A);
new Ajax.Request(habboReqPath + "habblet/ajax_roomselectionConfirm.php", {
onComplete: function(B) {
$("roomselection-dialog-body").update(B.responseText);
$("roomselection-cancel").observe("click", function(C) {
Event.stop(C);
RoomSelectionHabblet.hideConfirmation()
});
if ( !! $("roomselection-hide")) {
$("roomselection-hide").observe("click", function(C) {
Event.stop(C);
RoomSelectionHabblet.hideConfirmation();
RoomSelectionHabblet.hideHabblet()
})
}
}
})
},
hideConfirmation: function() {
$("roomselection-dialog").remove();
Overlay.hide()
},
create: function(B, D) {
var A = false;
try {
A = window.habboClient
} catch (C) {}
if (A) {
window.location.href = B;
return false
}
if (document.habboLoggedIn) {
new Ajax.Request(habboReqPath + "habblet/ajax_roomselectionCreate.php", {
parameters: {
roomType: D
}
})
}
HabboClient.openOrFocus(B);
if ($("roomselection-plp-intro")) {
$("roomselection-plp", "habblet-close-roomselection").invoke("hide");
$("roomselection-plp-intro").update(L10N.get("roomselection.old_user.done"))
}
return false
}
};
var GiftQueueHabblet = {
init: function(A) {
GiftQueueHabblet.container = $("gift-countdown");
if ( !! GiftQueueHabblet.container) {
new PrettyTimer(A, function(B) {
GiftQueueHabblet.container.update(B)
}, {
showDays: false,
showMeaningfulOnly: false,
localizations: {
hours: L10N.get("time.hours") + " ",
minutes: L10N.get("time.minutes") + " ",
seconds: L10N.get("time.seconds")
},
endCallback: function() {
GiftQueueHabblet.reload()
}
})
}
},
initClosableHabblet: function() {
$("habblet-close-giftqueue").setStyle({
display: "inline"
});
$("habblet-close-giftqueue").observe("click", function(A) {
GiftQueueHabblet.hide()
})
},
reload: function() {
new Ajax.Request(habboReqPath + "habblet/ajax_nextgift.php", {
onComplete: function(B, A) {
$("gift-container").update(B.responseText);
GiftQueueHabblet.init(parseInt(A))
}
})
},
hide: function() {
new Ajax.Request(habboReqPath + "habblet/ajax_roomselectionHide.php");
Effect.Fade("giftqueue", {
afterFinish: function() {
$("giftqueue").remove()
}
})
}
};
var CurrentRoomEvents = {
init: function() {
$("event-category").observe("change", function(A) {
Element.wait($("event-list"));
new Ajax.Updater("event-list", "habblet/ajax_load_events.php", {
parameters: {
eventTypeId: $F("event-category")
},
onComplete: function() {
CurrentRoomEvents.initListItems()
}
})
});
CurrentRoomEvents.initListItems()
},
initListItems: function() {
$$("#current-events ul.habblet-list").each(function(A) {
Event.observe(A, "click", function(C) {
var D = Event.element(C);
if (D.tagName.toUpperCase() == "A") {
return
}
Event.stop(C);
if (!$(D).match("li")) {
D = $(D).up("li")
}
var B = $(D).readAttribute("roomid");
if (B) {
HabboClient.roomForward("client.php?forwardId=2&roomId=" + B, B, "private")
}
})
})
}
};
HabboView.add(HabbletTabber.init);
var TagHelper = Class.create();
TagHelper.initialized = false;
TagHelper.init = function(A) {
if (TagHelper.initialized) {
return
}
TagHelper.initialized = true;
TagHelper.loggedInAccountId = A;
TagHelper.bindEventsToTagLists()
};
TagHelper.addFormTagToMe = function() {
var A = $("add-tag-input");
TagHelper.addThisTagToMe($F(A), true);
Form.Element.clear(A)
};
TagHelper.bindEventsToTagLists = function() {
var A = function(B) {
TagHelper.tagListClicked(B, TagHelper.loggedInAccountId)
};
$$(".tag-list.make-clickable").each(function(B) {
Event.observe(B, "click", A);
Element.removeClassName(B, "make-clickable")
})
};
TagHelper.setTexts = function(A) {
TagHelper.options = A
};
TagHelper.tagListClicked = function(E) {
var D = Event.element(E);
var B = Element.hasClassName(D, "tag-add-link");
var A = Element.hasClassName(D, "tag-remove-link");
if (B || A) {
var F = Element.up(D, ".tag-list li");
if (!F) {
return
}
var C = TagHelper.findTagNameForContainer(F);
Event.stop(E);
if (B) {
TagHelper.addThisTagToMe(C, true)
} else {
TagHelper.removeThisTagFromMe(C)
}
}
};
TagHelper.findTagNameForContainer = function(A) {
var B = Element.down(A, ".tag");
if (!B) {
return null
}
return B.innerHTML.strip()
};
TagHelper.addThisTagToMe = function(B, C, A) {
if (typeof(A) == "undefined") {
A = {}
}
new Ajax.Request("habblet/tags_ajax.php?key=add", {
parameters: "accountId=" + encodeURIComponent(TagHelper.loggedInAccountId) + "&tagName=" + encodeURIComponent(B),
onSuccess: function(E) {
var D = E.responseText;
if (D == "valid" && C) {
$$(".tag-list li").each(function(F) {
if (TagHelper.findTagNameForContainer(F) == B) {
var H = Element.down(F, ".tag-add-link");
var G = $$(".tag-remove-link").first();
H.title = G ? G.title : "";
H.removeClassName("tag-add-link").addClassName("tag-remove-link")
}
})
} else {
if (D == "taglimit") {
Dialog.showInfoDialog("tag-error-dialog", TagHelper.options.tagLimitText, TagHelper.options.buttonText, null)
} else {
if (D == "invalidtag") {
Dialog.showInfoDialog("tag-error-dialog", TagHelper.options.invalidTagText, TagHelper.options.buttonText, null)
}
}
} if (D == "valid" || D == "") {
if (C) {
TagHelper.reloadMyTagsList()
} else {
TagHelper.reloadSearchBox(B, 1)
} if (typeof(A.onSuccess) == "function") {
A.onSuccess()
}
}
}
})
};
TagHelper.reloadSearchBox = function(A, B) {
if ($("tag-search-habblet-container")) {
new Ajax.Updater($("tag-search-habblet-container"), "/habblet/ajax/tagsearch", {
method: "post",
parameters: "tag=" + A + "&pageNumber=" + B,
evalScripts: true
})
}
};
TagHelper.removeThisTagFromMe = function(A) {
new Ajax.Request("habblet/tags_ajax.php?key=remove", {
parameters: "accountId=" + encodeURIComponent(TagHelper.loggedInAccountId) + "&tagName=" + encodeURIComponent(A),
onSuccess: function(C) {
var B = function(D) {
$$(".tag-list li").each(function(E) {
if (TagHelper.findTagNameForContainer(E) == A) {
var G = Element.down(E, ".tag-remove-link");
var F = $$(".tag-add-link").first();
if (F) {
G.title = F.title || "";
G.removeClassName("tag-remove-link").addClassName("tag-add-link")
}
}
})
};
TagHelper.reloadMyTagsList({
onSuccess: B
})
}
})
};
TagHelper.reloadMyTagsList = function(B) {
var A = {
evalScripts: true
};
Object.extend(A, B);
new Ajax.Updater($("my-tags-list"), "habblet/tags_ajax.php?key=mytagslist", A)
};
TagHelper.matchFriend = function() {
var A = $F("tag-match-friend");
if (A) {
new Ajax.Updater($("tag-match-result"), habboReqPath + "/habblet/ajax/tagmatch", {
parameters: {
friendName: A
},
onComplete: function(D) {
var C = $("tag-match-value");
if (C) {
var B = parseInt(C.innerHTML, 10);
if (typeof TagHelper.CountEffect == "undefined") {
$("tag-match-value-display").innerHTML = B + " %";
Element.show("tag-match-slogan")
} else {
var E;
if (B > 0) {
E = 1.5
} else {
E = 0.1
}
new TagHelper.CountEffect("tag-match-value-display", {
duration: E,
transition: Effect.Transitions.sinoidal,
from: 0,
to: B,
afterFinish: function() {
Effect.Appear("tag-match-slogan", {
duration: 1
})
}
})
}
}
}
})
}
};
var TagFight = Class.create();
TagFight.init = function() {
if ($F("tag1") && $F("tag2")) {
TagFight.start()
} else {
return false
}
};
TagFight.start = function() {
$("fightForm").style.display = "none";
$("tag-fight-button").style.display = "none";
$("fightanimation").src = habboStaticFilePath + "/images/tagfight/tagfight_loop.gif";
$("fight-process").style.display = "block";
setTimeout("TagFight.run()", 3000)
};
TagFight.run = function() {
new Ajax.Updater("fightResults", "habblet/ajax_tagfight.php", {
method: "post",
parameters: "tag1=" + $F("tag1") + "&tag2=" + $F("tag2"),
onComplete: function() {
$("fight-process").style.display = "none";
$("fightForm").style.display = "none";
$("tag-fight-button-new").style.display = "block"
}
})
};
TagFight.newFight = function() {
$("fight-process").style.display = "none";
$("fightForm").style.display = "block";
$("fightResultCount").style.display = "none";
$("tag-fight-button").style.display = "block";
$("tag-fight-button-new").style.display = "none";
$("fightanimation").src = habboStaticFilePath + "/images/tagfight/tagfight_start.gif";
$("tag1").value = "";
$("tag2").value = ""
};
var GroupUtils = {
validateGroupElements: function(C, A, E) {
var D = $(C);
if (D.value.length >= A) {
D.value = D.value.substring(0, A);
$(C + "_message_error").innerHTML = E;
$(C + "_message_error").style.display = "block"
} else {
$(C + "_message_error").innerHTML = "";
$(C + "_message_error").style.display = "none"
} if ($(C + "-counter")) {
var B = A - D.value.length;
$(C + "-counter").value = B
}
}
};
var GroupPurchase = function() {
var A = null;
var C = null;
var B = function(D) {
Dialog.setAsWaitDialog(A);
new Ajax.Request("habblet/ajax_grouppurchase.php" + D, {
parameters: C,
onComplete: function(F, E) {
Dialog.setDialogBody(A, F.responseText)
}
})
};
return {
open: function() {
A = Dialog.createDialog("group_purchase_form", L10N.get("purchase.group.title"), 9001, 0, -1000, GroupPurchase.close);
Dialog.setAsWaitDialog(A);
Dialog.moveDialogToCenter(A);
Dialog.makeDialogDraggable(A);
Overlay.show();
new Ajax.Request("habblet/ajax_grouppurchase.php", {
onComplete: function(E, D) {
Dialog.setDialogBody(A, E.responseText)
}
})
},
close: function(D) {
if ( !! D) {
Event.stop(D)
}
$("group_purchase_form").remove();
Overlay.hide();
A = null;
C = null
},
confirm: function() {
C = {
name: $F("group_name"),
description: $F("group_description")
};
B("?do=purchase_confirmation")
},
purchase: function() {
B("purchase_ajax")
}
}
}();
Create silly messages to reveal who they are and what they do
Can everyone edit their own message, or is it just a textbox that needs to be filled in by an admin?
As someone who's never touched any kind of forum software before; I'm impressed with how much you've been able to do, and that it's even possible in what seems like a very old platform.
It's cool and unique
if (Prototype.Browser.Opera) {
Element.Methods.getStyle = Element.Methods.getStyle.wrap(function(D, B, C) {
switch (C) {
case "left":
case "top":
case "right":
case "bottom":
if (D(B, "position") === "static") {
return null
}
case "height":
case "width":
if (!Element.visible(B)) {
return null
}
var E = parseInt(D(B, C), 10);
if (E !== B["offset" + C.capitalize()]) {
return E + "px"
}
var A;
if (C === "height") {
A = ["border-top-width", "padding-top", "padding-bottom", "border-bottom-width"]
} else {
A = ["border-left-width", "padding-left", "padding-right", "border-right-width"]
}
return A.inject(E, function(F, G) {
var H = D(B, G);
return H === null ? F : F - parseInt(H, 10)
}) + "px";
default:
return D(B, C)
}
});
Element.Methods.readAttribute = Element.Methods.readAttribute.wrap(function(C, A, B) {
if (B === "title") {
return A.title
}
return C(A, B)
})
} else {
if (Prototype.Browser.IE) {
Element.Methods.getOffsetParent = Element.Methods.getOffsetParent.wrap(function(C, B) {
B = $(B);
var A = B.getStyle("position");
if (A !== "static") {
return C(B)
}
B.setStyle({
position: "relative"
});
var D = C(B);
B.setStyle({
position: A
});
return D
});
$w("positionedOffset viewportOffset").each(function(A) {
Element.Methods[A] = Element.Methods[A].wrap(function(E, C) {
C = $(C);
var B = C.getStyle("position");
if (B !== "static") {
return E(C)
}
var D = C.getOffsetParent();
if (D && D.getStyle("position") === "fixed") {
D.setStyle({
zoom: 1
})
}
C.setStyle({
position: "relative"
});
var F = E(C);
C.setStyle({
position: B
});
return F
})
});
Element.Methods.getStyle = function(A, B) {
A = $(A);
B = (B == "float" || B == "cssFloat") ? "styleFloat" : B.camelize();
var C = A.style[B];
if (!C && A.currentStyle) {
C = A.currentStyle[B]
}
if (B == "opacity") {
if (C = (A.getStyle("filter") || "").match(/alpha\(opacity=(.*)\)/)) {
if (C[1]) {
return parseFloat(C[1]) / 100
}
}
return 1
}
if (C == "auto") {
if ((B == "width" || B == "height") && (A.getStyle("display") != "none")) {
return A["offset" + B.capitalize()] + "px"
}
return null
}
return C
};
Element.Methods.setOpacity = function(B, E) {
function F(G) {
return G.replace(/alpha\([^\)]*\)/gi, "")
}
B = $(B);
var A = B.currentStyle;
if ((A && !A.hasLayout) || (!A && B.style.zoom == "normal")) {
B.style.zoom = 1
}
var D = B.getStyle("filter"),
C = B.style;
if (E == 1 || E === "") {
(D = F(D)) ? C.filter = D: C.removeAttribute("filter");
return B
} else {
if (E < 0.00001) {
E = 0
}
}
C.filter = F(D) + "alpha(opacity=" + (E * 100) + ")";
return B
};
Element._attributeTranslations = {
read: {
names: {
"class": "className",
"for": "htmlFor"
},
values: {
_getAttr: function(A, B) {
return A.getAttribute(B, 2)
},
_getAttrNode: function(A, C) {
var B = A.getAttributeNode(C);
return B ? B.value : ""
},
_getEv: function(A, B) {
B = A.getAttribute(B);
return B ? B.toString().slice(23, -2) : null
},
_flag: function(A, B) {
return $(A).hasAttribute(B) ? B : null
},
style: function(A) {
return A.style.cssText.toLowerCase()
},
title: function(A) {
return A.title
}
}
}
};
Element._attributeTranslations.write = {
names: Object.extend({
cellpadding: "cellPadding",
cellspacing: "cellSpacing"
}, Element._attributeTranslations.read.names),
values: {
checked: function(A, B) {
A.checked = !!B
},
style: function(A, B) {
A.style.cssText = B ? B : ""
}
}
};
Element._attributeTranslations.has = {};
$w("colSpan rowSpan vAlign dateTime accessKey tabIndex encType maxLength readOnly longDesc").each(function(A) {
Element._attributeTranslations.write.names[A.toLowerCase()] = A;
Element._attributeTranslations.has[A.toLowerCase()] = A
});
(function(A) {
Object.extend(A, {
href: A._getAttr,
src: A._getAttr,
type: A._getAttr,
action: A._getAttrNode,
disabled: A._flag,
checked: A._flag,
readonly: A._flag,
multiple: A._flag,
onload: A._getEv,
onunload: A._getEv,
onclick: A._getEv,
ondblclick: A._getEv,
onmousedown: A._getEv,
onmouseup: A._getEv,
onmouseover: A._getEv,
onmousemove: A._getEv,
onmouseout: A._getEv,
onfocus: A._getEv,
onblur: A._getEv,
onkeypress: A._getEv,
onkeydown: A._getEv,
onkeyup: A._getEv,
onsubmit: A._getEv,
onreset: A._getEv,
onselect: A._getEv,
onchange: A._getEv
})
})(Element._attributeTranslations.read.values)
} else {
if (Prototype.Browser.Gecko && /rv:1\.8\.0/.test(navigator.userAgent)) {
Element.Methods.setOpacity = function(A, B) {
A = $(A);
A.style.opacity = (B == 1) ? 0.999999 : (B === "") ? "" : (B < 0.00001) ? 0 : B;
return A
}
} else {
if (Prototype.Browser.WebKit) {
Element.Methods.setOpacity = function(A, B) {
A = $(A);
A.style.opacity = (B == 1 || B === "") ? "" : (B < 0.00001) ? 0 : B;
if (B == 1) {
if (A.tagName == "IMG" && A.width) {
A.width++;
A.width--
} else {
try {
var D = document.createTextNode(" ");
A.appendChild(D);
A.removeChild(D)
} catch (C) {}
}
}
return A
};
Element.Methods.cumulativeOffset = function(B) {
var A = 0,
C = 0;
do {
A += B.offsetTop || 0;
C += B.offsetLeft || 0;
if (B.offsetParent == document.body) {
if (Element.getStyle(B, "position") == "absolute") {
break
}
}
B = B.offsetParent
} while (B);
return Element._returnOffset(C, A)
}
}
}
}
}
if (Prototype.Browser.IE || Prototype.Browser.Opera) {
Element.Methods.update = function(B, C) {
B = $(B);
if (C && C.toElement) {
C = C.toElement()
}
if (Object.isElement(C)) {
return B.update().insert(C)
}
C = Object.toHTML(C);
var A = B.tagName.toUpperCase();
if (A in Element._insertionTranslations.tags) {
$A(B.childNodes).each(function(D) {
B.removeChild(D)
});
Element._getContentFromAnonymousElement(A, C.stripScripts()).each(function(D) {
B.appendChild(D)
})
} else {
B.innerHTML = C.stripScripts()
}
C.evalScripts.bind(C).defer();
return B
}
}
<script>var andSoItBegins = (new Date()).getTime();</script>