@Command(aliases = {"refillcooldown", "dispensercooldown"}, usage = "", desc = "Shows how much cooldown is still left on a dispenser.", max = 0)
	public void refillcooldown(CommandContext args, CommandSender sender) throws CommandException {
		// wrap player
		BukkitPlayer player = this.plugin.getWorldEdit().wrapPlayer((Player) sender);
		
		// check permissions
		this.plugin.checkPermission(sender, "dispenserrefill.general.dispenser");
		
		// get position
		WorldVector pos = player.getBlockTrace(300);
		
		if (pos != null) {
			// check for correct block
			if (pos.getWorld().getBlockType(pos) != Material.DISPENSER.getId()) throw new CommandException("This block doesn't like cookies!"); // XXX: ee
			
			// get current location
			Location dispenserPosition = new Location(this.plugin.getServer().getWorld(pos.getWorld().getName()), pos.getBlockX(), pos.getBlockY(), pos.getBlockZ());

			// loop through dispensers
			for(InfiniteContainer dispenser : this.plugin.getContainerDatabase().getContainerList()) {
				Location currentPosition = dispenser.getLocation();
				
				if (currentPosition.equals(dispenserPosition)) {
					// get cooldown
					long cooldownPeriod = (dispenser.getCooldownPeriod() - (currentPosition.getWorld().getFullTime() - dispenser.getCooldown()));
					
					// no cooldown
					if (cooldownPeriod <= -1) {
						player.print("There is no cooldown left.");
						return;
					}
					
					// cooldown active
					player.print("There are still " + cooldownPeriod + " ticks left.");
					
					// stop loop & command
					return;
				}
			}
		} else
			throw new CommandException("No block in sight!");
	}