protected function getTemplateParameters() { $params = parent::getTemplateParameters(); $glance_config = $this->getOption('glance_config', new ArrayConfig([])); $params['css'] = $this->getOption('css', ''); $params['trigger_id'] = $this->getOption('trigger_id', sprintf('%s-%s', $params['grouped_base_path'], rand())); $params['html_attributes'] = $this->getOption('html_attributes', []); $params['collapsible'] = $glance_config->get('collapsible', true); $params['expand_by_default'] = $glance_config->get('expand_by_default', false); if ($glance_config->has('fixed_content')) { $params['rendered_glance_content'] = $glance_config->get('fixed_content', false); } else { $params['rendered_glance_content'] = $glance_config->get('enabled', false) ? $this->renderGlance($glance_config->toArray()) : ''; } if (empty($params['rendered_glance_content'])) { // expand if no clickable glance is rendered $params['expand_by_default'] = true; $params['collapsible'] = false; } elseif ($params['has_parent_attribute']) { $params['css'] .= ' hb-embed-item--has_glance'; } if ($params['expand_by_default']) { $params['css'] .= ' hb-embed-item--is_expanded'; } if ($params['collapsible']) { $params['css'] .= ' hb-embed-item--is_collapsible'; } return $params; }
protected function getTemplateParameters() { $params = parent::getDefaultTemplateParameters(); $resource = $this->getPayload('subject'); $parent_attribute = $resource->getType()->getParentAttribute(); $group_parts = (array) $this->getOption('group_parts', []); $params['grouped_base_path'] = ArrayToolkit::flattenToArrayPath($group_parts); $params['is_embed_template'] = $this->getOption('is_embed_template', false); $params['has_parent_attribute'] = $parent_attribute !== null; $params['html_attributes'] = $this->getOption('html_attributes', []); $params['image_disabled'] = $this->getOption('image_disabled', false); $params['resource'] = $resource->toNative(); $params['is_new'] = !$resource->hasValue('identifier'); $params['css'] = $this->getOption('css', ''); $params = array_replace_recursive($this->lookupViewTemplate(), $params); if ($this->hasOption('view_template_name')) { // use view_template $params['rendered_fields'] = $this->getRenderedFields($resource, $params['view_template']); $params['css'] .= $params['is_new'] ? ' hb-glance--empty' : null; } else { // get default values if (!$params['image_disabled']) { $image = $this->getGlanceImage($resource, $params['view_template']); $params['image_width'] = $this->getOption('image_width', $image['width']); $params['image_height'] = $this->getOption('image_height', $image['height']); $params['image_url'] = $image['location']; } $params['title'] = $this->getGlanceTitle($resource, $params['view_template']); $params['description'] = $this->getGlanceDescription($resource, $params['view_template']); } return $params; }
protected function getTemplateParameters() { $params = parent::getTemplateParameters(); $resource = $this->getPayload('subject'); $params['html_attributes'] = $this->getOption('html_attributes', []); $css = (string) $this->getOption('css', ''); $css = 'hb-item ' . $this->getOption('css_prefix', 'hb-item-') . $resource->getIdentifier() . ' ' . $css; $css .= !empty($params['rendered_glance_content']) ? ' hb-item--has_glance' : ''; $params['css'] = $css; return $params; }