Moin zusammen.
Im Frontend habe ich es ja schon so eingerichtet, dass die Angabe des Geburtsdatums freiwillig ist. Nun habe ich aber im Backend noch das Problem, wenn ich einen Kunden bearbeiten möchte, der kein Geburtsdatum angegeben hat, ich mangels dessen nicht speichern kann.
Ich habe daher in der /admin/customers.php za. bei Zeile 299 diesen Block auskommentiert
//if (ACCOUNT_DOB == 'true') {
// if (checkdate(substr(xtc_date_raw($customers_dob), 4, 2), substr(xtc_date_raw($customers_dob), 6, 2), substr(xtc_date_raw($customers_dob), 0, 4))) {
// $entry_date_of_birth_error = false;
// } else {
// $error = true;
// $entry_date_of_birth_error = true;
// }
//}
und erstmal angenommen, dass dies genügt. Fehlanzeige. Die Meldung dass ein Geburtsdatum eingegeben werden muß erscheint weiterhin. Die Ausgabe der Meldung geschieht wohl direkt im Form ab Zeile 898
if (ACCOUNT_DOB == 'true') {
echo ($cInfo->customers_default_address_id != $cInfo->address_book_id) ? '<tr style="display:none;">' : '<tr>';
?>
<td class="main"><?php echo ENTRY_DATE_OF_BIRTH; ?></td>
<td class="main">
<?php
if ($error == true) {
if ($entry_date_of_birth_error == true) {
echo xtc_draw_input_field('customers_dob', xtc_date_short($cInfo->customers_dob), 'maxlength="10"').' '.ENTRY_DATE_OF_BIRTH_ERROR;
} else {
echo $cInfo->customers_dob.xtc_draw_hidden_field('customers_dob');
}
} else {
echo xtc_draw_input_field('customers_dob', xtc_date_short($cInfo->customers_dob), 'maxlength="10"', true);
}
?>
nur ist mir nicht klar warum $error und insbesondere $entry_date_of_birth_error hier weiterhin .true. sein können? Gerade letztere wird doch nur in dem auskommentierten Block ab Zeile 299 gesetzt.
Weiß da jemand weiter?
Gruß
Zaldo
Linkback: https://www.modified-shop.org/forum/index.php?topic=25127.0