@Override
	public void execute(CommandSender sender, String[] arg1) {
		if (!CommandUtil.hasPermission(sender, PERMISSION_NODES)) {
			sender.sendMessage(plugin.NO_PERMISSION);
			return;
		}
		
		if (arg1.length != 1) {
			sender.sendMessage(ChatColor.RED + "/" + plugin.join + " (channel)");
			return;
		}

		String channelName = arg1[0];
		String playerName = sender.getName();
		try {
			if (plugin.getUtilities().chatChannelExists(channelName)) {
				ChatChannel cc = plugin.getChannel(channelName);
				if (cc.isInvited(playerName) || CommandUtil.hasPermission(sender, PERMISSION_NODES_OVERRIDE)) {
					cc.acceptInvite(playerName);
					return;
				} else {
					String jmsg = plugin.CHANNEL_NOT_INVITED;
					jmsg = jmsg.replace("%channel", cc.getName());
					sender.sendMessage(jmsg);
				}
			} else {
				sender.sendMessage(plugin.CHANNEL_NOT_EXIST);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}