﻿var hexcase = 0;  /* hex output format. 0 - lowercase; 1 - uppercase        */
var b64pad  = ""; /* base-64 pad character. "=" for strict RFC compliance   */
var chrsz   = 8;  /* bits per input character. 8 - ASCII; 16 - Unicode      */

/*
 * These are the functions you'll usually want to call
 * They take string arguments and return either hex or base-64 encoded strings
 */
function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));}
function b64_md5(s){ return binl2b64(core_md5(str2binl(s), s.length * chrsz));}
function str_md5(s){ return binl2str(core_md5(str2binl(s), s.length * chrsz));}
function hex_hmac_md5(key, data) { return binl2hex(core_hmac_md5(key, data)); }
function b64_hmac_md5(key, data) { return binl2b64(core_hmac_md5(key, data)); }
function str_hmac_md5(key, data) { return binl2str(core_hmac_md5(key, data)); }

/*
 * Perform a simple self-test to see if the VM is working
 */
function md5_vm_test()
{
  return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72";
}

/*
 * Calculate the MD5 of an array of little-endian words, and a bit length
 */
function core_md5(x, len)
{
  /* append padding */
  x[len >> 5] |= 0x80 << ((len) % 32);
  x[(((len + 64) >>> 9) << 4) + 14] = len;

  var a =  1732584193;
  var b = -271733879;
  var c = -1732584194;
  var d =  271733878;

  for(var i = 0; i < x.length; i += 16)
  {
    var olda = a;
    var oldb = b;
    var oldc = c;
    var oldd = d;

    a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);
    d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);
    c = md5_ff(c, d, a, b, x[i+ 2], 17,  606105819);
    b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);
    a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);
    d = md5_ff(d, a, b, c, x[i+ 5], 12,  1200080426);
    c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);
    b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);
    a = md5_ff(a, b, c, d, x[i+ 8], 7 ,  1770035416);
    d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);
    c = md5_ff(c, d, a, b, x[i+10], 17, -42063);
    b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);
    a = md5_ff(a, b, c, d, x[i+12], 7 ,  1804603682);
    d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);
    c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);
    b = md5_ff(b, c, d, a, x[i+15], 22,  1236535329);

    a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);
    d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);
    c = md5_gg(c, d, a, b, x[i+11], 14,  643717713);
    b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);
    a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);
    d = md5_gg(d, a, b, c, x[i+10], 9 ,  38016083);
    c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);
    b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);
    a = md5_gg(a, b, c, d, x[i+ 9], 5 ,  568446438);
    d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);
    c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);
    b = md5_gg(b, c, d, a, x[i+ 8], 20,  1163531501);
    a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);
    d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);
    c = md5_gg(c, d, a, b, x[i+ 7], 14,  1735328473);
    b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);

    a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);
    d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);
    c = md5_hh(c, d, a, b, x[i+11], 16,  1839030562);
    b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);
    a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);
    d = md5_hh(d, a, b, c, x[i+ 4], 11,  1272893353);
    c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);
    b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);
    a = md5_hh(a, b, c, d, x[i+13], 4 ,  681279174);
    d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);
    c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);
    b = md5_hh(b, c, d, a, x[i+ 6], 23,  76029189);
    a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);
    d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);
    c = md5_hh(c, d, a, b, x[i+15], 16,  530742520);
    b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);

    a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);
    d = md5_ii(d, a, b, c, x[i+ 7], 10,  1126891415);
    c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);
    b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);
    a = md5_ii(a, b, c, d, x[i+12], 6 ,  1700485571);
    d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);
    c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);
    b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);
    a = md5_ii(a, b, c, d, x[i+ 8], 6 ,  1873313359);
    d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);
    c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);
    b = md5_ii(b, c, d, a, x[i+13], 21,  1309151649);
    a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);
    d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);
    c = md5_ii(c, d, a, b, x[i+ 2], 15,  718787259);
    b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);

    a = safe_add(a, olda);
    b = safe_add(b, oldb);
    c = safe_add(c, oldc);
    d = safe_add(d, oldd);
  }
  return Array(a, b, c, d);

}

/*
 * These functions implement the four basic operations the algorithm uses.
 */
function md5_cmn(q, a, b, x, s, t)
{
  return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);
}
function md5_ff(a, b, c, d, x, s, t)
{
  return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);
}
function md5_gg(a, b, c, d, x, s, t)
{
  return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);
}
function md5_hh(a, b, c, d, x, s, t)
{
  return md5_cmn(b ^ c ^ d, a, b, x, s, t);
}
function md5_ii(a, b, c, d, x, s, t)
{
  return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);
}

/*
 * Calculate the HMAC-MD5, of a key and some data
 */
function core_hmac_md5(key, data)
{
  var bkey = str2binl(key);
  if(bkey.length > 16) bkey = core_md5(bkey, key.length * chrsz);

  var ipad = Array(16), opad = Array(16);
  for(var i = 0; i < 16; i++)
  {
    ipad[i] = bkey[i] ^ 0x36363636;
    opad[i] = bkey[i] ^ 0x5C5C5C5C;
  }

  var hash = core_md5(ipad.concat(str2binl(data)), 512 + data.length * chrsz);
  return core_md5(opad.concat(hash), 512 + 128);
}

/*
 * Add integers, wrapping at 2^32. This uses 16-bit operations internally
 * to work around bugs in some JS interpreters.
 */
function safe_add(x, y)
{
  var lsw = (x & 0xFFFF) + (y & 0xFFFF);
  var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
  return (msw << 16) | (lsw & 0xFFFF);
}

/*
 * Bitwise rotate a 32-bit number to the left.
 */
function bit_rol(num, cnt)
{
  return (num << cnt) | (num >>> (32 - cnt));
}

/*
 * Convert a string to an array of little-endian words
 * If chrsz is ASCII, characters >255 have their hi-byte silently ignored.
 */
function str2binl(str)
{
  var bin = Array();
  var mask = (1 << chrsz) - 1;
  for(var i = 0; i < str.length * chrsz; i += chrsz)
    bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32);
  return bin;
}

/*
 * Convert an array of little-endian words to a string
 */
function binl2str(bin)
{
  var str = "";
  var mask = (1 << chrsz) - 1;
  for(var i = 0; i < bin.length * 32; i += chrsz)
    str += String.fromCharCode((bin[i>>5] >>> (i % 32)) & mask);
  return str;
}

/*
 * Convert an array of little-endian words to a hex string.
 */
function binl2hex(binarray)
{
  var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
  var str = "";
  for(var i = 0; i < binarray.length * 4; i++)
  {
    str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) +
           hex_tab.charAt((binarray[i>>2] >> ((i%4)*8  )) & 0xF);
  }
  return str;
}

/*
 * Convert an array of little-endian words to a base-64 string
 */
function binl2b64(binarray)
{
  var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
  var str = "";
  for(var i = 0; i < binarray.length * 4; i += 3)
  {
    var triplet = (((binarray[i   >> 2] >> 8 * ( i   %4)) & 0xFF) << 16)
                | (((binarray[i+1 >> 2] >> 8 * ((i+1)%4)) & 0xFF) << 8 )
                |  ((binarray[i+2 >> 2] >> 8 * ((i+2)%4)) & 0xFF);
    for(var j = 0; j < 4; j++)
    {
      if(i * 8 + j * 6 > binarray.length * 32) str += b64pad;
      else str += tab.charAt((triplet >> 6*(3-j)) & 0x3F);
    }
  }
  return str;
}



function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

function trim(str){
		//该函数删除字符串前后的空格，相当于PHP语句中的trim();
		
		blankExp1=/^ +/;
		blankExp2=/ +$/;
		blankExp3=/^[\n\r]([\n\r]?)+/;	
		blankExp4=/[\n\r]([\n\r]?)+$/;
		str = str.replace(blankExp1,'');
		str = str.replace(blankExp2,'');
		str = str.replace(blankExp3,'');
		str = str.replace(blankExp4,'');
		return str;	
	
}

function check_username(blog_url, maxlength){
		if(blog_url.length<1){
			return false; //
		}
		var j=0;
		for(var i=0;i<blog_url.length;i++){
			var tmpChar=blog_url.charCodeAt(i);
		
			if((tmpChar<44)||((tmpChar>45)&&(tmpChar<48) )||((tmpChar<65)&&(tmpChar>57) )||((tmpChar<97)&&(tmpChar>90) )||(tmpChar>122)){
				return false;
			}else{
				j++;
			}
			j++;
			if(j>maxlength){
				return false;
			}			
		}
		return true;
}

function checkmail_valid(myemail)
{
	var myEMailIsValid = true;
	var myAtSymbolAt = myemail.indexOf('@');
	var myLastDotAt = myemail.lastIndexOf('.');
	var mySpaceAt = myemail.indexOf(' ');
	var myLength = myemail.length;
	if (myAtSymbolAt < 1) {myEMailIsValid = false}
	if (myLastDotAt < myAtSymbolAt+2) {myEMailIsValid = false}
	if (myLength - myLastDotAt <= 2) {myEMailIsValid = false}
	if (myLength - myLastDotAt > 5) {myEMailIsValid = false}
	if (mySpaceAt != -1) {myEMailIsValid = false}
	ok = ".@-_1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM";

	for(i=0; i < myLastDotAt ;i++){
		if(ok.indexOf(myemail.charAt(i))<0){ 
			myEMailIsValid = false; break;
		}
	}

	for(i=myLastDotAt+1; i < myemail.length; i++){
		if(ok.indexOf(myemail.charAt(i))<14){ 
			myEMailIsValid = false; break;
		}
	}

	if(ok.indexOf(myemail.charAt(myAtSymbolAt+1))<4){ 
		myEMailIsValid = false;
	}

	if(ok.indexOf(myemail.charAt(0))<4){ 
		myEMailIsValid = false;
	}

	return myEMailIsValid
}


function showSelectBoxes2(){
	selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		if(selects[i].className!='not_hide_select'){
			Element.show(selects[i]);
		}
	}
}

function hideSelectBoxes2(){
	selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		if(selects[i].className!='not_hide_select'){
			Element.hide(selects[i]);
		}
	}
}

function hide_all(ifHideSelectBox){
	if(ifHideSelectBox){
		hideSelectBoxes2();
	}

	var arrayPageSize = getPageSize2();
	if(!$("overlayImg")){
		var divstr="<div style='background: url(/images/overlay.gif) repeat;Z-Index:10000;position:absolute;display:none;filter:alpha(opacity=50);' width='0' height='0' name='overlayImg' id='overlayImg'></div>";
		new Insertion.Bottom(document.body, divstr);
	}

	Element.setStyle("overlayImg",{left:0, top:0, height:arrayPageSize[1], width:arrayPageSize[0]});
	Element.show("overlayImg");

}

function show_all(ifShowSelectBox){
	if(ifShowSelectBox){
		showSelectBoxes2();
	}

	Element.hide("overlayImg");
}


function add_object(o, obj_str){
	o.innerHTML=obj_str;
}

function add_object2(obj_str){
	document.write(obj_str);;
}



function CheckUrl(url){
	var sTemp;
	var b=true;
	sTemp=url.substring(0,6);
	sTemp=sTemp.toUpperCase();
	if (((sTemp!="HTTP:/")&&(sTemp!="FTP://")&&(sTemp!="MAILTO")&&(sTemp!="HTTPS:"))||(url.length<11)){
		b=false;
	}
	return b;
}


function show_message(str, msg_type, left, top, autohide){
	var divBox=document.getElementById('mbox');

	if(!divBox){
		var divBox="<div class='messagebox' style='width:320px;Z-Index:12000;position:absolute;left:200px;top:100px;font-size:12px;display:none;overflow:hidden'   name='mbox' id='mbox'><br><table width='300' align='center' border='0'><tr><td width='40' valign='top' align='center'><img src='/images/doing.gif' id='messageImg' width=20 height=20></td><td style='font-size:12px;' valign='top'><div name='messagestr' id='messagestr' class='messagestr'>正在操作，请稍等....</div></td></tr><tr><td height='6' colspan='2'></td></tr></table></div>";
		new Insertion.Bottom(document.body, divBox);
	}

	if(left) Element.setStyle("mbox", {left:left});
	if(top) Element.setStyle("mbox", {top:top});
	
	Element.show("mbox");
	
	var msg_img="";
	switch(msg_type){
		case 'doing':msg_img='/images/doing.gif';  break;
		case 'ok':msg_img='/images/ok.gif';break;
		case 'error':msg_img='/images/error.gif';break;
		case 'warning':msg_img='/images/warning.gif';break;
	}
	$('messageImg').src=msg_img;
	$('messagestr').innerHTML=str;

	draw_shadow("mbox");
	if(autohide){
		setTimeout("hide_message()",autohide);
	}

}

function hide_message(){
	Element.hide("mbox");
	hide_shadow("mbox");
}


function popup_note(obj, note_str, width, offsetx){

	var position=Position.cumulativeOffset(obj);
	var curleft=position[0];
	var curtop=position[1];
	var note_box_left=curleft+offsetx;
	var note_box=$("note_box");
	if(!note_box){
		var note_box_str="<div style='width:"+width+"px;height:60px;Z-Index:11000;position:absolute;left:"+note_box_left+"px;top:100px;font-size:12px;display:none;'   name='note_box' id='note_box'><table width='"+width+"' align='center' border='0' cellspacing='0' cellpadding='0'><tr><td class='note_box_left_td'></td><td valign='top' class='note_box_main_td' id='note_msg_td'></td></tr></table></div>";
		new Insertion.Bottom(document.body, note_box_str);
	}

	if(!$("note_box")){return false;}
	$("note_msg_td").innerHTML=note_str;
	Element.setStyle("note_box", {top: curtop-6, left:note_box_left, width:width});
	Element.show("note_box");

}

function hide_popup_note(){
	Element.hide("note_box");
}

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/; domain=.beibeike.com";
}

function deleteCookie(name, session_cookie){
	var expires = new Date();
	expires.setTime (expires.getTime() - 1);
	if(!session_cookie){
		createCookie( name , "Delete Cookie", expires,"/",".beibeike",false);
	}else{
		createCookie( name , "Delete Cookie", expires);
	}
} 


function beibeike_login(){
	var blog_url=trim($F("beibeike_username"));
	blog_url=blog_url.toLowerCase();
	var user_password=trim($F("beibeike_password"));
	if(blog_url=='' || user_password==''){
		alert("二级域名和口令不能为空！");
		return false;
	}
	var days=0;
	if($("beibeike_alog").checked){
		days=30;
		createCookie("bbp_alog","1",days);
	}

	var user_password2=hex_md5(user_password);
	createCookie("bbp_username",blog_url,days);
	createCookie("bbp_password",user_password2,days);

	
	var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	show_message("正在登录，请稍候....<br><br><a href='#' onclick='hide_message();  return false;'>如果很长时间没有返回结果，请点击这儿关闭提示窗口</a>，<br>然后重新提交。", "doing", curleft-10, curtop-10);
	;

	var url="/login.php";
	var pars="u="+encodeURIComponent(blog_url)+"&p="+user_password2;
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'post', 
			parameters: pars, 
			onSuccess: ok_login,
			onFailure: ajax_failure
		});	


}
function beibeike_logout(){
	var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	show_message("正在退出登录，请稍候....<br><br><a href='#' onclick='hide_message();  return false;'>如果很长时间没有返回结果，请点击这儿关闭提示窗口</a>，<br>然后重新提交。", "doing", curleft-10, curtop-10);
	;
	var url="logout.php?action=1";
	var pars="";
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'get', 
			parameters: pars, 
			onSuccess: ok_logout,
			onFailure: ajax_failure
		});	
}

function ok_logout(){
	show_message("您已经成功退出！<br><br><a href='#' onclick='window.location.reload();  return false;'>请点击这儿刷新当前页面</a>，<br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "ok");
	;

}

function ok_login(o){
	var res=trim(o.responseText);
	if(res=='1'){
		show_message("您已经成功登录....<br><br><a href='#' onclick='window.location.reload();  return false;'>请点击这儿刷新当前页面</a>，<br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "ok");
	}else{
		show_message("用户名或者口令错误！"+res+"<br><br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "ok");
	}
}

function ajax_failure(o){

	show_message("提交数据时发生错误....<br><br><a href='#' onclick='hide_message(); return false;'>请点击这儿关闭提示窗口</a>，<br>然后重新操作。", "error");
}


function draw_shadow(obj_id, depth){
	if(!$(obj_id+"_shadow")){
		var z_index=$(obj_id).style.xIndex-1;
		var div_str="<div style='background-color:#333333;width:280px;height:60px;position:absolute;left:206px;top:106px;font-size:12px;filter:alpha(opacity=40);Z-index:"+z_index+";display:none'  id='"+obj_id+"_shadow'></div>";
		new Insertion.After(obj_id, div_str); 
	}
	var org_obj=$(obj_id);
	var shadow_obj=$(obj_id+"_shadow");
	if(!depth) depth=4;
	shadow_obj.style.top = org_obj.offsetTop + depth;
	shadow_obj.style.left = org_obj.offsetLeft + depth;
	shadow_obj.style.width = org_obj.offsetWidth;
	shadow_obj.style.height = org_obj.offsetHeight;
	shadow_obj.style.display="block";
}

function hide_shadow(obj_id){
	Element.hide(obj_id+"_shadow");
}


function flower(flower_type, flower_table, flower_field, flower_id_field, flower_id, flower_show_id){
	var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	show_message("正在提交数据，请稍候....<br><br><a href='#' onclick='hide_message();  return false;'>如果很长时间没有返回结果，请点击这儿关闭提示窗口</a>，<br>然后重新提交。", "doing", curleft-100, curtop-10);
	;
	var url="flower.htm";

	var pars="t="+flower_type +"&n="+flower_table +"&f="+flower_field +"&if="+ flower_id_field +"&i="+flower_id+"&s="+flower_show_id;
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'post', 
			parameters: pars, 
			onSuccess: ok_flower,
			onFailure: ajax_failure
		});	
}

function ok_flower(o){
	var res=trim(o.responseText).split("\t");
	if(res[0]!="1"){
		show_message(res[1]+"....<br><br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "error");
	}else{
		var obj=$(res[1]);
		var flowers=parseInt(obj.innerHTML)+1;
		obj.innerHTML=flowers;
		show_message("送花成功....<br><br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "ok", 0, 0, 800);
	}
}


function digg(digg_type, digg_table, digg_field, digg_id_field, digg_id, digg_show_id, digg_time){
	var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	show_message("正在提交数据，请稍候....<br><br><a href='#' onclick='hide_message();  return false;'>如果很长时间没有返回结果，请点击这儿关闭提示窗口</a>，<br>然后重新提交。", "doing", curleft-100, curtop-10);
	;
	var url="digg.php";
	var pars="t="+digg_type +"&n="+digg_table +"&f="+digg_field +"&if="+ digg_id_field +"&i="+digg_id+"&s="+digg_show_id+"&m="+digg_time;
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'post', 
			parameters: pars, 
			onSuccess: ok_digg,
			onFailure: ajax_failure
		});	
}

function ok_digg(o){
	var res=trim(o.responseText).split("\t");
	if(res[0]!="1"){
		show_message(o.responseText+"....<br><br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "error");
	}else{
		var obj=$(res[1]);
		var diggs=parseInt(obj.innerHTML)+1;
		obj.innerHTML=diggs;
		show_message("推荐成功....<br><br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "ok", 0, 0, 800);
	}
}


function add_friend(pos){
	var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	Element.setStyle("overall_admin_div", {left: curleft-20, top: curtop, width: 340, height: 270});
	Element.setStyle("overall_admin_div_table", {width: 340, height: 270});

	Element.setStyle("overall_admin_div_body", {height: 240});
	$("overall_admin_div_title").innerHTML="添加好友";
	$("overall_admin_div_body").innerHTML="<br><br><br><center>正在加载数据，请稍候...</center>";
	Element.show("overall_admin_div");
	draw_shadow("overall_admin_div");

	var pars="";
	var url="friend_add.php";
	var myAjax = new Ajax.Updater(
		'overall_admin_div_body',
		url, 
		{
			method: 'get', 
			parameters: pars
		});	

}
function close_overall_admin_div(){
	Element.hide('overall_admin_div'); 
	hide_shadow('overall_admin_div');
}

function show_color_picker(from_obj_id, offsetx, offsety){
	if(!$("overall_color_picker_div")){
		var divstr="<div style='border: 1px solid #666666; Z-Index:11000;position:absolute;left:200px;top:100px; font-size:12px; display:none' id='overall_color_picker_div'><table width='200' class='admin_table' cellspacing='0' cellpadding='2'><tr><td class='admin_table_title_td'>&nbsp;<font color='#FFFFFF'>颜色选择器</font></td><td align='right' class='admin_table_title_td'><img src='http://bb2.beibeike.com/imgs-new/closebtn.gif' width='12' height='12' style='cursor:hand;' onclick='close_overall_color_picker();'></td></tr><tr><td  bgcolor='#F9FBFD' colspan='2'>";
		var colors = new Array("#000000","#000033","#000066","#000099","#0000CC","#0000FF","#330000","#330033","#330066","#330099","#3300CC","#3300FF","#660000","#660033","#660066","#660099","#6600CC","#6600FF","#990000","#990033","#990066","#990099","#9900CC","#9900FF","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#003300","#003333","#003366","#003399","#0033CC","#0033FF","#333300","#333333","#333366","#333399","#3333CC","#3333FF","#663300","#663333","#663366","#663399","#6633CC","#6633FF","#993300","#993333","#993366","#993399","#9933CC","#9933FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#006600","#006633","#006666","#006699","#0066CC","#0066FF","#336600","#336633","#336666","#336699","#3366CC","#3366FF","#666600","#666633","#666666","#666699","#6666CC","#6666FF","#996600","#996633","#996666","#996699","#9966CC","#9966FF","#CC6600","#CC6633","#CC6666","#CC6699","#CC66CC","#CC66FF","#FF6600","#FF6633","#FF6666","#FF6699","#FF66CC","#FF66FF","#009900","#009933","#009966","#009999","#0099CC","#0099FF","#339900","#339933","#339966","#339999","#3399CC","#3399FF","#669900","#669933","#669966","#669999","#6699CC","#6699FF","#999900","#999933","#999966","#999999","#9999CC","#9999FF","#CC9900","#CC9933","#CC9966","#CC9999","#CC99CC","#CC99FF","#FF9900","#FF9933","#FF9966","#FF9999","#FF99CC","#FF99FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#66CC00","#66CC33","#66CC66","#66CC99","#66CCCC","#66CCFF","#99CC00","#99CC33","#99CC66","#99CC99","#99CCCC","#99CCFF","#CCCC00","#CCCC33","#CCCC66","#CCCC99","#CCCCCC","#CCCCFF","#FFCC00","#FFCC33","#FFCC66","#FFCC99","#FFCCCC","#FFCCFF","#00FF00","#00FF33","#00FF66","#00FF99","#00FFCC","#00FFFF","#33FF00","#33FF33","#33FF66","#33FF99","#33FFCC","#33FFFF","#66FF00","#66FF33","#66FF66","#66FF99","#66FFCC","#66FFFF","#99FF00","#99FF33","#99FF66","#99FF99","#99FFCC","#99FFFF","#CCFF00","#CCFF33","#CCFF66","#CCFF99","#CCFFCC","#CCFFFF","#FFFF00","#FFFF33","#FFFF66","#FFFF99","#FFFFCC","#FFFFFF");var total = colors.length;var width = 18;var colorStr="<table>";for(var i=0; i<total; i++){	if(i % width ==0){colorStr+="<tr>";}	colorStr+="<td bgcolor="+colors[i]+" width='8' height='12' style='cursor:hand;' onclick='overall_color_pick(\""+colors[i]+"\");'></td>";	if(i % width ==width-1){colorStr+="</tr>";}}colorStr+="</table>";
		divstr+=colorStr;		
		divstr+="</td></tr></table><input type='hidden' id='overall_color_picker_from_obj' name='overall_color_picker_from_obj' value='"+from_obj_id+"'></div>";
		new Insertion.After("overall_admin_div", divstr); 
	}
	var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	if(!offsetx) offsetx=-20;
	if(!offsety) offsetx=20;

	Element.setStyle("overall_color_picker_div", {left: curleft+offsetx, top: curtop+offsety});
	$("overall_color_picker_from_obj").value=from_obj_id;
	Element.show("overall_color_picker_div");
	draw_shadow("overall_color_picker_div")
}

function overall_color_pick(color){
	var obj=$($F("overall_color_picker_from_obj"));
	Element.setStyle(obj, {color: color});
	obj.value=color.substr(1);
	close_overall_color_picker();
}

function close_overall_color_picker(){
	Element.hide("overall_color_picker_div");
	hide_shadow("overall_color_picker_div")
}


function overall_add_cat(cat_obj_id){
	var cat=decodeURIComponent($(cat_obj_id).value);
	if(cat==''){
		newCatTitle=prompt("请输入新增的分类名称(不要超过10个汉字):","");
		if(newCatTitle=='' || newCatTitle==null){
			return false;
		}else{
			var optionCnt=$(cat_obj_id).options.length;
			$(cat_obj_id).options[optionCnt-1]=new Option(newCatTitle, newCatTitle);
			$(cat_obj_id).options[optionCnt]=new Option('新增分类...', '');
			$(cat_obj_id).options[optionCnt-1].selected=true;
					
		}
	}
}

function add_friend2(){
    var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	show_message("正在提交数据，请稍候....<br><br><a href='#' onclick='hide_message();  return false;'>如果很长时间没有返回结果，请点击这儿关闭提示窗口</a>，<br>然后重新提交。", "doing", curleft-50, curtop-10);
	var pars=Form.serialize("friend_add_form");
	var url="friend_add2.php";
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'post', 
			parameters: pars, 
			onSuccess: ok_add_friend,
			onFailure: ajax_failure
		});	
}

function ok_add_friend(o){
	res=trim(o.responseText);
	if(res!='1'){
		show_message(res+"<br><br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "error");
	}else{
		close_overall_admin_div();
		show_message("该用户已经加为您的好友！<br><br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "ok");
	}
}

function link_quick_add(){
	var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	Element.setStyle("overall_admin_div", {left: curleft-20, top: curtop, width: 360, height: 160});
	Element.setStyle("overall_admin_div_table", {width: 360, height: 160});

	Element.setStyle("overall_admin_div_body", {height: 130});
	$("overall_admin_div_title").innerHTML="加入网址簿";
	$("overall_admin_div_body").innerHTML="<br><br><br><center>正在加载数据，请稍候...</center>";
	Element.show("overall_admin_div");
	draw_shadow("overall_admin_div");
	
	var url=window.location;
	if($("url_input")){
		url=$F("url_input");
	}
	url=encodeURIComponent(url);
	var title=encodeURIComponent(document.title);
	var pars="url="+window.location+"&title="+title;
	var url="link_quick_add.php";
	var myAjax = new Ajax.Updater(
		'overall_admin_div_body',
		url, 
		{
			method: 'get', 
			parameters: pars
		});	
}

function link_quick_add2(){
    var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	show_message("正在提交数据，请稍候....<br><br><a href='#' onclick='hide_message();  return false;'>如果很长时间没有返回结果，请点击这儿关闭提示窗口</a>，<br>然后重新提交。", "doing", curleft-50, curtop-10);
	var pars=Form.serialize("link_quick_add_form");
	var url="link_quick_add2.php";
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'post', 
			parameters: pars, 
			onSuccess: ok_add_quick_link,
			onFailure: ajax_failure
		});	
}

function ok_add_quick_link(o){
	res=trim(o.responseText);
	if(res!='1'){
		show_message(res+"<br><br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "error");
	}else{
		close_overall_admin_div();
		show_message("该网页已经加入到您的网址簿！<br><br><a href='#' onclick='hide_message();  return false;'>请点击这儿关闭提示窗口</a>。", "ok");
	}
}

function ajax_update_content(div_id, url, pars){
	var myAjax = new Ajax.Updater(
		div_id,
		url, 
		{
			method: 'get', 
			parameters: pars
		});	
}


function private_pass(cookie_name, cookie_value, action){
	createCookie(cookie_name,cookie_value,0);
	eval(action);
}

function export_content(editor_id, form_id, back_type){
  prepareSubmit($(editor_id));
  var old_target=$(form_id).target;
  $(form_id).action="export.php?type="+back_type;
  $(form_id).target="_self";
  $(form_id).submit();
  $(form_id).action="";
  $(form_id).target=old_target;

}


function do_import(){
	if(editMode!='edit'){
		alert('现在不是编辑状态，无法执行指定操作！');
		return false;
	}

	var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	Element.setStyle("overall_admin_div", {left: curleft-120, top: curtop-140, width: 360, height: 180});
	Element.setStyle("overall_admin_div_table", {width: 360, height: 180});
	Element.setStyle("overall_admin_div_body", {height: 150});
	$("overall_admin_div_title").innerHTML="从备份文件中导入内容";
	$("overall_admin_div_body").innerHTML="<br><br><br><center>正在加载数据，请稍候...</center>";
	Element.show("overall_admin_div");
	draw_shadow("overall_admin_div");
	var pars="";
	var url="import.php";
	var myAjax = new Ajax.Updater(
		'overall_admin_div_body',
		url, 
		{
			method: 'get', 
			parameters: pars
		});	
}

function import_content(action, text){
	if(action==0){
		alert("上传的文件格式错误！");
	}else{
		bbpEditor.document.execCommand("selectAll");
		pasteHTML(text);
	}
	close_overall_admin_div();
}


function jubao(jubao_type, jubao_content){
	var curleft=Event.pointerX(event);
	var curtop=Event.pointerY(event);
	Element.setStyle("overall_admin_div", {left: curleft-220, top: curtop-40, width: 360, height: 180});
	Element.setStyle("overall_admin_div_table", {width: 360, height: 180});
	Element.setStyle("overall_admin_div_body", {height: 150});
	$("overall_admin_div_title").innerHTML="举报";
	$("overall_admin_div_body").innerHTML="<br><br><br><center>正在加载数据，请稍候...</center>";
	Element.show("overall_admin_div");
	draw_shadow("overall_admin_div");
	var pars="jubao_type="+jubao_type+"&jubao_content="+jubao_content;
	var url="jubao.php";
	var myAjax = new Ajax.Updater(
		'overall_admin_div_body',
		url, 
		{
			method: 'get', 
			parameters: pars
		});	
}

function jubao_ok(){
	close_overall_admin_div();

	alert("您的举报内容已经提交，谢谢您！");
}

function stop(){
	return false;
}
function start(){
	return false;
}


function do_so(){
	var kw=$("search_kw").value;
	if(kw.length<1 || kw=='关键词'){
		alert("请输入搜索的关键词！");
	$("search_kw").focus();
	return false;
	}
	kw=encodeURIComponent(kw);
	switch($("search_scope").selectedIndex){
	case 1: window.location.href="http://so.beibeike.com/s.jsp?kw="+kw+"&sc=1";break;
	case 0: window.location.href="http://so.beibeike.com/s.jsp?kw="+kw+"";break;
	case 2: window.location.href="http://www.google.cn/search?q="+kw;break;
	}
}

function gotoLocation(id){
	var o=document.getElementById(id);
	if(o!=null){
		void(o.scrollIntoView(true ));
	}
}