// replaceSelects}
var REPLACE_SELECTS = new Array();
var REPLACE_SELECTS_CLASSNAME = new Array("SelectBasic");
var REPLACE_LOADED = false;

function OnloadReplace() {
	if (!REPLACE_LOADED) {
		GetReplaceSelects();
		REPLACE_LOADED = true;
	}
}


function GetReplaceSelects() {
if (!$.browser.msie) return;
  var GetAllSelects = document.getElementsByTagName('select');
  SelectedNum = 0;
  for(i=0; i<GetAllSelects.length; i++) {
    for(j=0; j<REPLACE_SELECTS_CLASSNAME.length; j++) {
      if(GetAllSelects[i].className.split(' ')[0] == REPLACE_SELECTS_CLASSNAME[j]) {
        REPLACE_SELECTS[SelectedNum] = GetAllSelects[i];
        SelectedNum++;
      }
    }
  }
  replaceSelects();
}


function replaceSelects() {
   for(var i=0; i < REPLACE_SELECTS.length; i++) {
    var selectWidth = findObjWidth(REPLACE_SELECTS[i]);
    var selectHeight = findObjHeight(REPLACE_SELECTS[i]);
	var classNameList = REPLACE_SELECTS[i].className.split(' ');
	var selectClassName = classNameList[0]; 
	var selectAdditionalClassName = classNameList[1] || '';

    if(REPLACE_SELECTS[i].id == "") {
      REPLACE_SELECTS[i].id = "RootSelectID" + i;
    }

    var REPLACE_SELECTS_TEXT = REPLACE_SELECTS[i].options[REPLACE_SELECTS[i].selectedIndex].innerHTML;

    var selectArea = document.createElement('div');
    var textArea = document.createElement('a');
    var text = document.createTextNode(REPLACE_SELECTS_TEXT);

    selectArea.className = selectClassName + "_selectArea";
	if (selectAdditionalClassName) {
		selectArea.className += ' ' + selectAdditionalClassName  + "_selectArea";;
	}
    selectArea.style.width = selectWidth + 'px';
	if (selectWidth === 0) {
		selectArea.style.display = 'none';
	}
    selectArea.style.position = 'absolute';
    selectArea.style.top = findPosY(REPLACE_SELECTS[i]) + 'px';
    selectArea.style.left = findPosX(REPLACE_SELECTS[i]) + 'px';
    textArea.id = "mySelectText"+i;

    textArea.appendChild(text);
    selectArea.appendChild(textArea);

    REPLACE_SELECTS[i].style.visibility = 'hidden';

    textArea.href="javascript:showOptions("+i+")";

    var optionsDiv = document.createElement('div');
    var optionHolder = document.createElement('p');
    optionsDiv.id = "optionsDiv"+i;
    optionsDiv.className = selectClassName + "_optionsDiv";
    if (selectAdditionalClassName) {
		optionsDiv.className += ' ' + selectAdditionalClassName + "_optionsDiv";
	}
	optionsDiv.style.display = 'none';
    optionsDiv.style.position = 'absolute';
    optionsDiv.style.width = selectWidth + 'px';
    optionsDiv.style.top = findPosY(REPLACE_SELECTS[i])  + 'px';
    optionsDiv.style.left = findPosX(REPLACE_SELECTS[i]) + 'px';

    for(var j=0; j < REPLACE_SELECTS[i].options.length; j++) {
      var optionLink = document.createElement('a');
      var optionTxt = document.createTextNode(REPLACE_SELECTS[i].options[j].text);
      optionLink.href = "javascript:showOptions("+i+"); selectMe('"+REPLACE_SELECTS[i].id+"',"+j+","+i+");";
      optionLink.appendChild(optionTxt);
      optionHolder.appendChild(optionLink);
      optionsDiv.appendChild(optionHolder);
    }

    document.body.appendChild(selectArea);
    document.body.appendChild(optionsDiv);

    if (REPLACE_SELECTS[i].disabled == true) {
      selectArea.className += " SelectDisable";
      textArea.href = '#';
    }
  }
}


function showOptions(g) {
    var Element = document.getElementById("optionsDiv"+g);

    if(Element.style.display == 'none') {
		for (var i=0; i<SelectedNum; i++) {
			document.getElementById("optionsDiv"+i).style.display = 'none';
		}
		Element.style.display = 'block';
	}
    else if(Element.style.display == 'block') {
		Element.style.display = 'none';
	}
}


function selectMe(selectFieldId,OptionNo,selectNo) {
  selectField = document.getElementById(selectFieldId);
  selectField.selectedIndex = OptionNo;
  selectField.fireEvent('onchange');

  textVar = document.getElementById("mySelectText"+selectNo);
  var newText = document.createTextNode(selectField.options[OptionNo].innerHTML);
  textVar.replaceChild(newText, textVar.childNodes[0]);
}


function findPosY(obj) {
  var posTop = 0;
  while (obj.offsetParent) {
    posTop += obj.offsetTop;
    obj = obj.offsetParent;
  }
  return posTop;
}


function findPosX(obj) {
  var posLeft = 0;
  while (obj.offsetParent) {
    posLeft += obj.offsetLeft;
    obj = obj.offsetParent;
  }
  return posLeft;
}


function findObjWidth(obj) {
  if(obj.style.width) return obj.style.width;
  return obj.offsetWidth;
}


function findObjHeight(obj) {
  if(obj.style.height) return obj.style.height;
  else return obj.offsetHeight;
}


function RelocateSelects() {
  for(var j=0; j<REPLACE_SELECTS_CLASSNAME.length; j++) {
    var t = REPLACE_SELECTS_CLASSNAME[j];
    var sel = getElementsByClass(t + '_selectArea');
    var opt = getElementsByClass(t + '_optionsDiv');
    for (var k = 0; k<sel.length; k++) {
      document.body.removeChild(sel[k]);
      document.body.removeChild(opt[k]);
    }
  }
  REPLACE_LOADED = false;
  OnloadReplace();
  return false;
}


function RemoveSelects(t, n) {
  if (n == null) n=0;
  var sel = getElementsByClass(t + '_selectArea');
  var opt = getElementsByClass(t + '_optionsDiv');
  if (!sel[n]) return;
  document.body.removeChild(sel[n]);
  document.body.removeChild(opt[n]);
}


var getElementsByClass = function(searchClass) {
    return $('.' + searchClass).get();
};


var scrollFriendList = function() {
	var list = $('#friendsList .marquee').eq(0);
	var num = list.find('p').length;
	var now = list.data('now') || 0;
	if ( (num > 1) && ($('.myinfo.friends').eq(0).is(':visible')) ) {
		list.animate({top:'-=19'}, {complete:function() {
			now += 1;
			list.data('now', now);
			if (now >= num) {
				list.data('now', 0).css('top', 0);
			}
		}});
	}
}


var addTimer = function() {
	var timer;
	var intv = 3500;
	var func;

	return {
		setIntv : function(t) {
			intv = t;
		},
		setFunc : function(f) {
			func = f;
		},
		setStopper : function(o) {
			var that = this;
			$(o).hover(that.stop, that.start);
		},
		start : function() {
			if (!func) return;
			timer = setInterval(func, intv);
		},
		stop : function() {
			clearInterval(timer);
		}
	}
};


var fixIE6LayerPopup = function() {
	if (window.XMLHttpRequest) return;
	$('.cmPop').each(function() {
		var self = $(this);
		var con = $('.cmBanner', this)[0] || $('iframe', this)[0];
		self.width($(con).width() + 10).height($(con).height() + 60);
		$('.lb, .rb', this).height(self.height());
	});
	$('#cmPopAlign').css({visibility:'visible', overflow:'visible'});
};


if (typeof jQuery !== 'undefined') {

	(function($) {
		$.fn.supersleight = function(settings) {
			settings = jQuery.extend({
				imgs: true,
				backgrounds: true,
				shim: 'http://file.pmang.kr/images/pmang/nabi/common/blank.gif',
				apply_positioning: false
			}, settings);
			
			return this.each(function(){
				if (jQuery.browser.msie && parseInt(jQuery.browser.version, 10) < 7 && parseInt(jQuery.browser.version, 10) > 4) {
					jQuery(this).find('*').andSelf().each(function(i,obj) {
						var self = jQuery(obj);
						// background pngs
						if (settings.backgrounds && self.css('background-image').match(/\.png/i) !== null) {
							var bg = self.css('background-image');
							var src = bg.substring(5,bg.length-2);
							var mode = (self.css('background-repeat') == 'no-repeat' ? 'crop' : 'scale');
							var styles = {
								'filter': "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='" + mode + "')",
								'background-image': 'url('+settings.shim+')'
							};
							self.css(styles);
						};
						// image elements
						if (settings.imgs && self.is('img[src$=png]')){
							var styles = {
								'width': self.width() + 'px',
								'height': self.height() + 'px',
								'filter': "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + self.attr('src') + "', sizingMethod='scale')"
							};
							self.css(styles).attr('src', settings.shim);
						};
						// apply position to 'active' elements
						if (settings.apply_positioning && self.is('a, input') && (self.css('position') === '' || self.css('position') == 'static')){
							self.css('position', 'relative');
						};
					});
				};
			});
		};
	})(jQuery);


	(function($) {
		$.fn.selectTab = function(pos, settings) {
			settings = $.extend({
				add_class : 'on',
				tab_prefix : '.tab_',
				tab_suffix : '> li',
				tab : '',
				speed : ''
			}, settings || {});

			var self = $(this);
			var first_class = ( self[0] ) ? self[0].className.split(' ')[0] : '';
			var first_class_name = settings.tab_prefix + first_class + settings.tab_suffix;
			var tab_btn = settings.tab ||  first_class_name;
			var now = self.data('tab_now') || 0;
			var max = self.length;

			if (pos === 'next') {
				if (now < max - 1) {
					pos = now + 1;
				} else {
					pos = 0;
				}
			} else if (pos === 'prev') {
				if (now > 0) {
					pos = now - 1;
				} else {
					pos = max - 1;
				}
			} else {
				pos = parseInt(pos, 10) - 1;
			}

			$(tab_btn).removeClass(settings.add_class).eq(pos).addClass(settings.add_class);
			self.data('tab_now', pos).hide(settings.speed).eq(pos).show(settings.speed);
			return this;
		};
	})(jQuery);


	(function($) {
		$.fn.starRating = function() {
			var settings = {max: 10};
			var star = $('<span class="star"/>');
			var star_em = $('<em/>').css('width', '0%');
			var star_handler = [];

			for (var i=1; i<=settings.max; i++) {
				star_handler.push( $('<span class="star_handler"/>').attr('starscore', i) );
			}

			return this.each(function() {
				var that = $(this);
				that.find('input.starscore').eq(0).css({position:'absolute', visibility:'hidden'});
				
				star.hover(
						function() {$(this).addClass('star_over');}, 
						function() {
							var self = $(this);
							self.removeClass('star_over').find('em:eq(0)').css('width', self.data('starwidth') || '0%');
						}
					)
					.click(function() {
						var self = $(this);
						var value = self.find('em:eq(0)').css('width');
						self.data('starwidth', value);
						that.find('input.starscore').eq(0).val( parseInt(value, 10) / 10 );
					});

				star.append(star_em);

				$.each(star_handler, function(i) {
					$(this).bind('mouseenter', function() {
						var self = $(this);
						var value = (parseInt(self.attr('starscore'), 10) * 10) + '%';
						star_em.css('width', value);
					});
					star.append(this);
				});

				$(this).append(star);
			});
		};
	})(jQuery);



	$(document).ready(function() {
		// °øÅë
		var doc = $(document.body);

		OnloadReplace();
		
		$('input.bg').bind('focus', function() {
			$(this).css('background-image', 'none');
		});

		// ¸ÞÀÎ, ¼­ºê
		if ( doc.is('.main, .sub') ) {
			$('.myinfo:not(.no_character)').selectTab(1);
			$('.myinfo.basic li.exp').hover(
				function() {
					$(this).find('.tip').show();
				}, function() {
					$(this).find('.tip').fadeOut(200);
				}
			);
			$('#friendsList').hover(
				function() {
					$(this).removeClass('friends_off').find('.marquee').data('now', 0).css('top', 0);
				}, function() {
					$(this).addClass('friends_off').find('.list').get(0).scrollTop = 0;
				}
			);
		}

		// ¸ÞÀÎ
		if ( doc.is('.main') ) {
			$('.ranklist').selectTab(1);
			$.itemlist = addTimer();
			$.itemlist.setFunc(function() {$('#itemList .itemset').selectTab('next');});
			$.itemlist.setStopper('#itemList');
			$.itemlist.start();
			
			$.friendslist = addTimer();
			$.friendslist.setIntv(3000);
			$.friendslist.setFunc(scrollFriendList);
			$.friendslist.setStopper('#friendsList');
			$.friendslist.start();
		} else if ( doc.is('.frame') ) {
			
			// ¼­ºê
			$('#winner1, #winner2').hover(
				function() {
					$(this).removeClass('list_off').find('.marquee').data('now', 0).css('top', 0);
				}, function() {
					$(this).addClass('list_off').find('.list').get(0).scrollTop = 0;
				}
			);

			(function() {
				if ( $('#guide').get(0) ) {
					var $guideNav = $('#guideNav');
					var m = $guideNav.attr('depth1');
					var s = $guideNav.attr('depth2');

					$guideNav.find('li').eq(m - 1).find('a').eq(s - 1).addClass('on');

					if ( $guideNav.hasClass('guide_nav_collapsed') ) {
						$guideNav.find('li').css('top', -27 * (m - 1));
					}

					$('#guideIndex > a').click(function() {
						$guideNav.toggleClass('guide_nav_collapsed').find('li').css('top', -27 * (m - 1));
						try {
							parent.resize_frame(window.name);
						} catch (e) {
						}
						return false;
					});

					$guideNav.find('h4').click(function() {
						if ( $guideNav.hasClass('guide_nav_collapsed') ) {
							$('#guideIndex > a').trigger('click');
						}
					});
				}
			})();

			$('.star_rating').starRating();

			$('.hlist').each(function() { $(this).find('a:last').css('background-image', 'none'); });

			$(doc).supersleight();

			(function() {
			 	// °Ô½ÃÆÇ ±Û¾²±â GM¿É¼Ç »èÁ¦
			 	var o = $('#write_options');
				if (o.find('*').length < 1) {
					o.hide();
				}
			})();
		} else {
			$('#profileTab1 li:eq(1)').hover(
				function() {
					$(this).find('.tip').show();
				}, function() {
					$(this).find('.tip').fadeOut(200);
				}
			);
			
		}
	});

	$(window).bind('resize', function() {
		RelocateSelects();
	});

} //if jQuery


(function() {
	if (!window.XMLHttpRequest) {
		try {
			document.execCommand('BackgroundImageCache', false, true);
		} catch(e) {}
	}
	try {
		document.domain = 'pmang.com';
	} catch(e) {}
})();


