jQuery.fn.dateCompletion = function(text) {
  return this.each(function(){
	

	var to = text;
	var toLength = to.length;
	var firstDash = to.indexOf("-");

	var d = new Date(); //The date today
	var month = d.getMonth(); //Putting the month in a var
	var month = month + 1; //The month is by default, this month
	var thisMonth = month;
	var today = d.getDate();
	var year = d.getFullYear();

	//Found dash
	if (firstDash != -1) {
		var dateArray = to.split("-");
		
		if (dateArray.length <= 3) { //If there's like 4 entires / seperators, there isn't much it can do...
			
			if ((dateArray[0] <= 31) && (dateArray[1] <= 12)) { //Just skip everything if the day is over 31 or the month is over 12
				//DAY
				if (dateArray[0].length == 1) { //Leading zero
					var day = '0' + dateArray[0];
				}
				else if (dateArray[0].length == 2) {
					var day = dateArray[0];
				}
				
				//MONTH
				if (dateArray[1].length == 1) { //Leading zero
					month = '0' + dateArray[1];
				}
				else if (dateArray[1].length == 2) {
					month = dateArray[1];
				}
				
				//YEAR
				if (dateArray[2]) {
					if (dateArray[2].length == 2) { //Leading stuff
						year = '20' + dateArray[2];
					}
					else if (dateArray[2].length == 4) {
						year = dateArray[2];
					}
				} else {
				
					if (month < thisMonth) {
						year = 1 + year;
					}
				
				}
				
			}
			
		}
		
	}
	
	//No seperator was found
	else {
		
		if ((toLength == 1) || (toLength == 2)) {
			if (to <= 31) { //Just skip everything if the first two chars are above 31
			
				if (toLength == 1) { //Leading zero
					var day = '0' + to;
				}
				if (toLength == 2) { //the day is what was typed
					var day = to;
				}
				
				if (day < today) {
					if (month == 12) {
						month = '01';
						year = 1 + year;
					} else {
						month = 1 + month;
					}
				}
				

				
			}
		}
		
	}

	to = year + '-' + month + '-' + day;
	if (!day) { //Avoids returning undelcared info if nothing was found
		to = "error";
	} else {
		$(this).val(to);
	}
	//return to;
	
	
	
  });
};
jQuery.log = function(message) {
  if(window.console) {
     console.debug(message);
  } else {
     alert(message);
  }
};