{% extends "base.html.twig" %}
{% block pageTitle %} Archivio Opere {% endblock %}
{% block pageStyle %} {{ parent() }} {% endblock %}
{% block pageScriptsHeader %}
{{ parent() }}
<script src="{{ asset('js/masonry.pkgd.js') }}"></script>
<script src="https://unpkg.com/imagesloaded@4/imagesloaded.pkgd.min.js"></script>
{% endblock %}
{% block navigation %} {{ parent() }} {% endblock %}
{% block upperMainContainer %}
{% endblock %}
{% block mainContainer %}
<div class="container cortelazzo-font-regular">
<div class="row">
<div class="col-auto">
<span class="h1 cortelazzo-titles cortelazzo-font-bold">{{ 'Opere' | upper }}</span>
</div>
{{ form_start(form_operas_type_and_year, {'method': 'POST', 'class': 'col-auto mt-3'}) }}
<div class="input-group">
<div class="col-auto mt-3">
{{ form_widget(form_operas_type_and_year.operas_type, {'attr': {'class': 'custom-select frontend-custom-select rounded-0', 'style':'min-width: 140px;'}}) }}
</div>
<div class="col-auto mt-3">
{{ form_widget(form_operas_type_and_year.year, {'attr': {'class': 'custom-select frontend-custom-select rounded-0', 'style':'min-width: 150px;'}}) }}
</div>
</div>
{{ form_end(form_operas_type_and_year) }}
<div class="col-auto mt-3 pt-1 fronted-custom-color">
<a class="fronted-inherited-color" href="{{ path('opere') }}">{{'reset Selezioni'|upper}}</a>
</div>
<div class="col-auto mt-3 pt-1 fronted-custom-color">
<a class="fronted-inherited-color" href="{{ path('opereAdvancedSearch') }}">{{'Ricerca avanzata'|upper}}</a>
</div>
<div class="col-xl-12">
<hr/>
</div>
</div>
<!-- Images -->
<div class="row" id="image-container">
{% for opera in opere %}
{% if not cover_presence[opera.id] %}
{% for m in opera.multimedias | slice(0, 1) %}
{% if m.multimedia.tipo == "image" %}
<div class="col-xl-3 card-item" data-idcard="{{ opera.id }}" >
<a class="hover-underline-removal" href="{{ path("archivio-opere-scheda", {"idopera": opera.id}) }}">
<img class="card-img-top card-img-top-custom" src="{{ asset(uploaded_img_normal ~ m.multimedia.fileref ~ '.' ~ m.multimedia.estensione) }}" alt="{{ m.multimedia.nome }}">
<div class="card-body card-body-custom">
<h5 class="card-title">{{ opera.titolo | replace({"<": "(", ">": ")"}) }}</h5>
</div>
</a>
</div>
{% endif %}
{% endfor %}
{% else %}
{% for m in opera.multimedias %}
{% if m.multimedia.tipo == "image" and m.cover %}
<div class="col-xl-3 card-item" data-idcard="{{ opera.id }}" >
<a class="hover-underline-removal" href="{{ path("archivio-opere-scheda", {"idopera": opera.id}) }}">
<img class="card-img-top card-img-top-custom" src="{{ asset(uploaded_img_normal ~ m.multimedia.fileref ~ '.' ~ m.multimedia.estensione) }}" alt="{{ m.multimedia.nome }}">
<div class="card-body card-body-custom">
<h5 class="card-title">{{ opera.titolo | replace({"<": "(", ">": ")"}) }}</h5>
</div>
</a>
</div>
{% endif %}
{% endfor %}
{% endif %}
{% endfor %}
</div>
<div class="row mt-5 mb-5 text-center">
{% if opere | length != 0 %}
<div class="col-sm-12">
<button id="load-images" type="button" class="btn btn-light btn btn-outline-dark">{{'Carica altre opere'|upper}}</button>
</div>
{% else %}
<div class="col-xl-12">
<div class="alert alert-light" role="alert">
Non sono presenti opere in questa sezione.
</div>
</div>
{% endif %}
</div>
</div>
<!-- Modal can't load opere -->
<div class="modal fade" id="modal-endload-opera" tabindex="-1" role="dialog" aria-labelledby="modal-endload-opera-title" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="modal-endload-opera-title">Avviso</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
Non ci sono più opere da caricare
</div>
<div class="modal-footer">
<button type="button" class="btn btn-danger" id="opera-endload-confirmed">Conferma</button>
</div>
</div>
</div>
</div>
<div class="d-none" id="choices-tipoopera-year" data-selectedyear="{{ selected_year }}" data-selectedtipoopera="{{ selected_tipoopera }}"></div>
<script type="text/javascript">
$(document).ready(function(){
var container = $('#image-container');
// container.imagesLoaded()
// .done(function(){
// container.masonry({
// itemSelector: '.card-item',
// horizontalOrder: true
// });
// });
$("#opera-endload-confirmed").click(function(){
$("#modal-endload-opera").modal("hide");
});
$("#load-images").click(function(){
var selected_operas = $(".card-item").map(function() {
return $(this).data("idcard");
}).get();
var year = $("#choices-tipoopera-year").data("selectedyear");
var sigla = $("#choices-tipoopera-year").data("selectedtipoopera");
$.ajax({
url: "{{ path('opereAjax') }}",
method: "POST",
data: { selected_operas : selected_operas, selected_year : year, selected_sigla : sigla },
dataType: "json",
success: function(data, status, jqXHR){
var data_folder = '{{ asset(uploaded_img_normal) }}';
if(data.opere.length !== 0){
for(index = 0; index < data.opere.length; index++)
{
var fileref = data.opere[index].fileref;
fileref = fileref.replace(new RegExp("-", "g"), "");
var file_path = data_folder + fileref + '.' + data.opere[index].estensione;
var opera_title = data.opere[index].titolo;
var id_opera = data.opere[index].idopera;
var current_element = "<div class='col-xl-3 card-item' data-idcard='" + id_opera + "'>";
current_element += "<a class='hover-underline-removal' href='{{ path("opere") }}/" + id_opera + "'>";
current_element += "<img src='" + file_path + "' alt='' class='card-img-top card-img-top-custom' alt='" + opera_title + "'>";
current_element += "<div class='card-body card-body-custom'>";
current_element += "<h5 class='card-title'>" + opera_title + "</h5>";
current_element += "</a>";
current_element += "</div>";
current_element += "</div>";
var ce = $(current_element);
var container = $("#image-container");
container.append(ce);
// container.masonry('appended', ce);
// container.imagesLoaded()
// .done(function(){
// container.masonry({
// itemSelector: '.card-item',
// horizontalOrder: true
// });
// });
}
}else{
$("#modal-endload-opera").modal("show");
}
}
});
});
});
</script>
{% endblock %}