Merge pull request #5188 from gabrielbazan7/feat/addTranslations

adding language detection and language preferences
This commit is contained in:
Gustavo Maximiliano Cortez 2016-12-12 16:12:27 -03:00 committed by GitHub
commit b413303c85
7 changed files with 68 additions and 67 deletions

View file

@ -5,8 +5,8 @@ angular.module('copayApp.controllers').controller('preferencesLanguageController
$scope.availableLanguages = uxLanguage.getLanguages(); $scope.availableLanguages = uxLanguage.getLanguages();
$scope.openExternalLink = function(url, target) { $scope.openExternalLink = function(url, optIn, title, message, okText, cancelText) {
externalLinkService.open(url, target); externalLinkService.open(url, optIn, title, message, okText, cancelText);
}; };
$scope.save = function(newLang) { $scope.save = function(newLang) {
@ -30,7 +30,7 @@ angular.module('copayApp.controllers').controller('preferencesLanguageController
}); });
}; };
$scope.$on("$ionicView.enter", function(event, data){ $scope.$on("$ionicView.enter", function(event, data) {
$scope.currentLanguage = uxLanguage.getCurrentLanguage(); $scope.currentLanguage = uxLanguage.getCurrentLanguage();
}); });
}); });

View file

@ -2,7 +2,7 @@
angular.module('copayApp.controllers').controller('translatorsController', angular.module('copayApp.controllers').controller('translatorsController',
function($scope, externalLinkService) { function($scope, externalLinkService) {
$scope.openExternalLink = function(url, target) { $scope.openExternalLink = function(url, optIn, title, message, okText, cancelText) {
externalLinkService.open(url, target); externalLinkService.open(url, optIn, title, message, okText, cancelText);
}; };
}); });

View file

@ -8,42 +8,39 @@ angular.module('copayApp.services')
root.availableLanguages = [{ root.availableLanguages = [{
name: 'English', name: 'English',
isoCode: 'en', isoCode: 'en',
}, {
name: 'Český',
isoCode: 'cs',
}, {
name: 'Français',
isoCode: 'fr',
}, {
name: 'Italiano',
isoCode: 'it',
}, {
name: 'Deutsch',
isoCode: 'de',
}, { }, {
name: 'Español', name: 'Español',
isoCode: 'es', isoCode: 'es',
}, { }, {
name: '日本語', name: 'Français',
isoCode: 'ja', isoCode: 'fr',
useIdeograms: true, // }, {
}, { // name: 'Český',
name: '中文(简体)', // isoCode: 'cs',
isoCode: 'zh', // }, {
useIdeograms: true, // name: 'Italiano',
}, { // isoCode: 'it',
name: 'Polski', // }, {
isoCode: 'pl', // name: 'Deutsch',
}, { // isoCode: 'de',
name: 'Pусский', // }, {
isoCode: 'ru', // name: '日本語',
// isoCode: 'ja',
// useIdeograms: true,
// }, {
// name: '中文(简体)',
// isoCode: 'zh',
// useIdeograms: true,
// }, {
// name: 'Polski',
// isoCode: 'pl',
// }, {
// name: 'Pусский',
// isoCode: 'ru',
}]; }];
root._detect = function(cb) { root._detect = function(cb) {
return cb('en'); //disable auto detection for release;
var userLang, androidLang; var userLang, androidLang;
if (navigator && navigator.globalization) { if (navigator && navigator.globalization) {

View file

@ -30,11 +30,11 @@
<span translate>Terms of Use</span> <span translate>Terms of Use</span>
<i class="icon bp-arrow-right"></i> <i class="icon bp-arrow-right"></i>
</a> </a>
<!-- <a class="item item-icon-left item-icon-right" ui-sref="tabs.about.translators"> <a class="item item-icon-left item-icon-right" ui-sref="tabs.about.translators">
<i class="icon ion-ios-people-outline"></i> <i class="icon ion-ios-people-outline"></i>
<span translate>Translators</span> <span translate>Translators</span>
<i class="icon bp-arrow-right"></i> <i class="icon bp-arrow-right"></i>
</a> Disabled for release--> </a>
<a class="item item-icon-left item-icon-right" ui-sref="tabs.about.logs"> <a class="item item-icon-left item-icon-right" ui-sref="tabs.about.logs">
<i class="icon ion-ios-copy-outline"></i> <i class="icon ion-ios-copy-outline"></i>
<span translate>Session log</span> <span translate>Session log</span>

View file

@ -12,14 +12,18 @@
ng-click="save(lang.isoCode)">{{lang.name}} ng-click="save(lang.isoCode)">{{lang.name}}
</ion-radio> </ion-radio>
</div> </div>
<div class="padding"> <div class="settings-explanation">
<span translate>Were always looking for translation contributions! You can make corrections or help to make this app available in your native language by joining our community on Crowdin.</span> <div class="settings-description" translate>
<button class="button button-standard button-primary" ng-click="openExternalLink(true, 'Open Translation Community', 'You can make contributions by signing up on our Crowdin community translation website. Were looking forward to hearing from you! Were always looking for translation contributions! You can make corrections or help to make this app available in your native language by joining our community on Crowdin.
', 'Open Crowdin', 'Go Back')" translate>Contribute Translations </div>
</button>
<span translate>
Don't see your language on Crowdin? Contact the Owner on Crowdin! We'd love to support your language.
</span>
</div> </div>
<div class="settings-explanation">
<div class="settings-description" translate>
Don't see your language on Crowdin? Contact the Owner on Crowdin! We'd love to support your language.
</div>
</div>
<div class="padding">
<a class="button button-standard button-primary" ng-click="openExternalLink('https://crowdin.com/project/copay', true, 'Open Translation Community', 'You can make contributions by signing up on our Crowdin community translation website. Were looking forward to hearing from you!', 'Open Crowdin', 'Go Back')" translate>Contribute Translations</a>
<div>
</ion-content> </ion-content>
</ion-view> </ion-view>

View file

@ -53,18 +53,16 @@
<span translate>Notifications</span> <span translate>Notifications</span>
<i class="icon bp-arrow-right"></i> <i class="icon bp-arrow-right"></i>
</a> </a>
<!-- See https://github.com/bitpay/bitpay-wallet/issues/265 --> <a class="item item-icon-left item-icon-right" ui-sref="tabs.language">
<!-- <a class="item item&#45;icon&#45;left item&#45;icon&#45;right" ui&#45;sref="tabs.language"> --> <i class="icon big-icon-svg">
<!-- <i class="icon big&#45;icon&#45;svg"> --> <img src="img/icon-language.svg" class="bg"/>
<!-- <img src="img/icon&#45;language.svg" class="bg"/> --> </i>
<!-- </i> --> <span translate>Language</span>
<!-- <span translate>Language</span> --> <span class="item-note">
<!-- <span class="item&#45;note"> --> {{currentLanguageName|translate}}
<!-- {{currentLanguageName|translate}} --> </span>
<!-- </span> --> <i class="icon bp-arrow-right"></i>
<!-- <i class="icon bp&#45;arrow&#45;right"></i> --> </a>
<!-- </a> -->
<!-- -->
<a class="item has-setting-value item-icon-left item-icon-right" ui-sref="tabs.unit"> <a class="item has-setting-value item-icon-left item-icon-right" ui-sref="tabs.unit">
<i class="icon big-icon-svg"> <i class="icon big-icon-svg">
<img src="img/icon-unit.svg" class="bg"/> <img src="img/icon-unit.svg" class="bg"/>

View file

@ -9,26 +9,28 @@
<div class="item item-divider" translate> <div class="item item-divider" translate>
Translation Credits Translation Credits
</div> </div>
<div class="item">kinoshitajona<span class="item-note" translate>Japanese</span></div> <!-- <div class="item">kinoshitajona<span class="item-note" translate>Japanese</span></div> -->
<div class="item">Kirvx<span class="item-note" translate>French</span></div> <div class="item">Kirvx<span class="item-note" translate>French</span></div>
<div class="item">saschad<span class="item-note" translate>German</span></div> <!-- <div class="item">saschad<span class="item-note" translate>German</span></div> -->
<div class="item">cmgustavo83<span class="item-note" translate>Spanish</span></div> <div class="item">cmgustavo83<span class="item-note" translate>Spanish</span></div>
<div class="item">RussianNeuroMancer<span class="item-note" translate>Russian</span></div> <!-- <div class="item">RussianNeuroMancer<span class="item-note" translate>Russian</span></div>
<div class="item">HostFat<span class="item-note" translate>Italian</span></div> <div class="item">HostFat<span class="item-note" translate>Italian</span></div>
<div class="item">xm2hi<span class="item-note" translate>Chinese</span></div> <div class="item">xm2hi<span class="item-note" translate>Chinese</span></div>
<div class="item">Pirx1618<span class="item-note" translate>Polish</span></div> <div class="item">Pirx1618<span class="item-note" translate>Polish</span></div>
<div class="item">mareksip<span class="item-note" translate>Czech</span></div> <div class="item">mareksip<span class="item-note" translate>Czech</span></div> -->
</div>
<div class="settings-explanation">
<div class="settings-description" translate>
Were always looking for translation contributions! You can make corrections or help to make this app available in your native language by joining our community on Crowdin.
</div>
</div>
<div class="settings-explanation">
<div class="settings-description" translate>
Don't see your language on Crowdin? Contact the Owner on Crowdin! We'd love to support your language.
</div>
</div> </div>
<div class="padding"> <div class="padding">
<p> <a class="button button-standard button-primary" ng-click="openExternalLink('https://crowdin.com/project/copay', true, 'Open Translation Community', 'You can make contributions by signing up on our Crowdin community translation website. Were looking forward to hearing from you!', 'Open Crowdin', 'Go Back')" translate>Contribute Translations</a>
<span translate>Were always looking for translation contributions! You can make corrections or help to make this app available in your native language by joining our community on Crowdin.</span>
<button class="button button-standard button-primary" ng-click="openExternalLink(true, 'Open Translation Community', 'You can make contributions by signing up on our Crowdin community translation website. Were looking forward to hearing from you!
', 'Open Crowdin', 'Go Back')" translate>Contribute Translations
</button>
</p>
<span translate>
Don't see your language on Crowdin? Contact the Owner on Crowdin! We'd love to support your language.
</span>
</div> </div>
</ion-content> </ion-content>
</ion-view> </ion-view>