/**
 * dwr_index.js
 * 
 * 2007-10-30
 * 
 * Zier
 * 
 * 该脚本用来与后台数据交互。
 * 
 * Javascript Class: IndexPage
 */

/**
 * Class
 * 
 * 存放页面元素信息
 */
function PageBean() {
	this.mainMenu = new Array();
	this.menuPoint = 0;
	this.rigthMenu = null;
	this.leftMenu = new Array();
	this.mainInfo = new Array();
}
function IndexPage() {
	this.isFlush = false;
}
IndexPage.prototype.init = function() {
	JDWRNavigation._path = 'dwr';
	JDWRList._path = 'dwr';
	JDWRIndex._path = 'dwr';
	this.initMainBar();
	this.initRightBar();
};
IndexPage.prototype.initTwo = function() {
    JDWRNavigation._path = 'dwr';
    JDWRList._path = 'dwr';
    JDWRIndex._path = 'dwr';
    //this.initMainBar();
    var m = 0;
    m = ("null" == mid) ? 0 : mid;
    this.menuChangeTwo(m);
};
IndexPage.prototype.initMainBar = function() {
	var cb_getChildMenu = function(data) {
		var len = data.length;
		if (0 < data.length) {
			var html = new StringBuffer();
			for (var i = 0;i < len; i++) {
				html
						.append("<span id='span_menu' name='span_menu' onclick='ipage.menuChange(");
				html.append(i);
				html.append(")'>");
				html.append(data[i][1]);
				html.append("</span>");
			}
			var mainTag = document.getElementById("div_maintag");
			mainTag.innerHTML = html.toString();
			pBean.mainMenu = data;
			var m = 0;
			m = ("null" == mid) ? 0 : mid;
			new IndexPage().menuChange(m);

		}
	};
	if (null == pBean.mainMenu || 0 >= pBean.mainMenu.length)
		JDWRNavigation.getChildMenu("", cb_getChildMenu);
	else
		cb_getChildMenu(pBean.mainMenu);
};
IndexPage.prototype.initRightBar = function() {
	/*
	 * var cb_getTree = function(data) { if (null != data) { var len =
	 * data.length; var ht = new StringBuffer(); ht.append("<div
	 * class=\"font_blue\"><b>知识分类</b></div>"); var isB = false; for (var i =
	 * 1;i < len - 1; i++) { var lv = data[i][0].length; if (2 >= lv) { if (isB) {
	 * ht.append("</div></div>"); } isB = true; ht.append("<div><div><a
	 * href='#'>"); ht.append(data[i][2]); ht.append("</a></div><div
	 * class=\"hei_a\">"); } else { ht.append("<a href=\"qulist.jsp?code=");
	 * ht.append(data[i][1]); ht.append("\">"); ht.append(data[i][2]);
	 * ht.append("</a>&nbsp;"); } } ht.append("</div></div></div>");
	 * document.getElementById("div_right_menu").innerHTML = ht.toString();
	 * pBean.rigthMenu = data; } }; if (null != pBean.rigthMenu)
	 * cb_getTree(pBean.rigthMenu); else JDWRNavigation.getTree(cb_getTree);
	 */

	var cb_getRightNavigation = function(d) {
		document.getElementById("div_right_menu").innerHTML = d;
	};
	JDWRIndex.getRightNavigation(cb_getRightNavigation);

	var cb_getRecommendatory = function(s) {
		document.getElementById("ul_dot").innerHTML = s;
	};
	JDWRList.getRecommendatory(cb_getRecommendatory);
};
IndexPage.prototype.menuChange = function(i) {
	var spanMenus = document.getElementsByName("span_menu");

	for (var j = spanMenus.length - 1;j >= 0; j--) {
		if (i != j) {
			spanMenus[j].className = "tit_ns";
		} else {
			spanMenus[j].className = "tit_s";
		}
	}
	pBean.menuPoint = i;
	this.loadInfo(i);
};
IndexPage.prototype.menuChangeTwo = function(i) {
    var spanMenus = document.getElementsByName("span_menu");

    for (var j = spanMenus.length - 1;j >= 0; j--) {
        if (i != j) {
            spanMenus[j].className = "tit_ns";
        } else {
            spanMenus[j].className = "tit_s";
        }
    }
    pBean.menuPoint = i;
    //this.loadInfo(i);
};
IndexPage.prototype.loadInfo = function(i) {
	var cb_loadInfo = function(data) {
		var len = data.length;
		if (0 < len) {
			var cb_viewList = function(d) {
				if (null == d) {
					return;
				}
				try {
					var ul = document.getElementById("ul_list_" + d[0][0]);
					var ln = d.length;
					if (1 < ln) {
						var s = new StringBuffer();
						var n = 0;
						for (var j = 1;j < ln; j++) {
							s
									.append("<li style='height: 25px;'><a target='_ablank' href=\"answ.jsp?qid=");
							try {
								s.append(d[j][0]);
								s.append("\"> <b>");
								s.append(++n);
								s.append(". </b>");
								s.append(fixTitle(d[j][1]));
								s.append("</a></li>");
							} catch (e) {
								// alert(j + ":" + d[j]);
							}
						}
						s.append("")
						// alert(d[0][0]);
						ul.innerHTML = s.toString();
					} else {
						ul.innerHTML = "暂无数据!";
					}
				} catch (e) {
				}
			};
			var ht = new StringBuffer();
			for (var i = 0;i < len; i++) {
				ht.append("<div class=\"step_bor\" ><div class=\"step_img\">");
				ht.append(i + 1);
				ht
						.append("</div><div class=\"step_con\"><div><a href=\"qulist.jsp?code=");
				ht.append(data[i][0]);
				ht.append("\"><b>");
				ht.append(data[i][1]);
				ht.append("</b></a></div><div class=\"font_gray\" ");
				ht
						.append("style='font-size:9pt;line-height:4mm;height:30px;width:150px;'>");
				ht.append(data[i][2]);
				ht.append("</div><ul id='ul_list_");
				ht.append(i);
				ht.append("'>");
				ht.append("<li>载入中...</li>");
				ht.append("<li></li>");
				ht.append("</ul></div></div>");
			}
			ht.append("<div class=\"import\" />");
			try {
				document.getElementById("div_main").innerHTML = ht.toString();
			} catch (e) {

			}
			for (var i = 0;i < len; i++)
				JDWRNavigation.loadInfo(data[i][0], i, cb_viewList);
		}
	};
	JDWRNavigation.getChildMenu(pBean.mainMenu[i][0], cb_loadInfo);
};

function fixTitle(str) {
	if (null != str && str.length > 13) {
		str = str.substring(0, 13) + "...";
	}
	return str;
}

/**
 * Class
 * 
 * 字符串处理
 */
function StringBuffer() {
	this.strings = new Array;
}
StringBuffer.prototype.append = function(str) {
	this.strings.push(str);
};
StringBuffer.prototype.toString = function() {
	return this.strings.join("");
};
StringBuffer.prototype.clear = function() {
	this.strings.length = 0;
};

var pBean = new PageBean();
var ipage = new IndexPage();
