Versionierung im Hintergrund immer aktivieren
am 03.07.2012 - 10:56 Uhr in
Hallo zusammen,
ich möchte bei folgendem Szenario die Versionierung explizit aktivieren. Ein Nutzer kann durch ein selbsgeschriebenes Modul nur bestimmte Felder eines Inhaltstyps ändern. Eingeblendet sind auch nur diese Felder, alle anderen Labels u. ä. sind nicht sichtbar. Allerdings soll der Nachvollziehbarkeit halber die Versionierung explizit aktiviert sein. Normalerweise sollte das doch mit einer zusätzlichen Zeile im folgenden Quelltext möglich sein, oder sehe ich das falsch?
<?php
// $Id$
/*
* Created on 19.06.2012
*
* @file
* Geaendertes Auftragsformular
*
*/
# Implementierung von hook_form_alter
function new_auftrag_form_form_alter (&$form, $form_state, $form_id) {
global $user;
# Ueberpruefung ob Formular
# und ob auch das richtige Formular
if (isset($form['type']) && ($form_id == 'auftrag_node_form')) {
# welche Rolle hat der Nutzer
$role = db_result(db_query("
select
r.name
from
{role} r
inner join
{users_roles} ur
on
r.rid = ur.rid
where
ur.uid = %d
", $user->uid));
# blende nur für Consultants die Felder
# für Verantwortliche und Vertreter ein
if ($role == "Consultant") {
# blende Titel mittels #access aus
# damit Daten trotzdem
# über Formular gesendet und verarbeitet
# werden
$form['title']['#access'] = FALSE;
# blende alle body labels und fields aus
$form['body_field']['#access'] = FALSE;
}
}
}
?>Viele Grüße
- Anmelden oder Registrieren um Kommentare zu schreiben

Neue Kommentare
vor 2 Tagen 4 Stunden
vor 2 Tagen 20 Stunden
vor 8 Wochen 34 Minuten
vor 8 Wochen 19 Stunden
vor 8 Wochen 1 Tag
vor 8 Wochen 5 Tagen
vor 8 Wochen 6 Tagen
vor 9 Wochen 3 Tagen
vor 9 Wochen 3 Tagen
vor 9 Wochen 3 Tagen