//Code from www.quirksmode.org
//http://www.quirksmode.org/js/findpos.html
function findPos(obj) {
	var curleft =0;
	var curtop = 0;
	if (obj.offsetParent) {
		do {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);
	}
	return [curleft,curtop];
};



	
var finger=function(who){
	var me=document.getElementById(who);
	var stage=me.getContext('2d');
	var canvasData = document.createElement('canvas');
	var opacity=.4;
	var finger=new Image();
	var pos=findPos(me);
	
	finger.onload=function(){
		finger.width=60;
		finger.height=80;	
	}
	finger.src='fumiprint.png';
	
	var pressed=false;
		
	var startLine= function(event){
		var mouseX = parseInt(event.clientX);
		var mouseY = parseInt(event.clientY);
		opacity=.4;
		stage.globalAlpha=opacity;
		pos=findPos(me);
		stage.drawImage(finger, mouseX-(finger.width/2)-pos[0], mouseY-(finger.height/2)-pos[1], finger.width, finger.height);
	}
	
	var drawLine= function(event){
		var mouseX = parseInt(event.clientX);
		var mouseY = parseInt(event.clientY);
		stage.globalAlpha=opacity;
		pos=findPos(me);
		if(pressed){
			stage.drawImage(finger, mouseX-(finger.width/2)-pos[0], mouseY-(finger.height/2)-pos[1], finger.width, finger.height);
			opacity-=(.02);
		}
		
	}
	
	var endDraw=function(){

	}
	
	this.onPressEvent=function(event){
		event.preventDefault();
		
		var onMove=function(event){
			drawLine(event);
		}
	
		var onPress=function(event){
			pressed=true;
			startLine(event);
		}
		
		var onRelease=function(event){
			pressed=false;
			endDraw();
		}
		
		switch(event.type){
			case "mousemove":onMove(event);break;
			case "mouseup":onRelease(event);break;
			case "mousedown":onPress(event);break;
			case "touchstart":onPress(event.targetTouches[0]);break;
			case "touchmove":onMove(event.targetTouches[0]);break;
			case "touchend":onRelease(event.targetTouches[0]);break;
		}
	}
	me.onmousedown = this.onPressEvent;
	me.onmouseup = this.onPressEvent;
	me.onmousemove = this.onPressEvent;
	me.ontouchstart= this.onPressEvent;
	me.ontouchmove= this.onPressEvent;
	me.ontouchend= this.onPressEvent;

	
}

var fingerPrints=new finger('glass');

