[gelöst] Node Zugriff nur an bestimmten wochentagen

am 11.05.2015 - 11:56 Uhr in
Hallo,
Wie der Titel schon sagt suche ich ein Modul womit es möglich ist in der Node einzustellen an welchen Wochentagen und zu welcher Zeit diese Angezeigt werden darf. Wenn sie nicht Angezeigt wird Soll ein entsprechender Fehlertext angezeigt werden.
Gibt es zufällig ein modul womit ich das Umsetzen kann?
Ansonsten hab ich mir folgende Methode überlegt:
Ein Feld als liste mit den Wochentagen anlegen.
Feld mit start zeit und Endzeit.
Und das ganze dann in der node.tpl Validieren.
Was sagt ihr zu dieser Methode?
Und wie frag ich mittels php die Liste ab?
Lg Patrici
- Anmelden oder Registrieren um Kommentare zu schreiben
Ich kenne dazu leider kein
am 11.05.2015 - 14:59 Uhr
Ich kenne dazu leider kein Modul dass das direkt kann. Mit einem Datumsfeld (Modul Date) und ein wenig eigener Logik sollte dies aber möglich sein.
Den Hook den Du dazu benötigst ist hook_entity_view().
patrici schrieb Und das ganze
am 11.05.2015 - 16:10 Uhr
Und das ganze dann in der node.tpl Validieren.
in der template Datei muss da gar nix validiert werden. Du schreibst ein kleines Modul, implementierst hook_node_access() und gleichst darin den Feldwert des Date Feldes mit dem aktuellen Wochentag ab. In etwa so:
<?php
MEIN_MODULE_node_access($node, $op, $account) {
if($node->type == 'mein_node_typ' && $op == 'view') {
if($node->['mein_wochentag'] == date('l')) {
return NODE_ACCESS_ALLOW;
}
else {
$message = 'Sorry heute ist nicht dein Tag um diesen Inhalt zu sehen;)';
drupal_set_message($message, $type = 'error', $repeat = FALSE)
return NODE_ACCESS_DENY;
}
}
}
?>
Die Datumformatierung musst du natürlich am Value des Date Fields ausrichten und mit PHP entsprechend formatieren.
Danke hab es geschafft.
am 11.05.2015 - 16:37 Uhr
Danke hab es geschafft.