var AddMoreFriends = new Class
({
	_rows: null,
	_validrowCount: 0,
	_validrowPoint: 50,
	_airmilesCounterSwf : null,

	initialize: function()
	{
		this._rows = $$( "#friend-items .formrow" );
		this._rowData = new Array( this._rows.length );
		this.attachSwf();
		
		var rowCounter = 0;
		this._rows.each( function( row )
		{
			var inputs = row.getElements( 'input' );
			var firstName = inputs[0];
			var lastName = inputs[1];
			var emailName = inputs[2];
			
			this._rowData[rowCounter++] = { FirstName: firstName, LastName: lastName, Email: emailName };
			
			firstName.addEvent( 'keydown', this.Eval.bind( this ) ).addEvent( 'keyup', this.Eval.bind( this ) );
			lastName.addEvent( 'keydown', this.Eval.bind( this ) ).addEvent( 'keyup', this.Eval.bind( this ) );
			emailName.addEvent( 'keydown', this.Eval.bind( this ) ).addEvent( 'keyup', this.Eval.bind( this ) );
		}, this );
		
		
		
		var obj = $('enter-details');
		var sendBtn = $$('.btn-send')[0];
		var oldFunc = sendBtn.onclick;
		sendBtn.onclick = null;
		sendBtn.addEvent('click',function() {
		    oldFunc();
		    window.scrollTo(0,obj.getPosition().y);
		}.bind(this));
		// if postback, scroll to enter details form
		// nasty hack
		if ($(document.body).hasClass('postback'))
		    window.scrollTo(0,obj.getPosition().y);
		    
		    
		    
		    
	},
	attachSwf : function() {
	    var flashvars = {};
	    var params = {};
	    var attributes = {
			id : "flash-counter-object",
			name : "flash-counter-object"
	    }
	    swfobject.embedSWF("/assets/flash/RevolvingNumbers.swf", "flash-counter-alt", "277", "88", "8.0.0",false, flashvars,params,attributes );
	},
	
	Eval: function( e )
	{

		this._validrowCount = 0;
		
		for( var i = 0; i < this._rowData.length; i++ )
		{
			var row = this._rowData[i];
			var valid = row.FirstName.value.length > 0 && row.LastName.value.length > 0 && row.Email.value.length > 0;
			
			if( valid ) this._validrowCount++;	
		}
		
		this._airmilesCounterSwf = $('flash-counter-object').updateNumberFlash(200 *  this._validrowCount );
	}
});

var addFriends;

window.addEvent( 'load', function()
{
   if ($('section-send-to-friend'))
	    addFriends = new AddMoreFriends();
  
});

function airmilesCounterFlashLoaded() {
    // called by flash
    if (addFriends)
        addFriends.Eval();
}

function target(name)
{
   window.location.hash=name;
}

