Warum solltest du dich unbeliebt machen ?
(nur wegen kleiner Meinungsverschiedenheiten im anderen Thread ?)
Wer möchte was du sagst behält im Template einfach {$INPUT_GENDER} anstatt es durch {$INPUT_CUSTOM_GENDER} zu ersetzen, bzw. baut die Erweiterung erst gar nicht ein.
Einen Schalter dafür finde ich jetzt zu aufwändig (configuration-SQL, Sprachkonstanten).
Oder fehlt mir ein Argument ?, lasse mich gerne belehren.
Das Backend wurde bei der Erweiterung außerdem nicht beachtet weil das nicht ohne Core-File-Änderungen gehen würde.
Was man noch machen könnte/sollte, wenn man die Erweiterung benutzen möchte, ist auch bei Adress-Änderungen durch den Kunden das Custom-Dropdown anzeigen zu lassen, nämlich in der
/module/account_edit.html und der
/module/address_book_process.html des Templates.
Dabei stösst man auf das Problem, daß das für
/module/address_book_process.html nicht so ohne weiteres ohne Core-File-Änderung möglich ist, da dort ein weiteres File includet wird (*EDIT* als Smarty-MODULE, sonst wär's kein Problem *END_EDIT*), nämlich
~address_book_details.html dessen zugehörige PHP-Datei (
address_book_details.php) als File in
address_book_process.php includiert wird.
Vielleicht hat einer eine Idee dazu ?
Für das Einbeziehen der genannten Files den Code in der Datei in
/includes/extra/header/header_begin/ entweder in der if-Clause erweitern oder das Ganze so aufbauen:
<?php/*******************************************************************************
* file: new_gender_dropdown.php
* use: define a custom gender dropdown in create_account, create_guest_account, account_edit
*
* (c) noRiddle 10-2018
*******************************************************************************/$custom_gender_page_array = array('create_account.php', 'create_guest_account.php', 'account_edit.php', 'address_book_process.php');if(in_array(basename($PHP_SELF), $custom_gender_page_array)) { function custom_get_customers_gender
() { $gender_array = array(array('id' => '', 'text' => PULL_DOWN_DEFAULT
), array('id' => 'm', 'text' => MALE
), array('id' => 'f', 'text' => FEMALE
), array('id' => 'i', 'text' => NONE
) ); return $gender_array; } if (ACCOUNT_GENDER
== 'true') { if(basename($PHP_SELF) == 'address_book_process.php') { //hier fehlt noch die Idee } else { $smarty->assign('gender', '1'); $smarty->assign('INPUT_CUSTOM_GENDER', xtc_draw_pull_down_menuNote
(array ('name' => 'gender', 'text' => ' '. (xtc_not_null
(ENTRY_GENDER_TEXT
) ?
'<span class="inputRequirement">'.ENTRY_GENDER_TEXT
.'</span>' : '')), custom_get_customers_gender
(), $gender)); } } else { $smarty->assign('gender', '0'); }}?> Damit kann man in
/module/account_edit.html schonmal {$INPUT_CUSTOM_GENDER} benutzen.
Für
/module/address_book_process.html bzw. das dort includierte File
~address_book_details.html muß uns noch etwas einfallen...
Gruß,
noRiddle