public function theliaModule($params, \Smarty_Internal_Template $parser)
    {
        $content = null;
        $count = 0;
        if (false !== $location = $this->getParam($params, 'location', false)) {
            if ($this->debug === true && $this->requestStack->getCurrentRequest()->get('SHOW_INCLUDE')) {
                echo sprintf('<div style="background-color: #C82D26; color: #fff; border: solid #000000;">%s</div>', $location);
            }

            $moduleLimit = $this->getParam($params, 'module', null);

            $modules = ModuleQuery::getActivated();

            /** @var \Thelia\Model\Module $module */
            foreach ($modules as $module) {
                if (null !== $moduleLimit && $moduleLimit != $module->getCode()) {
                    continue;
                }

                $file = $module->getAbsoluteAdminIncludesPath() . DS . $location . '.html';

                if (file_exists($file)) {
                    $output = trim(file_get_contents($file));

                    if (! empty($output)) {
                        $content .= $output;

                        $count++;
                    }
                }
            }
        }

        if (false !== $countvarname = $this->getParam($params, 'countvar', false)) {
            $parser->assign($countvarname, $count);
        }

        if (! empty($content)) {
            return $parser->fetch(sprintf("string:%s", $content));
        }

        return "";
    }
public function theliaModule($params, \Smarty_Internal_Template $parser)
    {
        $content = null;
        $count = 0;
        if (false !== $location = $this->getParam($params, 'location', false)) {
            if ($this->debug === true && $this->requestStack->getCurrentRequest()->get('SHOW_INCLUDE')) {
                echo sprintf('<div style="background-color: #C82D26; color: #fff; border: solid #000000;">%s</div>', $location);
            }

            $moduleLimit = $this->getParam($params, 'module', null);

            $modules = ModuleQuery::getActivated();

            /** @var \Thelia\Model\Module $module */
            foreach ($modules as $module) {
                if (null !== $moduleLimit && $moduleLimit != $module->getCode()) {
                    continue;
                }

                $file = $module->getAbsoluteAdminIncludesPath() . DS . $location . '.html';

                if (file_exists($file)) {
                    $output = trim(file_get_contents($file));

                    if (! empty($output)) {
                        $content .= $output;

                        $count++;
                    }
                }
            }
        }

        if (false !== $countvarname = $this->getParam($params, 'countvar', false)) {
            $parser->assign($countvarname, $count);
        }

        if (! empty($content)) {
            return $parser->fetch(sprintf("string:%s", $content));
        }

        return "";
    }
public function theliaModule ( $ params , \ Smarty_Internal_Template $ parser ) { $ content = null ; $ count = 0 ; if ( false !== $ location = $ this -> getParam ( $ params , 'location' , false ) ) { if ( $ this -> debug === true && $ this -> requestStack -> getCurrentRequest ( ) -> get ( 'SHOW_INCLUDE' ) ) { echo sprintf ( '<div style="background-color: #C82D26; color: #fff; border: solid #000000;">%s</div>' , $ location ) ; } $ moduleLimit = $ this -> getParam ( $ params , 'module' , null ) ; $ modules = ModuleQuery :: getActivated ( ) ; /** @var \Thelia\Model\Module $module */ foreach ( $ modules as $ module ) { if ( null !== $ moduleLimit && $ moduleLimit != $ module -> getCode ( ) ) { continue ; } $ file = $ module -> getAbsoluteAdminIncludesPath ( ) . DS . $ location . '.html' ; if ( file_exists ( $ file ) ) { $ output = trim ( file_get_contents ( $ file ) ) ; if ( ! empty ( $ output ) ) { $ content .= $ output ; $ count ++ ; } } } } if ( false !== $ countvarname = $ this -> getParam ( $ params , 'countvar' , false ) ) { $ parser -> assign ( $ countvarname , $ count ) ; } if ( ! empty ( $ content ) ) { return $ parser -> fetch ( sprintf ( "string:%s" , $ content ) ) ; } return "" ; }
Process theliaModule template inclusion function

This function accepts two parameters:

- location : this is the location in the admin template. Example: folder-edit'. The function will search for
AdminIncludes/<location>.html file, and fetch it as a Smarty template.
- countvar : this is the name of a template variable where the number of found modules includes will be assigned.

@param array                     $params
@param \Smarty_Internal_Template $parser
@internal param \Thelia\Core\Template\Smarty\Plugins\unknown $smarty

@return string

@throws \Exception
@throws \SmartyException
Process theliaModule template inclusion function