var $j = jQuery.noConflict();
// --------------------------
// LOAD THE COMMON FUNCTIONS
// --------------------------
$j(document).ready(function(){
//thb_preload('.preload img');
thb_filter();
thb_filter_blog();
thb_gotop('a.gotop');
thb_position();
thb_width();
thb_overlay(':not(#slideshow ul li) > a:has(img)');
thb_horz_carousel();
thb_tab();
thb_accordion();
thb_slideContent();
//thb_slide_overlay('#slideshow a');
});
// -----------------------------------------
// FUNCTIONS
// -----------------------------------------
// -----------------------------------------
// SLIDE
// -----------------------------------------
function thb_slideContent(){
container = '.slide_container';
trigger = '.slide_trigger';
$j(container).hide().css({ opacity : 0 });
$j(trigger).click(function(){
$j(this).toggleClass("active").next().toggleClass("active").fadeSliderToggle();
return false;
});
}
// -----------------------------------------
// TAB
// -----------------------------------------
function thb_tab() {
tabcontainer = '.horz-tabs';
tabcontent = '.tab-content';
tabnav = '.t-nav';
activeclass = 'active';
$j(tabcontent).hide();
var tabs = $j(tabcontainer);
tabs.each(function(index, tab) {
$j(tab).find("li").first().addClass(activeclass);
$j(tab).find(tabcontent).first().show();
$j(tab).find("li").click(function() {
$j(tab).find("li."+activeclass).removeClass(activeclass);
$j(this).addClass(activeclass);
$j(tab).find(tabcontent).hide();
var activeTab = $j(this).find("a").attr("href");
$j(activeTab).fadeIn();
return false;
});
});
}
// -----------------------------------------
// ACCORDION
// -----------------------------------------
function thb_accordion() {
// Containers and triggers
main_container = '.acc_container';
sub_container = '.acc_container_sub';
main_trigger = '.acc_trigger';
sub_trigger = '.acc_trigger_sub';
$j(main_container).hide();
$j(main_trigger +":first").addClass('open').next().show();
$j(main_trigger).click(function(){
if( $j(this).next().is(':hidden') ) {
openAccordion(this, main_trigger, sub_trigger);
} else {
closeAccordion(this, main_trigger, sub_trigger);
} return false;
});
$j(sub_container).hide();
$j(sub_trigger).click(function(){
if( $j(this).next().is(':hidden') ) {
$j(this).nextUntil(main_trigger, sub_trigger).removeClass('sub_open').next().slideUp();
$j(this).toggleClass('sub_open').next().slideDown();
}
else {
$j(this).next().slideUp();
$j(this).removeClass('sub_open');
}
return false;
});
}
function openAccordion(element, main_trigger, sub_trigger) {
closeAccordion($j(element).prevAll(main_trigger), main_trigger, sub_trigger);
closeAccordion($j(element).nextAll(main_trigger), main_trigger, sub_trigger);
$j(element).addClass('open');
$j(element).next().slideDown();
}
function closeAccordion(elements, main_trigger, sub_trigger) {
$j(elements).each(function(index, element) {
$j(element).next().slideUp();
$j(element).removeClass('open');
$j(element).nextUntil(main_trigger, sub_trigger).trigger('click');
});
}
// -----------------------------------------
// CUSTOM PRELOAD
// -----------------------------------------
function thb_preload(selector, parameters) {
var params = {
delay: 250,
transition: 350,
easing: 'linear'
};
$j.extend(params, parameters);
$j(selector).each(function() {
var image = $j(this);
image.css({visibility:'hidden', opacity: 0, display:'block'});
image.wrap('');
image.one("load", function(evt) {
$j(this).delay(params.delay).css({visibility:'visible'}).animate({opacity: 1}, params.transition, params.easing, function() {
$j(this).unwrap('');
thb_overlay(image);
});
}).each(function() {
if(this.complete) $j(this).trigger("load");
});
});
}
// -----------------------------------------
// CUSTOM SLIDER
// -----------------------------------------
function thb_slide_imgload(){
$j('#new-slider img').css({opacity: 0});
$j('#new-slider img').one('load', function() {
$j(this).delay(250).animate({opacity:1}, 350);
}).each(function() {
if(this.complete)
$j(this).trigger('load');
});
}
function thb_slide_controls(){
$j('#slide-controls a').css({ opacity: 0 });
$j('#slideshow').hover(function(){
$j('#slide-controls a').animate({ opacity : 1 },200);
}, function(){
$j('#slide-controls a').animate({ opacity : 0 },200);
});
}
// -----------------------------------------
// NAVIGATION AUTO POSITIONING
// -----------------------------------------
function thb_position(){
var msie6 = $j.browser == 'msie' && $j.browser.version < 7;
if (!msie6) {
var top = $j('#main-nav').offset().top - parseFloat($j('#main-nav').css('margin-top').replace(/auto/, 0));
$j(window).scroll(function (event) {
var y = $j(this).scrollTop();
if (y >= top) {
$j('#main-nav').addClass('fixed');
} else {
$j('#main-nav').removeClass('fixed');
}
});
}
}
function thb_width(){
function resize(){
var browserwidth = $j(window).width();
if ((browserwidth) < '1070'){
$j('div.post-date').addClass('inner');
} else {
$j('div.post-date').removeClass('inner');
}
}
resize();
$j(window).resize(function() {
resize();
});
}
// -----------------------------------------
// HORIZONTAL CAROUSEL
// -----------------------------------------
function thb_horz_carousel(){
// Lastest works slideshow
$j('.horz-carousel').cycle({
fx: 'scrollHorz',
easing: 'easeInOutQuad',
speed: 'slow',
timeout: 0,
next: '#arr-next',
prev: '#arr-prev'
});
}
// -----------------------------------------
// FANCY BOX SETTINGS
// -----------------------------------------
function thb_fancy(selector){
$j(selector).fancybox();
}
// -----------------------------------------
// FANCY BOX GALLERY
// -----------------------------------------
function thb_gallery(selector) {
var images = $j(selector);
images.each(function(index, item) {
$j(item).attr("rel", "gallery");
});
}
// -----------------------------------------
// OVERLAY
// -----------------------------------------
function thb_slide_overlay(selector) {
$j('').prependTo(selector);
$j('.overlay').css({opacity : 0});
$j(selector).hover(function(){
if($j.browser.msie){
$j('.overlay',this).stop().animate({ opacity : .1},280);
} else {
$j('.overlay',this).stop().animate({ opacity : .2},280);
}
}, function(){
$j('.overlay',this).stop().animate({ opacity : 0},150);
});
}
function thb_overlay(selector) {
var image = selector;
if(typeof(selector) == "string")
image = $j(selector);
// IE FIX
if($j.browser.msie){
image.hover(function(){
$j(this).stop().animate({opacity : .6},150);
}, function(){
$j(this).stop().animate({opacity : 1},280);
});
}
// img overlay
image.hover(function(){
$j(this).stop().animate({opacity : 0.8},150);
}, function(){
$j(this).stop().animate({opacity : 1},280);
});
}
// -----------------------------------------
// BLOG FILTER
// -----------------------------------------
function thb_filter_blog() {
$j('#filter ul a').click(function() {
$j(this).css('outline','none');
$j('#filter ul .current').removeClass('current');
$j(this).parent().addClass('current');
// var filterVal = $j(this).text().toLowerCase().replace(/ /gi,'-');
// filterVal = thb_normalizeAccents(filterVal);
var filterVal = $j(this).attr("href").replace("#", "");
if(filterVal == 'all-posts') {
$j("#postlist").fadeOut("fast", function() {
$j('#postlist ul li.hidden').fadeIn('normal', function() {
$j(this).removeClass('hidden');
});
$j(this).fadeIn("normal");
});
} else {
$j("#postlist").fadeOut("fast", function() {
$j('#postlist ul li').each(function() {
if(!$j(this).hasClass(filterVal)) {
$j(this).hide().addClass('hidden');
} else {
$j(this).show().removeClass('hidden');
}
});
$j(this).fadeIn("normal");
})
}
return false;
});
$j('#filter ul a.now').click();
//$j("#filter ul li.current a").trigger('click');
}
// -----------------------------------------
// PORTFOLIO WORKS FILTER
// -----------------------------------------
function thb_filter() {
$j('#filter ul a').click(function() {
$j(this).css('outline','none');
$j('#filter ul .current').removeClass('current');
$j(this).parent().addClass('current');
// var filterVal = $j(this).text().toLowerCase().replace(/ /gi,'-');
// filterVal = thb_normalizeAccents(filterVal);
var filterVal = $j(this).attr("href").replace("#", "");
if(filterVal == 'all-works') {
$j("#worklist").fadeOut("fast", function() {
$j('#worklist ul li.hidden').fadeIn('normal', function() {
$j(this)
.removeClass('hidden')
.addClass('shown');
});
$j(this).fadeIn("normal");
});
} else {
$j("#worklist").fadeOut("fast", function() {
$j('#worklist ul li').each(function() {
if(!$j(this).hasClass(filterVal)) {
$j(this).hide()
.addClass('hidden')
.removeClass('shown');
} else {
$j(this).show()
.removeClass('hidden')
.addClass('shown');
}
});
$j(this).fadeIn("normal");
})
}
return false;
});
$j('#filter ul a.now').click();
//$j("#filter ul li.current a").trigger('click');
}
function thb_normalizeAccents(str)
{
var s=str;
var rExps=[ /[\xC0-\xC2]/g, /[\xE0-\xE2]/g,
/[\xC8-\xCA]/g, /[\xE8-\xEB]/g,
/[\xCC-\xCE]/g, /[\xEC-\xEE]/g,
/[\xD2-\xD4]/g, /[\xF2-\xF4]/g,
/[\xD9-\xDB]/g, /[\xF9-\xFB]/g ];
var repChar=['A','a','E','e','I','i','O','o','U','u'];
for(var i=0; i