// reflection.js v1.7 - Freely distributable under MIT-style license.
var Reflection={defaultHeight:0.5,defaultOpacity:0.3,add:function(image,options){Reflection.remove(image);doptions={"height":Reflection.defaultHeight,"opacity":Reflection.defaultOpacity}
if(options){for(var i in doptions){if(!options[i]){options[i]=doptions[i];}}}else{options=doptions;}
try{var d=document.createElement('div');var im=image;var p=image;if(im.parentNode.tagName=='A'){p=im.parentNode;var s=p.nextSibling;while(s&&s.tagName!='DIV')s=s.nextSibling;if(s){s.style.position='relative';s.style.zIndex=10;}}
var fixed=false;var classes=im.className.split(' ');var newClasses='';for(j=0;j<classes.length;j++){if(classes[j]==""){}else if(classes[j]=="fixed"){fixed=true;}else if(classes[j]!="reflect"){if(newClasses){newClasses+=' '}
newClasses+=classes[j];}}
var reflectionHeight=Math.floor(im.height*options['height']);var divHeight=Math.floor(im.height*(1+options['height']));var reflectionWidth=im.width;if(document.all&&!window.opera){d.className=newClasses;im.className='reflected';d.style.cssText=im.style.cssText;im.style.cssText='vertical-align: bottom';var reflection=document.createElement('img');reflection.src=im.src;reflection.style.width=reflectionWidth+'px';reflection.style.height=im.height+'px';reflection.style.marginBottom="-"+(im.height-reflectionHeight)+'px';reflection.style.filter='flipv progid:DXImageTransform.Microsoft.Alpha(opacity='+(options['opacity']*100)+', style=1, finishOpacity=0, startx=0, starty=0, finishx=0, finishy='+(options['height']*100)+')';d.style.width=reflectionWidth+'px';d.style.height=im.height+'px';if(fixed)d.style.marginBottom=reflectionHeight+'px';p.parentNode.replaceChild(d,p);d.appendChild(p);d.appendChild(reflection);d.style.position='relative';reflection.style.position='absolute';reflection.style.top=im.height+'px';reflection.style.left=0;reflection.style.zIndex=5;}else{var canvas=document.createElement('canvas');if(canvas.getContext){d.className=newClasses;im.className='reflected';d.style.cssText=im.style.cssText;im.style.cssText='vertical-align: bottom';var context=canvas.getContext("2d");canvas.style.height=reflectionHeight+'px';canvas.style.width=reflectionWidth+'px';canvas.height=reflectionHeight;canvas.width=reflectionWidth;d.style.width=reflectionWidth+'px';d.style.height=im.height+'px';if(fixed)d.style.marginBottom=reflectionHeight+'px';p.parentNode.replaceChild(d,p);d.appendChild(p);d.appendChild(canvas);d.style.position='relative';canvas.style.position='absolute';canvas.style.top=im.height+'px';canvas.style.left=0;canvas.style.zIndex=5;context.save();context.translate(0,image.height-1);context.scale(1,-1);context.drawImage(image,0,0,reflectionWidth,image.height);context.restore();context.globalCompositeOperation="destination-out";var gradient=context.createLinearGradient(0,0,0,reflectionHeight);gradient.addColorStop(1,"rgba(255, 255, 255, 1.0)");gradient.addColorStop(0,"rgba(255, 255, 255, "+(1-options['opacity'])+")");context.fillStyle=gradient;if(navigator.appVersion.indexOf('WebKit')!=-1&&navigator.appVersion.indexOf('Chrome')==-1){context.fill();}else{context.fillRect(0,0,reflectionWidth,reflectionHeight*2);}}}}catch(e){}},remove:function(image){if(image.className=="reflected"){image.className=image.parentNode.className;image.parentNode.parentNode.replaceChild(image,image.parentNode);}}}
function addReflections(){var rimages=document.getElementsByClassName('reflect');for(i=0;i<rimages.length;i++){var rheight=null;var ropacity=null;var classes=rimages[i].className.split(' ');for(j=0;j<classes.length;j++){if(classes[j].indexOf("rheight")==0){var rheight=classes[j].substring(7)/100;}else if(classes[j].indexOf("ropacity")==0){var ropacity=classes[j].substring(8)/100;}}
Reflection.add(rimages[i],{height:rheight,opacity:ropacity});}}
addLoadEvent(addReflections);
