CCK Formulare anpassen
Eingetragen von jahwe2000@drupal.org (12)
am 23.04.2008 - 18:19 Uhr in
am 23.04.2008 - 18:19 Uhr in
Hallo,
es gibt so ein paar "Anleitungen", wie man die CCK Felder anpassen können soll. z.B. http://drupal.org/node/101092
Allerdings ist es mir bei Drupal 6.x nicht gelungen, diese in die Realität umzusetzen. Hat da jemanden Erfahrungen mit und kann mir einen Trick verraten?
Was ich tun möchte: Ich möchte vor allem eine AJAX-Autovervollständigung zu einem der Felder hinzufügen. Weiterhin wäre es nett, wenn ich bei der Eingabe des Titels ein Abfrage machen kann, die prüft, ob es den Titel schonmal gibt, da bei meinem Projekt hier eine Duplikatgefahr besteht.
Ich bin über alle Hinweise froh :)
vielen dank im voraus.
viele Grüße,
Philip
- Anmelden oder Registrieren um Kommentare zu schreiben
<?phpfunction
am 23.04.2008 - 18:59 Uhr
<?php
function hook_form_alter(&$form, $form_state, $form_id) {
if ($form_id == 'node_form') {
$form['title']['#autocomplete_path'] = 'title_double/js'
}
}
// dann brauchste ein Menu-Element das title_double/js als pfad hast
// dann brauchste eine funktion die auf title_double/js zeigt
function hook_menu() {
$items['title_double/js'] = array(
'page callback' => 'title_double_js',
'access callback' => 'user_access',
'access arguments' => array('access content'),
'type' => MENU_CALLBACK,
);
return $items;
}
function title_double_js($string) {
result = db_query("select title from {node} where status = 1 and LOWER(title) LIKE LOWER('%%%s%%')", $string);
$matches = array();
$matches = array();
while ($item = db_fetch_object($result)) {
dsm($item);
$matches[$item->title] = check_plain($item->title);
}
drupal_json($matches);
}?>
Könnte so funktionieren
--------------
Mein Blog: www.freeblogger.org: May the source be with you
Deutscher IRC-Channel: irc.freenode.net #drupal.de je mehr desto besser
... Jabber-me: dwehner@im.calug.de Warum Jabb
klappt
am 23.04.2008 - 22:01 Uhr
super, vielen Dank :)
ich hatte ein bisschen Spaß beim herausfinden, wie die form-ids so lauten, aber der titel klappt jetzt :)
Jetzt muss ich noch zwei CCK-Textfelder automatisch vervollständigen. Kann man das da auch auf gleiche Weise einbauen? (klappen tuts nicht)
viele Grüße,
Philip
ich glaube das ganze ist
am 23.04.2008 - 23:10 Uhr
ich glaube das ganze ist definitiv die selbe Form, vlt. musste nach nodetype schauen oder so
und dann die cck felder verändern // aber irgendwann sollte man definitiv die Inputform normal themen
--------------
Mein Blog: www.freeblogger.org: May the source be with you
Deutscher IRC-Channel: irc.freenode.net #drupal.de je mehr desto besser
... Jabber-me: dwehner@im.calug.de Warum Jabb
das selbe formular ist es,
am 23.04.2008 - 23:28 Uhr
das selbe formular ist es, aber die struktur der cck teile ist so ganz anders. Ich weiß nicht, wo da das #autocomplete eingefügt werden soll
ich bin in der Sache bisher
am 04.05.2008 - 15:43 Uhr
ich bin in der Sache bisher leider nicht weiter gekommen. Irgendwie scheinen das ganz andere Formularelemente zu sein, als die Standard-forms. Kann sowas sein?
Ich poste gerne mal ein print_r snippet des formulars, wenn ihr wollt.
viele grüße,
Philip
autocomplete funktioniert
am 04.05.2008 - 17:45 Uhr
autocomplete funktioniert eigentlich nur bei Textfeldern, aber dort auch bei CCK gut
Kommt denn kein Autocomplete zeichen?
ein print_r wäre auf jeden Fall sehr hilfreich
--------------
Blog www.freeblogger.org: Deutscher IRC-Channel: irc.freenode.net #drupal.de ... Jabber-me: dwehner@im.calug.deXING
print_r
am 06.05.2008 - 21:20 Uhr
ah, nach nochmaligem draufschauen (1001. mal) hab ichs gefunden.
ich habe jetzt statt
$form['field_autor']['#autocomplete_path']
das hier eingegeben
$form['field_autor'][0]['#autocomplete_path']
Aus irgendeinem Grund wird das so angelegt...
Vielen Dank auf jeden Fall an alle, die geholfen haben :)