Add instances to main page mask

This commit is contained in:
2026-05-23 00:11:13 +02:00
parent eb9f2f4cac
commit e28c650f22

View File

@@ -27,7 +27,7 @@ abstract class Main extends PhpObject
* DB Handle
* @var Db
*/
protected $oDb;
protected Db $oDb;
//Dates format
const URL_DATE_FORMAT = 'Ymd';
@@ -43,7 +43,7 @@ abstract class Main extends PhpObject
* Language Translator
* @var Translator
*/
protected $oLang;
protected Translator $oLang;
/**
* Main constructor
@@ -112,7 +112,15 @@ abstract class Main extends PhpObject
/* Building main pages */
public function getMainPage($asGlobalVars=array(), $sMainPage='index', $asMainPageTags=array(), $asCachePages=array())
/**
* Build the main page
* @param array $asGlobalVars
* @param string $sMainPage Main page HTML file name
* @param array $asMainPageInfo array with 2 entries: tags & instances
* @param array $asCachePages Pages to cache in constants
* @return string HTML Mask
*/
public function getMainPage($asGlobalVars=array(), $sMainPage='index', $asMainPageInfo=array(), $asCachePages=array())
{
$asDefaultConsts = array(
'success' => self::SUCCESS,
@@ -138,9 +146,15 @@ abstract class Main extends PhpObject
}
$oMainMask = new Mask($sMainPage, $this->oLang);
$oMainMask->setTag('APP_CONFIG', json_encode($asGlobalVars));
$oMainMask->setTag('app_config', json_encode($asGlobalVars));
$oMainMask->setTags($asDefaultConsts);
$oMainMask->setTags($asMainPageTags);
$oMainMask->setTags($asMainPageInfo['tags'] ?? []);
$asMainMaskInstances = $asMainPageInfo['instances'] ?? [] ;
foreach($asMainMaskInstances as $sPartName => $asInstances) {
foreach($asInstances as $asInstanceTags) {
$oMainMask->addInstance($sPartName, $asInstanceTags);
}
}
return $oMainMask->getMask();
}