526
| <![CDATA[<script type="text/javascript">
var imagemApliada = Vue.component('imagem-ampliada', {
template: '\
<img v-bind:src="imagem.ampliada" class="vue-modal-gallery-keep-open" v-if="visible">\
<img v-bind:src="imagem.ampliadaMobile" v-else class="vue-modal-gallery-keep-open" v-if="visible">\
',
props: ['imagem', 'visible'],
computed: {
imagemAmpliada: function () {
if (typeof window.orientation !== 'undefined' || window.innerWidth < 700) {
return false;
}
return true;
},
},
data: function () {
return {
};
},
});
var videoApliado = Vue.component('video-ampliado', {
template: '\
<iframe class="videos-youtube vue-modal-gallery-keep-open" width="100%"\
height="100%"\
frameborder="0"\
allowfullscreen\
v-bind:src="video.urlEmbed + \'?enablejsapi=1\'"></iframe>\
',
props: ['video'],
data: function () {
return {
};
},
});
var vueGaleriaModal = new Vue({
el: '#galeriaVue_modal',
data: {
state: "closed",
index: 0,
selector: 0,
galeriaVideos: [],
galeriaImagens: [
{
"creditos": "Patr\u00edcia Finch - ASCOM C\u00e2mara de Vereadores de SJC.",
"legenda": "",
"original": "\/uploads\/7\/imagens\/2908651.JPG",
"thumb": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908651_resample_fixo_130_130.JPG",
"ampliada": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908651_resize_1500_1500.JPG",
"ampliadaMobile": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908651_resize_500_500.JPG"
},
{
"creditos": "Patr\u00edcia Finch - ASCOM C\u00e2mara de Vereadores de SJC.",
"legenda": "",
"original": "\/uploads\/7\/imagens\/2908653.JPG",
"thumb": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908653_resample_fixo_130_130.JPG",
"ampliada": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908653_resize_1500_1500.JPG",
"ampliadaMobile": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908653_resize_500_500.JPG"
},
{
"creditos": "Patr\u00edcia Finch - ASCOM C\u00e2mara de Vereadores de SJC.",
"legenda": "",
"original": "\/uploads\/7\/imagens\/2908652.JPG",
"thumb": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908652_resample_fixo_130_130.JPG",
"ampliada": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908652_resize_1500_1500.JPG",
"ampliadaMobile": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908652_resize_500_500.JPG"
},
{
"creditos": "Patr\u00edcia Finch - ASCOM C\u00e2mara de Vereadores de SJC.",
"legenda": "",
"original": "\/uploads\/7\/imagens\/2908650.JPG",
"thumb": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908650_resample_fixo_130_130.JPG",
"ampliada": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908650_resize_1500_1500.JPG",
"ampliadaMobile": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908650_resize_500_500.JPG"
}
],
galeriaMultimidia: [],
thumbsVisiveis: 7
},
computed: {
totalMidias: function(){
return this.galeriaVideos.length + this.galeriaImagens.length;
},
showPrevSelector: function(){
thumbsVisiveis = this.thumbsVisiveis;
if (this.selector === 0) {
return false;
}
return (this.totalMidias > thumbsVisiveis) ? true : false;
},
showNextSelector: function(){
thumbsVisiveis = this.thumbsVisiveis;
if((this.totalMidias - this.selector - thumbsVisiveis) <= 0){
return false;
}
return (this.totalMidias > thumbsVisiveis) ? true : false;
},
hasSelectors: function() {
return this.totalMidias > 7;
}
},
created: function () {
var vue = this;
window.addEventListener('keydown', function (event) {
vue.monitorarTeclado(event);
vue.resizeSelector();
});
},
methods: {
getBackgroundSrc: function(src){
if(this.state !== "closed") {
return 'url('+src+')';
} else {
return null;
}
},
ampliarImagem: function (index) {
var _self = this;
window.setTimeout(function(){
_self.state = "opened";
},500);
this.trocarImagem(index);
$('#galeriaVue_modal').fadeIn();
},
pausarVideos: function () {
$('.videos-youtube').each(function () {
this.contentWindow.postMessage('{"event":"command","func":"' + 'stopVideo' + '","args":""}', '*');
});
},
fecharGaleria: function () {
if (this.state == "opened") {
this.pausarVideos();
this.state = "closed";
$('#galeriaVue_modal').fadeOut();
}
},
prev: function () {
index = this.index;
if (index > 0) {
index--;
this.trocarImagem(index);
}
else {
index = this.numItens() - 1;
this.trocarImagem(index);
}
},
next: function () {
index = this.index;
if (index < this.numItens() - 1) {
index++;
this.trocarImagem(index);
}
else {
this.trocarImagem(0);
}
},
prevSelector: function () {
if (this.selector > 0) {
this.selector--;
this.ajustarSelector();
}
},
nextSelector: function () {
this.selector++;
this.ajustarSelector();
},
ajustarSelector: function () {
if(this.hasSelectors){
var liWidth = $('#galeriaVue_modal .selector .sliderSelector .list-selector li').outerWidth(true);
var marginAdjuste = -(liWidth * this.selector);
var sliderSelector = $('#galeriaVue_modal .selector .sliderSelector').width();
var listSelector = $('#galeriaVue_modal .sliderSelector .list-selector').width();
var consult = listSelector + marginAdjuste + liWidth;
if (consult > sliderSelector) {
$('#galeriaVue_modal .selector .sliderSelector .list-selector').css('margin-left', marginAdjuste);
}
else {
this.prevSelector();
}
}
},
trocarImagem: function (index = 0) {
this.pausarVideos();
this.index = index;
var li = $('#galeriaVue_modal .list-ampliadas li:eq(' + index + ')');
$('#galeriaVue_modal .list-ampliadas li').hide();
li.fadeIn();
li.css('display', 'flex');
$('#galeriaVue_modal .head .legenda').hide();
$('#galeriaVue_modal .head .legenda:eq(' + index + ')').fadeIn();
var thumbsVisiveis = this.thumbsVisiveis;
var metadeThumbsVisiveis = Math.floor(thumbsVisiveis/2);
var selector = index - metadeThumbsVisiveis;
if (selector > 0) {
this.selector = selector;
this.ajustarSelector();
} else {
this.selector = 0;
this.ajustarSelector();
}
if (li.hasClass('video-vue')) {
var video = this.galeriaVideos[index];
$('#galeriaVue_modal .download').hide();
}
else {
index -= this.galeriaVideos.length;
if(index < this.galeriaImagens.length) {
var imagem = this.galeriaImagens[index];
$('#galeriaVue_modal .download').show();
$('#galeriaVue_modal .download a').attr('href', imagem.original);
}
else {
index -= this.galeriaImagens.length;
var imagem = this.galeriaMultimidia[index];
if(imagem.tipo == 'imagem') {
$('#galeriaVue_modal .download').show();
$('#galeriaVue_modal .download a').attr('href', imagem.original);
} else {
$('#galeriaVue_modal .download').hide();
}
}
}
},
ampliarSelector: function () {
$('#galeriaVue_modal .selector').addClass('ampliado');
this.resizeSelector();
},
reduzirSelector: function () {
$('#galeriaVue_modal .selector').removeClass('ampliado');
this.resizeSelector();
},
resizeSelector: function () {
var liWidth = $('#galeriaVue_modal .selector .sliderSelector .list-selector li').outerWidth(true);
$('#galeriaVue_modal .selector .sliderSelector .list-selector').width(liWidth * $('.selector .sliderSelector .list-selector li').length);
var thumbsVisiveis = Math.floor($('#galeriaVue_modal .selector .sliderSelector').width() / liWidth);
this.thumbsVisiveis = thumbsVisiveis;
this.ajustarSelector();
},
monitorarTeclado: function (event) {
if (event.keyCode == 27)
this.fecharGaleria();
else if (event.keyCode == 37)
this.prev();
else if (event.keyCode == 38)
this.ampliarSelector();
else if (event.keyCode == 39)
this.next();
else if (event.keyCode == 40)
this.reduzirSelector();
},
numItens: function () {
return this.galeriaImagens.length +
this.galeriaMultimidia.length +
this.galeriaVideos.length;
},
isActive: function(index){
return (this.index == index);
}
},
watch: {
state: function(){
this.resizeSelector();
}
}
});
jQuery(function ($) {
vueGaleriaModal.resizeSelector();
$(window).on("click", function (event) {
if ($(event.target).data('close-modal') == true) {
vueGaleriaModal.fecharGaleria();
}
if (!$(event.target).hasClass("vue-modal-gallery-keep-open")) {
if ($(event.target).parents(".vue-modal-gallery-keep-open").size() === 0) {
vueGaleriaModal.fecharGaleria();
}
}
});
});
</script>]]>
|
841
| <![CDATA[<script type="text/javascript">
var vueGaleria = new Vue({
el: '#galeriaVue',
data: {
index: 0,
galeriaVideos: [],
galeriaImagens: [
{
"creditos": "Patr\u00edcia Finch - ASCOM C\u00e2mara de Vereadores de SJC.",
"legenda": "",
"original": "\/uploads\/7\/imagens\/2908651.JPG",
"thumb1": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908651_resample_600_600.JPG",
"thumb2": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908651_resample_fixo_500_500.JPG",
"thumb3": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908651_resample_fixo_200_200.JPG",
"principal": true,
"ampliada": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908651_resize_1500_1500.JPG"
},
{
"creditos": "Patr\u00edcia Finch - ASCOM C\u00e2mara de Vereadores de SJC.",
"legenda": "",
"original": "\/uploads\/7\/imagens\/2908653.JPG",
"thumb1": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908653_resample_600_600.JPG",
"thumb2": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908653_resample_fixo_500_500.JPG",
"thumb3": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908653_resample_fixo_200_200.JPG",
"principal": false,
"ampliada": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908653_resize_1500_1500.JPG"
},
{
"creditos": "Patr\u00edcia Finch - ASCOM C\u00e2mara de Vereadores de SJC.",
"legenda": "",
"original": "\/uploads\/7\/imagens\/2908652.JPG",
"thumb1": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908652_resample_600_600.JPG",
"thumb2": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908652_resample_fixo_500_500.JPG",
"thumb3": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908652_resample_fixo_200_200.JPG",
"principal": false,
"ampliada": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908652_resize_1500_1500.JPG"
},
{
"creditos": "Patr\u00edcia Finch - ASCOM C\u00e2mara de Vereadores de SJC.",
"legenda": "",
"original": "\/uploads\/7\/imagens\/2908650.JPG",
"thumb1": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908650_resample_600_600.JPG",
"thumb2": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908650_resample_fixo_500_500.JPG",
"thumb3": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908650_resample_fixo_200_200.JPG",
"principal": false,
"ampliada": "https:\/\/static.fecam.net.br\/thumbs\/7\/2908650_resize_1500_1500.JPG"
}
],
galeriaMultimidia: [],
modal: vueGaleriaModal
},
created: function () {
let numItens = this.galeriaImagens.length +
this.galeriaMultimidia.length +
this.galeriaVideos.length;
let classGaleria = 'num-imagens-veja-mais';
if(numItens <= 12) {
classGaleria = 'num-imagens-' + numItens;
}
$('#galeriaVue .list-thumbs').addClass(classGaleria);
},
methods: {
abrirModal: function (index) {
this.modal.ampliarImagem(index);
},
}
});
</script>]]>
|