Pimcore\Model\Element\Service::getRequiredByDependenciesForFrontend PHP Метод

getRequiredByDependenciesForFrontend() публичный статический Метод

public static getRequiredByDependenciesForFrontend ( Dependency $d ) : array
$d Pimcore\Model\Dependency
Результат array
    public static function getRequiredByDependenciesForFrontend(Dependency $d)
    {
        $dependencies["hasHidden"] = false;
        $dependencies["requiredBy"] = [];
        // requiredBy
        foreach ($d->getRequiredBy() as $r) {
            if ($e = self::getDependedElement($r)) {
                if ($e->isAllowed("list")) {
                    $dependencies["requiredBy"][] = self::getDependencyForFrontend($e);
                } else {
                    $dependencies["hasHidden"] = true;
                }
            }
        }
        return $dependencies;
    }

Usage Example

Пример #1
0
 /**
  *
  */
 public function getRequiredByDependenciesAction()
 {
     $id = $this->getParam("id");
     $type = $this->getParam("controller");
     $allowedTypes = ["asset", "document", "object"];
     if ($id && in_array($type, $allowedTypes)) {
         $element = Model\Element\Service::getElementById($type, $id);
         if ($element instanceof Model\Element\ElementInterface) {
             $dependencies = Model\Element\Service::getRequiredByDependenciesForFrontend($element->getDependencies());
             $this->_helper->json($dependencies);
         }
     }
     $this->_helper->json(false);
 }