jQuery(function(){
	formValidate();
	initNav();
	ajaxVideo();
	initPlugins();
	ieHover('#footer .btn, .form-search .btn', 'hover');
	if(jQuery.browser.msie && parseInt(jQuery.browser.version) == 6){
		DD_belatedPNG.fix('.header-holder, .header-content .btn-memberlogin,.nav-holder, .visual .switcher li span ,.header-content .btn-becomemember, .copyright-holder, .header-content .btn-return-to-public-site,.header-content .btn-log-out, .div-parent-add-class, .sub-nav-t, .sub-nav-b,.form-memberlogin input.btn , .container-holder, .visual .visual-holder span span, .main-holder, .news, #footer, .copyright ');
	}
});

function initNav(){
	var nav = '#nav li';
	var drop = 'div.sub-nav';
	var arrow = 'span.arrow';
	var duration = 500;
	var flag;
	var lastIndex;
	var lastObj;
	var opLen = 0;
	jQuery(nav).each(function(){
		var _this = jQuery(this);
		var _drop = _this.find(drop);
		var _arrow = _this.find(arrow);
		var _maxHeight = _drop.outerHeight(true);
		var timer;
		var offsetStart = -_maxHeight * 3;
		var offsetEnd = 0;
		_arrow.css({marginTop: offsetStart}).hide();
		_drop.css({marginTop: offsetStart}).hide();
		
		function open(_obj){
			opLen += 1;
			_obj.find(drop).addClass('animated');
			_obj.find(arrow).addClass('animated');
			_obj.find(drop).show().stop().animate({marginTop: _obj.offsetEnd}, duration);
			_obj.find(arrow).show().stop().animate({marginTop: _obj.offsetEnd}, duration);
		}
		
		function close(_obj){
			timer = setInterval(function(){
				if(!_obj.parents('li').hasClass('hover') || opLen != 1){
					opLen > 0 ? opLen -= 1 : opLen = 0;
					_obj.find(drop).stop().animate({marginTop: _obj.offsetStart}, duration, function(){
						_obj.find(drop).removeClass('animated');
					});
					_obj.find(arrow).stop().animate({marginTop: _obj.offsetStart}, duration, function(){
						_obj.find(arrow).removeClass('animated');
					});
					clearInterval(timer);
				}
			}, 10);
		}
		
		_this.mouseenter(function(){
			lastIndex = _this.index();
			_this.offsetStart = offsetStart;
			_this.offsetEnd = offsetEnd;
			open(_this);
		}).mouseleave(function(){
			close(_this);
		});
		_drop.mouseenter(function(){
			if(opLen){
				flag = true;
				jQuery(this).parents('li').addClass('hover');
				clearInterval(timer);
			}else{
				flag = false;
				jQuery(this).parents('li').removeClass('hover');
			}
		}).mouseleave(function(){
			flag = false;
			jQuery(this).parents('li').removeClass('hover');
		});
	});
}

function ajaxVideo(){
	var mainHolder = jQuery('div.slide');
	mainHolder.each(function(){
		var _this = jQuery(this);
		var _videoHolder = jQuery('div.video-holder-b', _this).empty();
		var _thumbsHolder = jQuery('div.list-review-scroll', _this);
		var _path = _this.attr('title');
		var _autoplay = false;
		_this.removeAttr('title');
		var _titleObj = [];
		var _videoUrl = [];
		var _event = 'click';
		var _prevIndex;
		function getVideo(_index){
			if(_index != _prevIndex){
				_videoHolder.css({width: 405, height: 333}).empty();
				var _block = jQuery('<div id="video" style="width:405px; height:312px;"></div>').appendTo(_videoHolder)
				var _object = '<script type="text/javascript">swfobject.embedSWF("'+_videoUrl[_index]+'?fs=1&enablejsapi=1&wmode=transparent&autoplay='+eval('_autoplay?1:0')+'", "video", "405", "312", "8", null, null, {allowScriptAccess: "always", wmode: "transparent"}, {id: "video"});</script>';
				if(_titleObj[_index] != 'undefined'){
					var _description = jQuery('<div class="title"></div>').appendTo(_videoHolder).html(_titleObj[_index]);
				}
				_block.html(_object);
				_prevIndex = _index;
			}
		}
		jQuery.ajax({
			url:_path,
			type:"get",
			success:function(msg){
				var _response = msg.split('<!-- video-block -->');
				var _list = jQuery('<ul></ul>').appendTo(_thumbsHolder);
				for(var i = 0; i < _response.length; i++){
					var _item = jQuery('<li rel="'+i+'"></li>').html(_response[i]).appendTo(_list);
					var _link = _item.find('a.video-url');
					_videoUrl.push(_link.attr('href'));
					_titleObj.push(_link.html());
					_link.remove();
					if(i == 0){getVideo(i);}
					_item.find('h3 > a, a.img').bind(_event, function(){
						getVideo(jQuery(this).parents('li:first').attr('rel'));
						return false;
					});
				}
			},
			error:function(){
				_thumbsHolder.html('<p>Error loading content</p>');
			}
		});
	});
}

function initPlugins(){
	jQuery('div.header-content').slideBlock({
		activeClass: 'login',
		opener: 'div.header-inner > ul a',
		openerClass: 'btn-memberlogin',
		slider: 'div.form-holder',
		background: 'div.login-bg',
		duration: 300,
		event: 'click'
	});
	jQuery('div.visual').fadeGallery({
		slideElements:'div.visual-holder > ul > li',
		pagerLinks:'ul.switcher li',
		autoRotation:true,
		switchTime:5000,
		duration:500,
		event:'mouseenter'
	});

	if(jQuery.browser.msie && parseInt(jQuery.browser.version) < 8){
		initAutoScalingNav({
			menuId: "nav",
			spacing: 2,
			constant: -2,
			tag: "a"
		});
	}
	jQuery('div.slide').css({display: 'block'});
	jQuery('ul.video-list').accordion({
		active: ".selected",
		autoHeight: false,
		header: ".opener",
		collapsible: true,
		event: "click"
	});
}

// slideBlock
jQuery.fn.slideBlock = function(_options){
	var _options = jQuery.extend({
		activeClass: 'active',
		opener: '>ul a',
		openerClass: 'btn-memberlogin',
		slider: 'div.form-holder',
		background: 'div.login-bg',
		duration: 300,
		event: 'click'
	},_options);

	return this.each(function(){
		var _holder = jQuery(this);
		var _activeClass = _options.activeClass;
		var _opener = jQuery(_options.opener, _holder);
		var _openerClass = _options.openerClass;
		var _slider = jQuery(_options.slider, _holder).show();
		var _background = jQuery(_options.background, _holder);
		var _duration = _options.duration;
		var _event = _options.event;
		var _opPar = _opener.parents('ul');
		if(_slider.length){
		var _holderHeight = _opPar.offset().top + _opPar.height();
		var _sliderHeight = _slider.height();
			_slider.css({height:0}).hide();
			_background.css({height:0}).hide();
			_opener.each(function(){
				var _this = jQuery(this);
				if(_this.hasClass(_openerClass)){
					_this.attr('href', '#');
					_this.bind(_event, function(){
						if(!_holder.hasClass(_activeClass)){
							_holder.addClass(_activeClass);
							_slider.show().animate({height: _sliderHeight}, _duration, function(){
								_slider.css({height: 'auto'});
							});
							_background.show().animate({height: _holderHeight}, _duration);
							_opener.each(function(){
								if(!jQuery(this).hasClass(_openerClass)){
									if(jQuery.browser.msie && parseInt(jQuery.browser.version) < 7){
										jQuery(this).hide();
									}else{
										jQuery(this).fadeOut(_duration / 2);
									}
								}
							});
						}else{
							_holder.trigger('sizeRefresh');
							_slider.animate({height: 0}, _duration, function(){
								_slider.hide();
							});
							_background.animate({height: 0}, _duration, function(){
								_background.hide();
							});
							if(jQuery.browser.msie && parseInt(jQuery.browser.version) > 6){
								_opener.show();
							}else{
								_opener.fadeIn(_duration / 2);
							}
							_holder.removeClass(_activeClass);
						}
						return false;
					});
					_holder.bind('sizeRefresh', function(){
						_holderHeight = _opPar.offset().top + _opPar.height();
						_sliderHeight = _slider.height();
						_slider.css({zoom: 1});
						jQuery('span.line', _slider).css({position: 'static'});
						jQuery('span.line', _slider).css({position: 'absolute'});
						_background.css({height: _holderHeight});
					});
				}
			});
		}else{
			return;
		}
	});
}

// jquery ie6 hover pack
function ieHover(obj, hoverClass){
	var elements = obj;
	var hoverClass = hoverClass;
	if(jQuery.browser.msie && parseInt($.browser.version) == 6){
		jQuery(elements).hover(function(){
			jQuery(this).addClass(hoverClass);
		}, function(){
			jQuery(this).removeClass(hoverClass);
		});
	}
}

// slideshow plugin
jQuery.fn.fadeGallery = function(_options){
	var _options = jQuery.extend({
		slideElements:'div.slideset > div',
		pagerLinks:'div.paging a',
		generatePagination:'div.paging',
		paginationUlClass:'switcher',
		switcherClasses:'',
		switcherClassTo:'a',
		currentNumSlide:'.count .current',
		indexOfNumsSlides:'.count .indexof',
		alwaysPutZero:true,
		btnPauseToSwitcher:'false',
		btnNext:'a.next',
		btnPrev:'a.prev',
		btnPlayPause:'a.play-pause',
		btnPlay:'a.play',
		btnPause:'a.pause',
		pausedClass:'paused',
		disabledClass: 'disabled',
		playClass:'playing',
		activeClass:'active',
		loadingClass:'ajax-loading',
		loadedClass:'slide-loaded',
		dynamicImageLoad:false,
		dynamicImageLoadAttr:'alt',
		currentNum:false,
		allNum:false,
		startSlide:null,
		noCircle:false,
		pauseOnHover:true,
		autoRotation:false,
		autoHeight:false,
		onInit:false,
		onBeforeFade:false,
		onAfterFade:false,
		onChange:false,
		disableWhileAnimating:false,
		switchTime:3000,
		duration:650,
		event:'click'
	},_options);

	return this.each(function(){
		// gallery options
		if(this.slideshowInit) return; else this.slideshowInit;
		var _this = jQuery(this);
		var _slides = jQuery(_options.slideElements, _this);
		var _pagerLinks = jQuery(_options.pagerLinks, _this);
		var _generatePagination = jQuery(_options.generatePagination, _this);
		var _paginationUlClass = _options.paginationUlClass;
		var _switcherClasses = _options.switcherClasses;
		var _switcherClassTo = _options.switcherClassTo;
		var _currentNumSlide = jQuery(_options.currentNumSlide, _this);
		var _indexOfNumsSlides = jQuery(_options.indexOfNumsSlides, _this);
		var _alwaysPutZero = _options.alwaysPutZero;
		var _btnPauseToSwitcher = _options.btnPauseToSwitcher;
		var _btnPrev = jQuery(_options.btnPrev, _this);
		var _btnNext = jQuery(_options.btnNext, _this);
		var _btnPlayPause = jQuery(_options.btnPlayPause, _this);
		var _btnPause = jQuery(_options.btnPause, _this);
		var _btnPlay = jQuery(_options.btnPlay, _this);
		var _pauseOnHover = _options.pauseOnHover;
		var _dynamicImageLoad = _options.dynamicImageLoad;
		var _dynamicImageLoadAttr = _options.dynamicImageLoadAttr;
		var _autoRotation = _options.autoRotation;
		var _activeClass = _options.activeClass;
		var _loadingClass = _options.loadingClass;
		var _loadedClass = _options.loadedClass;
		var _disabledClass = _options.disabledClass;
		var _pausedClass = _options.pausedClass;
		var _playClass = _options.playClass;
		var _autoHeight = _options.autoHeight;
		var _duration = _options.duration;
		var _switchTime = _options.switchTime;
		var _controlEvent = _options.event;
		var _currentNum = (_options.currentNum ? jQuery(_options.currentNum, _this) : false);
		var _allNum = (_options.allNum ? jQuery(_options.allNum, _this) : false);
		var _startSlide = _options.startSlide;
		var _noCycle = _options.noCircle;
		var _onChange = _options.onChange;
		var _onBeforeFade = _options.onBeforeFade;
		var _onAfterFade = _options.onAfterFade;
		var _onInit = _options.onInit;
		var _disableWhileAnimating = _options.disableWhileAnimating;
		
		if(_switcherClasses){_switcherClasses = _switcherClasses.split((/\s*,\s*/));}
		
		// gallery init
		var _anim = false;
		var _hover = false;
		var _prevIndex = 0;
		var _currentIndex = 0;
		var _slideCount = _slides.length;
		var _timer;
		var _switcherIndex = 0;
		if(_slideCount < 2) return;
		
		changeNum();
		function changeNum(){
			if(_currentNumSlide.length){
				if(_alwaysPutZero == false){
					_currentNumSlide.text(_currentIndex + 1);
				}else{
					if(_currentIndex + 1 < 10){
						var curIndNum = '0' + (_currentIndex + 1);
						_currentNumSlide.text(curIndNum);
					}
				}
			}
			if(_indexOfNumsSlides){
				if(_alwaysPutZero == false){
					_indexOfNumsSlides.text(_slides.length);
				}else{
					if(_slides.length < 10){
						var curIndNum = '0' + _slides.length;
						_indexOfNumsSlides.text(curIndNum);
					}
				}
			}
		}
		
		if(_generatePagination.length) {
			var list = $('<ul class="'+_paginationUlClass+'">');
			var classTagLi = '';
			var classTagA = '';
			for(var i=0; i<_slideCount; i++){
				if(_switcherClasses.length && _switcherClassTo == 'li'){
					classTagLi = ' class="'+_switcherClasses[_switcherIndex]+'"';
				}else if(_switcherClasses.length && _switcherClassTo == 'a'){
					classTagA = ' class="'+_switcherClasses[_switcherIndex]+'"';
				}
				$('<li'+classTagLi+'><a'+classTagA+' href="#">'+(i+1)+'</a></li>').appendTo(list);
				if(_switcherIndex < _switcherClasses.length -1){_switcherIndex++;}else{_switcherIndex = 0;}
			}
			_generatePagination.empty();
			list.appendTo(_generatePagination);
			_pagerLinks = list.children();
			if(_btnPauseToSwitcher == 'true'){_btnPause = list.children();}
		}
		
		_prevIndex = _slides.index(_slides.filter('.'+_activeClass));
		if(_prevIndex < 0) _prevIndex = _currentIndex = 0;
		else _currentIndex = _prevIndex;
		if(_startSlide != null) {
			if(_startSlide == 'random') _prevIndex = _currentIndex = Math.floor(Math.random()*_slideCount);
			else _prevIndex = _currentIndex = parseInt(_startSlide);
		}
		_slides.hide().eq(_currentIndex).show();
		if(_autoRotation) _this.removeClass(_pausedClass).addClass(_playClass);
		else _this.removeClass(_playClass).addClass(_pausedClass);


		// gallery control
		if(_btnPrev.length) {
			_btnPrev.bind(_controlEvent,function(){
				prevSlide();
				return false;
			});
		}
		if(_btnNext.length) {
			_btnNext.bind(_controlEvent,function(){
				nextSlide();
				return false;
			});
		}
		if(_pagerLinks.length) {
			_pagerLinks.each(function(_ind){
				jQuery(this).bind(_controlEvent,function(){
					if(_currentIndex != _ind) {
						if(_disableWhileAnimating && _anim) return;
						_prevIndex = _currentIndex;
						_currentIndex = _ind;
						switchSlide();
					}
					return false;
				});
			});
		}

		// play pause section
		if(_btnPlayPause.length) {
			_btnPlayPause.bind(_controlEvent,function(){
				if(_this.hasClass(_pausedClass)) {
					_this.removeClass(_pausedClass).addClass(_playClass);
					_autoRotation = true;
					autoSlide();
				} else {
					_autoRotation = false;
					if(_timer) clearTimeout(_timer);
					_this.removeClass(_playClass).addClass(_pausedClass);
				}
				return false;
			});
		}
		if(_btnPlay.length) {
			_btnPlay.bind(_controlEvent,function(){
				_this.removeClass(_pausedClass).addClass(_playClass);
				_autoRotation = true;
				autoSlide();
				return false;
			});
		}
		if(_btnPause.length) {
			_btnPause.bind(_controlEvent,function(){
				_autoRotation = false;
				if(_timer) clearTimeout(_timer);
				_this.removeClass(_playClass).addClass(_pausedClass);
				return false;
			});
		}

		// dynamic image loading (swap from ATTRIBUTE)
		function loadSlide(slide) {
			if(!slide.hasClass(_loadingClass) && !slide.hasClass(_loadedClass)) {
				var images = slide.find(_dynamicImageLoad) // pass selector here
				var imagesCount = images.length;
				if(imagesCount) {
					slide.addClass(_loadingClass);
					images.each(function(){
						var img = this;
						img.onload = function(){
							img.loaded = true;
							img.onload = null;
							setTimeout(reCalc,_duration);
						}
						img.setAttribute('src', img.getAttribute(_dynamicImageLoadAttr));
						img.setAttribute(_dynamicImageLoadAttr,'');
					}).css({opacity:0});

					function reCalc() {
						var cnt = 0;
						images.each(function(){
							if(this.loaded) cnt++;
						});
						if(cnt == imagesCount) {
							slide.removeClass(_loadingClass);
							images.animate({opacity:1},{duration:_duration,complete:function(){
								if(jQuery.browser.msie && jQuery.browser.version < 9) jQuery(this).css({opacity:'auto'})
							}});
							slide.addClass(_loadedClass)
						}
					}
				}
			}
		}

		// gallery animation
		function prevSlide() {
			if(_disableWhileAnimating && _anim) return;
			_prevIndex = _currentIndex;
			if(_currentIndex > 0) _currentIndex--;
			else {
				if(_noCycle) return;
				else _currentIndex = _slideCount-1;
			}
			switchSlide();
		}
		function nextSlide() {
			if(_disableWhileAnimating && _anim) return;
			_prevIndex = _currentIndex;
			if(_currentIndex < _slideCount-1) _currentIndex++;
			else {
				if(_noCycle) return;
				else _currentIndex = 0;
			}
			switchSlide();
		}
		function refreshStatus() {
			if(_dynamicImageLoad) loadSlide(_slides.eq(_currentIndex));
			if(_pagerLinks.length) _pagerLinks.removeClass(_activeClass).eq(_currentIndex).addClass(_activeClass);
			if(_currentNum) _currentNum.text(_currentIndex+1);
			if(_allNum) _allNum.text(_slideCount);
			_slides.eq(_prevIndex).removeClass(_activeClass);
			_slides.eq(_currentIndex).addClass(_activeClass);
			if(_noCycle) {
				if(_btnPrev.length) {
					if(_currentIndex == 0) _btnPrev.addClass(_disabledClass);
					else _btnPrev.removeClass(_disabledClass);
				}
				if(_btnNext.length) {
					if(_currentIndex == _slideCount-1) _btnNext.addClass(_disabledClass);
					else _btnNext.removeClass(_disabledClass);
				}
			}
			if(typeof _onChange === 'function') {
				_onChange(_this, _slides, _prevIndex, _currentIndex);
			}
		}
		function switchSlide() {
			_anim = true;
			if(typeof _onBeforeFade === 'function') _onBeforeFade(_this, _slides, _prevIndex, _currentIndex);
			_slides.eq(_prevIndex).fadeOut(_duration,function(){
				_anim = false;
			});
			_slides.eq(_currentIndex).fadeIn(_duration,function(){
				if(typeof _onAfterFade === 'function') _onAfterFade(_this, _slides, _prevIndex, _currentIndex);
			});
			if(_autoHeight) _slides.eq(_currentIndex).parent().animate({height:_slides.eq(_currentIndex).outerHeight(true)},{duration:_duration,queue:false});
			refreshStatus();
			autoSlide();
			changeNum();
		}

		// autoslide function
		function autoSlide() {
			if(!_autoRotation || _hover) return;
			if(_timer) clearTimeout(_timer);
			_timer = setTimeout(nextSlide,_switchTime+_duration);
		}
		if(_pauseOnHover) {
			_this.hover(function(){
				_hover = true;
				if(_timer) clearTimeout(_timer);
			},function(){
				_hover = false;
				autoSlide();
			});
		}
		refreshStatus();
		autoSlide();
		
		_this.bind('setslide',function(e,h){
			if(_currentIndex != h.num) _prevIndex = _currentIndex;
			_currentIndex = h.num;
			switchSlide();
		})
	});
}

function initAutoScalingNav(o){
	if (!o.menuId) o.menuId = "main-nav";
	if (!o.tag) o.tag = "a";
	if (!o.spacing) o.spacing = 0;
	if (!o.constant) o.constant = 0;
	if (!o.minPaddings) o.minPaddings = 0;
	var nav = document.getElementById(o.menuId);
	if(nav)
	{
		var lis = nav.getElementsByTagName("li");
		var asFl = [];
		var lisFl = [];
		for (var i=0, j=0; i<lis.length; i++)
		{
			if(lis[i].parentNode == nav)
			{
				var t = lis[i].getElementsByTagName(o.tag).item(0);
				asFl.push(t);
				asFl[j++].width = t.offsetWidth;
				lisFl.push(lis[i]);
				if(lisFl[0].className.indexOf('first-child') == -1){
					lisFl[0].className += " first-child";
				}
				if(lisFl[lisFl.length-1].className.indexOf('last-child') == -1){
					lisFl[lisFl.length-1].className += " last-child";
				}
			}
		}
		var menuWidth = nav.clientWidth - asFl.length*o.spacing - o.constant;
		if(getItemsWidth(asFl) < menuWidth)
		{
			for (var i=0; getItemsWidth(asFl) < menuWidth; i++)
			{
				asFl[i].width++;
				if(i >= asFl.length-1) i=-1;
			}
			for (var i=0; i<asFl.length; i++)
			{
				asFl[i].style.width = asFl[i].width + "px";
			}
		}
		else if(o.minPaddings > 0)
		{
			for (var i=0; i<asFl.length; i++)
			{
				asFl[i].style.width = asFl[i].width + o.minPaddings*2 + "px";
			}
		}
	}
	function getItemsWidth(a)
	{
		var w = 0;
		for(var q=0; q<a.length; q++)
		{
			w += a[q].width;
		}
		return w;
	}
}

// form validate js
function formValidate(){
	jQuery("form.form-login, form.form-newsletter").each(function(){
		var _form = jQuery(this);
		
		if(_form){
			var _requiredClass = 'required';
			var _errorClass = 'error';
			var _successClass = 'success';
			var _parentsElements = 'div.required, div.row';
			var _minLengthClass = 'min-length';
			var _maxLengthClass = 'max-length';
			var _parent = jQuery(_parentsElements, _form);
			var _charsOnlyClass = 'chars-only';
			var _digitsOnlyClass = 'digits-only';
			var _emailFields = _parent.find('input#email, input#mail').removeClass(_requiredClass);
			var _phoneFields = _parent.find('input#phone,' + 'input.' + _digitsOnlyClass).removeClass(_requiredClass);
			var _textFields = _parent.find('input:text.required, textarea.required');
			var _optionFields = _parent.find('input:radio.required');
			var _checkFields = _parent.find('input:checkbox.required');
			var _selectFields = _parent.find('select');
			var _submit = _form.find('input.btn');
			
			var _containsTextError = ['email address', 'password', 'first name', 'last name'];
			var _list = jQuery('<ul></ul>').appendTo(jQuery('div.error-count', _form));
			function errorMessages(obj, ind){
				var _errorMsg = [
					'%field%: Invalid email address',
					'%field%: Only alphanumic characters are allowed',
					'%field%: Minimum of 6 characters in length',
					'%field%: Required field cannot be left blank'
				]
				var _message = _errorMsg[ind].replace('%field%', obj.attr('name'));
				var _item = jQuery('<li rel="'+(obj.attr('name')+','+ind)+'"><span>'+_message+'</span></li>').appendTo(_list);
				jQuery('div.header-content').trigger('sizeRefresh');
			}
			function clearMessages(){_list.empty();}
			if(_emailFields.length){_emailFields.attr('type-field', 'email');}
			if(_phoneFields.length){_phoneFields.attr('type-field', 'phone');}
			if(_textFields.length){_textFields.attr('type-field', 'text');}
			if(_optionFields.length){_optionFields.attr('type-field', 'option');}
			if(_checkFields.length){_checkFields.attr('type-field', 'check');}
			if(_selectFields.length){_selectFields.attr('type-field', 'select');}
			
			var _errors = [];
			var _eInd = 0;
			
			if(_textFields.length){
				_textFields.each(function(){
					_errors.push('0');
					jQuery(this).attr('rel', _eInd);
					_eInd++;
				});
			}
			if(_emailFields.length){
				_emailFields.each(function(){
					_errors.push('0');
					jQuery(this).attr('rel', _eInd);
					_eInd++;
				});
			}
			if(_phoneFields.length){
				_phoneFields.each(function(){
					_errors.push('0');
					jQuery(this).attr('rel', _eInd);
					_eInd++;
				});
			}
			
			if(_optionFields.length){
				var prevName;
				var currName;
				_optionFields.each(function(){
					currName = jQuery(this).attr('name');
					if(currName != prevName){
						_errors.push('0');
						_eInd++;
						prevName = currName;
					}
					jQuery(this).attr('rel', _eInd);
				});
			}
			
			if(_checkFields.length){
				_checkFields.each(function(){
					_errors.push('0');
					jQuery(this).attr('rel', _eInd);
					_eInd++;
				});
			}
			
			if(_selectFields.length){
				_selectFields.each(function(){
					_errors.push('0');
					jQuery(this).attr('rel', _eInd);
					_eInd++;
				});
			}
			
			// by startup
			//ValidateFields();
			
			// by submit click
			_submit.click(function(){
				ValidateFields();
			});
			
			function ValidateFields(event, object){
				clearMessages();
				if(!arguments.length){
					if(_textFields.length){_textFields.each(function(){validateText(jQuery(this));});}
					if(_emailFields.length){_emailFields.each(function(){validateEmail(jQuery(this));});}
					if(_phoneFields.length){_phoneFields.each(function(){validatePhone(jQuery(this));});}
					if(_optionFields.length){_optionFields.each(function(){validateOption(jQuery(this));});}
					if(_checkFields.length){_checkFields.each(function(){validateCheck(jQuery(this));});}
					if(_selectFields.length){_selectFields.each(function(){validateSelect(jQuery(this));});}
				}else if(event == 'click' && object.length){
					if(object.attr('type-field') == 'email'){validateEmail(object);}
					if(object.attr('type-field') == 'phone'){validatePhone(object);}
					if(object.attr('type-field') == 'text'){validateText(object);}
					if(object.attr('type-field') == 'option'){validateOption(object);}
					if(object.attr('type-field') == 'check'){validateCheck(object);}
					if(object.attr('type-field') == 'select'){validateSelect(object);}
				}
				
				// emptying testing
				function validateText(obj){
					if(obj.is(':visible')){
						var _input = obj;
						if(_input.hasClass(_charsOnlyClass)){
							var _result = (/[0-9]/).test(_input.val());
						}
						if(_containsTextError.length){
							for(var i = 0; i < _containsTextError.length; i++){
								if(_input.val().toLowerCase().indexOf(_containsTextError[i].toLowerCase()) != -1){
									var _contains = true;
								}
							}
						}
						if(_input.val() == '' || _result || _contains){
							_errors[_input.attr('rel')] = '1';
							_input.parents(_parentsElements).removeClass(_successClass).addClass(_errorClass);
							if(obj.val() == '' || _contains){
								errorMessages(obj, 3);
							}
							if(obj.val() && !_contains){
								errorMessages(obj, 1);
							}
						}else{
							_errors[_input.attr('rel')] = '0';
							if(_errors[_input.attr('rel')] == '0'){
								_input.parents(_parentsElements).removeClass(_errorClass).addClass(_successClass);
							}
						}
					}
				}
				
				// email format testing
				function validateEmail(obj){
					if(obj.is(':visible')){
						var _email = obj;
						var _result = (/^([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}$/i).test(_email.val());
						if(_containsTextError.length){
							for(var i = 0; i < _containsTextError.length; i++){
								if(_email.val().toLowerCase().indexOf(_containsTextError[i].toLowerCase()) != -1){
									var _contains = true;
								}
							}
						}
						if(!_result || _contains || _email.val() == ''){
							if(_email.parents(_parentsElements).filter('[class!='+_errorClass+']')){
								_errors[_email.attr('rel')] = '1';
								_email.parents(_parentsElements).removeClass(_successClass).addClass(_errorClass);
								if(obj.val() == '' || _contains){
									errorMessages(obj, 3);
								}
								if(obj.val() && !_contains){errorMessages(obj, 0);}
							}
						}else{
							_errors[_email.attr('rel')] = '0';
							_email.parents(_parentsElements).removeClass(_errorClass).addClass(_successClass);
						}
					}
				}
				
				// digitals testing
				function validatePhone(obj){
					//if(obj.is(':visible')){
						var _phone = obj;
						var _result = (/^(\+?\d+)?\s*(\(\d+\))?[\s-]*([\d-]*)$/).test(_phone.val());
						if(obj.hasClass(_digitsOnlyClass)){_result = (/\D/).test(_phone.val());}
						var _minLength;
						if(obj.get(0).className.indexOf(_minLengthClass) != -1){
							var lengthCount = obj.get(0).className.replace(/[^\d]/g, '');
							if(obj.val().length < lengthCount){
								_minLength = true;
							}else{
								_minLength = false;
							}
						}
						if(_containsTextError.length){
							for(var i = 0; i < _containsTextError.length; i++){
								if(_phone.val().toLowerCase().indexOf(_containsTextError[i].toLowerCase()) != -1){
									var _contains = true;
								}
							}
						}
						if(_result || _contains || _minLength || _phone.val() == ''){
							if(_phone.parents(_parentsElements).filter('[class!='+_errorClass+']')){
								_errors[_phone.attr('rel')] = '1';
								_phone.parents(_parentsElements).removeClass(_successClass).addClass(_errorClass);
								if(obj.val() == '' || _contains){errorMessages(obj, 3);}
								if(_result && obj.val() && !_contains){errorMessages(obj, 1);}
								if(obj.val() && !_contains && !_result){
									if(_minLength){errorMessages(obj, 2);}
								}
							}
						}else{
							_errors[_phone.attr('rel')] = '0';
							_phone.parents(_parentsElements).removeClass(_errorClass).addClass(_successClass);
						}
					//}
				}
				
				// radio testing
				function validateOption(obj){
					if(obj.is(':visible')){
						var _option = obj;
						var _result = _option.parents(_parentsElements).find('input:radio:checked');
						if(!_result.length){
							_errors[_option.attr('rel')] = '1';
							_option.parents(_parentsElements).removeClass(_successClass).addClass(_errorClass);
						}else{
							_errors[_option.attr('rel')] = '0';
							_option.parents(_parentsElements).removeClass(_errorClass).addClass(_successClass);
						}
					}
				}
				
				// checking testing
				function validateCheck(obj){
					if(obj.is(':visible')){
						var _check = obj;
						var _result = _option.parents(_parentsElements).find('input:checkbox:checked');
						if(!_result.length){
							_errors[_check.attr('rel')] = '1';
							_check.parents(_parentsElements).removeClass(_successClass).addClass(_errorClass);
						}else{
							_errors[_check.attr('rel')] = '0';
							_check.parents(_parentsElements).removeClass(_errorClass).addClass(_successClass);
						}
					}
				}
				
				// select testing
				function validateSelect(obj){
					if(obj.is(':visible')){
						var _select = obj;
						var _result = _select.find(':selected').index();
						if(_result == 0){
							_errors[_select.attr('rel')] = '1';
							_select.parents(_parentsElements).removeClass(_successClass).addClass(_errorClass);
						}else{
							_errors[_select.attr('rel')] = '0';
							_select.parents(_parentsElements).removeClass(_errorClass).addClass(_successClass);
						}
					}
				}
			}
			_form.submit(function(){
				var error = 0;
				for(var i = 0; i < _errors.length; i++){
					if(_errors[i] == '1'){
						error++;
						_form.removeClass(_errorClass).addClass(_successClass);
					}
				}
				if(error != 0){
					error = 0;
					_form.removeClass(_successClass).addClass(_errorClass);
					return false;
				}
			});
		}else{
			return;
		}
	});
}

/*
 * jQuery UI 1.7.2
 *
 * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT (MIT-LICENSE.txt)
 * and GPL (GPL-LICENSE.txt) licenses.
 *
 * http://docs.jquery.com/UI
 */
jQuery.ui||(function(c){var i=c.fn.remove,d=c.browser.mozilla&&(parseFloat(c.browser.version)<1.9);c.ui={version:"1.7.2",plugin:{add:function(k,l,n){var m=c.ui[k].prototype;for(var j in n){m.plugins[j]=m.plugins[j]||[];m.plugins[j].push([l,n[j]])}},call:function(j,l,k){var n=j.plugins[l];if(!n||!j.element[0].parentNode){return}for(var m=0;m<n.length;m++){if(j.options[n[m][0]]){n[m][1].apply(j.element,k)}}}},contains:function(k,j){return document.compareDocumentPosition?k.compareDocumentPosition(j)&16:k!==j&&k.contains(j)},hasScroll:function(m,k){if(c(m).css("overflow")=="hidden"){return false}var j=(k&&k=="left")?"scrollLeft":"scrollTop",l=false;if(m[j]>0){return true}m[j]=1;l=(m[j]>0);m[j]=0;return l},isOverAxis:function(k,j,l){return(k>j)&&(k<(j+l))},isOver:function(o,k,n,m,j,l){return c.ui.isOverAxis(o,n,j)&&c.ui.isOverAxis(k,m,l)},keyCode:{BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38}};if(d){var f=c.attr,e=c.fn.removeAttr,h="http://www.w3.org/2005/07/aaa",a=/^aria-/,b=/^wairole:/;c.attr=function(k,j,l){var m=l!==undefined;return(j=="role"?(m?f.call(this,k,j,"wairole:"+l):(f.apply(this,arguments)||"").replace(b,"")):(a.test(j)?(m?k.setAttributeNS(h,j.replace(a,"aaa:"),l):f.call(this,k,j.replace(a,"aaa:"))):f.apply(this,arguments)))};c.fn.removeAttr=function(j){return(a.test(j)?this.each(function(){this.removeAttributeNS(h,j.replace(a,""))}):e.call(this,j))}}c.fn.extend({remove:function(){c("*",this).add(this).each(function(){c(this).triggerHandler("remove")});return i.apply(this,arguments)},enableSelection:function(){return this.attr("unselectable","off").css("MozUserSelect","").unbind("selectstart.ui")},disableSelection:function(){return this.attr("unselectable","on").css("MozUserSelect","none").bind("selectstart.ui",function(){return false})},scrollParent:function(){var j;if((c.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){j=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(c.curCSS(this,"position",1))&&(/(auto|scroll)/).test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0)}else{j=this.parents().filter(function(){return(/(auto|scroll)/).test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!j.length?c(document):j}});c.extend(c.expr[":"],{data:function(l,k,j){return !!c.data(l,j[3])},focusable:function(k){var l=k.nodeName.toLowerCase(),j=c.attr(k,"tabindex");return(/input|select|textarea|button|object/.test(l)?!k.disabled:"a"==l||"area"==l?k.href||!isNaN(j):!isNaN(j))&&!c(k)["area"==l?"parents":"closest"](":hidden").length},tabbable:function(k){var j=c.attr(k,"tabindex");return(isNaN(j)||j>=0)&&c(k).is(":focusable")}});function g(m,n,o,l){function k(q){var p=c[m][n][q]||[];return(typeof p=="string"?p.split(/,?\s+/):p)}var j=k("getter");if(l.length==1&&typeof l[0]=="string"){j=j.concat(k("getterSetter"))}return(c.inArray(o,j)!=-1)}c.widget=function(k,j){var l=k.split(".")[0];k=k.split(".")[1];c.fn[k]=function(p){var n=(typeof p=="string"),o=Array.prototype.slice.call(arguments,1);if(n&&p.substring(0,1)=="_"){return this}if(n&&g(l,k,p,o)){var m=c.data(this[0],k);return(m?m[p].apply(m,o):undefined)}return this.each(function(){var q=c.data(this,k);(!q&&!n&&c.data(this,k,new c[l][k](this,p))._init());(q&&n&&c.isFunction(q[p])&&q[p].apply(q,o))})};c[l]=c[l]||{};c[l][k]=function(o,n){var m=this;this.namespace=l;this.widgetName=k;this.widgetEventPrefix=c[l][k].eventPrefix||k;this.widgetBaseClass=l+"-"+k;this.options=c.extend({},c.widget.defaults,c[l][k].defaults,c.metadata&&c.metadata.get(o)[k],n);this.element=c(o).bind("setData."+k,function(q,p,r){if(q.target==o){return m._setData(p,r)}}).bind("getData."+k,function(q,p){if(q.target==o){return m._getData(p)}}).bind("remove",function(){return m.destroy()})};c[l][k].prototype=c.extend({},c.widget.prototype,j);c[l][k].getterSetter="option"};c.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName).removeClass(this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").removeAttr("aria-disabled")},option:function(l,m){var k=l,j=this;if(typeof l=="string"){if(m===undefined){return this._getData(l)}k={};k[l]=m}c.each(k,function(n,o){j._setData(n,o)})},_getData:function(j){return this.options[j]},_setData:function(j,k){this.options[j]=k;if(j=="disabled"){this.element[k?"addClass":"removeClass"](this.widgetBaseClass+"-disabled "+this.namespace+"-state-disabled").attr("aria-disabled",k)}},enable:function(){this._setData("disabled",false)},disable:function(){this._setData("disabled",true)},_trigger:function(l,m,n){var p=this.options[l],j=(l==this.widgetEventPrefix?l:this.widgetEventPrefix+l);m=c.Event(m);m.type=j;if(m.originalEvent){for(var k=c.event.props.length,o;k;){o=c.event.props[--k];m[o]=m.originalEvent[o]}}this.element.trigger(m,n);return !(c.isFunction(p)&&p.call(this.element[0],m,n)===false||m.isDefaultPrevented())}};c.widget.defaults={disabled:false};c.ui.mouse={_mouseInit:function(){var j=this;this.element.bind("mousedown."+this.widgetName,function(k){return j._mouseDown(k)}).bind("click."+this.widgetName,function(k){if(j._preventClickEvent){j._preventClickEvent=false;k.stopImmediatePropagation();return false}});if(c.browser.msie){this._mouseUnselectable=this.element.attr("unselectable");this.element.attr("unselectable","on")}this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName);(c.browser.msie&&this.element.attr("unselectable",this._mouseUnselectable))},_mouseDown:function(l){l.originalEvent=l.originalEvent||{};if(l.originalEvent.mouseHandled){return}(this._mouseStarted&&this._mouseUp(l));this._mouseDownEvent=l;var k=this,m=(l.which==1),j=(typeof this.options.cancel=="string"?c(l.target).parents().add(l.target).filter(this.options.cancel).length:false);if(!m||j||!this._mouseCapture(l)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){k.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(l)&&this._mouseDelayMet(l)){this._mouseStarted=(this._mouseStart(l)!==false);if(!this._mouseStarted){l.preventDefault();return true}}this._mouseMoveDelegate=function(n){return k._mouseMove(n)};this._mouseUpDelegate=function(n){return k._mouseUp(n)};c(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);(c.browser.safari||l.preventDefault());l.originalEvent.mouseHandled=true;return true},_mouseMove:function(j){if(c.browser.msie&&!j.button){return this._mouseUp(j)}if(this._mouseStarted){this._mouseDrag(j);return j.preventDefault()}if(this._mouseDistanceMet(j)&&this._mouseDelayMet(j)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,j)!==false);(this._mouseStarted?this._mouseDrag(j):this._mouseUp(j))}return !this._mouseStarted},_mouseUp:function(j){c(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=(j.target==this._mouseDownEvent.target);this._mouseStop(j)}return false},_mouseDistanceMet:function(j){return(Math.max(Math.abs(this._mouseDownEvent.pageX-j.pageX),Math.abs(this._mouseDownEvent.pageY-j.pageY))>=this.options.distance)},_mouseDelayMet:function(j){return this.mouseDelayMet},_mouseStart:function(j){},_mouseDrag:function(j){},_mouseStop:function(j){},_mouseCapture:function(j){return true}};c.ui.mouse.defaults={cancel:null,distance:1,delay:0}})(jQuery);;/*
 * jQuery UI Accordion 1.7.2
 *
 * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT (MIT-LICENSE.txt)
 * and GPL (GPL-LICENSE.txt) licenses.
 *
 * http://docs.jquery.com/UI/Accordion
 *
 * Depends:
 *	ui.core.js
 */
(function(a){a.widget("ui.accordion",{_init:function(){var d=this.options,b=this;this.running=0;if(d.collapsible==a.ui.accordion.defaults.collapsible&&d.alwaysOpen!=a.ui.accordion.defaults.alwaysOpen){d.collapsible=!d.alwaysOpen}if(d.navigation){var c=this.element.find("a").filter(d.navigationFilter);if(c.length){if(c.filter(d.header).length){this.active=c}else{this.active=c.parent().parent().prev();c.addClass("ui-accordion-content-active")}}}this.element.addClass("ui-accordion ui-widget ui-helper-reset");if(this.element[0].nodeName=="UL"){this.element.children("li").addClass("ui-accordion-li-fix")}this.headers=this.element.find(d.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){a(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){a(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){a(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){a(this).removeClass("ui-state-focus")});this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");this.active=this._findActive(this.active||d.active).toggleClass("ui-state-default").toggleClass("ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top");this.active.next().addClass("ui-accordion-content-active");a("<span/>").addClass("ui-icon "+d.icons.header).prependTo(this.headers);this.active.find(".ui-icon").toggleClass(d.icons.header).toggleClass(d.icons.headerSelected);if(a.browser.msie){this.element.find("a").css("zoom","1")}this.resize();this.element.attr("role","tablist");this.headers.attr("role","tab").bind("keydown",function(e){return b._keydown(e)}).next().attr("role","tabpanel");this.headers.not(this.active||"").attr("aria-expanded","false").attr("tabIndex","-1").next().hide();if(!this.active.length){this.headers.eq(0).attr("tabIndex","0")}else{this.active.attr("aria-expanded","true").attr("tabIndex","0")}if(!a.browser.safari){this.headers.find("a").attr("tabIndex","-1")}if(d.event){this.headers.bind((d.event)+".accordion",function(e){return b._clickHandler.call(b,e,this)})}},destroy:function(){var c=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role").unbind(".accordion").removeData("accordion");this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("tabindex");this.headers.find("a").removeAttr("tabindex");this.headers.children(".ui-icon").remove();var b=this.headers.next().css("display","").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active");if(c.autoHeight||c.fillHeight){b.css("height","")}},_setData:function(b,c){if(b=="alwaysOpen"){b="collapsible";c=!c}a.widget.prototype._setData.apply(this,arguments)},_keydown:function(e){var g=this.options,f=a.ui.keyCode;if(g.disabled||e.altKey||e.ctrlKey){return}var d=this.headers.length;var b=this.headers.index(e.target);var c=false;switch(e.keyCode){case f.RIGHT:case f.DOWN:c=this.headers[(b+1)%d];break;case f.LEFT:case f.UP:c=this.headers[(b-1+d)%d];break;case f.SPACE:case f.ENTER:return this._clickHandler({target:e.target},e.target)}if(c){a(e.target).attr("tabIndex","-1");a(c).attr("tabIndex","0");c.focus();return false}return true},resize:function(){var e=this.options,d;if(e.fillSpace){if(a.browser.msie){var b=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}d=this.element.parent().height();if(a.browser.msie){this.element.parent().css("overflow",b)}this.headers.each(function(){d-=a(this).outerHeight()});var c=0;this.headers.next().each(function(){c=Math.max(c,a(this).innerHeight()-a(this).height())}).height(Math.max(0,d-c)).css("overflow","auto")}else{if(e.autoHeight){d=0;this.headers.next().each(function(){d=Math.max(d,a(this).outerHeight())}).height(d)}}},activate:function(b){var c=this._findActive(b)[0];this._clickHandler({target:c},c)},_findActive:function(b){return b?typeof b=="number"?this.headers.filter(":eq("+b+")"):this.headers.not(this.headers.not(b)):b===false?a([]):this.headers.filter(":eq(0)")},_clickHandler:function(b,f){var d=this.options;if(d.disabled){return false}if(!b.target&&d.collapsible){this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").find(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);this.active.next().addClass("ui-accordion-content-active");var h=this.active.next(),e={options:d,newHeader:a([]),oldHeader:d.active,newContent:a([]),oldContent:h},c=(this.active=a([]));this._toggle(c,h,e);return false}var g=a(b.currentTarget||f);var i=g[0]==this.active[0];if(this.running||(!d.collapsible&&i)){return false}this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").find(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);this.active.next().addClass("ui-accordion-content-active");if(!i){g.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").find(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected);g.next().addClass("ui-accordion-content-active")}var c=g.next(),h=this.active.next(),e={options:d,newHeader:i&&d.collapsible?a([]):g,oldHeader:this.active,newContent:i&&d.collapsible?a([]):c.find("> *"),oldContent:h.find("> *")},j=this.headers.index(this.active[0])>this.headers.index(g[0]);this.active=i?a([]):g;this._toggle(c,h,e,i,j);return false},_toggle:function(b,i,g,j,k){var d=this.options,m=this;this.toShow=b;this.toHide=i;this.data=g;var c=function(){if(!m){return}return m._completed.apply(m,arguments)};this._trigger("changestart",null,this.data);this.running=i.size()===0?b.size():i.size();if(d.animated){var f={};if(d.collapsible&&j){f={toShow:a([]),toHide:i,complete:c,down:k,autoHeight:d.autoHeight||d.fillSpace}}else{f={toShow:b,toHide:i,complete:c,down:k,autoHeight:d.autoHeight||d.fillSpace}}if(!d.proxied){d.proxied=d.animated}if(!d.proxiedDuration){d.proxiedDuration=d.duration}d.animated=a.isFunction(d.proxied)?d.proxied(f):d.proxied;d.duration=a.isFunction(d.proxiedDuration)?d.proxiedDuration(f):d.proxiedDuration;var l=a.ui.accordion.animations,e=d.duration,h=d.animated;if(!l[h]){l[h]=function(n){this.slide(n,{easing:h,duration:e||700})}}l[h](f)}else{if(d.collapsible&&j){b.toggle()}else{i.hide();b.show()}c(true)}i.prev().attr("aria-expanded","false").attr("tabIndex","-1").blur();b.prev().attr("aria-expanded","true").attr("tabIndex","0").focus()},_completed:function(b){var c=this.options;this.running=b?0:--this.running;if(this.running){return}if(c.clearStyle){this.toShow.add(this.toHide).css({height:"",overflow:""})}this._trigger("change",null,this.data)}});a.extend(a.ui.accordion,{version:"1.7.2",defaults:{active:null,alwaysOpen:true,animated:"slide",autoHeight:true,clearStyle:false,collapsible:false,event:"click",fillSpace:false,header:"> li > :first-child,> :not(li):even",icons:{header:"ui-icon-triangle-1-e",headerSelected:"ui-icon-triangle-1-s"},navigation:false,navigationFilter:function(){return this.href.toLowerCase()==location.href.toLowerCase()}},animations:{slide:function(j,h){j=a.extend({easing:"swing",duration:300},j,h);if(!j.toHide.size()){j.toShow.animate({height:"show"},j);return}if(!j.toShow.size()){j.toHide.animate({height:"hide"},j);return}var c=j.toShow.css("overflow"),g,d={},f={},e=["height","paddingTop","paddingBottom"],b;var i=j.toShow;b=i[0].style.width;i.width(parseInt(i.parent().width(),10)-parseInt(i.css("paddingLeft"),10)-parseInt(i.css("paddingRight"),10)-(parseInt(i.css("borderLeftWidth"),10)||0)-(parseInt(i.css("borderRightWidth"),10)||0));a.each(e,function(k,m){f[m]="hide";var l=(""+a.css(j.toShow[0],m)).match(/^([\d+-.]+)(.*)$/);d[m]={value:l[1],unit:l[2]||"px"}});j.toShow.css({height:0,overflow:"hidden"}).show();j.toHide.filter(":hidden").each(j.complete).end().filter(":visible").animate(f,{step:function(k,l){if(l.prop=="height"){g=(l.now-l.start)/(l.end-l.start)}j.toShow[0].style[l.prop]=(g*d[l.prop].value)+d[l.prop].unit},duration:j.duration,easing:j.easing,complete:function(){if(!j.autoHeight){j.toShow.css("height","")}j.toShow.css("width",b);j.toShow.css({overflow:c});j.complete()}})},bounceslide:function(b){this.slide(b,{easing:b.down?"easeOutBounce":"swing",duration:b.down?1000:200})},easeslide:function(b){this.slide(b,{easing:"easeinout",duration:700})}}})})(jQuery);;

/*	SWFObject v2.2 <http://code.google.com/p/swfobject/> 
	is released under the MIT License <http://www.opensource.org/licenses/mit-license.php> 
*/
var swfobject=function(){var D="undefined",r="object",S="Shockwave Flash",W="ShockwaveFlash.ShockwaveFlash",q="application/x-shockwave-flash",R="SWFObjectExprInst",x="onreadystatechange",O=window,j=document,t=navigator,T=false,U=[h],o=[],N=[],I=[],l,Q,E,B,J=false,a=false,n,G,m=true,M=function(){var aa=typeof j.getElementById!=D&&typeof j.getElementsByTagName!=D&&typeof j.createElement!=D,ah=t.userAgent.toLowerCase(),Y=t.platform.toLowerCase(),ae=Y?/win/.test(Y):/win/.test(ah),ac=Y?/mac/.test(Y):/mac/.test(ah),af=/webkit/.test(ah)?parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,X=!+"\v1",ag=[0,0,0],ab=null;if(typeof t.plugins!=D&&typeof t.plugins[S]==r){ab=t.plugins[S].description;if(ab&&!(typeof t.mimeTypes!=D&&t.mimeTypes[q]&&!t.mimeTypes[q].enabledPlugin)){T=true;X=false;ab=ab.replace(/^.*\s+(\S+\s+\S+$)/,"$1");ag[0]=parseInt(ab.replace(/^(.*)\..*$/,"$1"),10);ag[1]=parseInt(ab.replace(/^.*\.(.*)\s.*$/,"$1"),10);ag[2]=/[a-zA-Z]/.test(ab)?parseInt(ab.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof O.ActiveXObject!=D){try{var ad=new ActiveXObject(W);if(ad){ab=ad.GetVariable("$version");if(ab){X=true;ab=ab.split(" ")[1].split(",");ag=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}}catch(Z){}}}return{w3:aa,pv:ag,wk:af,ie:X,win:ae,mac:ac}}(),k=function(){if(!M.w3){return}if((typeof j.readyState!=D&&j.readyState=="complete")||(typeof j.readyState==D&&(j.getElementsByTagName("body")[0]||j.body))){f()}if(!J){if(typeof j.addEventListener!=D){j.addEventListener("DOMContentLoaded",f,false)}if(M.ie&&M.win){j.attachEvent(x,function(){if(j.readyState=="complete"){j.detachEvent(x,arguments.callee);f()}});if(O==top){(function(){if(J){return}try{j.documentElement.doScroll("left")}catch(X){setTimeout(arguments.callee,0);return}f()})()}}if(M.wk){(function(){if(J){return}if(!/loaded|complete/.test(j.readyState)){setTimeout(arguments.callee,0);return}f()})()}s(f)}}();function f(){if(J){return}try{var Z=j.getElementsByTagName("body")[0].appendChild(C("span"));Z.parentNode.removeChild(Z)}catch(aa){return}J=true;var X=U.length;for(var Y=0;Y<X;Y++){U[Y]()}}function K(X){if(J){X()}else{U[U.length]=X}}function s(Y){if(typeof O.addEventListener!=D){O.addEventListener("load",Y,false)}else{if(typeof j.addEventListener!=D){j.addEventListener("load",Y,false)}else{if(typeof O.attachEvent!=D){i(O,"onload",Y)}else{if(typeof O.onload=="function"){var X=O.onload;O.onload=function(){X();Y()}}else{O.onload=Y}}}}}function h(){if(T){V()}else{H()}}function V(){var X=j.getElementsByTagName("body")[0];var aa=C(r);aa.setAttribute("type",q);var Z=X.appendChild(aa);if(Z){var Y=0;(function(){if(typeof Z.GetVariable!=D){var ab=Z.GetVariable("$version");if(ab){ab=ab.split(" ")[1].split(",");M.pv=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}else{if(Y<10){Y++;setTimeout(arguments.callee,10);return}}X.removeChild(aa);Z=null;H()})()}else{H()}}function H(){var ag=o.length;if(ag>0){for(var af=0;af<ag;af++){var Y=o[af].id;var ab=o[af].callbackFn;var aa={success:false,id:Y};if(M.pv[0]>0){var ae=c(Y);if(ae){if(F(o[af].swfVersion)&&!(M.wk&&M.wk<312)){w(Y,true);if(ab){aa.success=true;aa.ref=z(Y);ab(aa)}}else{if(o[af].expressInstall&&A()){var ai={};ai.data=o[af].expressInstall;ai.width=ae.getAttribute("width")||"0";ai.height=ae.getAttribute("height")||"0";if(ae.getAttribute("class")){ai.styleclass=ae.getAttribute("class")}if(ae.getAttribute("align")){ai.align=ae.getAttribute("align")}var ah={};var X=ae.getElementsByTagName("param");var ac=X.length;for(var ad=0;ad<ac;ad++){if(X[ad].getAttribute("name").toLowerCase()!="movie"){ah[X[ad].getAttribute("name")]=X[ad].getAttribute("value")}}P(ai,ah,Y,ab)}else{p(ae);if(ab){ab(aa)}}}}}else{w(Y,true);if(ab){var Z=z(Y);if(Z&&typeof Z.SetVariable!=D){aa.success=true;aa.ref=Z}ab(aa)}}}}}function z(aa){var X=null;var Y=c(aa);if(Y&&Y.nodeName=="OBJECT"){if(typeof Y.SetVariable!=D){X=Y}else{var Z=Y.getElementsByTagName(r)[0];if(Z){X=Z}}}return X}function A(){return !a&&F("6.0.65")&&(M.win||M.mac)&&!(M.wk&&M.wk<312)}function P(aa,ab,X,Z){a=true;E=Z||null;B={success:false,id:X};var ae=c(X);if(ae){if(ae.nodeName=="OBJECT"){l=g(ae);Q=null}else{l=ae;Q=X}aa.id=R;if(typeof aa.width==D||(!/%$/.test(aa.width)&&parseInt(aa.width,10)<310)){aa.width="310"}if(typeof aa.height==D||(!/%$/.test(aa.height)&&parseInt(aa.height,10)<137)){aa.height="137"}j.title=j.title.slice(0,47)+" - Flash Player Installation";var ad=M.ie&&M.win?"ActiveX":"PlugIn",ac="MMredirectURL="+O.location.toString().replace(/&/g,"%26")+"&MMplayerType="+ad+"&MMdoctitle="+j.title;if(typeof ab.flashvars!=D){ab.flashvars+="&"+ac}else{ab.flashvars=ac}if(M.ie&&M.win&&ae.readyState!=4){var Y=C("div");X+="SWFObjectNew";Y.setAttribute("id",X);ae.parentNode.insertBefore(Y,ae);ae.style.display="none";(function(){if(ae.readyState==4){ae.parentNode.removeChild(ae)}else{setTimeout(arguments.callee,10)}})()}u(aa,ab,X)}}function p(Y){if(M.ie&&M.win&&Y.readyState!=4){var X=C("div");Y.parentNode.insertBefore(X,Y);X.parentNode.replaceChild(g(Y),X);Y.style.display="none";(function(){if(Y.readyState==4){Y.parentNode.removeChild(Y)}else{setTimeout(arguments.callee,10)}})()}else{Y.parentNode.replaceChild(g(Y),Y)}}function g(ab){var aa=C("div");if(M.win&&M.ie){aa.innerHTML=ab.innerHTML}else{var Y=ab.getElementsByTagName(r)[0];if(Y){var ad=Y.childNodes;if(ad){var X=ad.length;for(var Z=0;Z<X;Z++){if(!(ad[Z].nodeType==1&&ad[Z].nodeName=="PARAM")&&!(ad[Z].nodeType==8)){aa.appendChild(ad[Z].cloneNode(true))}}}}}return aa}function u(ai,ag,Y){var X,aa=c(Y);if(M.wk&&M.wk<312){return X}if(aa){if(typeof ai.id==D){ai.id=Y}if(M.ie&&M.win){var ah="";for(var ae in ai){if(ai[ae]!=Object.prototype[ae]){if(ae.toLowerCase()=="data"){ag.movie=ai[ae]}else{if(ae.toLowerCase()=="styleclass"){ah+=' class="'+ai[ae]+'"'}else{if(ae.toLowerCase()!="classid"){ah+=" "+ae+'="'+ai[ae]+'"'}}}}}var af="";for(var ad in ag){if(ag[ad]!=Object.prototype[ad]){af+='<param name="'+ad+'" value="'+ag[ad]+'" />'}}aa.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+ah+">"+af+"</object>";N[N.length]=ai.id;X=c(ai.id)}else{var Z=C(r);Z.setAttribute("type",q);for(var ac in ai){if(ai[ac]!=Object.prototype[ac]){if(ac.toLowerCase()=="styleclass"){Z.setAttribute("class",ai[ac])}else{if(ac.toLowerCase()!="classid"){Z.setAttribute(ac,ai[ac])}}}}for(var ab in ag){if(ag[ab]!=Object.prototype[ab]&&ab.toLowerCase()!="movie"){e(Z,ab,ag[ab])}}aa.parentNode.replaceChild(Z,aa);X=Z}}return X}function e(Z,X,Y){var aa=C("param");aa.setAttribute("name",X);aa.setAttribute("value",Y);Z.appendChild(aa)}function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.style.display="none";(function(){if(X.readyState==4){b(Y)}else{setTimeout(arguments.callee,10)}})()}else{X.parentNode.removeChild(X)}}}function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function"){Y[X]=null}}Y.parentNode.removeChild(Y)}}function c(Z){var X=null;try{X=j.getElementById(Z)}catch(Y){}return X}function C(X){return j.createElement(X)}function i(Z,X,Y){Z.attachEvent(X,Y);I[I.length]=[Z,X,Y]}function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=parseInt(X[1],10)||0;X[2]=parseInt(X[2],10)||0;return(Y[0]>X[0]||(Y[0]==X[0]&&Y[1]>X[1])||(Y[0]==X[0]&&Y[1]==X[1]&&Y[2]>=X[2]))?true:false}function v(ac,Y,ad,ab){if(M.ie&&M.mac){return}var aa=j.getElementsByTagName("head")[0];if(!aa){return}var X=(ad&&typeof ad=="string")?ad:"screen";if(ab){n=null;G=null}if(!n||G!=X){var Z=C("style");Z.setAttribute("type","text/css");Z.setAttribute("media",X);n=aa.appendChild(Z);if(M.ie&&M.win&&typeof j.styleSheets!=D&&j.styleSheets.length>0){n=j.styleSheets[j.styleSheets.length-1]}G=X}if(M.ie&&M.win){if(n&&typeof n.addRule==r){n.addRule(ac,Y)}}else{if(n&&typeof j.createTextNode!=D){n.appendChild(j.createTextNode(ac+" {"+Y+"}"))}}}function w(Z,X){if(!m){return}var Y=X?"visible":"hidden";if(J&&c(Z)){c(Z).style.visibility=Y}else{v("#"+Z,"visibility:"+Y)}}function L(Y){var Z=/[\\\"<>\.;]/;var X=Z.exec(Y)!=null;return X&&typeof encodeURIComponent!=D?encodeURIComponent(Y):Y}var d=function(){if(M.ie&&M.win){window.attachEvent("onunload",function(){var ac=I.length;for(var ab=0;ab<ac;ab++){I[ab][0].detachEvent(I[ab][1],I[ab][2])}var Z=N.length;for(var aa=0;aa<Z;aa++){y(N[aa])}for(var Y in M){M[Y]=null}M=null;for(var X in swfobject){swfobject[X]=null}swfobject=null})}}();return{registerObject:function(ab,X,aa,Z){if(M.w3&&ab&&X){var Y={};Y.id=ab;Y.swfVersion=X;Y.expressInstall=aa;Y.callbackFn=Z;o[o.length]=Y;w(ab,false)}else{if(Z){Z({success:false,id:ab})}}},getObjectById:function(X){if(M.w3){return z(X)}},embedSWF:function(ab,ah,ae,ag,Y,aa,Z,ad,af,ac){var X={success:false,id:ah};if(M.w3&&!(M.wk&&M.wk<312)&&ab&&ah&&ae&&ag&&Y){w(ah,false);K(function(){ae+="";ag+="";var aj={};if(af&&typeof af===r){for(var al in af){aj[al]=af[al]}}aj.data=ab;aj.width=ae;aj.height=ag;var am={};if(ad&&typeof ad===r){for(var ak in ad){am[ak]=ad[ak]}}if(Z&&typeof Z===r){for(var ai in Z){if(typeof am.flashvars!=D){am.flashvars+="&"+ai+"="+Z[ai]}else{am.flashvars=ai+"="+Z[ai]}}}if(F(Y)){var an=u(aj,am,ah);if(aj.id==ah){w(ah,true)}X.success=true;X.ref=an}else{if(aa&&A()){aj.data=aa;P(aj,am,ah,ac);return}else{w(ah,true)}}if(ac){ac(X)}})}else{if(ac){ac(X)}}},switchOffAutoHideShow:function(){m=false},ua:M,getFlashPlayerVersion:function(){return{major:M.pv[0],minor:M.pv[1],release:M.pv[2]}},hasFlashPlayerVersion:F,createSWF:function(Z,Y,X){if(M.w3){return u(Z,Y,X)}else{return undefined}},showExpressInstall:function(Z,aa,X,Y){if(M.w3&&A()){P(Z,aa,X,Y)}},removeSWF:function(X){if(M.w3){y(X)}},createCSS:function(aa,Z,Y,X){if(M.w3){v(aa,Z,Y,X)}},addDomLoadEvent:K,addLoadEvent:s,getQueryParamValue:function(aa){var Z=j.location.search||j.location.hash;if(Z){if(/\?/.test(Z)){Z=Z.split("?")[1]}if(aa==null){return L(Z)}var Y=Z.split("&");for(var X=0;X<Y.length;X++){if(Y[X].substring(0,Y[X].indexOf("="))==aa){return L(Y[X].substring((Y[X].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(a){var X=c(R);if(X&&l){X.parentNode.replaceChild(l,X);if(Q){w(Q,true);if(M.ie&&M.win){l.style.display="block"}}if(E){E(B)}}a=false}}}}();
