//显示动态
function showEvents(type,uid,isFriend){
	$("#events").html('<div class="loading"></div>');
	if(type=="ALL"){//全站动态
		$("#events").load("/st/PreEvents?f=t",function(){$("#events").attr("class","");});
	}else{
		if(isFriend){//好友集合的动态有序集合 
			$("#events").load("/st/PreEvents?f=t&uid="+uid+"&t="+type,function(){$("#events").attr("class","");});
		}else{//个人动态【可以包括自己】
			$("#events").load("/st/PreEvents?uid="+uid+"&t="+type,function(){$("#events").attr("class","");});
		}
	}
	$("li[id*='eventsLi']").removeClass("alt");
	$("#eventsLi"+type).addClass("alt"); 
	return false;
}
//目前仅仅用于显示 别人给我的评论 以及评论回复
function showEventsWithKind(kind,uid){
	$("#events").html('<div class="loading"></div>');
	$("#events").load("/st/PreEvents?uid="+uid+"&kind="+kind,function(){$("#events").attr("class","");});
	return false;
}

//获取评论frame的ID 
function genCommentsFrameId(foreignId,commentType,frameStr){
	var ret = "comments_"+foreignId+"_"+commentType;
	if(frameStr!=undefined&&frameStr!=null&&frameStr.length>0){
		ret = ret + "_" + frameStr;
	}
	return ret;
}
//动态加载（隐藏）评论frame
//frameStr 用来唯一定位每一个评论的 frame (可以为空，只有有可能会发生冲突的时候才需要，比如一个页面上对同一个相册的评论有2个的时候)
function showComments(foreignId,commentType,frameStr){
	if(frameStr==undefined||frameStr==null){frameStr=''};
	frameId = genCommentsFrameId(foreignId,commentType,frameStr);
	if($("#"+frameId+"_box:hidden").length==1){  //只有展开的时候才加载
		document.getElementById(frameId).src = "/st/PreCommentsList?commentType="+commentType+"&foreignId="+foreignId+"&frameStr="+frameStr+"&page=1";
		$("#"+frameId+"_box").fadeIn("slow");
	}else{
		$("#"+frameId+"_box").fadeOut("slow");
	}
	return false;
}

/*等待、过渡
    title:	窗口标题
  content:  内容(可选内容为){ text | id | img | url | iframe }
    width:	内容宽度
   height:	内容高度
	 drag:  是否可以拖动(ture为是,false为否)
     time:	自动关闭等待的时间，为空是则不自动关闭
   showbg:	[可选参数]设置是否显示遮罩层(false为不显示,true为显示)
  cssName:  [可选参数]附加class名称*/
function showUnloadGifSNS(type){
	if (type == "image"){
		tipsWindown("等待照片上传...","img:/images/wait.gif","200","50","false","","true","img","false");
	}else if(type == "blog"){
		tipsWindown("等待日记保存...","img:/images/wait.gif","200","50","false","","true","img","false");
	}else if(type == "photoCategory"){
		tipsWindown("等待相册保存中...","img:/images/wait.gif","200","50","false","","true","img","false");
	}else if(type == "imageMulti"){
		tipsWindown("等待照片批量上传中...","img:/images/wait.gif","200","50","false","","true","img","false");
	}else if(type == "photoCategoryDel"){
		tipsWindown("等待相册删除中...","img:/images/wait.gif","200","50","false","","true","img","false");
	}
}
function showUrl(title,url,width,height,drag){
	tipsWindown(title,"url:get?"+url,width,height,drag,"","true","");
}
//显示出过度效果的图标
function showUnloadGif(){
	var unloadGif = $("#unloadGif");
	if(unloadGif.size()==0){
		$('<div id="unloadGif" style="z-index:10000;position:absolute;margin:0px;padding:0px;top:60px;left:130px;"><img src="/images/wait.gif"/></div>').appendTo("body"); 
	}else{
		unloadGif.appendTo("body");
	}
	//window.setTimeout("hideUnloadGif()",5000);//5秒钟后自然也要消失
}
//隐藏过渡效果的图标
function hideUnloadGif(){
	$("#unloadGif").fadeOut("normal");
}
//好友相关 start
//初始化添加好友的对话框
function initAddFriendDialog(id){
	// Dialog			
	$('#addFriend_'+id).dialog({
		autoOpen: false,
		width: 500,
		height: 200,
		buttons: {
			"取消": function() {
				$(this).dialog("close"); 
			}, 
			"确定": function() { 
				if(doBeFriendRequest(id)){
					$(this).dialog("close");
				}
			} 
		}
	});
	$('#addFriend1_'+id).dialog({
		autoOpen: false,
		width: 500,
		height: 200,
		buttons: {
			"确定": function() { 
				$(this).dialog("close"); 
			} 
		}
	}
	);
	// Dialog Link
	$('#addFriend_link_'+id).click(function(){
		//添加用户没有开通sns，需要进行提醒
		var a = isSNS(id);
		//alert("isSNS:"+isSNS);
		if(a == 'false'){
			if (confirm("该用户尚未开通狗宝贝社区，还不能加为好友，是否提醒开通？")){
				var showname = getCookie(COOKIE_REAL_NAME);
				var toUserId = id;
				var title = "社区开通提醒";
				var content = "用户"+showname+"希望加你为社区好友，需要你前往狗宝贝社区进行注册，点击进入！"
				var url = "http://"+snsDomain+"/st_pass/PreOpenSns";
				if(doPostClientMessage(toUserId,title,content,url,false,false,false)){
					alert("已向该好友发送提醒！");
				}else{
					
				};
			}
				return false;
		}
		//先判断点击的对象是否已是当前用户的好友，如果是就返回，如果不是继续进行下一步操作
		if (isFriend(id) == "true"){
			$('#addFriend1_'+id).dialog('open');
			return false;
		}else{
			$('#addFriend_'+id).dialog('open');
			return false;
		}
	});
}

//发送验证信息
var doFriendReqMutex = true; //保证客户端执行这个函数返回后才能继续执行
function doBeFriendRequest(id){
	if(doFriendReqMutex){	
		doFriendReqMutex = false;
		var returnStr = false;
		
		//表单验证
		var content =  $("#content_"+id);
		
		//根据需求，留言支持为空，以下内容注去
		//if(content.val().trim().length<1){
		//	alert("留言不能为空");	
		//	doFriendReqMutex = true;
		//	return false;
		//}
		
		if(content.val().trim().length>80){
			alert("留言过长，不要大于80个字");	
			doFriendReqMutex = true;
			return false;
		}
		
		var url =  "/st/DoBeFriendRequest" ;
		var pars = "id=" + id
					+"&content=" + encodeURI($("#content_"+id).val());
		$.ajax({
		    url: url,data: pars,type: 'post',dataType: 'json',timeout: global_AjaxTimeOut,async: false,
		    error: function(){
		       	alert('Error loading XML document');
		       	doFriendReqMutex = true;
		       	returnStr = true;
		    },
		    success: function(jsonObj){
				if(jsonObj.flag){
					alert("发送成功，请耐心等待好友回复！")
				}else{
				}
				doFriendReqMutex = true;
				returnStr = true;
				//hideUnloadGif();//过程较慢 隐藏图片
		    }
		});
		return returnStr;
	}
}
//判断id用户是否是当前用户的朋友,同步方式 TODO 是不是不用这样也能
function isFriend(id){
		var isFriend = false;
		var url =  "/st/DoCheckFriendRequest" ;
		var pars = "id=" + id;
		$.ajax({
		    url: url,data: pars,type: 'post',dataType: 'json',timeout: global_AjaxTimeOut,async: false,
		    error: function(){
		       	alert('Error loading XML document');
		       	doFriendReqMutex = true;
		    },
		    success: function(jsonObj){
				if(jsonObj.flag){
					isFriend = jsonObj.isFriend;//返回id所对应用户是否是当前用户的朋友
				}else{
				}
				//hideUnloadGif();//过程较慢 隐藏图片
		    }
		});
		return isFriend;
}
//判断id用户是否开通SNS
function isSNS(id){
		var isSNS = false;
		var url =  "/st/DoCheckFriendIsSNS" ;
		var pars = "id=" + id;
		$.ajax({
		    url: url,data: pars,type: 'post',dataType: 'json',timeout: global_AjaxTimeOut,async: false,
		    error: function(){
		       	alert('Error loading XML document');
		       	doFriendReqMutex = true;
		    },
		    success: function(jsonObj){
				if(jsonObj.flag){
					isSNS = jsonObj.isSNS;//返回id所对应用户是否是当前用户的朋友
				}else{
				}
				//hideUnloadGif();//过程较慢 隐藏图片
		    }
		});
		return isSNS;
}
//判断id用户是否是当前用户的朋友,同步方式 TODO 是不是不用这样也能
function sendMsg(id,title,content,aaa){
		var isFriend = false;
		var url =  "/st/DoCheckFriendRequest" ;
		var pars = "id=" + id;
		$.ajax({
		    url: url,data: pars,type: 'post',dataType: 'json',timeout: global_AjaxTimeOut,async: false,
		    error: function(){
		       	alert('Error loading XML document');
		       	doFriendReqMutex = true;
		    },
		    success: function(jsonObj){
				if(jsonObj.flag){
					isFriend = jsonObj.isFriend;//返回id所对应用户是否是当前用户的朋友
				}else{
				}
				//hideUnloadGif();//过程较慢 隐藏图片
		    }
		});
		return isFriend;
}
//好友相关 end

/////////
//弹出奖励宝贝币的提示消息 n 单位 宝贝币 元
function upbbb(n){
	if(n<=0){
		return;
	}
	var bodyTop = 0;  
	if (typeof window.pageYOffset != 'undefined') {  
		bodyTop = window.pageYOffset;  
	} else if (typeof document.compatMode != 'undefined' && document.compatMode != 'BackCompat') {  
		bodyTop = document.documentElement.scrollTop;  
	}  
	else if (typeof document.body != 'undefined') {  
		bodyTop = document.body.scrollTop;  
	} 
	e = $('<div class="upbbb">获得 <strong>' + n + '</strong> 宝贝币</div>');
	starttop = bodyTop + 200;
	e.css({opacity: 0,"top": starttop});
	$("body").append(e);
	e.animate({opacity: 1, marginTop: "-50px" }, 200 );
	setTimeout(function () {e.fadeOut('fast');}, 1000);
	setTimeout(function () {e.remove();}, 1500);
	
	//更新 id 为 myMoney 的内容
	try{
		$("#myMoney").html(parseInt($("#myMoney").html())+parseInt(n));
	}catch(e){}
	return 1500;//返回过程需要使用的时间(毫秒)
}
$(function(){//检查是否存在 cookie，存在就弹出消息
	try{
		if(isTransfer==false){} //测试是否定义了这个变量，没有的话证明不是转换页面，就弹出提示消息
	}catch(e){
		var award = getCookie(COOKIE_AWARD);
		try{
			award = parseInt(award)
			if(isNaN(award)==false){
				upbbb(award);
				delCookie(COOKIE_AWARD);
			}
		}catch(e2){}
	}
});
// 狗宝贝奖励提示 结束
//////////////////

//给特定用户发送提示消息(客户端消息) 详见 IceClient 中的参数介绍
//isAsync 是否是异步发送
function doPostClientMessage(toUserId,title,content,url,isEnbed,isFloat,isAsync){
	var isSuccess = false;
	if(isEnbed){
		isEnbedVar = "t"
	}else{
		isEnbedVar = "";
	}
	if(isFloat){
		isFloatVar = "t"
	}else{
		isFloatVar = "";
	}
	$.ajax({
	    url:"/st/DoPostClientMessage",
	    data:{toUserId:toUserId,title:title,content:content,url:url,isEnbed:isEnbedVar,isFloat:isFloatVar},
	    type:'post',dataType: 'json',timeout: global_AjaxTimeOut,async:isAsync,
	    error: function(){
	       	alert('系统异常，发送提示消息失败，请联系管理员');
	       	isSuccess = false;
	    },
	    success: function(jsonObj){
			if(jsonObj.flag){
				isSuccess = true;
			}else{
				isSuccess = false;
			}
	    }
	});
	if(isAsync){isSuccess = true;}//异步方式总返回true
	return isSuccess;
}

//给特定用户发送系统消息 并且能够决定是不是推送默认的消息到客户端
//isAsync 是否是异步发送
function doPostClientMessage(toUserId,username,content,isPostToClient,clientContent,isAsync){
	var isSuccess = false;
	if(isPostToClient){
		isPostToClientVar = "t"
	}else{
		isPostToClientVar = "";
	}
	$.ajax({
	    url:"/st/DoPostSystemInfo",
	    data:{toUserId:toUserId,username:username,content:content,isPostToClient:isPostToClientVar,clientContent:clientContent},
	    type:'post',dataType: 'json',timeout: global_AjaxTimeOut,async:isAsync,
	    error: function(){
	       	alert('系统异常，发送提示消息失败，请联系管理员');
	       	isSuccess = false;
	    },
	    success: function(jsonObj){
			if(jsonObj.flag){
				isSuccess = true;
			}else{
				isSuccess = false;
			}
	    }
	});
	if(isAsync){isSuccess = true;}//异步方式总返回true
	return isSuccess;
}

function hideDogInfo(){
	$('#dogInfo').hide();
}
//需要 myDogId myDogLevel 这2个参数的事先定义才能调用
function showDogInfo(positionObj,dogId,growthValue,dogLevel,adjustTop,adjustLeft){
	if($("#dogInfo").length==0){
		$("body").append('<div id="dogInfo" class="dogInfo"></div>');
	}
	//给这个对象注册鼠标移开的事件
	var msg = "";
	if(dogId==myDogId){
		msg = "自家狗狗亲啊！";
	}else{
		var levelSpan = dogLevel - myDogLevel; 
		if(levelSpan<=5&&levelSpan>0){
			msg = "再加加油超过它!!!";
		}else if(-levelSpan<=5&&-levelSpan>0){
			msg = "可别被它超过了!!!";
		}else if(levelSpan>5){
			msg = "差距不小，加油吧!";
		}else if(-levelSpan>5){
			msg = "差距不小，自豪吧!";
		}
	}
	var dogInfoHtml = '<p>经验值: <span>'+parseInt(growthValue)+'</span></p><p>等级: <span>'+dogLevel+'级</span></p><p class="red">'+msg+'</p>';
	$("#dogInfo").html(dogInfoHtml);
	//调整位置
	position = $(positionObj).position();
	if(adjustTop!=null){
		position.top += adjustTop; 
	}
	if(adjustLeft!=null){
		position.left += adjustLeft; 
	}
	$('#dogInfo').css('top', position.top-10);
	theLeft = $('#dogInfo').width() + position.left-60;
	$('#dogInfo').css('left', theLeft);
	$('#dogInfo').show();
}