mirror of
https://github.com/Karaka-Management/oms-Organization.git
synced 2026-05-29 15:38:42 +00:00
cleanup organigram render
This commit is contained in:
parent
2c921ed342
commit
b61debfd13
|
|
@ -49,51 +49,31 @@ $unitRoot = $unitTree[null][0]['children'];
|
||||||
<div style="margin: 0 auto; background: #ff0; padding: 1rem;"><?= $depEle['obj']->getName(); ?></div>
|
<div style="margin: 0 auto; background: #ff0; padding: 1rem;"><?= $depEle['obj']->getName(); ?></div>
|
||||||
|
|
||||||
<!-- positions -->
|
<!-- positions -->
|
||||||
|
<div style="margin: 0 auto; background: #fff; padding: 1rem;">
|
||||||
<ul>
|
<ul>
|
||||||
<?php
|
<?php
|
||||||
$depId = $depEle['obj']->getId();
|
$depId = $depEle['obj']->getId();
|
||||||
$posRoot = !isset($posTree[$depId]) ? [] : $posTree[$depId];
|
$posRoot = !isset($posTree[$depId]) ? [] : $posTree[$depId];
|
||||||
|
|
||||||
foreach ($posRoot as $posEle) : ?>
|
foreach ($posRoot as $posEle) : ?>
|
||||||
<li><ul>
|
|
||||||
<?php while (!empty($posEle) && $posEle['obj'] !== null) {
|
<?php while (!empty($posEle) && $posEle['obj'] !== null) {
|
||||||
if (isset($posTree[$depId][$posEle['obj']->getParent()->getId()])) {
|
if (isset($posTree[$depId][$posEle['obj']->getParent()->getId()])) {
|
||||||
// here is a bug or somewhere else... the index is not moved correctly $c is always 0
|
// here is a bug or somewhere else... the index is not moved correctly $c is always 0
|
||||||
$posTree[$depId][$posEle['obj']->getParent()->getId()]['index'] = $posTree[$depId][$posEle['obj']->getParent()->getId()]['index'] + $c + 1;
|
$posTree[$depId][$posEle['obj']->getParent()->getId()]['index'] = $posTree[$depId][$posEle['obj']->getParent()->getId()]['index'] + $c + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
$c = 0; while (!empty($posEle)) { ?>
|
||||||
<?php $c = 0; $toClosePos = 0; while (!empty($posEle)) { ?>
|
|
||||||
<li><ul>
|
|
||||||
<li><?= $posEle['obj']->getName(); ?>
|
<li><?= $posEle['obj']->getName(); ?>
|
||||||
<li><ul>
|
|
||||||
<?php
|
<?php
|
||||||
// find the closest parent who has un-rendered children
|
|
||||||
if (empty($posEle['children'])) {
|
|
||||||
$parentPos = $posEle['obj'];
|
|
||||||
|
|
||||||
do {
|
|
||||||
|
|
||||||
$parentPos = $parentPos->getParent();
|
|
||||||
$parentPosId = $parentPos->getId();
|
|
||||||
} while ($parentPosId !== \array_keys($posTree[$depId])[0]
|
|
||||||
&& $parentPosId !== $depId
|
|
||||||
&& $parentPosId !== 0
|
|
||||||
&& !isset($posTree[$depId][$parentPosId]['children'][($posTree[$depId][$parentPosId]['index'] ?? 0) + $c + 1])
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
$posEle = [];
|
$posEle = [];
|
||||||
} // if no more children go back to parrent?>
|
} // if no more children go back to parrent
|
||||||
<?= \str_repeat('</ul>', $toClosePos*2); ?>
|
|
||||||
<?php
|
|
||||||
if (isset($posTree[$depId][$parentPosId ?? 0])) {
|
if (isset($posTree[$depId][$parentPosId ?? 0])) {
|
||||||
$posEle = $posTree[$depId][$parentPosId]['children'][$posTree[$depId][$parentPosId]['index'] + $c + 1] ?? [];
|
$posEle = $posTree[$depId][$parentPosId]['children'][$posTree[$depId][$parentPosId]['index'] + $c + 1] ?? [];
|
||||||
}
|
}
|
||||||
} ?>
|
} ?>
|
||||||
</ul>
|
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</ul>
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="row" class="childdepartment">
|
<div class="row" class="childdepartment">
|
||||||
<?php
|
<?php
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user