//<![CDATA[
//reference /common/jsoul.base.js
//JSoul.plugin("uc/script/jsoul.mask.js", "mask");
//JSoul.plugin("uc/script/jsoul.menu.js", "menu");
JSoul.$(function(){
    JSoul("#searchForm").initsearchForm();
	$("#trendMenu").initTrendMenu($("#trendContent"), 30, true);
	JSoul("#albumList").initColScrollGroup(220, 3, "ul","li");
	JSoul("#layoutList").initColScrollGroup(220, 3, "ul","li");
	JSoul("#indoorList").initColScrollGroup(220, 3, "ul","li");
	JSoul("#commContent").initComment("#pageControl", "#feedback");
	JSoul("#navsMenu").initNavChanger(JSoul("#navsContent").find("@div,className,*inwrap"));
	JSoul("#gmapWrap").initGmapWrap();
	$("#lightDialog").initLightBox(JSoul("@img,require,light"));
	var loanDialog = $("#loanDialog").initdefaultDialog(JSoul("#loanCalculate"));
	if(window.videoArgs){
		var player = JSoul("#flashBox").insertFlash(videoArgs);
		JSoul("#videoList").initColScrollGroup(100, 4, "ul","li").initVideoChanger(player.get(0));
	}
	//only for IE 6
	if (!window.XMLHttpRequest) {
		JSoul.Onresize.register("fixedBar.loanDialog", loanDialog.initFixedTop(200), "fixedPosition");
		JSoul.Onresize.register("fixedBar.lightBox", $("#lightDialog").initFixedTop(200), "fixedPosition");
	}
	
	JSoul("#booking").initBooking();
});
/*******************JSoul原型扩展方法 [FLASH]******************/
/**
 * JSoul原型扩展方法 [方法类型]
 */
JSoul.fn.extend({
    /**
     * 初始化更换FLASH
	 * @param {Object} playe FLASH播放器对象
     * @return JSoul
     */
    initVideoChanger: function(playe){
		var choosed = null; 
		this.items.find("a").bindEvent({
			onclick: function(e){
				if(choosed != this){
					playe.sendEvent("load", {file:this.rev,image:this.rel});
					choosed.className = "";
					this.className = "choosed";
					choosed = this;
				}
			}
		}).each(function(i){
			if(this.className == "choosed"){
				choosed = this;
			}	
		});
        return this;
    }
});
/*******************JSoul原型扩展方法 [Gmap]******************/
/**
 * JSoul原型扩展方法 [方法类型]
 */
JSoul.fn.extend({
    /**
     * 初始化Gmap
     * @return JSoul
     */
    initGmapWrap: function(){
		if(this.length > 0 && window.point){
			var map = null;
			this.get(0).showCallback = function(){
				if(map == null){
					map = new GMap2(this);
					var customUI = map.getDefaultUI();
					customUI.maptypes.hybrid = false;
					map.setUI(customUI);
					if(window.point instanceof GLatLng){
						var objpoint = window.point;
					}else{
						var objpoint = new GLatLng(window.point[0], window.point[1]);
					}
					var marker = new GMarker(objpoint);
					map.addOverlay(marker);
				}
				map.setCenter(objpoint, 12);
			}	
		}
        return this;
    }
});
/*******************JSoul原型扩展方法 [用户留言]******************/
/**
 * JSoul原型扩展方法 [方法类型]
 */
JSoul.fn.extend({
    /**
     * 初始化用户留言对象
	 * @param {String} pageSelector 分页对象选择表达式
	 * @param {String} postSelector 发表留言对象选择表达式
     * @return JSoul
     */
	initComment: function(pageSelector, postSelector){
		var main = this.extend({
			page: JSoul(pageSelector).find("dl").initPageControl(this),
			post: JSoul(postSelector).initPostForm(this),
			turnPage: function(html){
				this.innerHtml(html);
			},
			insertMsg: function(html){
				this.innerHtml(html + this.innerHtml());
			}
		});
		return this;
	},
    /**
     * 分页对象
     * @param {JSoul} main 内容列表对象
     * @return JSoul
     */
	initPageControl: function(main){
		var self = this.extend({
			fresh: function(html){
				this.innerHtml(html);
				this.initPageControl(main);
			},
			links: this.find("a").bindEvent({
				onclick: function(e){
					$.$xJson(this.href, function(json){
						if(json.data){
							main.turnPage(json.data);
						}
						if(json.Pagination){
							self.fresh(json.Pagination);
						}
					}, null);
					return false;	
				}
			})
		});
		return this;
	},
    /**
     * 用户评论验证
     * @param {JSoul} main 内容列表对象
     * @return JSoul
     */
    initPostForm: function(main){
		var self = this.bindEvent({
			onsubmit: function(e){
				if(this["comment"].value.trim().length < 6){
					alert("评论内容不能少于6个字！");
					this["comment"].focus();
				}else{
					var form = this;
					$.$xJson(this.action, function(json){
						if(json == 1){
							var msg = "<dt><span>[刚刚]</span>我 说：</dt><dd><p>"+form["comment"].value+"</p></dd>";
							main.insertMsg(msg);
							form["comment"].value = "";
						}else if(json == 5){
							alert("你还没有登陆，请先登录！");
						}else{
							alert("发表留言失败");
						}
					}, {act:"post",comment:this["comment"].value.trim()});
					
				}
				return false;
			}
		});
        return this;
    }
});

/*******************JSoul原型扩展方法 [新房预订]******************/
/**
 * JSoul原型扩展方法 [方法类型]
 */
JSoul.fn.extend({
    /**
     * 初始化Gmap
     * @return JSoul
     */
    initBooking: function(){
		if(this.length > 0){
			var bookWarp = JSoul("#bookList");
			var self = this.bindEvent({
				onsubmit: function(e){
					var thisobj = this;
					if(this["Contacter"].value.length < 2){
						alert("请填写联系人！");return false;
					}
					if(this["Phone"].value.length < 2 && this["Email"].value.length < 2 && this["QQ"].value.length < 2){
						alert("电话、邮箱、QQ至少要填写其中一种联系方式！");return false;
					}
					this["submit"].disabled = true;
					JSoul.$xJson(this.action, function(json){
						alert(json.returnInfo);
						if(json.isSucceed){
							bookWarp.innerHtml("<li>"+thisobj["Contacter"].value+" 有意购房  [刚刚]</li>" + bookWarp.innerHtml());
						}
						thisobj["submit"].disabled = false;
					}, self.getQuery());
					return false;
				}
			});
		}
        return this;
    }
});
//]]>