/*--- gallery function ---*/
function slideGallery(){
	var change_speed = 700; // in ms
	var _hold = $('#carusel');
	if(_hold.length){
		var list_hold = _hold.find('> div > ul');
		var _list = list_hold.children();
		var btn_prev = _hold.find('a.link-prev');
		var btn_next = _hold.find('a.link-next');
		var hold_w = list_hold.parent().width();
		var _w = _list.length * _list.outerWidth(true);
		if(_w > hold_w){
			list_hold.append(_list.clone()).append(_list.clone());
			var _flag = true;
			var _m = _w;
			list_hold.css({left: -_m});
			var _f1 = false;
			var _f2 = false;
			
			btn_prev.mouseenter(function(){
				moveList(false);
				_f1 = true;
			}).mouseleave(function(){
				_f1 = false;
			});
			btn_next.mouseenter(function(){
				moveList(true);
				_f2 = true;
			}).mouseleave(function(){
				_f2 = false;
			});
		}
		btn_prev.click(function(){
			return false;
		});
		btn_next.click(function(){
			return false;
		});
		function moveList(_f){
			if(_flag){
				_flag = false;
				if(_f){
					if(_m + hold_w > _w*3 - hold_w){
						_m -= _w;
						list_hold.css('left', -_m);
					}
					_m += hold_w;
				}
				else{
					if(_m - hold_w < 0){
						_m += _w;
						list_hold.css('left', -_m);
					}
					_m -= hold_w;
				}
				list_hold.animate({left: -_m}, change_speed, function(){
					_flag = true;
					setTimeout(function(){
						if(_f1) moveList(false);
						else if(_f2) moveList(true);
					}, 1000);
				});
			}
		}
	}
}
function initSlide(){
		var _duration = 400; //in ms
		$('div.slide-block').each(function(){
			var _hold = $(this);
			var _box = _hold.find('div.block');
			var _btn = _hold.find('a.open-close');
			var _h = _box.height();
			if(_hold.hasClass('active')) _box.show();
			else _box.hide();
		
			_btn.click(function(){
				if(_hold.hasClass('active')){
					_hold.removeClass('active');
					_box.stop().animate({height:0}, _duration, function(){
						$(this).css({display:'none', height:'auto'});
					});
				}
				else{
					_hold.addClass('active');
					if(_box.is(':hidden')){
						_box.show();
						_h = _box.height();
						_box.height(0);
					}
					_box.stop().animate({height: _h}, _duration, function(){ 
						$(this).height('auto');
					})
				}
				return false;
			});
		
		});
}

$(document).ready(function(){
	initSlide();
	slideGallery();
});
