@EventHandler(priority = EventPriority.HIGH)
 public void onSSPreTransactionEvent(SSPreTransactionEvent event) {
   if (event.isCancelled() || !event.canBeCancelled()) return;
   String sOperation = event.getOperation();
   SignShopPlayer ssPlayer = event.getPlayer();
   if (ssPlayer.hasPerm(("SignShop.DenyUse." + sOperation), false)
       && !ssPlayer.hasPerm(("SignShop.Signs." + sOperation), false)
       && !ssPlayer.hasPerm(("SignShop.Admin." + sOperation), true)) {
     ssPlayer.sendMessage(SignShopConfig.getError("no_permission_use", null));
     event.setCancelled(true);
   }
 }
 private boolean hasPermit(SignShopPlayer ssPlayer, List<String> operation, World world) {
   return (!SignShopConfig.getEnablePermits()
       || operation.contains("playerIsOp")
       || ssPlayer.hasPerm("SignShop.Permit", world, true));
 }