var sort = function(name, order){
	var url = window.location.href;
	url = url.replace('###', '');
	var arr_url = url.split('?');
	if(arr_url[1]){
		var params = $.string(arr_url[1]).toQueryParams();
		for(ob in params){
			if(params[ob] == undefined) params[ob]='';
		}
		params.order_by = name;
		params.order_sort = order;
		arr_url[1] = $.param(params);
		url = arr_url.join('?');
	}else{
		url += '?order_by='+name+'&order_sort='+order;
	}
	window.location = url;
};
var checkall = function(obj, name, form, rs){
	var str = name ? 'input[@type="checkbox"][name="'+name+'"]' : 'input[type="checkbox"]';
	if(form){
		str = form + ' '+ str;
	}
	var chk = false;
	if(obj){
		chk = obj.checked;
	}else if(typeof rs != 'undefined'){
		chk = rs == 1 ? true : false;
	}
	$.each($(str), function(i, n){
		n.checked = chk;
	})
};
var getcheckbox = function(name, form){
	var str = name ? 'input[@type="checkbox"][name="'+name+'"]:checked' : 'input[@type="checkbox"]:checked';
	if(form){
		str = form + ' '+ str;
	}
	var _val = [];
	$.each($(str), function(i, n){
		_val.push(n.value);
	});

	return _val.length > 0 ? _val : false;
};
var getradio = function(name, form){
	var str = 'input[@type="radio"][name="'+name+'"][checked]';
	if(form){
		str = form + ' '+ str;
	}
	return $(str).val();
};
var checkform =  function(name){
	return $(name).form('validate');
};
var newwin = function(url, param){
	var arr = url.split('?');
	if(!arr[0]){
		alert('error');
		return false;
	}
	param = param || {};
	if(arr[1]){
		param = $.extend($.string(arr[1]).toQueryParams(), param);
	}
	//alert(param.controller);
	var str = '';
	$.each(param, function(k,v){
		str += '<input type="hidden" name="'+k+'" value="'+v+'" />';
	});
	$('#itlong_newwin').remove();
	$('body').append('<form id="itlong_newwin" action='+arr[0]+' method="get" target="_blank">'+str+'</form>');
	$('#itlong_newwin').submit();
	return false;
};
var loading = function(target, msg, id, loadimg){
	id = id || 'loading';
	loadimg = loadimg || 'loading.gif';
	if($('#'+id).length>0){
		$('#'+id).remove();
		return;
	}
	var tobj = target ? $('#'+target) : $('body');
	if(target == 'loading_target' && $.browser.msie && $.browser.version<'7'){
		tobj.css({top:(document.body.scrollTop||document.documentElement.scrollTop)+'px'});
		$(window).bind({
			scroll:function(){
				tobj.css({top:(document.body.scrollTop||document.documentElement.scrollTop)+'px'});
			},
			resize:function(){
				tobj.css({top:(document.body.scrollTop||document.documentElement.scrollTop)+'px'});
			}
		});
	}
	msg = msg || '';
	tobj.prepend('<div id='+id+'><img src="'+itlong_const.image_path+loadimg+'" /> '+msg+'</div>');
};
var setcookie = function(cookieName, cookieValue, seconds, path, domain, secure) {
	var expires = new Date();
	expires.setTime(expires.getTime() + seconds);
	document.cookie = escape(cookieName) + '=' + escape(cookieValue)
	+ (expires ? '; expires=' + expires.toGMTString() : '')
	+ (path ? '; path=' + path : '/')
	+ (domain ? '; domain=' + domain : '')
	+ (secure ? '; secure' : '');
}
var getcookie = function(name) {
	var cookie_start = document.cookie.indexOf(name);
	var cookie_end = document.cookie.indexOf(";", cookie_start);
	return cookie_start == -1 ? '' : unescape(document.cookie.substring(cookie_start + name.length + 1, (cookie_end > cookie_start ? cookie_end : document.cookie.length)));
};

var poplogin = function(title){
	var url = '/index.php?module=jobuc&controller=login&action=popform&winhand=login';
	iframewin.open('login', {
		title:title || '会员登录-中国工程监理人才网',
		url:url,
		height:230
	});
	return false;
};

var copyLink = function (url){
	try{
		var cText= url || document.location.toString();
		if(window.clipboardData){
			window.clipboardData.setData("Text",cText);
			alert("复制完成!");
		}else if(window.netscape){
			clipboardswfdata = cText;
			try{
				netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
			}catch(e){
				alert("您的浏览器设置为不允许复制！\n如果需要此操作，请在浏览器地址栏输入'about:config'并回车\n然后将'signed.applets.codebase_principal_support'设置为'true',再重试复制操作!");
				return false;
			}
			var clip=Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
			if(!clip) {return false;}
			var trans=Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
			if(!trans){return  false;}
			trans.addDataFlavor('text/unicode');
			var str=new Object();
			var len=new Object();
			var str=Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
			str.data=cText;
			trans.setTransferData("text/unicode",str,cText.length*2);
			var clipid=Components.interfaces.nsIClipboard;
			if(!clip) {return false;}
			clip.setData(trans,null,clipid.kGlobalClipboard);
			alert("复制完成!");
		}
	}catch(e){}
	return false;
};


/**
* my tools func
*/
Common = {
	trim : function(str){
		return str.replace(/(^\s*)|(\s*$)/g, "");
	},
	strlen : function (str)
	{
		return str.replace(/[^\x00-\xff]/g, "**").length;
	},
	isdate : function (str){
		var result=str.match(/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
		if(result==null) return false;
		var d=new Date(result[1], result[3]-1, result[4]);
		return (d.getFullYear()==result[1] && d.getMonth()+1==result[3] && d.getDate()==result[4]);
	},
	isdatetime : function(val){
		var result=str.match(/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
		if(result==null) return false;
		var d= new Date(result[1], result[3]-1, result[4], result[5], result[6], result[7]);
		return (d.getFullYear()==result[1]&&(d.getMonth()+1)==result[3]&&d.getDate()==result[4]&&d.getHours()==result[5]&&d.getMinutes()==result[6]&&d.getSeconds()==result[7]);
	},
	isnumber : function(val){
		var reg = /[\d|\.|,]+/;
		return reg.test(val);
	},
	isalphanumber : function (str){
		var result=str.match(/^[a-zA-Z0-9_]+$/);
		if(result==null) return false;
		return true;
	},
	isint : function(val){
		var reg = /\d+/;
		return reg.test(val);
	},
	isemail : function(email){
		var reg = /([\w|_|\.|\+]+)@([-|\w]+)\.([A-Za-z]{2,4})/;
		return reg.test( email );
	},
	isurl : function(url){
		var reg = /^[a-zA-z]+:\/\/(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$/;
		return reg.test(url);
	},
	isnotnull : function(str){
		return this.strlen(this.trim(str));
	},
	isimg : function(str, allowExt){
		allowExt = allowExt || ['gif', 'jpg', 'jpeg'];
		var arr = this.trim(str).split('.');
		var ext = arr[arr.length-1].toLowerCase();
		if(allowExt.indexOf(ext) == -1){
			return false;
		}else{
			return true;
		}
	},
	dump : function( msg, time ){
		time = time ? time * 1000 : 2000;
		if (typeof msg === "string"){
			if ( msg.indexOf('|') != -1 ){
				msg = '<p>'+ msg.split('|').join('</p><p>');
			}else{
				msg = '<p>' + msg;
			}
		}

		if (typeof msg === 'object'){
			var msgs = new Array();
			for(var p in msg){
				msgs.push(p + ':&nbsp;' + msg[p]);
			}
			msg = '<p>' + msgs.join('</p><p>');
		}

		if ( $('#debug_dump').length<1){
			$('<div>', {id:'debug_dump'}).prependTo($('body')[0]);
		}

		$('#debug_dump').css({
			position        : 'fixed',
			backgroundColor : '#000',
			opacity         :  '0.65',
			top             :  '0',
			left            :  '0',
			width           :  $(window).width(),
			lineHeight      :  '28px',
			zIndex          :  '99999',
			textIndent      :  '20px',
			color           :  '#fff'
		}).html('输出结果是： '+ msg +'</p>').bind('click', function(event){
			$('#debug_dump').remove();
		});
	}
};
var jcron = function(){
	if(!getcookie('cltm')){
		setcookie('cltm', '1', 900000);
		$.get(jcron_url);
	}
};
;(function($){
	$.Class = function(properties){
		var klass = function(){
			return (arguments[0] !== null && this.initialize && $.isFunction(this.initialize)) ? this.initialize.apply(this, arguments) : this;
		};
		$.extend(klass, this);
		klass.prototype = properties;
		klass.constructor = $.Class;
		return klass;
	};
	$.Class.prototype = {
		extend: function(properties){
			var proto = new this(null);
			for (var property in properties){
				var pp = proto[property];
				proto[property] = $.merge(pp, properties[property]);
			}
			return new $.Class(proto);
		},
		implement: function(){
			for (var i = 0, l = arguments.length; i < l; i++) $.extend(this.prototype, arguments[i]);
		}

	};
})(jQuery);
