* @git Joomla Component Builder * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt */ // No direct access to this JCB template file (EVER) defined('_JCB_TEMPLATE') or die; ?> ###BOM### namespace ###NAMESPACEPREFIX###\Component\###ComponentNamespace###\Administrator\View\###View###; ###ADMIN_VIEW_HTML_HEADER### // No direct access to this file \defined('_JEXEC') or die;###LICENSE_LOCKED_DEFINED### /** * ###View### Html View class * * @since 1.6 */ #[\AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** * The item from the model * * @var mixed * @since 3.10.11 */ public mixed $item; /** * The state object * * @var mixed * @since 3.10.11 */ public mixed $state; /** * The form from the model * * @var mixed * @since 3.10.11 */ public mixed $form; /** * The toolbar object * * @var Toolbar * @since 3.10.11 */ public Toolbar $toolbar; /** * The styles url array * * @var array * @since 5.0.0 */ protected array $styles; /** * The scripts url array * * @var array * @since 5.0.0 */ protected array $scripts; /** * The actions object * * @var object * @since 3.10.11 */ public object $canDo; /** * The origin referral view name * * @var string * @since 3.10.11 */ public string $ref; /** * The origin referral item id * * @var int * @since 3.10.11 */ public int $refid; /** * The referral url suffix values * * @var string * @since 3.10.11 */ public string $referral; /** * ###View### view display method * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void * @throws \Exception * @since 1.6 */ public function display($tpl = null): void { // set params $this->params = ComponentHelper::getParams('com_###component###'); $this->useCoreUI = true; // Assign the variables $this->form ??= $this->get('Form'); $this->item = $this->get('Item'); $this->styles = $this->get('Styles'); $this->scripts = $this->get('Scripts'); $this->state = $this->get('State'); // get action permissions $this->canDo = ###Component###Helper::getActions('###view###', $this->item); // get input $jinput = Factory::getApplication()->input; $this->ref = $jinput->get('ref', 0, 'word'); $this->refid = $jinput->get('refid', 0, 'int'); $return = $jinput->get('return', null, 'base64'); // set the referral string $this->referral = ''; if ($this->refid && $this->ref) { // return to the item that referred to this item $this->referral = '&ref=' . (string) $this->ref . '&refid=' . (int) $this->refid; } elseif($this->ref) { // return to the list view that referred to this item $this->referral = '&ref=' . (string) $this->ref; } // check return value if (!is_null($return)) { // add the return value $this->referral .= '&return=' . (string) $return; }###LINKEDVIEWITEMS### // Set the toolbar $this->addToolBar(); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new \Exception(implode("\n", $errors), 500); } // Set the html view document stuff $this->_prepareDocument(); // Display the template parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * @since 1.6 */ protected function addToolbar(): void { ###ADDTOOLBAR### } /** * Escapes a value for output in a view script. * * @param mixed $var The output to escape. * @param bool $shorten The switch to shorten. * @param int $length The shorting length. * * @return mixed The escaped value. * @since 1.6 */ public function escape($var, bool $shorten = true, int $length = 30) { if (!is_string($var)) { return $var; } return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($var, $this->_charset ?? 'UTF-8', $shorten, $length); } /** * Prepare some document related stuff. * * @return void * @since 1.6 */ protected function _prepareDocument(): void {###JQUERY### $isNew = ($this->item->id < 1); $this->getDocument()->setTitle(Text::_($isNew ? 'COM_###COMPONENT###_###VIEW###_NEW' : 'COM_###COMPONENT###_###VIEW###_EDIT')); // add styles foreach ($this->styles as $style) { Html::_('stylesheet', $style, ['version' => 'auto']); }###AJAXTOKE######LINKEDVIEWTABLESCRIPTS### // add scripts foreach ($this->scripts as $script) { Html::_('script', $script, ['version' => 'auto']); }###DOCUMENT_CUSTOM_PHP### } }