Webform Theme überschreiben
am 25.05.2009 - 14:28 Uhr in
Anfängerfrage:
Im Modul webform gibt es eine Funktion aus der die Anzeige eines Formulars generiert wird.
snippet:
function webform_client_form($form_state, &$node, $submission, $enabled = FALSE, $preview = FALSE) {
module_load_include('inc', 'webform', 'webform_components');
webform_load_components();
if (isset($submission->sid)) {
drupal_set_title(t('Wahlcheck 2009'));
}
// Set a header for navigating results.
if ($submission && user_access('access webform results')) {
// Add CSS to display submission info. Don't preprocess because this CSS file is used rarely.
drupal_add_css(drupal_get_path('module', 'webform') .'/webform.css', 'module', 'all', FALSE);
$previous = db_result(db_query('SELECT MAX(sid) FROM {webform_submissions} WHERE nid = %d AND sid < %d', array($node->nid, $submission->sid)));
$next = db_result(db_query('SELECT MIN(sid) FROM {webform_submissions} WHERE nid = %d AND sid > %d', array($node->nid, $submission->sid)));
$form['submission'] = array(
'#type' => 'value',
'#value' => $submission,
);
$form['navigation'] = array(
'#prefix' => '<div class="webform-submission-navigation">',
'#suffix' => '</div>',
);
$form['navigation']['previous'] = array(
'#value' => $previous ? l(t('Previous submission'), 'node/'. $node->nid .'/submission/'. $previous . ($enabled ? '/edit' : '') , array('attributes' => array('class' => 'webform-submission-previous'), 'query' => ($enabled ? 'destination=node/'. $node->nid .'/submission/'. $previous .'/edit' : NULL))) : '<span class="webform-submission-previous">'. t('Previous submission') .'</span>',an dem Original-Code werde ich einige Änderungen machen.
Wie kann ich die Funktion überschreiben, ohne den Originalcode zu "zerstören". An welcher Stelle muss ich da ansetzen. Geht das Überhaupt?
Ware nett wenn jemand einen Tipp hätte, wo ich denn jetzt "lang" muss.
Gruss
Katasun
- Anmelden oder Registrieren um Kommentare zu schreiben

Webform template
am 04.06.2009 - 07:38 Uhr
Moin.
Was genau möchtest Du denn an der Ausgabe des Formulars verändern? Prinzipiell ist es möglich, für jedes einzelne Webform eine eigene Template-Datei (webform-form-[nid].tpl.php) anzulegen, in der Du dann die komplette Ausgabe verändern kannst.
Stefan
--
sei nett zu Deinem Themer
Webform theme
am 08.06.2009 - 13:17 Uhr
danke für die Antwort,
mit dem Modul webform habe ich ein Formular entwickelt. Jetzt möchte ich die Antworten der Kandidaten darstellen.
Also Benutzername, Benutzerfoto, ein gif oder jpeg als LOGO über den Fragebogen. Jeder Klient kann nur eine Antwort geben.
Zur Zeit ist meine Frage vor allem, mache es so richtig oder hätte ich es anders machen sollen oder müssen. In Kurzform:
In der template.php des Themes habe ich Feld und Feldbeschreibung vertauscht. Also zuerst die Erklärung eines Feldes und dann das Feld.
Hat auch funktioniert.
In der webform-form.tpl.php die Navigation überhalb und unterhalb des Fragebogens auskommentiert. Ich benötige keine Navigation, da jeder Kandidat nur einmal antworten darf.
Die Angaben, wie IP und Erstellungsdatum habe ich auskommentiert, genauso den Rahmen. Das konnte ich nur in webform.modul direkt machen.
Gibt es da vielleicht eine bessere Möglichkeit? Gibt es da vielleicht auch eine Möglichkeit eine Datei zu erstellen, die bei einem Updaten bestehen bleibt?
Noch eine Frage, würdest Du für die Navigation zu anderen Kandidaten, also anderen Formularbenutzern in einen Block erstellen oder was anderes?
Gruss
Katasun
http://väterpolitik.de