@EventHandler
    public void onSignDestroy(BlockBreakEvent event)
    {
        Block block = event.getBlock();

        if (block.getType().equals(Material.SIGN)
                || block.getType().equals(Material.WALL_SIGN)
                || block.getType().equals(Material.SIGN_POST))
        {
            Player player = event.getPlayer();
            BlockState state = block.getState();
            org.bukkit.block.Sign sign = ((org.bukkit.block.Sign) state);
            String[] signtext = sign.getLines();

            if (config.signProtectionEnabled && (signtext[0].equalsIgnoreCase(config.hiddenSignText)))
            {
                if (player.hasPermission("hidden.signs.destroy"))
                {
                    locale.sendSignDestroy(player);
                }
                else
                {
                    locale.sendNoPermission(player);
                    event.setCancelled(true);
                    sign.update();
                }
            }
        }
    }