diff --git a/lib/javascript-static.js b/lib/javascript-static.js
index 5e06bc27f9d..d659c7b8657 100644
--- a/lib/javascript-static.js
+++ b/lib/javascript-static.js
@@ -275,8 +275,17 @@ M.util.show_confirm_dialog = function(e, args) {
             }
         };
 
-        var buttons = [ {text: M.str.moodle.cancel, handler: handle_cancel, isDefault: true},
-                        {text: M.str.moodle.yes, handler: handle_yes} ];
+        if (!args.cancellabel) {
+            args.cancellabel = M.str.moodle.cancel;
+        }
+        if (!args.continuelabel) {
+            args.continuelabel = M.str.moodle.yes;
+        }
+
+        var buttons = [
+            {text: args.cancellabel,   handler: handle_cancel, isDefault: true},
+            {text: args.continuelabel, handler: handle_yes}
+        ];
 
         simpledialog.cfg.queueProperty('buttons', buttons);
 
diff --git a/lib/outputactions.php b/lib/outputactions.php
index 133cec63772..cd5dad4efab 100644
--- a/lib/outputactions.php
+++ b/lib/outputactions.php
@@ -85,8 +85,10 @@ class component_action {
  * Confirm action
  */
 class confirm_action extends component_action {
-    public function __construct($message, $callback=null) {
-        parent::__construct('click', 'M.util.show_confirm_dialog', array('message' => $message, 'callback' => $callback));
+    public function __construct($message, $callback = null, $continuelabel = null, $cancellabel = null) {
+        parent::__construct('click', 'M.util.show_confirm_dialog', array(
+                'message' => $message, 'callback' => $callback,
+                'continuelabel' => $continuelabel, 'cancellabel' => $cancellabel));
     }
 }
 
diff --git a/lib/outputcomponents.php b/lib/outputcomponents.php
index 79f01e0db2c..1958322f1d1 100644
--- a/lib/outputcomponents.php
+++ b/lib/outputcomponents.php
@@ -481,7 +481,7 @@ class single_button implements renderable {
      * @return void
      */
     public function add_confirm_action($confirmmessage) {
-        $this->add_action(new component_action('click', 'M.util.show_confirm_dialog', array('message' => $confirmmessage)));
+        $this->add_action(new confirm_action($confirmmessage));
     }
 
     /**