(function($){
"use strict";
window.yotupro={
init:function (){
console.log("yotupro init");
yotuwp.add_action('after_play_video', yotupro.player.actions);
yotuwp.add_filter('next_prev', yotupro.player.next_prev);
yotuwp.add_action('lightbox_actions', yotupro.player.lightbox_actions);
yotuwp.add_action('loadmore-carousel', yotupro.loadmore.carousel);
yotuwp.add_action('loadmore-masonry', yotupro.loadmore.masonry);
$('.yotu-mode-masonry').each(function (el){
var obj=$(this);
new Masonry(obj.find('ul').get(0), {
itemSelector: 'li',
columnWidth: 'li'
});
});
$(".yotu-videos.yotu-mode-big-left ul, .yotu-videos.yotu-mode-big-right ul").scroll(function (){
var elm=$(this),
lelm=elm.find('.yotu-last:last-child');
if(!lelm.get(0)) return;
var st=elm.scrollTop(),
max_point=lelm.get(0).offsetTop - this.offsetTop - $(this).outerHeight() + 50,
parent=$(this).closest('.yotu-template-big-left,.yotu-template-big-right');
if(st >=max_point){
parent.find('.yotu-pagination').addClass('yotu-scroll-show');
}else if(parent.find('.yotu-pagination').has('yotu-scroll-show')){
parent.find('.yotu-pagination').removeClass('yotu-scroll-show');
}});
$("[class*='yotuwp-modal']").click(function(e){
e.preventDefault();
if($(e.target).closest('.yotu-videos, .yotu-pagination').length==0){
var ytelm=$(e.target).closest('.yotuwp');
ytelm.addClass('yotuwp-modal-hide');
yotuwp.data.players[ytelm.data('yotu')].pauseVideo();
}});
$("[class*='yotuwp-rel'], [class^='yotuwp-rel']").click(function(e){
e.preventDefault();
var elmclass=$(this).attr('class'),
rel=elmclass.match(/yotuwp-rel-(\S+)/g),
modal=$('.'+rel[0].replace('rel', 'modal'));
$(modal).css('display', 'block').removeClass('yotuwp-modal-hide');
});
},
player:{
next_prev: function (html_a){
html_a=['<div class="yotu-lightbox">',
'<div class="yotu-lightbox-body">',
'<div class="yotu-lightbox-content yotu-wrapper-player">',
'<div class="yotu-playing"></div>',
'<div class="yotu-player"><div id="yotu-player-modal"></div></div>',
'<div class="yotu-playing-status"></div>',
'</div>',
'<a href="#" class="yotu-lightbox-func" data-func="prev" title="'+yotuwp.l(8)+'"><span class="yotuicon-prev"></span></a>',
'<a href="#" class="yotu-lightbox-func" data-func="next" title="'+yotuwp.l(7)+'"><span class="yotuicon-next"></span></a>',
'</div>',
'<div class="yotu-thumbnails-wrp" data-yotu="modal"><div id="yotu-thumbnails" class="yotu-thumbnails owl-carousel"></div></div>',
'<a href="#" class="yotu-lightbox-close" title=""><span class="yotuicon-close"></span></a>',
'<div class="yotu-copyright"><a href="http://bit.ly/yotuwp-popup" rel="nofollow" target="_blank">Power by YoutuWP</a></div>',
'<div class="yotu-lightbox-overlay"></div>',
'</div>'];
return html_a;
},
actions:function (loaded_ids, video, player){
for(var i=0; i< loaded_ids.length; i++){
if(loaded_ids[i]==video &&
yotuwp.player.current.player!==null
){
var next='', prev='';
if(typeof loaded_ids[i+1]!=='undefined') next=loaded_ids[i+1];
if(i > 0) prev=loaded_ids[i-1];
$('#yotu-player-' + player).data('next', next);
$('#yotu-player-' + player).data('prev', prev);
break;
}}
},
lightbox_actions:function (obj){
var player=$('#yotu-player-' + yotuwp.player.current.player),
func=$(obj).data('func'),
video=player.data(func);
if(video==='') return;
switch(func){
case 'prev':
case 'next':
var loaded_ids=yotuwp.player.current.list.data('loaded');
yotuwp.data.players['modal'].loadVideoById(video);
yotuwp.player.current.video=video;
yotuwp.player.info();
yotuwp.do_action('after_play_video', loaded_ids, video, yotuwp.player.current.player);
break;
}}
},
loadmore:{
carousel:function(wrp, html, settings){
var thumbs=wrp.find('.owl-carousel'),
loaded_page=wrp.data('loaded_page'),
items=html.find('li');
items.map(function (ind){
thumbs.owlCarousel().trigger('add.owl.carousel',
[items[ind]]
);
});
thumbs.trigger('refresh.owl.carousel');
setTimeout(function (){
console.log((loaded_page[loaded_page.length-1] -1) * settings.per_page + 1);
thumbs.trigger('to.owl.carousel', [(loaded_page[loaded_page.length-1] -1) * settings.per_page + 1, 300]);
}, 1000);
},
masonry:function(wrp, html, settings){
var thumbs=wrp.find('.owl-carousel'),
loaded_page=wrp.data('loaded_page'),
items=html.find('li'),
$grid=wrp.find('ul');
items.map(function (ind){
$grid.masonry()
.append(items[ind])
.masonry('appended', items[ind])
.masonry();
});
wrp.masonry();
}}
}
$(document).ready(function($){
yotupro.init();
});
})(jQuery);