﻿// ======================= 编辑器  =======================
var adw =  {

	ed  : null ,

	set : function(s , v) {
		this.ed.focus() ;
		this.ed.document.execCommand(s,false,v||null);
	} ,

	display : function(ele , type , event) {
		this.hide(ele) ;
		switch(type) {
			case 'color' :
				break ;
			case 'size' :
				$('dlg_fontsize').style.display  = 'block' ;
				break ;
			case 'family' :
				$('dlg_fontname').style.display = 'block' ;
				break ;
			case 'img' :
				$('dlg_insertimage').style.display = 'block' ;
				break ;
			case 'link' :
				$('dlg_createlink').style.display = 'block' ;
				break ;
		}
	} ,

	hide : function(ele) {
		if(!$('td_editor'))
			return false ;
		$('dlg_fontname').style.display = 'none' ;
		$('dlg_fontsize').style.display = 'none' ;
		$('dlg_insertimage').style.display = 'none' ;
		$('dlg_createlink').style.display = 'none' ;
		if($('colorFrame'))
			$('colorFrame').style.display = 'none' ;
		if(ele)
			ele.style.display = '' ;
	} ,

	onload : function(content) {
		new colorFrame($('dlg_setColor') , {'onClick':this.setColor.bind(this) }) ;

		content = content || '' ;
		this.ed = document.getElementById("ifm_editarea").contentWindow;

		try{
			this.ed.document.designMode = 'On';
			this.ed.document.contentEditable = true;
		}
		catch(e) {
			alert('目前只支持IE5.5,Firefox1.0+')
		}

		this.ed.document.open();
		this.ed.document.writeln('<html><head><style type="text/css">body { margin: 0; padding: 2px;} ; p {margin:0}</style></head><body>' + content + '</body></html>');
		this.ed.document.close();
		var thisObj = this ;
		a_addEvent(document , "onclick" , function() {thisObj.hide()}) ;
		a_addEvent(this.ed.document , "onclick" , function() {thisObj.hide()}) ;
	} ,

	setColor : function(color) {
	//	var ele = evt.target ; alert(ele.tagName)
	//	var v = '#' + ele.innerHTML
		this.set('forecolor'  , color) ;
	} ,

	setFamily : function(ele) {
		var pe = ele.parentNode.parentNode.parentNode ;
		var v = ele.style.fontFamily ;
		this.set('fontname' , v) ;
		this.hide() ;
	} ,

	setSize : function(ele) {
		var obj = { 'small': 3, 'medium': 4, 'large': 5, 'x-large': 6, 'xx-large': 7 };
		var pe = ele.parentNode.parentNode.parentNode ;
		var v = ele.style.fontSize ;
		this.set('fontsize' , obj[v]) ;
		this.hide() ;
	} ,

	setURL : function(ele, type) {
		var ipt = ele.parentNode.getElementsByTagName('input')[0] ;
		var value = ipt.value ;
		var s = '' ;
		if(type == 'link')
			s = 'createlink' ;
		else if(type == 'img')
			s = 'insertimage'
		if (/^(ftp|http|https):\/\//i.test(value) && value.length > 10) {
			this.set(s , value) ;
			this.hide() ;
		}
		else
			alert('URL不正确，请确认') ;
	},

	source : function(ele) {
		var idName = 'toolbar' ;
		var c = ele.checked ;

		liArr = $(idName).getElementsByTagName('li') ;
		for(var i=0 ; i < liArr.length ; i++) {
			if(liArr[i].parentNode.id == idName && liArr[i].id != 'source')
				liArr[i].style.display = c ? 'none' : '' ;
		}

		$('ifm_editarea').style.display = c ? 'none' : '' ;
		$('txt_editarea').style.display = c ? '' : 'none' ;

		if(c)
			$('txt_editarea').value = this.ed.document.body.innerHTML ;
		else
			this.ed.document.body.innerHTML = $('txt_editarea').value ;
	}
}

// =======================  pscmt  ========================
var pscmt = {
	screate : function(paid , ele) {
		var dl = ele.parentNode.parentNode ;
		var pspidname = "sess_post" + paid ;
		if(!$('myrpdd' + paid )){
			new Element('dd' , {'class':'rp' , 'id' : 'myrpdd' + paid}).setHTML('<form action="/index.php/profile/book/" method="post"><input name="parentid" value="' + paid + '" type="hidden" /><input type="hidden" name="f" value="' + pageMessage.puid + '" /><input type="hidden" name="post" value="1" /><ul><li>验 证 码：<input class="focus" name="sessimg" type="text" style="width:100px;" maxlength="4" /><img title="看不清，请点击重新刷新" src="/index.php/Base/verify/" style="margin-left:12px;vertical-align: middle; cursor: pointer;position:relative; top:-3px;" /><span>验证码为四位英文字母，看不清点击图片</span> <em>(必填)</em></li><li>评论内容：<textarea name="content" style="width:550px; height:50px;"></textarea></li><li><button class="loogerbtn"  type="submit" onclick="return pscmt.submit(\'' + pspidname +'\');">提交</button><button class="loogerbtn" onclick="pscmt.sesc(this)" type="button">取消</button></li></ul></form>').injectInside(dl) ;
		}
	} ,


	sesc : function(ele) {
		ele.parentNode.parentNode.parentNode.parentNode.remove() ;
	} ,

	submit : function(pspid) {
        $(pspid).value = pageMessage.sess;
        return true;
	}
}

// =======================  psblogcmt  ========================
var psblogcmt = {
	screate : function(paid , bid , ele) {
		var dl = ele.parentNode.parentNode ;
		var pspidname = "sess_post" + paid ;
		if(!$('myrpdd' + paid )){
			new Element('dd' , {'class':'rp' , 'id' : 'myrpdd' + paid}).setHTML('<form action="/index.php/profile/blogComment/" method="post"><input type="hidden" name="bid" value="' + bid + '" /><input name="pid" value="' + paid + '" type="hidden" /><ul><li>评论内容：<textarea name="content" style="width:550px; height:50px;"></textarea></li><li>验 证 码：<input class="focus" name="sessimg" type="text" style="width:100px;" maxlength="4" /><img title="看不清，请点击重新刷新" src="/index.php/Base/verify/" style="margin-left:12px;vertical-align: middle; cursor: pointer;position:relative; top:-3px;" /><button class="loogerbtn" type="submit" onclick="return psblogcmt.submit(\'' + pspidname +'\');">提交</button><button class="loogerbtn" onclick="psblogcmt.sesc(this)" type="button">取消</button></li></ul></form>').injectInside(dl) ;
		}
	} ,

	sesc : function(ele) {
		ele.parentNode.parentNode.parentNode.parentNode.remove() ;
	} ,

	submit : function(pspid) {
        $(pspid).value = pageMessage.sess;
        return true;
	}
}

// =======================  help  =======================

var profileHelp = {

	picDir : {baseUrl:'/Public/images/my/upic/' , c:32} ,

	styleDir : {imgUrl:'/Public/images/my/style/' , cssUrl:'/Public/style/mycss/' , content:[{n:'最新' , c:13}]} ,

	mypic : {

		create : function() {
			var title = '你可以在这里选择我的头像，或者自己上传一张 :)' ;
			var htmlstr = '<div class="p">' ;
			profileHelp.picDir.c.times(function(k){htmlstr += '<a onclick="profileHelp.mypic.send(this.getElementsByTagName(\'img\')[0].src)" href="#"><img  src="' + (profileHelp.picDir.baseUrl + (k+1) + '.jpg') + '" /></a>'}) ;
			htmlstr += '</div>' ;
			htmlstr += '<div>' +
						'<form enctype="multipart/form-data" action="http://p1.126dv.com/index.php/User/changeicon/act/upload/u/' + pageMessage.puid + '" onsubmit="" method="post">'
						+'<p><input type="file" style="width:350px;" name="userpic" id="upload-image" /> &nbsp; &nbsp; <button class="loogbtn" style="font-weight:bold;" type="submit">上传我的头像</button></p>' +
						'</form>' +
						'</div>' ;
			var eleContent = new Element('div').setHTML(htmlstr) ;
			new appover(title , eleContent , {'width':600 , 'contentClassName':'setHostPic' , 'alpha':false}).display()  ;
		} ,

		send  : function(url) {
			window.location.href = '/Include/changeicon.php?icon=' + encodeURIComponent(url) ;
			alert('修改成功，1小时后生效！') ;
		}

	} ,

	style : {

		appover : null ,

		create : function() {
			var title = '选择我的主页模板风格' ;
			var ul1 = new Element('ul' , {'class':'tab stepBao'}) ;
			for(var i=0; i < profileHelp.styleDir.content.length ; i++) {
				var li2 = document.createElement('li') ;
				li2.innerHTML = '<a href="#" hidefocus="true" onclick="profileHelp.style.tab(' + i + ') ; return false" style="color:#000000">' + profileHelp.styleDir.content[i].n + '</a>' ;
				ul1.appendChild(li2) ;
			}
			var div3 = new Element('div' , {'class':'content stepBao'})	;
			var div4 = new Element('div' , {'class':'footer stepBao'}).setHTML('<button type="button" onclick="profileHelp.style.submit()" class="loogerbtn">确定</button><button onclick="profileHelp.style.cancel()" type="button" class="loogerbtn">取消</button>') ;
			var eleContent = new Element('div').adopt(ul1).adopt(div3).adopt(div4) ;
			profileHelp.style.appover = new appover(title , eleContent , { 'opacity':0.3 , 'width':750 , 'contentClassName':'setHostStyle' , 'alpha':false}).display()  ;
			profileHelp.style.tab(0) ;
		} ,

		tab : function(num) {
			var content = profileHelp.style.appover.ele.getElementsByClassName('content')[0] ;
			var tab = profileHelp.style.appover.ele.getElementsByClassName('tab')[0] ;
			var imgUrl = profileHelp.styleDir.imgUrl ;
			var cssUrl = profileHelp.styleDir.cssUrl ;
			// tab
			$A(tab.getElementsByTagName('li')).each(function(e , k){ if(k == num) e.className = 'on' ; else e.className = '' ; }) ;
			//  content
			var htmlstr = '' ;
			profileHelp.styleDir.content[0].c.times(function(k){
				htmlstr += '<a onclick="profileHelp.style.click(this.href) ; return false;"  href="' + (cssUrl + (num+1) + '/' + (k+1) + '.css')  + '"><img src="' + (imgUrl + (num+1) + '/v' + (k+1) + '.jpg') + '" />' + '</a>'  ;
			}) ;
			content.innerHTML = htmlstr ;
		} ,

		click : function(url) {
			$('mycss').href = url ;
			var color = playerParam.getColor(url) ;
			if($('flash_video'))
				setTimeout( '$("flash_video").setPlayerStyle("' + color + '")' , 100 ) ;
		} ,

		submit : function() {
			var url = '/Include/changehomecss.php?op=css&u=' + pageMessage.uid + '&css=' + encodeURIComponent($('mycss').href) ;
			var callback = '' ;
			var data = "" ;
			Request.reSend(url,data) ;
			profileHelp.style.appover.esc() ;
			alert('修改成功，1小时后生效！') ;
		} ,

		cancel : function(type) {
			$('mycss').href = pageMessage.phost_css ;
			if($('flash_video'))
				$('flash_video').setPlayerStyle(playerParam.getColor(pageMessage.phost_css)) ;
			profileHelp.style.appover.esc() ;
		}
	} ,

	lookVideos : {
		create : function() {
			var title = '推荐我喜欢的节目' ;
			var htmlstr = '<form method="post" action="http://www.126dv.com/index.php/profile/' + pageMessage.uid + '.html"><ul><li>你可以在节目页面找到“转贴视频的五种方式”，任意粘贴五种代码中的一种</li>' ;
			(5).times(function(k){htmlstr += '<li><input type="hidden" name="op" value="commendVideo" /><input name="commend[]" class="focus" value="' + ($defined(proVideoArr) && proVideoArr[k] ? 'http://www.126dv.com/programs/view-' + proVideoArr[k].vid + '.htm' : '') + '" style="width:500px" type="text"></li>'}) ;
			htmlstr += '</ul><p><button type="submit" class="loogerbtn">推荐好了，我要提交</button></p></form}>' ;
			var eleContent = new Element('div').setHTML(htmlstr) ;
			new appover(title , eleContent , {'width':550 , 'alpha':false , 'contentClassName':'lookVideos'}).display()  ;
		}
	/*
		add : function(ele) {
			var ret = window.prompt('请输入粘贴代码' , '') ;
			if(ret)
				ele.parentNode.getElementsByTagName('input')[0].value = ret ;
		}
	*/
	} ,

	myBlog : {

		write : function(blog , id) {
			var title = (blog ? '编辑' : '写写') + '我的一句话心情' ;
			var htmlstr = '<div id="td_code">粘贴视频：<input id="video_editareaExt" class="focus" value="' + (id && $('blog' + id).getElements('.blogVideo')[0] ? 'http://www.126dv.com/programs/view-' + $('blog' + id).getElements('.blogVideo input')[0].value + '.htm' : '') + '" style="width:250px" type="text"> (请任意粘贴六间房节目五种外嵌代码的一种 )</div>' +
						  '<div id="td_editor" style="margin:0 auto;">' +
						  '<ul id="toolbar" onclick="stopEvent(event , \'b\')" >' +
						  '<li><a onclick="adw.set(\'undo\')" href="javascript://" title="撤消"><img border="0" width="20" height="20" alt="撤消" src="/Public/images/adw/undo.gif" /></a></li>' +
						  '<li><a onclick="adw.set(\'redo\')" href="javascript://" title="重做"><img border="0" width="20" height="20" alt="重做" src="/Public/images/adw/redo.gif" /></a></li>' +
						  '<li class="sep"><img border="0" width="4" height="20" src="/Public/images/adw/sep.gif" /></li>' +
						  '<li style="position: relative;">' +
						  '<a  href="javascript://" onclick="adw.display(this, \'family\')" title="字体"><img border="0" alt="字体" width="25" height="20" src="/Public/images/adw/fontname.gif" /></a>' +
						  '<div id="dlg_fontname"  class="floatdlg" style="display: none;">' +
						  '<ul>' +
						  '<li><a style="font-family: \'宋体\';" onclick="adw.setFamily(this)" href="javascript://" >宋体</a></li>' +
						  '<li><a style="font-family: \'黑体\';" onclick="adw.setFamily(this)" href="javascript://" >黑体</a></li>' +
						  '<li><a style="font-family: \'楷书\';" onclick="adw.setFamily(this)" href="javascript://" >楷书</a></li>' +
						  '<li><a style="font-family: \'幼圆\';" onclick="adw.setFamily(this)" href="javascript://" >幼圆</a></li>' +
						  '<li><a style="font-family: \'隶书\';" onclick="adw.setFamily(this)" href="javascript://" >隶书</a></li>' +
						  '<li><a style="font-family: Arial;" onclick="adw.setFamily(this)" href="javascript://" >Arial</a></li>' +
						  '<li><a style="font-family: Courier;" onclick="adw.setFamily(this)" href="javascript://" >Courier</a></li>' +
						  '<li><a style="font-family: \'Times New Roman\';" onclick="adw.setFamily(this)" href="javascript://">Times New Roman</a></li>' +
						  '<li><a style="font-family: Verdana;" onclick="adw.setFamily(this)" href="javascript://">Verdana</a></li>' +
						  '</ul>' +
						  '</div>' +
						  '</li>' +
						  '<li style="position: relative;">' +
						  '<a  href="javascript://"  onclick="adw.display(this,\'size\')"  title="大小"><img border="0" width="25" height="20" alt="大小" src="/Public/images/adw/fontsize.gif" /></a>' +
						  '<div id="dlg_fontsize"  class="floatdlg" style="display: none;">' +
						  '<ul>' +
						  '<li><a style="font-size: small;" onclick="adw.setSize(this)" href="javascript://" >小</a></li>' +
						  '<li><a style="font-size: medium;" onclick="adw.setSize(this)" href="javascript://" >中</a></li>' +
						  '<li><a style="font-size: large;" onclick="adw.setSize(this)" href="javascript://" >大</a></li>' +
						  '<li><a style="font-size: x-large;" onclick="adw.setSize(this)" href="javascript://" >特大</a></li>' +
						  '<li><a style="font-size: xx-large;" onclick="adw.setSize(this)" href="javascript://">极大</a></li>' +
						  '</ul>' +
						  '</div>' +
						  '</li>' +
						  '<li><a  href="javascript://" id="dlg_setColor" onclick="adw.display(this,\'color\' , event)" title="颜色"><img border="0" width="23" height="20" alt="颜色" src="/Public/images/adw/forecolor.gif" /></a></li>' +
						  '<li class="sep"><img border="0" width="4" height="20" src="/Public/images/adw/sep.gif" /></li>' +
						  '<li><a onclick="adw.set(\'bold\')" href="javascript://" title="加粗"><img border="0" width="20" height="20" alt="加粗" src="/Public/images/adw/bold.gif" /></a></li>' +
						  '<li><a onclick="adw.set(\'italic\')" href="javascript://" title="斜体"><img border="0" width="20" height="20" alt="斜体" src="/Public/images/adw/italic.gif" /></a></li>' +
						  '<li><a onclick="adw.set(\'underline\')" href="javascript://" title="下划线"><img border="0" width="20" height="20" alt="下划线" src="/Public/images/adw/underline.gif" /></a></li>' +
						  '<li class="sep"><img border="0" width="4" height="20" src="/Public/images/adw/sep.gif" /></li>' +
						  '<li><a onclick="adw.set(\'justifyleft\')" href="javascript://" title="左对齐"><img border="0" width="20" height="20" alt="左对齐" src="/Public/images/adw/justifyleft.gif" /></a></li>' +
						  '<li><a onclick="adw.set(\'justifycenter\')" href="javascript://" title="居中"><img border="0" width="20" height="20" alt="居中" src="/Public/images/adw/justifycenter.gif" /></a></li>' +
						  '<li><a onclick="adw.set(\'justifyright\')" href="javascript://" title="右对齐"><img border="0" width="20" height="20" alt="右对齐" src="/Public/images/adw/justifyright.gif" /></a></li>' +
						  '<li class="sep"><img border="0" width="4" height="20" src="/Public/images/adw/sep.gif" /></li>' +
						  '<li style="position: relative;">' +
						  '<a  href="javascript://" onclick="adw.display(this,\'link\')" title="链接"><img border="0" width="21" height="20" alt="链接" src="/Public/images/adw/createlink.gif" /></a>' +
						  '<div id="dlg_createlink" class="floatdlg" style="display: none;">' +
						  '<form style="margin: 0; padding: 0;">' +
						  '<label>输入链接地址</label>' +
						  '<input type="text" id="txt_url" value="http://" />' +
						  '<input id="smt_createlink" onclick="adw.setURL(this,\'link\')" type="button" value="确定" />' +
						  '</form>' +
						  '</div>' +
						  '</li>' +
						  '<li style="position: relative;">' +
						  '<a  href="javascript://" onclick="adw.display(this,\'img\')" title="图片"><img border="0" width="21" height="20" alt="图片" src="/Public/images/adw/insertimage.gif" /></a>' +
						  '<div id="dlg_insertimage" class="floatdlg" style="display: none;">' +
						  '<form style="margin: 0; padding: 0;" >' +
						  '<label>输入图片地址</label>' +
						  '<input type="text" id="txt_img_url" value="http://" />' +
						  '<input id="smt_insertimage" onclick="adw.setURL(this,\'img\')" type="button" value="确定" />' +
						  '</form>' +
						  '</div>' +
						  '</li>' +
						  '<li class="sep"><img border="0" width="4" height="20" src="/Public/images/adw/sep.gif" /></li>' +
						  '<li id="source"><input type="checkbox" id="ckb_source" onclick="adw.source(this)" value="1" class="source" /></li>' +
						  '</ul>' +
						  '<iframe id="ifm_editarea" src="about:blank" frameborder="0"></iframe>' +
						  '<form id="txt_form_blog" action="/profile/say.php" method="post">' +
						  '<input type="hidden" id="video_editarea" name="video" value="" /><input type="hidden" name="id" value="' + (id || 0) + '"><input type="hidden" name="uid" value="' + pageMessage.uid + '"><input type="hidden" name="op" value="' +  (id ? 'e' : 'p1') + '">' +
						  '<textarea id="txt_editarea" name="contents" style="display: none;"></textarea>' +
						  '</form>' +
						  '</div>' +
						  '<p style="padding:8px; text-align:center"><button type="button" onclick="profileHelp.myBlog.submit(this)" class="loogerbtn">写好了，提交吧</button></p>' ;
			var eleContent = new Element('div').setHTML(htmlstr) ;
			new appover(title , eleContent , {'width':640 , 'alpha':false , 'onComplete':function(){adw.onload(blog||'');}}).display()  ;
		} ,

		submit : function(button) {
			if(!$('ckb_source').checked)
				$('txt_editarea').value = adw.ed.document.body.innerHTML ;						
			if(!$('txt_editarea').value.trim()) {
				alert('你还没写呢') ;
				return false ;
			}
			$('video_editarea').value = $('video_editareaExt').value ;
			button.disabled='disabled';
			$('txt_form_blog').submit() ;
		}
	}
}


// =======================  profile scroll mini  =======================

var ScrollMiniShow = new Class({

	options : {
		className : 'scrollMiniShow' ,
		pageWidth : 568
	} ,

	initialize : function(options) {
		this.setOptions(options);
		this.eles = $$('.' + this.options.className) ;
		this.eleObj = {} ;
		this.eles.each(function(e) {
			var id = getRandNoReapt('show') ;
			var tabs = e.getElements('.tab dt a') ;
			this.eleObj[id] = {'tabs':tabs , 'block':e.getElementsByClassName('ls')[0]} ;
			tabs.each(function(te,tk){te.addEvent('click' , function(evt){ this.change(id , evt.target , tk) ; evt.stop() }.bindWithEvent(this))} , this) ;
		} , this) ;
	} ,

	change : function(id , ele , k){
		this.tab(this.eleObj[id].tabs , ele) ;
		this.scroll(this.eleObj[id].block , k) ;
	} ,

	tab : function(eles , ele) {
		eles.each(function(e){ e.className = '' ; if(e == ele) e.className = 'on' }) ;
		$(ele.parentNode.parentNode).getElements('dd a')[0].setHTML('更多' + ele.innerHTML).setProperty('href' , ele.href) ;
	} ,

	scroll : function(ele , k) {
		var end = -this.options.pageWidth*k ;
		$(ele).effect('margin-left').start(end) ;
	}

}) ;

ScrollMiniShow.implement(new Events, new Options);



// =======================  player set  =======================

var playerParam = {

	color : [['#7FD9F1' , '#C4DF9B' , '#F19CA3', '#8E8E8E' , '#FD568E' , '#A8D32C' , '#FFDD5D' , '#D72B1F' , '#8E8248' , '#988A8A', '#79A63F', '#444444', '#B77B83']] ,

	getColor : function(url) {
		var marr =  url.match(/\/(\d*)\/(\d*)\.css$/) ;
		return marr ? this.color[marr[1]-1][marr[2]-1] : '' ;
	}

}














