function change_date(name,name2,format){
	var dtime = document.getElementById(name).value;
	var gNow = new Date();
	var d,m,y;
	// 2004-10-22 joel: blank shd remain blank
	if (dtime=='') { document.getElementById(name2).value = ''; return; }

	switch (format) {
		case "dd/mm/yyyy" :
		case "dd-mm-yyyy" :
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,5),'mm');
			y = get_year(dtime.substring(6,10),'yyyy');		
		break;
		case "dd/mm/yy" :
		case "dd-mm-yy" :
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,5),'mm');
			y = get_year(dtime.substring(6,8),'yy');		
		break;	
		case "mm/dd/yyyy" :
		case "mm-dd-yyyy" :		
			d = get_day(dtime.substring(3,5));
			m = get_month(dtime.substring(0,2),'mm');
			y = get_year(dtime.substring(6,10),'yyyy');		
		break;
		case "mm/dd/yy" :
		case "mm-dd-yy" :		
			d = get_day(dtime.substring(3,5));
			m = get_month(dtime.substring(0,2),'mm');
			y = get_year(dtime.substring(6,8),'yy');		
		break;
		case "yy-mm-dd" :
			d = get_day(dtime.substring(6,8));
			m = get_month(dtime.substring(3,5),'mm');
			y = get_year(dtime.substring(0,2),'yy');		
		break;
		case "yyyy-mm-dd" :
			d = get_day(dtime.substring(8,10));
			m = get_month(dtime.substring(5,7),'mm');
			y = get_year(dtime.substring(0,4),'yyyy');		
		break;		
		case "dd/mon/yyyy" :
		case "dd-mon-yyyy" :		
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,6),'mon');
			y = get_year(dtime.substring(7,11),'yyyy');		
		break;
		case "dd/mon/yy" :
		case "dd-mon-yy" :		
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,6),'mon');
			y = get_year(dtime.substring(7,9),'yy');		
		break;
		case "dd/month/yyyy" :
		case "dd-month-yyyy" :
			len = dtime.length;
			ystart = len - 4;
			mend = len - 5;
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,mend),'month');
			y = get_year(dtime.substring(ystart,len),'yyyy');			
		break;
		case "dd/month/yy" :
		case "dd-month-yy" :
			len = dtime.length;
			ystart = len - 2;
			mend = len - 3;
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,mend),'month');
			y = get_year(dtime.substring(ystart,len),'yy');		
		break;

		default :
			d = get_day(dtime.substring(8,10));
			m = get_month(dtime.substring(5,7),'mm');
			y = get_year(dtime.substring(0,4),'yyyy');
		break;
	}
	document.getElementById(name2).value = y + '-' + m + '-' + d;
}

function change_time(name,name2,format,tformat){
	var dtime = document.getElementById(name).value;
	var gNow = new Date();
	var d,m,y;
	switch (format) {
		case "dd/mm/yyyy" :
		case "dd-mm-yyyy" :
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,5),'mm');
			y = get_year(dtime.substring(6,10),'yyyy');		
		break;
		case "dd/mm/yy" :
		case "dd-mm-yy" :
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,5),'mm');
			y = get_year(dtime.substring(6,8),'yy');		
		break;	
		case "mm/dd/yyyy" :
		case "mm-dd-yyyy" :		
			d = get_day(dtime.substring(3,5));
			m = get_month(dtime.substring(0,2),'mm');
			y = get_year(dtime.substring(6,10),'yyyy');		
		break;
		case "mm/dd/yy" :
		case "mm-dd-yy" :		
			d = get_day(dtime.substring(3,5));
			m = get_month(dtime.substring(0,2),'mm');
			y = get_year(dtime.substring(6,8),'yy');		
		break;
		case "yy-mm-dd" :
			d = get_day(dtime.substring(6,8));
			m = get_month(dtime.substring(3,5),'mm');
			y = get_year(dtime.substring(0,2),'yy');		
		break;
		case "yyyy-mm-dd" :
			d = get_day(dtime.substring(8,10));
			m = get_month(dtime.substring(5,7),'mm');
			y = get_year(dtime.substring(0,4),'yyyy');		
		break;		
		case "dd/mon/yyyy" :
		case "dd-mon-yyyy" :		
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,6),'mon');
			y = get_year(dtime.substring(7,11),'yyyy');		
		break;
		case "dd/mon/yy" :
		case "dd-mon-yy" :		
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,6),'mon');
			y = get_year(dtime.substring(7,9),'yy');		
		break;
		case "dd/month/yyyy" :
		case "dd-month-yyyy" :
			len = dtime.length;
			switch (tformat) { 
			  case "12":
			    yend = len - 9;
			    ystart = len - 13;
			    mend = len - 14;
			  break;
			  case "24":
			    yend = len - 6;
			    ystart = len - 10;
			    mend = len - 11;
			  break;
			  default:
			    yend = len;
			    ystart = len - 4;
			    mend = len - 5;			
			  break;
			}
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,mend),'month');
			y = get_year(dtime.substring(ystart,yend),'yyyy');			
		break;
		case "dd/month/yy" :
		case "dd-month-yy" :
			len = dtime.length;
			switch (tformat) { 
			  case "12":
			    yend = len - 9;
			    ystart = len - 11;
			    mend = len - 12;
			  break;
			  case "24":
			    yend = len - 6;
			    ystart = len - 8;
			    mend = len - 9;
			  break;
			  default:
			    yend = len;
			    ystart = len - 2;
			    mend = len - 3;			
			  break;
			}			
			d = get_day(dtime.substring(0,2));
			m = get_month(dtime.substring(3,mend),'month');
			y = get_year(dtime.substring(ystart,yend),'yy');		
		break;
									
		default :
			d = get_day(dtime.substring(8,10));
			m = get_month(dtime.substring(5,7),'mm');
			y = get_year(dtime.substring(0,4),'yyyy');
		break;
	}

	if (dtime.indexOf(':')==-1){
	  h = gNow.getHours();
	  i = gNow.getMinutes();
	}
	else {
	  len = dtime.length;
	  switch (tformat) { 
		case "12":
		    hstart = len - 8;
		    hend = len - 6;
		    istart = len - 5;
			iend = len-3;
		break;
		case "24":
		default:
		    hstart = len - 5;
		    hend = len - 3;
		    istart = len - 2;
			iend = len;
		break;
	  }
	  h = dtime.substring(hstart,hend);
	  i = dtime.substring(istart,iend);
	  if (isNaN(h)) h = gNow.getHours();
	  else{
	    if (tformat=='12'){
		  h = h%12;
		  if (dtime.substring(len-2,len).toLowerCase()=='pm') h = h+12;
		}
		else
	      h = h * 1;
	  }
	  if (isNaN(i)) i = gNow.getMinutes();
	  else i= i * 1;	  
	}
	if (h<10) h = '0'+h;
	if (i<10) i = '0'+i;
	
	document.getElementById(name2).value = y + '-' + m + '-' + d + ' ' + h + ':' + i;
}

function get_day(d){
	var gNow = new Date();
	if (!d) d = gNow.getDate();
	if (isNaN(d)) d = gNow.getDate();
	else d = d*1;
	if (d<10) d = '0'+d;
	return d;
}

function get_month(m,format){
	var gNow = new Date();
	var mon;
	switch(format){
		case "month":
			m = m.toLowerCase();
			switch(m){
				case "january": 	mon = '01';		break;			
  				case "february": mon = '02';	  	break;			
		  		case "march":  mon = '03';	  	break;			
		  		case "april":  mon = '04';	  	break;			
		  		case "may":  	mon = '05';		  	break;			
		  		case "june":	    	mon = '06';	  	break;			
		  		case "july":	    	mon = '07';		  	break;			
		  		case "august":		    	mon = '08';		  	break;			
		  		case "september":		    	mon = '09';		  	break;			
		  		case "october":		    	mon = '10';		  	break;			
				case "november":		    mon = '11';		  break;			
		  		case "december":		    mon = '12';		  		  break;			
		  		default:	    
					mon = gNow.getMonth() + 1;
					if (mon<10) mon = '0' +  mon;
		  		break;		  		  		  
			}
		break;
	  
	  	case "mon":
	    	m = m.toLowerCase();
		    switch(m){
				case "jan":				mon = '01';			break;			
	  			case "feb":		    mon = '02';		  break;			
			 	case "mar":		    mon = '03';		  break;			
			    case "apr":		    mon = '04';		  break;			
		  		case "may":		    mon = '05';		  break;			
		  		case "jun":		    mon = '06';		  break;			
		  		case "jul":		    mon = '07';		  break;			
		  		case "aug":		    mon = '08';		  break;			
		  		case "sep":		    mon = '09';		  break;			
		  		case "oct":		    mon = '10';		  break;			
		  		case "nov":		    mon = '11';		  break;			
		  		case "dec":		    mon = '12';		  		  break;			
		  		default:
		    		mon = gNow.getMonth() + 1;
					if (mon<10) mon = '0' +  mon;
		  		break;		  		  		  
			}
	  	break;
	  
	  	case "mm":
	    	if (isNaN(m)) mon = gNow.getMonth()+1;
			else mon = m * 1;
			if (mon<10) mon = '0' +  mon;		
	  	break;
	  
	  	default:
	    	mon = gNow.getMonth() + 1;
			if (mon<10) mon = '0' +  mon;		
	  	break;
	} 
	return mon;
}

function get_year(y,format){
	var gNow = new Date();
	if (!y) y = gNow.getYear();
  if (isNaN(y)) y = gNow.getYear();
	else{
		if (format=='yy'){
			if(y<=30) y = 2000+y;
			else y = 1900+y;
		}
	}
	if (y<1000) y=1900+y;
	return y;
}

