diff --git a/core/client/app/routes/setup.js b/core/client/app/routes/setup.js index aeab8703b1..4f11e75ca2 100644 --- a/core/client/app/routes/setup.js +++ b/core/client/app/routes/setup.js @@ -31,10 +31,23 @@ export default Route.extend(styleBody, { // If user is not logged in, check the state of the setup process via the API return this.get('ajax').request(authUrl) .then((result) => { - let setup = result.setup[0].status; + let [setup] = result.setup; - if (setup) { + if (setup.status) { return this.transitionTo('signin'); + } else { + let controller = this.controllerFor('setup/two'); + if (setup.title) { + controller.set('blogTitle', setup.title.replace(/'/gim, '\'')); + } + + if (setup.name) { + controller.set('name', setup.name.replace(/'/gim, '\'')); + } + + if (setup.email) { + controller.set('email', setup.email); + } } }); }, diff --git a/core/server/api/authentication.js b/core/server/api/authentication.js index 9f2ace6259..241227e4ce 100644 --- a/core/server/api/authentication.js +++ b/core/server/api/authentication.js @@ -377,7 +377,13 @@ authentication = { } function formatResponse(isSetup) { - return {setup: [{status: isSetup}]}; + return {setup: [{ + status: isSetup, + // Pre-populate from config if, and only if the values exist in config. + title: config.title || undefined, + name: config.user_name || undefined, + email: config.user_email || undefined + }]}; } tasks = [ diff --git a/core/test/integration/migration_spec.js b/core/test/integration/migration_spec.js index 978a96e11c..653ffdd257 100644 --- a/core/test/integration/migration_spec.js +++ b/core/test/integration/migration_spec.js @@ -136,8 +136,6 @@ describe('Database Migration (special functions)', function () { permissions[34].name.should.eql('Delete clients'); permissions[34].should.be.AssignedToRoles(['Administrator', 'Editor', 'Author']); - console.log(permissions[38]); - // Subscribers permissions[35].name.should.eql('Browse subscribers'); permissions[35].should.be.AssignedToRoles(['Administrator']);