﻿(function($){$.fn.corner=function(o){var ie6=$.browser.msie&&/MSIE 6.0/.test(navigator.userAgent);function sz(el,p){return parseInt($.css(el,p))||0}function hex2(s){var s=parseInt(s).toString(16);return(s.length<2)?"0"+s:s}function gpc(node){for(;node&&node.nodeName.toLowerCase()!="html";node=node.parentNode){var v=$.css(node,"backgroundColor");if(v.indexOf("rgb")>=0){if($.browser.safari&&v=="rgba(0, 0, 0, 0)"){continue}var rgb=v.match(/\d+/g);return"#"+hex2(rgb[0])+hex2(rgb[1])+hex2(rgb[2])}if(v&&v!="transparent"){return v}}return"#ffffff"}function getW(i){switch(fx){case"round":return Math.round(width*(1-Math.cos(Math.asin(i/width))));case"cool":return Math.round(width*(1+Math.cos(Math.asin(i/width))));case"sharp":return Math.round(width*(1-Math.cos(Math.acos(i/width))));case"bite":return Math.round(width*(Math.cos(Math.asin((width-i-1)/width))));case"slide":return Math.round(width*(Math.atan2(i,width/i)));case"jut":return Math.round(width*(Math.atan2(width,(width-i-1))));case"curl":return Math.round(width*(Math.atan(i)));case"tear":return Math.round(width*(Math.cos(i)));case"wicked":return Math.round(width*(Math.tan(i)));case"long":return Math.round(width*(Math.sqrt(i)));case"sculpt":return Math.round(width*(Math.log((width-i-1),width)));case"dog":return(i&1)?(i+1):width;case"dog2":return(i&2)?(i+1):width;case"dog3":return(i&3)?(i+1):width;case"fray":return(i%2)*width;case"notch":return width;case"bevel":return i+1}}o=(o||"").toLowerCase();var keep=/keep/.test(o);var cc=((o.match(/cc:(#[0-9a-f]+)/)||[])[1]);var sc=((o.match(/sc:(#[0-9a-f]+)/)||[])[1]);var width=parseInt((o.match(/(\d+)px/)||[])[1])||10;var re=/round|bevel|notch|bite|cool|sharp|slide|jut|curl|tear|fray|wicked|sculpt|long|dog3|dog2|dog/;var fx=((o.match(re)||["round"])[0]);var edges={T:0,B:1};var opts={TL:/top|tl/.test(o),TR:/top|tr/.test(o),BL:/bottom|bl/.test(o),BR:/bottom|br/.test(o)};if(!opts.TL&&!opts.TR&&!opts.BL&&!opts.BR){opts={TL:1,TR:1,BL:1,BR:1}}var strip=document.createElement("div");strip.style.overflow="hidden";strip.style.height="1px";strip.style.backgroundColor=sc||"transparent";strip.style.borderStyle="solid";return this.each(function(index){var pad={T:parseInt($.css(this,"paddingTop"))||0,R:parseInt($.css(this,"paddingRight"))||0,B:parseInt($.css(this,"paddingBottom"))||0,L:parseInt($.css(this,"paddingLeft"))||0};if($.browser.msie){this.style.zoom=1}if(!keep){this.style.border="none"}strip.style.borderColor=cc||gpc(this.parentNode);var cssHeight=$.curCSS(this,"height");for(var j in edges){var bot=edges[j];if((bot&&(opts.BL||opts.BR))||(!bot&&(opts.TL||opts.TR))){strip.style.borderStyle="none "+(opts[j+"R"]?"solid":"none")+" none "+(opts[j+"L"]?"solid":"none");var d=document.createElement("div");$(d).addClass("jquery-corner");var ds=d.style;bot?this.appendChild(d):this.insertBefore(d,this.firstChild);if(bot&&cssHeight!="auto"){if($.css(this,"position")=="static"){this.style.position="relative"}ds.position="absolute";ds.bottom=ds.left=ds.padding=ds.margin="0";if($.browser.msie){ds.setExpression("width","this.parentNode.offsetWidth")}else{ds.width="100%"}}else{if(!bot&&$.browser.msie){if($.css(this,"position")=="static"){this.style.position="relative"}ds.position="absolute";ds.top=ds.left=ds.right=ds.padding=ds.margin="0";var bw=0;if(ie6||!$.boxModel){bw=sz(this,"borderLeftWidth")+sz(this,"borderRightWidth")}ie6?ds.setExpression("width","this.parentNode.offsetWidth - "+bw+'+ "px"'):ds.width="100%"}else{ds.margin=!bot?"-"+pad.T+"px -"+pad.R+"px "+(pad.T-width)+"px -"+pad.L+"px":(pad.B-width)+"px -"+pad.R+"px -"+pad.B+"px -"+pad.L+"px"}}for(var i=0;i<width;i++){var w=Math.max(0,getW(i));var e=strip.cloneNode(false);e.style.borderWidth="0 "+(opts[j+"R"]?w:0)+"px 0 "+(opts[j+"L"]?w:0)+"px";bot?d.appendChild(e):d.insertBefore(e,d.firstChild)}}}})};$.fn.uncorner=function(o){return $(".jquery-corner",this).remove()}})(jQuery);
