/* jshint node:true */

var _ = require('underscore');
var uuid = require('node-uuid');

module.exports = (function() {

  function User(socketArg) {
    this.id = uuid.v4();
    this._socket = socketArg;
    this.name = 'Nameless Room';
  }

  User.prototype = {

    message: function(name, arg) {
      this._socket.emit('message-' + name, arg);
    },

    _serverMessage: function(name, arg) {
      this._socket.emit('cloak-' + name, arg);
    },

    leaveRoom: function() {
      if (this.room !== undefined) {
        this.room.removeMember(this);
      }
    },

    enterRoom: function(room) {
      room.addMember(this);
    },

    getRoom: function() {
      return this.room;
    },

    connected: function() {
      return this.disconnectedSince === null;
    },

    _userData: function() {
      return {
        id: this.id,
        name: this.name
      };
    }

  };

  return User;

})();

/* jshint node:true */

var _ = require('underscore');
var uuid = require('node-uuid');

module.exports = (function() {

  function User(socketArg) {
    this.id = uuid.v4();
    this._socket = socketArg;
    this.name = 'Nameless User';
  }

  User.prototype = {

    message: function(name, arg) {
      this._socket.emit('message-' + name, arg);
    },

    _serverMessage: function(name, arg) {
      this._socket.emit('cloak-' + name, arg);
    },

    leaveRoom: function() {
      if (this.room !== undefined) {
        this.room.removeMember(this);
      }
    },

    enterRoom: function(room) {
      room.addMember(this);
    },

    getRoom: function() {
      return this.room;
    },

    connected: function() {
      return this.disconnectedSince === null;
    },

    _userData: function() {
      return {
        id: this.id,
        name: this.name
      };
    }

  };

  return User;

})();

Change default name of User class to 'Nameless User'
Change default name of User class to 'Nameless User'