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

CI Webgui: added feature render file list

parent 67804f2f
No related branches found
No related tags found
No related merge requests found
...@@ -44,9 +44,9 @@ class configreplacement { ...@@ -44,9 +44,9 @@ class configreplacement {
$sPhase=$this->_oProject->getNextPhase(false); $sPhase=$this->_oProject->getNextPhase(false);
} }
$aBuildfiles=$this->_oProject->_getBuildfilesByPlace($sPhase, 'onhold'); $aBuildfiles=$this->_oProject->getBuildfilesByPlace($sPhase, 'onhold');
if (!$aBuildfiles){ if (!$aBuildfiles){
$aBuildfiles=$this->_oProject->_getBuildfilesByPlace($sPhase, 'ready2install'); $aBuildfiles=$this->_oProject->getBuildfilesByPlace($sPhase, 'ready2install');
} }
if (!$aBuildfiles || !array_key_exists('types', $aBuildfiles) || !array_key_exists('templates', $aBuildfiles['types'])){ if (!$aBuildfiles || !array_key_exists('types', $aBuildfiles) || !array_key_exists('templates', $aBuildfiles['types'])){
......
...@@ -389,20 +389,26 @@ class project extends base { ...@@ -389,20 +389,26 @@ class project extends base {
switch($sExt){ switch($sExt){
case 'erb': case 'erb':
$sType='templates'; $sType='templates';
$sIcon='fa fa-file-code-o';
break; break;
case 'tgz': case 'tgz':
$sType='package'; $sType='package';
$sIcon='fa fa-file-archive-o';
break; break;
case 'json': case 'json':
$sType='metadata'; $sType='metadata';
$sIcon='fa fa-file-text-o';
break; break;
default: default:
$sType='any'; $sType='any';
$sIcon='fa fa-file-o';
break; break;
} }
$iTotalSize+=$aStat['size']; $iTotalSize+=$aStat['size'];
$aReturn['files'][$sFileBase]=array( $aReturn['files'][$sFileBase]=array(
'type'=>$sType, 'type'=>$sType,
'icon'=>$sIcon ? '<i class="'.$sIcon.'"></i> ' : '',
'extension'=>$sExt, 'extension'=>$sExt,
'size'=>$aStat['size'], 'size'=>$aStat['size'],
); );
...@@ -421,7 +427,7 @@ class project extends base { ...@@ -421,7 +427,7 @@ class project extends base {
* @param string $sPlace one of onhold|ready2install|deployed * @param string $sPlace one of onhold|ready2install|deployed
* @return array * @return array
*/ */
public function _getBuildfilesByPlace($sPhase, $sPlace) { public function getBuildfilesByPlace($sPhase, $sPlace) {
$sBase = $this->_getFileBase($sPhase, $sPlace); $sBase = $this->_getFileBase($sPhase, $sPlace);
return $this->_getBuildfilesByDir($sBase); return $this->_getBuildfilesByDir($sBase);
} }
...@@ -431,7 +437,7 @@ class project extends base { ...@@ -431,7 +437,7 @@ class project extends base {
* @param string $sPlace one of onhold|ready2install|deployed * @param string $sPlace one of onhold|ready2install|deployed
* @return array * @return array
*/ */
public function _getBuildfilesByVersion($sVersion) { public function getBuildfilesByVersion($sVersion) {
return $this->_getBuildfilesByDir($this->_getProjectArchiveDir().'/'.$sVersion); return $this->_getBuildfilesByDir($this->_getProjectArchiveDir().'/'.$sVersion);
} }
...@@ -2344,6 +2350,28 @@ class project extends base { ...@@ -2344,6 +2350,28 @@ class project extends base {
} }
return ''; return '';
} }
/**
* get html code for list of files in a phase
* @param string $sPhase phase of a project
* @return string
*/
private function _renderFiles($sPhase){
$sReturn='';
$aFiles=$this->getBuildfilesByPlace($sPhase, 'ready2install');
if (!$aFiles || !$aFiles['filecount']){
return '';
}
$sReturn.='<strong>'.t("filelist").'</strong> ('.$aFiles['filecount'].'):<br>';
foreach($aFiles['files'] as $sFilename => $aData){
$sReturn.='<div class="file file-'.$aData['type'].' fileext-'.$aData['extension'].'" title="'.$sFilename.' ('.$aData['type'].')">'
. $aData['icon'] . $sFilename
// . ' ('.$aData['type'].')'
. '</div>'
;
}
$sReturn.='('.$aFiles['totalsize-hr'].')';
return $sReturn;
}
/** /**
* render html for a colored link to any project action * render html for a colored link to any project action
...@@ -2469,6 +2497,8 @@ class project extends base { ...@@ -2469,6 +2497,8 @@ class project extends base {
} }
$sRow2.='<br>' . $this->renderLink("phase", $sPhase) $sRow2.='<br>' . $this->renderLink("phase", $sPhase)
. $this->_renderHosts($sPhase) . $this->_renderHosts($sPhase)
.'<br>'
. $this->_renderFiles($sPhase)
. '</td>'; . '</td>';
} }
return '<table><thead><tr>' . $sRow1 . '</tr></thead><tbody><tr>' . $sRow2 . '</tr></tbody></table>'; return '<table><thead><tr>' . $sRow1 . '</tr></thead><tbody><tr>' . $sRow2 . '</tr></tbody></table>';
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment