Sziasztok!
A felhasználók profil oldalán szeretném a rendszer és a modulok által generált mezőcsoportok alapértelmezett állapotát megváltoztatni.
A 'user_profile_form'-nak estem neki hook_form_alter-el. Két mezőcsoportot viszont nem tudok zárt állapotra állítani és nem találom a pontos megnevezésüket sem:
- időzóna
- adminisztrációs átfedés
A többit (nyelv, kapcsolat beállítások, e-mail beállítások) az alábbi kóddal állítottam zárt állapotra:
if($form_id == 'user_profile_form'){ $form['locale']['#collapsible'] = TRUE; $form['locale']['#collapsed'] = TRUE; $form['contact']['#collapsible'] = TRUE; $form['contact']['#collapsed'] = TRUE; $form['mimemail']['#collapsible'] = TRUE; $form['mimemail']['#collapsed'] = TRUE; }
... a fenti kettő kivételével. Apróság, de ha a többit is sikerült, szeretném ezeket is megoldani, ha lehet.
Ha valaki tudja a megoldást kérem írja meg.
Köszönettel:
OSImester
Drupal verzió:
1, http://drupal
1, http://drupal.stackexchange.com/questions/9861/disable-timezones-in-user...
2, nem tudom mi az az "adminisztrációs átfedés", esetleg valami modul teszi bele?
Drupal full-stack developer at Wunderman Thompson Budapest
ez a tippem
adminisztrációs átfedés = "overlay" (mint a "drush dis overlay -y" -ban) :D
hint: core modul.
Debuggolásra használj Xdebug+NetBeans (/Eclipse, stb.) kombót
Debuggolásra használj Xdebug+NetBeans kombót (vagy Eclipse, vagy ami jobban tetszik, mindenesetre valami tisztességes IDE-t, amivel lehet debuggolni rendesen), elsőre lehet, hogy nem könnyű átlátnod, de bőven megéri, kedvcsináló:
Itt a
$form
változó értékét láthatod, úgy, hogy beraktam egy breakpointot a megfelelő helyre, lejjebb görgetve:Tehát mint látható, a
$form['timezone']
-nal érhetők el az időzónára vonatkozó dolgok.Itt a
$form
változó értékével játszogathattam volna még úgy, hogy a Devel modul által kínáltdpm()
függvényével kiíratom, meg egyéb módon is lehet vele szenvedni, de localhoston debuggolni egy tisztességes IDE és Xdebug segítségével jóval könnyebb. Érdemes kipróbálni, aztán használni, sok időt megspórolhat (miután az ember beállította).Hogy melyik Xdebugot kell felraknod, ahhoz itt tudsz segítséget kérni, a
phpinfo()
vagyphp -i
kimenetének bemásolásával:http://xdebug.org/wizard.php
Hasznos böngészőbővítmény is van hozzá:
http://xdebug.org/docs/remote
Chrome:
Xdebug helper
https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc
Firefox:
The easiest Xdebug
https://addons.mozilla.org/en-US/firefox/addon/the-easiest-xdebug/
Köszönöm
Sikerült ez alapján megcsinálnom.
Itt a végleges kód, hátha valakinek jól jön:
Köszönöm a segítségeteket.