1
0
mirror of https://github.com/ToxicCrack/PrintABrick.git synced 2025-05-18 13:10:08 -07:00

Add set list block to model/part page

This commit is contained in:
Unknown 2017-06-08 14:03:11 +02:00
parent 3ec5d11782
commit 32c8f8e03b
7 changed files with 88 additions and 96 deletions

View File

@ -75,6 +75,7 @@ model:
subparts: Subparts
related: Related bricks
parents: Parent bricks
sets: Sets
page:
model.index: Browse bricks
@ -124,6 +125,7 @@ empty:
message: Sorry, no reviews found on Brickset
models:
search.title: No results found for your search criteria
sets.title: This model/part is not used in any set
part:
id: Number
@ -133,6 +135,7 @@ part:
alternates: Alternate parts
molds: Molds of part
prints: Prints
sets: Sets
form:
search.submit: Search

View File

@ -107,28 +107,3 @@
{% include 'footer.html.twig' %}
</div>
{% endblock %}
{% block javascripts %}
{{ parent() }}
<!-- Go to www.addthis.com/dashboard to customize your tools -->
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-593560849f04e2fa"></script>
<script type="text/javascript">
$(document).ajaxComplete(function () {
$("#results").on( "click", ".pagination a", function (e){
e.preventDefault();
var page = $(this).attr("href"); //get page number from link
$.ajax({
type: 'GET',
url: page,
dataType: 'json',
success: function (data) {
$('#results').replaceWith(data);
}
});
});
});
</script>
{% endblock %}

View File

@ -25,7 +25,6 @@
</div>
<div class="column six wide">
<div class="item-info ui">
<div class="addthis_inline_share_toolbox"></div>
<table class="ui very basic table">
<tr>
<td>{{ 'model.id' | trans }}</td>
@ -76,16 +75,22 @@
</div>
</div>
<div class="ui vertical segment">
{% set related = submodels is not empty or siblings is not empty or model.parents is not empty %}
<div class="ui tabular pointing secondary menu stackable">
<div class="container ui">
<a class="item active" data-tab="related">{{ 'model.related' | trans }}</a>
<a class="item" data-tab="sets">{{ 'model.sets' | trans }}</a>
{#<a class="item" data-tab="parents">{{ 'model.parents' | trans }} ({{ model.parents|length }})</a>#}
{% if related %}
<a class="item setTab {% if app.session.get('tab') != 'sets' %}active{% endif %}" data-tab="related">{{ 'model.related' | trans }}</a>
{% endif %}
<a class="item setTab {% if app.session.get('tab') == 'sets' or not related %}active{% endif %}" data-tab="sets">{{ 'model.sets' | trans }} ({{ setCount }})</a>
</div>
</div>
<div class="container ui">
<div class="ui tab active" data-tab="related">
{% if submodels is not empty or siblings is not empty or model.parents is not empty %}
<div class="ui tab {% if app.session.get('tab') != 'sets' %}active{% endif %}" data-tab="related">
{% if submodels is not empty %}
<div class="segment vertical ui">
<h3 class="header">Submodels</h3>
<div class="ui grid doubling ten column row parts">
@ -96,7 +101,8 @@
{% endfor %}
</div>
</div>
{% endif %}
{% if siblings is not empty %}
<div class="segment vertical ui">
<h3 class="header">Siblings</h3>
<div class="ui grid doubling ten column row parts">
@ -108,7 +114,8 @@
{% endfor %}
</div>
</div>
{% endif %}
{% if model.parents is not empty %}
<div class="segment vertical ui">
<h3 class="header">Parents</h3>
<div class="ui grid doubling ten column row parts">
@ -120,11 +127,12 @@
{% endfor %}
</div>
</div>
{% endif %}
</div>
{% endif %}
<div class="ui tab ajax-load" data-tab="sets" data-src="{{ path('model_sets', { id: model.id, page: app.request.get('page') }) }}">
<div class="ui active centered inline loader"></div>
<div class="ui tab {% if app.session.get('tab') == 'sets' or not related %}active{% endif %}" data-tab="sets">
{{ render(path('model_sets', { id: model.id, page: app.request.get('page') })) }}
</div>
</div>
</div>

View File

@ -2,35 +2,37 @@
{% import 'macros/elements.html.twig' as elements %}
{% block content %}
<div id="results">
{% if sets.paginationData['totalCount'] %}
<div class="ui header segment basic sort">
<div class="ui grid stackable">
<div class="left floated left aligned twelve wide column">
<div class="ui text menu">
<div class="header item">Sort By</div>
<div class="five wide column">
<div class="ui text left floated menu">
<div class="header item">Showing</div>
<span class="item">{{ sets.paginationData['firstItemNumber']~' - '~sets.paginationData['lastItemNumber'] }} of {{ sets.getTotalItemCount }} items</span>
</div>
</div>
<div class="eleven wide column">
<div class="ui text right floated menu">
<div class="header item">Sort By</div>
{{ knp_pagination_sortable(sets, 'Number', ['s.id']) }}
{{ knp_pagination_sortable(sets, 'Year', ['s.year']) }}
{{ knp_pagination_sortable(sets, 'Name', ['s.name']) }}
{{ knp_pagination_sortable(sets, 'Parts', ['s.partCount']) }}
</div>
</div>
<div class="right floated right aligned four wide column">
<div class="ui text right floated menu">
<div class="header item">Showing</div>
<span class="item">{{ sets.getTotalItemCount }}</span>
</div>
</div>
</div>
</div>
{% endif %}
<div class="ui segment basic">
{% block sets %}
<div class="ui eight column doubling grid sets">
{% for set in sets %}
{{ blocks.set(set) }}
{% else %}
{{ blocks.empty('empty.search.title' | trans ) }}
{{ blocks.empty('empty.sets.title' | trans ) }}
{% endfor %}
</div>
{% endblock %}
@ -38,5 +40,4 @@
<div class="ui segment basic">
{{ knp_pagination_render(sets) }}
</div>
</div>
{% endblock %}

View File

@ -77,9 +77,15 @@
</div>
</div>
<div class="ui vertical segment">
<div class="ui tabular pointing secondary menu stackable">
<div class="container ui">
<div class="ui ajax-load" data-tab="sets" data-src="{{ path('part_sets', { id: part.id, page: app.request.get('page') }) }}">
<div class="ui active centered inline loader"></div>
<a class="item active" data-tab="sets">{{ 'part.sets' | trans }} ({{ setCount }})</a>
</div>
</div>
<div class="container ui">
<div class="ui tab active" data-tab="sets" >
{{ render(path('part_sets', { id: part.id, page: app.request.get('page') })) }}
</div>
</div>
</div>

View File

@ -70,7 +70,6 @@
</td>
</tr>
</table>
<div class="addthis_inline_share_toolbox"></div>
</div>
</div>
</div>