kb-8.x-1.x-dev/modules/kb_h5p/src/Controller/KbH5PController.php

modules/kb_h5p/src/Controller/KbH5PController.php
<?php
/**
 * Created by PhpStorm.
 * User: laboratory.mike
 */

namespace Drupal\kb_h5p\Controller;

use Drupal\Core\Controller\ControllerBase;
use Drupal\views\Views;
use Drupal\group\Entity\GroupInterface;
use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException;
use Drupal\Core\Access\AccessResult;

/**
 * Provides the route controller for kb_h5p.
 */

class KbH5PController extends ControllerBase {
  /**
   * @inheritdoc
   */
  public function kb_h5p_content(GroupInterface $group) {
    // Todo: add access control
    $access = TRUE;
    if($access) {
      $content = NULL;
      $args = [$group->id()];
      $view = Views::getView('manage_kb_h5p_content');
      if (is_object($view)) {
        $view->setArguments($args);
        $view->setDisplay('embed_1');
        $view->preExecute();
        $view->execute();
        $content = $view->buildRenderable('embed_1', $args);
        return $content;
      }
      else {
        return ['#markup' => 'View error - please confirm that the kb_categories view with embed_1 display mode is available'];
      }
    }
    else {
      throw new AccessDeniedHttpException();
      return AccessResult::forbidden();
    }
  }
}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc