protected function getNestedDefs($viewdefs, $view, $validateOnly = false) { // Get the view variable, or in Sidecar's case, the path $var = MetaDataFiles::getViewDefVar($view); // Sidecar should always be an array of metadata path elements if (is_array($var)) { $levels = count($var); // For example, 3 - portal -> view -> edit $checks = 0; for ($i = 0; $i < $levels; $i++) { if (isset($viewdefs[$var[$i]])) { $checks++; $viewdefs = $viewdefs[$var[$i]]; } } $valid = $checks == $levels; return $validateOnly ? $valid : $viewdefs; } return $validateOnly ? false : array(); }
/** * Gets the panel defs from the viewdef array * * @param array $viewdef The view def array * @return array */ protected function getPanelsFromViewDef($viewdef) { if (isset($viewdef['panels'])) { $panels = $viewdef['panels']; } else { $defs = MetaDataFiles::mapArrayToPath(MetaDataFiles::getViewDefVar($this->_view), $viewdef); $panels = isset($defs['panels']) ? $defs['panels'] : null; } return $panels; }