Viewing File: /home/rtsgrob/ww6/wp-content/themes/synergia/framework/modules/blog/assets/js/blog.js
(function($) {
"use strict";
var blog = {};
qodef.modules.blog = blog;
blog.qodefOnDocumentReady = qodefOnDocumentReady;
blog.qodefOnWindowLoad = qodefOnWindowLoad;
blog.qodefOnWindowResize = qodefOnWindowResize;
blog.qodefOnWindowScroll = qodefOnWindowScroll;
$(document).ready(qodefOnDocumentReady);
$(window).on('load', qodefOnWindowLoad);
$(window).resize(qodefOnWindowResize);
$(window).scroll(qodefOnWindowScroll);
/*
All functions to be called on $(document).ready() should be in this function
*/
function qodefOnDocumentReady() {
qodefInitAudioPlayer();
qodefInitBlogMasonry();
}
/*
All functions to be called on $(window).load() should be in this function
*/
function qodefOnWindowLoad() {
qodefInitBlogPagination().init();
}
/*
All functions to be called on $(window).resize() should be in this function
*/
function qodefOnWindowResize() {
qodefInitBlogMasonry();
}
/*
All functions to be called on $(window).scroll() should be in this function
*/
function qodefOnWindowScroll() {
qodefInitBlogPagination().scroll();
}
/**
* Init audio player for Blog list and single pages
*/
function qodefInitAudioPlayer() {
var players = $('audio.qodef-blog-audio');
players.mediaelementplayer({
audioWidth: '100%'
});
}
/**
* Init Resize Blog Items
*/
function qodefResizeBlogItems(size,container){
if(container.hasClass('qodef-masonry-images-fixed')) {
var padding = parseInt(container.find('article').css('padding-left')),
defaultMasonryItem = container.find('.qodef-post-size-default'),
largeWidthMasonryItem = container.find('.qodef-post-size-large-width'),
largeHeightMasonryItem = container.find('.qodef-post-size-large-height'),
largeWidthHeightMasonryItem = container.find('.qodef-post-size-large-width-height');
if (qodef.windowWidth > 680) {
defaultMasonryItem.css('height', size - 2 * padding);
largeHeightMasonryItem.css('height', Math.round(2 * size) - 2 * padding);
largeWidthHeightMasonryItem.css('height', Math.round(2 * size) - 2 * padding);
largeWidthMasonryItem.css('height', size - 2 * padding);
} else {
defaultMasonryItem.css('height', size);
largeHeightMasonryItem.css('height', size);
largeWidthHeightMasonryItem.css('height', size);
largeWidthMasonryItem.css('height', Math.round(size / 2));
}
}
}
/**
* Init Blog Masonry Layout
*/
function qodefInitBlogMasonry() {
var holder = $('.qodef-blog-holder.qodef-blog-type-masonry');
if(holder.length){
holder.each(function(){
var thisHolder = $(this),
masonry = thisHolder.children('.qodef-blog-holder-inner'),
size = thisHolder.find('.qodef-blog-masonry-grid-sizer').width();
qodefResizeBlogItems(size, thisHolder);
masonry.waitForImages(function() {
masonry.isotope({
layoutMode: 'packery',
itemSelector: 'article',
percentPosition: true,
packery: {
gutter: '.qodef-blog-masonry-grid-gutter',
columnWidth: '.qodef-blog-masonry-grid-sizer'
}
});
masonry.css('opacity', '1');
setTimeout(function() {
masonry.isotope('layout');
}, 800);
});
});
}
}
/**
* Initializes blog pagination functions
*/
function qodefInitBlogPagination(){
var holder = $('.qodef-blog-holder');
var initLoadMorePagination = function(thisHolder) {
var loadMoreButton = thisHolder.find('.qodef-blog-pag-load-more a');
loadMoreButton.on('click', function(e) {
e.preventDefault();
e.stopPropagation();
initMainPagFunctionality(thisHolder);
});
};
var initInifiteScrollPagination = function(thisHolder) {
var blogListHeight = thisHolder.outerHeight(),
blogListTopOffest = thisHolder.offset().top,
blogListPosition = blogListHeight + blogListTopOffest - qodefGlobalVars.vars.qodefAddForAdminBar;
if(!thisHolder.hasClass('qodef-blog-pagination-infinite-scroll-started') && qodef.scroll + qodef.windowHeight > blogListPosition) {
initMainPagFunctionality(thisHolder);
}
};
var initMainPagFunctionality = function(thisHolder) {
var thisHolderInner = thisHolder.children('.qodef-blog-holder-inner'),
nextPage,
maxNumPages;
if (typeof thisHolder.data('max-num-pages') !== 'undefined' && thisHolder.data('max-num-pages') !== false) {
maxNumPages = thisHolder.data('max-num-pages');
}
if(thisHolder.hasClass('qodef-blog-pagination-infinite-scroll')) {
thisHolder.addClass('qodef-blog-pagination-infinite-scroll-started');
}
var loadMoreDatta = qodef.modules.common.getLoadMoreData(thisHolder),
loadingItem = thisHolder.find('.qodef-blog-pag-loading');
nextPage = loadMoreDatta.nextPage;
var nonceHolder = thisHolder.find('input[name*="qodef_blog_load_more_nonce_"]');
loadMoreDatta.blog_load_more_id = nonceHolder.attr('name').substring(nonceHolder.attr('name').length - 4, nonceHolder.attr('name').length);
loadMoreDatta.blog_load_more_nonce = nonceHolder.val();
if(nextPage <= maxNumPages){
loadingItem.addClass('qodef-showing');
var ajaxData = qodef.modules.common.setLoadMoreAjaxData(loadMoreDatta, 'synergia_select_blog_load_more');
$.ajax({
type: 'POST',
data: ajaxData,
url: qodefGlobalVars.vars.qodefAjaxUrl,
success: function (data) {
nextPage++;
thisHolder.data('next-page', nextPage);
var response = $.parseJSON(data),
responseHtml = response.html;
thisHolder.waitForImages(function(){
if(thisHolder.hasClass('qodef-blog-type-masonry')){
qodefInitAppendIsotopeNewContent(thisHolderInner, loadingItem, responseHtml);
qodefResizeBlogItems(thisHolderInner.find('.qodef-blog-masonry-grid-sizer').width(), thisHolder);
} else {
qodefInitAppendGalleryNewContent(thisHolderInner, loadingItem, responseHtml);
}
setTimeout(function() {
qodefInitAudioPlayer();
qodef.modules.common.qodefOwlSlider();
qodef.modules.common.qodefFluidVideo();
qodef.modules.common.qodefInitSelfHostedVideoPlayer();
qodef.modules.common.qodefSelfHostedVideoSize();
if (typeof qodef.modules.common.qodefStickySidebarWidget === 'function') {
qodef.modules.common.qodefStickySidebarWidget().reInit();
}
// Trigger event.
$( document.body ).trigger( 'blog_list_load_more_trigger' );
}, 400);
});
if(thisHolder.hasClass('qodef-blog-pagination-infinite-scroll-started')) {
thisHolder.removeClass('qodef-blog-pagination-infinite-scroll-started');
}
}
});
}
if(nextPage === maxNumPages){
thisHolder.find('.qodef-blog-pag-load-more').hide();
}
};
var qodefInitAppendIsotopeNewContent = function(thisHolderInner, loadingItem, responseHtml) {
thisHolderInner.append(responseHtml).isotope('reloadItems').isotope({sortBy: 'original-order'});
loadingItem.removeClass('qodef-showing');
setTimeout(function() {
thisHolderInner.isotope('layout');
}, 600);
};
var qodefInitAppendGalleryNewContent = function(thisHolderInner, loadingItem, responseHtml) {
loadingItem.removeClass('qodef-showing');
thisHolderInner.append(responseHtml);
};
return {
init: function() {
if(holder.length) {
holder.each(function() {
var thisHolder = $(this);
if(thisHolder.hasClass('qodef-blog-pagination-load-more')) {
initLoadMorePagination(thisHolder);
}
if(thisHolder.hasClass('qodef-blog-pagination-infinite-scroll')) {
initInifiteScrollPagination(thisHolder);
}
});
}
},
scroll: function() {
if(holder.length) {
holder.each(function() {
var thisHolder = $(this);
if(thisHolder.hasClass('qodef-blog-pagination-infinite-scroll')) {
initInifiteScrollPagination(thisHolder);
}
});
}
}
};
}
})(jQuery);
Back to Directory
File Manager