So habe es jetzt mal selbst getestet.
Mein erster Ansatz aus dem Stegreif war verkehrt und es fehlte auch, wie schon geahnt
, eine Klammer.
Der Javascript-Check in der
/includes/form_check.js.php muß so aussehen (alter Code nur auskommentiert):
//BOC add new parameter to be able to check house number, noRiddle
//function check_input(field_name, field_size, message) {
function check_input(field_name, field_size, message, no=false) {
if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
//var field_value = form.elements[field_name].value;
var field_value = form.elements[field_name].value,
countall = (field_value.match(/[0-9]/g) || []).length;
//if (field_value == '' || field_value.length < field_size) {
if (field_value == '' || field_value.length < field_size || (no===true && countall < 1)) {
error_message = error_message + "* " + message + "\n";
error = true;
}
}
}
//EOC add new parameter to be able to check house number, noRiddle
und weiter unten so wie bereits vorher gesagt:
//BOC use new parameter to check for house number, noRiddle
//check_input("street_address", <?php echo ENTRY_STREET_ADDRESS_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_STREET_ADDRESS_ERROR); ?>");
check_input("street_address", <?php echo ENTRY_STREET_ADDRESS_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_STREET_ADDRESS_ERROR); ?>", true);
//EOC use new parameter to check for house number, noRiddle
Was die PHP-Dateien anbelangt müssen folgende Dateien geändert werden (Code dazu in einem
früheren Post von mir):
- /create_account.php
- /create_guest_account.php
- /address_book_process.php
- /includes/modules/checkout_address_store.php
Empfohlener Text für
ENTRY_STREET_ADDRESS_ERROR in
/lang/SPRACHE.php:
define('ENTRY_STREET_ADDRESS_ERROR', 'Strasse/Nr. muss aus mindestens ' . ENTRY_STREET_ADDRESS_MIN_LENGTH
. ' Zeichen bestehen und eine Hausnummer haben. Wenn Sie keine Hausnummer haben geben Sie bitte eine 0 ein.'); define('ENTRY_STREET_ADDRESS_ERROR', 'Street/No. must consist of at least ' . ENTRY_STREET_ADDRESS_MIN_LENGTH
. ' characters and must have a house number. If you don\'t have a house number please enter a 0.'); Achtung ! Kein HTML (z.B. <br />) im Text verwenden da die Ausgabe auch in einem Javascript-Alert erscheint und dort HTML nicht verstanden bzw. explizit mit ausgegeben wird.
Gruß,
noRiddle