﻿function playshare(shareform){
	if($(shareform).style.display==''){ 
		$(shareform).style.display='none'; 
	} else {  
		$(shareform).style.display='';
		$(shareform).url.focus();
	}
}
var miniblogmsg='有什么新鲜事想告诉大家？';
/**
 * 提交迷你博客
 * @param theForm
 * @return
 */
function submitFormForMiniblog(theForm){
	var info =$('info').value;
	if(info!=miniblogmsg)
		ED.pl.submitForm(theForm);
	return false;
}
/**
 * 显示提示迷你博客
 * @return
 */
function showHintForMiniblog(){
	var info =$('info').value;
	if(info==""){
		$('info').style.color='#999999';
		$('info').value=miniblogmsg;
	}
}
/**
 * 消去提示迷你博客
 * @param msg
 * @return
 */
function displayHintForMiniblog(){
	var info =$('info').value;
	if(info==miniblogmsg){
		$('info').style.color='';
		$('info').value='';
	}
}

/**
 * 搜藏&共享
 * @return
 */ 
function bookFunction(){
	    var id = "bookMarket";
	    var title = encodeURIComponent(document.title);
	    var url = encodeURIComponent(document.location.href);
	    return {
	        show:function() {
                var data =new Array();
                data[0] = ['sinaT','新浪微博','http://v.t.sina.com.cn/share/share.php?title='+title+'&url='+url+'&appkey=2167551361&ralateUid=2097821145'];
                data[1] = ['qqZone','QQ空间','http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?title='+title+'&url='+url];
                data[2] = ['renren','人人网','http://share.renren.com/share/buttonshare.do?link='+url+'&title='+title];
                data[3] = ['kaixin','开心','http://www.kaixin001.com/repaste/share.php?rtitle='+title+'&rurl='+url +'&rcontent='+title +' '+url];
                data[4] = ['txT','腾讯微博','http://v.t.qq.com/share/share.php?url='+url+'&title='+title +'&appkey='+encodeURI("3f916891276342d5b1dff3bf3b37f8fb")+'&site='+url+''];
                data[5] = ['baidu','百度搜藏','http://cang.baidu.com/do/add?it='+title+'&iu='+url+'&fr=ien#nw=1'];
                data[6] = ['douban','豆瓣','http://www.douban.com/recommend/?url='+url+'&title='+title];
                data[7] = ['wangyiT','网易微博','http://t.163.com/article/user/checkLogin.do?link='+url +'&source='+title +'&info='+title +' '+url];
                data[8] = ['sohuT','搜狐微博','http://t.sohu.com/third/post.jsp?title='+document.title+'&url='+url+'&content='+document.title +'  ' + url];
                data[9] = ['taojh','淘江湖','http://share.jianghu.taobao.com/share/addShare.htm?title='+document.title+'&url='+url];
               
                for (i=0;i<data.length;i++)
                {
                    a = document.createElement('a');
                    a.setAttribute('class',data[i][0]);
                    a.setAttribute('onclick','bookMarket.open("'+data[i][2]+'");return false;');
                    a.setAttribute('href','#');
                    a.setAttribute('title',data[i][1]);
                    if (document.all)
                    {   
                        var n =0;
                        a.setAttribute('className',data[i][0]);
                        a.setAttribute('target','_blank');
                        a.setAttribute('href',data[i][2]);
                    }
                    document.getElementById('share').appendChild(a);
                    a = null;

                }
	        },
	        hide:function() {
	            document.getElementById(id).style.display = 'none';
	        },
	        open:function(url) {
	            window.open(url);
	        }
	    }
}

Element.implement({
    show : function() {
        this.setStyle('display', '');
    },
    hide : function() {
        this.setStyle('display', 'none');
    },
    vals :function(flag){
        if(flag===false)return this.toQueryString();
        var map = {};
        this.getElements('input, select, textarea', true).each(function(el){
            if (!(el.name||el.id) || el.disabled || el.type == 'submit' || el.type == 'reset' || el.type == 'file') return;
            var value = (el.tagName.toLowerCase() == 'select') ? Element.getSelected(el).map(function(opt){
                return opt.value;
            }) : ((el.type == 'radio' || el.type == 'checkbox') && !el.checked) ? null : el.value;
            $splat(value).each(function(val){
                if (typeof val != 'undefined') map[el.name||el.id] = val;
            });
        });
        return map;
    },
    addLiveEvent: function(event, selector, fn){
		this.addEvent(event, function(e){
			var t = $(e.target);
			if (!t.match(selector)) return false;
			fn.apply(t, [e]);
		}.bindWithEvent(this, selector, fn));
	}
});


String.implement({
	tpl : function(map, empty) {
		var str = this;
		for (var m in map) {
			var re = new RegExp("\{" + m + "\}", 'g')
			str = str.replace(re, map[m]);
		}
		if (empty !== false) {
			str = str.replace(/\{\w+\}/g, "");
		}
		return str;
	},
    trimHtml:function(){/* 去掉所有后空格和换行包括:标签中的含空格回车等,如:<span style="font-size: 13px">&nbsp;<span> */
        var regex = /(((\s)|(&nbsp;)|(<br \/>)|(<br\/>)|(<br>)|(<\/br>)|((<(\w)+( (\w)*="(((\w)*|(\w)*-(\w)*): (\w)*(; )?)*")?>)+((&nbsp;)|(<br \/>)|(<br\/>)|(<br>)|(<\/br>))+(<\/(\w)+>)+))*$)/g;
	    var str = this.replace(regex, "")
	    return str.replace(/(\s)*$/g, "");
    }
});

/* 公共方法 */
$F = function(e) {
	if (!$(e)) return "";
	return $(e).get('value').trim();
};
/**
 * 自己封装的ajax操作，用于对应update进行状态判断之后再进行update操作
 */
var EdAjax = Request.HTML.extend({
	options : {},
	initialize : function(options) {
		this.parent(options);
		this.removeEvent('onSuccess', this.onComplete);
		this.addEvent('onSuccess', this.onEdComplete);
	},
	onEdComplete : function() {
		var ed_status = 0;
		if (this.options.update) {
			ed_status = $pick(this.getHeader("ed_status"), 0);
		}
		if (ed_status < 0) {
			ED.util.showMsg(this.response.text, 'warn');
		} else {
			this.onComplete();
		}
	}
});

if ("undefined" == typeof ED) {
	var ED = {};
}

ED.namespace = function() {
	var a = arguments, o = null, i, j, d;
	for (i = 0; i < a.length; ++i) {
		d = a[i].split(".");
		o = ED;
		for (j = (d[0] == "ED") ? 1 : 0; j < d.length; ++j) {
			o[d[j]] = o[d[j]] || {};
			o = o[d[j]];
		}
	}
	return o;
};
ED.nm = ED.namespace;
ED.nm("util", "cst", "widget", "app", "cookie", "select", "pic","valid");

ED.util = {
	addbookmark : function addbookmark() {
		var nome_sito = "益动";
		var url_sito = "http://www.edooon.com";
		if ((navigator.appName == "Microsoft Internet Explorer")
				&& (parseInt(navigator.appVersion) >= 4))
			window.external.AddFavorite(url_sito, nome_sito);
		else if (navigator.appName == "Netscape")
			window.sidebar.addPanel(nome_sito, url_sito, '');
		else
			alert("Sorry!Cann't Add this site to your favorite!.");
	},
	addbookmark_jingcai : function() {
		var nome_sito = "欧洲杯竞猜，拿最终幸运至尊大奖！-益动体育社区";
		var url_sito = "http://www.edooon.com/jingcai/index.do";
		if ((navigator.appName == "Microsoft Internet Explorer")
				&& (parseInt(navigator.appVersion) >= 4))
			window.external.AddFavorite(url_sito, nome_sito);
		else if (navigator.appName == "Netscape")
			window.sidebar.addPanel(nome_sito, url_sito, '');
		else
			alert("Sorry!Cann't Add this site to your favorite!.");
	},
	isChiness : function(str) {
		return /^[\u4e00-\u9fa5]/g.test(str);
	},
	/**
	 * 计算字符串长度,中文算为2
	 */
	strlen : function(str) {
		var strlength = 0;
		for (var i = 0; i < str.length; i++) {
			if (this.isChiness(str.charAt(i)) == true)
				strlength = strlength + 2;
			else
				strlength = strlength + 1;
		}
		return strlength;
	},
	responseXmlParser : function(root) {
		var responseNodes = root.getElementsByTagName("response");
		var itemList = new Array();
		if (responseNodes.length > 0) {
			var responseNode = responseNodes[0];
			var itemNodes = responseNode.getElementsByTagName("item");
			for (var i = 0; i < itemNodes.length; i++) {
				var nameNodes = itemNodes[i].getElementsByTagName("name");
				var valueNodes = itemNodes[i].getElementsByTagName("value");
				if (nameNodes.length > 0 && valueNodes.length > 0) {
					var name = nameNodes[0].firstChild.nodeValue;
					var value = valueNodes[0].firstChild.nodeValue;
					itemList.push(new Array(name, value));
				}
			}
		}
		return itemList;
	},
	/*
	 * 取文件的后缀
	 */
	getExt : function(src) {
		var ext = "";
		var begin = src.lastIndexOf('.');
		if (begin >= 0)
			ext = src.substring(begin + 1, src.length);
		ext = ext.toLowerCase()
		return ext;
	},
	/**
	 * 显示提示信息
	 * 
	 * @param {Object}
	 *            msg 提示内容
	 * @param {Object}
	 *            type 消息类型：可以为：info warn
	 */
	showMsg : function(msg, type) {
		var box = new Facebox({
			message : msg,
			cancelValue : false
		});
		box.show();
		setTimeout(function() {
			box.close();
		}, 3000);
	},
	/**
	 * tab
	 */
	tabs : function(id, cls) {
		cls = cls || 'current';
		$$(id + " a").addEvent("click", function() {
			$$(id + " a").removeClass(cls);
			this.addClass(cls);
			$$("div[id^=tab-]").each(function(el) {
				el.setStyle('display', 'none');
			});
			$('tab-' + this.id).setStyle('display', '');
		});
	}
}

/* cookie操作 */
ED.cookie = {
	getCookie : function(name) {
		return Cookie.read(name);
	},
	setCookie : function(name, value, expireDay) {
		Cookie.write(name, value, {
			duration : expireDay
		});
	},
	clearCookie : function(name) {
		Cookie.dispose(name);
	}
}

ED.checkbox = {/* 对html checkbox的操作 */
	/**
	 * 根据obj的状态选中或者不选中对应所有的checkbox
	 * 
	 * @param {Object}
	 *            obj
	 * @param {Object}
	 *            formId
	 * @param {Object}
	 *            idkey
	 */
	checkCheckBox : function(obj, formId, idkey) {
		var cInput = $ES('input', formId);
		var checked = true;
		if (typeof obj == 'boolean') {
			checked = obj
		} else {
			checked = obj.checked;
		}
		for (var i = 0; i < cInput.length; i++) {
			if (cInput[i].id != null
					&& (!idkey || cInput[i].id.indexOf(idkey) >= 0)) {
				if (cInput[i].type == 'checkbox') {
					cInput[i].checked = checked;
				}
			}
		}
		return true;
	},
	revertAll : function(formId, idkey) {
		var cInput = $ES('input', formId);
		for (var i = 0; i < cInput.length; i++) {
			if (cInput[i].id != null
					&& (!idkey || cInput[i].id.indexOf(idkey) >= 0)) {
				if (cInput[i].type == 'checkbox') {
					cInput[i].checked = !cInput[i].checked;
				}
			}
		}
		return true;
	}
}
ED.select = {/* 对html select的操作 */
	clear : function(id) {
		var objSelect = $(id);
		var length = objSelect.options.length
		objSelect.options.length = 0;
		return length;
	},
	add : function(id, infos) {
		var objSelect = $(id);
		var varItem = null;
		for (var i = 0; i < infos.length; i++) {
			varItem = new Option(infos[i][0], infos[i][1]);
			objSelect.options.add(varItem);
		}
		return objSelect.options.length;
	},
	exist : function(id, value) {
		var objSelect = $(id);
		var r = false;
		for (var i = 0; i < objSelect.options.length; i++) {
			if (objSelect.options[i].value == value) {
				r = true;
				break;
			}
		}
		return r;
	},
	del : function(id, value) {
		var objSelect = $(id);
		if (exist(id, value)) {
			for (var i = 0; i < objSelect.options.length; i++) {
				if (objSelect.options[i].value == value) {
					try {
						objSelect.options.remove(i);/* ie */
					} catch (e) {
						objSelect.options[i].remove();/* ff */
					}
					return 1;
				}
			}
		}
		return 0;
	},
	select : function(id, value) {
		if (this.exist(id, value)) {
			$(id).value = value;
			return true;
		}
		return false;
	},
	getText : function(id, value) {
		var objSelect = $(id);
		for (var i = 0; i < objSelect.options.length; i++) {
			if (objSelect.options[i].value == value) {
				return objSelect.options[i].text;
			}
		}
		return '';
	},
	dragDown : function(url, sourceid, targetid, para) { /* 下拉联动 */
		$(sourceid).addEvent('change', function(event) {
			var surl = url;
			if (surl.indexOf('?') > 0)
				surl = surl + "&";
			else
				surl = surl + "?";
			surl = surl + para + "=" + $(sourceid).get('value');
			new Request({
				url : surl,
				method : 'post',
				onSuccess : function(txt, xmldoc) {
					var result = ED.util.responseXmlParser(xmldoc);
					ED.select.clear(targetid);
					ED.select.add(targetid, result);
				}
			}).send();
		});
	},
	/*直接获取*/
	changeZone: function (url, sourceid, targetid, para,provincesid,zonesid){
		var surl = url;
		if (surl.indexOf('?') > 0)
			surl = surl + "&";
		else
			surl = surl + "?";
		surl = surl + para + "=" + provincesid;
		new Request({
			url : surl,
			method : 'post',
			onSuccess : function(txt, xmldoc) {
				var result = ED.util.responseXmlParser(xmldoc);
				ED.select.clear(targetid);
				ED.select.add(targetid, result);
				ED.select.select('zone',zonesid);
			}
		}).send();
	}
}
/* 静态内容 */

ED.valid =new Hash({
	required : {
		msg : "{label}不能为空!",
		test : function(el) {
			return ($F(el) != "");
		}
	},
	email : {
		msg : "{label}必须为有效的 Email!",
		test : function(el) {
			return /^[a-z0-9_+.-]+\@([a-z0-9-]+\.)+[a-z0-9]{2,4}$/i
					.test($F(el));
		}
	},
	url : {
		msg : "{label}必须为有效的网址!",
		test : function(el) {
			return /^(https?:\/\/)?([a-z0-9-]+\.)+[a-z0-9]{2,4}.*$/i
					.test($F(el));
		}
	},
	checked : {
		msg : "你必须确认该条款!",
		test : function(el) {
			return el.checked == true;
		}
	},
	mobile : {
		msg : "{label}必须为有效的手机号码!",
		test : function(el) {
			return /^1(3|5)[0-9]{9}$/.test($F(el));
		}
	},
	chinese : {
		msg : "{label}必须为中文!",
		test : function(el) {
			return !/[^\u4e00-\u9fa5]/g.test($F(el));
		}
	},
	gt : {
		msg :"{label}的长度必须大于{minLen}!",
		test : function(el, len) {
			return $F(el).length > len;
		}
	},
	lt : {
		msg :"{label}的长度必须小于{maxLen}!",
		test : function(el, len) {
			return $F(el).length < len;
		}
	},
	word : {
		msg : "{label}必须只能由英文字母加数字组成,并且只能以字母开头!",
		test : function(el) {
			return /^[a-zA-Z][a-zA-Z0-9_]+$/.test($F(el));
		}
	},
	uname : {
		msg : "{label}必须只能由英文字母加数字组成!",
		test : function(el) {
			var numflag = ED.valid.num.test(el);
			if (!numflag) {
				return /^[a-zA-Z0-9]+$/.test($F(el));
			} else {
				return false;
			}
		}
	},
	num : {
		msg : "{label}只能数字组成!",
		test : function(el) {
			return /^[0-9]+$/.test($F(el));
		}
	},
	qq : {
		msg : "{label}必须为有效的QQ号码!",
		test : function(el) {
			return /^\d{5,13}$/.test($F(el));
		}
	},
	imgfile : {
		msg : "{label}必须为有效的图片格式，支持 jpg, png 和 gif!",
		test : function(el) {
			return /\.jpg$|\.jpeg$|\.gif$|\.png$|\.jfif$|\.bmp$/i
					.test(el.value);
		}
	}
});

ED.Validator=new Class({
    Implements: [Chain, Events, Options],
    options:{
        validOnBlur: true,
        errorClass: 'error',
        errorMsgClass: 'errorMessage',
        onFail: $empty,
        onSuccess: false,
        onAfterValid: false,
        showErrorsInline: true,
        infos:{},  //验证信息
        params:{}  //验证参数
    },
    initialize: function(node, options){
        this.list = [];
        this.setOptions(options);
        this.node=$(node);
        $extend(this.options.infos,ED.valid);
        this.elements=this.node.getElements("."+this.options.infos.getKeys().join(', .'));
        if(this.options.validOnBlur){
            this.elements.each(function(el,i){
                el.addEvent('blur', this.valid.bind(this, el));
            }.bind(this));
        }
    },
    valid:function(el){
        this.clearMsg(el);
        var vs=el.get('class').split(/\s+/);
        return vs.every(function(v,i){
            var rst=true;
            var infos=this.options.infos;
            if(infos[v]){
                var id=el.get("id")||el.get("name");
                var param=$merge({label:'此项'},this.options.params[id]||{},JSON.decode(el.get('param')||'{}'));
                if(!infos[v].test(el,param)){
                    var rst=false,msg=infos[v].msg;
	                if($type(msg)=='function'){
	                    msg=msg(el,param);                    
	                }else{
                        msg=msg.tpl(param);
                    }
	                this.setMsg(el,msg);
                    this.list.include(el);
                }else{
                     this.list.erase(el);
                }
                this.fireEvent('afterValid',[el,rst]);
            }
            return rst;
        },this);
    },
    setMsg:function(el,msg){
        if(msg == undefined){
            msg = el.title;
        }
        el.error = new Element('span').addClass(this.options.errorMsgClass).set('text',msg)
    },
    clearMsg:function(el){
        el.removeClass(this.options.errorClass);
        if(el.error != undefined){
            el.error.dispose();
            el.error = undefined;
        }
    },
    submit:function(){
        this.list = [];
        var doSubmit = true;
        this.elements.each(function(el){
            if(!this.valid(el)) doSubmit = false
        },this);
        
        if(doSubmit){
            if(this.options.onSuccess!==false){
                this.fireEvent('success');
            }
        }else{
            if(this.options.onFail!==false){
                this.fireEvent('fail',[this.list]);
            }
        }
        return doSubmit;
    }
});

ED.widget.selectAndCopy = function(el, msg) {
	$(el).addEvent("focus", function(e) {
		$(el).select();
	});
	if (window.ie) {
		var btn = new Element("input", {
			"type" : "button",
			"class" : "f-button",
			"value" : "复制"
		});
		btn.injectAfter(el);
		btn.addEvent("click", function(e) {
			window.clipboardData.setData("Text", $F(el));
			alert(msg || "复制成功，你可以粘贴到 QQ 或 MSN 中发给好友。");
		});
	}
};

ED.widget.form = function() {
	var $V = ED.valid;
	return {
		setTextHint : function(el, initMsg, noHit) {
			el = $(el);
			if ($F(el) == "") {
				el.value = initMsg;
				el.addClass("unsharp");
			}
			el.addEvent("focus", function() {
				if (!noHit || noHit == 0) {
					if ($F(el) == initMsg) {
						el.value = "";
					}
					el.removeClass("unsharp");
				} else {
					if (noHit == 1) {
						el.focus();
					}
				}
			});
			el.addEvent("blur", function() {
				if (!noHit || noHit == 0) {
					if ($F(el) == "") {
						el.value = initMsg;
						el.addClass("unsharp");
					} else {
						el.removeClass("unsharp");
					}
				}
			});
			var frm = el.form;
			if (frm) {
				$(frm).addEvent("submit", function(e) {
					if ($F(el) == initMsg) {
						el.value = "";
					}
				});
			}
		}
	};
}();

ED.pic = {
	/**
	 * 设置默认图片
	 */
	setDefault : function(ImgD, type) { 
		var prefix = "m_";
		var src = ImgD.src;
		//console.log(ImgD.width,src);
		if (ImgD.width > 100 || src.indexOf("/l_") > 0) {
			prefix = "l_";
		} else if (ImgD.width > 50 || src.indexOf("/m_") > 0) {
			prefix = "m_";
		} else if (ImgD.width == 48 || src.indexOf("/s_") > 0) {
			prefix = "s_";
		} else {
			prefix = "l_";
		}
		if (type == 'group') {// 圈子LOGO
			ImgD.src = '/img/' + prefix + 'group.jpg';
		} else if (type == 'user') {// 用户头像
			ImgD.src = '/img/' + prefix + 'person.jpg';
		} else if(type =='place'){
            ImgD.src = '/stl/image/nopic.jpg';
        }else if(type=="place_l"){
            ImgD.src = '/stl/image/nopic_l.jpg';
        }else{// 其他
			ImgD.src = '/img/no_pic.gif';
		}
	},
	/**
	 * ImgD 图片对象 maxwidth 最大宽度，0：表示不限制 maxheight 最大高度，0：表示不限制
	 */
	autoImage : function(ImgD, maxwidth, maxheight) {
		if (maxwidth == 0 && maxheight == 0)
			return;
		var image = new Image();
		image.src = ImgD.src;
		if (image.width > 0 && image.height > 0
				&& (image.width > maxwidth || image.height > maxheight)) {
			if (maxheight == 0
					|| image.width / image.height > maxwidth / maxheight) {
				if (image.width > maxwidth) {
					ImgD.width = maxwidth;
					ImgD.height = (image.height * maxwidth) / image.width;
				} else {
					ImgD.width = image.width;
					ImgD.height = image.height;
				}
			} else if (maxwidth == 0
					|| image.height / image.width >= maxheight / maxwidth) {
				if (image.height > maxheight) {
					ImgD.height = maxheight;
					ImgD.width = (image.width * maxheight) / image.height;
				} else {
					ImgD.width = image.width;
					ImgD.height = image.height;
				}
			}
		}

	},
	submitForm : function(formId, url, aimUrl) {
		aimUrl = aimUrl = null || aimUrl.length < 1 ? "./" : aimUrl;
		if (checkFormResult()) {
			var myForm = $(formId);
			myForm.set('send', {
				url : url,
				method : 'post',
				onComplete : function(txt) {
					txt = txt.trim();
					ED.util.showMsg(txt, 'info');
					window.setTimeout("location.href='" + aimUrl + "';", 3000);
				}
			});
			myForm.send();
		}
	},
	submitModifyForm : function(formId, url, aimUrl) {
		aimUrl = aimUrl = null || aimUrl.length < 1 ? "./" : aimUrl;
		if (checkModifyForm()) {
			var myForm = $(formId);
			myForm.set('send', {
				url : url,
				method : 'post',
				onComplete : function(txt) {
					txt = txt.trim();
					ED.util.showMsg(txt, 'info');
					window.setTimeout("location.href='" + aimUrl + "';", 3000);
				}
			});
			myForm.send();
		}
	}
}

ED.ajax = {
	submitForm : function(formId) {
		var myForm = $(formId);
		myForm.set('send', {
			method : 'post',
			onComplete : function(txt) {
				txt = txt.trim();
				ED.util.showMsg(txt, 'info');
				window.setTimeout("location.href=location.href;", 3000);
			}
		});
		myForm.send();
	},
	submitFormByJson : function(formId, url) {
		var myForm = $(formId);
		myForm.set('send', {
			url : url,
			method : 'post',
			onComplete : function(txt) {
				txt = txt.trim();
				var json = JSON.decode(txt);
				if (json.showMsg) {
					ED.util.showMsg(json.msg, 'info');
				}
				if (json.redirct) {
					if (json.nextUrl <= 1) {
						window.setTimeout("location.href=location.href;", 1500);
					} else {
						window.setTimeout("location.href='" + json.nextUrl
								+ "';", 1500);
					}
				}
			}
		});
		myForm.send();
	},
	submitThisFormByJson : function(formId, url) {
		var myForm =  $(formId);
		myForm.set('send', {
			url : url,
			method : 'post',
			onComplete : function(txt) {
				txt = txt.trim();
				var json = JSON.decode(txt);
				if (json.showMsg) {
					ED.util.showMsg(json.msg, 'info');
				}
				if (json.redirct) {
					if (json.nextUrl <= 1) {
						window.setTimeout("location.href=location.href;", 1500);
					} else {
						window.setTimeout("location.href='" + json.nextUrl
								+ "';", 1500);
					}
				}
			}
		});
		myForm.send();
	},
	submitFormByJsonForDisabled : function(formId, url,submitButn) {
		$(submitButn).disabled=true;
		var myForm = $(formId);
		myForm.set('send', {
			url : url,
			method : 'post',
			onComplete : function(txt) {
				txt = txt.trim();
				var json = JSON.decode(txt);
				if (json.showMsg) {
					ED.util.showMsg(json.msg, 'info');
				}
				if (json.redirct) {
					if (json.nextUrl <= 1) {
						window.setTimeout("location.href=location.href;", 1500);
					} else {
						window.setTimeout("location.href='" + json.nextUrl
								+ "';", 1500);
					}
				}else{
					$(submitButn).disabled=false;
				}
			}
		});
		myForm.send();
	},
	submitUrl : function(url) {
		var myAjax = new Request({
			url : url,
			method : 'post',
			data:{"ajax_submit_flag":"1"},
			onSuccess : function(txt, xmldoc) {
				txt = txt.trim();
				ED.util.showMsg(txt, 'info');
				window.setTimeout("location.href=location.href;", 3000);
			}
		}).send();
	},
	submitForUrl : function(url, aimUrl) {
		aimUrl = aimUrl = null || aimUrl.length < 1 ? "./" : aimUrl;
		var myAjax = new Request({
			url : url,
			method : 'post',
			onSuccess : function(txt, xmldoc) {
				txt = txt.trim();
				ED.util.showMsg(txt, 'info');
				window.setTimeout("location.href='" + aimUrl + "';", 3000);
			}
		}).send();
	},
	submitForUrlByJson : function(url) {
		var myAjax = new Request({
			url : url,
			method : 'post',
			onSuccess : function(txt, xmldoc) {
				txt = txt.trim();
				var json = JSON.decode(txt);
				if (json.showMsg) {
					ED.util.showMsg(json.msg, 'info');
				}
				if (json.redirct) {
					if (json.nextUrl <= 1) {
						window.setTimeout("location.href=location.href;", 1500);
					} else {
						window.setTimeout("location.href='" + json.nextUrl
								+ "';", 1500);
					}
				}
			}
		}).send();
	},
	delObjectUrl : function(url, msg) {
		if (confirm(msg)) {
			ED.ajax.submitUrl(url);
		}
	},
	delObjectForUrl : function(url, aimUrl, msg) {
		if (confirm(msg)) {
			ED.ajax.submitForUrl(url, aimUrl);
		}
	},
	delObjectForUrlByJson : function(url, msg) {
		if (confirm(msg)) {
			ED.ajax.submitForUrlByJson(url);
		}
	}
}

// user.js 开始==================================================================
/**
 * 获取cookie值
 * 
 * @param name
 *            要取的cookie名
 */
function getcookie(name) {
	var search = name + "="
	var returnvalue = "";
	if (document.cookie.length > 0) {
		offset = document.cookie.indexOf(search)
		if (offset != -1) {
			offset += search.length
			end = document.cookie.indexOf(";", offset);
			if (end == -1)
				end = document.cookie.length;
			returnvalue = unescape(document.cookie.substring(offset, end))
		}
	}
	return returnvalue;
}

function getnewmsg(uname) {
	var url = "/msg?t=smsnew";
	var myAjax = new Request({
		url : url,
		method : 'post',
		onComplete : function(text) {
			text = text.trim();
			if(text.length>0){
				$('smsshowli').empty().set('html', text);
				$('smsshowli').setStyle('display', 'block'); 
			} else {
				$('smsshowli').setStyle('display', 'none'); 
			}
		}
	}).send();
}

/**
 * 头部搜索输入框输入字符时候调用
 */
function headSeachFormChange() {
	var input = $('headSearchInput');
	var value = input.get('value');
	if(value) {
		var cites =$('headSearchSelect').getElements('cite');
		for(var i=0;i<cites.length;i++){
			cites[i].innerHTML=value;
		} 
		$('headSearchSelect').setStyle('display', 'block'); 
	} else {
		$('headSearchSelect').setStyle('display', 'none'); 
	}
}
function headSeachFormSubmit(action) {
	$('headSearchForm').set('action', action);
	$('headSearchForm').submit();
}


if ("undefined" == typeof EDC) {
	var EDC = {};
}

EDC.UserUtil = {
	analyXML : function(xmldoc) {
		var persons = xmldoc.getElementsByTagName('user');
		var result = new Array(persons.length);
		for (var i = 0; i < persons.length; i++) {
			var person = persons[i];
			result[i] = person.getElementsByTagName("name")[0].firstChild.data;
		}
		return result;
	},

	checkUname : function(obj) {
		if (typeof obj == "undefined") {
			obj = new EDC.User();
		}
		var unameObj = $("unameReg");
		if($defined(unameObj)==false){
			unameObj=$("uname");
		}
		unameObj.value = unameObj.value.trim();
		var s = unameObj.value;
		var d = $("unamep");
		obj.checkU = 0;
		if (s.length < 4) {
			obj.checkU = 1;
			d.innerHTML = "用户名的长度必须大于等于4字节";
			d.className = "errorTips";
		} else if (s.length > 16) {
			obj.checkU = 1;
			d.innerHTML = "用户名的长度必须小于等于16字节";
			d.className = "errorTips";
		} else if (!ED.valid.uname.test(unameObj.id)) {
			obj.checkU = 1;
			if (ED.valid.num.test(unameObj.id)) {
				d.innerHTML = "用户名不能全部为数字";
			}
			else {
				d.innerHTML = "用户名只能使用字母和数字";
			}
			d.className = "errorTips";
		} else {// 验证用户名是否被占用
			var url = "/common/getuser.jsp?uname=" + s;
			var myAjax = new Request({
				url : url,
				method : 'post',
				onSuccess : function(txt, xmldoc) {
					var result = EDC.UserUtil.analyXML(xmldoc);
					var v = $("unamep");
					for (var i = 0; i < result.length && i < 1; i++) {
						if (result[i] == "none") {
							v.innerHTML = '用户名可以使用';
							obj.checkU = 0;
							v.className = "succeesTips";
							$("unamepp").style.display="none";
						} else {
							v.innerHTML = '用户名已经被使用，请您重新输入';
							obj.checkU = 1;
							v.className = "errorTips";
						}
					} 
				}
			}).send();
		}
		
			
	},
	checkPasswd : function(obj) {
		if (typeof obj == undefined)
			obj = new EDC.User();
		var v = $("upasswd");
		var v1 = $("upasswd1"); 
		if ($("passwd").value.length < 4) {
			v.innerHTML = "请输入4-16位密码";
			obj.checkP = 1;
			v.className = "errorTips";
		} 
		if ($("passwd1").value.length > 0) {
			if ($("passwd").value !== $("passwd1").value) {
				v1.innerHTML = "密码不匹配，请重新输入";
				obj.checkP = 1;
				v.className = "succeesTips";
				v1.className = "errorTips";
				$("upasswdp").style.display = "none";
			}
			else {
				v.innerHTML = "确认密码正确";
				obj.checkP = 0;
				v1.className = "succeesTips";
				v.className = "succeesTips";
				$("upasswdp").style.display = "none";
				$("upasswdp1").style.display = "none";
			}
		}
	},
	checkNickname : function(obj) {
		if (typeof obj == undefined)
			obj = new EDC.User();
		obj.checkN = 0;
		var v = $("unickname");
		$("nickname").value = $("nickname").value.trim();
		if ($("nickname").value == "")
			$("nickname").value = $("uname").value;
		if (ED.util.strlen($("nickname").value) > 12) {
			v.innerHTML = "昵称太长，请重新输入";
			v.className = "errorTips";
			obj.checkN = 1;
		} else if (ED.util.strlen($("nickname").value) < 1) {
			v.innerHTML = "昵称太短，请重新输入";
			v.className = "errorTips";
			obj.checkN = 1;
		} else {
			v.innerHTML = "昵称格式正确";
			obj.checkN = 0;
			v.className = "succeesTips";
			$("unicknamep").style.display="none";
		}
	},
	checkEmail : function(obj) {
		if (typeof obj == undefined)
			obj = new EDC.User();
		var s = $("email").value
		var v = $("uemail");
		if (!ED.valid.email.test("email")) {
			v.innerHTML = "邮箱地址输入错误，请重新输入";
			obj.checkE = 1;
			v.className = "errorTips";
		} else {
			obj.checkE = 0;
			v.innerHTML = "";
			v.className = "";
			$("uemailp").style.display="none";
			// 验证邮箱地址是否重复
			var url = "/common/getuser.jsp?dotype=checkemail&email=" + s;
			var myAjax = new Request({
				url : url,
				method : 'post',
				onSuccess : function(txt, xmldoc) {
					var result = EDC.UserUtil.analyXML(xmldoc);
					var v = $("uemail");
					for (var i = 0; i < result.length && i < 1; i++) {
						if (result[i] == "right") {
							v.innerHTML = "邮箱地址正确";
							obj.checkE = 0;
							v.className = "succeesTips";
							$("uemailp").style.display="none";
						} else if (result[i] == "repeat") {
							v.innerHTML = "邮件地址已存在，如果您忘记密码，请通过此邮件找回";
							obj.checkE = 1;
							v.className = "errorTips";
						} else {
							v.innerHTML = "邮箱地址输入错误，请重新输入";
							obj.checkE = 1;
							v.className = "errorTips";
						}
					}
				}
			}).send();
		}
	},
	selectFile : function(url) {
		var width = 600;
		var heigth = 600;
		var left = (window.screen.width - width) / 2;
		var top = (window.screen.height - heigth) / 2;
		var s = 'top=' + top + ',left=' + left
				+ ',status=yes,scroll=no,resizable=no,height=' + heigth
				+ ',width=' + width;
		window.open(url, "uploadfile", s);
		return false;
	},
	checkUpphotoForm : function(theForm) {
		var exts = ',jpg,png,jpeg,';
		var ext = ED.util.getExt(theForm.file1.value);
		if (ext = '' || exts.indexOf("," + ext) < 0) {
			alert('对不起，只能上传jpg,png格式的图片作为头像');
			return false;
		}
		return true;
	},
	setBirthday : function() {
		$("birthday").value = $("year").value + "-" + $("month").value + "-"
				+ $("day").value;
	},
	/**
	 * 人员信息修改页面点击复选框的时候触发
	 * 
	 * @param {Object}
	 *            obj
	 */
	clickSecBirthday : function(obj) {
		if (obj.checked) {
			$('secbirthday').value = '0';
		} else {
			$('secbirthday').value = '1';
		}
	},
	/**
	 * 根据islogin参数判断是否登陆，如果没有登陆则显示相应的提示信息
	 * 
	 * @param {Object}
	 *            islogin 是否登陆
	 * @param {Object}
	 *            opname 操作名称，例如：发表回复
	 * @param {Object}
	 *            textAreaId 输入框的id
	 * @param {Object}
	 *            buttonId 提交的button的id
	 * @param {Object}
	 *            containerId 显示提示信息容器的id
	 */
	showCanNotReplay : function(islogin, opname, textAreaId, buttonId,
			containerId) {
		if (!islogin) {
			// $(textAreaId).value = '您还没有登录，请先登录再' + opname;
			$(containerId).className = "wallcommentp";
			$(buttonId).disabled = true;
			$(containerId)
					.set(
							'html',
							$(containerId).innerHTML
									+ "<span class=\"gray999\">"
									+ "您没有登录，请先<a href=\"/login\">登录</a>再"
									+ opname
									+ "，如果您还没有益动帐户，请先<a href=\"/reg\" class=\"red\">注册</a></span>");
		}
	},
	showCanNotReplay_Group : function(isadmin, islogin, opname, textAreaId,
			buttonId, containerId) {
		if (!islogin) {
			// $(textAreaId).value = '您还没有登录，请先登录再' + opname;
			$(containerId).className = "wallcommentp";
			$(buttonId).disabled = true;
			$(containerId)
					.set(
							'html',
							$(containerId).innerHTML
									+ "<span class=\"gray999\">"
									+ "您没有登录，请先<a href=\"/login\">登录</a>再"
									+ opname
									+ "，如果您还没有益动帐户，请先<a href=\"/reg\" class=\"red\">注册</a></span>");
		} else {
			if (!isadmin) {
				// $(textAreaId).value = '您还没有加入圈子，请先加入圈子再' + opname;
				$(containerId).className = "wallcommentp";
				$(buttonId).disabled = true;
				$(containerId)
						.set(
								'html',
								$(containerId).innerHTML
										+ "<span class=\"gray999\">"
										+ "&nbsp;&nbsp;您还没有加入圈子，请先<a href=\"../\">加入圈子</a>再"
										+ opname + "</span>");

			}

		}
	},
	showLoginbox:function(url){
		var commentp_links = $(document.body).getElements('div.wallcommentp').getElement('a');
		commentp_links.addLiveEvent('click', 'a', function(e){
			login_box(url);
				e.stop();
		});
	}

}

EDC.User = new Class({
	checkU : 0,
	checkP : 0,
	checkE : 0,
	checkN : 0,
	initialize : function() {
	},
	checkForm : {
		step : function() {/*绑定注册的时候检查表单 */
			var r = false;
			EDC.UserUtil.checkUname(this); 
			EDC.UserUtil.checkEmail(this); 
			if (this.checkE  + this.checkU  > 0)
				r = false;
			else
				r = true;
			return r;
		},
		step1 : function() {/* 第一步骤注册的时候检查表单 */
			var r = false;
			EDC.UserUtil.checkUname(this);
			EDC.UserUtil.checkPasswd(this);
			EDC.UserUtil.checkEmail(this);
			EDC.UserUtil.checkNickname(this);
			if (this.checkE + this.checkP + this.checkU + this.checkN > 0)
				r = false;
			else
				r = true;
			return r;
		},
		step2 : function() {/* 第二步注册的时候检查表单 */
			EDC.UserUtil.setBirthday();
			return true;
		}
	}
})
ED.User = {
	/**
	 *判断是否有新动态，如果有，提示点击查看
	 * @param {Object} lastTime
	 */
	getNewActNum:function(lastActTimeInput) {
		var lastTime = $(lastActTimeInput).value;
		var url = "/cmd?t=actnewnum";
		var myAjax = new Request({
			url : url,
			method : 'post',
			data :{"lastTime":lastTime},
			onComplete : function(text) {
				text = text.trim();
				if(text.length>0){
					$('newNoticeDiv').setStyle("display","block");
				}
			}
		}).send();
	},
	/**
	 * 取最新动态
	 * @param {Object} lastActTimeInput
	 */
	showNewAct:function(lastActTimeInput){
		var lastTime = $(lastActTimeInput).value;
		var url = "/cmd?t=actnew";
		var myAjax = new Request({
			url : url,
			method : 'post',
			data :{"lastTime":lastTime},
			onComplete : function(text) {
				text = text.trim();
				if(text.length>0){
					$('newNoticeDiv').setStyle("display","none");
					//写入元素
					var firstH3=$('newNoticeDiv').getNext("h3[class=timeLine]");
					if(!firstH3||firstH3.getFirst("span").innerHTML!='今天') {
						firstH3=new Element('h3', {'class': 'timeLine'});
						firstH3.innerHTML="<span>今天</span>";
						firstH3.inject($('newNoticeDiv'), 'after');
					}
					
					var newul  = new Element('ul', {'class': 'feedList'});
					newul.innerHTML=text;
					newul.inject(firstH3, 'after');
					
					$(lastActTimeInput).value = newul.getElement('span[name=timespan]').innerHTML;
				}
			}
		}).send();
	},
	submitForm : function(formId, url) {
		if (checkFormpw()) {
			var myForm = $(formId);
			myForm.set('send', {
				url : url,
				method : 'post',
				onComplete : function(txt) {
					txt = txt.trim();
					ED.util.showMsg(txt, 'info');
					window.setTimeout("location.href=location.href;", 3000);
				}
			});
			myForm.send();
		}
	},
	submitFormAimUrl : function(formId, url,aimUrl) {
		if (checkFormpw()) {
			var myForm = $(formId);
			myForm.set('send', {
				url : url,
				method : 'post',
				onComplete : function(txt) {
					txt = txt.trim();
					ED.util.showMsg(txt, 'info');
					window.setTimeout("location.href='"+aimUrl+"';", 3000);
				}
			});
			myForm.send();
		}
	},
	loginSubmitForm : function(formId, url) {
		var myForm = $(formId);
		url = url +"?type=ajax";
		myForm.set('send', {
			url : url,
			method : 'post',
			onComplete : function(txt) {
				txt = txt.trim();
				var json = JSON.decode(txt);
				if (json.showMsg) {
					ED.util.showMsg(json.msg, 'info');
				}
				if (json.redirct) {
					if (json.nextUrl <= 1) {
						window.setTimeout("location.href=location.href;", 1500);
					} else {
						window.setTimeout("location.href='" + json.nextUrl
								+ "';", 1500);
					}
				}
			}
		});
		myForm.send();
	},
	reg1SubmitForm : function(formId, url, aimUrl) {
		if (new EDC.User().checkForm.step1()) {
			var myForm = $(formId);
			myForm.set('send', {
				url : url,
				method : 'post',
				onComplete : function(txt) {
					txt = txt.trim();
					if (txt == "") {
						if (aimUrl == "/reg?s=2") {
							window.location.href = aimUrl;
						} else {
							ED.util.showMsg("注册成功！", 'info');
							window.setTimeout(
									"location.href='" + aimUrl + "';", 3000);
						}
					} else {
						ED.util.showMsg(txt, 'info');
						window.setTimeout("location.href=location.href;", 3000);
					}
				}
			});
			myForm.send();
		}
	},
	regBoundSubmitForm : function(formId, url, aimUrl) {
		if (new EDC.User().checkForm.step()) {
			var myForm = $(formId);
			myForm.set('send', {
				url : url,
				method : 'post',
				onComplete : function(txt) {
					txt = txt.trim(); 
					ED.util.showMsg(txt, 'info');
					window.setTimeout("location.href='/home';", 3000);
					 
				}
			});
			myForm.send();
		}
	},
	record: {
		newRecordSubmitForm : function(formId, url) {
			if(!ED.User.record.checknewRecord(formId)){
				return false;
			}
			ED.ajax.submitFormByJsonForDisabled(formId, url,'submitbutton');
		},
		modifyRecordSubmitForm : function(formId, url) {
			if(!ED.User.record.checknewRecord(formId)){
				return false;
			}
			ED.ajax.submitFormByJsonForDisabled(formId, url,'submitbutton');
		},
		checkDays: function (){
			 if(!Number.prototype.toFixed){
     			Number.prototype.toFixed=   function(num){
     				with(Math)
     				return   round(this.valueOf()*pow(10,num))/pow(10,num);  
     	          }  
     	      }   
			 $('days').value=parseFloat($('days').value).toFixed(1);
			  
		},
		checknewRecord : function(formId){
			 var r = true;
	            $('stimep').innerHTML = "";
	            $('stimep').className = "";
	            if ($(formId).stime.value == '') {
	                $('stimep').innerHTML = "时间不能为空";
	                $('stimep').className = "espan";
	                r = false;
	            }
	            $('daysp').innerHTML = "";
	            $('daysp').className = "";
	            if ($(formId).days.value == '') {
	                $('daysp').innerHTML = "天数不能为空";
	                $('daysp').className = "espan";
	                r = false;
	            }
	            
	            $('placeidp').innerHTML = "";
	            $('placeidp').className = "";
	            if ($(formId).placeid.value == '') {
	                $('placeidp').innerHTML = "请选择场地";
	                $('placeidp').className = "espan";
	                r = false;
	            }
	            return r;
		
		},
		addplaceSubmitForm : function(formId, url) {
			var myForm = $(formId);
			myForm.set('send', {
				url : url,
				method : 'post',
				onComplete : function(txt) {
					txt = txt.trim();
					var json = JSON.decode(txt);
					if (json.showMsg) {
						ED.util.showMsg(json.msg, 'info');
					}
					if (json.redirct) {
						if (json.nextUrl <= 1) {
							window.setTimeout("location.href=location.href;", 1500);
						} else {
							window.setTimeout("location.href='" + json.nextUrl
									+ "';", 1500);
						}
					}
				}
			});
			myForm.send();
		}		
	}
}
function checkFormpw() {
	var v = $("upasswd");
	if ($("passwd").value == $("passwdold").value) {
		v.innerHTML = "新密码不能与原密码一样";
		return false;
	}
	if ($("passwd1").value != "") {
		if ($("passwd").value.length < 4) {
			v.innerHTML = "请输入4-16位密码";
			return false;
		} else {
			if ($("passwd").value != $("passwd1").value) {
				v.innerHTML = "密码不匹配，请重新输入";
				return false;
			} else {
				return true;
			}
		}
	} else {
		v.innerHTML = "密码不匹配，请重新输入";
		return false;
	}
}

function joinFans(uname) {
	var url = "/user/" + uname + "/fans/joinfans";
	new Request.HTML({
		url : url,
		method : 'post',
		update : 'joingroupdiv'
	}).post();
	return false;
}

/**
 * facebox共用
 * 
 * @param url
 * @return
 */
function addplace_box() {
	var box = new Facebox({
		title : "添加场地",
		width: 800,
        height:250,
		url : '/place/showCategoryForaddplace.do',
		submitValue : "添加",
		submitFunction : function() {
			ED.User.record.addplaceSubmitForm('addplaceForm_facebox', 'doaddplace');
			return false;
		}
	});
	box.show();
}
/**
 * facebox登录
 * 
 * @param url
 * @return
 */
function login_box(url) {
	var myAjax = new Request({
		url : '/common/faceboxlogin.jsp?returnurl=' + (url||''),
		method : 'post',
		onSuccess : function(txt, xmldoc) {
			var box = new Facebox({
				title : "用户登录",
				message : txt,
				submitValue : "登录",
				submitFunction : function() {
					ED.User.loginSubmitForm('loginForm_facebox', '/login');
					return false;
				}
			});
			box.show();
		}
	}).send();
}
/**
 * facebox注册
 * 
 * @param url
 * @return
 */
function reg_box(url) {
	var myAjax = new Request({
		url : '/common/faceboxreg.jsp',
		method : 'post',
		onSuccess : function(txt, xmldoc) {
			var box = new Facebox({
				title : "用户注册",
				message : txt,
				submitValue : "注册",
				submitFunction : function() {
					ED.User.reg1SubmitForm('addForm_facebox', '/reg?s=do', url);
					return false;
				}
			});
			box.show();
		}
	}).send();
}

// user.js 结束==================================================================

// pic.js 开始===================================================================

/**
 * ImgD 图片对象 maxwidth 最大宽度，0：表示不限制 maxheight 最大高度，0：表示不限制
 */
function autoImage(ImgD, maxwidth, maxheight) {
	ED.pic.autoImage(ImgD, maxwidth, maxheight);
}

/**
 * 设置默认图片
 */
function setDefault(ImgD, type) {
	ED.pic.setDefault(ImgD, type);
}

function checkDel() {
	return confirm("您确定要删除此图片？");
}
/**
 * 删除相片
 * 
 * @param url
 * @return
 */
function delPicUrl(url) {
	if (checkDel()) {
		ED.ajax.submitUrl(url);
	}
}

// 全选，全不选的js
function chgselect(selectTag, names) {
	if (selectTag.checked)
		checkAll(names);
	else
		clearAll(names);
}

function checkAll(names) {
	var obj = document.getElementsByName(names);
	for (var i = 0; i < obj.length; i++) {
		if (obj[i].disabled == false)
			obj[i].checked = true;
	}
}

function clearAll(names) {
	var obj = document.getElementsByName(names);
	for (var i = 0; i < obj.length; i++) {
		if (obj[i].disabled == false)
			obj[i].checked = false;
	}
}

// 图片修改页面的提交判断
function checkModifyForm() {
	var title = $("title").value;
	var info = $("info").value;
	if (title.length < 1) {
		alert("对不起，请填写相片标题");
		$("title").focus();
		return false;
	}
	if (title.length > 30) {
		alert("标题不能超过30字符");
		$("title").focus();
		return false;
	}
	if (info.length > 500) {
		alert("描述不能超过500字符");
		$("info").focus();
		return false;
	}
	// if(info.length<1){
	// alert("请填写相片说明");
	// $("info").focus();
	// return false;
	// }
	var gid = document.getElementsByName("gid");
	var gids = "";
	for (var i = 0; i < gid.length; i++) {
		if (gid[i].checked) {
			if (gids == "")
				gids = gid[i].value;
			else
				gids = gids + "|" + gid[i].value;
		}
	}
	$("gids").value = gids;
	return true

}

function checkFormResult() {
	var filenum = document.getElementById("filenum").value;
	for (i = 0; i < filenum; i++) {
		var title = document.getElementById("title" + (i + 1)).value;
		var info = document.getElementById("info" + (i + 1)).value;

		if (title.length > 30) {
			alert("标题不能超过30字符");
			return false
		} else {
			if (info.length > 500) {
				alert("描述不能超过500字符");
				return false
			}
		}
	}
	$('subbutton').disabled = true;
	return true;
}

function checkFormUpload_advanced() {
	if ($('files').value == "") {
		alert("请先上传文件");
	} else {
		$('form-demo').submit();
	}

}

function checkFormUpload() {
	var file1 = document.getElementById("file1").value;
	var file2 = document.getElementById("file2").value;
	var file3 = document.getElementById("file3").value;
	var file4 = document.getElementById("file4").value;
	var file5 = document.getElementById("file5").value;
	if (file1.length < 1 && file2.length < 1 && file3.length < 1
			&& file4.length < 1 && file5.length < 1) {
		alert("请选择上传的文件");
		return false;
	}
	var errorExt = "对不起，只能上传gif,jpg,png文件，请重新选择文件";
	if (checkExt(file1) < 0) {
		alert(errorExt);
		return false;
	}
	if (checkExt(file2) < 0) {
		alert(errorExt);
		return false;
	}
	if (checkExt(file3) < 0) {
		alert(errorExt);
		return false;
	}
	if (checkExt(file4) < 0) {
		alert(errorExt);
		return false;
	}
	if (checkExt(file5) < 0) {
		alert(errorExt);
		return false;
	}

	return true;
}

/**
 * 判断是否为合法的图片文件
 */
function checkExt(files) {
	if (files.length < 1)
		return 0;
	var exts = "begin,gif,jpg,png,end";
	var ext = "," + files.substring(files.lastIndexOf(".") + 1, files.length)
			+ ",";
	ext = ext.toLowerCase();
	if (exts.indexOf(ext) < 0) {
		return -1;
	} else
		return 1;
}

function checkAvatarExt(files) {
	if (files.length < 1) {
		alert("请选择需要上传的头像");
		return false;
	}
	var exts = "begin,jpg,png,jpeg,end";
	var ext = "," + files.substring(files.lastIndexOf(".") + 1, files.length)
			+ ",";
	ext = ext.toLowerCase();
	if (exts.indexOf(ext) < 0) {
		alert("头像只能使用JPG，PNG格式的图片");
		return false;
	} else {
		return true;
	}
}



// 上传处理
function startProgress(s2) {
	if (checkFormUpload()) {// 判断文件后缀等条件
		new Fx.Tween($('progressBar')).set('opacity', 1);
		$('progressBarText').innerHTML = ' 上传处理进度: 0%';
		$('uploadButton').disabled = true;
        if(s2){
            setInterval("refreshUploadStatus(true)", 1000);
        }else{
            setInterval("refreshUploadStatus()", 200);
        }
		return true;
	} else
		return false;
}

/**
 * 上传文件的js
 */
function refreshUploadStatus(s2) {
	var url = s2?"/place/progress.do":"/pic/doupload";
	var myAjax = new Request.JSON({
		url : url,
		method : 'post',
		data : "uploadStatus=true",
		onComplete : s2?updateUploadstatus1:updateUploadstatus
	}).send();
}

function updateUploadstatus(uploadInfo, txt) {
	if (uploadInfo.UploadTotalSize != 0) {
		var progressPercent = Math.ceil((uploadInfo.ReadTotalSize)
				/ uploadInfo.UploadTotalSize * 100);
		$('progressBarText').innerHTML = ' 上传进度: '
				+ progressPercent
				+ '% ['
				+ Math.ceil(uploadInfo.ReadTotalSize / 1024)
				+ '/'
				+ Math.ceil(uploadInfo.UploadTotalSize / 1024)
				+ ' K]'
				+ ' 耗时: '
				+ Math.ceil(uploadInfo.ProcessRunningTime
						- uploadInfo.ProcessStartTime) / 1000 + ' s';
		$('totalProgressBarBoxContent').style.width = parseInt(progressPercent
				* 3)
				+ 'px';
	}
}

function updateUploadstatus1(uploadInfo, txt) {
    if (uploadInfo.bytesTotal != 0) {
        var progressPercent = Math.ceil(uploadInfo.bytesSent
                / uploadInfo.bytesTotal * 100);      
        $('progressBarText').set("text",' 上传进度: '
                + progressPercent
                + '% ['
                + Math.ceil(uploadInfo.bytesSent / 1024)
                + '/'
                + Math.ceil(uploadInfo.bytesTotal / 1024)
                + ' K]'
                + ' 耗时: '
                + Math.ceil(uploadInfo.usedTime) + ' s');
        $('totalProgressBarBoxContent').style.width = parseInt(progressPercent
                * 3)
                + 'px';
    }
}

// 取消上传处理
function cancelProgress() {
	$('cancelUploadButton').disabled = true;
	var url = "/pic/doupload";
	var myAjax = new Request({
		url : url,
		method : 'post',
		parameters : "cancelUpload=true",
		onSuccess : updateCancelStatus
	}).send();
}

function updateCancelStatus(txt, xmldoc) {
	eval("uploadInfo = " + txt);
	$('progressStatusText').innerHTML = ' 反馈状态: ' + uploadInfo.status;
	if (msgInfo.cancel == 'true') {
		alert('删除成功');
		window.location.reload();
	};
};

var ScrollPic = new Class({
	'Implements' : [Options],
	intervalVar : 0,
	firstPic : null,// 缩略图区域的第一个img对象
	lastPic : null,// 缩略图区域的最后一个img对象
	firstPos : 0,// 缩略图区域第一张照片在pics中的位置
	lastPos : 0,// 缩略图区域最后一张照片在pics中的位置
	browse : '',
	loadPicCounter : 0,
	options : {
		pics : new Array(),
		speed : 1, // 速度，越大越慢
		spec : 1, // 每次滚动的间距, 越大滚动越快
		minOpa : 80, // 滤镜最小值
		maxOpa : 100, // 滤镜最大值
		picWidth : 80,
		spa : 6, // 缩略图区域补充数值
		tailSpa : 10,// //缩略图区域的div的结尾补充宽度
		w : 0,// 缩略图区域的div宽度
		width : 0,// 缩略图区域的宽度
		picNum : 0,// 缩略图的个数
		currentPicId : 0,// 当前照片的ID
		showPicNum : 8
	// 初始化显示照片的数量
	},
	initialize : function(target, options) {
		this.setOptions(options);
		this.target = $(target);
		var scrollPic = this;
		// console.log(this.target, this.options.pics);
		this.browse = window.navigator.appName.toLowerCase();
		// this.options.spec = (this.browse.indexOf("microsoft") > -1) ?
		// this.options.spec : ((this.browse.indexOf("opera") > -1) ?
		// this.options.spec * 5 : this.options.spec * 5);
		var currentPos = 0;
		this.firstPos = 0;
		this.lastPos = this.options.pics.length - 1;
		this.options.picNum = this.options.pics.length;
		for (var i = 0; i < this.options.pics.length; i++) {
			if (this.options.pics[i].id == this.options.currentPicId) {
				currentPos = i;
				break;
			}
		}
		// 设置下一张的url
		if (currentPos == 0) {
			$('mainphoto').parentNode.parentNode.href = './'
					+ this.options.pics[currentPos + 1].id;
			$('mainphoto').className = "rightCursor";

		}
		// 设置上一张和下一张的url
		else if (currentPos < this.lastPos) {
			var image = new Image();
			image.src = $('mainphoto').src;
			setTimeout(function() {
				image.onerror = function() {
					image.src = "/img/no_pic.gif";
				};
			}, 100)
			setTimeout(function() {
				image.src = $('mainphoto').src;
				w = image.width;
				h = image.height;
				document.getElementById("divleft").style.width = w / 2 + "px";
				document.getElementById("divleft").style.height = h + "px";
				document.getElementById("divright").style.width = w / 2 + "px";
				document.getElementById("divright").style.height = h + "px";

				document.getElementById("divall").style.width = w + "px";
				document.getElementById("divleft").className = "leftCursor";
				document.getElementById("divright").className = "rightCursor";

				// document.getElementById("divleft").setAttribute("onclick",
				// "$('photo_a').href='./"+ options.pics[currentPos-1].id+"'");
				// document.getElementById("divright").setAttribute("onclick","window.location='./"+
				// options.pics[currentPos+1].id+"'");
				document.getElementById("divleft").onclick = function() {
					$('photo_a').href = "./" + options.pics[currentPos - 1].id;
				};
				document.getElementById("divright").onclick = function() {
					$('photo_a').href = "./" + options.pics[currentPos + 1].id;
				};
			}, 800);
		}
		// 设置上一张的url
		else if (currentPos == this.lastPos) {
			$('mainphoto').parentNode.parentNode.href = './'
					+ this.options.pics[currentPos - 1].id;
			$('mainphoto').parentNode.parentNode.title = '上一张';
			$('mainphoto').className = "leftCursor";
		}

		// 计算小图片列表的开始位置和结束位置
		if (currentPos > 2) {
			this.firstPos = currentPos - 2;
		}
		if (currentPos < this.options.pics.length - this.options.showPicNum / 2) {
			this.lastPos = currentPos + this.options.showPicNum / 2;
		}
		if (this.lastPos - this.firstPos < this.options.showPicNum) {
			this.lastPos = this.lastPos
					+ (this.options.showPicNum - (this.lastPos - this.firstPos));
			if (this.lastPos > this.options.pics.length) {
				this.lastPos = this.options.pics.length;
			}
			if (this.lastPos - this.firstPos < this.options.showPicNum) {
				this.firstPos = this.firstPos
						- (this.options.showPicNum - (this.lastPos - this.firstPos));
				if (this.firstPos < 0) {
					this.firstPos = 0;
				}
			}
		}
		for (var i = this.firstPos; i < this.lastPos; i++) {
			this.lastPic = this.appendImg(pics[i]);
			if (!this.firstPic) {
				this.firstPic = this.lastPic;
			}
		}
		$('showArea').style.width = this.options.w + this.options.tailSpa
				+ 'px';

		$('goleft').onmouseover = function() {
			this.src = '/image/goleft2.gif';
			scrollPic.intervalVar = setInterval(scrollPic.goleft,
					scrollPic.options.speed);
		}
		$('goleft').onmouseout = function() {
			this.src = '/image/goleft.gif';
			clearInterval(scrollPic.intervalVar);
		}
		$('goright').onmouseover = function() {
			this.src = '/image/goright2.gif';
			scrollPic.intervalVar = setInterval(scrollPic.goright,
					scrollPic.options.speed);
		}
		$('goright').onmouseout = function() {
			this.src = '/image/goright.gif';
			clearInterval(scrollPic.intervalVar);
		}
	},
	goleft : function() {
		var t = $('photos').scrollLeft;
		$('photos').scrollLeft -= scrollPic.options.spec;
		if (t == $('photos').scrollLeft) {
			if (scrollPic.firstPos > 0) {
				scrollPic.appendLeftImg();
			}
		}
	},
	goright : function() {
		var t = $('photos').scrollLeft;
		$('photos').scrollLeft += scrollPic.options.spec;
		// 根据条件加载新的图片
		if (t == $('photos').scrollLeft) {
			if (scrollPic.lastPos < scrollPic.options.picNum) {
				scrollPic.appendRightImg();
			}
		}
	},
	setOpacity : function(e, n) {
		if (this.browse.indexOf("microsoft") > -1)
			e.style.filter = 'alpha(opacity=' + n + ')';
		else
			e.style.opacity = n / 100;
	},

	appendLeftImg : function() {
		if (this.firstPos > 0) {
			if (scrollPic.loadPicCounter > 10) {
				scrollPic.loadPicCounter = 0;
				scrollPic.firstPos -= 1;
				scrollPic.firstPic = scrollPic
						.insertImg(pics[scrollPic.firstPos]);
				$('showArea').style.width = scrollPic.options.w
						+ scrollPic.options.tailSpa + 'px';
			} else {
				scrollPic.loadPicCounter++;
			}
		}
	},

	insertImg : function(imgObj) {
		var img = this.buildImg(imgObj);
		$('showArea').insertBefore(img, scrollPic.firstPic);
		scrollPic.options.w += this.options.picWidth + scrollPic.options.spa;
		return img;
	},

	appendRightImg : function() {
		if (scrollPic.lastPos < (this.options.picNum - 1)) {
			if (scrollPic.loadPicCounter > 10) {
				scrollPic.loadPicCounter = 0;
				scrollPic.lastPos += 1;
				scrollPic.lastPic = scrollPic
						.appendImg(pics[scrollPic.lastPos]);
				$('showArea').style.width = scrollPic.options.w
						+ scrollPic.options.tailSpa + 'px';
			} else {
				scrollPic.loadPicCounter++;
			}
		}
	},

	appendImg : function(imgObj) {
		var img = this.buildImg(imgObj);
		$('showArea').appendChild(img);
		this.options.w += this.options.picWidth + this.options.spa;
		return img;
	},

	buildImg : function(imgObj) {
		var scrollPic = this;
		var div = document.createElement("div");
		var img = document.createElement("img");
		img.src = imgObj.url;
		// img.width = this.options.picWidth;
		this.setOpacity(img, scrollPic.options.minOpa);

		img.onmouseout = function() {
			scrollPic.setOpacity(this, scrollPic.options.minOpa);
		}
		img.onmouseover = function() {
			scrollPic.setOpacity(this, scrollPic.options.maxOpa);
		}
		img.onload = function() {
			ED.pic.autoImage(this, 80, 80);
		}
		img.onerror = function() {
			ED.pic.setDefault(this, 'pic');
		}
		img.onclick = function() {
			location.href = './' + imgObj.id;
		}
		div.appendChild(img);
		div.className = "item";
		return div;
	}
});
ScrollPic.implement(new Events, new Options);

// 图片高级上传
function fancyUploadShow(opt) {
	opt = opt || {};
	var fn = false;
	if (opt.callback) {
		fn = function(file, response) {
			var json = new Hash(JSON.decode(response, true) || {});
			if (json.get('status') == '1') {
				file.element.addClass('file-success');
				file.info
						.set('html', '<strong>图片上传：</strong> '
								+ json.get('width') + ' x '
								+ json.get('height') + 'px');
				opt.callback(json)
			} else {
				file.element.addClass('file-failed');
				file.info.set('html', '<strong>发生错误：</strong> '
						+ (json.get('error') ? (json.get('error') + ' #' + json
								.get('code')) : response));
			}
		}
	}
	/**
	 * FancyUpload Showcase
	 * 
	 * @license MIT License
	 * @author Harald Kirschner <mail [at] digitarald [dot] de>
	 * @copyright Authors
	 */
	window.addEvent('domready', function() { // wait for the content
				// our uploader instance

				var up = new FancyUpload2($('demo-status'), $('demo-list'), { // options
					// object
					// we console.log infos, remove that in production!!
					verbose : true,

					// url is read from the form, so you just have to change one
					// place
					url : opt.url || 'doupload_advanced',

					// path to the SWF file
					path : '/js/fancyupload/source/Swiff.Uploader.swf',

					// remove that line to select all files, or edit it, add
					// more items
					typeFilter : {
						'Images (*.jpg, *.jpeg, *.gif, *.png)' : '*.jpg; *.jpeg; *.gif; *.png'
					},

					// this is our browse button, *target* is overlayed with the
					// Flash movie
					target : 'demo-browse',

					// graceful degradation, onLoad is only called if all went
					// well with Flash
					onLoad : function() {
						$('demo-status').removeClass('hide'); // we show the
						// actual UI
						$('demo-fallback').destroy(); // ... and hide the
						// plain form
						// We relay the interactions with the overlayed flash to
						// the link
						this.target.addEvents({
							click : function() {
								return false;
							},
							mouseenter : function() {
								this.addClass('hover');
							},
							mouseleave : function() {
								this.removeClass('hover');
								this.blur();
							},
							mousedown : function() {
								this.focus();
							}
						});

						// Interactions for the 2 other buttons

						$('demo-clear').addEvent('click', function() {
							up.remove(); // remove all files
							return false;
						});

						$('demo-upload').addEvent('click', function() {
							up.start(); // start upload
							return false;
						});
					},

					// Edit the following lines, it is your custom event
					// handling

					/**
					 * Is called when files were not added, "files" is an array
					 * of invalid File classes.
					 * 
					 * This example creates a list of error elements directly in
					 * the file list, which hide on click.
					 */
					onSelectFail : function(files) {
						files.each(function(file) {
							new Element('li', {
								'class' : 'validation-error',
								html : file.validationErrorMessage
										|| file.validationError,
								title : MooTools.lang.get('FancyUpload',
										'removeTitle'),
								events : {
									click : function() {
										this.destroy();
									}
								}
							}).inject(this.list, 'top');
						}, this);
					},

					/**
					 * This one was directly in FancyUpload2 before, the event
					 * makes it easier for you, to add your own response
					 * handling (you probably want to send something else than
					 * JSON or different items).
					 */
					onFileSuccess : fn || function(file, response) {
						var json = new Hash(JSON.decode(response, true) || {});
						if (json.get('status') == '1') {
							file.element.addClass('file-success');
							file.info.set('html', '<strong>图片上传：</strong> '
									+ json.get('width') + ' x '
									+ json.get('height') + 'px');
							// todo
							$('files').value = $('files').value
									+ json.get('files') + ",";
							$('filenames').value = $('filenames').value
									+ json.get('filenames') + ",";
							$('sizes').value = $('sizes').value
									+ json.get('sizes') + ",";
							$('rpath').value = json.get('rpath');

						} else {
							file.element.addClass('file-failed');
							file.info.set('html', '<strong>发生错误：</strong> '
									+ (json.get('error')
											? (json.get('error') + ' #' + json
													.get('code'))
											: response));
						}
					},

					/**
					 * onFail is called when the Flash movie got bashed by some
					 * browser plugin like Adblock or Flashblock.
					 */
					onFail : function(error) {
						switch (error) {
							case 'hidden' : // works after enabling the movie
								// and clicking refresh
								alert('请在您的浏览器里解除对上传工具的屏蔽（一般在广告屏蔽设置里）并重新刷新。');
								break;
							case 'blocked' : // This no *full* fail, it works
								// after the user clicks the
								// button
								alert('为了使用高级上传工具，请在浏览器里解除对Flash的屏蔽。');
								break;
							case 'empty' : // Oh oh, wrong path
								alert('所需的文件没有找到，请耐心等待我们解决此问题。');
								break;
							case 'flash' : // no flash 9+ :(
								alert('为了使用高级上传工具，请安装最新版本的Flash插件。')
						}
					}

				});

			});
}

// pic.js 结束===================================================================

// event.js 开始===================================================================
function createEventMavSuggest(){ 
	var predict = new MavSuggest.Request.JSON({
		'elem':'address',
		'tabSelect': false,
		'url':'/place/searchPlace.do',
		'requestVar':'address',
		'width': 'auto',
		'onSelect':function(obj){
			$("province").disabled = true;
			$("zone").disabled = true;
			$("placeid").value = obj.id;
			var myAjax = new Request({
				url : '/place/getZoneidById.do?id='+obj.id,
				method : 'post',
				onSuccess : function(txt, xmldoc) {
					txt = txt.trim();
					txtx=txt.split("|");
					if(txtx.length>=2){ 
						ED.select.select('province',txtx[1]);
						ED.select.changeZone("/common/zonexml.jsp","province","zone","pid",txtx[1],txtx[0]);
						
					}
				}
			}).send();
		},
		'onRequest':function(obj){
			$("province").disabled = false;
			$("zone").disabled = false;
			$("placeid").value = '';
		},
		'onShow':function(obj){
			$("province").disabled = false;
			$("zone").disabled = false;
			$("placeid").value = '';
		} 
	 
	});	
}
//event.js 结束===================================================================

