From 3ad8f9b9a5c0b8a9c2ee0fa40de63f8c004b331f Mon Sep 17 00:00:00 2001
From: zzz <zzz@mail.i2p>
Date: Thu, 28 May 2020 13:02:53 +0000
Subject: [PATCH] i2psnark: Fix js for delete buttons (ticket #2743)

---
 apps/i2psnark/resources/js/delete.js | 44 +++++++++-------------------
 1 file changed, 14 insertions(+), 30 deletions(-)

diff --git a/apps/i2psnark/resources/js/delete.js b/apps/i2psnark/resources/js/delete.js
index c6592104c5..45a22fab01 100644
--- a/apps/i2psnark/resources/js/delete.js
+++ b/apps/i2psnark/resources/js/delete.js
@@ -1,35 +1,19 @@
 function initDelete()
 {
-	var buttons = document.getElementsByClassName("delete1");
-	for(index = 0; index < buttons.length; index++)
-	{
-		var button = buttons[index];
-		addClickHandler1(button);
-	}
-	buttons = document.getElementsByClassName("delete2");
-	for(index = 0; index < buttons.length; index++)
-	{
-		var button = buttons[index];
-		addClickHandler2(button);
-	}
-}
-
-function addClickHandler1(elem)
-{
-	elem.addEventListener("click", function() {
-		if (!confirm(deleteMessage1.replace("{0}", elem.getAttribute("client")))) {
-			event.preventDefault();
-			return false;
-		}
-	});
-}
-
-function addClickHandler2(elem)
-{
-	elem.addEventListener("click", function() {
-		if (!confirm(deleteMessage2.replace("{0}", elem.getAttribute("client")))) {
-			event.preventDefault();
-			return false;
+	var main = document.getElementById("mainsection");
+	main.addEventListener("click", function() {
+		if (!event.target.matches('input')) return;
+		var clname = event.target.className;
+		if (clname == 'delete1') {
+			if (!confirm(deleteMessage1.replace("{0}", event.target.getAttribute("client")))) {
+				event.preventDefault();
+				return false;
+			}
+		} else if (clname == 'delete2') {
+			if (!confirm(deleteMessage2.replace("{0}", event.target.getAttribute("client")))) {
+				event.preventDefault();
+				return false;
+			}
 		}
 	});
 }
-- 
GitLab