var uncoveredItems=new Hash();
var global_cardCount=0;
var global_pairCount=0;

function changeCard(face, image_id, path, back_path)
{
	global_cardCount+=1;
	if(global_cardCount==1)
		cardText="card,";
	else
		cardText="cards,";
		
	$('card_count').update("You have turned over "+global_cardCount+" "+cardText);
	$(image_id).src=path;
	uncoveredItems.set(image_id, face);
	
	if(uncoveredItems.size()>=2)
	{
		if(examineItems(uncoveredItems)==true)
		{
			global_pairCount+=1;
			
			if(global_pairCount==1)
				cardText="pair.";
			else
				cardText="pairs.";	
			$('pair_count').update("and found "+global_pairCount+" "+cardText);			
			
			
			
			uncoveredItems.each( 
								function(pair) 
								{
									new PeriodicalExecuter(
															function(pe) 
															{
																$(pair.key).style.visibility="hidden";
   																pe.stop();
    														},
														2);
								}
							);
							
		} else {
			uncoveredItems.each( 
								function(pair) 
								{
								
									new PeriodicalExecuter(
															function(pe) 
															{
 																$(pair.key).src=back_path;
   																pe.stop();
    														},
    							3);



								}
							);
							
		}
		uncoveredItems=new Hash();


	}
	
}

function examineItems(items)
{
	var faces=new Hash();

	items.each( 
					function(pair) 
					{
						faces.set(pair.value,pair.key);
					}
				);
	var result=(faces.size()==1);
	return result;
}