From 2515a8769efc5f7f5083306ba2aac79f6a00bda2 Mon Sep 17 00:00:00 2001 From: cobbspur Date: Mon, 25 May 2015 17:00:42 +0100 Subject: [PATCH] Fix route for About page No Issue - Routes, views and controllers updated for about page - fix up tests and add redirect check --- .../app/controllers/{settings => }/about.js | 4 +-- ghost/admin/app/router.js | 2 ++ ghost/admin/app/routes/about.js | 35 +++++++++++++++++++ ghost/admin/app/routes/settings/about.js | 28 ++------------- .../app/templates/{settings => }/about.hbs | 2 +- ghost/admin/app/views/about.js | 5 +++ ghost/admin/app/views/settings/about.js | 5 --- 7 files changed, 47 insertions(+), 34 deletions(-) rename ghost/admin/app/controllers/{settings => }/about.js (68%) create mode 100644 ghost/admin/app/routes/about.js rename ghost/admin/app/templates/{settings => }/about.hbs (94%) create mode 100644 ghost/admin/app/views/about.js delete mode 100644 ghost/admin/app/views/settings/about.js diff --git a/ghost/admin/app/controllers/settings/about.js b/ghost/admin/app/controllers/about.js similarity index 68% rename from ghost/admin/app/controllers/settings/about.js rename to ghost/admin/app/controllers/about.js index c8bb28ebc3..365ceefd40 100644 --- a/ghost/admin/app/controllers/settings/about.js +++ b/ghost/admin/app/controllers/about.js @@ -1,5 +1,5 @@ import Ember from 'ember'; -var SettingsAboutController = Ember.Controller.extend({ +var AboutController = Ember.Controller.extend({ updateNotificationCount: 0, actions: { @@ -9,4 +9,4 @@ var SettingsAboutController = Ember.Controller.extend({ } }); -export default SettingsAboutController; +export default AboutController; diff --git a/ghost/admin/app/router.js b/ghost/admin/app/router.js index 27b93e9d01..615df78d4f 100644 --- a/ghost/admin/app/router.js +++ b/ghost/admin/app/router.js @@ -20,6 +20,7 @@ Router.map(function () { this.route('signout'); this.route('signup', {path: '/signup/:token'}); this.route('reset', {path: '/reset/:token'}); + this.route('about', {path: '/about'}); this.resource('posts', {path: '/'}, function () { this.route('post', {path: ':post_id'}); @@ -37,6 +38,7 @@ Router.map(function () { this.route('user', {path: '/:slug'}); }); + // Redirect about page this.route('about'); this.route('tags'); this.route('labs'); diff --git a/ghost/admin/app/routes/about.js b/ghost/admin/app/routes/about.js new file mode 100644 index 0000000000..ff6c1d2f57 --- /dev/null +++ b/ghost/admin/app/routes/about.js @@ -0,0 +1,35 @@ +import AuthenticatedRoute from 'ghost/routes/authenticated'; +import loadingIndicator from 'ghost/mixins/loading-indicator'; +import styleBody from 'ghost/mixins/style-body'; + +var AboutRoute = AuthenticatedRoute.extend(styleBody, loadingIndicator, { + titleToken: 'About', + + classNames: ['view-about'], + + cachedConfig: false, + model: function () { + var cachedConfig = this.get('cachedConfig'), + self = this; + if (cachedConfig) { + return cachedConfig; + } + + return ic.ajax.request(this.get('ghostPaths.url').api('configuration')) + .then(function (configurationResponse) { + var configKeyValues = configurationResponse.configuration; + cachedConfig = {}; + configKeyValues.forEach(function (configKeyValue) { + cachedConfig[configKeyValue.key] = configKeyValue.value; + }); + self.set('cachedConfig', cachedConfig); + return cachedConfig; + }); + }, + + renderTemplate: function () { + this.render('about', {into: 'application'}); + } +}); + +export default AboutRoute; diff --git a/ghost/admin/app/routes/settings/about.js b/ghost/admin/app/routes/settings/about.js index 1e166742a5..447b1ee666 100644 --- a/ghost/admin/app/routes/settings/about.js +++ b/ghost/admin/app/routes/settings/about.js @@ -3,32 +3,8 @@ import loadingIndicator from 'ghost/mixins/loading-indicator'; import styleBody from 'ghost/mixins/style-body'; var SettingsAboutRoute = AuthenticatedRoute.extend(styleBody, loadingIndicator, { - titleToken: 'About', - - classNames: ['settings-view-about'], - - cachedConfig: false, - model: function () { - var cachedConfig = this.get('cachedConfig'), - self = this; - if (cachedConfig) { - return cachedConfig; - } - - return ic.ajax.request(this.get('ghostPaths.url').api('configuration')) - .then(function (configurationResponse) { - var configKeyValues = configurationResponse.configuration; - cachedConfig = {}; - configKeyValues.forEach(function (configKeyValue) { - cachedConfig[configKeyValue.key] = configKeyValue.value; - }); - self.set('cachedConfig', cachedConfig); - return cachedConfig; - }); - }, - - renderTemplate: function () { - this.render('settings/about', {into: 'application'}); + beforeModel: function () { + this.transitionTo('about'); } }); diff --git a/ghost/admin/app/templates/settings/about.hbs b/ghost/admin/app/templates/about.hbs similarity index 94% rename from ghost/admin/app/templates/settings/about.hbs rename to ghost/admin/app/templates/about.hbs index fe0d4b8f83..cc3e9814cb 100644 --- a/ghost/admin/app/templates/settings/about.hbs +++ b/ghost/admin/app/templates/about.hbs @@ -3,7 +3,7 @@
- {{gh-notifications location="settings-about-upgrade" notify="updateNotificationChange"}} + {{gh-notifications location="about-upgrade" notify="updateNotificationChange"}}
diff --git a/ghost/admin/app/views/about.js b/ghost/admin/app/views/about.js new file mode 100644 index 0000000000..ca97178f90 --- /dev/null +++ b/ghost/admin/app/views/about.js @@ -0,0 +1,5 @@ +import BaseView from 'ghost/views/settings/content-base'; + +var AboutView = BaseView.extend(); + +export default AboutView; diff --git a/ghost/admin/app/views/settings/about.js b/ghost/admin/app/views/settings/about.js deleted file mode 100644 index 032be3076e..0000000000 --- a/ghost/admin/app/views/settings/about.js +++ /dev/null @@ -1,5 +0,0 @@ -import BaseView from 'ghost/views/settings/content-base'; - -var SettingsAboutView = BaseView.extend(); - -export default SettingsAboutView;