refactor translation method into new file

This commit is contained in:
steffen123 2010-09-22 17:26:25 +02:00
parent f540214e17
commit 51f54f5444
2 changed files with 41 additions and 11 deletions

View File

@ -15,6 +15,9 @@
#along with this program. If not, see <http://www.gnu.org/licenses/>.
#In the "official" distribution you can find the license in agpl-3.0.txt.
import L10n
_ = L10n.get_translator()
# Standard Library modules
import os
import sys
@ -33,17 +36,7 @@ import fpdb_import
import Configuration
import Exceptions
import locale
lang=locale.getdefaultlocale()[0][0:2]
if lang=="en":
def _(string): return string
else:
import gettext
try:
trans = gettext.translation("fpdb", localedir="locale", languages=[lang])
trans.install()
except IOError:
def _(string): return string
class GuiBulkImport():

37
pyfpdb/L10n.py Normal file
View File

@ -0,0 +1,37 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#Copyright 2010 Steffen Schaumburg
#This program is free software: you can redistribute it and/or modify
#it under the terms of the GNU Affero General Public License as published by
#the Free Software Foundation, version 3 of the License.
#
#This program is distributed in the hope that it will be useful,
#but WITHOUT ANY WARRANTY; without even the implied warranty of
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#GNU General Public License for more details.
#
#You should have received a copy of the GNU Affero General Public License
#along with this program. If not, see <http://www.gnu.org/licenses/>.
#In the "official" distribution you can find the license in agpl-3.0.txt.
import locale
def pass_through(to_translate): return to_translate
lang=locale.getdefaultlocale()[0][0:2]
if lang=="en":
translator=pass_through
else:
import gettext
try:
trans = gettext.translation("fpdb", localedir="locale", languages=[lang])
trans.install()
translator=_
except IOError:
translator=pass_through
#def translate(to_translate):
# return _(to_translate)
def get_translator():
return translator