###
Returns a User ID by it's ID
###
exports.get_by_id = (connection, user_id, fn) ->

	connection.query 'SELECT * FROM users WHERE users.id=? LIMIT 1;', [ 1 * user_id ], (err, results) ->

		if err
			fn err
		else
			fn err, results[0]

###
Returns a User ID the Username
###
exports.get_by_username = (connection, username, fn) ->

	connection.query 'SELECT * FROM users WHERE users.username=? LIMIT 1;', [ username ], (err, results) ->

		if err
			fn err
		else
			fn err, results[0]

###
Returns all users that match this filter.
###
exports.find = (connection, search_options, fn) ->
	
	connection.query 'SELECT * FROM users;', [  ], (err, results) ->

		if err
			fn err
		else
			fn err, results

###
Handles validation and create or update a user.
###
exports.save = (connection, user_params, fn) ->
	fn()

###
Removes the User with the specified ID
###
exports.delete = (connection, user_id, fn) ->
	fn()
