/var/www/vhosts/ihelp.ro/httpdocs/vendor/cakephp/cakephp/src/View
NameSizeModeActions
Exception/-0755rm
Form/-0755rm
Helper/-0755rm
Widget/-0755rm
AjaxView.php10880644editdlrm
Cell.php90450644editdlrm
CellTrait.php44460644editdlrm
Helper.php73290644editdlrm
HelperRegistry.php48600644editdlrm
JsonView.php58780644editdlrm
NegotiationRequiredView.php18360644editdlrm
SerializedView.php36900644editdlrm
StringTemplate.php115640644editdlrm
StringTemplateTrait.php28640644editdlrm
View.php523500644editdlrm
ViewBlock.php64040644editdlrm
ViewBuilder.php176020644editdlrm
ViewVarsTrait.php30690644editdlrm
XmlView.php47980644editdlrm
Edit: /var/www/vhosts/ihelp.ro/httpdocs/vendor/cakephp/cakephp/src/View/ViewBlock.php (6404B)
*/ protected $_blocks = []; /** * The active blocks being captured. * * @var array */ protected $_active = []; /** * Should the currently captured content be discarded on ViewBlock::end() * * @see \Cake\View\ViewBlock::end() * @var bool */ protected $_discardActiveBufferOnEnd = false; /** * Start capturing output for a 'block' * * Blocks allow you to create slots or blocks of dynamic content in the layout. * view files can implement some or all of a layout's slots. * * You can end capturing blocks using View::end(). Blocks can be output * using View::get(); * * @param string $name The name of the block to capture for. * @param string $mode If ViewBlock::OVERRIDE existing content will be overridden by new content. * If ViewBlock::APPEND content will be appended to existing content. * If ViewBlock::PREPEND it will be prepended. * @throws \Cake\Core\Exception\CakeException When starting a block twice * @return void */ public function start(string $name, string $mode = ViewBlock::OVERRIDE): void { if (array_key_exists($name, $this->_active)) { throw new CakeException(sprintf("A view block with the name '%s' is already/still open.", $name)); } $this->_active[$name] = $mode; ob_start(); } /** * End a capturing block. The compliment to ViewBlock::start() * * @return void * @see \Cake\View\ViewBlock::start() */ public function end(): void { if ($this->_discardActiveBufferOnEnd) { $this->_discardActiveBufferOnEnd = false; ob_end_clean(); return; } if (!$this->_active) { return; } $mode = end($this->_active); $active = key($this->_active); $content = ob_get_clean(); if ($mode === ViewBlock::OVERRIDE) { $this->_blocks[$active] = (string)$content; } else { $this->concat($active, $content, $mode); } array_pop($this->_active); } /** * Concat content to an existing or new block. * Concating to a new block will create the block. * * Calling concat() without a value will create a new capturing * block that needs to be finished with View::end(). The content * of the new capturing context will be added to the existing block context. * * @param string $name Name of the block * @param mixed $value The content for the block. Value will be type cast * to string. * @param string $mode If ViewBlock::APPEND content will be appended to existing content. * If ViewBlock::PREPEND it will be prepended. * @return void */ public function concat(string $name, $value = null, $mode = ViewBlock::APPEND): void { if ($value === null) { $this->start($name, $mode); return; } if (!isset($this->_blocks[$name])) { $this->_blocks[$name] = ''; } if ($mode === ViewBlock::PREPEND) { $this->_blocks[$name] = $value . $this->_blocks[$name]; } else { $this->_blocks[$name] .= $value; } } /** * Set the content for a block. This will overwrite any * existing content. * * @param string $name Name of the block * @param mixed $value The content for the block. Value will be type cast * to string. * @return void */ public function set(string $name, $value): void { $this->_blocks[$name] = (string)$value; } /** * Get the content for a block. * * @param string $name Name of the block * @param string $default Default string * @return string The block content or $default if the block does not exist. */ public function get(string $name, string $default = ''): string { return $this->_blocks[$name] ?? $default; } /** * Check if a block exists * * @param string $name Name of the block * @return bool */ public function exists(string $name): bool { return isset($this->_blocks[$name]); } /** * Get the names of all the existing blocks. * * @return array An array containing the blocks. */ public function keys(): array { return array_keys($this->_blocks); } /** * Get the name of the currently open block. * * @return string|null Either null or the name of the last open block. */ public function active(): ?string { end($this->_active); return key($this->_active); } /** * Get the unclosed/active blocks. Key is name, value is mode. * * @return array An array of unclosed blocks. */ public function unclosed(): array { return $this->_active; } }