Hallo,
ein Kunde konnte heute seine Bestellung nicht abschließen weil er keine Zahlung gewählt oder den Haken bei den AGB vergessen hatte und ein Pop-up-Blocker den Java-Hinweis blockierte.
Da Browser mit integriertem Pop-up-Blocker immer mehr Verbreitung finden, wollte ich nur den noscript fallback für die checkout_payment.php nutzen.
Habe mal testweise \includes\classes\payment.php:
if (DISPLAY_CONDITIONS_ON_CHECKOUT == 'true') {
$js .= "\n" . ' if (!document.getElementById("checkout_payment").conditions.checked) {' . "\n" .
' error_message = error_message + unescape("' . xtc_js_lang(ERROR_CONDITIONS_NOT_ACCEPTED) . '");' . "\n" .
' error = 1;' . "\n" .
' }' . "\n\n";
}
$js .= "\n" . ' if (payment_value == null) {' . "\n" .
' error_message = error_message + unescape("' . xtc_js_lang(JS_ERROR_NO_PAYMENT_MODULE_SELECTED) . '");' . "\n" .
' error = 1;' . "\n" .
' }' . "\n\n" .
' if (error == 1 && submitter != 1) {' . "\n" . // GV Code Start/End
' alert(error_message);' . "\n" .
' return false;' . "\n" .
' } else {' . "\n" .
' return true;' . "\n" .
' }' . "\n" .
'}' . "\n" .
'//--></script>' . "\n";
}
gändert:
if (DISPLAY_CONDITIONS_ON_CHECKOUT == 'true') {
$js .= "\n" . ' if (!document.getElementById("checkout_payment").conditions.checked) {' . "\n" .
' error_message = error_message + unescape("' . xtc_js_lang(ERROR_CONDITIONS_NOT_ACCEPTED) . '");' . "\n" .
' error = 0;' . "\n" .
' }' . "\n\n";
}
$js .= "\n" . ' if (payment_value == null) {' . "\n" .
' error_message = error_message + unescape("' . xtc_js_lang(JS_ERROR_NO_PAYMENT_MODULE_SELECTED) . '");' . "\n" .
' error = 0;' . "\n" .
' }' . "\n\n" .
' if (error == 1 && submitter != 1) {' . "\n" . // GV Code Start/End
' alert(error_message);' . "\n" .
' return false;' . "\n" .
' } else {' . "\n" .
' return true;' . "\n" .
' }' . "\n" .
'}' . "\n" .
'//--></script>' . "\n";
}
Aber das geht sicher eleganter.
Wie würdet Ihr das am besten machen?
Gruß
neroBRN
Linkback: https://www.modified-shop.org/forum/index.php?topic=34575.0