restrict_filedepot.php 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. <?php
  2. use Drupal\views\Views;
  3. // dokumendid vaade: page_filedepot piiritle access filedepot õigusega.
  4. // page (docs) jääb access content (kõik autenditud, D7 docsview analogg).
  5. $view = Views::getView('dokumendid');
  6. if (!$view) {
  7. echo "VIEW dokumendid NOT FOUND\n";
  8. exit;
  9. }
  10. $perm_access = [
  11. 'type' => 'perm',
  12. 'options' => ['perm' => 'access filedepot'],
  13. ];
  14. $storage = $view->storage;
  15. $displays = $storage->get('display');
  16. if (isset($displays['page_filedepot'])) {
  17. if (!isset($displays['page_filedepot']['display_options'])) {
  18. $displays['page_filedepot']['display_options'] = [];
  19. }
  20. $displays['page_filedepot']['display_options']['access'] = $perm_access;
  21. if (!isset($displays['page_filedepot']['display_options']['defaults'])) {
  22. $displays['page_filedepot']['display_options']['defaults'] = [];
  23. }
  24. $displays['page_filedepot']['display_options']['defaults']['access'] = FALSE;
  25. echo "SET page_filedepot -> access filedepot\n";
  26. } else {
  27. echo "MISSING page_filedepot\n";
  28. }
  29. $storage->set('display', $displays);
  30. $storage->save();
  31. echo "STORAGE SAVED\n";