/** * @param string $name * * @return mixed|string */ public function getSource($name) { $name = $this->getName($name); $content = ''; if ($pos = strpos($name, '@')) { $propertySet = substr($name, $pos + 1); $name = substr($name, 0, $pos); } $c = (is_numeric($name) and $name > 0) ? $name : array('templatename' => $name); /** @var modChunk $chunk */ if ($element = $this->modx->getObject('modTemplate', $c)) { $content = $element->getContent(); if (!empty($propertySet) and $tmp = $element->getPropertySet($propertySet)) { $properties = $tmp; } else { $properties = $element->getProperties(); } if (!empty($content) and !empty($properties)) { $content = $this->twiggy->parseChunk('@INLINE ' . $content, $properties); } } return $content; }
/** * @param string $name * @param array $properties * @param string $prefix * @param string $suffix * * @return mixed|string */ public static function parseChunk($name = '', array $properties = array(), $prefix = '[[+', $suffix = ']]') { return self::$twiggy->parseChunk($name, $properties, $prefix, $suffix); }