Sziasztok...!
Egy tesztmodul készítek éppen, hogy megismerkedjek a Drupal lehetőségeivel. A modulban szerepel egy tesztmodul_admin_settings() függvény, ez hívódik meg, ha az adminisztrációs oldalon rákattintanak a modul által létrehozott menűpontra.
A kód egyelőre elég egyszerű, csak az admin oldal formját készíti el:
function tesztmodul_admin_settings() { $form = array (); $form['oldal_cim'] = array ( '#type' => 'textfield', '#title' => t('a letoltendo oldal cime'), '#default_value' => 'localhost', '#description' => t('A letoltendo es feldolgozando oldal cime') ); $form['minden_cron'] = array ( '#type' => 'checkbox', '#title' => t('minden cron futaskor'), '#default_value' => FALSE, '#description' => t('Az idozitett feladatok minden futasakor toltse le az oldalt') ); $form['idopontok'] = array ( '#type' => 'textfield', '#title' => t('hany orakor toltse le az oldalt (0-23)'), '#default_value' => '0', '#description' => t('hany orakor toltse le az oldalt, szokozzel elvalasztva tobb ertek is megadhato') ); return system_settings_form ($form); }
A problémám az, hogy szeretném a formon megadott értékeket elmenteni (itt talán a variable_set függvénnyel kellene ügyeskedni), illetve szeretném, hogy a "minden_cron" jelölőnényzet bekapcsolásakor az "idopontok" szövegbeviteli mező inaktívvá válna (a benne található adatokat nem elfelejtve), a jelölőnégyzetet kikapcsolva pedig újra lehetne módosítani a szövegbeviteli mezőben található értékeket. Próbálkoztam egy feltétellel figyelni a "minden_cron" mező #disabled tulajdonságának értékét, és azerint állítani ugyanezt a tulajdonságot az "idopontok" -nál, de nem volt semmi hatása.
Milyen módon lehetne ezt megoldani?
(A modul adott időpontok eltelte után, vagy a cron minden futásakor letölt egy szöveges tartalmat egy távoli szerverről, majd megfelelően formázva egy blokkban megjeleníti azt.)
Köszönöm a segítséget. :)
Nem találkozott más
Nem találkozott más hasonló problémával?
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
Javascript
Hogyan figyelted a #disabled tulajdonság értékét? Mivel próbáltad állítani az időpontoknál? Nyilvánvaló, hogy csak kliens oldalon, azaz a böngészőben tudsz figyelni Javascripttel, és csak ott tudod átállítani az időpontok szövegmezőt disabled-re.
Nem vagyunk parafenomének, másold ide a kódot (bár ez egy egyszerű Javascript kérdés, talán inkább a Weblaborra való).
hoppá!
Elnézést, abba bele sem gondoltam, hogy mindezt kliens-oldalon kellene, pedig annyira adja magát! Nos javascript, az nem volt, fáradt fejjel egy egyszerű szerveroldali, php -ben megadott feltétellel figyeltem (volna), de most már nyilvánvaló, hogy az semmiképpen sem lehet jó. :(
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
A Drupal dolgozik helyetted
Ebben az esetben nem kell neked elmenteni az adatokat, mert azt megteszi helyetted a Drupal.
A beállított értékeket lekérdezheted.
variable_get('oldal_cim', 'default oldalcim');
köszönöm
Köszönöm szépen a segítséget!
Igazából már csak a másik probléma maradt meg (a szövegbeviteli mező inaktívvá tétele), de érdemben még nem foglalkoztam a Javascript -tel, szóval ha valaki abban is tudna segíteni, jó lenne. :)
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés