This commit is contained in:
Dennis Eichhorn 2024-03-10 02:24:56 +00:00
parent f925019a0c
commit f5a6dca93b
17 changed files with 699 additions and 87 deletions

View File

@ -66,4 +66,298 @@ final class BackendController extends Controller
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingIncomeStatement(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-pl');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingBalance(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-balance');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingSales(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-sales');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingMaterial(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-material');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingOpex(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-opex');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingMarketing(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-marketing');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingEvent(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-event');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingLeasing(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-leasing');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingHR(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-hr');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingInvestment(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-investment');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingLoan(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-loan');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingCashflow(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-cashflow');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingProfitCenter(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-profitcenter');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
/**
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBudgetingProjects(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
{
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/BudgetManagement/Theme/Backend/budgeting-projects');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1004601001, $request, $response);
return $view;
}
}

View File

@ -16,4 +16,6 @@ return ['BudgetManagement' => [
'Segments' => 'Segmente',
'Customers' => 'Kunden',
'Monthly' => 'Monatlich',
'Category' => 'Kategorie',
'Total' => 'Gesamt',
]];

View File

@ -16,4 +16,6 @@ return ['BudgetManagement' => [
'Segments' => 'Segments',
'Customers' => 'Customers',
'Monthly' => 'Monthly',
'Category' => 'Category',
'Total' => 'Total',
]];

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -14,6 +14,99 @@ declare(strict_types=1);
echo $this->data['nav']->render();
?>
<style>
div {
box-sizing: border-box;
}
input:checked+div > div > .maximize {
display: none;
}
input+div > div > .minimize {
display: none;
}
input:checked+div > div > .minimize {
display: inline-block;
}
.title-cell {
padding: 1px;
text-align: center;
width: 95px;
}
.category {
background: #fff;
border-bottom: 1px solid #000 !important;
}
.subtotal {
background: #ffa82e;
border-bottom: 1px solid #000 !important;
}
.subtotal .total-col {
background: #ffa82e;
}
.total {
background: #ffa82e;
border-bottom: 1px solid #000 !important;
}
.total .total-col {
background: #ffa82e;
}
.total-col {
background: #cbfbcb;
}
.data-row {
display: inline-flex;
flex-direction: row;
border-bottom: 1px solid #fff;
align-items: stretch;
min-height: 34px;
}
.data-row div {
padding: .2rem 3px .2rem 3px;
display: flex;
flex-direction: column;
align-items: center;
}
.account:nth-child(2n) {
background: #f9f9f9;
}
.account:nth-child(2n + 1) {
background: #efefef;
}
.data-row div:nth-child(n+3) {
width: 95px;
justify-content: start;
}
.expand-col {
width: 30px;
min-width: 30px;
padding: 1px;
}
.name-col {
width: 150px;
min-width: 150px;
padding-left: 0px;
border-right: 1px solid #000;
overflow: clip;
align-items: start !important;
}
</style>
<div class="tabview tab-2">
<div class="box">
<ul class="tab-links">
@ -25,111 +118,155 @@ echo $this->data['nav']->render();
<div class="tab-content">
<input type="radio" id="c-tab-1" name="tabular-2"<?= $this->request->uri->fragment === 'c-tab-1' ? ' checked' : ''; ?>>
<div class="tab">
<div class="row">
<div class="col-xs-12">
<div style="background: #ff00ff99;">
<div style="display: flex; flex-direction: row; align-items: center;">
<div style="box-sizing: border-box; width: 150px; text-align: center;">Category</div>
<div style="flex: 1; text-align: center;">PY-3</div>
<div style="flex: 1; text-align: center;">PY-2</div>
<div style="flex: 1; text-align: center;">PY-1</div>
<div style="flex: 1; text-align: center;">C</div>
<div style="flex: 1; text-align: center;">B</div>
<div style="flex: 1; text-align: center;">FC</div>
<div style="flex: 1; text-align: center;">B+1</div>
<div style="flex: 1; text-align: center;">B+2</div>
<div style="flex: 1; text-align: center;">B+3</div>
<div style="flex: 1; text-align: center;">B+4</div>
<div style="flex: 1; text-align: center;">B+5</div>
</div>
</div>
<div class="row sticky" style="font-size: 0.8rem; display: flex;">
<div style="display: flex; flex-direction: row; align-items: center; color: #fff; background: #3697db; padding: .5rem 0 .5rem 0">
<div style="width: 30px; min-width: 30px; text-align: center;"></div>
<div class="name-col"><?= $this->getHtml('Category'); ?></div>
<div class="title-cell">PY-3</div>
<div class="title-cell">PY-2</div>
<div class="title-cell">PY-1</div>
<div class="title-cell">C</div>
<div class="title-cell">B</div>
<div class="title-cell">FC</div>
<div class="title-cell">B+1</div>
<div class="title-cell">B+2</div>
<div class="title-cell">B+3</div>
<div class="title-cell">B+4</div>
<div class="title-cell">B+5</div>
<div class="title-cell">B+6</div>
<div class="title-cell">B+7</div>
<div class="title-cell">B+8</div>
<div class="title-cell">B+9</div>
<div class="title-cell">B+10</div>
</div>
</div>
<?php foreach ($this->data['segmentation']['segment']->defaults as $segment) : ?>
<div class="row">
<div class="col-xs-12">
<div style="display: flex; flex-direction: row; align-items: center; background: #ff000099;">
<div style="box-sizing: border-box; width: 150px; padding-left: 0px;"><label for="iSegment<?= $segment->id; ?>-expand" class="btn"><i class="g-icon">add_circle</i><?= $this->printHtml($segment->l11n); ?></label></div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
</div>
<input id="iSegment<?= $segment->id; ?>-expand" type="checkbox" class="vh">
<div class="data-row">
<div class="expand-col">
<label for="iSegment<?= $segment->id; ?>-expand" class="btn maximize"><i class="g-icon">add_circle</i></label>
<label for="iSegment<?= $segment->id; ?>-expand" class="btn minimize"><i class="g-icon">do_not_disturb_on</i></label>
</div>
<div class="name-col"><?= $this->printHtml($segment->l11n); ?></div>
<div><input type="number" disabled></div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
</div>
<div class="checked-visibility">
<?php foreach ($this->data['segmentation']['section']->defaults as $section) : ?>
<div style="display: flex; flex-direction: row; align-items: center; background: #00ff0099;">
<div style="box-sizing: border-box; width: 150px; padding-left: 10px;"><label for="iSection<?= $section->id; ?>-expand" class="btn"><i class="g-icon">add_circle</i><?= $this->printHtml($section->l11n); ?></label></div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
</div>
<input id="iSection<?= $section->id; ?>-expand" type="checkbox" class="vh">
<div class="data-row">
<div class="expand-col">
<label for="iSection<?= $section->id; ?>-expand" class="btn maximize"><i class="g-icon">add_circle</i></label>
<label for="iSection<?= $section->id; ?>-expand" class="btn minimize"><i class="g-icon">do_not_disturb_on</i></label>
</div>
<div class="name-col"><?= $this->printHtml($section->l11n); ?></div>
<div><input type="number" disabled></div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
</div>
<div class="checked-visibility">
<?php foreach ($this->data['segmentation']['sales_group']->defaults as $salesgroup) : ?>
<div style="display: flex; flex-direction: row; align-items: center; background: #0000ff99;">
<div style="box-sizing: border-box; width: 150px; padding-left: 20px;"><label for="iSalesGroup<?= $salesgroup->id; ?>-expand" class="btn"><i class="g-icon">add_circle</i><?= $this->printHtml($salesgroup->l11n); ?></label></div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> +0.00%</div>
</div>
<input id="iSalesGroup<?= $salesgroup->id; ?>-expand" type="checkbox" class="vh">
<div class="data-row">
<div class="expand-col">
<label for="iSalesGroup<?= $salesgroup->id; ?>-expand" class="btn maximize"><i class="g-icon">add_circle</i></label>
<label for="iSalesGroup<?= $salesgroup->id; ?>-expand" class="btn minimize"><i class="g-icon">do_not_disturb_on</i></label>
</div>
<div class="name-col"><?= $this->printHtml($salesgroup->l11n); ?></div>
<div><input type="number" disabled></div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
<div><input type="number"> +0.00%</div>
</div>
<div class="checked-visibility">
<?php foreach ($this->data['segmentation']['product_group']->defaults as $productgroup) : ?>
<div style="display: flex; flex-direction: row; align-items: center; background: #ffff0099;">
<div style="box-sizing: border-box; width: 150px; padding-left: 30px;"><label for="iProductGroup<?= $productgroup->id; ?>-expand" class="btn"><i class="g-icon">add_circle</i><?= $this->printHtml($productgroup->l11n); ?></label></div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
</div>
<input id="iProductGroup<?= $productgroup->id; ?>-expand" type="checkbox" class="vh">
<div class="data-row">
<div class="expand-col">
<label for="iProductGroup<?= $productgroup->id; ?>-expand" class="btn maximize"><i class="g-icon">add_circle</i></label>
<label for="iProductGroup<?= $productgroup->id; ?>-expand" class="btn minimize"><i class="g-icon">do_not_disturb_on</i></label>
</div>
<div class="name-col"><?= $this->printHtml($productgroup->l11n); ?></div>
<div><input type="number" disabled> <input type="number" disabled> <input type="number" disabled></div>
<div><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
</div>
<div class="checked-visibility">
<?php foreach ($this->data['items'] ?? [] as $item) : ?>
<div style="display: flex; flex-direction: row; align-items: center; background: #ffffff99;">
<div style="box-sizing: border-box; width: 150px; padding-left: 40px;"><?= $this->printHtml($item->l11n); ?></div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div style="flex: 1; padding: 1px;"><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div class="data-row">
<div class="expand-col"></div>
<div class="name-col"><?= $this->printHtml($item->l11n); ?></div>
<div><input type="number" disabled> <input type="number" disabled> <input type="number" disabled></div>
<div><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div><input type="number" disabled> <input type="number" disabled> <input type="number" disabled> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
<div><input type="number"> <input type="number"> <input type="number"> +0.00%</div>
</div>
<?php endforeach; ?>
</div>
@ -142,17 +279,77 @@ echo $this->data['nav']->render();
</div>
</div>
<?php endforeach; ?>
<div class="row sticky" style="font-size: 0.8rem; display: flex;">
<div class="data-row total" style="display: flex; flex-direction: row; align-items: center; padding: .5rem 0 .5rem 0">
<div style="width: 30px; min-width: 30px; text-align: center;"></div>
<div class="name-col"><?= $this->getHtml('Total'); ?></div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
<div>123,456.00</div>
</div>
</div>
<div class="row sticky" style="font-size: 0.8rem; display: flex;">
<div class="data-row" style="display: flex; flex-direction: row; align-items: center; padding: .5rem 0 .5rem 0">
<div style="width: 30px; min-width: 30px; text-align: center;"></div>
<div class="name-col"></div>
<div></div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
<div>+0.00%</div>
</div>
</div>
</div>
<input type="radio" id="c-tab-2" name="tabular-2"<?= $this->request->uri->fragment === 'c-tab-2' ? ' checked' : ''; ?>>
<div class="tab">
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>
</div>
<input type="radio" id="c-tab-3" name="tabular-2"<?= $this->request->uri->fragment === 'c-tab-3' ? ' checked' : ''; ?>>
<div class="tab">
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>

View File

@ -0,0 +1,9 @@
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-body">
<img height="100%" width="100%" src="Web/Backend/img/under_construction.svg">
</div>
</section>
</div>
</div>