<?php

/**
 * Module qui les noms réservés
 * 
 * Note : Pour configurer la liste des noms interdits,
 * aller dans le fichier de configuration.
 * 
 * @author Olivier Arteau
 */

class ReservedNick implements Module{
	
    function __construct() {
    	
    }
    
    public function executerCommande(array $param, StatusObject $status) {
		if (isset($param['username'])) {
			$lstNom = ConfigurationLoader::getConfiguration('ReservedNick');
			$lstNom = $lstNom['reserved_nick'];
			
			if (in_array($param['username'], $lstNom)) {
				if (get_class($status) != 'CommandStatus')
    				$status = new CommandStatus();
	    		$status->addMessage('Nom réservé');
	    		$status->cancel();
	    		
	    		return $status;
			}
		}
		
		return PAFServer::$NO_ACTION_TAKEN;
    }
    
    public function getCommandesEnregistre() {
    	return array('login');
    }
    
   	public function onStatusChange(array $param, StatusObject $status) {

   	}
   	
   	public function finalize(array $param, StatusObject $status) {

   	}
}

PAFServer::getInstance()->enregistrerModule(new ReservedNick());
?>