(function($)
{
"use strict";
$( function()
{
$('.avia_auto_toc').each(function(){
var $toc_section = $(this).attr('id');
var $levels = 'h1';
var $levelslist = new Array();
var $excludeclass = '';
var $toc_container = $(this).find('.avia-toc-container');
if( $toc_container.length )
{
var $levels_attr = $toc_container.attr('data-level');
var $excludeclass_attr = $toc_container.attr('data-exclude');
if( typeof $levels_attr != 'undefined' )
{
$levels = $levels_attr;
}
if( typeof $excludeclass_attr != 'undefined' )
{
$excludeclass = $excludeclass_attr.trim();
}
}
$levelslist = $levels.split(',');
$('.entry-content-wrapper').find( $levels ).each( function()
{
var headline = $( this );
if( headline.hasClass('av-no-toc') )
{
return;
}
if( $excludeclass != '' && ( headline.hasClass( $excludeclass ) || headline.parent().hasClass( $excludeclass ) ) )
{
return;
}
var $h_id = headline.attr('id');
var $tagname = headline.prop( 'tagName' ).toLowerCase();
var $txt = headline.text();
var $pos = $levelslist.indexOf($tagname);
if( typeof $h_id == 'undefined' )
{
var $new_id = av_pretty_url( $txt );
headline.attr( 'id', $new_id );
$h_id = $new_id;
}
var $list_tag = '' + $txt + '';
$toc_container.append( $list_tag );
});
// Smooth Scrolling
$( ".avia-toc-smoothscroll .avia-toc-link" ).on( 'click', function(e)
{
e.preventDefault();
var $target = $(this).attr('href');
var $offset = 50;
// calculate offset if there is a sticky header
var $sticky_header = $('.html_header_top.html_header_sticky #header');
if( $sticky_header.length )
{
$offset = $sticky_header.outerHeight() + 50;
}
$('html,body').animate( { scrollTop: $($target).offset().top - $offset } );
});
});
});
function av_pretty_url(text)
{
return text.toLowerCase()
.replace( /[^a-z0-9]+/g, "-" )
.replace( /^-+|-+$/g, "-" )
.replace( /^-+|-+$/g, '' );
}
})( jQuery );