<?php
namespace App\Controller;
use Pimcore\Controller\FrontendController;
use Symfony\Component\HttpFoundation\Request;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use Pimcore\Model\DataObject\AbstractObject;
use \Pimcore\Model\DataObject;
class GewehrController extends FrontendController
{
/**
* @Template
*/
public function defaultAction(Request $request)
{
return [];
}
public function productAction(Request $request)
{
return $this->render('gewehr/product.html.twig', ["foo" => $request]);
}
public function systemOverviewAction(Request $request)
{
return $this->render('gewehr/system-overview.html.twig', ["foo" => $request]);
}
public function productTableAction(Request $request)
{
return $this->render('gewehr/product-table.html.twig', ["foo" => $request]);
}
public function productFolderAction(Request $request)
{
if ('object' === $request->get('type')) {
$asset = AbstractObject::getById((int) $request->get('id'));
if ('folder' === $asset->getType()) {
$children = $asset->getChildren();
$assets = [];
$systems = [];
foreach ($children as $kid) {
$asset = DataObject\Konfiguration::getById($kid->getId());
if ($asset != null) {
$groups = $asset->getSchaft()->getTechnischeDaten()->getGroups();
$asset->technical = [];
foreach ($groups as $group) {
$keys = $group->getKeys();
foreach ($keys as $key) {
// $groupPush = array(
// 'name' => $key->getConfiguration()->getTitle(),
// 'value' => $key->getValue()->getValue(),
// 'unit' => $key->getValue()->getUnit()->getAbbreviation()
// );
// array_push($asset->technical, $groupPush);
}
}
if (!in_array($asset->getSystem()->getId(), $systems)) {
array_push($systems, $asset->getSystem()->getId());
$push = array(
'system' => $asset->getSystem(),
'elements' => [],
'schaft' => []
);
array_push($push['elements'], $asset);
array_push($assets, $push);
} else {
$pos = array_search($asset->getSystem()->getId(), $systems);
array_push($assets[$pos]['elements'], $asset);
}
}
// array_push($assets, $kid->getId());
}
return $this->render('gewehr/product-folder.html.twig', ['assets' => $assets]);
// }
}
}
return $this->render('gewehr/product-folder.html.twig', ["assets" => $request->get('type')]);
}
}