Added Auto-route language support for documentation.

This commit is contained in:
Gunther Brunner
2014-09-01 16:19:23 +09:00
parent 241b711c31
commit d8bf7449d1
8 changed files with 125 additions and 35 deletions

View File

@@ -1,14 +1,34 @@
require('./docs.css')
module.exports = angular.module('stf.help.docs', [])
.config(['$routeProvider', function ($routeProvider) {
module.exports = angular.module('stf.help.docs', [
require('stf/language').name
])
.config(function ($routeProvider, languageProvider) {
// TODO: Solutions to the lang problem
//
// 1) Use $route inside a controller instead of $routeProvider
// 2) Use $routeProvider along with languageProvider
// In this case languageProvider depends on Settings and gettext
// which are not providers
// 3) Easiest way is to use AppState
// 4) It needs a fallback if the language doesn't exists, it can be made
// in Express side.
$routeProvider.when('/docs/:lang/:document*', {
templateUrl: function (params) {
var document = params.document.replace('.md', '')
return '/static/docs/' + params.lang + '/' + document
}
})
$routeProvider
.when('/docs/:document*', {
templateUrl: function (params) {
var lang = languageProvider.$get().selectedLanguage
var document = params.document.replace('.md', '')
return '/static/docs/' + lang + '/' + document
}
})
//.when('/docs/:lang/:document*', {
// templateUrl: function (params) {
// var lang = params.lang
// var document = params.document.replace('.md', '')
// return '/static/docs/' + lang + '/' + document
// }
//})
}])
})
.controller('DocsCtrl', require('./docs-controller'))