diff --git a/src/index.html b/src/index.html index 58229c48..b2c642ca 100644 --- a/src/index.html +++ b/src/index.html @@ -21,6 +21,11 @@ name="keywords" content="{{metaService.data.keywords}}" > + diff --git a/src/js/config/pageTitleUpdate.js b/src/js/config/pageTitleUpdate.js index ad073a0a..5af14727 100644 --- a/src/js/config/pageTitleUpdate.js +++ b/src/js/config/pageTitleUpdate.js @@ -7,16 +7,13 @@ module.exports = function(app) { ) { // event listener for title change $rootScope.$on('routeSegmentChange', function(event, current, previous) { - if ($routeSegment.chain && - $routeSegment.chain[$routeSegment.chain.length - 1] && - $routeSegment.chain[$routeSegment.chain.length - 1].params.title - ) { - metaService.set({ - title: - $routeSegment.chain[$routeSegment.chain.length - 1].params.title || - 'PaperHive' - }); - } + var params = $routeSegment.chain && + $routeSegment.chain[$routeSegment.chain.length - 1] && + $routeSegment.chain[$routeSegment.chain.length - 1].params; + metaService.set({ + title: params.title || 'PaperHive', + statusCode: params.statusCode || 200 + }); }); } ]); diff --git a/src/js/config/routes.js b/src/js/config/routes.js index 49d6033f..756acd46 100644 --- a/src/js/config/routes.js +++ b/src/js/config/routes.js @@ -5,6 +5,7 @@ module.exports = function(app) { function($routeSegmentProvider, $routeProvider) { $routeSegmentProvider .when('/', 'main') + .when('/404', '404') .when('/articles/new', 'articles_new') .when('/articles/:articleId', 'articles') .when('/articles/:articleId/activity', 'articles.activity') @@ -35,6 +36,12 @@ module.exports = function(app) { templateUrl: 'templates/main/main.html', title: 'PaperHive' }) + // 404 page not found + .segment('404', { + templateUrl: 'templates/shared/404.html', + title: '404 – page not found', + statusCode: 404 + }) .segment('articles', { templateUrl: 'templates/articles/index.html', dependencies: ['articleId'], @@ -150,7 +157,7 @@ module.exports = function(app) { }) ; - $routeProvider.otherwise({redirectTo: '/'}); + $routeProvider.otherwise({redirectTo: '/404'}); } ]); }; diff --git a/src/templates/shared/404.html b/src/templates/shared/404.html new file mode 100644 index 00000000..9b603de7 --- /dev/null +++ b/src/templates/shared/404.html @@ -0,0 +1,13 @@ +
+ The page you requested does not exist. +
+