


/* 메인 페이지 최상단 큰 상품 3개 노출 컨트롤하는 모듈.
 by 함승목.

 페이지에 var bigitem_infos 변수에 json 형태로 데이터가 있어야 함.
*/
var BigItem = function(objName) {

	this.objName = objName;
	this.box_obj;

	this.item_count = 0;
	this.now_index = 0;
	this.is_mouseover = false;
	this.scroll_term = 5;

	this.add_bigitem = function (box_id, idx) {
		var info = bigitem_infos[idx];
		var target_obj = getobj(box_id);
		this.box_obj = target_obj;

		var json_keys = bigitem_keys;
		var hidden_divs = [];
		var goods_ids = [];

		for(data in info) {
			var template = getobj('main_big_item_template').value;
			if(data.split('_')[0] != 'idx') {
				continue;
			}
			for(keyword in info[data]) {
				
				if(in_array(keyword, json_keys) == false) {
				//document.write(keyword);
					continue;
				}

				switch(keyword) {
					case 'AMOUNT_DP' :
					case 'NORMAL_PRICE_DP' :
					case 'ENDDATE_DP' :
						if(info[data][keyword] == 'none') {
							hidden_divs.push(keyword+'_'+info[data]['GOODS_ID']);
						}
						break;
					default :
						template = str_replace('[['+keyword+']]', info[data][keyword], template);
				}

			}
			var div = document.createElement('div');
			div.style.display = 'none';
			div.innerHTML = template;
			target_obj.appendChild(div);
			goods_ids.push(info[data]['GOODS_ID']);
		}
		this.item_count = goods_ids.length;

		for(var i = 0 ; i < hidden_divs.length ; i++) {
			getobj(hidden_divs[i]).style.display = 'none';
		}

		for(var i = 0 ; i < goods_ids.length ; i++) {
			getobj('bigitem_paging_'+goods_ids[i]).innerHTML = get_paging(this.objName, i, goods_ids.length);
		}
		this.goPage(0);
	}
	this.goPage = function(page_idx) {
		for(var i = 0 ; i < this.box_obj.children.length ; i++) {
			this.box_obj.children[i].style.display = (page_idx == i) ? 'block' : 'none';
		}
		this.now_index = page_idx;
	}
	this.auto_scroll_run = function(first_term) {
		if(first_term == null) {
			first_term = this.scroll_term;
		}

		var next_index = (this.now_index+1)%this.item_count;

		var _this = this;

		setTimeout(function() {
			_this.go_page_auto(next_index);
			_this.auto_scroll_run();
		}, first_term*1000);
	}

	//private 
	this.go_page_auto = function(idx) {
		if(this.is_mouseover == false) {
			this.goPage(idx);
		}
	}
	function get_paging(objName, idx, count) {
		var str  = '';
		for(var i = 0 ; i < count ; i++) {
			var on = '';
			var click =  " onmouseover='"+objName+".goPage("+i+");"+objName+".is_mouseover=true;' onmouseout='"+objName+".is_mouseover=false;'";
			if(i == idx) {
				on = '_on';
				click = " onmouseover='"+objName+".is_mouseover=true;' onmouseout='"+objName+".is_mouseover=false;' ";
			}

			str += "<img src='"+WEBROOT+"/images/icon_mainbig_page"+on+"'.gif' "+click+"  /> ";
		}
		return str;
	}
}




// 배너 정보
var BnrInfo = function(type, title) {
		this.type = type;
		this.title = title;
}


// 배너 페이징 처리
function event_paging_set(viewnode) {

		var spans = document.getElementById('event_page_items').getElementsByTagName('span');
		viewnode = viewnode % spans.length;
		for(var i = 0 ; i < spans.length ;i++) {
				spans[i].className = 'paging' + ((i == viewnode) ? '_on' : '');
		}

		document.getElementById('mainbanner_title').innerHTML = bnr_infos[viewnode].title;

		var mainbanner_icon_src = '';
		switch(bnr_infos[viewnode].type) {
				case 1 :
						mainbanner_icon_src = WEBROOT+'/images/bul_noticetitle.gif';
						break;
				case 2 :
						mainbanner_icon_src = WEBROOT+'/images/bul_eventtitle.gif';
						break;
				case 3 :
						mainbanner_icon_src = WEBROOT+'/images/bul_newstitle.gif';
						break;
				case 4 :
						mainbanner_icon_src = WEBROOT+'/images/bul_issuetitle.gif';
						break;
				case 5 :
						mainbanner_icon_src = WEBROOT+'/images/bul_saletitle.gif';
						break;
				default :
						mainbanner_icon_src = WEBROOT+'/images/bul_eventtitle.gif';
		}

		document.getElementById('mainbanner_icon').src = mainbanner_icon_src;
}



// 판매자순위 카테고리별 페이징 처리
function rankpvd_paging_set(viewnode, paging_id) {
	var spans = document.getElementById(paging_id).getElementsByTagName('div');
	viewnode = viewnode % spans.length;
	for(var i = 0 ; i < spans.length ;i++) {
		spans[i].className =  ''+ ((i == viewnode) ? 'on' : '');
	}
}

// 판매자순위 카테고리 교체
//function set_rank_pvd_category(obj) {
function set_rank_pvd_category(type, type2nd, obj, old_idx) {
	/*
	if(obj.className == 'on') {
		return;
	}

	var target_idx;
	var old_idx;
	
	obj.className = 'on';
	for(var i = 0 ; i < obj.parentNode.children.length ; i++) {
		if(obj.parentNode.children[i] == obj) {
			target_idx = i;
			continue;
		}
		if(obj.parentNode.children[i].className == 'on') {
			old_idx = i;
			obj.parentNode.children[i].className = '';
		}
	}

	if(old_idx != null) {
		getobj('rankpvd-wrap').children[old_idx].style.display = 'none';
		eval('prank'+old_idx+'.stop();');
	}
	getobj('rankpvd-wrap').children[target_idx].style.display = 'block';
	eval('prank'+target_idx+'.endstop();');
	*/
	
	if(obj.className == 'on') {
        return;
    }


	/*	
	for(var i = 0 ; i < obj.parentNode.children.length ; i++) {
        if(obj.parentNode.children[i] == obj) {
            target_idx = i;
            continue;
        }
        if(obj.parentNode.children[i].className == 'on') {
            old_idx = i;
            obj.parentNode.children[i].className = '';
        }
    }
	alert(target_idx);
	if(old_idx != null) {
        getobj('rankpvd-wrap').children[old_idx].style.display = 'none';
        eval('prank'+old_idx+'.stop();');
    }
    getobj('rankpvd-wrap').children[target_idx].style.display = 'block';
    eval('prank'+target_idx+'.endstop();');
	*/
		
	$$("#rank_pvd ul.rank_category li").each(function(e){
        e.removeClassName('on');
    });

	$('rank_cate_'+type).addClassName("on");
	$('rank_cate_'+type2nd).addClassName("on");


	if(old_idx != 'NO') {
		eval('prank'+old_idx+'.stop();');
	}
	
	//eval('prank'+idx+'.endstop();');
	
	$$("#rankpvd-wrap div.rand_pvd_zone").each(function(e){
        e.hide();
    });

	$('rank_1').value	= type;
	$('rank_2').value	= type2nd;
	//$('old_idx').value	= idx;
		
	$('rand_pvd_zone_'+type+'_'+type2nd).style.display = "";


	var target_idx;
    var old_idx;

    obj.className = 'on';

    var obj2    = $('rank_cate_hit');
    var obj3    = $('rank_cate_all');


    for(var i = 0 ; i < obj2.parentNode.children.length ; i++) {
        if(obj2.parentNode.children[i] == obj) {
            idx_1st = i;
            continue;
        }
    }

    for(var i = 0 ; i < obj3.parentNode.children.length ; i++) {
		if(obj3.parentNode.children[i].className == 'on') {
            idx_2nd = i;
            continue;
        }
    }
	
	//return;
	
	if(idx_1st == 0) {
		target_idx	= idx_2nd;
	} else if(idx_1st == 1) {
		target_idx  = idx_2nd + 4;
	}else{
		target_idx  = idx_2nd + 8;
	}
	//target_idx_1st + target_idx_2nd	
    //alert(target_idx_1st);
    //alert(target_idx_2nd);
	eval('prank'+target_idx+'.endstop();');
}

// 국가별 시간 및 업무중/종료 표기. 전화번호 표기
var TimezoneController = function() {
	var dateobj = getobj('timezone_date');
	var nameobj = getobj('timezone_name');
	var timeobj = getobj('timezone_time');
	var workobj = getobj('timezone_work');
	var telobj  = getobj('timezone_tel');

	var name_spans = nameobj.getElementsByTagName('span');
	var time_p = timeobj.getElementsByTagName('p');

	var last_nation;

	this.refresh = function(nation, span_obj) {
		if(nation != null) {
			last_nation = nation;
		}
		var res = sendRequest('/index/nationworktime/zone/'+last_nation, '', 'GET');
		var info = res.split('@');
		if(info.length != 9) {
			return;
		}

		dateobj.innerHTML = info[0];
		for(var i = 1 ; i <= 5 ; i++) {
			time_p[i-1].innerHTML = info[i];
		}

		workobj.innerHTML = info[6];
		workobj.style.backgroundColor = info[7];
		telobj.innerHTML = info[8];


		if(span_obj != null) {
			name_alloff();
			span_obj.className = 'on';
		}
	}

	function name_alloff() {
		for(var i = 0 ; i < name_spans.length ; i++) {
			name_spans[i].className = '';
		}
	}
}

function ranking_zone(type) {
	if(type == 'goods') {
		$('ranking_title').style.backgroundPosition="0px 0px";
		$('goods_ranking_area').style.display="";
		$('review_ranking_area').style.display="none";
	} else {
		$('ranking_title').style.backgroundPosition="0px -33px";
		$('goods_ranking_area').style.display="none";
        $('review_ranking_area').style.display="";
	}
}

function pop_dg(keyurl) {
    window.open(WEBROOT+'/dg/'+keyurl,'malltail_dg','width=620, height=600, scrollbars=yes, status=yes, toolbar=no, menubar=no, location=no');
}

function hit_goods_show() {
	$('hit_goods_category').style.display="";
}
function hit_goods_close() {
	$('hit_goods_category').style.display="none";
}

function main_goods_list(type) {
	//alert(type);
	if(type == 'new') {
		$('new_goods').addClassName('selected');
		$('hit_goods').removeClassName('selected');
		$('new_goods_span').addClassName('selected');
        $('hit_goods_span').removeClassName('selected');
		$('goods_rangk_list_area').style.display="";
		$('goods_hit_list_area').style.display="none";
	}else{
		$('new_goods').removeClassName('selected');
        $('hit_goods').addClassName('selected');
		$('new_goods_span').removeClassName('selected');
        $('hit_goods_span').addClassName('selected');
		$('goods_rangk_list_area').style.display="none";
        $('goods_hit_list_area').style.display="";
	}
}

