//////////////////////////////////////////////////////////////////////////////////////////////////
//      ______                                            _____                                 //
//      |__   _|            _    ____                    / ____| _               _  _           //
//         | |  _   _  ___ | |_ |  _ \  _   _  _ __     | (___  | |_  _   _   __| |(_)  ___     //
//     __  | | | | | |/ __|| __|| |_) || | | || '_ \      \___ \| __|| | | | / _` || | / _ \    //
//     \ \_/ / | |_| |\__ \| |_ |  _ < | |_| || | | |    ____) || |_ | |_| || (_| || || (_) |   //
//      \___/   \__,_||___/ \__||_| \_\ \__,_||_| |_|   |_____/  \__| \__,_| \__,_||_| \___/    //
//                                                                                              //
//                    ____   _         _     __                                                 //
//                   |  _ \ | |  __ _ | |_  / _|  ___   _ __  _ __ ___                          //
//                   | |_) || | / _` || __|| |_  / _ \ | '__|| '_ ` _ \                         //
//                   |  __/ | || (_| || |_ |  _|| (_) || |   | | | | | |                        //
//                   |_|    |_| \__,_| \__||_|   \___/ |_|   |_| |_| |_|     v1.30              //
//                                                                                              //
//                                                                                              //
//                                          Copyrights (c) 2005 Powerd By JustRun Studio        //
//                                                        All Rights Reserved.                  //
//                                                                                              //
//                                                                                              //
//////////////////////////////////////////////////////////////////////////////////////////////////

//debugger;
//var objTheme = new ActiveXObject("Microsoft.XMLDOM");
var themeName;


loadStyleSheet();
addLoadEvent(Function("initialThemeList('Theme')"));

// Appends a CSS file to a document.添加一个样式表
function AppendStyleSheet( documentElement, cssFileUrl )
{
	var e = documentElement.createElement( 'LINK' ) ;
	e.rel	= 'stylesheet' ;
	e.type	= 'text/css' ;
	e.title = 'Theme';
	e.href	= cssFileUrl ;
	documentElement.getElementsByTagName("HEAD")[0].appendChild( e ) ;
}

//设置样式表
function setActiveStyleSheet(arrTheme) {
  var i, a, main;
  for (i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if (a.getAttribute("rel") &&
        a.getAttribute("rel").indexOf("style") != -1 &&
        a.getAttribute("title")) {
      if(a.getAttribute("title") == "Theme"){
				//正则表达式替换href
				themeName = arrTheme[0];
				a.href = a.href.replace(/(Style\/Theme\/)[^\/]+(\/)/i,"$1" + arrTheme[0] + "$2");
				setElementsContent(arrTheme);
      }
    }
  }
}

//设置页面主题元素内容
function setElementsContent(arrTheme){
	if (!document.getElementById) return;
	if (!document.getElementById("CurTheme")) return;
	document.getElementById("CurTheme").innerText = arrTheme[0];
	/*if (document.getElementById("CurThemeAuthor")){
		document.getElementById("CurThemeIntro").innerText = aName[1];
	}*/
	if (document.getElementById("CurThemeIntro")){
		document.getElementById("CurThemeIntro").innerHTML = '<div>' + arrTheme[2] + '</div><div align="right">Designed by <strong>' + arrTheme[1] + '</strong>&nbsp;</div>';
	}	
}

//载入页面以前加载样式表
function loadStyleSheet(){
	var strCookies;
	try{
		//获取当前主题名称
		//objTheme.async = false;
		//objTheme.load("/XML/Config/Theme.xml");
		
		var objXML = jb();
		objXML.open("GET","/XML/Config/Theme.xml",false);
		//objXML.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
		objXML.send("");
		
		objTheme = objXML.responseXML;
		
		//strCookies = readCookie("Theme");
		//debugger;
		//themeName = strCookies.replace(/(.*)Theme=([^&]+)(.*)/ig,"$2");
		themeName = readCookie("Theme");
		//debugger;
		//if(!themeName || strCookies.indexOf("Theme=") == -1){
		if(!themeName){
			//themeName = objTheme.selectSingleNode("//Theme/DefaultTheme").text;
			themeName = objTheme.getElementsByTagName("DefaultTheme")[0].firstChild.nodeValue;
		}
		AppendStyleSheet(document,"/Style/Theme/" + themeName + "/Main.css");
	}
	catch(e){
		alert("StyleSheet is not loaded:" + e.message);
	}
}

//初始化主题选择列表
function initialThemeList(themeId){
	var themeList;
	var aItem;
	var arrTheme = null;
	if (!document.getElementById) return false;
	themeList = document.getElementById(themeId);
	if (themeList){
		themeList.onchange = Function("setActiveStyleSheet(this.value.split('|'))");
		//themeList.innerHTML = "";
		//for(var i=0;i<objTheme.selectNodes("//Theme/Item").length;i++){
		for(var i=0;i<objTheme.getElementsByTagName("Item").length;i++){
			aItem = document.createElement("option");
			//aItem.value = objTheme.selectNodes("//Theme/Item")[i].text;
			aItem.value = Array(objTheme.getElementsByTagName("Item")[i].getAttribute("Name"),
													objTheme.getElementsByTagName("Item")[i].getAttribute("Author"),
													objTheme.getElementsByTagName("Item")[i].firstChild.nodeValue).join("|");
			aItem.innerHTML = aItem.value.split("|")[0];
			if(aItem.value.split("|")[0]==themeName){
				aItem.setAttribute("selected","true");
				arrTheme = aItem.value.split("|");
			}
			themeList.appendChild(aItem);
			//themeList.innerHTML += aItem.outerHTML;
		}
	}
	if(arrTheme)setElementsContent(arrTheme);
}