Most visitors online was 12720 , on 2 May 2024
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature currently requires accessing the site using the built-in Safari browser.
<?php<?phpif(!defined('IN_MYBB'))
{
die('This file cannot be accessed directly.');
}$plugins->add_hook('global_start', 'maintenance');function maintenance_info()
{
return array(
'name' => '(holo) Force Maintenance',
'description' => 'Forces the user to go on maintenance when board is closed',
'website' => '',
'author' => '',
'authorsite' => '',
'version' => '1.0',
'compatibility' => '18*',
'codename' => 'maintenance'
);
}function maintenance_activate()
{
global $db; $templatearray = array(
'maintenance' => '<html>
<head>
<title>Maintenance</title>
<meta http-equiv="Content-Type" content="text/html; charset="{$charset}" />
<link href="web-gallery/maintenance/style.css" type="text/css" rel="stylesheet" />
</head>
<body>
<div id="page-container">
<div id="header-container"></div>
<div id="maintenance-container">
<div id="content-container">
<div id="inner-container">
<div id="left_col">
<div class="bubble">
<div class="bubble-body">
<img src="web-gallery/maintenance/alert_triangle.gif" align="left" class="triangle" />
<strong>I think you hit the wrong switch Greggers! {$mybb->settings[\'bbname\']} just vanished!</strong>
<br class="clear" />
</div>
</div>
<div class="bubble-bottom">
<div class="bubble-bottom-body">
<img src="web-gallery/maintenance/bubble_tail_left.gif" />
</div>
</div>
<img src="web-gallery/maintenance/frank_habbo_down.gif" />
</div>
<div id="right_col">
<div class="bubble">
<div class="bubble-body">
{$reason}
<br class="clear" />
</div>
</div>
<div class="bubble-bottom">
<div class="bubble-bottom-body">
<img src="web-gallery/maintenance/bubble_tail_left.gif" />
</div>
</div>
<img src="web-gallery/maintenance/workman_habbo_down.gif" />
</div>
</div>
</div>
</div>
<div id="footer-container"></div>
</div>
<script type="text/javascript">
this.blankwin = function(){
var dlists = new Array();
dlists[0] = 'forum.ragezone.com';
var hostname = window.location.hostname;
hostname = hostname.replace("www.","").toLowerCase();
var a = document.getElementsByTagName("a");
this.check = function(obj){
var href = obj.href.toLowerCase();
var dbopcount = 0;
if (href.indexOf("http://")!=-1)
{
for (jdi = 0; jdi <= dlists.length; jdi++)
{
if (href.indexOf(dlists[jdi]) == -1)
{
//alert("NO MATCH " + dlists[jdi] + " " + href);
dbopcount = dbopcount; //Do nothing
}
else
{
//alert("match " + dlists[jdi] + " " + href);
dbopcount++;
}
}
if (dbopcount > 0)
return true; //If this link URL was an internal URL
else //there were no matches to any internal domain, so leave it external
return false;
}
else
{
return false;
}
//return (href.indexOf("http://")!=-1 && href.indexOf(hostname)==-1) ? false : true;
};
this.set = function(obj){
obj.target = "_self";
};
for (var i=0;i<a.length;i++){
if(check(a[i])) set(a[i]);
};
};
// script initiates on page load.
this.addEvent = function(obj,type,fn){
if(obj.attachEvent){
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn](window.event );}
obj.attachEvent('on'+type, obj[type+fn]);
} else {
obj.addEventListener(type,fn,false);
};
};
addEvent(window,"load",blankwin);
</script>
</body>
</html>'
); foreach($templatearray as $name => $code)
{
$template = array(
'title' => $db->escape_string($name),
'template' => $db->escape_string($code),
'version' => '1',
'sid' => '-2',
'dateline' => TIME_NOW
); $db->insert_query('templates', $template); unset($templates[$name]);
} rebuild_settings();
}function maintenance_deactivate()
{
global $db; $db->delete_query('templates', 'title=\'maintenance\'');
}function maintenance()
{
$current_page = my_strtolower(basename(THIS_SCRIPT)); $closed_bypass = array(
'member.php' => array(
'login',
'do_login',
'logout',
),
'captcha.php',
'contact.php',
); global $mybb, $templates; if($mybb->settings['boardclosed'] == 1 && $mybb->usergroup['canviewboardclosed'] != 1 && !in_array($current_page, $closed_bypass) && (!is_array($closed_bypass[$current_page]) || !in_array($mybb->get_input('action'), $closed_bypass[$current_page])))
{
$reason = $mybb->settings['boardclosed_reason'];
eval("\$page = \"".$templates->get("maintenance")."\";");
output_page($page);
exit;
}
}?>?>
HabboView.add(function() {
HabboEditor.addCallback("setGender", function(A) {
$("register-gender").value = A
});
HabboEditor.addCallback("setFigure", function(A) {
$("register-figure").value = A
});
HabboEditor.addCallback("setEditorState", function(A) {
$("register-editor-state").value = A
});
window.refreshingAvatars = false;
if ($("register-avatars-refresh")) {
Event.observe($("register-avatars-refresh"), "click", function(A) {
window.refreshingAvatars = true
})
}
if ( !! $("register-birthday")) {
RegistrationForm.createEnterValidBirthdayTooltip();
Event.observe($("register-birthday"), "click", function() {
if (Tips.get("register-birthday")) {
$("register-birthday").removeClassName("error");
Tips.get("register-birthday").hideTip()
}
})
}
if ( !! $("register-name")) {
RegistrationForm.createCheckButtonTooltip();
RegistrationForm.createNameTooltip();
RegistrationForm.previousName = $F("register-name");
Event.observe($("register-name"), "keydown", function(B) {
if (B.keyCode == Event.KEY_TAB || B.keyCode == Event.KEY_RETURN) {
Event.stop(B);
RegistrationForm.Validator._checkName()
} else {
var A = $F("register-name");
if (A != RegistrationForm.previousName) {
RegistrationForm.Validator._resetErrorState($("register-name"));
RegistrationForm.previousName = A;
RegistrationForm.Validator._lastCheckedName = "";
$("registration-overlay").style.display = "block";
RegistrationForm._toggleFormSection("register-section-3", true);
if (RegistrationForm.nameTooltipState != "create") {
RegistrationForm.nameTooltipState = "create";
RegistrationForm.createNameTooltip();
Tips.get($("register-name")).showTip()
}
}
RegistrationForm.Validator._nameCheckNeeded = true
}
});
Event.observe($("register-name-check"), "click", function(A) {
Event.stop(A);
RegistrationForm.Validator._checkName()
});
$("register-name-check-container").show();
Event.observe($("register-name"), "blur", function(A) {
if ($F("register-name") != "" && RegistrationForm.Validator._nameCheckNeeded) {
if (!RegistrationForm.nameSuggestionEnabled) {
Tips.get("register-name-check").showTip()
}
RegistrationForm.Validator._showErrorState($("register-name"))
}
});
Event.observe($("register-name"), "focus", function(A) {
Tips.get("register-name-check").hideTip()
})
}
if ( !! $("register-password")) {
RegistrationForm.createPasswordTooltip();
new Form.Element.Observer($("register-password"), 0.5, RegistrationForm.Validator.checkPasswordValidity);
Event.observe($("register-password"), "keyup", function(C) {
var A = $("register-password");
var B = $F("register-password");
RegistrationForm.Validator._lastCheckedPassword = "";
Tips.get(A).hideTip();
if (B != "" && B.length < 6) {
RegistrationForm.Validator._showErrorState(A, true);
if (RegistrationForm.passwordTooltipState != "tooshort") {
RegistrationForm.passwordTooltipState = "tooshort";
RegistrationForm.createPasswordTooShortTooltip()
}
} else {
if (B == "") {
RegistrationForm.Validator._resetErrorState(A);
RegistrationForm.Validator._resetErrorState($("register-password2"));
$("register-password2").value = "";
if (RegistrationForm.passwordTooltipState != "create") {
RegistrationForm.passwordTooltipState = "create";
RegistrationForm.createPasswordTooltip()
}
}
}
Tips.get(A).showTip()
});
Event.observe($("register-password2"), "focus", function(A) {
if ($F("register-password") == "") {
$("register-password").focus()
}
Tips.get("register-password").showTip()
});
Event.observe($("register-password2"), "blur", function(A) {
Tips.get("register-password").hideTip()
});
Event.observe($("register-password2"), "keyup", function(C) {
var A = $("register-password2");
var B = $F("register-password2");
if (B != "") {
if ($("register-password").hasClassName("error")) {
if (RegistrationForm.passwordTooltipState != "invalid") {
RegistrationForm.passwordTooltipState = "invalid";
RegistrationForm.createPasswordInvalidTooltip()
}
} else {
if (B == $F("register-password")) {
RegistrationForm.Validator._showSuccessState(A);
if (RegistrationForm.passwordTooltipState != "success") {
RegistrationForm.passwordTooltipState = "success";
RegistrationForm.createPasswordSuccessTooltip()
}
} else {
RegistrationForm.Validator._showErrorState(A, true);
if (RegistrationForm.passwordTooltipState != "notsame") {
RegistrationForm.passwordTooltipState = "notsame";
RegistrationForm.createRetypedPasswordNotSameTootip()
}
}
}
} else {
if ($F("register-password") != "") {
RegistrationForm.Validator._resetErrorState(A);
if (RegistrationForm.passwordTooltipState != "retype") {
RegistrationForm.passwordTooltipState = "retype";
RegistrationForm.createRetypePasswordTooltip()
}
}
}
Tips.get("register-password").showTip()
})
}
if ($("register-name-other")) {
RegistrationForm.Validator._waitingForValidName = true;
Event.observe($("register-name"), "focus", function(A) {
$("register-name-other").checked = true
});
$$(".register-name-suggestion").each(function(A) {
Event.observe(A, "change", function(B) {
if (Event.element(B).checked) {
RegistrationForm.Validator._waitingForValidName = false
}
})
})
}
if ( !! $("register-email")) {
RegistrationForm.createEmailToolTip();
new Form.Element.Observer($("register-email"), 0.5, RegistrationForm.Validator.checkEmailValidity);
Event.observe($("register-email"), "keyup", function(C) {
var B = $F("register-email");
var A = $("register-email");
RegistrationForm.Validator._lastCheckedEmail = "";
Tips.get(A).hideTip();
if (B == "") {
RegistrationForm.Validator._resetErrorState(A);
RegistrationForm.Validator._resetErrorState($("register-email2"));
$("register-email2").value = "";
if (RegistrationForm.emailTooltipState != "create") {
RegistrationForm.emailTooltipState = "create";
RegistrationForm.createEmailToolTip()
}
} else {
if (!RegistrationForm.Validator.validateEmail(B)) {
RegistrationForm.Validator._showErrorState(A, true);
if (RegistrationForm.emailTooltipState != "invalid") {
RegistrationForm.emailTooltipState = "invalid";
RegistrationForm.createInvalidEmailTooltip()
}
}
}
Tips.get(A).showTip()
});
Event.observe($("register-email2"), "keyup", function(C) {
var A = $("register-email2");
var B = $F("register-email2");
if (B != "") {
if ($("register-email").hasClassName("error")) {
if (RegistrationForm.emailTooltipState != "invalid") {
RegistrationForm.emailTooltipState = "invalid";
RegistrationForm.createInvalidEmailTooltip()
}
} else {
if (B == $F("register-email")) {
RegistrationForm.Validator._showSuccessState(A);
if (RegistrationForm.emailTooltipState != "success") {
RegistrationForm.emailTooltipState = "success";
RegistrationForm.createEmailSuccessTooltip()
}
} else {
RegistrationForm.Validator._showErrorState(A, true);
if (RegistrationForm.emailTooltipState != "notsame") {
RegistrationForm.emailTooltipState = "notsame";
RegistrationForm.createRetypedEmailNotSameTootip()
}
}
}
} else {
if ($F("register-email") != "") {
RegistrationForm.Validator._resetErrorState(A);
if (RegistrationForm.emailTooltipState != "retype") {
RegistrationForm.emailTooltipState = "retype";
RegistrationForm.createRetypeEmailTooltip()
}
}
}
Tips.get("register-email").showTip()
});
Event.observe($("register-email2"), "focus", function(A) {
if ($F("register-email") == "") {
$("register-email").focus()
}
Tips.get("register-email").showTip()
});
Event.observe($("register-email2"), "blur", function(A) {
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: false,
personalInfoDisabled: false,
nameSuggestionEnabled: false,
captchaPublicKey: "none",
registrationTipStyle: {
className: "bubbletip left",
title: " ",
hook: {
target: "topRight",
tip: "bottomRight"
},
fixed: true,
startEvent: "focus",
endEvent: "blur"
},
defaultPos: {
offset: {
x: 40,
y: -6
}
},
init: function(A) {
if (A) {
$("registration-overlay").style.display = "block";
RegistrationForm._toggleFormSection("register-section-3", true);
RegistrationForm.personalInfoDisabled = true;
RegistrationForm.createPersonalInfoDisabledTooltip();
if ($("register-name")) {
$("register-name").focus()
}
}
},
handleSubmit: function(A) {
if (!window.refreshingAvatars) {
if (!RegistrationForm.Validator.validate()) {
Event.stop(A);
Element.show("form-validation-error-box")
} else {
if (!RegistrationForm.isRegistrationAllowed()) {
Event.stop(A);
Cookie.set("rb", 1, RegistrationForm.banHours / 24);
RegistrationForm.showAgeLimitMessage()
} else {
if (!RegistrationForm.Validator._parentEmailOk && RegistrationForm.isParentEmailNeeded()) {
Event.stop(A);
RegistrationForm.showParentEmailCaptchaField();
$("register-parentEmail-bubble").focus()
} else {
if (!RegistrationForm.Validator._captchaOk && RegistrationForm.isCaptchaEnabled) {
Event.stop(A);
RegistrationForm.showParentEmailCaptchaField();
if ($("imagestring")) {
$("imagestring").focus()
} else {
if ($("recaptcha_response_field")) {
$("recaptcha_response_field").focus()
}
}
} else {
Event.stopObserving($("registerform"), "submit", RegistrationForm.handleSubmit);
Event.observe($("registerform"), "submit", function(B) {
return false
})
}
}
}
}
}
},
cancel: function(A) {
location.href = habboReqPath + "index.php" + (A || "")
},
isParentEmailNeeded: function() {
if (RegistrationForm.parentEmailAgeLimit > -1 && !! $("register-birthday")) {
var A = RegistrationForm._calculateAge();
if (A != -1) {
return A <= RegistrationForm.parentEmailAgeLimit
}
}
return false
},
showParentEmailCaptchaField: function() {
if (!$("register-parent-email")) {
Element.hide("form-validation-error-box");
var A = "";
if (RegistrationForm.isParentEmailNeeded()) {
A = A.concat(L10N.get("register.message.parent_email_js_form"))
}
if (RegistrationForm.isCaptchaEnabled) {
A = A.concat(L10N.get("register.message.captcha_js_form"))
}
RegistrationForm._showErrorBubble("register-parent-email", A, function() {
RegistrationForm._disableFormFields(true, ["register-button-continue", "register-parentEmail-bubble", "imagestring", "register-permission-bubble", "recaptcha_response_field"]);
if ($("captcha-reload")) {
Event.observe($("captcha-reload"), "click", function(B) {
Event.stop(B);
Utils.reloadCaptcha()
})
} else {
if ($("recaptcha-reload")) {
Event.observe($("recaptcha-reload"), "click", function(B) {
Event.stop(B);
Recaptcha.reload()
});
Utils.showRecaptcha("recaptcha_challenge", RegistrationForm.captchaPublicKey)
}
}
});
if ($("imagestring")) {
Event.observe($("imagestring"), "keyup", RegistrationForm.Validator.checkCapchaValidity)
}
if ($("recaptcha_response_field")) {
Event.observe($("recaptcha_response_field"), "keyup", RegistrationForm.Validator.checkCapchaValidity)
}
if ($("register-parentEmail-bubble")) {
if (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(B) {
if (B.keyCode == Event.KEY_TAB || B.keyCode == Event.KEY_RETURN) {
RegistrationForm.Validator.checkParentEmailValidity()
} else {
RegistrationForm.Validator._lastCheckedParentEmail = "";
RegistrationForm.Validator._parentEmailOk = false;
RegistrationForm.Validator._resetErrorState($("register-parentEmail-bubble"));
$("parentEmail-error-box-content").innerHTML = L10N.get("register.tooltip.enteremail")
}
});
RegistrationForm._track("parentEmail")
}
} else {
if (RegistrationForm.isParentEmailNeeded()) {
RegistrationForm.Validator.checkParentEmailValidity()
}
}
},
showAgeLimitMessage: function() {
RegistrationForm._showErrorBubble("register-ageLimit", L10N.get("register.message.age_limit_ban"), function() {
RegistrationForm._disableFormFields(false, ["register-parentEmail-cancel"])
});
RegistrationForm._track("ageLimit")
},
isRegistrationAllowed: function() {
if (RegistrationForm.ageLimit > -1) {
var A = RegistrationForm._calculateAge();
if (A != -1) {
return A >= RegistrationForm.ageLimit
}
}
return true
},
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: true,
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(B, A) {
new Tip(B, L10N.get(A), Object.extend(RegistrationForm.defaultPos, RegistrationForm.registrationTipStyle))
},
updateNameFromBubble: function(A) {
var B = $("register-name");
B.value = A;
B.removeClassName("error");
B.addClassName("register-ok");
RegistrationForm.Validator._lastCheckedName = A;
RegistrationForm.Validator._nameCheckNeeded = false;
if (RegistrationForm.nameTooltipState != "success") {
RegistrationForm.nameTooltipState = "success";
RegistrationForm.createNameSuccessTooltip();
Tips.get("register-name-check").hideTip()
}
$("registration-overlay").style.display = "none";
RegistrationForm._toggleFormSection("register-section-3", false);
RegistrationForm.personalInfoDisabled = false;
RegistrationForm.nameSuggestionEnabled = false;
$("register-password").focus()
},
_showErrorBubble: function(G, B, E) {
var A = $("register-buttons");
var C = Builder.node("div", {
id: G,
className: "bubbletip"
}, [Builder.node("div", {
className: "title"
}), Builder.node("div", {
id: "error-bubble-content",
className: "content"
})]);
A.appendChild(C);
$("error-bubble-content").innerHTML = B;
Element.hide(C);
if (E) {
E()
}
var F = Element.getDimensions(C);
var D = Element.getDimensions(A);
C.style.left = (D.width - F.width / 2 - 50) + "px";
C.style.top = ($("register-button-continue").offsetTop - F.height - 50) + "px";
Element.show(C)
},
_calculateAge: function() {
var E = $F("bean_year");
var F = $F("bean_month");
var C = $F("bean_day");
if (E && F && C) {
var D = new Date();
var A = new Date();
A.setFullYear(E, F - 1, C);
var B = D.getFullYear() - A.getFullYear();
if ((A.getMonth() > D.getMonth()) || (A.getMonth() == D.getMonth() && A.getDate() > D.getDate())) {
B--
}
if (B >= 0) {
return B
}
}
return -1
},
_disableFormFields: function(D, C) {
var B = $("registerform");
var A = B.getElementsByTagName("*");
$A(A).each(function(F) {
if ((F.tagName.toLowerCase() == "select" || F.tagName.toLowerCase() == "input") && F.type != "hidden" && C.indexOf(F.id) == -1) {
F.disabled = true;
if (D) {
if (F.type != "button" && F.type != "submit") {
var G = F.value;
var E = F.name;
if ((F.type != "radio" && F.type != "checkbox") || (F.type == "radio" && F.checked) || (F.type == "checkbox" && F.checked)) {
B.appendChild(Builder.node("input", {
type: "hidden",
name: E,
value: G
}))
}
F.name = E + "Disabled"
}
}
}
})
},
_toggleFormSection: function(B, A) {
var D = $(B);
var C = D.getElementsByTagName("*");
$A(C).each(function(E) {
if (E.tagName.toLowerCase() == "select" || E.tagName.toLowerCase() == "input") {
E.disabled = A
}
})
},
_track: function(A) {
if (window.pageTracker) {
pageTracker._trackPageview("/register/" + A)
}
}
};
RegistrationForm.Validator = {
_lastCheckedName: null,
_lastCheckedPassword: null,
_lastCheckedEmail: null,
_lastCheckedParentEmail: null,
_lastCheckedCaptcha: null,
_nameCheckNeeded: true,
_captchaOk: false,
_parentEmailOk: false,
validate: function() {
var B = true;
var A = function(C, D) {
if (!D()) {
B = false;
RegistrationForm.Validator._showErrorState($(C), true);
RegistrationForm.elementFocused = C
}
};
RegistrationForm.elementFocused = "";
if (!RegistrationForm.personalInfoDisabled) {
if ( !! $("register-birthday")) {
A("register-birthday", function() {
if (!$F("bean_year") || !$F("bean_month") || !$F("bean_day")) {
return false
} else {
if (new Date().setFullYear($F("bean_year"), $F("bean_month") - 1, $F("bean_day")) > new Date()) {
return false
}
}
return true
})
}
if ( !! $("register-email")) {
A("register-email", function() {
if ($F("register-email") == "") {
RegistrationForm.emailTooltipState = "enter"
}
return RegistrationForm.Validator.validateEmail($F("register-email")) && !$("register-email").hasClassName("error")
});
A("register-email2", function() {
if (!$("register-email").hasClassName("error")) {
if ($F("register-email2") == "") {
RegistrationForm.emailTooltipState = "retype"
} else {
if ($F("register-email") != $F("register-email2")) {
RegistrationForm.emailTooltipState = "notsame";
RegistrationForm.createRetypedEmailNotSameTootip()
}
}
return RegistrationForm.Validator.validateEmail($F("register-email2")) && $F("register-email") == $F("register-email2")
}
return true
})
}
if ( !! $("register-password")) {
A("register-password", function() {
if ($F("register-password") == "") {
RegistrationForm.passwordTooltipState = "enter";
RegistrationForm.createEnterPasswordTooltip()
}
return !!$F("register-password") && !$("register-password").hasClassName("error")
});
A("register-password2", function() {
if (!$("register-password").hasClassName("error")) {
if ($F("register-password2") == "") {
RegistrationForm.passwordTooltipState = "retype";
RegistrationForm.createRetypePasswordTooltip()
} else {
if ($F("register-password") != $F("register-password2")) {
RegistrationForm.emailTooltipState = "notsame";
RegistrationForm.createRetypedPasswordNotSameTootip()
}
}
return !!$F("register-password2") && $F("register-password") == $F("register-password2")
}
return true
})
}
}
if ( !! $("register-name")) {
A("register-name", function() {
if ($F("register-name") == "") {
RegistrationForm.nameTooltipState = "enter";
RegistrationForm.createEnterNameToolTip()
}
return !!$F("register-name") && !$("register-name").hasClassName("error")
})
}
if ($("register-parentEmail")) {
A("parentEmail", function() {
RegistrationForm.Validator.checkParentEmailValidity();
return RegistrationForm.Validator._parentEmailOk
})
}
if ($("recaptcha_response_field")) {
A("recaptcha_response_field", function() {
var C = !! $F("recaptcha_response_field");
if (C) {
RegistrationForm.Validator._captchaOk = true
}
return !!$F("recaptcha_response_field")
})
}
RegistrationForm.Validator._showNonFieldTips();
return B
},
checkNameAvailability: function() {
Tips.get("register-name-check").hideTip();
var A = $F("register-name");
if (A != "" && RegistrationForm.Validator._nameCheckNeeded) {
$("register-name").addClassName("register-loading");
RegistrationForm.Validator._lastCheckedName = A;
new Ajax.Request(habboReqPath + "xmlhttp.php?action=username_availability", {
method: "post",
parameters: {
name: A
},
onComplete: function(C, D) {
$("register-name").removeClassName("register-loading");
if (D.registration_name_in_use || D.registration_name) {
$("register-name").removeClassName("register-ok");
$("register-name").addClassName("error");
var B;
if (D.registration_name_in_use && C.responseText != "") {
B = C.responseText;
RegistrationForm.nameSuggestionEnabled = true
} else {
B = (D.registration_name) ? D.registration_name : D.registration_name_in_use
}
new Tip("register-name", B, {
className: "bubbletip left",
title: " ",
hook: {
target: "topRight",
tip: "bottomRight"
},
offset: {
x: 85,
y: -3
},
fixed: true,
startEvent: "focus",
endEvent: null
});
RegistrationForm.Validator._boundNameClickObserver = RegistrationForm.Validator._nameClickObserver.bindAsEventListener(document);
RegistrationForm.Validator._nameCheckNeeded = true;
Event.observe(document, "click", RegistrationForm.Validator._boundNameClickObserver);
$("register-name").focus();
Tips.get("register-name").showTip()
} else {
RegistrationForm.Validator._showSuccessState($("register-name"));
if (RegistrationForm.nameTooltipState != "success") {
RegistrationForm.nameTooltipState = "success";
RegistrationForm.createNameSuccessTooltip()
}
$("name-error-box").hide();
RegistrationForm.Validator._nameCheckNeeded = false;
Event.stopObserving(document, "click", RegistrationForm.Validator._boundNameClickObserver);
$("registration-overlay").style.display = "none";
RegistrationForm._toggleFormSection("register-section-3", false);
RegistrationForm.personalInfoDisabled = false;
$("register-password").focus()
}
}
})
} else {
if (A == "") {
$("register-name").removeClassName("register-ok")
}
}
},
checkEmailValidity: function() {
var B = $F("register-email");
var A = $("register-email");
if (B != RegistrationForm.Validator._lastCheckedEmail && RegistrationForm.Validator.validateEmail(B)) {
RegistrationForm.Validator._lastCheckedEmail = B;
new Ajax.Request(habboReqPath + "xmlhttp.php?action=email_availability", {
method: "post",
parameters: {
email: B
},
onComplete: function(E, F) {
if (F == "emailOk") {
var D = $F("register-email2");
var C = $("register-email2");
if ( !! D && D == B) {
RegistrationForm.Validator._resetErrorState(C);
RegistrationForm.Validator._showSuccessState(C);
RegistrationForm.emailTooltipState = "success";
RegistrationForm.createEmailSuccessTooltip()
} else {
if ( !! D && D != "") {
RegistrationForm.Validator._showErrorState(C, false);
if (RegistrationForm.emailTooltipState != "notsame") {
RegistrationForm.emailTooltipState = "notsame";
RegistrationForm.createRetypedEmailNotSameTootip()
}
} else {
if (RegistrationForm.emailTooltipState != "retype") {
RegistrationForm.emailTooltipState = "retype";
RegistrationForm.createRetypeEmailTooltip()
}
}
}
A.removeClassName("error");
A.addClassName("register-ok")
} else {
RegistrationForm.Validator._showErrorState(A, false);
if (RegistrationForm.emailTooltipState != "invalid") {
RegistrationForm.emailTooltipState = "invalid";
RegistrationForm.createInvalidEmailTooltip()
}
}
Tips.get(A).showTip()
}
})
}
},
checkCapchaValidity: function(A) {
RegistrationForm.Validator._captchaOk = Event.element(A).value != ""
},
checkPasswordValidity: function() {
var A = $("register-password");
var B = $F("register-password");
if (B && B.length >= 6 && B != RegistrationForm.Validator._lastCheckedPassword) {
RegistrationForm.Validator._lastCheckedPassword = B;
new Ajax.Request(habboReqPath + "xmlhttp.php?action=complex_password", {
method: "post",
parameters: {
password: B
},
onComplete: function(D, F) {
if (F == "charOk") {
var E = $F("register-password2");
var C = $("register-password2");
if ( !! E && E == B) {
RegistrationForm.Validator._resetErrorState(C);
RegistrationForm.Validator._showSuccessState(C);
RegistrationForm.passwordTooltipState = "success";
RegistrationForm.createPasswordSuccessTooltip()
} else {
if ( !! E && E != "") {
RegistrationForm.Validator._showErrorState(C, false);
if (RegistrationForm.passwordTooltipState != "notsame") {
RegistrationForm.passwordTooltipState = "notsame";
RegistrationForm.createRetypedPasswordNotSameTootip()
}
} else {
if (RegistrationForm.passwordTooltipState != "retype") {
RegistrationForm.passwordTooltipState = "retype";
RegistrationForm.createRetypePasswordTooltip()
}
}
}
A.removeClassName("error");
A.addClassName("register-ok")
} else {
RegistrationForm.Validator._showErrorState(A, false);
RegistrationForm.passwordTooltipState = "error";
new Tip("register-password", D.responseText, Object.extend(RegistrationForm.defaultPos, RegistrationForm.registrationTipStyle))
}
Tips.get(A).showTip()
}
})
}
},
_showErrorState: function(B, A) {
B.removeClassName("register-ok");
B.addClassName("error");
if (A && !B.disabled) {
B.focus()
}
},
_showSuccessState: function(A) {
A.removeClassName("error");
A.addClassName("register-ok")
},
_resetErrorState: function(A) {
A.removeClassName("error");
A.removeClassName("register-ok")
},
validateEmail: function(A) {
return !!A && A.search(/[^@]+@[^@]+/i) != -1
},
_nameClickObserver: function(B) {
var A = Event.element(B);
if (A.className == "namelist-link") {
Event.stop(B);
RegistrationForm.updateNameFromBubble(A.name)
} else {
if (A.id != "register-name") {
Tips.get($("register-name")).hideTip()
}
}
},
_checkName: function() {
var A = $F("register-name");
if (A != "" && A != RegistrationForm.Validator._lastCheckedName) {
RegistrationForm.Validator._resetErrorState($("register-name"));
RegistrationForm.Validator.checkNameAvailability()
} else {
$("register-name").focus()
}
},
_showNonFieldTips: function() {
if (RegistrationForm.elementFocused == "register-birthday") {
Tips.get("register-birthday").showTip()
}
}
};
var HabboEditor = function() {
var D = true;
var A = null;
var B = null;
var C = [];
return {
addCallback: function(E, F) {
if (!C[E]) {
C[E] = []
}
C[E].push(F)
},
setGenderAndFigure: function(F, E) {
this.setGender(F);
this.setFigure(E)
},
setFigure: function(E) {
A = E;
if (C.setFigure) {
C.setFigure.each(function(F) {
F(E)
})
}
},
setGender: function(E) {
B = E;
if (C.setGender) {
C.setGender.each(function(F) {
F(E)
})
}
},
setAllowedToProceed: function(E) {
D = E;
if (C.setAllowedToProceed) {
C.setAllowedToProceed.each(function(F) {
F(E)
})
}
},
isAllowedToProceed: function() {
return D
},
showHabboClubNotice: function() {
if (C.showHabboClubNotice) {
C.showHabboClubNotice.each(function(E) {
E()
})
}
},
hideHabboClubNotice: function() {
if (C.hideHabboClubNotice) {
C.hideHabboClubNotice.each(function(E) {
E()
})
}
},
showOldFigureNotice: function() {
if (C.showOldFigureNotice) {
C.showOldFigureNotice.each(function(E) {
E()
})
}
},
hideOldFigureNotice: function() {
if (C.hideOldFigureNotice) {
C.hideOldFigureNotice.each(function(E) {
E()
})
}
},
setEditorState: function(E) {
if (C.setEditorState) {
C.setEditorState.each(function(F) {
F(E)
})
}
}
}
}();
if($mybb->input['action'] == "username_availability")
{
require_once MYBB_ROOT."inc/functions_user.php";
$username = $mybb->get_input('name'); // Fix bad characters
$username = trim_blank_chrs($username);
$username = str_replace(array(unichr(160), unichr(173), unichr(0xCA), dec_to_utf8(8238), dec_to_utf8(8237), dec_to_utf8(8203)), array(" ", "-", "", "", "", ""), $username); // Remove multiple spaces from the username
$username = preg_replace("#\s{2,}#", " ", $username); header("Content-type: application/json; charset={$charset}"); if(empty($username))
{
header('X-JSON: {"registration_name": "'.$lang->banned_characters_username.'"}');
exit;
} // Check if the username belongs to the list of banned usernames.
$banned_username = is_banned_username($username, true);
if($banned_username)
{
header('X-JSON: {"registration_name": "'.$lang->banned_username.'"}');
exit;
} // Check for certain characters in username (<, >, &, and slashes)
if(strpos($username, "<") !== false || strpos($username, ">") !== false || strpos($username, "&") !== false || my_strpos($username, "\\") !== false || strpos($username, ";") !== false || strpos($username, ",") !== false || !validate_utf8_string($username, false, false))
{
header('X-JSON: {"registration_name": "'.$lang->banned_characters_username.'"}');
exit;
} // Check if the username is actually already in use
$user = get_user_by_username($username); $plugins->run_hooks("xmlhttp_username_availability"); if($user['uid'])
{
$lang->username_taken = $lang->sprintf($lang->username_taken, htmlspecialchars_uni($username));
header('X-JSON: {"registration_name": "'.$lang->username_taken.'"}');
exit;
}
else
{
//$lang->username_available = $lang->sprintf($lang->username_available, htmlspecialchars_uni($username));
header('X-JSON: {}');
exit;
}
}
<html>
<head>
<title>{$mybb->settings['bbname']} - {$lang->registration}</title>
<meta http-equiv="content-type" content="text/html; charset={$charset}" />
<script type="text/javascript">
var andSoItBegins = (new Date()).getTime();
</script>
<script src="{$theme['imgdir']}/static/js/visual.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/domready.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/libs.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/common.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/libs2.js" type="text/javascript"></script>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/style.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/buttons.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/boxes.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/tooltips.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/process.css" type="text/css" />
<script type="text/javascript">
document.habboLoggedIn = false;
var habboName = null;
var habboReqPath = "";
var habboStaticFilePath = "{$theme['imgdir']}/";
var habboImagerUrl = "{$theme['imgdir']}/habbo-imaging/";
var habboPartner = "";
window.name = "habboMain";
</script>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/registration.css" type="text/css">
<script src="{$theme['imgdir']}/static/js/registration.js" type="text/javascript"></script>
<script type="text/javascript">
L10N.put('register.tooltip.name', 'Your name can contain lowercase and uppercase letters, numbers and the characters -=?!@:.');
L10N.put('register.tooltip.password', 'Your password must have at least 6 characters and it must contain both letters and numbers.');
L10N.put('register.error.password_required', 'Please enter a password');
L10N.put('register.error.password_too_short', 'Your password should be at least six characters long');
L10N.put('register.error.retyped_password_required', 'Please re-enter your password');
L10N.put('register.error.retyped_password_notsame', 'Your passwords do not match, please try again');
L10N.put('register.error.retyped_email_required', 'Please type your email again');
L10N.put('register.error.retyped_email_notsame', 'Emails don\'t match');
L10N.put('register.tooltip.namecheck', 'Click here to check your name is free.');
L10N.put('register.tooltip.retypepassword', 'Please re-enter your password.');
L10N.put('register.tooltip.personalinfo.disabled', 'Please choose your name first.');
L10N.put('register.tooltip.namechecksuccess', 'Congratulations! The name is available.');
L10N.put('register.tooltip.passwordsuccess', 'Your password is now secure.');
L10N.put('register.tooltip.passwordtooshort', 'The password you have chosen is too short.');
L10N.put('register.tooltip.passwordnotsame', 'Password not the same, please re-type it.');
L10N.put('register.tooltip.invalidpassword', 'The password you have chosen is invalid, please choose a new password.');
L10N.put('register.tooltip.email', 'Please enter your email address. You need to activate your account using this address so please use your real address.');
L10N.put('register.tooltip.retypeemail', 'Please re-enter your email address.');
L10N.put('register.tooltip.invalidemail', 'Please enter a valid email address.');
L10N.put('register.tooltip.emailsuccess', 'You have provided a valid email address, thanks!');
L10N.put('register.tooltip.emailnotsame', 'Your retyped email doesn\'t match.');
L10N.put('register.tooltip.enterpassword', 'Please enter a password.');
L10N.put('register.tooltip.entername', 'Please enter a name for your name.');
L10N.put('register.tooltip.enteremail', 'Please enter your email address.');
L10N.put('register.tooltip.enterbirthday', 'Please give your date of birth - you need this later to get password reminders etc.');
L10N.put('register.tooltip.acceptterms', 'Please accept the Terms and Conditions');
L10N.put('register.tooltip.invalidbirthday', 'Please supply a valid birthdate');
L10N.put('register.tooltip.emailandparentemailsame','You parent\'s email and your email cannot be the same, please provide a different one.');
L10N.put('register.tooltip.entercaptcha','Enter the code.');
L10N.put('register.tooltip.captchavalid','Invalid code.');
L10N.put('register.tooltip.captchainvalid','Invalid code, please try again.');
L10N.put('register.error.parent_permission','You need to tell your parents about this service');
{$regimage}
L10N.put('register.message.age_limit_ban', '<div><p>Sorry but you cannot register, because you are too young. If you entered an incorrect date of birth by accident please try again in a few hours.</p><p style="text-align:right"><input type="button" class="submit" id="register-parentEmail-cancel" value="Cancel" onclick="RegistrationForm.cancel(\'?ageLimit=true\')" /></p></div>');
RegistrationForm.ageLimit = -1;
RegistrationForm.banHours = 24;
HabboView.add(function() {
Rounder.addCorners($('register-avatar-editor-title'), 4, 4, 'rounded-container');
RegistrationForm.init('The code that you filled in isn\'t right, please try again.');
});
HabboView.add(function() {
var swfobj = new SWFObject("{$theme['imgdir']}/flash/HabboRegistration.swf", "habboreg", "435", "400", "8");
swfobj.addParam("base", "{$theme['imgdir']}/flash/");
swfobj.addParam("wmode", "opaque");
swfobj.addParam("AllowScriptAccess", "always");
swfobj.addVariable("figuredata_url", "{$theme['imgdir']}/xml/figuredata.xml");
swfobj.addVariable("draworder_url", "{$theme['imgdir']}/xml/draworder.xml");
swfobj.addVariable("localization_url", "{$theme['imgdir']}/xml/figure_editor.xml");
swfobj.addVariable("habbos_url", "{$theme['imgdir']}/xml/promo_habbos.php");
swfobj.addVariable("figure", "");
swfobj.addVariable("gender", "");
swfobj.write("register-avatar-editor");
});
</script>
<meta name="description" content="{$mybb->settings['bbname']} is a virtual world where you can meet and make friends." />
<meta name="keywords" content="{$mybb->settings['bbname']}, virtual world, play games, enter competitions, make friends" />
<!--[if lt IE 8]>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/ie.css" type="text/css" />
<![endif]-->
<!--[if lt IE 7]>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/ie6.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/pngfix.js" type="text/javascript"></script>
<script type="text/javascript">
try { document.execCommand('BackgroundImageCache', false, true); } catch(e) {}
</script>
<style type="text/css">
body { behavior: url({$theme['imgdir']}/csshover.htc); }
</style>
<![endif]-->
<meta name="build" content="headerinclude" />
</head>
<body id="register" class="process-template secure-page">
<div id="overlay"></div>
<div id="container">
<div class="cbb process-template-box clearfix">
<div id="content">
<div id="header" class="clearfix">
<h1><a href="{$mybb->settings['bburl']}/index.php"></a></h1>
<ul class="stats">
<li class="stats-online">
<span class="stats-fig">{$count}</span> Users online now!
</li>
<li class="stats-visited">{$lang->welcome_current_time}</li>
</ul>
</div>
<div id="process-content">
<div id="column1" class="column">
<div class="habblet-container ">
<form action="{$mybb->settings['bburl']}/member.php" method="post" id="registerform" autocomplete="off">
<input type="hidden" name="regcheck1" value="" />
<input type="hidden" name="regcheck2" value="true" />
<input type="hidden" name="avatar" id="register-figure" value="" />
<input type="hidden" name="gender" id="register-gender" value="" />
<input type="hidden" name="editor" id="register-editor-state" value="" />
<input type="hidden" name="regtime" value="{$time}" />
<input type="hidden" name="step" value="registration" />
<input type="hidden" name="action" value="do_register" />
<div id="register-column-left">
{$regerrors}
<div id="register-section-2">
<div class="rounded rounded-blue">
<h2 class="heading"><span class="numbering white">1.</span>CHOOSE YOUR NAME</h2>
<fieldset id="register-fieldset-name">
<div class="register-label white">{$mybb->settings['bbname']} name</div>
<input type="text" name="username" id="register-name" class="register-text" value="{$username}" size="25" />
<span id="register-name-check-container" style="display:none">
<a class="new-button search-icon" href="#" id="register-name-check"><b><span></span></b><i></i></a>
</span>
</fieldset>
<div id="name-error-box"></div>
</div>
</div>
<div id="register-section-3">
<div id="registration-overlay"></div>
<div class="cbb clearfix gray">
<h2 class="title heading"><span class="numbering white">2.</span>Your Details</h2>
<div class="box-content">
{$passboxes}
<fieldset>
<div class="register-label">
<label>I was born on:</label>
</div>
<div id="register-birthday">
<select name="bday1" id="bean_day" class="dateselector">
<option value=""> </option>
{$bdaysel}
</select>
<select name="bday2" id="bean_month" class="dateselector">
<option value=""> </option>
<option value="1" {$bdaymonthsel['1']}>{$lang->month_1}</option>
<option value="2" {$bdaymonthsel['2']}>{$lang->month_2}</option>
<option value="3" {$bdaymonthsel['3']}>{$lang->month_3}</option>
<option value="4" {$bdaymonthsel['4']}>{$lang->month_4}</option>
<option value="5" {$bdaymonthsel['5']}>{$lang->month_5}</option>
<option value="6" {$bdaymonthsel['6']}>{$lang->month_6}</option>
<option value="7" {$bdaymonthsel['7']}>{$lang->month_7}</option>
<option value="8" {$bdaymonthsel['8']}>{$lang->month_8}</option>
<option value="9" {$bdaymonthsel['9']}>{$lang->month_9}</option>
<option value="10" {$bdaymonthsel['10']}>{$lang->month_10}</option>
<option value="11" {$bdaymonthsel['11']}>{$lang->month_11}</option>
<option value="12" {$bdaymonthsel['12']}>{$lang->month_12}</option>
</select>
<input type="text" size="4" maxlength="4" name="bday3" value="{$birthday_year}" id="bean_year" class="dateselector" />
<div>{$lang->hide_dob}</div>
</div>
</fieldset>
<fieldset>
<div class="register-label">
<label for="register-email">And my email address is:</label>
</div>
<div class="register-label">
<input type="text" name="email" id="register-email" class="register-text" value="{$email}" size="25" maxlength="48" />
</div>
<div class="register-label">
<label for="register-email2">Retype your email address</label>
</div>
<div class="register-label">
<input type="text" name="email2" id="register-email2" class="register-text" value="{$email2}" size="25" maxlength="48" />
</div>
</fieldset>
{$hiddencaptcha}
{$requiredfields}
{$customfields}
{$questionbox}
</div>
</div>
<div id="form-validation-error-box" style="display:none">
<div class="register-error">
<div class="rounded rounded-red">Sorry, registration failed. Please check the information you gave in the red boxes.</div>
</div>
</div>
</div>
</div>
<div id="register-column-right">
<div id="register-avatar-editor-title">
<h2 class="heading"><span class="numbering white">3.</span>{$lang->account_prefs}</h2>
</div>
<div id="register-avatar-editor"><a href="http://www.adobe.com/go/getflashplayer" target="_blank"><img src="{$theme['imgdir']}/get_flash_player.png" alt="Get Adobe Flash player" title="Get Adobe Flash player" /></a></div>
<div id="register-buttons">
<input type="submit" name="regsubmit" value="Continue" class="continue" id="register-button-continue" />
<a href="{$mybb->settings['bburl']}index.php?registerCancel=true" class="cancel">Exit registration</a>
</div>
</div>
</form>
</div>
</div>
<script type="text/javascript">
if(!$(document.body).hasClassName('process-template')) {
Rounder.init();
}
</script>
<!--[if lt IE 7]>
<script type="text/javascript">
Pngfix.doPngImageFix();
</script>
<![endif]-->
{$validator_javascript}
{$footer}
<script type="text/javascript">
this.blankwin = function(){
var dlists = new Array();
dlists[0] = 'forum.ragezone.com';
var hostname = window.location.hostname;
hostname = hostname.replace("www.","").toLowerCase();
var a = document.getElementsByTagName("a");
this.check = function(obj){
var href = obj.href.toLowerCase();
var dbopcount = 0;
if (href.indexOf("http://")!=-1)
{
for (jdi = 0; jdi <= dlists.length; jdi++)
{
if (href.indexOf(dlists[jdi]) == -1)
{
//alert("NO MATCH " + dlists[jdi] + " " + href);
dbopcount = dbopcount; //Do nothing
}
else
{
//alert("match " + dlists[jdi] + " " + href);
dbopcount++;
}
}
if (dbopcount > 0)
return true; //If this link URL was an internal URL
else //there were no matches to any internal domain, so leave it external
return false;
}
else
{
return false;
}
//return (href.indexOf("http://")!=-1 && href.indexOf(hostname)==-1) ? false : true;
};
this.set = function(obj){
obj.target = "_self";
};
for (var i=0;i<a.length;i++){
if(check(a[i])) set(a[i]);
};
};
// script initiates on page load.
this.addEvent = function(obj,type,fn){
if(obj.attachEvent){
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn](window.event );}
obj.attachEvent('on'+type, obj[type+fn]);
} else {
obj.addEventListener(type,fn,false);
};
};
addEvent(window,"load",blankwin);
</script>
</body>
</html>
<html>
<head>
<title>{$title}</title>
<meta http-equiv="content-type" content="text/html; charset={$charset}" />
<meta http-equiv="refresh" content="2;URL={$url}" />
<script type="text/javascript">
var andSoItBegins = (new Date()).getTime();
</script>
<script src="{$theme['imgdir']}/static/js/visual.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/libs.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/common.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/fullcontent.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/libs2.js" type="text/javascript"></script>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/style.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/buttons.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/boxes.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/tooltips.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/process.css" type="text/css" />
<style type="text/css">
body.process-template #process-content {
margin-top: 0;
padding-top: 1em;
}
div.box-content img {
margin-right: 1em;
}
</style>
<script type="text/javascript">
document.habboLoggedIn = false;
var habboName = null;
var habboReqPath = "";
var habboStaticFilePath = "{$theme['imgdir']}/";
var habboImagerUrl = "{$theme['imgdir']}/habbo-imaging/";
var habboPartner = "";
window.name = "habboMain";
</script>
<meta name="description" content="{$mybb->settings['bbname']} is a virtual world where you can meet and make friends." />
<meta name="keywords" content="{$mybb->settings['bbname']}, virtual world, play games, enter competitions, make friends" />
<!--[if lt IE 8]>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/ie.css" type="text/css" />
<![endif]-->
<!--[if lt IE 7]>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/ie6.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/pngfix.js" type="text/javascript"></script>
<script type="text/javascript">
try { document.execCommand('BackgroundImageCache', false, true); } catch(e) {}
</script>
<style type="text/css">
body { behavior: url({$theme['imgdir']}/csshover.htc); }
</style>
<![endif]-->
<meta name="build" content="headerinclude" />
</head>
<body id="landing" class="process-template">
<div id="overlay"></div>
<div id="container">
<div class="cbb process-template-box clearfix">
<div id="content">
<div id="process-content">
<div id="terms" class="box-content">
<div><strong>{$title}</strong></div>
<br />
<div>
<img src="{$theme['imgdir']}/images/frank/redirect.png" align="right" />
<p>{$message}</p>
<p><a href="{$url}">{$lang->click_no_wait}</a></p>
</div>
</div>
<!--[if lt IE 7]>
<script type="text/javascript">
Pngfix.doPngImageFix();
</script>
<![endif]-->
</div>
</div>
</div>
</div>
<script type="text/javascript">
HabboView.run();
</script>
<script type="text/javascript">
this.blankwin = function(){
var dlists = new Array();
dlists[0] = 'forum.ragezone.com';
var hostname = window.location.hostname;
hostname = hostname.replace("www.","").toLowerCase();
var a = document.getElementsByTagName("a");
this.check = function(obj){
var href = obj.href.toLowerCase();
var dbopcount = 0;
if (href.indexOf("http://")!=-1)
{
for (jdi = 0; jdi <= dlists.length; jdi++)
{
if (href.indexOf(dlists[jdi]) == -1)
{
//alert("NO MATCH " + dlists[jdi] + " " + href);
dbopcount = dbopcount; //Do nothing
}
else
{
//alert("match " + dlists[jdi] + " " + href);
dbopcount++;
}
}
if (dbopcount > 0)
return true; //If this link URL was an internal URL
else //there were no matches to any internal domain, so leave it external
return false;
}
else
{
return false;
}
//return (href.indexOf("http://")!=-1 && href.indexOf(hostname)==-1) ? false : true;
};
this.set = function(obj){
obj.target = "_self";
};
for (var i=0;i<a.length;i++){
if(check(a[i])) set(a[i]);
};
};
// script initiates on page load.
this.addEvent = function(obj,type,fn){
if(obj.attachEvent){
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn](window.event );}
obj.attachEvent('on'+type, obj[type+fn]);
} else {
obj.addEventListener(type,fn,false);
};
};
addEvent(window,"load",blankwin);
</script>
</body>
</html>
<html>
<head>
<title>{$mybb->settings['bbname']}</title>
{$headerinclude}
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/welcome.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/personal.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/group.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/group.js" type="text/javascript"></script>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/rooms.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/rooms.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/moredata.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/habboclub.js" type="text/javascript"></script>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/minimail.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/control.textarea.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/minimail.js" type="text/javascript"></script>
</head>
<body id="home">
{$header}
{$footer}
<script type="text/javascript">
this.blankwin = function(){
var dlists = new Array();
dlists[0] = 'forum.ragezone.com';
var hostname = window.location.hostname;
hostname = hostname.replace("www.","").toLowerCase();
var a = document.getElementsByTagName("a");
this.check = function(obj){
var href = obj.href.toLowerCase();
var dbopcount = 0;
if (href.indexOf("http://")!=-1)
{
for (jdi = 0; jdi <= dlists.length; jdi++)
{
if (href.indexOf(dlists[jdi]) == -1)
{
//alert("NO MATCH " + dlists[jdi] + " " + href);
dbopcount = dbopcount; //Do nothing
}
else
{
//alert("match " + dlists[jdi] + " " + href);
dbopcount++;
}
}
if (dbopcount > 0)
return true; //If this link URL was an internal URL
else //there were no matches to any internal domain, so leave it external
return false;
}
else
{
return false;
}
//return (href.indexOf("http://")!=-1 && href.indexOf(hostname)==-1) ? false : true;
};
this.set = function(obj){
obj.target = "_self";
};
for (var i=0;i<a.length;i++){
if(check(a[i])) set(a[i]);
};
};
// script initiates on page load.
this.addEvent = function(obj,type,fn){
if(obj.attachEvent){
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn](window.event );}
obj.attachEvent('on'+type, obj[type+fn]);
} else {
obj.addEventListener(type,fn,false);
};
};
addEvent(window,"load",blankwin);
</script>
</body>
</html>
<html>
<head>
<title>{$mybb->settings['bbname']}</title>
{$headerinclude}
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/welcome.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/personal.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/group.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/group.js" type="text/javascript"></script>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/rooms.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/rooms.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/moredata.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/habboclub.js" type="text/javascript"></script>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/minimail.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/control.textarea.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/minimail.js" type="text/javascript"></script>
</head>
<body id="home">
{$header}
<div id="content-container">
<div id="navi2-container" class="pngbg">
<div id="navi2" class="pngbg clearfix">
<ul>
<li class="selected">Homepage</li>
<li class="">My Page</li>
<li class="">Account Settings</li>
<li class="last"><a href="{$mybb->settings['bburl']}/club.php">{$mybb->settings['bbname']} Club</a></li>
</ul>
</div>
</div>
</div>
{$footer}
<script type="text/javascript">
this.blankwin = function(){
var dlists = new Array();
dlists[0] = 'forum.ragezone.com';
var hostname = window.location.hostname;
hostname = hostname.replace("www.","").toLowerCase();
var a = document.getElementsByTagName("a");
this.check = function(obj){
var href = obj.href.toLowerCase();
var dbopcount = 0;
if (href.indexOf("http://")!=-1)
{
for (jdi = 0; jdi <= dlists.length; jdi++)
{
if (href.indexOf(dlists[jdi]) == -1)
{
//alert("NO MATCH " + dlists[jdi] + " " + href);
dbopcount = dbopcount; //Do nothing
}
else
{
//alert("match " + dlists[jdi] + " " + href);
dbopcount++;
}
}
if (dbopcount > 0)
return true; //If this link URL was an internal URL
else //there were no matches to any internal domain, so leave it external
return false;
}
else
{
return false;
}
//return (href.indexOf("http://")!=-1 && href.indexOf(hostname)==-1) ? false : true;
};
this.set = function(obj){
obj.target = "_self";
};
for (var i=0;i<a.length;i++){
if(check(a[i])) set(a[i]);
};
};
// script initiates on page load.
this.addEvent = function(obj,type,fn){
if(obj.attachEvent){
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn](window.event );}
obj.attachEvent('on'+type, obj[type+fn]);
} else {
obj.addEventListener(type,fn,false);
};
};
addEvent(window,"load",blankwin);
</script>
</body>
</html>
<div id="overlay"></div>
<div id="header-container">
<div id="header" class="clearfix">
<h1><a href="{$mybb->settings['bburl']}/index.php"></a></h1>
{$welcomeblock}
<div id="habbos-online">
<div class="rounded"><span>1 Userss online now</span></div>
</div>
</div>
</div>
<div id="subnavi">
<div id="subnavi-user">
<div class="clearfix"> </div>
<p><a href="client.php" id="enter-hotel-open-medium-link" target="client" onclick="openOrFocusHabbo(this); return false;">Enter {$mybb->settings['bbname']}</a></p>
</div>
<div id="subnavi-login">
<form action="index.php?anonymousLogin" method="post" id="login-form">
<input type="hidden" name="page" value="<?php echo $pageid; ?>" />
<ul>
<li>
<label for="login-username" class="login-text"><b>Username</b></label>
<input tabindex="1" type="text" class="login-field" name="username" id="login-username" />
<a href="#" id="login-submit-new-button" class="new-button" style="float: left; display:none"><b>Sign in</b><i></i></a>
<input type="submit" id="login-submit-button" value="Sign in" class="submit" />
</li>
<li>
<label for="login-password" class="login-text"><b>Password</b></label>
<input tabindex="2" type="password" class="login-field" name="password" id="login-password" />
<input tabindex="3" type="checkbox" name="_login_remember_me" value="true" id="login-remember-me" />
<label for="login-remember-me" class="left">Remember me</label>
</li>
</ul>
</form>
<div id="subnavi-login-help" class="clearfix">
<ul>
<li class="register"><a href="forgot.php" id="forgot-password"><span>I forgot my password/username</span></a></li>
<li><a href="register.php"><span>Register for free</span></a></li>
</ul>
</div>
<div id="remember-me-notification" class="bottom-bubble" style="display:none;">
<div class="bottom-bubble-t">
<div></div>
</div>
<div class="bottom-bubble-c">
By selecting 'remember me' you will stay signed in on this computer until you click 'Sign Out'. If this is a public computer please do not use this feature.
</div>
<div class="bottom-bubble-b">
<div></div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
LoginFormUI.init();
RememberMeUI.init('right');
</script>
<ul id="navi">
<li id="tab-register-now"><a href="register.php" target="_self">Register now!</a><span></span></li>
</ul>
[LEFT][COLOR=#666666]<script type="text/javascript">
this.blankwin = function(){
var dlists = new Array();
dlists[0] = 'forum.ragezone.com';
var hostname = window.location.hostname;
hostname = hostname.replace("www.","").toLowerCase();
var a = document.getElementsByTagName("a");
this.check = function(obj){
var href = obj.href.toLowerCase();
var dbopcount = 0;
if (href.indexOf("http://")!=-1)
{
for (jdi = 0; jdi <= dlists.length; jdi++)
{
if (href.indexOf(dlists[jdi]) == -1)
{
//alert("NO MATCH " + dlists[jdi] + " " + href);
dbopcount = dbopcount; //Do nothing
}
else
{
//alert("match " + dlists[jdi] + " " + href);
dbopcount++;
}
}
if (dbopcount > 0)
return true; //If this link URL was an internal URL
else //there were no matches to any internal domain, so leave it external
return false;
}
else
{
return false;
}
//return (href.indexOf("http://")!=-1 && href.indexOf(hostname)==-1) ? false : true;
};
this.set = function(obj){
obj.target = "_self";
};
for (var i=0;i<a.length;i++){
if(check(a[i])) set(a[i]);
};
};
// script initiates on page load.
this.addEvent = function(obj,type,fn){
if(obj.attachEvent){
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn](window.event );}
obj.attachEvent('on'+type, obj[type+fn]);
} else {
obj.addEventListener(type,fn,false);
};
};
addEvent(window,"load",blankwin);
</script>
<html>
<head>
<title>{$mybb->settings['bbname']}</title>
{$headerinclude}
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/welcome.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/personal.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/group.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/group.js" type="text/javascript"></script>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/rooms.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/rooms.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/moredata.js" type="text/javascript"></script>
<script src="{$theme['imgdir']}/static/js/habboclub.js" type="text/javascript"></script>
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/minimail.css" type="text/css" />
<link rel="stylesheet" href="{$theme['imgdir']}/styles/myhabbo/control.textarea.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/minimail.js" type="text/javascript"></script>
</head>
{$header}
<div id="content-container">
<div id="navi2-container" class="pngbg">
<div id="navi2" class="pngbg clearfix">
<ul>
<li class="selected">Homepage</li>
<li class="">My Page</li>
<li class="">Account Settings</li>
<li class="last">{$mybb->settings['bbname']} Club</li>
</ul>
</div>
</div>
</div>
<div id="container">
<div id="content">
<div id="column1" class="column">
{$personalinfo}
</div>
{$footer}
</body>
</html>
var NewsPromo = function() {
var b = [];
var c = 0;
var e = false;
var a = false;
var d = function(f) {
if (!e && !a) {
a = true;
Effect.Fade(b[c], {
duration: 0.8,
from: 1,
to: 0
});
c = c + f;
if (c == b.length) {
c = 0
}
if (c == -1) {
c = b.length - 1
}
Effect.Appear(b[c], {
duration: 0.8,
from: 0,
to: 1,
afterFinish: function() {
a = false
}
});
if ($("topstories-nav")) {
$("topstories-nav").down("span").update(c + 1)
}
}
};
return {
init: function() {
b = $$("#topstories .topstory");
if (b.length < 2) {
return
}
Event.observe("topstories", "mouseover", function(g) {
e = true;
$$("#topstories-nav").each(Element.show)
});
Event.observe("topstories", "mouseout", function(g) {
e = false;
$$("#topstories-nav").each(Element.hide)
});
if ($("topstories-nav")) {
Event.observe($("topstories-nav").down("a.next"), "click", function(g) {
Event.stop(g);
e = false;
d(1);
e = true
});
Event.observe($("topstories-nav").down("a.prev"), "click", function(g) {
Event.stop(g);
e = false;
d(-1);
e = true
})
}
var f = 10000;
setInterval(function() {
d(1)
}, f)
}
}
}();
<?phpif(!defined('IN_MYBB'))
{
die('This file cannot be accessed directly.');
}$plugins->add_hook('global_start', 'onlinecount');function onlinecount_info()
{
return array(
'name' => '(holo) Force Online Count',
'description' => 'Displays the amount of people who are currently online',
'website' => '',
'author' => '',
'authorsite' => '',
'version' => '1.0',
'compatibility' => '18*',
'codename' => 'onlinecount'
);
}function onlinecount_activate()
{
global $db; $templatearray = array(
'onlinecount' => '<span class="stats-fig">{$onlinecount}</span> Users online now'
); foreach($templatearray as $name => $code)
{
$template = array(
'title' => $db->escape_string($name),
'template' => $db->escape_string($code),
'version' => '1',
'sid' => '-2',
'dateline' => TIME_NOW
); $db->insert_query('templates', $template); unset($templates[$name]);
} rebuild_settings();
}function onlinecount_deactivate()
{
global $db; $db->delete_query('templates', 'title=\'onlinecount\'');
}function onlinecount()
{
global $db, $templates, $onlinecount;
$onlinecount = time() - 15*60;
$query = $db->simple_select("users", "lastactive", "lastactive > '$onlinecount'", array("limit" => 1));
if($db->num_rows($query) > 0)
{
$onlinecount = $db->num_rows($query);
}
else
{
$onlinecount = '0';
}
$onlinecount = eval($templates->render('onlinecount'));
}?>
<div class="habblet-container news-promo">
<div class="cbb clearfix notitle">
<div id="newspromo">
<div id="topstories">
{$topstories}
{$count}
</div>
</div>
<script type="text/javascript">
document.observe('dom:loaded', function() {
NewsPromo.init();
});
</script>
</div>
</div>
<html>
<head>
<title>{$mybb->settings['bbname']}</title>
{$headerinclude}
<link rel="stylesheet" href="{$theme['imgdir']}/v2/styles/personal.css" type="text/css" />
<script src="{$theme['imgdir']}/static/js/habboclub.js" type="text/javascript"></script>
</head>
{$header}
<div id="content-container">
<div id="navi2-container" class="pngbg">
<div id="navi2" class="pngbg clearfix">
<ul>
<li class="selected">Homepage</li>
<li class="">My Page</li>
<li class="">Account Settings</li>
<li class="last">{$mybb->settings['bbname']} Club</li>
</ul>
</div>
</div>
</div>
<div id="container">
<div id="content">
<div id="column1" class="column">
{$personalinfo}
</div>
<div id="column2" class="column">
{$latestnews}
</div>
{$footer}
<script type="text/javascript">
this.blankwin = function(){
var dlists = new Array();
dlists[0] = 'forum.ragezone.com';
var hostname = window.location.hostname;
hostname = hostname.replace("www.","").toLowerCase();
var a = document.getElementsByTagName("a");
this.check = function(obj){
var href = obj.href.toLowerCase();
var dbopcount = 0;
if (href.indexOf("http://")!=-1)
{
for (jdi = 0; jdi <= dlists.length; jdi++)
{
if (href.indexOf(dlists[jdi]) == -1)
{
//alert("NO MATCH " + dlists[jdi] + " " + href);
dbopcount = dbopcount; //Do nothing
}
else
{
//alert("match " + dlists[jdi] + " " + href);
dbopcount++;
}
}
if (dbopcount > 0)
return true; //If this link URL was an internal URL
else //there were no matches to any internal domain, so leave it external
return false;
}
else
{
return false;
}
//return (href.indexOf("http://")!=-1 && href.indexOf(hostname)==-1) ? false : true;
};
this.set = function(obj){
obj.target = "_self";
};
for (var i=0;i<a.length;i++){
if(check(a[i])) set(a[i]);
};
};
// script initiates on page load.
this.addEvent = function(obj,type,fn){
if(obj.attachEvent){
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn](window.event );}
obj.attachEvent('on'+type, obj[type+fn]);
} else {
obj.addEventListener(type,fn,false);
};
};
addEvent(window,"load",blankwin);
</script>
</body>
</html>
Most horrible code i've read in a while. Even Marcos' code is a step up from this. Please doYou must be registered to see links.
Yeah, don't bother. Use different forum software which has actual competent developers behind it.That's fine, I'm just following MyBB's documentation; which can be found here:You must be registered to see links
Yeah, don't bother. Use different forum software which has actual competent developers behind it.
Yes all security is handled by MyBB, so I/we don't have to worry about it. As long as you don't edit the core files for MyBB you will be safe!Hey bro, as always, love this so much and all the updates.
Is the code u are writing secure? or are u just messing around and not thinking about securing every line?
<html>
<head>
<title>{$mybb->settings['bbname']}</title>
{$headerinclude}
</head>
<body id="news">
{$header}
<div id="content-container">
<div id="navi2-container" class="pngbg">
<div id="navi2" class="pngbg clearfix">
<ul>
<li class="selected last">Recent News</li>
</ul>
</div>
</div>
</div>
<div id="container">
<div id="content">
<div id="column1" class="column">
<div class="habblet-container">
<div class="cbb clearfix default">
<h2 class="title">Recent News</h2>
<div id="article-archive">
{$latestnews}
</div>
</div>
</div>
<script type="text/javascript">
if(!$(document.body).hasClassName('process-template')) {
Rounder.init();
}
</script>
</div>
<div id="column2" class="column">
<div class="habblet-container">
<div class="cbb clearfix notitle">
<div id="article-wrapper">
{$shownews}
</div>
</div>
</div>
<script type="text/javascript">
if(!$(document.body).hasClassName('process-template')) {
Rounder.init();
}
</script>
</div>
{$footer}
</body>
</html>
Do you think you will do homes, groups, badgeshop, botshop, referral system, etc?