1
0
mirror of https://github.com/ToxicCrack/PrintABrick.git synced 2025-05-17 21:00:09 -07:00

Move PartController

This commit is contained in:
Unknown 2017-06-02 03:24:49 +02:00
parent a404d625d7
commit 00d455210d
3 changed files with 74 additions and 91 deletions

View File

@ -0,0 +1,66 @@
{% extends 'base.html.twig' %}
{% import 'macros/blocks.html.twig' as blocks %}
{% block header %}{{ part.name }}{% endblock %}
{% block content %}
<div class="ui vertical segment alternate stripe">
<div class="ui container stackable grid">
<div class="row">
<div class="column ten wide">
<div id="model-viewer" class="model-container">
{{ blocks.partImage(part.id,'part_large') }}
</div>
</div>
<div class="column six wide">
<div class="item-info ui">
<table class="ui very basic table">
<tr>
<td>{{ 'part.id' | trans }}</td><td><h2>{{ part.id}}</h2></td>
</tr>
<tr>
<td>{{ 'part.name' | trans }}</td><td>{{ part.name}}</td>
</tr>
<tr>
<td>{{ 'part.category' | trans }}</td><td>{{ part.category ? part.category.name }}</td>
</tr>
<tr>
<td>{{ 'part.model' | trans }}</td>
<td>
{% if part.model %}
<a href="{{ url('model_detail', {'id': part.model.id})}}">{{ part.model.id }}</a>
{% endif %}
</td>
</tr>
{% if apiPart %}
<tr>
<td>{{ 'part.alternates' | trans }}</td>
<td>
{% for alternate in apiPart.alternates %}
<a href="{{ url('reb_part_detail', {'id': alternate})}}">{{ alternate }}</a>
{% endfor %}
</td>
</tr>
<tr>
<td>{{ 'part.molds' | trans }}</td>
<td>
{% for mold in apiPart.molds %}
<a href="{{ url('reb_part_detail', {'id': mold})}}">{{ mold }}</a>
{% endfor %}
</td>
</tr>
<tr>
<td></td>
<td><a class="rebrickable link" href="{{ apiPart.url }}">Rebrickable</a></td>
</tr>
{% endif %}
</table>
<a class="ui disabled fluid primary button"><i class="download icon"></i> {{ 'model.empty'|trans }}</a>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@ -1,81 +0,0 @@
{% extends 'base.html.twig' %}
{% import 'macros/blocks.html.twig' as blocks %}
{% block header %}{{ part.name }}{% endblock %}
{% block content %}
<div class="ui grid">
<div class="column ten wide">
<div id="model-viewer" class="model-container">
{{ blocks.partImage(part.id,'part_large') }}
</div>
</div>
<div class="column six wide">
<div class="item-info ui">
<table class="ui very basic table">
<tr>
<td>{{ 'part.id' | trans }}</td><td><h2>{{ part.id}}</h2></td>
</tr>
<tr>
<td>{{ 'part.name' | trans }}</td><td>{{ part.name}}</td>
</tr>
<tr>
<td>{{ 'part.category' | trans }}</td><td>{{ part.category ? part.category.name }}</td>
</tr>
<tr>
<td>{{ 'part.model' | trans }}</td>
<td>
{% if part.model %}
<a href="{{ url('model_detail', {'id': part.model.id})}}">{{ part.model.id }}</a>
{% endif %}
</td>
</tr>
{% if apiPart %}
<tr>
<td>{{ 'part.alternates' | trans }}</td>
<td>
{% for alternate in apiPart.alternates %}
<a href="{{ url('reb_part_detail', {'id': alternate})}}">{{ alternate }}</a>
{% endfor %}
</td>
</tr>
<tr>
<td>{{ 'part.molds' | trans }}</td>
<td>
{% for mold in apiPart.molds %}
<a href="{{ url('reb_part_detail', {'id': mold})}}">{{ mold }}</a>
{% endfor %}
</td>
</tr>
<tr>
<td>{{ 'part.prints' | trans }}</td>
<td>
{% for mold in apiPart.prints %}
<a href="{{ url('reb_part_detail', {'id': mold})}}">{{ mold }}</a>
{% endfor %}
</td>
</tr>
<tr>
<td></td>
<td><a class="rebrickable link" href="{{ apiPart.url }}">Rebrickable</a></td>
</tr>
{% endif %}
</table>
</div>
</div>
</div>
{#<div class="segment ui vertical">#}
{#<h4 class="ui horizontal divider header">#}
{#<i class="puzzle icon"></i> Sets#}
{#</h4>#}
{#<div class="ui eight column grid">#}
{#{% for set in sets %}#}
{#{{ blocks.set(set) }}#}
{#{% endfor %}#}
{#</div>#}
{#</div>#}
{% endblock %}

View File

@ -1,6 +1,6 @@
<?php
namespace AppBundle\Controller\Rebrickable;
namespace AppBundle\Controller;
use AppBundle\Api\Exception\EmptyResponseException;
use AppBundle\Entity\Rebrickable\Part;
@ -11,22 +11,23 @@ use Symfony\Bundle\FrameworkBundle\Controller\Controller;
/**
* Part controller.
*
* @Route("rebrickable/parts")
* @Route("parts")
*/
class PartController extends Controller
{
/**
* Finds and displays a part entity.
*
* @Route("/{id}", name="reb_part_detail")
* @Route("/{id}", name="part_detail")
*/
public function detailAction(Part $part)
{
$em = $this->getDoctrine()->getManager();
$apiPart = null;
if ($part) {
if($model = $part->getModel()) {
$this->redirectToRoute('model_detail',['id' => $model->getId()]);
}
try {
$apiPart = $this->get('api.manager.rebrickable')->getPart($part->getId());
} catch (EmptyResponseException $e) {
@ -35,12 +36,9 @@ class PartController extends Controller
$this->addFlash('error', $e->getMessage());
}
$sets = $part != null ? $em->getRepository(Set::class)->findAllByPartNumber($part->getId()) : null;
return $this->render('rebrickable/part/detail.html.twig', [
return $this->render('part/detail.html.twig', [
'part' => $part,
'apiPart' => $apiPart,
'sets' => $sets,
]);
}