Hmmm... The definition of Ext is to do asynchronous requests and going synchrone would mean:

trigger first request -> wait for response, parse -> trigger second request -> wait for response, ...

Personnally I would create a global variable in the crdppf namespace and also define a global function in the same namespace and this function would trigger the `crdppf.init` function.

Something like:
```javascript
Crdppf.loadingCounter = 0;
Crdppf.triggerFunction = function(counter) {
    if (counter == 4) {
        Crdppf.init_main(lang, parameters, baseLayers, translations);
    }
};
```
Then in our Ext ajax request:
```javascript
Ext.Ajax.request({
    success: function() {
        // DO YOUR STUFF with the response
       Crdppf.loadingCounter += 1;
       Crdppf.triggerFunction(crdppf.loadingCounter);
    }
});
```
If your new variables (`lang`, `parameters`, `baseLayers`, `translations`) are global, please define them also in the `Crdppf` namespace.