
function makeDrags()
{
	// find all draggable posie
	var find = $$( "div.posieDrag" );
	
	find.each( function( el, i )
	{
		// get inital width
		var theWidth = el.getSize().x;
		
		// make them draggable
		var theDrag = new Drag( el,
		{
		    snap: 0,
			onStart: function( el )
			{	// on start = revert to original size
				var fx = new Fx.Morph( el, {
						duration: 370,
						transition: "quad:out",
						link: "chain"}
					);
					fx.start({
						"width": theWidth
					}).start({
						"padding-left": 37,
						"padding-right": 37
					}).chain( function() {
					});
			},
		    onComplete: function( el )
			{	// on finish = revert to maximized size
				var fx = new Fx.Morph( el, {
						duration: 370,
						transition: "quad:in",
						link: "chain"}
					);
					fx.start({
						"padding-left": 8,
						"padding-right": 8
					}).start({
						"width": 2000
					}).chain( function() {
					});
				
				// and update db
				var req = new Request(
					{
						method: "post",
						url: "/POSIE_B/welcome/change_the_world",
						data: {
							"x" : el.getPosition().x,
							"y" : el.getPosition().y,
							"id" : el.get( "id" )
						}
					}).send();
		    }
		});
		
		// make the big
		var fx = new Fx.Morph( el, {
				duration: 370,
				transition: "quad:in",
				link: "chain"}
			);
			fx.start({
				"background-color": "#fff",
				"color": "#000"
			}).start({
				"background-color": "#000",
				"color": "#fff",
				"width": 2000
			}).chain( function() {
			});
	});
}

function makeInPageJumps()
{
	// find all inpagejumps
	var find = $$( "a.inPageJump" );
	
	// make them slide
	find.each( function( el, i )
	{
		// get original destination
		var dest = el.get( "href" );

		// edit destination
		el.set( "href", null );
		// add onclick
		el.set( "onclick", "jump('"+dest+"');" );
	});
}

function jump( dest )
{
	switch( dest )
	{
		case "/POSIE_B/portfolio" :
			// select portfolio world and jump
			var pos = $( "worldPortfolio" ).getPosition();
			
			// and jump
			var off = {
				"x" : pos.x,
				"y" : pos.y
			}
			break;
		
		default :
			var off = {
				"x" : 0,
				"y" : 0
			}
			break;
	}
	
	var theJump = new Fx.Scroll( window, {
			    offset: off,
				duration: 1370,
				transition: "quad:in:out"
			}).start();
	
	return false;
}

window.addEvent( "domready", function() {
	makeDrags();
	makeInPageJumps();
});