Sziasztok!
Itt már felvetettem a kérdést, de csak picit taglalva.
Szóval a probléma kicsit összetetteb, ezért inkább nyitok neki egy külön szálat.
A lényeg a címből kiderül: egy webform modul által összeállított form bizonyos mezőit (textfield) akarom rávenni arra, hogy jstools/jscalendar által működjön a dolog.
Azt sikerült kiderítenem eddig, hogy tervezik, hogy majd cck fieldek segítségével lehet majd webform -ot építeni és mivel cck -ban már van implementált jscalendar támogatás ezért nem lesz gond.
De nekem most kell és webform modullal.
Szóval nekiláttam és ahol most tartok:
Az adott theme template.php filejába bekerült:
<?php function phptemplate_webform_form_NODENUM ($form) { return _phptemplate_callback('webform_form_NODENUM', array('form' => $form)); } ?>
Aztán létrehoztam a webform_form_NODENUM.tpl.php filet.
Kidebuggoltam, hogy mik vannak a $form -ban és hogy hova kell nekem turkálni...
Ahhoz, hogy a jscalendar működjön, elvileg elég volna a text input class -nek megadni, hogy jscalendar (?), szóval csináltam egy ilyet:
<?php $form['submitted']['1176207856']['#attributes'] = array('class' => 'jscalendar'); echo drupal_render($form); ?>
A generált form kódja már jó, de ahogy korábban se volt semmi html head -os include a szükséges css és js fileokra a jstools és js calendár engedélyezése után, kénytelen voltam kézzel beleheggeszteni ezt az előbb említett file elejére:
<?php drupal_set_html_head("<script type=\"text/javascript\" src=\"/sites/all/modules/jstools/jscalendar/jscalendar.js\"></script>"); drupal_set_html_head("<script type=\"text/javascript\" src=\"/sites/all/modules/jstools/jstools.js\"></script>"); drupal_set_html_head("<style type=\"text/css\" media=\"all\">@import \"/sites/all/modules/jstools/jscalendar/jscalendar.css\";</style>"); drupal_set_html_head("<style type=\"text/css\" media=\"all\">@import \"/sites/all/modules/jstools/jstools.css\";</style>"); ?>
Na félkész a dolog :)
Látszik, hogy alakulóban van, de ahogy jobban megnézem van itt még jscalendar-icon meg hasonlók amiket ki kellene tenni, gondolom arra kattintva lenne jönne fel a cucc stb. Így most még semmi lehetőség nincs arra, hogy felbukkanjon a jscalendar :(
Kérdésem, hogy miként tovább?
Ezt találtam
Ezt találtam kiindulásnak.
A webform themezésével nincs is baj, de jstools/jscalendar páros abszolult ismeretlen számomra... :(
Itt a megoldas
http://atlantis.ki.iif.hu/drupal/webform+jscalendar.drupal5.1.tgz
A webform components könyvtárában lévő két fájl a megoldás! A calendar.inc olyan elem, ami dátum és idő páros egyben. A calendar_date.inc pedig csak dátum. A fájlok végén vannak a calendar finom konfigok! Módositsd kedved szerint! :-)
Nagyon fontos! Az elemek nevében nem lehet ékezetes karakter, ebben az esetben nem működik a finom konfig. Valamiért a javascript nem szereti az ékezetes karaktert. Ezt a hibát ki kellene javítani, amint rá jövök szólok. Amúgy ebben a fájlban van a megoldás kulcsa:
jstools/jscalendar/jscalendar.js 18-21. sor. Szerintem ezt kellene átirni. Majd gondolkozz rajta!
Gábor