var TG = TG || {};

TG.COMMON = {

	newWindow: function(that) {
		window.open(that.href, 'blank');
	},

	smoothScroll: function(topPos) {
		j$('html, body').animate({
			scrollTop: topPos
		}, 300);
	},

	rollover: {
		_getPath: function(src) {
			var suffix = {
				on: '_on.',
				off: '_off.'
			},
			path = {
				over: src.replace(suffix.off, suffix.on),
				out: src.replace(suffix.on, suffix.off)
			};

			return path;
		},
		_setPath: function($el, path) {
			$el.attr('src', path);
		},
		changeImage: function(e, el) {
			var $img = el,
				src = $img.attr('src'),
				path = this._getPath(src),
				crPath = (e.type === 'mouseover') ? path.over : path.out;

			if (!$img.hasClass('jscCurrentImage')) {
				this._setPath($img, crPath);
			}
		},
		preload: {
			hoverImages: function() {
				var $images = j$('#jsiOuterWrapper').find('.jscHover'),
					$preImg = j$('<img />'),
					$crImg, src, path;

				for (var i = 0, len = $images.length; i < len; i++) {
					$crImg = $images.eq(i);
					src = $crImg.attr('src');
					path = TG.COMMON.rollover._getPath(src);

					$preImg.attr('src', path.over);
				}
			},
			initImages: function(arr) {
				var path,
					$preImg = j$('<img />');

				for (var i = 0, len = arr.length; i < len; i++) {
					path = arr[i];

					$preImg.attr('src', path);
				}
			}
		}
	},

	slideToggleText: function(e, that) {
		var $target = j$(that).children('.jscTopToggleText'),
			value = $target.hasClass('jscSizeS') ? -45 : -59,
			num = (e.type === 'mouseenter') ? 0 : value;

		$target.stop(true, true).animate({
			bottom: num
		}, 300);
	},

	slideToggleList: function(e) {
		var $side = j$('#jsiTopSide'),
			$toggleBanner = j$(e.target).parents('.jscToggleBanner'),
			$btn = {
				up: $toggleBanner.find('.jscWeddingUp'),
				btm: $toggleBanner.find('.jscWeddingBtm')
			};

		$toggleBanner.parents('dl').find('.jscTopSideBanner').animate({
			'height': 'toggle'
		}, 300, function() {
			if ($btn.up.is(':visible')) {
				$btn.up.hide();
				$btn.btm.show();
			} else {
				$btn.up.show();
				$btn.btm.hide();
			}

		});
	},

	toggleContent: {
		_animate: function($that, call) {
			var $parent = $that.parents('.jscChapter'),
				$openChapter = $parent.find('.jscOpenChapter'),
				$defaultChapter = $parent.find('.jscDefaultChapter'),
				$chapterThum = $parent.find('.jscChapterThum'),
				callback = call || false,
				topPos,
				elementsArr = [$openChapter, $defaultChapter];

			j$.each(elementsArr, function() {
				$chapterThum.removeClass('pr');
				j$(this).animate({
					height: 'toggle'
				}, 500, function() {
					if (callback && j$(this).hasClass('jscOpenChapter')) {
						topPos = $parent.offset().top;
						$chapterThum.addClass('pr');

						TG.COMMON.smoothScroll(topPos);
					}
				});
			});
		},
		toggle: function(e) {
			var $target = j$(e.target),
				$crStory = j$('#jsiChapterWrap').find('.jscStory').filter(':visible'),
				$crChapter = $crStory.find('.jscChapter'),
				self = this,
				$this;

			$crChapter.find('.jscOpenChapter').each(function() {
				$this = j$(this);

				if ($this.is(':visible')) {
					self._animate($this);
				}
			});

			this._animate($target, true);
		},
		close: function(e) {
			this._animate(j$(e.target));
		}
	},

	toggleSearchText: function(e) {
		var $target = j$(e.target),
			textClass = 'jscSearchText';

		if (e.type === 'blur' && $target.val() === '') {
			$target.addClass(textClass);
		} else {
			$target.removeClass(textClass);
		}
	},

	movingToContents: function(e) {
		var $targetAnchor = j$(e.target).parents('a'),
			$wrap = j$('#jsiOuterWrapper'),
			$casette = $wrap.find('.jscCasette'),
			index = $casette.index($targetAnchor.parents('.jscCasette')),
			headerHeight = j$('#jsiHeader').outerHeight(),
			num = $targetAnchor.hasClass('jscNextContents') ? 1 : -1,
			posIndex = index + num,
			pos = [
				80,		//one heart wedding
				575,	//wedding story
				1200,	//produce
				1930,	//wedding hall
				2659,	//one heart wedding
				3119	//haute couture wedding
			];

		if (posIndex === -1) {
			posIndex = 0;
		}

		j$(window).scrollTop(pos[posIndex]);
	},

	hashChangeContents: function(args) {
		var settings = {
			page: args.page,
			$visual: j$(args.visual),
			$wrap: j$(args.wrap),
			$casette: j$(args.wrap).find(args.casette)
		},
		hash = location.hash,
		flag = false,
		number, index;

		settings.$casette.hide();

		if (hash !== '') {
			flag = true;
			number = parseInt(hash.replace('#', ''), 10);

			if (number <= settings.$casette.length) {
				index = number - 1;
			} else {
				flag = false;
			}
		}

		if (!flag) {
			index = 0;
		}

		switch(settings.page) {
			case 'story':
				settings.$casette.eq(index).show();
				TG.COMMON.slideVisual.sliding.slide({
					el: '',
					index: index,
					animation: false
				});
			break;
			case 'produce':
				TG.COMMON.roopSlide.init(number);
			break;
			default:
			break;
		}
		settings.$visual.data('flag', index);
	},

	slideBg: {
		_getPosition: function($target, e) {
			var bgPos = $target.css('background-position'),
				height = $target.height(),
				bgPosSplit,
				xPos, yPos, pos,
				convertNum = function(str) {
					return parseInt(str.replace('px', '').replace('%', ''), 10);
				};

			if (bgPos) {
				bgPosSplit = bgPos.split(' ');
				xPos = convertNum(bgPosSplit[0]);
				yPos = convertNum(bgPosSplit[1]);
			} else {
				xPos = convertNum($target.css('background-position-x'));
				yPos = convertNum($target.css('background-position-y'));
			}

			pos = {
				over: (xPos + 'px') + ' ' + (yPos - height + 'px'),
				out: (xPos + 'px') + ' ' + (yPos + height + 'px')
			};

			return pos;
		},
		changePosition: function(e, $el) {
			var slideBg = TG.COMMON.slideBg,
				pos = slideBg._getPosition($el, e),
				posSet;

			if (e.type === 'mouseover') {
				$el.data('event', true);
			}

			if (e.type !== 'mouseover' && $el.data('event') === undefined) {
				$el.data('event', true);
			} else {
				posSet = (e.type === 'mouseover' || e.type === 'mouseenter') ? pos.over : pos.out;
				$el.css('background-position', posSet);
			}
		}
	},

	slideVisual: {
		_method: {
			setFlag: function($el, that) {
				var $that = j$(that),
					$visual = $el,
					$list = $visual.find('li'),
					flag, index;

				if ($that.hasClass('jscNextBtn') || $that.hasClass('jscPrevBtn')) {
					if ($visual.data('flag')) {
						flag = $visual.data('flag', flag);

						if ($that.hasClass('jscNextBtn')) {
							flag += 1;
						} else {
							flag += -1;
						}
					} else {
						flag = 1;
					}
				} else {
					index = j$(that).parents('ul').children('li').index(j$(that).parents('li'));
					flag = index;
				}
				$visual.data('flag', flag);

				return flag;
			},
			changeBtn: function($el, index) {
				var $parents = j$('#jsiContents').find('.jscBtnParent'),
					$btn = {
						prev: $parents.find('.jscPrevBtn'),
						next: $parents.find('.jscNextBtn')
					},
					liLen = $el.find('li').length;

				$btn.prev.show();
				$btn.next.show();

				if (index === 0) {
					$btn.prev.hide();
				} else if (index === (liLen - 1)) {
					$btn.next.hide();
				}
			},
			replaceSrc: function(index, $el) {
				var src,
					$this,
					$navImage = $el.find('img'),
					$targetImage = $navImage.eq(index),
					currentClass = 'jscCurrentImage',
					suffix = {
						on: '_on.',
						off: '_off.'
					};

				$navImage.each(function() {
					$this = j$(this);
					src = $this.attr('src');

					$this.removeClass(currentClass);

					if (src.match(suffix.on)) {
						$this.attr('src', src.replace(suffix.on, suffix.off));
					}
				});

				$targetImage.attr('src', $targetImage.attr('src').replace(suffix.off, suffix.on)).addClass(currentClass);
			}
		},
		sliding: {
			_changeContent: function(index) {
				var $story = j$('#jsiChapterWrap').find('.jscStory'),
					$this;

				$story.each(function(i) {
					$this = j$(this);

					$this.find('.jscOpenChapter').hide();
					$this.find('.jscDefaultChapter').show();
					if (index === i) {
						$this.show();
					} else {
						$this.hide();
					}
				});
			},
			slide: function(args) {
				var	$list = j$('#jsiVisual').find('li'),
					liLen = $list.length,
					_method = TG.COMMON.slideVisual._method,
					flag = args.index !== '' ? args.index : _method.setFlag(j$('#jsiVisual'), args.el),
					setCss = function(index, num) {
						if (args.animation) {
							$list.eq(index).animate({
								'margin-left': num + 'px'
							}, 500);
						} else {
							$list.eq(index).css({
								'margin-left': num + 'px'
							});
						}
					};

				_method.changeBtn(j$('#jsiVisual'), flag);
				_method.replaceSrc(flag, j$('#jsiNavStory'));
				this._changeContent(flag);

				for (var i = 0, len = $list.length; i < len; i++) {
					if (flag <= i) {
						setCss(i, 0);
					}
				}

				for (var j = 0; j < flag; j++) {
					setCss(j, -830);
				}
			}
		},
		accordion: {
			_changeContents: function(index) {
				var $pointCasette = j$('#jsiPrPointArea').find('.jscPrPoint');

				$pointCasette.hide();
				$pointCasette.eq(index).show();
			},
			_buildCover: function(index) {
				var $wrap = j$('#jsiPrVisualWrap'),
					$cover = j$('<div/>').attr('id', 'jsiPrCover'),
					imgPath = '/img/pr/',
					$text, $close,
					src = {
						text: imgPath + 'pr_visual_text0' + (index + 1) +'.jpg',
						close: imgPath + 'pr_visual_close0' + (index + 1) +'.png'
					};

				$text = '<p id="jsiPrText"><img src="' + src.text + '" \/><\/p>';
				$close = '<p id="jsiCloseBtn"><a href="#" id="jsiPrClose"><img src="' + src.close+ '" \/><\/a><\/p>';

				if (j$('#jsiPrCover').length) {
					j$('#jsiPrCover').remove();
				}

				this._change(index);
				$wrap.append($cover.append($text + $close).hide());
				if (j$('#jsiPrVisual').is(':visible')) {
					j$('#jsiPrVisual').hide();
				}

				j$('#jsiPrCover').animate({
					opacity: 'toggle'
				}, 500, function() {
					j$('#jsiCloseBtn').css('position', 'absolute');
				});
			},
			_change: function(index) {
				var bgPos;

				bgPos = ((-831 * index) + 'px') + ' ' + (0 + 'px');
				j$('#jsiPrVisualWrap').css('background-position', bgPos);
			},
			_slidePosition: function(index, $visual) {
				var $defer, animate,
					$visualAnchor = $visual.find('a'),
					dfdArr = [],
					val;

				this._change(index);
				$defer = j$.Deferred(function(defer) {
					animate = function(num, value) {
						val = (value === undefined) ? 1 : value;
						return $visual.find('li').eq(num).animate({
							'margin-left': (277 * val) + 'px'
						}, 500);
					};

					switch(index) {
						case 0:
							dfdArr = [
								animate(1, 2),
								animate(2)
							];
						break;
						case 1:
							dfdArr = [
								animate(0, -1),
								animate(1),
								animate(2)
							];
						break;
						case 2:
							dfdArr = [
								animate(0, -1),
								animate(1, -1)
							];
						break;
						default:
						break;
					}

					j$.when.apply(this, dfdArr).done(function() {
						defer.resolve();
					});
				}).promise();

				return $defer;
			},
			_resetPosition: function(index, $visual) {
				var $visualAnchor = $visual.find('a'),
					animate,
					dfdArr = [],
					$defer;

				 $defer = j$.Deferred(function(defer) {
					animate = function(num) {
						return $visual.find('li').eq(num).animate({
							'margin-left': 0 + 'px'
						}, 500);
					};

					dfdArr = [
						animate(0),
						animate(1),
						animate(2)
					];

					j$.when.apply(this, dfdArr).done(function() {
						defer.resolve();
					});
				}).promise();

				return $defer;
			},
			_resetPath: function(e) {
				var $currentImage = j$('#jsiPrNav').find('.jscCurrentImage');

				$currentImage.removeClass('jscCurrentImage');
				TG.COMMON.rollover.changeImage(e, $currentImage);
			},
			hover: function(e, $el) {
				var _method = TG.COMMON.slideVisual._method,
					target = e.target,
					$visual = j$('#jsiPrVisual'),
					flag = $visual.data('flag') || '',
					index = _method.setFlag($el, target);

				$visual.data('flag', flag);

				if (j$(e.target).parents('ul').attr('id') === 'jsiPrNav') {
					TG.COMMON.slideBg.changePosition(e, $visual.find('a').eq(index));
				} else {
					TG.COMMON.rollover.changeImage(e, j$('#jsiPrNav').find('img').eq(index));
				}
			},
			open: function(e, $el, num) {
				var self = this,
					$visual =  $el,
					_method = TG.COMMON.slideVisual._method,
					index, flag, target;

				if (e !== '') {
					flag = j$(e.target).parents('ul').attr('id') === 'jsiPrVisual' ? true : false;
					target = flag ? e.target : j$(e.target).parents('a');
				}
				index = (num !== undefined) ? num : _method.setFlag($visual, target);

				_method.replaceSrc(index, j$('#jsiPrNav'));
				this._changeContents(index);

				$visual.find('.jscVisualTtl').hide();
				$visual.find('li').eq(index).css('opacity', 0);

				j$.when(this._slidePosition(index, $visual)).done(function(){
					self._buildCover(index);
				});
			},
			close: function(e, $el) {
				var $visual = $el,
					index = $visual.data('flag'),
					$defer = this._resetPosition(index, $visual);

				j$('#jsiPrCover').hide();
				$visual.show();

				this._resetPath(e);
				this._resetPosition(index, $visual);
				this._change(index);

				j$.when($defer).done(function(){
					$visual.find('li').css('opacity', 1);
					$visual.find('.jscVisualTtl').show();
				});
			},
			fade: function(e, $el) {
				var self = this,
					$visual =  $el,
					_method = TG.COMMON.slideVisual._method,
					index = _method.setFlag($visual, j$(e.target).parents('a'));

				_method.replaceSrc(index, j$('#jsiPrNav'));
				this._changeContents(index);

				$visual.find('.jscVisualTtl').show();
				$visual.find('li').css('opacity', 1);
				$visual.find('li').eq(index).css('opacity', 0);

				this._resetPosition(index, $visual);

				j$('#jsiPrCover').animate({
					'opcity': 'toggle'
				}, 100, function() {
					$visual.find('.jscVisualTtl').eq(index).hide();
					self._buildCover(index);
					self._slidePosition(index, $el);
				});
			}
		}
	},

	parallax: {
		init: function() {
			var self = this;

			setInterval(function() {
				self._interval();
			}, 40);
		},
		getObj: function() {
			var winTop = j$(window).scrollTop(),
				thisY,
				totalHeight = 4000,
				$parallax = j$('#jsiParallax'),
				$elements = {
					first: $parallax.find('.jscParallaxFirst'),
					second: $parallax.find('.jscParallaxSecond'),
					third: $parallax.find('.jscParallaxThird')
				},
				getPosition = function($el) {
					return parseInt($el.css('top').replace('px',''), 10);
				};

			return {
				first: function() {
					thisY = getPosition($elements.first);
					return {
						$el: $elements.first,
						value: thisY + ((-thisY) - winTop) * 0.5
					};
				},
				second: function() {
					thisY = getPosition($elements.second);
					return {
						$el: $elements.second,
						value: thisY + ((-thisY) - winTop) * 0.6
					};
				},
				third: function() {
					thisY = getPosition($elements.third);
					return {
						$el: $elements.third,
						value: thisY + ((-thisY) - (totalHeight + 400 * 6) * (winTop / totalHeight)) * 0.2
					};
				}
			};
		},
		_interval: function() {
			var	parallaxObj = this.getObj(),
				setPosition = function($el, value) {
					$el.css('top', value);
				};

			setPosition(parallaxObj.first().$el, parallaxObj.first().value);
			setPosition(parallaxObj.second().$el, parallaxObj.second().value);
			setPosition(parallaxObj.third().$el, parallaxObj.third().value);
		}
	}
};

j$(function() {
	(function(tg) {
		var roopSlide = function() {
			var $slide = j$('#jsiRoopSlide'),
				self = this;

			this.obj = {
				$wrap: $slide,
				$list: $slide.children(),
				speed: 500
			};

			this.method = {
				_changeCurrentNav: function(index) {
					var $images = j$('#jsiPrNav').find('img'),
						suffix = {
							on: '_on.',
							off: '_off.'
						},
						currentClass = 'jscCurrentImage',
						src, $this, path;

					$images.each(function(i) {
						$this = j$(this);
						src = $this.attr('src');
						
						if (index === i) {
							path = src.replace(suffix.off, suffix.on);

							$this.addClass(currentClass);
						} else {
							path = src.replace(suffix.on, suffix.off);

							$this.removeClass(currentClass);
						}

						$this.attr('src', path);
					});
				},
				_changeContents: function(index) {
					var $point = j$('#jsiPrPointArea').find('.jscPrPoint');

					$point.hide();
					$point.eq(index).show();
				},
				_getIndex: function() {
					var $cList,
						index;

					for (var i = 0, len = self.obj.$list.length; i < len; i++) {
						$cList = self.obj.$list.eq(i);

						if ($cList.hasClass('jscCS')) {
							index = i;
							break;
						}
					}

					return index;
				},
				_setAnimation: function(valueObj) {
					var $cs = self.obj.$wrap.find('.jscCS'),
						_this = this,
						$ns;

					self.obj.$list.removeClass('jscCS').eq(valueObj.index).addClass('jscCS');

					$ns = self.obj.$wrap.find('.jscCS');
					$ns.css({
						left: valueObj.nsValue 
					});

					$cs.css('left', 0).animate({
						left: valueObj.csValue
					}, self.obj.speed);
					$ns.animate({
						left: 0 + 'px'
					}, self.obj.speed, function() {
						_this._changeCurrentNav(valueObj.index);
						_this._changeContents(valueObj.index);
					});
				}
			};
		};

		tg.COMMON.roopSlider = function(that) {
			var RoopSlide = new roopSlide();

			RoopSlide.prototype = {
				_prev: function(cIndex) {
					var index = (cIndex === 0) ? RoopSlide.obj.$list.length - 1 : cIndex - 1;

					RoopSlide.method._setAnimation({
						index: index,
						nsValue: '-' + RoopSlide.obj.$list.width() + 'px',
						csValue: RoopSlide.obj.$list.width()
					});
				},
				_next: function(cIndex) {
					var index = (cIndex + 1 === RoopSlide.obj.$list.length) ? 0 : cIndex + 1;

					RoopSlide.method._setAnimation({
						index: index,
						nsValue: RoopSlide.obj.$list.width() + 'px',
						csValue: '-' + RoopSlide.obj.$list.width()
					});
				},
				slider: function(that) {
					var $that = j$(that),
						cIndex = RoopSlide.method._getIndex();

					RoopSlide.obj.$list.not('.jscCS').css({
						left: RoopSlide.obj.$list.width()
					});
					RoopSlide.obj.$list.css({
						'position': 'absolute'
					});

					if ($that.hasClass('jscPrevBtn')) {
						this._prev(cIndex);
					} else {
						this._next(cIndex);
					}	
				}
			};

			RoopSlide.prototype.slider(that);
		};

		tg.COMMON.jumpSlider = function(that) {
			var RoopSlide = new roopSlide();

			RoopSlide.prototype = {
				jumpSlider: function(that) {
					var cIndex = RoopSlide.method._getIndex(),
						index = j$('#jsiPrNav').find('a').index(that),
						width = RoopSlide.obj.$list.width();

					RoopSlide.obj.$list.removeClass('jscCS').eq(index).addClass('jscCS');
					RoopSlide.obj.$wrap.css({
						'margin-left': '-' + (width * cIndex) + 'px'
					});
					RoopSlide.obj.$list.css({
						'position': 'relative',
						'left': 0
					});

					RoopSlide.obj.$wrap.animate({
						'margin-left': '-' + (width * index) + 'px'
					}, RoopSlide.obj.speed);

					RoopSlide.method._changeCurrentNav(index);
					RoopSlide.method._changeContents(index);
				}
			};

			RoopSlide.prototype.jumpSlider(that);
		};

		tg.COMMON.sliderInit = function() {
			var RoopSlide = new roopSlide();

			RoopSlide.prototype = {
				init: function() {
					var hash = location.hash,
						index;

					if (hash !== '') {
						index = parseInt(hash.replace('#', ''), 10) - 1;

						if (index > RoopSlide.obj.$list.length) {
							index = 1;
						}

						RoopSlide.obj.$list.removeClass('jscCS').eq(index).addClass('jscCS');
						RoopSlide.method._changeCurrentNav(index);
						RoopSlide.method._changeContents(index);
					}	
				}
			};

			RoopSlide.prototype.init();
		};

	})(TG);
});
	
j$(function() {
	var tg = TG.COMMON,
		$wrapper = j$('#jsiOuterWrapper'),
		$chapterWrap = j$('#jsiChapterWrap'),
		$contents = j$('#jsiContents'),
		$prVisual = j$('#jsiPrVisual');

	//===================================================
	// new window
	//===================================================
	$wrapper.find('.jscBlank').click(function(e) {
		tg.newWindow(this);
		e.preventDefault();
	});

	//===================================================
	// smooth scroll pagetop
	//===================================================
	$wrapper.find('.jscPageTop').click(function(e) {
		tg.smoothScroll(0);
		e.preventDefault();
	});

	//===================================================
	// roll over images
	//===================================================
	$wrapper.find('.jscHover').bind('mouseover mouseout', function(e) {
		tg.rollover.changeImage(e, j$(e.target));
	});

	//===================================================
	// preload images
	//===================================================
	tg.rollover.preload.hoverImages();

	//===================================================
	// toggle text
	//===================================================
	j$('#jsiTopContents').find('a').bind('mouseenter mouseleave', function(e) {
		tg.slideToggleText(e, this);
	});

	//===================================================
	// toggle list
	//===================================================
	j$('#jsiTopSide').find('.jscToggleBanner').find('a').click(function(e) {
		tg.slideToggleList(e);
		e.preventDefault();
	});

	//===================================================
	// animation toggle content
	//===================================================
	j$('.jscOpenChapterBtn, .jscDefaultChapterImage', $chapterWrap).click(function(e) {
		tg.toggleContent.toggle(e);
		e.preventDefault();
	});

	//===================================================
	// toggle search text
	//===================================================
	j$('#jsiHeader').find('input').bind('focus blur', function(e) {
		tg.toggleSearchText(e);
	});

	//===================================================
	// smooth moving to contents area
	//===================================================
	j$(window).scrollTop(0);
	j$('.jscNextContents, .jscPrevContents', $wrapper).click(function(e) {
		tg.movingToContents(e);
		e.preventDefault();
	});

	//===================================================
	// sliding
	//===================================================
	j$('#jsiStoryVisualArea .jscNextBtn,  #jsiStoryVisualArea .jscPrevBtn, #jsiStoryBtnArea .jscNextBtn,  #jsiStoryBtnArea .jscPrevBtn, #jsiNavStory a').click(function(e) {
		tg.slideVisual.sliding.slide({
			el: this, //current slide target element
			index: '', //story number
			animation: true //slide animation
		});
		e.preventDefault();
	});

	//===================================================
	// animation close content
	//===================================================
	$chapterWrap.find('.jscCloseChapter').click(function(e) {
		tg.toggleContent.close(e);
		e.preventDefault();
	});

	//===================================================
	// roop slide
	//===================================================
	j$('.jscPrevBtn, .jscNextBtn', j$('#jsiPrSlideHandle')).click(function(e) {
		tg.roopSlider(this);
		e.preventDefault();
	});

	j$('#jsiPrNav').find('a').click(function(e) {
		tg.jumpSlider(this);
		e.preventDefault();
	});
});

//Wedding Hall Pulldown
j$(function() {


	var pathName = window.location.pathname;
		if(pathName == "/hall/") {
			j$('#jsiPulldown').find('li:first').addClass('current');
			j$('#jsiPulldownInner').css("display","block");
			j$('#jsiPulldown li:first').children('ul:not(:animated)').slideDown();

			setTimeout (function (){
				j$('#jsiPulldown').find('li:first').removeClass('current');
				j$('#jsiPulldown li:first').children('ul').slideUp();
			}, 5000);
		}



	j$('#jsiPulldown li:first').hover(
		function() {
			j$('#jsiPulldown').find('li:first').addClass('current');
			j$(this).children('ul:not(:animated)').slideDown();
		},
		function() {
			j$('#jsiPulldown').find('li:first').removeClass('current');
			j$(this).children('ul').slideUp();
		}
	);
});

