var help_texts = new Array (); help_texts['account_id'] = "Your ID can not be changed"; help_texts['account_id_error'] = "You must pick an ID"; help_texts['email'] = "Multiply doesn't spam. Read our Privacy Policy"; help_texts['email_error'] = "Invalid email address"; help_texts['account_password'] = "Password must be 4 - 12 characters"; help_texts['account_password_error'] = "Password must be 4 - 12 characters"; help_texts['fname_error'] = "Enter your first name"; help_texts['lname_error'] = "Enter your last name"; help_texts['dob_error'] = "You must be over 12 to register"; help_texts['gender_error'] = "Please select your gender"; help_texts['captcha_error'] = "Type the word in the box"; help_texts['captcha'] = "Type the word in the box"; help_texts['zip_error'] = "Enter in your zip or postal code"; var text_fields = new Array('account_id','fname','lname','email','captcha'); var all_fields = new Array('account_id','account_password','fname','lname','email','dob','gender','captcha','zip','country'); var has_seen_step_2 = false; var form_1_text_fields = new Array('account_id','account_password','fname','lname','email'); var form_2_text_fields = new Array('zip','signup_captcha2'); var Errors = new Array(); var ID_Error = ''; var Password_Error = ''; var has_typed_id = false; function set_help_timeout(name, event) { event = (event) ? event : ((window.event) ? window.event : null); if (!event) { setTimeout(name, 10); return; } var kCode = event.keyCode; if (kCode != 9 || kCode == 8) { setTimeout(name, 10); } } function set_help_text_id_now(is_blur) { var id = getEl('account_id').value; if (!has_typed_id) { if (id.length > 0) { has_typed_id = true; } else { return; } } if (id && id.length > 3) { var url = '/user/join/check-id/' + id + '/1'; load_xml_document('idcheck', url, set_help_text_id_callback); set_help_text('account_id', null, ""); } else { var msg = 'User IDs must be at least 4 characters'; ID_Error = msg; if (is_blur == true) { set_help_text('account_id', null, msg, true); } } } function set_help_pass_now(is_blur) { var p1 = getEl('account_password').value; if (is_blur == true && p1 && (4 > p1.length || p1.length > 12)) { set_help_text('account_password', null, null, true); Password_Error = help_texts['account_password']; } else { delete Errors['account_password']; set_help_text(''); Password_Error = ''; } } function get_offset_top(el) { var ot = el.offsetTop; while ((el = el.offsetParent) != null) { ot += el.offsetTop; } return ot; } function set_help_text(id, not_used, string, is_error) { var validation_text = getEl(id + '_validation_text'); var row = getEl('row_' + id + '_validation'); var help_text = getEl('help_text'); var form_container = getEl('signup_form_container'); var text = string ? string : help_texts[id]; if (is_error) { Errors[id] = true; } else { if (Errors[id]) { delete Errors[id]; } } if (text) { help_text.innerHTML = text; } else { help_text.innerHTML = ' '; } } function set_help_text_id_callback() { if (xml_reqs['idcheck'].readyState != 4) return; if (xml_reqs['idcheck'].status != 200) return; var tmp = xml_reqs['idcheck'].responseText.split('|'); var msg = tmp[0]; var error = tmp[1] == 1 ? true : false; if (error) { msg = "" + msg + ""; ID_Error = msg; } else { ID_Error = ''; } set_help_text('account_id', null, msg, error); } function validate_email(el) { if (el.value.match(/@multiply.com$/)) { set_help_text('email', null, help_texts['email_error'], true); el.focus(); return false; } else if (el.value.match(/\w+@\w+\.\w+/)) { return true; } else { set_help_text('email', null, help_texts['email_error'], true); return false; } } function validate_dob() { var m_dd = getEl('dob_mon'); var d_dd = getEl('dob_day'); var y_dd = getEl('dob_year'); var sel_m = m_dd.options[m_dd.selectedIndex].value; var sel_d = d_dd.options[d_dd.selectedIndex].value; var sel_y = y_dd.options[y_dd.selectedIndex].value; var current = new Date(); var now_m = current.getMonth() + 1; var now_d = current.getDate(); var now_y = current.getFullYear(); var is_valid = false; var y_diff = now_y - sel_y; var m_diff = now_m - sel_m; var d_diff = now_d - sel_d; if (y_diff > 13) is_valid = true; if (y_diff == 13 && m_diff > 0) is_valid = true; if (y_diff == 13 && m_diff == 0 && d_diff >= 0) is_valid = true; if (!is_valid) { set_help_text('dob', null, help_texts['dob_error'], true); } else { delete Errors['dob']; set_help_text(''); } } function validate_gender() { var male = getEl('form::gender::m'); var female = getEl('form::gender::f'); if (!male.checked && !female.checked) { set_help_text('gender', null, help_texts['gender_error'], true); } else { delete Errors['gender']; set_help_text(''); } } function back_to_step_1() { var part_1 = getEl('account_form_part_1'); var part_2 = getEl('account_form_part_2'); part_2.style.display = 'none'; part_1.style.display = ''; } function validate_form_2() { validate_text_fields(form_2_text_fields); return check_errors(); } function validate_id_and_password() { if (ID_Error) { set_help_text('account_id', null, ID_Error, true); } if (Password_Error) { set_help_text('account_password', null, Password_Error, true); } } function validate_form_1() { validate_text_fields(form_1_text_fields); validate_id_and_password(); validate_email(getEl('email')); validate_dob(); validate_gender(); return check_errors(); } function check_errors() { var is_valid = true; if (Errors) { for(x in Errors) { is_valid = false; set_help_text(x, null, help_texts[x + '_error'], true); } } return is_valid; } function hide_all_validations() { for(var i=0; i
Please Wait
"; var url = '/user/join/step_2'; load_xml_document('step2', url, show_step_2); } } function show_step_2() { if (xml_reqs['step2'].readyState != 4) return; if (xml_reqs['step2'].status != 200) return; has_seen_step_2 = true; getEl('account_form_part_2').innerHTML = xml_reqs['step2'].responseText; } function handle_signup_submit() { if (has_seen_step_2) { submit_registration(); } else { load_step_2(); } } function show_form_error(error) { getEl('form_error').style.display = ''; getEl('form_error').innerHTML = error; } function hide_form_error() { getEl('form_error').style.display = 'none'; } function submit_registration() { var is_valid = validate_form_2(); if (!is_valid) { show_form_error('You must fill out all fields.'); return; } hide_form_error(); getEl('signup_form').submit(); } var Background_Images = new Array( 'http://images.multiply.com/multiply/splash/rotated_images/7.jpg', 'http://images.multiply.com/multiply/splash/rotated_images/10.jpg' ); var Background_Cycle = 0; var Image_1_On_Top; function start_background_rotation() { var el1 = getEl('splashimage1'); var el2 = getEl('splashimage2'); el1.src = Background_Images[Background_Cycle]; /* Background_Cycle++; el2.src = Background_Images[Background_Cycle]; setTimeout('fade_background()', 5000); */ } function rotate_background() { var el1 = getEl('splashimage1'); var el2 = getEl('splashimage2'); if (el1 && el2) { el1.src = el2.src; setTimeout('swap_backgrounds()', 500); // yea, seems weird, but firefox was flickering everytime the image was swapped...this forces a redraw. } } function swap_backgrounds() { var el1 = getEl('splashimage1'); var el2 = getEl('splashimage2'); if (el1 && el2) { Background_Cycle++; if (Background_Cycle >= Background_Images.length) { Background_Cycle = 0; } el2.src = Background_Images[Background_Cycle]; el1.style.filter = 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)'; el1.style.opacity = 1; setTimeout('fade_background()', 5000); } } function fade_background() { Fades['splash_fade'] = new Fade('splashimage1', rotate_background); } function keydown_submit_step_1(e) { e = e || window.event; if (e.keyCode == 13) { load_step_2(); return false; } } function keydown_submit_step_2(e) { e = e || window.event; if (e.keyCode == 13) { submit_registration(); return false; } }