﻿var dsn;var ptn;
var txtField = new Array("#bgcolorBox", "#marqueecolorBox", "#menucolorBox", "#pcolorBox", "#acolorBox", "#hrBox");
var elementObj = new Array(" div"," p.marquee", " p.menu-color", " p.plain", " p.link", " div div.hr");
var propObj = new Array("background-color", "color", "color", "color", "color", "background-color");

//--------------------------- paragraph view control ---------------------------//
function init_view(){
	j$("#preview").addClass("close");
}

function view_ctrl(){
	j$("#pattern-select").toggleClass("close");
	j$("#preview").toggleClass("close");
}


//--------------------------- preview control ---------------------------//
function convertHex(obj){
	obj = new RGBColor(obj);
	obj = unescape(obj.toHex());
	return obj;
}

function get_checked(obj){
	var tmp;
	for(var i=0;i<obj.length;i++){
		if(obj[i].checked){
			tmp = obj[i].value;
		}
	}
	return tmp;			
}

function dsn_init(dsnObj,ptnObj){
	dsn = dsnObj;
	ptn_set(ptnObj);
	init_view();
}

function ptn_set(obj){	
	var ptnNum = obj.substr(3);
	var fldrName = "../img/sample/" + dsn + "/" + ptnNum + "/";	//for test
	var titleObj = fldrName + "top.jpg";
	var footerObj = fldrName + "footer.gif";

	//delete existed style and class
	if(ptn){
		for(var i=0;i<elementObj.length;i++){
			var removeObj = "#preview-img." + ptn + elementObj[i];
			j$(removeObj).removeAttr("style");
		}
		j$("#preview-img").removeClass(ptn);
	}
	
	//add new class
	j$("#preview-img").addClass(obj);
	tmp = "#preview-img." + obj;
	ptn = obj;
	
	for(var i=0;i<elementObj.length;i++){
		//get style color
		if(elementObj[i]){
			var objName = "#preview-img." + ptn + elementObj[i];
		}else{
			var objName = "#preview-img." + ptn;
		}
		
		var color = j$(objName).css(propObj[i]);
		//test(objName + "|" +color);
		color = (convertHex(color).substr(1)).toUpperCase();
		
		j$(txtField[i]).val(color);		//set txtField value
		field_color_set(txtField[i],color);		//set txtField style
	}
		
	//set image
	j$("#preview-title").attr("src", titleObj);
	j$("#preview-footer").attr("src", footerObj);
	
}

function field_color_set(objId, objValue){
	//get txtField-txtColor
	var hsv = YAHOO.util.Color.hex2rgb(objValue);
	hsv = YAHOO.util.Color.rgb2hsv(hsv[0],hsv[1],hsv[2]);
	var txtColor = (hsv[2] > 0.65) ? "#000000" : "#FFFFFF";
	
	objValue="#"+objValue;

	//set txtField color
	j$(objId).css("background-color", objValue);
	j$(objId).css("color", txtColor);

}

function color_set(fldName,fldValue){		//custom color change
	var attName;var objName;
	fldName = "#" + fldName;
	
	for(var i=0;i<txtField.length;i++){
		objName = "#preview-img." + ptn + elementObj[i];
		fldValue = "#" + j$(txtField[i]).val();
		j$(objName).css(propObj[i], fldValue);
	}
}


