Skip to content
Snippets Groups Projects
Commit d0f4e633 authored by Hahn Axel (hahn)'s avatar Hahn Axel (hahn)
Browse files

update renderer class

parent b1067d6f
No related branches found
No related tags found
1 merge request!16Update renderer class; update docker env to PHP 8.3
...@@ -158,26 +158,6 @@ class renderadminlte { ...@@ -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 * used in cosntructor
* initialize all element definitions * initialize all element definitions
...@@ -580,13 +560,16 @@ class renderadminlte { ...@@ -580,13 +560,16 @@ class renderadminlte {
$iCounter=0; $iCounter=0;
} }
// special menu entry: horizontal bar (label is "-") switch ($aLink['label']) {
if($aLink['label']=='-'){ // special menu entry: horizontal bar (label is "-")
return '<div class="dropdown-divider"></div>'; case '-': return '<div class="dropdown-divider"></div>'; break;
}
// special menu entry: hamburger menu item (label is "=") // special menu entry: hamburger menu item (label is "=")
if($aLink['label']=='='){ 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;
return '<li class="nav-item"><a class="nav-link" data-widget="pushmenu" href="#" role="button"><i class="fas fa-bars"></i></a></li>';
// 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; $aChildren=isset($aLink['children']) && is_array($aLink['children']) && count($aLink['children']) ? $aLink['children'] : false;
...@@ -670,9 +653,16 @@ class renderadminlte { ...@@ -670,9 +653,16 @@ class renderadminlte {
* @param array $aUlOptions array of html attrubutes for wrapping UL tag * @param array $aUlOptions array of html attrubutes for wrapping UL tag
* @return string * @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>']); // 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 { ...@@ -1085,7 +1075,7 @@ class renderadminlte {
// print_r($aOptions); // print_r($aOptions);
$sVariantPrefix=$aVariants[$aOptions['variant']] ? $aVariants[$aOptions['variant']] : $aVariants['default']; $sVariantPrefix=isset($aVariants[$aOptions['variant']]) ? $aVariants[$aOptions['variant']] : $aVariants['default'];
$sClass='card' $sClass='card'
. $this->_addClassValue($aOptions['type'], $sVariantPrefix) . $this->_addClassValue($aOptions['type'], $sVariantPrefix)
.($aOptions['shadow'] && isset($this->_aValueMappings['shadow'][$aOptions['shadow']]) .($aOptions['shadow'] && isset($this->_aValueMappings['shadow'][$aOptions['shadow']])
...@@ -1106,10 +1096,13 @@ class renderadminlte { ...@@ -1106,10 +1096,13 @@ class renderadminlte {
$aOptions['tools'].=($aOptions[$sTool] ? $sHtml : ''); $aOptions['tools'].=($aOptions[$sTool] ? $sHtml : '');
} }
// build parts of the card // 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']]) $this->_tag('h3', ['class'=>'card-title', 'label'=>$aOptions['title']])
. ($aOptions['tools'] ? $this->_tag('div', ['class'=>'card-tools', 'label'=>$aOptions['tools']]) : '') . ($aOptions['tools'] ? $this->_tag('div', ['class'=>'card-tools', 'label'=>$aOptions['tools']]) : '')
); )
: ''
;
$sCardBody=$this->_tag('div', ['class'=>'card-body', 'label'=>$aOptions['text']]); $sCardBody=$this->_tag('div', ['class'=>'card-body', 'label'=>$aOptions['text']]);
$sCardFooter=$aOptions['footer'] ? $this->_tag('div', ['class'=>'card-footer', 'label'=>$aOptions['footer']]) : ''; $sCardFooter=$aOptions['footer'] ? $this->_tag('div', ['class'=>'card-footer', 'label'=>$aOptions['footer']]) : '';
...@@ -1372,7 +1365,6 @@ class renderadminlte { ...@@ -1372,7 +1365,6 @@ class renderadminlte {
if( ! isset($aOptions['tabs']) || ! is_array($aOptions['tabs']) ){ if( ! isset($aOptions['tabs']) || ! is_array($aOptions['tabs']) ){
return false; return false;
} }
static $iTabCounter;
if (!isset($iTabCounter)){ if (!isset($iTabCounter)){
$iTabCounter=1; $iTabCounter=1;
} else { } else {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment