Merge pull request #454 from Raydiation/master

Routing fixes
This commit is contained in:
Thomas Müller 2012-11-15 15:15:07 -08:00
commit d1c0f2a739
2 changed files with 8 additions and 2 deletions

View File

@ -1,9 +1,14 @@
OC.router_base_url = OC.webroot + '/index.php/',
OC.Router = {
// register your ajax requests to load after the loading of the routes
// has finished. otherwise you face problems with race conditions
registerLoadedCallback: function(callback){
this.routes_request.done(callback);
},
routes_request: $.ajax(OC.router_base_url + 'core/routes.json', {
dataType: 'json',
success: function(jsondata) {
if (jsondata.status == 'success') {
if (jsondata.status === 'success') {
OC.Router.routes = jsondata.data;
}
}
@ -11,7 +16,7 @@ OC.Router = {
generate:function(name, opt_params) {
if (!('routes' in this)) {
if(this.routes_request.state() != 'resolved') {
alert('wait');// wait
console.warn('To avoid race conditions, please register a callback');// wait
}
}
if (!(name in this.routes)) {

View File

@ -488,6 +488,7 @@ class OC{
return;
}
try {
OC_App::loadApps();
OC::getRouter()->match(OC_Request::getPathInfo());
return;
} catch (Symfony\Component\Routing\Exception\ResourceNotFoundException $e) {