const User = (function(){
  function User(system, container, nick){
    this.container = container;
    this.isOp = false;
    this.isVoice = false;
    this.nick = nick;
    this.system = system;
  }

  User.prototype.remove = function(){
    this.system.gui.removeUser(this.container);
  };

  User.prototype.op = function(){
    this.system.gui.opUser(this.container);
    this.isOp = true;
  };

  User.prototype.deop = function(){
    this.system.gui.deopUser(this.container, this.isVoice);
    const nick = this.container.getElementsByClassName("nick")[0];
    if(this.isVoice){
      nick.innerHTML = "+"+this.nick;
    }else{
      nick.innerHTML = this.nick;
    }
    var split = nick.className.split(" ");
    split.splice(split.indexOf("op"), 1);
    nick.className = split.join(" ");
    this.isOp = false;
  };

  User.prototype.voice = function(){
    var nick = this.container.getElementsByClassName("nick")[0];
    nick.className += " voice";
    if(!this.isOp){
      nick.innerHTML = "+"+this.nick;
    }
    this.isVoice = true;
  };

  User.prototype.devoice = function(){
    const nick = this.container.getElementsByClassName("nick")[0];
    if(!this.isOp){
      nick.innerHTML = this.nick;
    }
    var split = nick.className.split(" ");
    split.splice(split.indexOf("voice"), 1);
    nick.className = split.join(" ");
    this.isVoice = false;
  };

  User.prototype.inaktiv = function(){
    this.container.getElementsByClassName("nick")[0].className += " inaktiv";
  };

  User.prototype.uninaktiv = function(){
    const dom = this.container.getElementsByClassName("nick")[0];
    var className = dom.className.split(" ");
    var pos;
    if((pos = className.indexOf("inaktiv")) !== -1){
      className.splice(pos, 1);
    }
    dom.className = className.join(" ");
  };

  User.prototype.updateNick = function(nick){
     const dom = this.container.getElementsByClassName("nick")[0];
     if(this.isOp){
       dom.innerHTML = "@"+nick;
     }else if(this.isVoice){
       dom.innerHTML = "+"+nick;
     }else{
       dom.innerHTML = nick;
     }
     this.nick = nick;
  };

  return User;
})();

@@ -358,24 +358,35 @@
 is.container
+, this.nick
 );%0A    this.
@@ -494,92 +494,14 @@
 his.
-isVoice);%0A    const 
 nick
- = this.container.getElementsByClassName(%22nick%22)%5B0%5D;%0A    if(
+, 
 this
@@ -513,287 +513,133 @@
 ice)
-%7B
+;
 %0A    
-  nick.innerHTML = %22+%22+this.nick;%0A    %7Delse%7B%0A      nick.innerHTML = this.nick
+this.isOp = false
 ;%0A  
-  %7D%0A    var split = nick.className.split(%22 %22);%0A    split.splice(split.indexOf(%22op%22), 1);%0A    nick.className = split.join(%22 %22);%0A    this.isOp = false;%0A  %7D;%0A%0A  User.prototype.voice = function()%7B
+%7D;%0A%0A  User.prototype.voice = function()%7B%0A    this.system.gui.voiceUser(this.container, this.nick);
 %0A   

Update user.js