Skip to content
This repository has been archived by the owner on Jan 29, 2024. It is now read-only.

Commit

Permalink
fix(service): ensure fallback language can be selected as $uses
Browse files Browse the repository at this point in the history
  • Loading branch information
knalli committed Jan 31, 2016
1 parent 2d72908 commit 40ad523
Showing 1 changed file with 10 additions and 3 deletions.
13 changes: 10 additions & 3 deletions src/service/translate.js
Original file line number Diff line number Diff line change
Expand Up @@ -1776,15 +1776,22 @@ function $translate($STORAGE_KEY, $windowProvider, $translateSanitizationProvide
langPromises[key]['finally'](function () {
clearNextLangAndPromise(key);
});
} else if ($nextLang === key && langPromises[key]) {
} else if (langPromises[key]) {
// we are already loading this asynchronously
// resolve our new deferred when the old langPromise is resolved
langPromises[key].then(function (translation) {
if (!$uses) {
useLanguage(translation.key);
}
deferred.resolve(translation.key);
return translation;
}, function (key) {
deferred.reject(key);
return $q.reject(key);
// find first available fallback language if that request has failed
if (!$uses && $fallbackLanguage && $fallbackLanguage.length > 0) {
return $translate.use($fallbackLanguage[0]).then(deferred.resolve, deferred.reject);
} else {
return deferred.reject(key);
}
});
} else {
deferred.resolve(key);
Expand Down

0 comments on commit 40ad523

Please sign in to comment.