Skip to content
Snippets Groups Projects

Update renderer class; update docker env to PHP 8.3

Merged Hahn Axel (hahn) requested to merge update_renderer_class into main
1 file
+ 25
33
Compare changes
  • Side-by-side
  • Inline
@@ -158,26 +158,6 @@ class renderadminlte {
//
// ----------------------------------------------------------------------
/**
* verify if an item has a correct value
* it returns false if a key is not defined to be checked
* it returns true if it was validated successfully
* it dies with an errror, if a value check failed
*
* @param string $sType type; key in $_aValidItems; one of bgcolor|color|type|size
* @param string $sValue value to check
* @param string $sReferrer optional: method that called this function
*/
protected function _DELETE_ME___checkValue($sType, $sValue, $sReferrer=false){
if (!$sValue || !array_key_exists($sType, $this->_aValidItems)){
return false;
}
if(array_search($sValue, $this->_aValidItems[$sType])===false){
echo "ERROR: ".($sReferrer ? $sReferrer.' - ' : '')."value [$sValue] is not a valid for type [$sType]; it must be one of ".implode("|", $this->_aValidItems[$sType]).'<br>';
}
return true;
}
/**
* used in cosntructor
* initialize all element definitions
@@ -580,13 +560,16 @@ class renderadminlte {
$iCounter=0;
}
// special menu entry: horizontal bar (label is "-")
if($aLink['label']=='-'){
return '<div class="dropdown-divider"></div>';
}
// special menu entry: hamburger menu item (label is "=")
if($aLink['label']=='='){
return '<li class="nav-item"><a class="nav-link" data-widget="pushmenu" href="#" role="button"><i class="fas fa-bars"></i></a></li>';
switch ($aLink['label']) {
// special menu entry: horizontal bar (label is "-")
case '-': return '<div class="dropdown-divider"></div>'; break;
// special menu entry: hamburger menu item (label is "=")
case '=': return '<li class="nav-item"><a class="nav-link" data-widget="pushmenu" href="#" role="button"><i class="fas fa-bars"></i></a></li>'; break;
// special menu entry: hamburger menu item (label is "|")
// requires css: .navbar-nav li.divider{border-left: 1px solid rgba(0,0,0,0.2);}
case '|': return '<li class="divider"></li>'; break;
}
$aChildren=isset($aLink['children']) && is_array($aLink['children']) && count($aLink['children']) ? $aLink['children'] : false;
@@ -670,9 +653,16 @@ class renderadminlte {
* @param array $aUlOptions array of html attrubutes for wrapping UL tag
* @return string
*/
public function getTopNavigation($aNavItems, $aUlOptions=['class'=>'navbar-nav']){
public function getTopNavigation($aNavItems, $aUlOptions=false, $aNavItemsRight=[], $aUlOptionsRight=false){
// array_unshift($aNavItems, ['class'=>'nav-link', 'data-widget'=>'pushmenu', 'href'=>'#', 'role'=>'button', 'label'=>'<i class="fa-solid fa-bars"></i>']);
return $this->addWrapper('ul', $aUlOptions, $this->getNavItems($aNavItems));
$aUlOptLeft=$aUlOptions ? $aUlOptions : ['class'=>'navbar-nav'];
$aUlOptRight=$aUlOptionsRight ? $aUlOptionsRight : ['class'=>'navbar-nav ml-auto'];
return $this->addWrapper('ul', $aUlOptLeft, $this->getNavItems($aNavItems))
.(count($aNavItemsRight)
? $this->addWrapper('ul', $aUlOptRight, $this->getNavItems($aNavItemsRight))
: ''
)
;
}
// ----------------------------------------------------------------------
@@ -1085,7 +1075,7 @@ class renderadminlte {
// print_r($aOptions);
$sVariantPrefix=$aVariants[$aOptions['variant']] ? $aVariants[$aOptions['variant']] : $aVariants['default'];
$sVariantPrefix=isset($aVariants[$aOptions['variant']]) ? $aVariants[$aOptions['variant']] : $aVariants['default'];
$sClass='card'
. $this->_addClassValue($aOptions['type'], $sVariantPrefix)
.($aOptions['shadow'] && isset($this->_aValueMappings['shadow'][$aOptions['shadow']])
@@ -1106,10 +1096,13 @@ class renderadminlte {
$aOptions['tools'].=($aOptions[$sTool] ? $sHtml : '');
}
// build parts of the card
$sCardHeader=$this->addWrapper('div', ['class'=>'card-header'],
$sCardHeader=$aOptions['title']
? $this->addWrapper('div', ['class'=>'card-header'],
$this->_tag('h3', ['class'=>'card-title', 'label'=>$aOptions['title']])
. ($aOptions['tools'] ? $this->_tag('div', ['class'=>'card-tools', 'label'=>$aOptions['tools']]) : '')
);
)
: ''
;
$sCardBody=$this->_tag('div', ['class'=>'card-body', 'label'=>$aOptions['text']]);
$sCardFooter=$aOptions['footer'] ? $this->_tag('div', ['class'=>'card-footer', 'label'=>$aOptions['footer']]) : '';
@@ -1372,7 +1365,6 @@ class renderadminlte {
if( ! isset($aOptions['tabs']) || ! is_array($aOptions['tabs']) ){
return false;
}
static $iTabCounter;
if (!isset($iTabCounter)){
$iTabCounter=1;
} else {
Loading