﻿var CurrentUser = null;
var FOTO = undefined;
if(!FOTO){
	FOTO = {};
}
else if(typeof(FOTO != object))
{
	throw new Error('类型错误');
}

String.prototype.trim = function()
{
	// 用正则表达式将前后空格 空字符串替代。	
	return this.replace(/(^\s*)|(\s*$)/g, '');
}

/****************************
*		公共JS类库			*
*****************************/
FOTO.Utils = {};
FOTO.Utils.LoginBar='';
FOTO.Utils.ShowLoginBar = function(domID){
	FOTO.Utils.getUserData();
	if(null != domID && domID.length > 0)
	{
		if(0 == CurrentUser.UserID)
			FOTO.Utils.LoginBar = '<table id="DivLoginBar" class="width100"><tr><td height="28"><a href="/c/func/login.shtml"><img src="/themes/style1/img/pub/arraw2.gif" alt="">&nbsp;用户登录</a>&nbsp;&nbsp;<a href="/FAccount/Do/register.shtml"><img src="/themes/style1/img/pub/arraw2.gif" alt="" />&nbsp;用户注册</a>&nbsp;&nbsp;<a href="/common/h/operation/webmap.htm" target="_blank"><img src="/themes/style1/img/pub/arraw2.gif" alt="" />&nbsp;网站地图</a>&nbsp;&nbsp;<a href="javascript:void(0);" onclick="FOTO.Utils.addFavorite(window.location,document.title);"><img src="/themes/style1/img/pub/arraw2.gif" alt="" />&nbsp;加入收藏</a><input id="hidUserMessage" type="hidden" value="0"/></td></tr></table> <script type="text/javascript">function showLoginBox(){ $(\'#SignInBox\').show(\'slow\');} function doLogin(uname, upswd){ $.get(\'/FAjax/Account/SignIn.dhtml?uname=\'+encodeURI(uname)+\'&upswd=\'+upswd+\'&t=\'+ new Date().getTime(),function(result){if(\'error\' == result.substring(0,5).toLowerCase()){alert(result);}else{$(\'#DivLoginBar\').load(\'/FAjax/Account/getUserBar.dhtml?t=\' + new Date().getTime());}});} </script>';
		else
		{
			var rcount = CurrentUser.PhotoReviewCount + CurrentUser.CatalogReviewCount + CurrentUser.ArticleReviewCount;
			FOTO.Utils.LoginBar = '<table id="DivLoginBar" class="width100"><tr><td height="28"><span class="unline"><a href="/c/'+CurrentUser.UserName+'/index.shtml"><img src="'+CurrentUser.SPhotoUrl+'" style="width:20px;height:20px;border:2px solid #fff;" align="absmiddle" /> 欢迎:<span class="fb">'+CurrentUser.NickName+'</span></a></span>&nbsp;&nbsp;<a href="/u/'+CurrentUser.UserName+'">个人主页</a> | <a href="/g/'+CurrentUser.UserName+'">画廊</a> | <a href="/b/'+CurrentUser.UserName+'">博客</a> | <a href="/c/'+CurrentUser.UserName+'/index.shtml">管理</a> | <a href="/c/gallery/pho_adds1.shtml">传图</a> | <a href="/c/blog/art_add.shtml">写博</a> | <a href="/FAccount/Do/logout.shtml">退出</a><input id="hidUserMessage" type="hidden" value="'+ (CurrentUser.MsgCount+rcount) + '"/></td></tr></table>';
		}
		$('#' + domID).html(FOTO.Utils.LoginBar);
	}
};

$(function($){
	if(!CurrentUser)
		return;

	var sumCount = CurrentUser.PhotoReviewCount + CurrentUser.CatalogReviewCount + CurrentUser.ArticleReviewCount;
	
	if(0 != CurrentUser.UserID && (CurrentUser.MsgCount > 0 || sumCount > 0))
	{
		$('#new_msg_title').html('<a href="javascript:void(0)" onclick="jQuery(\'#msg_show\').slideToggle();"><img src="/Themes/style1/img/pub/messages.gif" alt="您有新的信息" title="您有新的信息" align="absmiddle" />您有新的信息</a>');
		$.get('/views/common/fweb/msgPrompt.htm',function(text){
		//alert(text)
			$('#msg_show').html(text);
		});
	}
	else
	{
		$('#msg_show').html('领先的艺术社区和图媒体');
	}
});

FOTO.Utils.getUserData = function()
{
    if(null == CurrentUser)
    {
        var _url = '/FAjax/Account/getUserInfo.dhtml?t='+new Date().getTime();
        $.ajax({
			url:_url,
			async:false,
			dataType:'json',
			success:function(data){
			    if(!data.error)
				    CurrentUser = data;
			}
		});
    }
     //做个ajax
     return CurrentUser;
};

//分页条的显示
//开始页
FOTO.Utils.sPage = 0;
//结束页
FOTO.Utils.ePage = 0;
FOTO.Utils.MaxPage = 0;

FOTO.Utils.ShowPageBar = function(objMaxPage)
{
	if(undefined == objMaxPage || null == objMaxPage){
		if(undefined == this.MaxPage || null == this.MaxPage)
			this.MaxPage = 0;
	}
	else if('number' == typeof(objMaxPage))
	{
		this.MaxPage = objMaxPage;
	}
	else if('string' == typeof(objMaxPage))
	{
		var max_page = 0;
		$.get(
			objMaxPage,
			function(result){
				eval("max_page =" + result);
			}
		);
		this.MaxPage = max_page;
	}
	
	//当前url
	var currentArea = window.location.href.replace('?page=', '&page=').split('&page=')[0];
	currentArea += currentArea.indexOf('?')> 0 ? '&' : '?';
	var strSPage = this.getParams('lpage');
	if('' == strSPage)strSPage = '0';
	this.sPage = parseInt(strSPage);
		
	var page = this.getParams('page');
	if('' == page) page= '0';

	//alert(page +','+ this.sPage)
	if (this.sPage == 0)
	{
		this.ePage = this.sPage + 9;
		if (this.ePage > this.MaxPage - 1)
			this.ePage = this.MaxPage - 1;
	}
	else
	{ this.ePage = this.sPage + 9; }
	this.TurnPage(page, this.MaxPage);

	document.write('<div class="pagebar">');
	if(this.MaxPage <= 0){ document.write('<span class="cpage">1</span>');}
	else
	{
		//document.write('<p>共&nbsp;<span>'+this.MaxPage+'</span>页&nbsp;&nbsp;</p>');
		
		if(page <= 0)
			document.write('<span>首页</span><span>上一页</span>');
		else
			document.write('<span><a href="' + currentArea + 'page=0&lpage=0">[首页]</a></span><span><a href="'+ currentArea + 'page=' + (parseInt(page)-1) +'&lpage=' + this.sPage + '">[上一页]</a></span>');

		for(var i=this.sPage;i<=this.ePage && i<this.MaxPage;i++)
		{
			if(i == page)
				document.write('<span class="cpage">'+(i+1)+'</span>');
			else
				document.write('<span><a href="' + currentArea + 'page=' + i +'&lpage=' + this.sPage +'">['+(i+1)+']</a></span>');
		}
		if(page>=this.MaxPage - 1)
			document.write('<span>下一页</span><span>末页</span>');
		else
			document.write('<span><a href="'+ currentArea + 'page=' + (parseInt(page)+1) +'&lpage=' + this.sPage + '">[下一页]</span><span><a href="' + currentArea + 'page='+(this.MaxPage-1)+'&lpage='+(this.MaxPage-10<0?0:this.MaxPage-10)+'">[末页]</a></span>');
	}
	document.write('</div>');
}

//翻页
FOTO.Utils.TurnPage = function(currentPageIndex, maxPage)
{
	if (maxPage > 8)
	{
		if (currentPageIndex - this.sPage < 1)
		{
			this.sPage = this.sPage - 8;
			this.ePage = this.ePage - 8;
		}
		else
		{
			if (this.ePage - currentPageIndex < 1)
			{
				this.sPage = this.sPage + 8;
				this.ePage = this.ePage + 8;
			}
		}
	}
	if (this.sPage < 0)
	{
		this.ePage = this.ePage - this.sPage;
		this.sPage = 0;
	}
	if (this.ePage > maxPage - 1)
	{
		this.sPage = this.sPage - (this.ePage - maxPage + 1);
		this.ePage = maxPage - 1;
	}
}

FOTO.Utils.addFavorite=function(sURL, sTitle)
{
	try{
		window.external.addFavorite(sURL, sTitle);
	}
	catch (e){
		try{
			window.sidebar.addPanel(sTitle, sURL, "");
		}
		catch (e){
			alert("加入收藏失败，请使用Ctrl+D进行添加");
		}
	}
}
FOTO.Utils.setHome=function(obj,url){
	try{
		obj.style.behavior='url(#default#homepage)';obj.setHomePage(url);
	}
	catch(e){
		if(window.netscape) {
			try {
				netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
			}
			catch (e) {
				alert("此操作被浏览器拒绝！\n请在浏览器地址栏输入“about:config”并回车\n然后将 [signed.applets.codebase_principal_support]的值设置为'true',双击即可。");
			}
			var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
			prefs.setCharPref('browser.startup.homepage',url);
		}
	}
}

FOTO.Utils.changeImgSize = function(dom, size){
var o = $(dom);
	if(o.width()>o.height()){
	if(o.width() > size)
		o.width(size + 'px');
	}
	else{
	if(o.height() > size)
		o.height(size + 'px');
	}
}

/*r_rect:(x, y)图片实际长宽,s_rect:(x, y)图片显示的长宽,返回 {x,y}*/
FOTO.Utils.getShowSize = function(r_rect, s_rect){
if(null==r_rect || null==r_rect)
	return null;

var x = s_rect.x;
var y = s_rect.y;
if(r_rect.x/r_rect.y > x/y){
	y = r_rect.y * x/r_rect.x;
}
else{
x = r_rect.x * y/r_rect.y;
}

return {"x":x,"y":y};
}
var F0T0client="pub-2988283096483090";
//返回url参数
FOTO.Utils.getParams = function(parms, url){
	if(!url) url = location.href;
	var parmString = url.substring(url.indexOf('?')+1,url.length).split('&');	
	var parmObj = {}	
	for(var i=0;j=parmString[i]; i++){	
		parmObj[j.substring(0,j.indexOf('=')).toLowerCase()] = j.substring(j.indexOf('=')+1,j.length);	
	}	
	var returnValue = parmObj[parms.toLowerCase()];	
	if(typeof(returnValue)=='undefined'){	
		return '';
	}
	else return returnValue;
}

FOTO.Utils.openNewWindow = function(type,context, columnid)
{
if(!columnid) columnid = 0;
	context = context.replace(/(^\s*)|(\s*$)/g, '');
	if(context== ''|| context == '输入关键词!'){
		alert('输入关键词!');
		return;
	}
	switch(type)
	{
	case 'photo':
		window.open('/FWeb/search/index.dhtml?c=0&cid='+ columnid +'&q=%20' + encodeURI(context));
		break;
	case 'catalog':
		window.open('/FWeb/search/index.dhtml?c=1&cid='+ columnid +'&q=%20' + encodeURI(context));
		break;
	case 'article':
		window.open('/FWeb/search/index.dhtml?c=2&cid='+ columnid +'&q=%20' + encodeURI(context));
		break;
	default:
		alert('系统错误!请与图说天下联系!');
		break;
	}
}

FOTO.Utils.toBreakWord = function( obj, intLen ){
	var strContent=obj.innerHTML;
	var strTemp='';
	while(strContent.length>intLen){
		strTemp+=strContent.substr(0,intLen)+'';
		strContent=strContent.substr(intLen,strContent.length);
	}
	strTemp+= ''+strContent;
	obj.innerHTML=strTemp;
}

FOTO.Utils.openPopup = function(strFile, strWinName, intWidth, intHeight) {
	var intSreenWidth = 770;
	var intSreenHeight = 580;
	var intLeft = 0;
	var intTop = 0;
	if (self.screen) {
		intSreenWidth = screen.width - 12;
		intSreenHeight = screen.height - 70;
	} //endif
	if (intWidth != 0 && intHeight != 0) {
		intLeft = (intSreenWidth-intWidth)/2;
		intTop = (intSreenHeight-intHeight)/2;
	} else {
		intWidth = intSreenWidth;
		intHeight = intSreenHeight;
	} //endif
	objPopup = window.open(strFile, strWinName, 'top='+intTop+', left='+intLeft+', width='+intWidth+', height='+intHeight+', toolbar=no, directories=no, location=no, status=no, menubar=no, scrollbars=yes, resizable=yes');
	objPopup.focus();
} //endfunc

FOTO.Utils.addEvent = function(elm, evType, fn, useCapture) {
	if (elm.addEventListener) {
		elm.addEventListener(evType, fn, useCapture);
		return true;
	} else if (elm.attachEvent) {
		var r = elm.attachEvent('on' + evType, fn);
		return r;
	} else {
		elm['on' + evType] = fn;
	} //endif
} //endfunc


FOTO.Utils.addLoadEvent = function(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			oldonload();
			func();
		} //endfunc
	} //endif
} //endfunc

FOTO.Utils.setWinWidth = function() {
	var width = 1000;
	width = screen.availWidth;
	if (width < 1000) {
		window.moveTo(0, 0);
		window.resizeTo(1000, 700);
	} //endif
} //endfunc

FOTO.Utils.TickClock = function(domId) {
var hours, minutes, seconds, xfile;
var intHours, intMinutes, intSeconds;
var today = new Date();
var year = today.getFullYear();
var month=today.getMonth()+1;
strDay=today.getDate();
intHours = today.getHours();
intMinutes = today.getMinutes();
intSeconds = today.getSeconds();
day=today.getDay();
switch(day)
{
	case 1:daystr='星期一';break;
	case 2:daystr='星期二';break;
	case 3:daystr='星期三';break;
	case 4:daystr='星期四';break;
	case 5:daystr='星期五';break;
	case 6:daystr='星期六';break;
	case 0:daystr='星期日';break;
}
if(intHours == 0){
	hours = '12:';
	xfile = '午夜';
}else if(intHours < 12) {
	hours = intHours+':';
	xfile = '上午';
}else if(intHours == 12) {
	hours = '12:';
	xfile = '正午';
}else{
	intHours = intHours - 12
	hours = intHours + ':';
	xfile = '下午';
}
if (intMinutes < 10) { minutes = '0'+intMinutes+':'; }
else { minutes = intMinutes+':'; }
if (intSeconds < 10) { seconds = '0'+intSeconds+' '; }
else { seconds = intSeconds+' '; }
timeString =year +'年'+ month + '月' + strDay + '日&nbsp;' + daystr + '&nbsp;' + xfile + hours + minutes + seconds;
$('#'+domId).html(timeString);
window.setTimeout('FOTO.Utils.TickClock("'+domId+'");', 1000);
}

//返回元素位置top,left,right,bottom
//传入元素object
//返回封装信息，如取top，则getPosition(o).top
FOTO.Utils.GetPosition = function(o)
{
	var temp={};
	temp.left=temp.right=temp.top=temp.bottom=0;
	var oWidth=o.offsetWith,oHeight=o.offsetheight;
	while(o!=document.body)
	{
		temp.left+=o.offsetLeft;
		temp.top+=o.offsetTop;
		var border=parseInt(o.offsetParent.currentStyle.borderWidth);
		if(border)
		{
			temp.left+=border;
			temp.top+=border;
		}
		o=o.offsetParent;
	}
	temp.right=temp.left+oWidth;
	temp.bottom=temp.top+temp.oHeight;
	return temp;
}
FOTO.Utils.dateToString = function(DateIn)
{
	//初始化时间
	var Year=DateIn.getFullYear();
	var Month=DateIn.getMonth()+1;
	var Day=DateIn.getDate();
	var Hour=DateIn.getHours();
	var Minute=DateIn.getMinutes();
	var CurrentDate=Year + "-";

	if(Month>= 10)CurrentDate = CurrentDate + Month + "-";else CurrentDate = CurrentDate + "0" + Month + "-";
	if(Day>= 10)CurrentDate = CurrentDate + Day;else CurrentDate = CurrentDate + "0" + Day;	
	if(Hour>=10)CurrentDate = CurrentDate + " " + Hour;else CurrentDate = CurrentDate + " 0" + Hour;
	if(Minute>=10)CurrentDate = CurrentDate + ":" + Minute;else CurrentDate = CurrentDate + ":0" + Minute ;
	return CurrentDate;
}
//标签竖版
function setTab_menuleft(name,cursel,n){
	for(i=1;i<=n;i++)
		$('#con_'+name+'_'+i).css('display',(i==cursel?'block':'none'));
}
//标签横版
function setTab(name,cursel,n,hstyle){
	for(i=1;i<=n;i++){
	if(!hstyle)
$('#'+name+i).removeClass('hover').addClass(i==cursel?'hover':'');
else
$('#'+name+i).removeClass(hstyle).addClass(i==cursel?hstyle:'');

	$('#con_'+name+'_'+i).css('display',(i==cursel?'block':'none'));
	}
}
var FOTOclient="pub-5014737170940137";
String.prototype.UBB=function(){
var str=this;
str=str.replace(/\[br\]/ig,'<br />');/*回车*/ 
str=str.replace(/\[u\](.+?)\[\/u\]/ig,'<u>$1</u>');/*下划线*/ 
str=str.replace(/\[i\](.+?)\[\/i\]/ig,'<i>$1</i>');/*斜体*/ 
str=str.replace(/\[b\](.+?)\[\/b\]/ig,'<b>$1</b>');/*粗体*/ 
str=str.replace(/\[QUOTE\](.+?)\[\/QUOTE\]/ig,'<blockquote><font size="2" face="Verdana, Arial">引用:</font><hr>$1</hr></blockquote>');/*引用*/ 
str=str.replace(/\[red\](.+?)\[\/red\]/ig,'<span style="color:#ff0000;">$1</span>');/*红色字*/ 
str=str.replace(/\[gray\](.+?)\[\/gray\]/ig,'<span style="color:#77ACAC;">$1</span>');/*灰色字*/ 
str=str.replace(/\[green\](.+?)\[\/green\]/ig,'<span style="color:#77ACAC;">$1</span>');/*绿色字*/ 
str=str.replace(/\[blue\](.+?)\[\/blue\]/ig,'<span style="color:#0055ff">$1</span>');/*蓝色字*/ 
str=str.replace(/\[color\=(.+?)\](.+?)\[\/color\]/ig,'<span style="color:$1>$2</span>');/*任何颜色*/ 
str=str.replace(/\[EMAIL\](\S+\@\S+?)\[\/EMAIL\]/ig,'<a href="mailto:$1">$1</a>');/*邮件*/ 
str=str.replace(/\[URL\](http:\/\/\S+?)\[\/URL\]/ig,'<a href="$1" target="_blank">$1</a>');/*链接http://*/ 
str=str.replace(/\[URL\](\S+?)\[\/URL\]/ig,'<a href="http://$1" target="_blank">$1</a>');/*链接*/
str=str.replace(/\[URL\S*=\S*\"(http:\/\/[^\"]+)\"\S*\](\S+?)\[\/URL\]/ig,'<a href="$1" target="_blank" title="$1">$2</a>');
str=str.replace(/\[URL\S*=\S*\"([^\"]+)\"\S*\](\S+?)\[\/URL\]/ig,'<a href="http://$1" target="_blank" title="$1">$2</a>');
str=str.replace(/\[marquee\](.+?)\[\/marquee\]/ig,'<marquee scrollamount="3" onmouseover="javascript:this.stop()" onmouseout="javascript:this.start()">$1</marquee>');/*滚动*/ 
str=str.replace(/\[IMGurl\=(http:\/\/\S+?)\](http:\/\/\S+?)\[\/IMGurl\]/ig,'<a href="$1" target="_blank"><img src="$2" border="0" onload="FOTO.Utils.changeImgSize(this, 300);" /></a>');/*带图片链接http://*/ 
str=str.replace(/\[IMGurl\=(\S+?)\](\S+?)\[\/IMGurl\]/ig,'<a href="http://$1" target="_blank"><img src="http://$2" border="0" onload="FOTO.Utils.changeImgSize(this, 300);" /></a>');/*带图片链接*/ 
str=str.replace(/\[IMG\](\S+?)\[\/IMG\]/ig,'<img src="$1" alt="" onload="FOTO.Utils.changeImgSize(this, 300);" />');/*图片*/
str=str.replace(/\[FAC\](\S+?)\[\/FAC\]/ig,'<img src="/common/images/libs/editor/face/$1.gif" alt="" />');
return str; 
}

// 复制到 剪贴板 支持FX Ie
function copy_clip(meintext)
{
	if (window.clipboardData)
		window.clipboardData.setData('Text', meintext);
	else if (window.netscape)
	{
		try {
			netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
		} catch (e) {
			alert("被浏览器拒绝！\n请在浏览器地址栏输入'about:config'并回车\n然后将'signed.applets.codebase_principal_support'设置为'true'");
			return false;
		}
		
		var clip = Components.classes['@mozilla.org/widget/clipboard;1']
					.createInstance(Components.interfaces.nsIClipboard);
		if (!clip) return;
		
		var trans = Components.classes['@mozilla.org/widget/transferable;1']
					.createInstance(Components.interfaces.nsITransferable);
		if (!trans) return;
		
		trans.addDataFlavor('text/unicode');
		
		var str = new Object();
		var len = new Object();
		
		var str = Components.classes["@mozilla.org/supports-string;1"]
					.createInstance(Components.interfaces.nsISupportsString);
					
		var copytext=meintext;
		str.data=copytext;
		trans.setTransferData("text/unicode",str,copytext.length*2);
		
		var clipid=Components.interfaces.nsIClipboard;
		
		if (!clip) return false;
		
		clip.setData(trans,null,clipid.kGlobalClipboard);
	}
	return true;
}
