From 2614fff37681bfba9b33b3b3dcd19fc527fb2ad9 Mon Sep 17 00:00:00 2001 From: Shane Tomlinson <stomlinson@mozilla.com> Date: Thu, 26 Jan 2012 15:00:45 +0000 Subject: [PATCH] Add a delay once the user is provisioned - this gives the user time to read the message. close #966 --- .../dialog/controllers/primary_user_provisioned.js | 11 ++++++++--- .../cases/controllers/primary_user_provisioned.js | 2 ++ 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/resources/static/dialog/controllers/primary_user_provisioned.js b/resources/static/dialog/controllers/primary_user_provisioned.js index 5e12f8c67..e5722a0a5 100644 --- a/resources/static/dialog/controllers/primary_user_provisioned.js +++ b/resources/static/dialog/controllers/primary_user_provisioned.js @@ -22,7 +22,8 @@ BrowserID.Modules.PrimaryUserProvisioned = (function() { addEmailToCurrentUser = !!options.add, complete = function(status) { options.ready && options.ready(status || false); - }; + }, + delay = options.complete_delay || 3000; self.checkRequired(options, "email", "assertion"); @@ -31,7 +32,9 @@ BrowserID.Modules.PrimaryUserProvisioned = (function() { if(addEmailToCurrentUser) { network.addEmailWithAssertion(assertion, function(status) { if(status) { - self.publish("primary_user_ready", options); + setTimeout(function() { + self.publish("primary_user_ready", options); + }, delay); } else { self.getErrorDialog(errors.addEmailWithAssertion, complete)(); @@ -41,7 +44,9 @@ BrowserID.Modules.PrimaryUserProvisioned = (function() { else { network.authenticateWithAssertion(email, assertion, function(status) { if(status) { - self.publish("primary_user_ready", options); + setTimeout(function() { + self.publish("primary_user_ready", options); + }, delay); } else { self.getErrorDialog(errors.authenticateWithAssertion, complete)(); diff --git a/resources/static/test/cases/controllers/primary_user_provisioned.js b/resources/static/test/cases/controllers/primary_user_provisioned.js index bdd5f60cf..fb228c05c 100644 --- a/resources/static/test/cases/controllers/primary_user_provisioned.js +++ b/resources/static/test/cases/controllers/primary_user_provisioned.js @@ -37,6 +37,8 @@ function createController(config) { controller = bid.Modules.PrimaryUserProvisioned.create(); + config = config || {}; + config.complete_delay = 1; controller.start(config); } -- GitLab