Jump to content
xt:Commerce Community Forum

Pflichtfelder die 99ste


Sidi61

Recommended Posts

Hallo zusammen,

in meinem Shop habe ich die Bestellung als Gast aktiviert, ich möchte nun dass bei einer Gastbestellung keine Telefonnummer und kein Geburtsdatum zwingend eingegeben werden muß.

Im Forum bin ich auf verschiedene Lösungsansätze gestoßen welche allerdings nicht den gewünschten Erfolg brachten.

Ich habe in der create_guest_account.php folgende Änderungen durchgeführt:

In Zeile 102 die Prüfung des Geburtesdatums ausgeblendet:


/* if (ACCOUNT_DOB == 'true') {
if (checkdate(substr(xtc_date_raw($dob), 4, 2), substr(xtc_date_raw($dob), 6, 2), substr(xtc_date_raw($dob), 0, 4)) == false) {
$error = true;
$messageStack->add('create_account', ENTRY_DATE_OF_BIRTH_ERROR);
}
}
*/
[/php]

in Zeile 176 die Prüfung der Telefonnummer ausgeblendet:

[php]
/* if (strlen($telephone) < ENTRY_TELEPHONE_MIN_LENGTH) {
$error = true;
$messageStack->add('create_account', ENTRY_TELEPHONE_NUMBER_ERROR);
}
*/

Damit das Sternchen nur im Gast-account verschwindet die Smarty Zuweisung


$smarty->assign('INPUT_DOB', xtc_draw_input_fieldNote(array ('name' => 'dob', 'text' => ' '. (xtc_not_null(ENTRY_DATE_OF_BIRTH_TEXT) ? '<span class="inputRequirement">'.ENTRY_DATE_OF_BIRTH_TEXT.'</span>' : ''))));
[/php]

geändert in :

[php]
$smarty->assign('INPUT_DOB', xtc_draw_input_fieldNote(array ('name' => 'dob', 'text' => ' ')));

ebenfalls


$smarty->assign('INPUT_TEL', xtc_draw_input_fieldNote(array ('name' => 'telephone', 'text' => ' '. (xtc_not_null(ENTRY_TELEPHONE_NUMBER_TEXT) ? '<span class="inputRequirement">'.ENTRY_TELEPHONE_NUMBER_TEXT.'</span>' : ''))));
[/php]

geändert in:

[php]
$smarty->assign('INPUT_TEL', xtc_draw_input_fieldNote(array ('name' => 'telephone', 'text' => ' ')));

Die Sternchen sind weg, die Prüfung findet jedoch trotzdem statt so als ob ich garnichts geändert hätte :confused:

Ich bräuchte da mal dringend den richtigen Anschub:D

Gruß

Link to comment
Share on other sites

Hallo zusammen,

hab`s jetzt hinbekommen ;)

weitere notwendige Änderungen:

in der includes/form_check.js.php die komplette Funktion check_form kopieren und umbenennen (z.B. check_form_guest), dann die Prüfungen für Geburtsdatum und Telefonnummer rausnehmen. Sieht dann so aus:


function check_form_guest(form_name) {
if (submitted == true) {
alert(unescape("<?php echo xtc_js_lang(JS_ERROR_SUBMITTED); ?>"));
return false;
}

error = false;
form = form_name;
error_message = unescape("<?php echo xtc_js_lang(JS_ERROR); ?>");
<?php if (ACCOUNT_GENDER == 'true') echo ' check_radio("gender", "' . ENTRY_GENDER_ERROR . '");' . "\n"; ?>
check_input("firstname", <?php echo ENTRY_FIRST_NAME_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_FIRST_NAME_ERROR); ?>");
check_input("lastname", <?php echo ENTRY_LAST_NAME_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_LAST_NAME_ERROR); ?>");
check_input("email_address", <?php echo ENTRY_EMAIL_ADDRESS_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_EMAIL_ADDRESS_ERROR); ?>");
check_input("street_address", <?php echo ENTRY_STREET_ADDRESS_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_STREET_ADDRESS_ERROR); ?>");
check_input("postcode", <?php echo ENTRY_POSTCODE_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_POST_CODE_ERROR); ?>");
check_input("city", <?php echo ENTRY_CITY_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_CITY_ERROR); ?>");
<?php if (ACCOUNT_STATE == 'true') echo ' check_input("state", ' . ENTRY_STATE_MIN_LENGTH . ', "' . xtc_js_lang(ENTRY_STATE_ERROR) . '");' . "\n"; ?>
check_select("country", "", "<?php echo xtc_js_lang(ENTRY_COUNTRY_ERROR); ?>");
check_password("password", "confirmation", <?php echo ENTRY_PASSWORD_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_PASSWORD_ERROR); ?>", "<?php echo xtc_js_lang(ENTRY_PASSWORD_ERROR_NOT_MATCHING); ?>");
check_password_new("password_current", "password_new", "password_confirmation", <?php echo xtc_js_lang(ENTRY_PASSWORD_MIN_LENGTH); ?>, "<?php echo xtc_js_lang(ENTRY_PASSWORD_ERROR); ?>", "<?php echo xtc_js_lang(ENTRY_PASSWORD_NEW_ERROR); ?>", "<?php echo xtc_js_lang(ENTRY_PASSWORD_NEW_ERROR_NOT_MATCHING); ?>");
if (error == true) {
alert(unescape(error_message));
return false;
} else {
submitted = true;
return true;
}
}

[/php]

dann in der create_guest_account.php so ca. in Zeile 275

[php]
$smarty->assign('FORM_ACTION', xtc_draw_form('create_account', xtc_href_link(FILENAME_CREATE_GUEST_ACCOUNT, '', 'SSL'), 'post', 'onsubmit="return check_form(create_account);"').xtc_draw_hidden_field('action', 'process'));

ändern in :


$smarty->assign('FORM_ACTION', xtc_draw_form('create_account', xtc_href_link(FILENAME_CREATE_GUEST_ACCOUNT, '', 'SSL'), 'post', 'onsubmit="return check_form_guest(create_account);"').xtc_draw_hidden_field('action', 'process'));
[/php]

das war`s

Gruß

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...