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

remove foreman; update replacements

parent d6d61bc0
No related branches found
No related tags found
1 merge request!62V2.0
......@@ -341,6 +341,8 @@
"replacement-fields": "erkannte Platzhalter:",
"replacement-fields-not-found": "Es wurden keine Platzhalter im Format <em>@replace[&quot;Name&quot;]</em> im Template gefunden.",
"replacement-targetfile": "Ziel-Datei",
"replacement-none": "Keine Ersetzungen gefunden.",
"replacement-no-templatefiles": "Keine Templatefiles f&uuml;r diese Phase gefunden.",
"replacements": "Ersetzungen mit Template-Dateien",
"repositoryinfos": "Quell-Repository",
"repository-access-browser": "Browserzugriff auf das Repo",
......
......@@ -343,6 +343,8 @@
"replacement-fields-not-found": "No placeholder in the syntax <em>@replace[&quot;name&quot;]</em> were found in the template.",
"replacement-targetfile": "Target file",
"replacements": "Replacements in template files",
"replacement-none": "No replacements were found.",
"replacement-no-templatefiles": "No template file was found for the current phase.",
"repositoryinfos": "Sourcecode Repository",
"repository-access-browser": "Browser access to sources",
"repository-auth": "Authentication/ filename of ssh private key",
......
......@@ -667,6 +667,10 @@ span.replace {
background: #fc8;
font-weight: bold;
}
span.replacehighlight {
background: #68a;
color: #fff;
}
/* ----- log table ----- */
div.vis-item{
......
......@@ -9,10 +9,10 @@
---------------------------------------------------------------------
2013-11-08 Axel <axel.hahn@iml.unibe.ch>
2024-02-28 Axel <axel.hahn@unibe.ch> remove foreman; update replacements
###################################################################### */
require_once("./classes/project_gui.class.php");
// require_once("./inc_functions.php");
require_once("./classes/config-replacement.class.php");
......@@ -34,7 +34,7 @@ if ($sPhase) {
$oConfig = new configreplacement();
$oConfig->setProject($aParams["prj"], $sPhase);
$aReplacements=$oConfig->getReplacements();
$sOutReplace.='<h3>' . $oHtml->getIcon('replace') . t("replacements") . '</h3>';
......@@ -42,6 +42,7 @@ if ($sPhase) {
// ----------------------------------------------------------------------
// Links to foreman
// ----------------------------------------------------------------------
/*
$aForeman=$oConfig->getForemanReplacements();
$aReplacementsForeman=$aForeman ? $aForeman['rules'] : false;
......@@ -54,6 +55,7 @@ if ($sPhase) {
: t('foreman-no-host')
).'<br><br>'
;
*/
// ----------------------------------------------------------------------
// Loop over files
......@@ -73,13 +75,17 @@ if ($sPhase) {
))
;
}
// $sOutReplace.='<pre>'.print_r($aReplacements, 1).'</pre>';
foreach ($aReplacements as $sFile => $aFields) {
$tTplFile = basename($sFile);
$bFileInForeman = $aReplacementsForeman && isset($aReplacementsForeman[$tTplFile]);
// $bFileInForeman = $aReplacementsForeman && isset($aReplacementsForeman[$tTplFile]);
$sDivIdFile='div4file-'.md5($sFile);
$sOutReplace.='<h4>' .
// --- link filename of template to toggle details.
$oHtml->getLink(array(
'onclick'=>'$(\'#'.$sDivIdFile.'\').slideToggle(); $(this).toggleClass(\'closed\'); return false;',
'class'=>'expandable closed',
......@@ -90,6 +96,7 @@ if ($sPhase) {
;
// --- check: does this file in foreman exist?
/*
if (!isset($aReplacementsForeman[$tTplFile])){
if ($aReplacementsForeman){
$sOutReplace.=$oHtml->getBox('error', t('foreman-error-template-unknown'));
......@@ -97,7 +104,6 @@ if ($sPhase) {
}
}
// --- check: target file was set?
$aTable=array('header'=>array(), 'body'=>array());
if ($bFileInForeman){
......@@ -133,7 +139,7 @@ if ($sPhase) {
}
$aTable['body'][]=array(
$oHtml->getIcon('replace') . $sField,
$oHtml->getIcon('replace') . $sField,
$sTd
);
}
......@@ -161,8 +167,10 @@ if ($sPhase) {
}
}
}
*/
// --- filecontent of template
/*
$ContentFile='<br>'.$sFile.'<br><br>'
.'<pre style="max-height:35em;">'
. preg_replace('/(@replace\[.*\])/U', '<span class="replace">$1</span>' , htmlentities(file_get_contents($sFile)))
......@@ -181,15 +189,64 @@ if ($sPhase) {
.'</div>'
.'</div>';
*/
// --- found replacement keys
sort($aFields);
$sReplacevars='';
$sContent=htmlentities(file_get_contents($sFile));
if ($aFields && count($aFields)){
// $sReplacevars.='<ol><li>'.implode('</li><li>', $aFields).'</li></ol>';
foreach($aFields as $sField){
$fieldId='field-'.md5($sFile.$sField);
// $sReplacevars.='<li><a href="#" onmouseover="$(\'span.replace\').removeClass(\'replacehighlight\'); $(\'span.'.$fieldId.'\').addClass(\'replacehighlight\')">'.$sField.'</a></li>';
$sReplacevars.='<li><a href="#'.$fieldId.'" '
.'onclick="$(\'span.replace\').removeClass(\'replacehighlight\'); $(\'span#'.$fieldId.'\').addClass(\'replacehighlight\');" '
.'>'.$sField.'</a></li>';
$sContent=preg_replace('#(@replace\[&quot;'.$sField.'&quot;\])#U', '<span id="'.$fieldId.'" class="replace">$1</span>' , $sContent);
}
$sReplacevars='<ol>'.$sReplacevars.'</ol>';
} else {
$sReplacevars.='-';
}
//
$sOutReplace.=$renderAdminLTE->addRow(
$renderAdminLTE->addCol(
$renderAdminLTE->getCard([
'type'=>'',
'title' => $oHtml->getIcon('file-template') . $sFile,
'variant'=>'outline',
'text'=>''
.'<pre style="max-height:35em;">'
. $sContent
.'</pre>' ,
]), 8
)
. $renderAdminLTE->addCol(
$renderAdminLTE->getCard([
'type'=>'',
'variant'=>'outline',
'title' => $oHtml->getIcon('list') . t('replacement-fields'),
'text'=>''
//. $oHtml->getTable($aTable)
. $sReplacevars
]), 4
)
)
.'</div>' // close <div class="divfileinfos">
;
}
} else {
$sOutReplace.=t('none');
$aFiles=$oConfig->getTemplatefiles();
$sOutReplace.=$oHtml->getBox('info', $aFiles ? t('replacement-none') : t('replacement-no-templatefiles'));
}
// --- reverse check - do templates in foreman physically exist?
// for testing: create a testfile
// $aReplacementsForeman['dummytemplate.erb']=array();
/*
if($aReplacementsForeman){
foreach(array_keys($aReplacementsForeman) as $sForemanTemplate){
......@@ -219,6 +276,7 @@ if ($sPhase) {
}
}
}
*/
if (count($aWarnings)){
$sOutReplace.=$oHtml->getBox('warning', '<ul><li>'.implode('<li>', $aWarnings).'</ul>');
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment