setLang(lang: string, messages: any): void { // Only "creating" the language once if (moment.locale(lang) !== lang) { moment.defineLocale(lang, { relativeTime: messages } || {}); } moment.locale(lang); }
export const setLocale = (locale: string) => { if (localeSet) { const previousLocal = moment.locale(); console.warn(`Armstrong locale has already been set to ${previousLocal}, you probably only want to set it once!`); } moment.locale(locale); localeSet = true; }
export function transformDate(date) { const lang = i18nStore.lang const momentLang = moment.locale() if (lang === 'zh' && momentLang !== 'zh-cn') { moment.locale('zh-cn') } else if (momentLang !== lang) { moment.locale(lang) } return moment(date).fromNow() }
$ionicPlatform.ready( async () => { // configura locale do moment moment.locale( settings.locale ); // configura rootScope $rootScope.isAndroid = ionic.Platform.isAndroid(); // Check platform of running device is android or not. $rootScope.isIOS = ionic.Platform.isIOS(); // Check platform of running device is ios or not. $rootScope.uiState = { loading: false, pendingRequests: 0, error: undefined }; // We can now watch the trafficCop service to see when there are pending // HTTP requests that we're waiting for. let rootWatch = $rootScope.$watch( () => { $rootScope.uiState.pendingRequests = httpSnifferService.pending.all; $rootScope.uiState.loading = $rootScope.uiState.pendingRequests > 0; $rootScope.uiState.error = httpErrorSnifferService.error; } ); $rootScope.$on( '$ionicView.beforeEnter', () => { httpErrorSnifferService.error = undefined; }); // here is where the cleanup happens $rootScope.$on( '$destroy', () => rootWatch() ); Keyboard.hideKeyboardAccessoryBar( true ); Keyboard.disableScroll( true ); // Check coarse location permissions cordovaPermissions.RequestCoarseLocationPermission(); });
( $sceProvider, $urlRouterProvider, $translateProvider, $urlMatcherFactoryProvider, $locationProvider, cfpLoadingBarProvider ) => { const preferred = "fi"; $sceProvider.enabled(true); $urlRouterProvider.when("", "/" + preferred); $urlRouterProvider.when("/", "/" + preferred); $urlRouterProvider.otherwise(($injector, $location) => { $injector.get("virheService").setData({ path: $location.path() }); $injector.get("$state").go("root.virhe"); }); $urlMatcherFactoryProvider.caseInsensitive(true); $urlMatcherFactoryProvider.strictMode(false); $translateProvider.useLoader("LokalisointiLoader"); $translateProvider.preferredLanguage(preferred); $translateProvider.useSanitizeValueStrategy("escaped"); $locationProvider.hashPrefix(""); cfpLoadingBarProvider.parentSelector = "#loading-bar-container"; cfpLoadingBarProvider.includeSpinner = true; cfpLoadingBarProvider.latencyThreshold = 100; moment.locale(preferred); }
}).subscribe(res=>{ let result = res.result; // $.extend(true, Abp, result); console.log('AbpUserConfiguration: %o', result); Abp.multiTenancy.setGlobal(result.multiTenancy); Abp.session.setGlobal(result.session); Abp.localization.setGlobal(result.localization); Abp.features.setGlobal(result.features); Abp.auth.setGlobal(result.auth); Abp.nav.setGlobal(result.nav); Abp.setting.setGlobal(result.setting); Abp.clock.setGloabl(result.clock); Abp.timing.setGloabl(result.timing); Abp.clock.provider = this.getCurrentClockProvider(result.clock.provider); moment.locale(Abp.localization.currentLanguage.name); if (Abp.clock.provider.supportsMultipleTimezone) { moment.tz.setDefault(Abp.timing.timeZoneInfo.iana.timeZoneId); } callback(); });
function portalI18nConfig($translateProvider, $windowProvider) { 'ngInject'; $translateProvider.useLoader('i18nCustomLoader', { prefix: 'portal/i18n/', suffix: '.json' }); $translateProvider .registerAvailableLanguageKeys( ["en", "fr", "pt-BR", "zh", "ru", "nl"], { "en*": "en", "fr*": "fr", "pt*": "pt-BR", "zh*": "zh", "ru*": "ru", "nl*": "nl", "*": "en" }) .determinePreferredLanguage(); $translateProvider.fallbackLanguage('en'); $translateProvider.useSanitizeValueStrategy('escape'); const locale = (window.navigator as any).userLanguage || window.navigator.language; moment.locale(locale); }
init(lang:string) { moment.locale(lang); this.timestamp = moment().format(); this.month = moment(this.timestamp).format('MMMM'); this.date = moment(this.timestamp).format('D'); this.day = moment(this.timestamp).format('dddd'); }
constructor() { let lang = window.navigator['userLanguage'] || window.navigator.language || 'en'; if (window.navigator['languages']) { lang = window.navigator['languages'][0]; } console.info(`browser's language ${lang}`); moment.locale(lang); }
this.determineLang().then(lang => { this.translate.use(lang); this.translate.get("BACK_BUTTON").subscribe(back => { this.config.set("ios", "backButtonText", back); }); moment.locale(lang); this.currentLang = lang; });