$(document).ready(function(){
	$('ul.accordion').accordion({
		active: ".selected",
		autoHeight: false,
		header: ".opener",
		collapsible: true,
		event: "click"
	});
	$('ul.accordion2').accordion({
		active: ".selected",
		autoHeight: false,
		header: ".opener",
		collapsible: true,
		event: "click"
	});
	$('.accordion3').accordion({
		active: ".selected",
		autoHeight: false,
		header: ".opener3",
		collapsible: true,
		event: "click"
	});
	if($('div#carousel').length != 0){
		$('div#carousel').galleryCircle({
			btPrev: 'a.link-prev',
			btNext: 'a.link-next',
			holderList: 'div',
			scrollElParent: 'ul.slider',
			scrollEl: 'li',
			numHolder: 'div.swicher',
			numCreate: false,
			// easing: 'easeOutElastic',
			switchTime: 4000,
			duration : 300
		});
		
		
	}
	fadeGall();
});
function fadeGall(){
	var wait_time = 4000; // in ms
	var change_speed = 1200; // in ms
	var _hold = $('div.logos');
	if(_hold.length){
		var _t;
		var _f = true;
		var _list = _hold.find('ul.fader > li');
		var _btn = $('<ul class="paging"></ul>');
		_list.each(function(_i){
			_btn.append('<li><a href="#">'+(_i+1)+'</a></li>');
		});
		_btn = _btn.find('a');
		var _a = _list.index(_list.filter('.active:eq(0)'));
		if(_a == -1) _a = 0;
		
		_list.removeClass('active').css('opacity', 0).eq(_a).addClass('active').css('opacity', 1);
		_btn.eq(_a).parent('li').addClass('active');
		_btn.click(function(){
			changeEl(_btn.index(this));
			return false;
		});
		_hold.mouseenter(function(){
			_f = false;
			if(_t) clearTimeout(_t);
		}).mouseleave(function(){
			_f = true;
			if(_t) clearTimeout(_t);
			if(_f && wait_time){
				_t = setTimeout(function(){
					if(_a < _list.length - 1) changeEl(_a + 1);
					else changeEl(0);
				}, wait_time);
			}
		});
		if(_f && wait_time){
			_t = setTimeout(function(){
				if(_a < _list.length - 1) changeEl(_a + 1);
				else changeEl(0);
			}, wait_time);
		}
		function changeEl(_ind){
			if(_t) clearTimeout(_t);
			if(_ind != _a){
				_list.eq(_a).removeClass('active').animate({opacity: 0}, {queue:false, duration:change_speed});
				_list.eq(_ind).addClass('active').animate({opacity: 1}, {queue:false, duration:change_speed});
				_btn.eq(_a).parent('li').removeClass('active');
				_btn.eq(_ind).parent('li').addClass('active');
				_a = _ind;
			}
			if(_f && wait_time){
				_t = setTimeout(function(){
					if(_a < _list.length - 1) changeEl(_a + 1);
					else changeEl(0);
				}, wait_time);
			}
		}
	}
}

jQuery.fn.gallSlide = function(_options){
	// defaults options	
	var _options = jQuery.extend({
		duration: 700,
		autoSlide: 5000
	},_options);

	return this.each(function(){
		
	jQuery.extend( jQuery.easing, // from the jquery.easing plugin
	{
		easeInExpo: function (x, t, b, c, d) {
			return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
		},
		easeOutElastic: function (x, t, b, c, d) {
			var s=1.70158;var p=0;var a=c;
			if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
			if (a < Math.abs(c)) { a=c; var s=p/4; }
			else var s = p/(2*Math.PI) * Math.asin (c/a);
			return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
		}
	});
		
		var _hold = $(this);
		var _speed = _options.duration;
		var _timer = _options.autoSlide;
		var _wrap = _hold.find('ul.slider');
		var _el = _hold.find('ul.slider > li');
		var _next = _hold.find('a.link-next');
		var _prev = _hold.find('a.link-prev');
		var _count = _el.index(_el.filter(':last'));
		var _w = _el.outerWidth(true);
		var _wrapHolderW = Math.ceil(_wrap.parent().width()/_w);
		var _t;
		
		var _active = 0;
		function scrollEl(){
			_wrap.eq(0).animate({
				marginLeft: -(_w * _active) + "px"
			}, {queue:false, duration: _speed, easing: "easeOutElastic"});
		}
		function runTimer(){
			_t = setInterval(function(){
				_active++;
				if (_active > (_count - _wrapHolderW + 1)) _active = 0;
				scrollEl();
			}, _timer);
		}
		runTimer();
		_hold.hover(function(){
			if(_t) clearTimeout(_t);
		}, function(){
			runTimer();
		});
		_next.click(function(){
			_active++;
			if (_active > (_count - _wrapHolderW + 1)) _active = 0;
			scrollEl();
			return false;
		});
		_prev.click(function(){
			_active--;
			if (_active < 0) _active = _count - _wrapHolderW + 1;
			scrollEl();
			return false;
		});
	});
}

/*
 * jQuery galleryCircle v1.0.4
 *****************************************************************
	btPrev: 'a.prev',				button prev
	btNext: 'a.next',				button next
	holderList: 'div',				holder of elements window were you see sliding elements !  CSS for this element:	 div {position: relative;	width: "your width" ; 	overflow: hidden;}
	scrollElParent: 'ul',			holder of all sliding elements
	scrollEl: 'li',					element wich would slide
	numHolder: 'div.num-control',	holder of control element
	numCreate: false,				create new num control or use default (wich exist in markup) can be: False or True
	step: false,					boolean false= scroll on window width, true = scroll on each element width
	innerMargin: 0,					if "ul" has some default margin that is not  "0" set it here
	switchTime: false,				time between sliding image: 	false or some integer 1000 = 1 sec
	duration : 1500					time of animation			some integer 1000 = 1 sec
 *****************************************************************
 */

jQuery.fn.galleryCircle = function(_options){
	// defaults options
	var _options = jQuery.extend({
		btPrev: 'a.prev',
		btNext: 'a.next',
		holderList: 'div',
		scrollElParent: 'ul',
		scrollEl: 'li',
		numHolder: false,
		numCreate: false,
		step: false,
		innerMargin: 0,
		curPage: false,
		onClick: null,
		easing: 'linear',
		switchTime: false,
		duration : 1500
	},_options);

	return this.each(function(){
		
		jQuery.extend( jQuery.easing, // from the jquery.easing plugin
		{
			easeInExpo: function (x, t, b, c, d) {
				return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
			},
			easeOutElastic: function (x, t, b, c, d) {
				var s=1.70158;var p=0;var a=c;
				if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
				if (a < Math.abs(c)) { a=c; var s=p/4; }
				else var s = p/(2*Math.PI) * Math.asin (c/a);
				return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
			}
		});
		
		
		var _this = jQuery(this);
		var _next = jQuery(_options.btNext, _this).length ? jQuery(_options.btNext, _this) : false;
		var _prev = jQuery(_options.btPrev, _this).length ? jQuery(_options.btPrev, _this) : false;
		var _holderList = jQuery(_options.holderList, _this);
		var _scrollElParent = jQuery(_options.scrollElParent, _holderList);
		var _scrollEl = jQuery(_options.scrollEl, _scrollElParent);
		var _numHolder = false ;
		if (_options.numHolder) _numHolder = jQuery(_options.numHolder, _this).length ? jQuery(_options.numHolder, _this) : false;
		var _step, _t = null;
		var _widthSum = 0;
		_scrollEl.each(function(){_widthSum += jQuery(this).outerWidth(true);})
		var _startPosition = _scrollEl.index(_scrollEl.filter('.active'));
		if (_startPosition==-1) _startPosition=0;
		_scrollEl.removeClass('active');
		var _easing = _options.easing;

		if (!_options.step) _step = _holderList.innerWidth();
		var _margin = _widthSum;
		_scrollElParent.append(_scrollEl.clone(true));
		_scrollElParent.prepend(_scrollEl.clone(true));

		var _offsetStartPosition =0;
		_offsetStartPosition = culcOffset(_startPosition);

		_scrollElParent.css('marginLeft', (-_margin+_options.innerMargin-_offsetStartPosition));

		//auto rotation
		if (_options.switchTime) {
			_t = setTimeout(function(){
				nextSlides();
			},_options.switchTime)
		}

		//button next "click"
		if (_options.btNext) {
			_next.click(function(){
				if (!_scrollElParent.is(':animated')) {
					if (jQuery.isFunction(_options.onClick)) _options.onClick.apply(_this);
					nextSlides();
				}
				return false;
			});
		}

		//button prev "click"
		if (_options.btPrev) {
			_prev.click(function(){
				if (!_scrollElParent.is(':animated')) {
					if (jQuery.isFunction(_options.onClick)) _options.onClick.apply(_this);
					prevSlides();
				}
				return false;
			});
		}

		//curent position
		function getCurElIndex(){
			var _curMargin = parseInt(_scrollElParent.css('marginLeft')) + _widthSum - _options.innerMargin;
			for(i=0; i < _scrollEl.length; i++){
				if (_curMargin == 0) return i;
				if (_curMargin <= _options.innerMargin) _curMargin += _scrollEl.eq(i).innerWidth(true);
				else _curMargin -= _scrollEl.eq(i).innerWidth(true);
				if (_curMargin == _options.innerMargin) return i+1;
			}
		}

		// offset of gallery if when activ element not first at start 
		function culcOffset(_ind){
			var _tmpcounter=0;
			var _pos=0;
			while (_tmpcounter < _ind){
				_pos += _scrollEl.eq(_tmpcounter).outerWidth(true);
				_tmpcounter++;
			};
			return _pos;
		}

		//go next slide
		function nextSlides(){
			if (_t) clearTimeout(_t);
			if (_options.step) {
				_curElIndex = getCurElIndex();
				_step = _scrollEl.eq(_curElIndex).innerWidth(true);
			};
			_margin = -parseInt(_scrollElParent.css('marginLeft'));
			_margin += _step;
			
			_scrollElParent.animate({'marginLeft':(-_margin+_options.innerMargin)}, {duration:_options.duration, easing: _easing, complete:function(){
				if (_margin >= _widthSum*2) {
					_margin = _widthSum + (_margin - _widthSum*2);
				}
				_scrollElParent.css({'marginLeft':-_margin+_options.innerMargin});
				jQuery.fn.galleryCircle.numListActive(_numHolder, _scrollEl);

				//autoslide
				if (_options.switchTime) {
					_t = setTimeout(function(){
						nextSlides();
					},_options.switchTime)
				}
			}});
		}

		//go prev slide
		function prevSlides(){
			if (_t) clearTimeout(_t);
			if (_options.step) {
				_curElIndex = getCurElIndex();
				if (_curElIndex == 0) _curElIndex= _scrollEl.length;
				_step = _scrollEl.eq(_curElIndex-1).innerWidth(true);
			};
			_margin = -parseInt(_scrollElParent.css('marginLeft'));
			_margin -= _step;
			_scrollElParent.animate({'marginLeft':(-_margin+_options.innerMargin)}, {duration:_options.duration, easing: _easing, complete:function(){
				if (_margin < _widthSum) {
					_margin = _widthSum*2 - (_widthSum - _margin);
				}
				_scrollElParent.css({'marginLeft':-_margin+_options.innerMargin});
				jQuery.fn.galleryCircle.numListActive(_numHolder, _scrollEl);

				//autoslide
				if (_options.switchTime) {
					_t = setTimeout(function(){
						nextSlides();
					},_options.switchTime)
				}
			}});
		}

		// Number list Create
		jQuery.fn.galleryCircle.numListCreate = function(_numHolder, _scrollEl){
			var _numListElC = '';
			for(var i=0; i<_scrollEl.length; i++){
				_numListElC += '<li><a href="">'+(i+1)+'</a></li>';
			}
			jQuery(_numHolder).html('<ul>'+_numListElC+'</ul>');
		};

		// Number list Activate
		jQuery.fn.galleryCircle.numListActive = function(_numHolder, _scrollEl){
			_curElIndex = getCurElIndex();
			if (jQuery(_options.curPage, _this).length && _options.curPage) jQuery(_options.curPage, _this).text('Pagina '+(getCurElIndex()+1)+'/'+_scrollEl.length);
			if (_numHolder) {
				jQuery('a',_numHolder).removeClass('active');
				jQuery('a',_numHolder).eq(_curElIndex).addClass('active');
			}
		};

		//click on control elemens
		function numClick() {
			jQuery(_options.numHolder, _this).find('a').click(function(){
				if (_t) clearTimeout(_t);
				var _aList = jQuery(_options.numHolder, _this).find('a');
				var _index = _aList.index(jQuery(this));
				_margin = _widthSum + _index * _scrollEl.outerWidth(true);
				_scrollElParent.animate({'marginLeft':(-_margin+_options.innerMargin)}, {duration:_options.duration, easing: _easing, complete:function(){
					if (_margin >= _widthSum*2) {
						_margin = _widthSum + (_margin - _widthSum*2);
					}
					_scrollElParent.css({'marginLeft':-_margin+_options.innerMargin});
					_aList.removeClass('active').eq(_index).addClass('active');

					//autoslide
					if (_options.switchTime) {
						_t = setTimeout(function(){
							nextSlides();
						},_options.switchTime)
					}
				}});
				return false;
			});
		};

		// init creating num list
		if (_options.numCreate) jQuery.fn.galleryCircle.numListCreate(_numHolder, _scrollEl);

		// pagination first init (example Page 2/6)
		if (jQuery(_options.curPage, _this).length && _options.curPage) jQuery(_options.curPage, _this).text('Pagina '+(getCurElIndex()+1)+'/'+_scrollEl.length);

		// init activate num list item and init numClick()
		if (_options.numHolder) {
			jQuery.fn.galleryCircle.numListActive(_numHolder, _scrollEl);
			numClick();
		}
	});
}


$(document).ready(function() 
{
  
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
  
	 $('#register_member_form').submit(function() 
	 {
	  
	  // Validate form on submission
	  var noErrors = true;	  
	  	  
	  if ($.trim($('#m_field_id_8').val())) $('#m_field_id_8_warning').fadeOut('fast'); else { $('#m_field_id_8_warning').fadeIn('fast'); noErrors = false; } 	  
	  if ($.trim($('#m_field_id_2').val())) $('#m_field_id_2_warning').fadeOut('fast'); else { $('#m_field_id_2_warning').fadeIn('fast'); noErrors = false; }
	  if ($.trim($('#username').val())) $('#username_warning').fadeOut('fast'); else { $('#username_warning').fadeIn('fast'); noErrors = false; }
	  if ($.trim($('#m_field_id_3').val())) $('#m_field_id_3_warning').fadeOut('fast'); else { $('#m_field_id_3_warning').fadeIn('fast'); noErrors = false; }
	  if ($.trim($('#password').val())) 
	  {
		$('#password_warning').fadeOut('fast'); 
		if ($.trim($('#password').val()).length <= 5) { $('#password_warning2').fadeIn('fast'); noErrors = false; } else $('#password_warning2').fadeOut('fast');
	  }
	  else { $('#password_warning').fadeIn('fast'); noErrors = false; }
	  if ($.trim($('#password').val())!=$.trim($('#password_confirm').val())) { $('#password_confirm_warning').fadeIn('fast'); noErrors = false; } else $('#password_confirm_warning').fadeOut('fast');	  
	  
	  if ($.trim($('#email').val()) && reg.test($.trim($('#email').val()))) $('#email_warning').fadeOut('fast'); else { $('#email_warning').fadeIn('fast'); noErrors = false; }	  	 
	  
	  if ($('#accept_terms').is(':checked')) $('#accept_terms_warning').fadeOut('fast'); else { $('#accept_terms_warning').fadeIn('fast'); noErrors = false; }			 
	
	  return noErrors;
	});
	
	// Hide or display warning when fields are Ok or left empty respectively
	$('#m_field_id_8').blur(function() { $.trim($('#m_field_id_8').val()) ? $('#m_field_id_8_warning').fadeOut('fast') : $('#m_field_id_8_warning').fadeIn('fast'); });
	$('#m_field_id_2').blur(function() { $.trim($('#m_field_id_2').val()) ? $('#m_field_id_2_warning').fadeOut('fast') : $('#m_field_id_2_warning').fadeIn('fast'); });
	$('#username').blur(function() { $.trim($('#username').val()) ? $('#username_warning').fadeOut('fast') : $('#username_warning').fadeIn('fast'); });
	$('#email').blur(function() { $.trim($('#email').val()) ? (reg.test($.trim($('#email').val())) ? $('#email_warning').fadeOut('fast') : $('#email_warning').fadeIn('fast')) : $('#email_warning').fadeIn('fast'); });
	$('#m_field_id_3').blur(function() { $.trim($('#m_field_id_3').val()) ? $('#m_field_id_3_warning').fadeOut('fast') : $('#m_field_id_3_warning').fadeIn('fast'); });
	$('#password').blur(function() { if ($.trim($('#password').val()))
	{
		$('#password_warning').fadeOut('fast');
		if ($.trim($('#password').val()).length <= 5) { $('#password_warning2').fadeIn('fast'); noErrors = false; } else $('#password_warning2').fadeOut('fast');
	}
	else 
		$('#password_warning').fadeIn('fast'); 	
	});
	$('#password_confirm').blur(function() { ($.trim($('#password').val()) == $.trim($('#password_confirm').val())) ? $('#password_confirm_warning').fadeOut('fast') : $('#password_confirm_warning').fadeIn('fast'); });
	$('#accept_terms').click(function() { $('#accept_terms').is(':checked') ? $('#accept_terms_warning').fadeOut('fast') : $('#accept_terms_warning').fadeIn('fast'); });
});

