diff --git a/resources/assets/javascripts/lib/dialog.js b/resources/assets/javascripts/lib/dialog.js
index 0efd76f36124eaf97fe88953ac9712559272f8ff..23a17af619fdd76f2b654203b7434b4ac6398702 100644
--- a/resources/assets/javascripts/lib/dialog.js
+++ b/resources/assets/javascripts/lib/dialog.js
@@ -34,23 +34,18 @@ function extractButtons(element) {
             var cancel = $(this).is('.cancel');
             var index = cancel ? 'cancel' : label;
             var classes = $(this).attr('class') || '';
+            var name = $(this).attr('name') || '';
+            var disabled = $(this).is(':disabled');
 
             classes = classes.replace(/\bbutton\b/, '').trim();
 
-            if ($(this).is('.accept,.cancel')) {
-                buttons[index] = {
-                    text: label,
-                    click: () => this.click()
-                };
-            } else {
-                buttons[index] = () => this.click();
-            }
-
-            if ($(this).is(':disabled')) {
-                classes = classes + ' disabled';
-            }
-
-            buttons[index]['class'] = classes;
+            buttons[index] = {
+                text: label,
+                class: classes,
+                name: name,
+                disabled: disabled,
+                click: () => this.click()
+            };
         });
 
     return buttons;