
var Thexton = {};



















Thexton.Enlarge = function(element, popup)
{
	size = 1.5;
	//border = 1;

	popup = $(popup);
	popup.show();
	//popup.style.padding = border;
	popup.innerHTML = "<span id='" + popup.id + "_inner' style='border:1px solid #aaaaaa ; background-color:white ; text-align:center'>" + element.innerHTML + "</span>";
//	popup.innerHTML = element.innerHTML;
	popupinner = $(popup.id + '_inner');
	Element.clonePosition(popup, element, {setLeft: true, setTop: true, setWidth: true, setHeight: true, offsetLeft: 0, offsetTop: 0});
	Element.clonePosition(popupinner, element, {setLeft: true, setTop: true, setWidth: true, setHeight: true, offsetLeft: 0, offsetTop: 0});

	os = Element.cumulativeOffset(popupinner);
	origtop = os.top;
	origleft = os.left;
	origwidth = popupinner.getWidth();
	origheight = popupinner.getHeight();
	
	
	Element.setContentZoom(popup, size*100);


	popup.style.top = (origtop - (popupinner.getHeight() - origheight)) + "px";
	popup.style.left = (origleft - ((popupinner.getWidth() - origwidth) / 2)) + "px";

	//size *= .7;
	//popup.style.width = (origwidth*size) + "px";
	//popup.style.height = (origheight*size) + "px";
	//popup.style.left = origleft - ((popup.getWidth() - origwidth) / 2) + "px";
	//popup.style.top = origtop - ((popup.getHeight() - origheight) / 2) + "px";

//	popup.style.width = (popupinner.getWidth() + border/2) + "px";
//	popup.style.height = (popupinner.getHeight() + border/2) + "px";
//	popup.style.left = origleft - ((popup.getWidth() - origwidth) / 2) + "px";
//	popup.style.top = origtop - ((popup.getHeight() - origheight) / 2) + "px";

}


/*

Thexton.Enlarge = function(element)
{
	element = $(element);
	if (element.scaled != 120)
	{
		element.scaled = 120;
		return new Effect.Scale(element, 120, {scaleFromCenter: true, scaleMode:'contents'});
	}
}

Thexton.Enshrink = function(element)
{
	element = $(element);
	//var oldStyle = { top: element.getStyle('top'), left: element.getStyle('left') };
	if (element.scaled == 120)
	{
		element.scaled = 0;
		return new Effect.Scale(element, 80, {scaleFromCenter: true, scaleMode:'contents'});
	}
}
*/

Thexton.Shake = function(element) 
{
	element = $(element);
	var oldStyle = 
	{
		top: element.getStyle('top'),
		left: element.getStyle('left') 
	};
	
	return new Effect.Move(element, 
		{ 
			x:  20, 
			y: 0, 
			duration: 0.05, 
			afterFinishInternal: function(effect) 
			{
				new Effect.Move(effect.element,
					{ 
						x: -40, 
						y: 0, 
						duration: 0.1,  
						afterFinishInternal: function(effect) 
						{
							new Effect.Move(effect.element,
								{ 
									x:  40, 
									y: 0, 
									duration: 0.1,  
									afterFinishInternal: function(effect) 
									{
										new Effect.Move(effect.element,
											{ 
												x: -40, 
												y: 0, 
												duration: 0.1,  
												afterFinishInternal: function(effect) 
												{
													new Effect.Move(effect.element,
														{ 
															x:  40, 
															y: 0, 
															duration: 0.1,  
															afterFinishInternal: function(effect) 
															{
																new Effect.Move(effect.element,
																	{ 
																		x: -20, 
																		y: 0, 
																		duration: 0.05, 
																		afterFinishInternal: function(effect) 
																		{
																			effect.element.undoPositioned().setStyle(oldStyle);
																		}
																	}
																) 
															}
														}
													) 
												}
											}
										) 
									}
								}
							) 
						}
					}
				) 
			}
		}
	);
}



