﻿// JScript File
/*
What it does:  This file has functions to write and read javascript cookies. It helps us
               preserve customer's data across the pages.

Referred by : wizardy.asp
*/

var xsep = "^*"
var a_names, a_values;

function StoreWizardPreferences(yprefix) {
	var varnames = "";
	var varvalues = "";
	
	var a_curr_nvp = getCurrentNVP(xsep)
	if (a_curr_nvp.length > 0) {
		varnames = varnames + a_curr_nvp[0]
		varvalues = varvalues + a_curr_nvp[1]
	}
	
	varnames = varnames + xsep + "$###$"
	varvalues = varvalues + xsep + "$###$"

	varnames = varnames + xsep + "catgid" + xsep + "SubCatgId"
	varvalues = varvalues + xsep + document.preview.catgid.value + xsep + document.preview.SubCatgId.value		

	var a_nvp = getOtherStoredNVP(varnames, varvalues, xsep)
	if (a_nvp.length > 0) {
		varnames = varnames.split(xsep + '$###$').join(xsep + a_nvp[0])
		varvalues = varvalues.split(xsep + '$###$').join(xsep + a_nvp[1])
	}
	else {
		varnames = varnames.split(xsep + '$###$').join('')
		varvalues = varvalues.split(xsep + '$###$').join('')
	}
	
//alert(varnames+'\n'+varvalues)
	
	setCookie_(yprefix + "names", varnames)
	setCookie_(yprefix + "values", varvalues)
}

function getCurrentNVP(ysep) {
	//This function need to be changed for each page.
	var t_curr_nvp = new Array()
	t_curr_nvp[0] = ""
	t_curr_nvp[1] = ""
	
	for (var k=1; k< num_divs; k++) {
		if (div_contents[k]) {
			if (div_contents[k].indexOf('label') >= 0) {
				if (div_fields[k].length > 0) {
					if (t_curr_nvp[0].length > 0) {
						t_curr_nvp[0] = t_curr_nvp[0] + xsep
						t_curr_nvp[1] = t_curr_nvp[1] + xsep
					}
					t_curr_nvp[0] = t_curr_nvp[0] + div_fields[k]
					t_curr_nvp[1] = t_curr_nvp[1] + div_text[k] + "~" + div_size[k] + "~" + div_font[k] + "~" + div_style[k] + "~" + div_align[k] 
					t_curr_nvp[1] = t_curr_nvp[1] + "~" + div_color[k] + "~" + div_color_hex[k] 
					t_curr_nvp[1] = t_curr_nvp[1] + "~" + div_x[k] + "~" + div_y[k] 
					t_curr_nvp[1] = t_curr_nvp[1] + "~" + div_w[k] + "~" + div_h[k] 
				}
			}
			else if (div_contents[k].indexOf('image') >= 0) {
				if (div_fields[k].length > 0) {
					if (t_curr_nvp[0].length > 0) {
						t_curr_nvp[0] = t_curr_nvp[0] + xsep
						t_curr_nvp[1] = t_curr_nvp[1] + xsep
					}
					t_curr_nvp[0] = t_curr_nvp[0] + div_fields[k]
					t_curr_nvp[1] = t_curr_nvp[1] + div_text[k] 
					t_curr_nvp[1] = t_curr_nvp[1] + "~" + div_x[k] + "~" + div_y[k] 
					t_curr_nvp[1] = t_curr_nvp[1] + "~" + div_w[k] + "~" + div_h[k] 
					t_curr_nvp[1] = t_curr_nvp[1] + "~" + div_transcolor[k] + "~" + div_imagecolor[k] 
				}
			}
		}
	}
	
	if (t_curr_nvp[0].length > 0) {
		t_curr_nvp[0] = t_curr_nvp[0] + xsep
		t_curr_nvp[1] = t_curr_nvp[1] + xsep
	}
	t_curr_nvp[0] = t_curr_nvp[0] + "XML"
	t_curr_nvp[1] = t_curr_nvp[1] + document.preview.templateXML.value

	t_curr_nvp[0] = t_curr_nvp[0] + xsep + "hcolorno0" + xsep + "hcolorno1" + xsep + "hcolorno2" + xsep + "hcolorno3" + xsep + "hcolorno4"
	t_curr_nvp[1] = t_curr_nvp[1] + xsep + document.preview.hcolorno0.value
	t_curr_nvp[1] = t_curr_nvp[1] + xsep + document.preview.hcolorno1.value
	t_curr_nvp[1] = t_curr_nvp[1] + xsep + document.preview.hcolorno2.value
	t_curr_nvp[1] = t_curr_nvp[1] + xsep + document.preview.hcolorno3.value
	t_curr_nvp[1] = t_curr_nvp[1] + xsep + document.preview.hcolorno4.value

	t_curr_nvp[0] = t_curr_nvp[0] + xsep + "BGWT"
	t_curr_nvp[1] = t_curr_nvp[1] + xsep + bkoutline_weight
	
	t_curr_nvp[0] = t_curr_nvp[0] + xsep + "BGFG"
	t_curr_nvp[1] = t_curr_nvp[1] + xsep + iforecolornum
	
	t_curr_nvp[0] = t_curr_nvp[0] + xsep + "BGBG"
	t_curr_nvp[1] = t_curr_nvp[1] + xsep + ibackcolornum
	
	t_curr_nvp[0] = t_curr_nvp[0] + xsep + "BGIMG"
	t_curr_nvp[1] = t_curr_nvp[1] + xsep + backgroundimage

	if (document.preview.colorscheme){
		t_curr_nvp[0] = t_curr_nvp[0] + xsep + "prodprintcolor" + xsep + "prodmatcolor"
		t_curr_nvp[1] = t_curr_nvp[1] + xsep + prodprintcolor + xsep + prodmatcolor
	}

	if (document.preview.chkborder){
		t_curr_nvp[0] = t_curr_nvp[0] + xsep + "chkborder"
		t_curr_nvp[1] = t_curr_nvp[1] + xsep + document.preview.chkborder.value
	}

	if (document.preview.radioheader){
		t_curr_nvp[0] = t_curr_nvp[0] + xsep + "radioheader"
		t_curr_nvp[1] = t_curr_nvp[1] + xsep + document.preview.radioheader.value
	}

	if (document.preview.headlanguage){
		t_curr_nvp[0] = t_curr_nvp[0] + xsep + "headlanguage"
		t_curr_nvp[1] = t_curr_nvp[1] + xsep + document.preview.headlanguage.value
	}

	if (document.preview.arrow){
		for (var j=0; j<document.preview.arrow.length;j++){
			if (document.preview.arrow[j].checked==true){
				t_curr_nvp[0] = t_curr_nvp[0] + xsep + "arrow"
				t_curr_nvp[1] = t_curr_nvp[1] + xsep + j
				break;
			}
		}
	}

	if (document.preview.signborder){
		for (var j=0; j<document.preview.signborder.length;j++){
			if (document.preview.signborder[j].checked==true){
				t_curr_nvp[0] = t_curr_nvp[0] + xsep + "signborder";
				t_curr_nvp[1] = t_curr_nvp[1] + xsep + j
				break;
			}
		}
	}

	if (document.preview.LogoColorFlag){
		t_curr_nvp[0] = t_curr_nvp[0] + xsep + "LogoColorFlag"
		t_curr_nvp[1] = t_curr_nvp[1] + xsep + document.preview.LogoColorFlag.value
	}

	return t_curr_nvp;
}

function RetrieveWizardPreferences(yprefix) {
	var txml = getValueFromCookie("XML")

	cookieval=false
	if (XP_CSREDIT == 'Y' || XP_CSREDIT == 'y' ) {
		return;
	}else {
		if (!(txml.toLowerCase() == document.preview.templateXML.value.toLowerCase() || txml.length <= 0)) {
			return;
		}
	}

	if (txml.length <= 0){
		return;
	}


	cookieval=true
	
	var thcolorno0 = getValueFromCookie("hcolorno0")
	var thcolorno1 = getValueFromCookie("hcolorno1")
	var thcolorno2 = getValueFromCookie("hcolorno2")
	var thcolorno3 = getValueFromCookie("hcolorno3")
	var thcolorno4 = getValueFromCookie("hcolorno4")


	if (thcolorno0.length > 0) {
		for (var n=0; n<=4; n++) {
			document.preview["hcolorno" + n].value = eval("thcolorno" + n)
		}
	}

	var tbgwt = getValueFromCookie("BGWT")
	var tbgfg = getValueFromCookie("BGFG")
	var tbgbg = getValueFromCookie("BGBG")
	var tbgimg = getValueFromCookie("BGIMG")

	if (tbgwt.length > 0) {
	
		bkoutline_weight=tbgwt
		iforecolornum = tbgfg
		ibackcolornum = tbgbg
		
		outline_color_RGB = document.preview["hcolorno" + iforecolornum].value
		fill_color_RGB  = document.preview["hcolorno" + ibackcolornum].value
	}
	
	if (tbgimg.length > 0) {

			backgroundimage = tbgimg
			if (backgroundimage.substring(0,4).toLowerCase() == '/xp2' || backgroundimage.substring(0,4).toLowerCase() == '\\xp2'){
				//
			}else{
				backgroundimage = "/xp2/clipart/" + backgroundimage
			}
	}
	
    //alert(1)
	for (var k=num_divs-1; k>=1; k--) {
		if (div_contents[k]) {
			if (div_contents[k].indexOf('label') >= 0) {
				if (div_fields[k].length > 0) {
					tval = getValueFromCookie(div_fields[k])
					if (tval.length > 0 || div_fields[k].toUpperCase().indexOf('GROUP') >= 0) {
						if (flag_Text_ClearOnFocus) {
							if (!a_cleared[k]) {
								SetTextfieldProperties(k, true)
							}
						}

						var a_textval = tval.split('~')
						if (a_textval.length > 0) {
							if (document.preview["textfield" + k]) {
								document.preview["textfield" + k].value = a_textval[0].split("&quot;").join("\"")		
							}
							div_text[k] = a_textval[0]
						}
						if (a_textval.length > 1) {
							div_size[k] = a_textval[1]
						}
						if (txml.toLowerCase() == document.preview.templateXML.value.toLowerCase() || txml.length <= 0) {
							if (a_textval.length > 2) {
								div_font[k] = a_textval[2]
							}
						}
						if (a_textval.length > 3) {
							div_style[k] = a_textval[3]
						}
						if (txml.toLowerCase() == document.preview.templateXML.value.toLowerCase() || txml.length <= 0) {
							if (a_textval.length > 4) {
								div_align[k] = a_textval[4]
							}
							if (a_textval.length > 5) {
								div_color[k] = a_textval[5]
							}
							if (a_textval.length > 6) {
								div_color_hex[k] = a_textval[6]
							}
							if (a_textval.length > 7) {
								div_x[k] = parseFloat(a_textval[7])
							}
							if (a_textval.length > 8) {
								div_y[k] = parseFloat(a_textval[8])
							}
							if (a_textval.length > 9) {
								div_w[k] = parseFloat(a_textval[9])
							}
							if (a_textval.length > 10) {
								div_h[k] = parseFloat(a_textval[10])
							}
						}		
						
						if (GetElement(["elementcolor_" + k + "_" + div_color[k]])) {
							GetElement(["elementcolor_" + k + "_" + div_color[k]]).bgColor = "#" + eval("thcolorno" + div_color[k])
						}										
						if (flag_Numbering2) {
							if (div_fields[k] == flag_NumField2) {
								var tNumberingCharge = getValueFromCookie("NumberingCharge")
								if (document.preview.NumberingCharge){
									document.preview.NumberingCharge.value = tNumberingCharge
								}
							}
						}
					}
				}
			}
			else if (div_contents[k].indexOf('image') >= 0) {
				if (div_fields[k].length > 0) {
					tval = getValueFromCookie(div_fields[k])
					var a_textval = tval.split('~')
					if (a_textval[0].length > 0) {
						div_text[k] = a_textval[0]
					}
					if (txml.toLowerCase() == document.preview.templateXML.value.toLowerCase() || txml.length <= 0) {
						if (a_textval.length > 1) {
							div_x[k] = parseFloat(a_textval[1])
						}
						if (a_textval.length > 2) {
							div_y[k] = parseFloat(a_textval[2])
						}
						if (a_textval.length > 3) {
							div_w[k] = parseFloat(a_textval[3])
						}
						if (a_textval.length > 4) {
							div_h[k] = parseFloat(a_textval[4])
						}
						if (a_textval.length > 5) {
							div_transcolor[k] = a_textval[5]
						}
						if (a_textval.length > 6) {
							div_imagecolor[k] = a_textval[6]
						}
					}
				}
			}
		}
	}
	
	if (document.preview.colorscheme){
		prodprintcolor = getValueFromCookie("prodprintcolor")
		prodmatcolor = getValueFromCookie("prodmatcolor")
	}

	if (document.preview.chkborder){	//facility sign border
		document.preview.chkborder.value = getValueFromCookie("chkborder")
		if (document.preview.chkborder.value=='1'){
			document.preview.chkborder.checked=true
		}
	}

	if (document.preview.radioheader){	//Warning sign 
		document.preview.radioheader.value = getValueFromCookie("radioheader")
	}
	if (document.preview.headlanguage){	//Sign language
		document.preview.headlanguage.value = getValueFromCookie("headlanguage")
	}

	if (document.preview.arrow){	//Parking Sign arrow
		var selindex=getValueFromCookie("arrow")
		if (selindex.length==0){
			selindex=0
		}
		document.preview.arrow[selindex].checked = true
	}
	if (document.preview.signborder){	//Parking Sign border
		var selindex=getValueFromCookie("signborder")
		if (selindex.length==0){
			selindex=0
		}
		document.preview.signborder[selindex].checked = true
	}

	if (document.preview.LogoColorFlag){	//Logo color flag for Parking Permits
		document.preview.LogoColorFlag.value = getValueFromCookie("LogoColorFlag")
	}

    Flash_UpdateFlashObjects()

}

function convertSplChars(xstr){
var pos1=0, pos2, splchar=new Array(), j

return xstr
	j=0
	i=0

	while (i>=0){
		pos1 = xstr.indexOf('&#', i)
		if (pos1>=0){
			pos2 = xstr.indexOf(';', pos1)
			if (pos2>=0){
				splchar[j]=xstr.substring(pos1, pos2+1)
				j=j+1
				i=pos2
	
			}else{
				i=pos1+1
			}
		}else{
			break;
		}
		pos1 = -1
		pos2 = -1
	}
}

function getValueFromCookie(yfield) {
	var xvalue = "";
	var c_subcatgid="";
	var c_catgid="";

	if (a_names.length > 1) {
		c_subcatgid = a_values[a_names.length-1].toUpperCase();
		c_catgid = a_values[a_names.length-2].toUpperCase();
		if (c_catgid == document.preview.catgid.value.toUpperCase() && c_subcatgid == document.preview.SubCatgId.value.toUpperCase()) {
			for (var j=0; j<a_names.length; j++) {
				if (a_names[j].toUpperCase() == yfield.toUpperCase()) {
					xvalue = a_values[j]
					break;
				}
			}
		}
	}
	return xvalue;
}

function getOtherStoredNVP(ynames, yvalues, ysep) {
	var t_nvp = new Array()
	t_nvp[0] = ""
	t_nvp[1] = ""
	
	var xvalue = "";
	var c_subcatgid="";
	var c_catgid="";

	var t_names = ynames.split(ysep)
	var t_values = ynames.split(ysep)

	if (a_names.length > 1) {
	    if (a_names.length == a_values.length) {
		    c_subcatgid = a_values[a_names.length-1].toUpperCase();
		    c_catgid = a_values[a_names.length-2].toUpperCase();
		    if (c_catgid == document.preview.catgid.value.toUpperCase() && c_subcatgid == document.preview.SubCatgId.value.toUpperCase()) {
			    for (var j=0; j<a_names.length; j++) {
				    xfound = false
				    for (var m=0; m<t_names.length; m++) {
					    if (t_names[m] == a_names[j]) {
						    xfound = true
						    break;
					    }
				    }
				    if (!xfound) {
					    if (t_nvp[0].length > 0) {	
						    t_nvp[0] = t_nvp[0] + ysep
						    t_nvp[1] = t_nvp[1] + ysep
					    }
					    t_nvp[0] = t_nvp[0] + a_names[j]
					    t_nvp[1] = t_nvp[1] + a_values[j]
				    }
			    }
		    }
		}
	}
	return t_nvp;
}

