mirror of
https://github.com/Hopiu/angular.js.git
synced 2026-03-16 23:30:23 +00:00
Docs: Error 404 page with simple suggestion for new links
This commit is contained in:
parent
48e69ed4d1
commit
4cdce2d30b
2 changed files with 27 additions and 4 deletions
|
|
@ -169,7 +169,7 @@
|
|||
});
|
||||
|
||||
|
||||
angular.directive('doc:tutorial-nav', function(step) {
|
||||
angular.directive('doc:tutorial-nav', function(step) {
|
||||
return function(element) {
|
||||
var prevStep, codeDiff, nextStep,
|
||||
content;
|
||||
|
|
@ -185,7 +185,7 @@
|
|||
nextStep = 'the_end';
|
||||
codeDiff = 'step-10...step-11';
|
||||
} else {
|
||||
prevStep = 'step_' + pad(step - 1)
|
||||
prevStep = 'step_' + pad(step - 1);
|
||||
nextStep = 'step_' + pad(step + 1);
|
||||
codeDiff = 'step-' + step + '...step-' + step;
|
||||
}
|
||||
|
|
@ -199,7 +199,7 @@
|
|||
|
||||
element.attr('id', 'tutorial-nav');
|
||||
element.append(content);
|
||||
}
|
||||
};
|
||||
|
||||
function pad(step) {
|
||||
return (step < 10) ? ('0' + step) : step;
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ function DocsController($location, $browser, $window) {
|
|||
self.sectionId = parts[1];
|
||||
self.partialId = parts[2] || 'index';
|
||||
self.pages = angular.Array.filter(NG_PAGES, {section:self.sectionId});
|
||||
self.partialTitle = (angular.Array.filter(self.pages, function(doc){return doc.id == self.partialId;})[0]||{}).name;
|
||||
self.partialTitle = (angular.Array.filter(self.pages, function(doc){return doc.id == self.partialId;})[0]||{}).name || 'Error: Page Not Found!';
|
||||
}
|
||||
});
|
||||
|
||||
|
|
@ -84,3 +84,26 @@ function TutorialInstructionsCtrl($cookieStore) {
|
|||
$cookieStore.put('selEnv', id);
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* Display 404 page and suggest new link if possible
|
||||
*/
|
||||
angular.service('$xhr.error', function($location) {
|
||||
function suggestLink(wrongLink) {
|
||||
var link = wrongLink.replace(/^!\/?/, '');
|
||||
|
||||
if (link.match(/^angular/)) return 'api/' + link;
|
||||
else if (link.match(/^cookbook/)) return link.replace('cookbook.', 'cookbook/');
|
||||
}
|
||||
|
||||
return function(request, response) {
|
||||
var suggestion = suggestLink($location.hashPath),
|
||||
HTML_404 = '<h1>Error: Page Not Found</h1>' +
|
||||
'<p>Sorry this page has not been found.</p>';
|
||||
|
||||
if (suggestion)
|
||||
HTML_404 += '<p>Looks like you are using an old link. Please update your bookmark to: <a href="#!/' + suggestion + '">' + suggestion + '</a></p>';
|
||||
|
||||
request.callback(200, HTML_404);
|
||||
};
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in a new issue