var pageLoadMask = null;
function addToFriends(user_id) {
	if ( pageLoadMask == null ) {
		pageLoadMask = new Ext.LoadMask(document.body);
	}
	pageLoadMask.show();
	new Ajax.Request(HOME_DIR+'user_profiles/add_to_friends/'+user_id,{
		onComplete: function(t) {
			if ( t.responseJSON.success ) {
				$('friend_link').hide();
				pageLoadMask.hide();
			}
			else {
				Ext.Msg.alert('Error',t.responseJSON.error.reasons);
				pageLoadMask.hide();
			}
		},
		on404: function() {
			Ext.Msg.alert('Error','Not Found!');
			pageLoadMask.hide();
		},
		onFailure: function() {
			Ext.Msg.alert('Error','Failed!');
			pageLoadMask.hide();
		},
		evalJSON: true,
		sanitizeJSON: true
	});
}
function removeFromFriends(user_id) {
	
	if ( pageLoadMask == null ) {
		pageLoadMask = new Ext.LoadMask(document.body);
	}
	pageLoadMask.show();
	new Ajax.Request(HOME_DIR+'user_profiles/remove_from_friends/'+user_id,{
		onComplete: function(t) {
			if ( t.responseJSON.success ) {
				removeimg = document.createElement('IMG');
				removeimg.src = HOME_DIR+'images/add_to_friends_btn.gif';
				$('friend_link').innerHTML = removeimg;
				$('friend_link').onclick = eval('function() { addToFriends('+user_id+'); return false; };');
				Ext.Msg.alert('Success!','This member has been removed from your friends');
				pageLoadMask.hide();
			}
			else {
				Ext.Msg.alert('Error',t.responseJSON.error.reasons);
				pageLoadMask.hide();
			}
		},
		on404: function() {
			Ext.Msg.alert('Error','Not Found!');
			pageLoadMask.hide();
		},
		onFailure: function() {
			Ext.Msg.alert('Error','Failed!');
			pageLoadMask.hide();
		},
		evalJSON: true,
		sanitizeJSON: true
	});
}
function approveFriend(request_id) {
	if ( pageLoadMask == null ) {
		pageLoadMask = new Ext.LoadMask(document.body);
	}
	pageLoadMask.show();
	new Ajax.Request(HOME_DIR+'friend_requests/approve/'+request_id,{
		onComplete: function(t) {
			if ( t.responseJSON.success ) {
				Ext.Msg.alert('Success!','This member has been added add a friend');
				var friendsDV = Ext.getCmp('friends-view');
				friendsDV.store.load();
				var requestsDV = Ext.getCmp('requests-view');
				requestsDV.store.load();
				pageLoadMask.hide();
			}
			else {
				Ext.Msg.alert('Error',t.responseJSON.error.reasons);
				pageLoadMask.hide();
			}
		},
		on404: function() {
			Ext.Msg.alert('Error','Not Found!');
			pageLoadMask.hide();
		},
		onFailure: function() {
			Ext.Msg.alert('Error','Failed!');
			pageLoadMask.hide();
		},
		evalJSON: true,
		sanitizeJSON: true
	});
}
function denyFriend(request_id) {
	if ( pageLoadMask == null ) {
		pageLoadMask = new Ext.LoadMask(document.body);
	}
	pageLoadMask.show();
	new Ajax.Request(HOME_DIR+'friend_requests/deny/'+request_id,{
		onComplete: function(t) {
			if ( t.responseJSON.success ) {
				Ext.Msg.alert('Success!','This member will not be your friend');
				pageLoadMask.hide();
				var requestsDV = Ext.getCmp('requests-view');
				requestsDV.store.load();
			}
			else {
				Ext.Msg.alert('Error',t.responseJSON.error.reasons);
				pageLoadMask.hide();
			}
		},
		on404: function() {
			Ext.Msg.alert('Error','Not Found!');
			pageLoadMask.hide();
		},
		onFailure: function() {
			Ext.Msg.alert('Error','Failed!');
			pageLoadMask.hide();
		},
		evalJSON: true,
		sanitizeJSON: true
	});
}

