/* MOBILE BROWSER DETECTION */
window.isMobile = false;
var ua = navigator.userAgent||navigator.vendor||window.opera;
(function(a,b){if(/android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile|o2|opera m(ob|in)i|palm( os)?|p(ixi|re)\/|plucker|pocket|psp|smartphone|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce; (iemobile|ppc)|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-/i.test(a.substr(0,4)))b(true)})(ua,function(b){window.isMobile=b});
//if(/ipad/i.test(ua))window.isMobile=false;

/*
(function () {
    $.fn.infiniteCarousel = function () {
        function repeat(str, n) {
            return new Array( n + 1 ).join(str);
        }
        
        return this.each(function () {
            // magic!
            var $wrapper = $('> div', this).css('overflow', 'hidden'),
                $slider = $wrapper.find('> ul').width(9999),
                $items = $slider.find('> li'),
                $single = $items.filter(':first')
                
                singleWidth = $single.outerWidth(),
                visible = Math.ceil($wrapper.innerWidth() / singleWidth),
                currentPage = 1,
                pages = Math.ceil($items.length / visible);
                
            
            // 1. pad the pages with empty element if required
            if ($items.length % visible != 0) {
                // pad
                $slider.append(repeat('<li class="empty" />', visible - ($items.length % visible)));
                $items = $slider.find('> li');
            }
            
            // 2. create the carousel padding on left and right (cloned)
            $items.filter(':first').before($items.slice(-visible).clone().addClass('cloned'));
            $items.filter(':last').after($items.slice(0, visible).clone().addClass('cloned'));
            $items = $slider.find('> li');
            
            // 3. reset scroll
            $wrapper.scrollLeft(singleWidth * visible);
            
            // 4. paging function
            function gotoPage(page) {
                var dir = page < currentPage ? -1 : 1,
                    n = Math.abs(currentPage - page),
                    left = singleWidth * dir * visible * n;
                
                $wrapper.filter(':not(:animated)').animate({
                    scrollLeft : '+=' + left
                }, 500, function () {
                    // if page == last page - then reset position
                    if (page > pages) {
                        $wrapper.scrollLeft(singleWidth * visible);
                        page = 1;
                    } else if (page == 0) {
                        page = pages;
                        $wrapper.scrollLeft(singleWidth * visible * pages);
                    }
                    
                    currentPage = page;
                });
            }
            
            // 5. insert the back and forward link
            //$wrapper.after('<a href="#" class="arrow back">&lt;</a><a href="#" class="arrow forward">&gt;</a>');
            
            // 6. bind the back and forward links
            $('span.previous a', this).click(function () {
                gotoPage(currentPage - 1);
                return false;
            });
            
            $('span.next a', this).click(function () {
                gotoPage(currentPage + 1);
                return false;
            });
            
            $(this).bind('goto', function (event, page) {
                gotoPage(page);
            });
            
            // THIS IS NEW CODE FOR THE AUTOMATIC INFINITE CAROUSEL
            $(this).bind('next', function () {
                gotoPage(currentPage + 1);
            });
        });
    };
})(jQuery);



var setupScroll = function(cont, opt) {
	var container = $(cont);
	var contents = $('.scroller-container', container);
	// THIS IS NEW CODE FOR THE AUTOMATIC INFINITE CAROUSEL
    var autoscrolling = true;
    
    contents.infiniteCarousel().mouseover(function () {
        autoscrolling = false;
    }).mouseout(function () {
        autoscrolling = true;
    });
    
    setInterval(function () {
        if (autoscrolling) {
            contents.trigger('next');
        }
    }, 10000);
}



var Scroller = function(container) {
	this.container = $(container);
	this.content = $('.scroller-content > div', this.container);
	this.outerContent = $('.scroller-content', this.container);
	this.offset = 0;
	this.element = 'li';
	this.duration = 5000;
	this.interval = null;
	
	//var c = $('.scroller-content', this.container);
	this.outerContent.css({
		'overflow': 'hidden'
	});
	this.containerWidth = this.outerContent.width();
	
	
	var self=this;
	$('.next a', this.container).click(function() {
		self.advance();
		self.cancelRotate();
		return false;
	});
	
	$('.previous a', this.container).click(function() {
		self.previous();
		self.cancelRotate();
		return false;
	});
	
	this.container.mouseenter(function() {
		self.cancelRotate();
	})
	.mouseleave(function() {
		self.setupRotate();
	});
	
	this.setupRotate();
}

Scroller.prototype.advance = function() {
	this.totalWidth = this.content.width();
	
	if((this.offset + this.containerWidth) > this.totalWidth)
		this.offset=0;
	else {
		this.offset = this.offset + this.containerWidth;
		this._adjustOffset();
	}
	//this.content.animate({'left': (-this.offset) +'px'});
	this.outerContent.scrollTo(this.offset, {axis: 'x', queue:true, duration: 500 });
}

Scroller.prototype.previous = function() {
	this.totalWidth = this.content.width();
	if((this.offset - this.containerWidth) <= 0)
		this.offset=0;
	else {
		this.offset = this.offset - this.containerWidth;
		this._adjustOffset();
	}
	this.outerContent.scrollTo(this.offset, {axis: 'x', queue:true, duration: 500 });
}

Scroller.prototype._adjustOffset = function() {
	var self = this;
	$(this.element, this.content).each(function(i) {
		var pos = $(this).position();
		var w = $(this).width();
		if(self.offset > pos.left && self.offset < (pos.left+w)) {
			self.offset -= (self.offset - pos.left);
		}
	});
}

Scroller.prototype.setupRotate = function() {
	var self=this;
	this.interval = window.setInterval(function() {self.advance();}, this.duration);
}

Scroller.prototype.cancelRotate = function() {
	window.clearInterval(this.interval);
}*/


var setupScroll = function(cont, opt) {
	var n = opt.visible || 0;
	var container = $(cont);
	var contents = $('.scroller-content', container);
	if(contents.find('ul').children().length > n) {
		$.extend(opt, {
			'btnNext': '.next',
			'btnPrev': '.previous'
		});
		opt.auto *= 1000;
		opt.speed = opt.animation;
		contents.jCarouselLite(opt);
		/*$('.previous', container).click(function(){
			contents.jcarousel('prev');
			return false;
		});
		$('.next', container).click(function(){
			contents.jcarousel('next');
			return false;
		});*/
	} else {
		$('.previous, .next', container).hide();
	}
}


if(!isMobile) {
	$(function() {
		$('div.popup #scroller-content ul li a').fancybox({
			'width': 725,
			'type': 'ajax',
			'padding': 0,
			'ajax': {'data': 'ajax=true'},
			'overlayOpacity': '0.6'
		});
	});
}

var Portfolio = {
	
	load:function(id, element) {
		console.log(id);
		$(element).fancybox({
			'type'			:	'ajax',
			'href'			:	'/?ajax&p=' + id
		});
		return false;
	}
	
};
