Puncte:0

Permiteți utilizatorului să controleze accesul la propriul conținut pentru alți utilizatori autentificați

drapel ro

Vreau doar un câmp într-un tip de conținut, astfel încât atunci când un utilizator creează conținut nou, el/ea poate selecta dacă acel conținut poate fi vizualizat de alți utilizatori autentificați sau nu. Prefer să fac acest lucru cu un câmp de selecție care afișează „ascuns/vizibil” pentru alți utilizatori și apoi setați accesul real într-un modul personalizat folosind un cârlig.

Acesta este ceea ce am încercat până acum în modul meu personalizat, accesul la entitate de cârlig cu tipul de conținut test_adgang și verificarea field_test_adgang, dar fără efect, ceea ce înseamnă că toți utilizatorii autentificați pot vedea în continuare, dacă câmpul este setat la „skjult” (ascuns).


<?php

use Drupal\Core\Access\AccessResult;


function import_functions_entity_access(\Drupal\Core\Entity\EntityInterface $entity, $operation, \Drupal\Core\Session\AccountInterface $account) {
    if ($entity->bundle() == 'test_adgang') {
        if ($entity->field_test_adgang->value == 'skjult' && $operation == 'view' && in_array('godkendt bruger', $account->getRoles())) {
            return AccessResult::forbidden();
        } elseif ($entity->field_test_adgang->value == 'synlig' && $operation == 'view' && in_array('godkendt bruger', $account->getRoles())) {
            return AccessResult::allowed();
        }
    }
    
}

?>

Kevin avatar
drapel in
Nu returnați rezultatul cârligului dvs. Asta e o problemă. Verificați documentele cârligului pe care îl utilizați.
drupalhorn avatar
drapel ro
Mulțumesc, a lipsit returnarea, funcționează acum :-)
Puncte:1
drapel cn

The Gaura de iepure modulul vă permite să specificați dacă utilizatorii pot vizualiza nodul. Prima setare este pentru tipul de conținut, dar există o setare acolo pentru a permite ca aceasta să fie setată pe fiecare nod. Puteți să vă uitați la utilizarea acelui modul sau să vedeți ce fac ei pentru a rezolva acest lucru.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.