/*
 * @author denisdeng dexibe@gmail.com
 * $Version: 1.0
 * addOption[function]
 * scaleImg[function]
 * fakeFile[function]
 * breakWordAll[function]
 */
(function($){
/*
 * Cookie plugin
 */
$.cookie = function(name, value, options) {
	if (typeof value != 'undefined') { // name and value given, set cookie
		options = options || {};
		if (value === null) {
			value = '';
			options.expires = -1;
		}
		var expires = '';
		if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
			var date;
			if (typeof options.expires == 'number') {
				date = new Date();
				date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
			} else {
				date = options.expires;
			}
			expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
		}
		// CAUTION: Needed to parenthesize options.path and options.domain
		// in the following expressions, otherwise they evaluate to undefined
		// in the packed version for some reason...
		var path = options.path ? '; path=' + (options.path) : ';path=/';
		var domain = options.domain ? '; domain=' + (options.domain) : '';
		var secure = options.secure ? '; secure' : '';
		document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
	} else { // only name given, get cookie
		var cookieValue = null;
		if (document.cookie && document.cookie != '') {
			var cookies = document.cookie.split(';');
			for (var i = 0; i < cookies.length; i++) {
				var cookie = jQuery.trim(cookies[i]);
				// Does this cookie string begin with the name we want?
				if (cookie.substring(0, name.length + 1) == (name + '=')) {
					cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
					break;
				}
			}
		}
		return cookieValue;
	}
}
/*-----------------------------------------
 *	日历组件
 * @requires  jquery-ui-1.8.1.custom.min.js
		  jquery.datepick.js
		  jquery.datepick.validation.js
		  jquery.datepick-zh-CN.js
 *----------------------------------------*/
$.fn.dateTime = function(o){
	//创建显示日历控件的图片按钮;
	var trigger = $('<div><img id="calImg" src="/img/calendar.gif" alt="Popup" class="trigger" /></div>');
	trigger.hide().appendTo("body");
	var settings = { 
				showStatus: true,
				showOn: 'both',
				yearRange:'1970:' + new Date().getFullYear() ,
				dateFormat: 'yyyy-mm-dd',
				buttonImageOnly: true,
				changeMonth: true,
				changeYear: true,
				showTrigger:'#calImg',
				language:"zh-cn"
	};
	return this.each(function(){
				if(o) settings = $.extend(settings,o);	  
				$(this).attr("readonly",true).datepick($.extend(settings,$.datepick.regional[settings.language]));	  
			})
}


/*----------------------
 *增加选项函数
 *--------------------*/
$.fn.addOption = function(o){
	var settings = {
					num:3,
					initNum:0,
					cloneObj:null,
					isDele:true,
					btnDeletePos:null,
					isRefresh:true,
					init:true,
					onClone:null,
					context:'',
					pos:'',
					isHideBtn:true,
					filter:null,
					alertT:["总数不能超过","个选项。"]
	}
	return this.each(function(){
				if(o) settings = $.extend(settings,o);
				var num = settings.initNum;
				var scope = (settings.context == '') ? $('body') : $(settings.context);
				//取得要clone的对象
				var self = $(this);
				var oTarget = $(this).attr('href');
				var oClone = $(oTarget);
				$(oTarget).remove();
				if(settings.init){
					var clones = $('.clone',scope);;
					clones.each(function(){
						$(".btnDelete",this).bind("click",function(e){
							var target = $(this).attr("href");
							$(target).remove();
							num--;
							e.preventDefault();
						})
					});
					//判断clone的对象是否等于最大数,然后隐藏添加按钮;
					var sizes = clones.size();
					if(sizes == settings.num && settings.isHideBtn){
						$(this).hide();	
					};
				};
				$(this).attr('title','增加选项').bind('click',function(e){
					//定义克隆的位置;
					var clonePos = settings.pos !== '' ? $(this).prev() : settings.pos;
					if(settings.isRefresh){
						num = doRefresh();
					};			  
					if( num < settings.num ){
						var sId = oClone.attr('id');
						if(settings.filter !== null){
							$(settings.filter).each(function(key,val){
								if($(val).size() > 0){
									$(val,oClone).remove();
								}
							});
						};
						var clone = oClone.clone(true).removeClass("hide").addClass('clone');
						if($("#"+sId+num).html() !== null){
							clone.attr("id",sId+parseInt(num+1));
						}else{
							clone.attr("id",sId+num);	
						}
						$('*',clone).each(function(){
							var subId = $(this).attr("id");
							if($(this).attr('type') == 'text'){
								$(this).val('');
							};
							if(typeof subId !== 'undefined' && subId !== ''){
								$(this).attr("id",subId+num);
							}
						})
						//将克隆对象插入到对应的位置;
						if(settings.pos !== ''){
							clone.insertBefore(settings.pos);
						}else{
							clone.insertBefore(clonePos);
						}
						//是否需要生成删除按钮
						if(settings.isDele){
							var btnDelete = $('<a href="#" class="btnDelete" title="删除"><i>删除</i></a>');
							//定义删除按钮的位置
							if(settings.btnDeletePos){
								btnDelete.attr("href","#"+sId+num).appendTo($(settings.btnDeletePos,clone))
							}else{
								btnDelete.attr("href","#"+sId+num).appendTo(clone)
							}
							//给删除按钮绑定click事件
							btnDelete.click(function(e){
								clone.remove();
								if(settings.isHideBtn){
									self.show();
								};
								//删除时调用回调函数;
								doClone();
								num--;
								e.preventDefault();
							});
						};
						//clone回调函数
						function doClone(){
							if(settings.onClone && $.isFunction(settings.onClone)){
								var clones = $('.clone',scope);
								setTimeout(function(){
														settings.onClone(clones,clone);
														},5);
							}
						};
						//clone时调用回调函数;
						doClone();
						num++;
						if(num == settings.num && settings.isHideBtn){
							$(this).hide();	
						};
					}else{
						alert(settings.alertT[0] + num + settings.alertT[1]);
					};
					e.preventDefault();
				})
				function doRefresh(){				
					return  $('.clone',scope).size();	
				}
				
	})
}
/*----------------------
 *jQuery等比例缩放图片大小
 *----------------------*/
$.fn.scaleImg = function(options){
	var settings = {
		width:300,
		height:150
	};
return this.each(function(){
	if(options) settings = $.extend(settings, options);
	var ie = $.browser.msie;
	function scale(){
			
	}
	$(this).bind('load',function(){
										var $width = $(this).width();
										var $height = $(this).height();
										if ($width > $height){
										   if($width>settings.width){
											$(this).width(settings.width);
											$(this).height(settings.width/$width*$height);
										   }
										}else{
										   if($height>settings.height){
											$(this).height(settings.height);
											$(this).width(settings.height/$height*$width);
										   }
										}
								 }).trigger('load');
});
}
/*----------------------
 *选择全部
 *--------------------*/
$.fn.selectAll = function(options){
	var settings = {
			range:'',
			trigger:'',
			func:null,
			onSelect:null
	};
	return this.each(function(){
			if(options) settings = $.extend(settings, options);
			var self = $(this);
			self.checks = $('input[type="checkbox"]',settings.range).not(":disabled");
			self.sizes = self.checks.size();
			$(this).click(function(){
				var isCheck = $(this).attr("checked");
				self.checks.attr('checked',isCheck);
				if(settings.trigger !== ''){
					$(settings.trigger).attr('checked',isCheck);
				}
				var checkedSize = $('input[type="checkbox"]:checked',settings.range).size();
				if($.isFunction(settings.func)){
						settings.func(checkedSize);
				};
			});
			if(settings.trigger !== ''){
				//var trigger = $(settings.trigger);
				$(settings.trigger).click(function(){
					var isCheck = $(this).attr("checked");
					self.checks.attr('checked',isCheck);
					//if(settings.trigger !== ''){
					self.attr('checked',isCheck);
					//}
					var checkedSize = $('input[type="checkbox"]:checked',settings.range).size();
					if($.isFunction(settings.func)){
							settings.func(checkedSize);
					}
				});
			};			
			self.checks.click(function(){
				var checkedSize = $('input[type="checkbox"]:checked',settings.range).size();
				if(checkedSize < self.sizes){
					self.attr('checked','');
					if(settings.trigger !== ''){
						$(settings.trigger).attr('checked','');
					}
				}else{
					self.attr('checked','checked');
					if(settings.trigger !== ''){
						$(settings.trigger).attr('checked','checked');
					}
				};
				if($.isFunction(settings.func)){
					settings.func(checkedSize);
				};
				if($.isFunction(settings.onSelect)){
					settings.onSelect($(this));
				}
			});
	})
}
/*----------------------
 * clipboard plugin
----------------------------*/
$.fn.clipboard = function(o){
	var settings = {
				data:'',
				flash:'/img/clipboard.swf',
				func:null,
				isTrigger:false
			}
	return this.each(function(){
			if(o) settings = $.extend(settings, o);
			var data = settings.data == '' ? $(this).text() : settings.data;
			if(!settings.isTrigger){
				var trigger = $(this);
			}else{
				var id = new Date().getTime();
				var trigger = $('<div class="fakePasterObj" id="fakePasterObj_' + id + '"></div').hide().appendTo("body");
			};
			var txtField = $("<input type='text' class='text larger' />").val(data);
			var content = $("<p class='pasterTxt'></p>").append(txtField);
			trigger.bind("doPaster",function(e){
				if(!$(this).data("popPaster")){
					var msg = $.Message({
									title:'剪贴板',
									content:content,
									msgClass:'dialog dialogFrom'
							  });
					$(this).data("popPaster",msg);
				};
				$(this).data("popPaster").show();
				e.preventDefault();
			});
			//默认是否触发粘贴事件
			if(!settings.isTrigger){
				trigger.bind("click",function(){
					trigger.trigger('doPaster');						  
				})	
			}else{
				trigger.trigger('doPaster');	
			}
	})
}
/*--------------------------
 * timedReminder plugin
----------------------------*/
$.fn.timedReminder = function(o){
	var settings = {
			eventType:'blur',
			pointCal:'',
			pointHour:'',
			pointMinute:'',
			onError:null,
			dateFormat:'y-m-d h:m'
		};
	//转换成毫秒的函数;
	function getSecond(num,type){
		var seconds;
		switch(type){
			case 'd'://day
				 seconds = parseInt(num,10)*24*3600*1000;
				break;
			case 'h'://hour
				 seconds = parseInt(num,10)*3600*1000;
				break
			default: //minute
				 seconds = parseInt(num,10)*60*1000;
		}
		return seconds;
	};
	//将月份转换成毫秒数
	function getDateSeconds(y,m,d,h,mins){		
		var date = new Date(y,m - 1,d,h,mins);
		return date.getTime(); 
	}
	//格式化日期
	function formatDate(oDate,dateFormat){
		var date;
		if(new String(oDate.mins).length == 1){
			oDate.mins = "0" + oDate.mins;
		};
		if(new String(oDate.m).length == 1){
			oDate.m = "0" + oDate.m;
		};
		switch(dateFormat){
			case 'y/m/d h:m':
				 date = oDate.y + "/" + oDate.m + "/" + oDate.d + " " + oDate.h + ":" + oDate.mins;
				break;
			default: // 'y-m-d h:m'
				 date = oDate.y + "-" + oDate.m + "-" + oDate.d + " " + oDate.h + ":" + oDate.mins;
		}
		return date;
	}
	//生成最终日期
	function getFullDate(num){
		var date = new Date();
		date.setTime(num);
		var oDate = {
			y:date.getFullYear(),
			m:date.getMonth() + 1,
			d:date.getDate(),
			h:date.getHours(),
			mins:date.getMinutes()
		}
		return oDate;
	};
	//格式化日期
	function splitDate(date,format){
		var aDate = [];
		switch(format){
			case 'y/m/d h:m':
				 aDate = date.split('/');
				break;
			default: // 'y-m-d h:m'
				 aDate = date.split('-');
		}
		return aDate;
	}
	return this.each(function(){
		if(o) settings = $.extend(settings, o);
		var dayField = $('.timer-day',this);
		var hourField = $('.timer-hour',this);
		var minuteField = $('.timer-minute',this);
		var dateShow = $('.timer-region',this);
		if(dayField.size() !== 0 || minuteField.size() !== 0 || dateShow !== 0){
			var cal;
			$(dayField).add(minuteField).bind(settings.eventType,function(){
				var currentDate = new Date();
				var currentMills = currentDate.getTime();
				//取得日期的毫秒数;
				var hourVal = $.trim($(settings.pointHour).val());
				var minuteVal = $.trim($(settings.pointMinute).val());
				if(settings.pointCal !== '' && calVal !== ''){
					var calVal = $.trim($(settings.pointCal).val());
					//格式化日期;
					cal = splitDate(calVal,settings.dateFormat);
				}else{
					cal = [currentDate.getFullYear(),currentDate.getMonth() + 1,currentDate.getDate()];
				};
				cal.push(typeof settings.pointHour !== 'undefined' && hourVal !== '' ? hourVal : 0);
				cal.push(typeof settings.pointMinute !== 'undefined' && minuteVal !== '' ? minuteVal : 0);		
				var reminderMills =  getDateSeconds.apply(null,cal);
				
				//取得当前日期的毫秒数;
				var dayVal = $.trim($(dayField).val());
				var hourVal = $.trim($(hourField).val());
				var minsVal = $.trim($(minuteField).val());
				var daySeconds = dayVal == '' ? 0 : dayVal;
				var hourSeconds = hourVal == '' ? 0 : hourVal;
				var minSeconds = minsVal == '' ? 0 : minsVal;
				//计算天数和分钟的毫秒数;
				var seconds = getSecond(daySeconds,'d') + getSecond(hourSeconds,'h') + getSecond(minSeconds);
				var diff = reminderMills - seconds;
				//取得日期;
				var oDate = getFullDate(diff);
				//格式化日期
				var date = formatDate(oDate,settings.dateFormat);				
				if(diff >= currentMills){
					dateShow.html(date);
				}else if($.isFunction(settings.onError)){
					settings.onError(date);
				}else{
					alert('提醒日期不能小于当前日期或不能为空!');
				};
			})
		}else{
			alert("请检查组件中元素是否正确!");
		}
	})	
}
/*----------------------
 * upload plugin
 * require popup.js
----------------------------*/
$.fn.upload = function(o){
	var settings = {
				tip:'请选择.jpg或.gif格式，大小不超过1M的图片；建议图片尺寸16*16，如果超出，成比例缩放图片。',
				action:'/backend.php/interface/upload',
				size:"100x80",
				language:'cn',
				func:null
			};
    var uploadFileIframe = $("#uploadFileIframe").size() == 0 
        ? $('<iframe name="uploadFileIframe" class="fakeIframe" id="uploadFileIframe" class="" width="0" height="0"></iframe').appendTo("body")
        : $("#uploadFileIframe");
	return this.each(function(){
			if(o) settings = $.extend(settings, o);
			$(this).bind("click",function(){
				$("#uploadFileIframe").contents().find("body").html('');
				var formID = "uploadFileForm" + new Date().getTime();
				var msg = $("<form id='" + formID + "' target='uploadFileIframe' method='post' action='" + settings.action + "' enctype='multipart/form-data'><div class='boxUpload'><p><input name='small' type='hidden' value='" + settings.size + "' /><input id='" + formID + "_1' name='uploadFileName' type='file' /></p><p class='gray'>" + settings.tip + "</p></div></form>");
				if(!$(this).data("uploadPopupMsg")){
					var uploadMsg = $.Message ({
							title:'上传/修改图标',
							content:msg ,
							msgClass:'dialog dialogFrom',
							btnCancel:true,
							width:350,
							submitFunc:function(){
								$("#"+formID).attr('target','uploadFileIframe').submit();
								var oInterval = setInterval(function(){
									var iframeHtml = $("#uploadFileIframe").contents().find("body").html();
									if(iframeHtml != '')
									{
										eval('var oReturn = ' + $("#uploadFileIframe").contents().find("body").html());
										if(settings.func && $.isFunction(settings.func)){
											settings.func(oReturn);
										}
										$("#uploadFileIframe").contents().find("body").html('');
										clearInterval(oInterval);
										uploadMsg.hide();
									}
								}, 500);
							}
					});
					$(this).data("uploadPopupMsg",uploadMsg);
				}
				$(this).data("uploadPopupMsg").show();					  
			})
	})
}
/*---------------------------
	open page in new window
----------------------------*/
$.openInWindow = function(options){
var settings = {
					url:'',
					name:'',
					dialogheight :600,
					dialogwidth:700,
					center:'yes',
					help:"yes",
					menubar:'no',
					scroll:'no',
					toolbar:'no',
					menubar:'no',
					resizable:'no',
					location:'no',
					status:'no'
	};
	if(options) settings = $.extend(settings, options);
	if(settings.dialogheight > 600){
		settings.scrollbars = 'yes';
	}else{
		settings.scrollbars = settings.scroll;	
	};
	settings.width = settings.dialogwidth;
	settings.height = settings.dialogheight;			
	var param = [];
	$.each(settings,function(key,val){
			if(key !== 'url' && key !== 'name'){
				param.push(key + "=" + val);
			}
	});
	//根据窗口是否需要居中来显示窗口.
	if(settings.center == 'yes'){
		var winW = $(window).width();
		var winH = $(window).height();
		var dialogLeft = (winW - parseInt(settings.dialogwidth))/2;
		var dialogTop = (winH - parseInt(settings.dialogheight))/2;
		param.push("left=" + dialogLeft);
		param.push("top=" + dialogTop);	
	}else{
		param.push("left=" + 0);
		param.push("top=" + 0);	
	};
	window.open(settings.url,settings.name,param.join(","));
}

/*----------------------
 * yearAndMonth plugin
----------------------------*/
$.fn.yearAndMonth = function(o){
	var settings = {
			range:[0,50],
			initVal:'',
			type:'year',
			func:null
		};
	return this.each(function(){
		if($(this).attr('tagName').toLowerCase() == 'select'){
				if(o) settings = $.extend(settings, o);
				var ie = $.browser.msie;
				var year,begin,end;
				if(settings.type == 'year'){
					year = (new Date()).getFullYear();
					begin = year + settings.range[0];
					end = year + settings.range[1];
				}else{
					begin = 1;
					end = 12;
				};
				var tempFragment = $("<div></div>").hide();
				tempFragment.appendTo("body");
				while(begin <= end){
					var opt = $("<option></option>").attr('value',begin).text(begin);
					if(settings.initVal == begin){
						opt.attr("selected","selected");
					}
					if(settings.type == 'year'){
						opt.prependTo(tempFragment);
					}else{
						opt.appendTo(tempFragment);	
					}
					begin++;
				};
				$(this).append(tempFragment.children());
				if(ie){
					$(this).css('zoom',1);
				};
				tempFragment.remove();
				if(settings.func && $.isFunction(settings.func)){
					$(this).bind("change",function(){
						settings.func($(this));
					})
				}
		}else{
			alert("当前对象类型不是select");
		}
	})
}
/*----------------------
 * select menu
----------------------------*/
$.fn.dynamicList = function(o){
	var settings = {
			type:'select',
			dataSource:'',
			aInit:[],
			groupName:'',
			language:'cn',
			func:null
		};
	return this.each(function(){
			if(o) settings = $.extend(settings, o);
			var ie6 = $.browser.msie&&($.browser.version == "6.0")
			var self = $(this);
			var dataSource = glist[settings.dataSource];
			if(dataSource){
				switch(settings.type){
					case "checkbox" :
						$(this).hide();
						$.each(dataSource,function(i,v){
								var label = $("<lable></lable>")
											 .text(v[settings.dataSource + "_" + settings.language]);
								var check = $(' <input class="check" type="checkbox" />').attr({
												  'value':v[settings.dataSource + "_id"],
												  'name':settings.groupName
												  })
								if($.isArray(settings.aInit)&& settings.aInit.length > 0){
										$.each(settings.aInit,function(key,val){
												if(v[settings.dataSource + "_id"] == val){
													check = $(' <input class="radio" checked type="checkbox" value="' + v[settings.dataSource + "_id"] + '"  name="' + settings.groupName + '"/>');
												}
										});
								};
								check.prependTo(label);
								self.append(label);
						});
						$(this).show();
						break;
					case "radio" :
						//$(this).hide();
						$.each(dataSource,function(i,v){
								var id = new Date().getTime();
								var label = $("<lable></lable>")
											 .text(v[settings.dataSource + "_" + settings.language]);
								var radio = $(' <input class="radio" type="radio" />')
											.attr({
												  'value':v[settings.dataSource + "_id"],
												  'name':settings.groupName
												  });
											
								if($.isArray(settings.aInit)&& settings.aInit.length > 0){
										$.each(settings.aInit,function(key,val){
												if(v[settings.dataSource + "_id"] == val){
													radio = $(' <input class="radio" checked type="radio" value="' + v[settings.dataSource + "_id"] + '"  name="' + settings.groupName + '"/>');
												}
										});
								};
								//解决IE中不能点击的bug
								if(ie6){
									radio.bind('click',function(){
										$('input',self).removeAttr('checked');
										$(this).attr('checked','checked');							
									})
								}
								radio.prependTo(label);
								self.append(label);
						});
						//$(this).show();
						break;
					default:
						$(this).hide();
						$.each(dataSource,function(i,v){
								var option = $("<option></option>").attr('value',v[settings.dataSource + "_id"]).text(v[settings.dataSource + "_" + settings.language]);
								if($.isArray(settings.aInit)&& settings.aInit.length > 0){
										$.each(settings.aInit,function(key,val){
												if(v[settings.dataSource + "_id"] == val){
													option.attr("selected","selected");	
												}
										});
								}
								option.appendTo(self);
						});
						$(this).show();
				}
			}else{
				alert("请检查数据源是否正确！");	
			};						
	})
}
/*----------------------
 * style the file input
----------------------------*/
$.fn.fakeFile = function(o){
	var settings = {
			reg:"png|jpe?g|gif|bmp",
			defImg:'/lib/img/defImage.gif',
			isCn:true
	};
	var ie7 = $.browser.msie&&($.browser.version == "7.0");
	var moz = $.browser.mozilla&&($.browser.version == "3.0");
	return this.each(function(i,v){
		if(o) settings = $.extend(settings, o);
		var error = settings.isCn == true ? '对不起，照片格式不正确，请重新选择！': 'Sorry,the format of image is wrong, please select again!';
		var wrap = $('<div class="fakefile"></div>');
		var mes = $('<p class="mes"></p>');
		var text = settings.isCn == true ? '浏览图片':'&nbsp; Browser&nbsp; ';
		var button = $('<button type="button"></button>');
		var parent = $(this).parent('.fileinputs');
		var imgWrap = $('<div class="imgWrap"></div>');
		var defImg = $('<img src="'+settings.defImg+'" />');
		imgWrap.append(defImg);
		button.append(text);
		wrap.append(button);
		wrap.append(mes);
		imgWrap.insertBefore($(this));		
		$(this).attr("id",'file_'+i).appendTo(wrap);
		parent.append(wrap);
		$(this).bind('change',function(){
			var val = $(this).val();
			var imgName = val.slice(val.lastIndexOf("\\")+1);
			if(val.match(new RegExp(".(" + settings.reg + ")$", "i"))){
				mes.empty();
				var img = settings.isCn == true ? $('<span>你已经选择文件'+imgName+"</span>") : $('<span>You has selected the image:'+imgName+"</span>");
				if(ie7){
					var img = $('<img src="/lib/img/blank.gif" alt="" width="75" style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=\'scale\',src=\''+val+'\');" />');
				}
				if(moz){
					var obj = document.getElementById('file_'+i);
					var img = $('<img src="'+obj.files[0].getAsDataURL()+'" alt="" width="75" />');
				}
				imgWrap.empty().append(img);
			}else{
				imgWrap.empty().append(defImg);
				mes.html(error);
			}
		});
	})
}
/*
	fakeSelect
-----------------------*/
$.fn.fakeSelect = function(options){
	var ie = $.browser.msie;
	var ie6 = ie&&($.browser.version == "6.0");
	if(ie){
		var defaults = {
				selectedClass:'',
				isRtl:false
		};
		return this.each(function(){
			if(options) defaults = $.extend(defaults, options);
			var clone = $(this).clone(true).css('width','auto').appendTo('body').css({"position":'absolute','left':'-9999em'});	
			var currentW = $(this).outerWidth();
			var currentH = $(this).outerHeight();		
			var marginTop = $(this).css('marginTop');
			var marginBottom = $(this).css('marginBottom');
			var borderTop = $(this).css('border-top-width');
			var borderBottom = $(this).css('border-bottom-width');		
			var normalW = clone.outerWidth();		
			var diff = normalW - currentW;
			if(diff > 0){
				var mTop = marginTop == 'auto' ? 0 : parseInt(marginTop);
				var mBottom = marginBottom == 'auto' ? 0 : parseInt(marginBottom);				
				var h = parseInt(currentH) + mTop + mBottom;
				var titleH = $(this).innerHeight();
				var title = $("<span class='fakeSelectTitle'></span>")
							.text($('option:selected',this).text())
							.css({'width':currentW - 22,'height':titleH,'line-height':titleH+'px','z-index':90});
				var selectWrap = $("<span class='fakeSelectWrap'></span>")
								 .css({'width':currentW,'height':h});
				clone.css({'width':normalW,'margin-left': - diff});
				if(ie6){
					var iframe = $("<iframe></iframe>").css({'width':currentW - 22,'height':titleH+3,'opacity':0,'position':'absolute','left':0,'z-index':91});
					selectWrap.append(iframe);
				};
				if(defaults.isRtl){
					clone.attr("dir",'rtl');
				};
				selectWrap.append(title).append(clone);
				selectWrap.insertAfter($(this));
				$(this).remove();
				clone.css({"positon":'static','left':0}).bind('change click',function(){
					var text = $('option:selected',this).text();
					//alert(text);
					title.text(text);
				});   
			}	
		})
	}
}
/*----------------------
 * break word
 ----------------------*/
$.fn.breakWordAll = function (o) {
	var settings = {
			iWord:8,
			sRe:'[a-zA-Z0-9]'
		}
return this.each(function(){
				if(o) settings = $.extend(settings, o);
				if($(this).attr("nodeType") !== 1){
				  return false;
				}else if($(this).attr("currentStyle") && typeof $(this).attr("currentStyle")['wordWrap'] === 'string'){
					$(this).attr("runtimeStyle")["wordWrap"] = 'break-word';
				}else if(document.createTreeWalker){
				  var trim = function  (str) {
					str = str.replace(/^\s\s*/, '');
					var ws = /\s/,
					i = str.length;
					while (ws.test(str.charAt(--i)));
					return str.slice(0, i + 1);
				  }
					var dWalker = document.createTreeWalker(this, NodeFilter.SHOW_TEXT, null, false);
					var node,s,c = String.fromCharCode('8203'),
					  re = new RegExp('('+ settings.sRe +'{0,' + settings.iWord + '})');
					while (dWalker.nextNode()){
					  node = dWalker.currentNode;
					  s = trim(node.nodeValue).split(re).join(c);
					  node.nodeValue = s;
					}
				}
			 })
}
})(jQuery)
