/** * @param mixed $value * @return mixed */ public function render($value) { $delimiter = PHP_EOL; $lines = []; foreach ($value as $key => $item) { $lines[] = $key . ': ' . $this->renderers->getRenderer($item)->render($item); } return PHP_EOL . implode($delimiter, $lines) . PHP_EOL; }
/** * @param mixed $value * @return array|Element[] */ public function headElements($value) { $content = $this->getContent($value); $renderer = $this->renderers->getRenderer($content); if ($renderer instanceof WebRenderer) { return $renderer->headElements($content); } return []; }
/** * @param mixed $value * @return mixed */ public function render($value) { $delimiter = PHP_EOL . PHP_EOL; $isList = array_keys($value) == range(0, count($value) - 1); $lines = []; foreach ($value as $key => $item) { $lines[] = ($isList ? '' : $key . ': ') . $this->renderers->getRenderer($item)->render($item); } return PHP_EOL . implode($delimiter, $lines) . PHP_EOL; }
/** * @param array $array * @return array|Element[] */ public function headElements($array) { $elements = []; foreach ($array as $item) { $renderer = $this->renderers->getRenderer($item); if ($renderer instanceof WebRenderer) { $elements = array_merge($elements, $renderer->headElements($item)); } } return $elements; }
/** * @param Table $value * @return array|Element[] */ public function headElements($value) { $elements = []; foreach ($value->getItems() as $item) { foreach ($value->getCells($item) as $cell) { $renderer = $this->renderers->getRenderer($cell); if ($renderer instanceof WebRenderer) { $elements = array_merge($elements, $renderer->headElements($cell)); } } } return $elements; }
/** * @param DataTable $value * @return array|Element[] */ public function headElements($value) { $elements = []; $table = $value->getTable(); $renderer = $this->renderers->getRenderer($table); if ($renderer instanceof WebRenderer) { $elements = $renderer->headElements($table); } $options = json_encode($value->getOptions()); $elements[] = HeadElements::style('//cdn.datatables.net/1.10.7/css/jquery.dataTables.min.css'); $elements[] = HeadElements::script('//cdn.datatables.net/1.10.7/js/jquery.dataTables.min.js'); $elements[] = new Element('script', [], ["\n \$(function () {\n \$('.data-table > table').dataTable({$options});\n });\n "]); return $elements; }
/** * @param RendererRegistry $renderers * @return \rtens\domin\delivery\web\Element[] */ public function headElements(RendererRegistry $renderers) { $renderer = $renderers->getRenderer($this->content); if ($renderer instanceof WebRenderer) { return $renderer->headElements($this->content); } return []; }
/** * @param mixed $value * @return mixed */ public function render($value) { if (method_exists($value, '__toString')) { return (string) $value; } $output = ['### ' . (new \ReflectionClass($value))->getShortName() . ' ###']; $reader = new PropertyReader($this->types, $value); foreach ($reader->readInterface($value) as $property) { if (!$property->canGet()) { continue; } $propertyValue = $property->get($value); $rendered = $this->renderers->getRenderer($propertyValue)->render($propertyValue); $output[] = ucfirst($property->name()) . ': ' . rtrim(str_replace(PHP_EOL, PHP_EOL . ' ', $rendered)); } return implode(PHP_EOL, $output) . PHP_EOL; }
/** * @param RendererRegistry $renderers * @return \rtens\domin\delivery\web\Element[] */ public function headElements(RendererRegistry $renderers) { $elements = [HeadElements::jquery()]; $renderer = $renderers->getRenderer($this->content); if ($renderer instanceof WebRenderer) { $elements = array_merge($elements, $renderer->headElements($this->content)); } return $elements; }
protected function handleValueResult(ValueResult $result) { $value = $result->getValue(); $renderer = $this->renderers->getRenderer($value); if ($renderer instanceof WebRenderer) { $this->headElements = $renderer->headElements($value); } $this->model['output'] = $renderer->render($value); if (!$this->action->isModifying()) { $this->crumbs->updateCrumbs($this->action, $this->actionId); } }
private function printResult(Console $console, ExecutionResult $result, $outFile) { if ($result instanceof ValueResult) { $value = $result->getValue(); $rendered = (string) $this->renderers->getRenderer($value)->render($value); if ($outFile) { file_put_contents($outFile, $rendered); $console->writeLine("Output written to [{$outFile}]"); } else { $console->writeLine($rendered); } return self::OK; } else { if ($result instanceof MissingParametersResult) { $console->writeLine(); $console->writeLine("Missing parameters!"); foreach ($result->getMissingNames() as $missing) { $console->writeLine(' ' . $missing . ': ' . $result->getException($missing)->getMessage()); } return self::ERROR; } else { if ($result instanceof NotPermittedResult) { $console->writeLine('Permission denied'); return self::ERROR; } else { if ($result instanceof FailedResult) { $console->writeLine("Error: " . $result->getMessage()); $exception = $result->getException(); $console->error(get_class($exception) . ': ' . $exception->getMessage() . ' ' . '[' . $exception->getFile() . ':' . $exception->getLine() . ']' . "\n" . $exception->getTraceAsString()); return $exception->getCode() ?: self::ERROR; } else { if ($result instanceof NoResult || $result instanceof RedirectResult) { return self::OK; } else { $console->writeLine('Cannot print [' . (new \ReflectionClass($result))->getShortName() . ']'); return self::OK; } } } } } }
protected function render($value) { return $this->renderers->getRenderer($value)->render($value); }
/** * @param DataTable $value * @return mixed */ public function render($value) { $table = $value->getTable(); return $this->renderers->getRenderer($table)->render($table); }