function LoadGallery(pictureName, imageFile) { var preload = document.getElementById('preload_'+current_preload); if(document.all) { document.getElementById('preloaded_img_'+current_preload).style.filter="blendTrans(duration=1)"; document.getElementById('preloaded_img_'+current_preload).filters.blendTrans.Apply(); document.getElementById('preloaded_img_'+current_preload).filters.blendTrans.Play(); } sty = preload.style; sty.display = 'none'; var new_preload = document.getElementById('preload_'+imageFile); if (document.all) { document.getElementById('preloaded_img_'+imageFile).style.filter="blendTrans(duration=1)"; document.getElementById('preloaded_img_'+imageFile).filters.blendTrans.Apply(); document.getElementById('preloaded_img_'+imageFile).filters.blendTrans.Play(); } sty = new_preload.style; sty.display = 'block'; current_preload = imageFile; } function popup2(topic) { aPopUp= window.open(topic,'PopupViewer','scrollbars=yes,location=no,status=no,menubar=0,directories=no,top=0,left=0,width=760,height=350,titlebar=no') self.aNoteWin = aPopUp; return false; } function popup(topic, width, height) { aPopUp= window.open(topic,'PopupViewer','scrollbars=yes,location=no,status=no,menubar=0,directories=no,top=0,left=0,width='+width+',height='+height+',titlebar=no') self.aNoteWin = aPopUp; return false; } function popupWindow(image_id, product_id) { LeftPosition = (screen.width) ? (screen.width-500)/2 : 0; TopPosition = (screen.height) ? (screen.height-500)/2 : 0; settings = 'height=725,width=650,top='+TopPosition+',left='+LeftPosition+',toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=1'; win = window.open("/view_image.html?image_id=" + image_id+ "&product_id="+product_id,null,settings); } function checkPassword(strPassword) { var intScore = 0 var strVerdict = "weak" var strLog = "" var intPercent = 0 // PASSWORD LENGTH if (strPassword.length<5) // length 4 or less { intScore = (intScore+3) strLog = strLog + "3 points for length (" + strPassword.length + ")\n" } else if (strPassword.length>4 && strPassword.length<8) // length between 5 and 7 { intScore = (intScore+6) strLog = strLog + "6 points for length (" + strPassword.length + ")\n" } else if (strPassword.length>7 && strPassword.length<16)// length between 8 and 15 { intScore = (intScore+12) strLog = strLog + "12 points for length (" + strPassword.length + ")\n" } else if (strPassword.length>15) // length 16 or more { intScore = (intScore+18) strLog = strLog + "18 point for length (" + strPassword.length + ")\n" } // LETTERS (Not exactly implemented as dictacted above because of my limited understanding of Regex) if (strPassword.match(/[a-z]/)) // [verified] at least one lower case letter { intScore = (intScore+1) strLog = strLog + "1 point for at least one lower case char\n" } if (strPassword.match(/[A-Z]/)) // [verified] at least one upper case letter { intScore = (intScore+5) strLog = strLog + "5 points for at least one upper case char\n" } // NUMBERS if (strPassword.match(/\d+/)) // [verified] at least one number { intScore = (intScore+5) strLog = strLog + "5 points for at least one number\n" } if (strPassword.match(/(.*[0-9].*[0-9].*[0-9])/)) // [verified] at least three numbers { intScore = (intScore+5) strLog = strLog + "5 points for at least three numbers\n" } // SPECIAL CHAR if (strPassword.match(/.[!,@,#,$,%,^,&,*,?,_,~]/)) // [verified] at least one special character { intScore = (intScore+5) strLog = strLog + "5 points for at least one special char\n" } // [verified] at least two special characters if (strPassword.match(/(.*[!,@,#,$,%,^,&,*,?,_,~].*[!,@,#,$,%,^,&,*,?,_,~])/)) { intScore = (intScore+5) strLog = strLog + "5 points for at least two special chars\n" } // COMBOS if (strPassword.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/)) // [verified] both upper and lower case { intScore = (intScore+2) strLog = strLog + "2 combo points for upper and lower letters\n" } if (strPassword.match(/(\d.*\D)|(\D.*\d)/)) // [FAILED] both letters and numbers, almost works because an additional character is required { intScore = (intScore+2) strLog = strLog + "2 combo points for letters and numbers\n" } // [verified] letters, numbers, and special characters if (strPassword.match(/([a-zA-Z0-9].*[!,@,#,$,%,^,&,*,?,_,~])|([!,@,#,$,%,^,&,*,?,_,~].*[a-zA-Z0-9])/)) { intScore = (intScore+2) strLog = strLog + "2 combo points for letters, numbers and special chars\n" } if(intScore < 16) { strVerdict = "very weak" } else if (intScore > 15 && intScore < 25) { strVerdict = "weak" } else if (intScore > 24 && intScore < 35) { strVerdict = "mediocre" } else if (intScore > 34 && intScore < 45) { strVerdict = "strong" } else { strVerdict = "stronger" } //document.forms.passwordForm.score.value = (intScore) //document.forms.passwordForm.verdict.value = (strVerdict) //document.forms.passwordForm.matchlog.value = (strLog) intPercent = intScore * 3; //intScore = intScore * 2 objBar = document.getElementById("passBar"); if (intPercent > 0) { if (intPercent>100) { intPercent=100; // just to check if it goes over 100 } objBar.style.width = intPercent + "%"; if (intPercent < 50) { objBar.style.background = "#cc0000"; } else if(intPercent < 84) { objBar.style.background = "#FFD700"; } else { objBar.style.background = "#00A601"; } } else { objBar.style.width = 0; } } function comparePassword () { var password = document.getElementById('password').value; var password_confirm = document.getElementById('password_confirm').value; if (password == password_confirm) { document.getElementById('password_confirmation_text').style.display="none"; } else { document.getElementById('password_confirmation_text').style.display=""; } } function validate_register_form() { var valid=true; if (document.register_form.first_name.value == "") { document.getElementById('register_error').style.display=""; document.register_form.man_first_name.focus(); valid=false; } if (valid && document.register_form.surname.value == "") { document.getElementById('register_error').style.display=""; document.register_form.man_surname.focus(); valid=false; } if (valid && document.register_form.m.value == "") { document.getElementById('register_error').style.display=""; document.register_form.man_date.focus(); valid=false; } if (valid && document.register_form.email_address.value == "") { document.getElementById('register_error').style.display=""; document.register_form.man_email_address.focus(); valid=false; } } function confirmAction(strMsg) { var bAnswer = confirm (strMsg); if (bAnswer) { return true; } else { return false; } } /* Generic Form Validation */ window.onload = attachFormHandlers; function attachFormHandlers() { if (document.getElementsByTagName) { var objForm = document.getElementsByTagName('form'); for (var iCounter=0; iCounter= 4) { win.window.focus(); } } function changeMeasurement(value1) { if (value1 == 'metres') { document.getElementById('room_ft').style.display = 'none'; document.getElementById('room_m').style.display = ''; } else if (value1 == 'feet') { document.getElementById('room_m').style.display = 'none'; document.getElementById('room_ft').style.display = ''; } } function calculatePacks() { var units = document.getElementById('units'); var packsize_m = document.getElementById('packSize').value; if (units.options[units.selectedIndex].value == 'metres') { var width_m = parseFloat(document.getElementById('rm_width_m').value); var length_m = parseFloat(document.getElementById('rm_length_m').value); var width_in = Math.round(((width_m * 100) / 2.54),2); var width_ft = (width_in - (width_in % 12)) / 12; var width_in = width_in % 12; var length_in = Math.round(((length_m * 100) / 2.54),2); var length_ft = (length_in - (length_in % 12)) / 12; var length_in = length_in % 12; document.getElementById('rm_width_ft').value = Math.round(width_ft,2); document.getElementById('rm_width_in').value = Math.round(width_in,2); document.getElementById('rm_length_ft').value = Math.round(length_ft,2); document.getElementById('rm_length_in').value = Math.round(length_in,2); } else if (units.options[units.selectedIndex].value == 'feet') { var width_ft = parseFloat(document.getElementById('rm_width_ft').value); var length_ft = parseFloat(document.getElementById('rm_length_ft').value); var width_in = parseFloat(document.getElementById('rm_width_in').value); var length_in = parseFloat(document.getElementById('rm_length_in').value); var width_m = (((width_ft*12) + width_in) * 2.54) / 100; var length_m = (((length_ft*12) + length_in) * 2.54) / 100; document.getElementById('rm_width_m').value = Math.round(width_m,2); document.getElementById('rm_length_m').value = Math.round(length_m,2); } var area_m = width_m*length_m; var packs = Math.ceil(area_m / packsize_m); var area_in = ((width_ft*12) + width_in) * ((length_ft*12) + length_in); var area_ft = area_in/144; var area_in = area_in % 144; if ((document.getElementById('rm_width_m').value != "") && (document.getElementById('rm_length_m').value != "")){ if (packs == 1) { document.getElementById('packNumber').innerHTML = packs + ' pack'; } else { document.getElementById('packNumber').innerHTML = packs + ' packs '; } document.getElementById('quantity_price').value = packs; if (units.options[units.selectedIndex].value == 'metres') { var room_area = Math.round(area_m,2) + ' sq. metres '; } else if (units.options[units.selectedIndex].value == 'feet') { var room_area = Math.round(area_ft,2) + ' sq. feet '; if (Math.round(area_in,2) > 0) { room_area = room_area + Math.round(area_in,2) + ' sq. inches '; } } document.getElementById('rmDimensions').innerHTML = room_area; } }