
var SHCY = (typeof SHCY=="object")?SHCY:{};
$(document).ready(function(){
	SHCY.common = {};
    SHCY.common.setSize = function(img, maxWidth, maxHeight, expand){
        var w = img.width;
        var h = img.height;
        var mw = maxWidth;
        var mh = maxHeight;
        
        if (!expand && h < mh) {
            if ($(img) && $(img).parent() && h < $(img).parent().height()) {
                img.style.margin = ($(img).parent().height() - h) / 2 + "px 0 0 0";
            }
        }
		
        if (h < mh && w < mw && expand) {
            //放大原图
            if (h > w) {
                //以高度为标
                w = Math.floor(w * (mh / h));
                img.height = mh;
                img.width = w;
            }
            else {
                //以宽度为标
                h = Math.floor(h * (mw / w));
                img.height = h;
                img.width = mw;
            }
            
        }
        else {
            //缩小原图
            if (w > mw) {
                //以宽度为标
                h = Math.floor(h * (mw / w));
                img.height = h;
                img.width = mw;
            }
            w = img.width;
            h = img.height;
            
            if (h > mh) {
                //以高度为标
                w = Math.floor(w * (mh / h));
                img.height = mh;
                img.width = w;
            }
        }
    };
	
    SHCY.addStar = function(max, n){
        var num;
        var img = "";
        if (max <= 0) {
            num = 1;
        } else {
            num = n / (max * 1.0);
            if (num <= 0.2) {
                //统一一颗星
                num = 0.1;
            }else if (num >= 1.0) {
               //统一五颗星
               num = 1.0;
            }
        }
        
        for (var i = 0; i < num; i += 0.2) {
            img += "<img src='/SHCY/common/images/star.png'/>";
        }
        
        return img;
    }
});


/**
 * 截取字符串前N个子字符串，如果原字符串大于N，测在最后+上.. ；
 * 
 * @param {String} str 原字符串；
 * @param {int} len 长度N；
 * 
 * @return {String} 返回截取后的字符串；
 * 
 * @author 梁志宏；
 */
SHCY.subTitle = function(str,len){
	var s = str;
	
	if(str && str.length > len){		
		s = str.substring(0,len)+'..';
	}
	
	return s;
}

/**
 * 往页面添加菜单，菜单位于类为.center元素前；
 * 
 * @return {jQuery} 返回菜单本身；
 * 
 * @author 梁志宏；
 */
SHCY.addTopMenu = function(){
	return $("<div></div>").addClass("topmenu").insertBefore(".center").load("/SHCY/common/html/topmenu.html");
}



/**
 *添加侧栏DIV元素，若存在，侧返回；
 * 
 * @return {jQuery} 返回侧栏元素的jQuery包装对象；
 * 
 * @author 梁志宏；
 */
SHCY.addRightSide = function(){
	var rs = $(".rightSide");
	if(!rs.length){
		rs = $("<div></div>").addClass("rightSide").insertAfter(".center");
	}
	return rs;
}

/**
 *添加4个广告元素；
 * 
 * @param {String} callback 回调函数
 * 
 * @return {jQuery} 返回4个广告元素的包装元素的jQuery对象；
 * 
 * @author 梁志宏；
 */
SHCY.addAD = function(callback){
	var n = $("<div><div/>").load("/SHCY/common/html/r_ad.html",function(){
		SHCY.addRightSide().append(this);
		
		SHCY.getAD();	
		
		if(callback) callback();
	});	
	
	return n;
}

/**
 *添加最新栏目框；
 * 
 * @param {String} callback 回调函数
 * 
 * @return {jQuery} 返回该元素的包装元素的jQuery对象；
 * 
 * @author 梁志宏；
 */
SHCY.addLatest = function(callback){
	var n = $("<div><div/>").load("/SHCY/common/html/r_latest.html",function(){		
		SHCY.addRightSide().append($(this).find(".r_content").clone());
		
		if($('#PageID').attr('PageID').indexOf("provdem") > -1){
			SHCY.addRightSide().append($(this).find(".r_content"));
		}
		
		SHCY.getLastestInfo();
		
		if(callback) callback();
	});	
	
	return n;
}

/*SHCY.getAdAndInfo = function(){	
	SHCY.getLastestInfo();
	SHCY.getAD();
}*/

/**
 *得到适合该专题的广告；
 *  
 * @author 梁志宏；
 */
SHCY.getAD = function(){
	var params = {};
	params.pageid = $('#PageID').attr('PageID');
	
	var ts = [
		{t:"alliance",url:"/SHCY/alliance/alliance1.html?tm_id=",title:"最新企业"},
		{t:"product",url:"/SHCY/product/product2.html?tp_id=",title:"最新产品"},
		{t:"patent",url:"/SHCY/patent/patent2.html?pt_id=",title:"最新专利"},
		{t:"solution",url:"/SHCY/solution/solution2.html?ts_id=",title:"最新解决方案"},
		{t:"testexamorg",url:"/SHCY/testexamorg/testexamorg2.html?id=",title:"最新检验检测机构"}		
	] 
	
	$.getJSON('/SHCY/advertise/GetAdvertise?'+$.param(params),function(data){
		var d = data.data;	
		
		if(!d) return;
		
		var ads = $(".r_ad a");
		
		var type = null;
		$.each(ts,function(i,val){
			if(params.pageid.indexOf(val.t) > -1){
				type = val;
			}
		});		
		
		$.each(d,function(i,val){
			var ad = $(ads[i]);
			
			ad.find("img").attr("src","/SHCY/advertise/GetAdvertisePhoto?id="+val.id+"&"+$.param(params));
			
			if(val.fkid){
				ad.attr("href",type.url+val.fkid).attr("target","_blank");
			}else{
				ad.attr("href","../advertise/advertiseDetail.html?type="+type.t+"&id="+val.id).attr("target","_blank");
			}
			
			ad.click(function(){
				var href = $(this).attr("href");
				
				$.get("/SHCY/advertise/UpdateAdCount?type="+type.t+"&id="+val.id,function(){
					window.location = href;
				});
				
				return false;
			});
		});
	});
}


/**
 *得到适合该专题的最新条目信息；
 *  
 * @author 梁志宏；
 */
SHCY.getLastestInfo = function(){
	var params = {};
	params.pageid = $('#PageID').attr('PageID');
	
	var ts = [
		{t:"alliance",url:"/SHCY/alliance/alliance1.html?tm_id=",title:"最新企业"},
		{t:"product",url:"/SHCY/product/product2.html?tp_id=",title:"最新产品"},
		{t:"patent",url:"/SHCY/patent/patent2.html?pt_id=",title:"最新专利"},
		{t:"solution",url:"/SHCY/solution/solution2.html?ts_id=",title:"最新解决方案"},
		{t:"testexamorg",url:"/SHCY/testexamorg/testexamorg2.html?id=",title:"最新检验检测机构"},
		{t:"personnel",url:"/SHCY/personnel/personnel2.html?id=",title:"最新人才"},
		{t:"policy",url:"/SHCY/policy/policy2.html?id=",title:"最新政策法规"},
		{t:"provdem",url:["/SHCY/provdem/provdem2.html?provdem=1&pd_id=","provdem2.html?provdem=2&pd_id="],title:["最新需求","最新供应"]}		
	]
		
	$.getJSON('/SHCY/common/GetLatestInfo?'+$.param(params),function(data){
		var data = data.data;
		
		if(!data) return;
		
		var content = $($('.r_content')[0]);
		
		function insertEntry(c,url,title,d){
			var ul = c.find('ul');
			
			$.each(d,function(i,val){
				ul.append(
					$('<li></li>').append(
						$("<div></div>")
						.append($("<a></a>")
							  .attr("href",url+val.id)
							  .attr("target","_blank")
				              .attr("title",val.name)
				              .text(SHCY.subTitle(val.name,13))))
				);		
			})
			
			c.find(".r_title").text(title);
		}	
			
		$.each(ts,function(i,v){
			if(params.pageid.indexOf(v.t) > -1){
				if(v.t == ts[7].t){
					insertEntry(content,v.url[0],v.title[0],data.demand);	
					insertEntry($($('.r_content')[1]),v.url[1],v.title[1],data.provide);	
				}else{
					insertEntry(content,v.url,v.title,data);	
				}
			}
		});		
	});
};

(function(){ 
	var unSerialize = function(paramsStr){		
		var s = paramsStr?paramsStr:'';
		var result = {};
		
		if(s){
			s = (paramsStr.charAt(0)=='?'?paramsStr.substring(1):paramsStr).replace(/\+/g, "%20");
			
			var a1 = s.split('&');
			for(var i in a1){
				var a2 = a1[i].split('=');
				
				var name = decodeURIComponent(a2[0]);
				var value = decodeURIComponent(a2[1]);
				
				//判断是否已经存在同名的参数，如果存在则转换为数组
				if(!result.hasOwnProperty(name)){
					result[name] = value;
				}else{
					var na = [result[name]];
					
					na.push(value);
					
					result[name] = na;
				}
			}
		}
			
		return result;
	}
	
	
/**
 * 这是一个对使用jquery.params(obj)方法进行序列化后的参数
 * 进行反序列化的方法
 * 
 * @param {String} paramsStr 需要反序列化的字符串,
 * 				             格式为带问号?key1=value1&key2=value2
 * 				             或者不带问号key1=value1&key2=value2
 * @return {Object} 参数对象
 * 
 * @author 梁志宏
 */
	SHCY.getParams = function(paramsStr){		
		var result = unSerialize(paramsStr);
		result.PageID = $('#PageID').attr('PageID');
		
		return result;
	}
})();



