Versionierung im Hintergrund immer aktivieren
Eingetragen von raffi (21)
am 03.07.2012 - 10:56 Uhr in
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 4 Tagen 12 Stunden
vor 1 Woche 10 Stunden
vor 1 Woche 12 Stunden
vor 1 Woche 12 Stunden
vor 1 Woche 12 Stunden
vor 1 Woche 14 Stunden
vor 1 Woche 1 Tag
vor 1 Woche 1 Tag
vor 1 Woche 2 Tagen
vor 1 Woche 2 Tagen