| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 | 
							- /**
 -  * Handles commands received via chat messages.
 -  */
 - var CommandsProcessor = (function()
 - {
 -     /**
 -      * Constructs new CommandProccessor instance from a message.
 -      * @param message the message
 -      * @constructor
 -      */
 -     function CommandsPrototype(message)
 -     {
 -         /**
 -          * Extracts the command from the message.
 -          * @param message the received message
 -          * @returns {string} the command
 -          */
 -         function getCommand(message)
 -         {
 -             if(message)
 -             {
 -                 for(var command in commands)
 -                 {
 -                     if(message.indexOf("/" + command) == 0)
 -                         return command;
 -                 }
 -             }
 -             return "";
 -         };
 - 
 -         var command = getCommand(message);
 - 
 -         /**
 -          * Returns the name of the command.
 -          * @returns {String} the command
 -          */
 -         this.getCommand = function()
 -         {
 -             return command;
 -         }
 - 
 - 
 -         var messageArgument = message.substr(command.length + 2);
 - 
 -         /**
 -          * Returns the arguments of the command.
 -          * @returns {string}
 -          */
 -         this.getArgument = function()
 -         {
 -             return messageArgument;
 -         }
 -     }
 - 
 -     /**
 -      * Checks whether this instance is valid command or not.
 -      * @returns {boolean}
 -      */
 -     CommandsPrototype.prototype.isCommand = function()
 -     {
 -         if(this.getCommand())
 -             return true;
 -         return false;
 -     }
 - 
 -     /**
 -      * Processes the command.
 -      */
 -     CommandsPrototype.prototype.processCommand = function()
 -     {
 -         if(!this.isCommand())
 -             return;
 - 
 -         commands[this.getCommand()](this.getArgument());
 - 
 -     }
 - 
 -     /**
 -      * Processes the data for topic command.
 -      * @param commandArguments the arguments of the topic command.
 -      */
 -     var processTopic = function(commandArguments)
 -     {
 -         var topic = Util.escapeHtml(commandArguments);
 -         connection.emuc.setSubject(topic);
 -     }
 - 
 -     /**
 -      * List with supported commands. The keys are the names of the commands and
 -      * the value is the function that processes the message.
 -      * @type {{String: function}}
 -      */
 -     var commands = {
 -         "topic" : processTopic
 -     };
 - 
 -     return CommandsPrototype;
 - })();
 
 
  |