Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/Pootle-1.2.1
diff options
context:
space:
mode:
authorSayamindu Dasgupta <sayamindu@gmail.com>2009-02-23 15:42:17 (GMT)
committer Sayamindu Dasgupta <sayamindu@gmail.com>2009-02-23 15:42:17 (GMT)
commit8320bddbaed2d83f4bb90a1b83150be8afaa56e3 (patch)
treee27632704a95cd66d11fa713e85bfb59e9f8e04a /Pootle-1.2.1
Initial pull of pristine upstream sources
Diffstat (limited to 'Pootle-1.2.1')
l---------Pootle-1.2.1/COPYING1
l---------Pootle-1.2.1/LICENSE1
-rw-r--r--Pootle-1.2.1/PKG-INFO20
-rw-r--r--Pootle-1.2.1/Pootle/COPYING340
-rw-r--r--Pootle-1.2.1/Pootle/ChangeLog7769
l---------Pootle-1.2.1/Pootle/LICENSE1
-rwxr-xr-xPootle-1.2.1/Pootle/PootleServer26
-rw-r--r--Pootle-1.2.1/Pootle/README142
-rw-r--r--Pootle-1.2.1/Pootle/TODO82
-rw-r--r--Pootle-1.2.1/Pootle/__init__.py25
-rw-r--r--Pootle-1.2.1/Pootle/__version__.py5
-rw-r--r--Pootle-1.2.1/Pootle/adminpages.py429
-rw-r--r--Pootle-1.2.1/Pootle/benchmark.py203
-rwxr-xr-xPootle-1.2.1/Pootle/conflict2suggest.py90
-rw-r--r--Pootle-1.2.1/Pootle/conftest.py11
-rw-r--r--Pootle-1.2.1/Pootle/filelocations.py48
-rw-r--r--Pootle-1.2.1/Pootle/html/doc/en/howto.html170
-rw-r--r--Pootle-1.2.1/Pootle/html/doc/en/index.html45
-rw-r--r--Pootle-1.2.1/Pootle/html/doc/en/resources.html38
-rw-r--r--Pootle-1.2.1/Pootle/html/favicon.icobin0 -> 3638 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/bullet_arrow_down.pngbin0 -> 201 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/bullet_arrow_up.pngbin0 -> 201 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/down.pngbin0 -> 444 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/edit.pngbin0 -> 1092 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/file.pngbin0 -> 1021 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/folder.pngbin0 -> 794 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/gap.pngbin0 -> 104 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/goal.pngbin0 -> 608 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/gradient.pngbin0 -> 468 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/gtk-apply.pngbin0 -> 761 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/gtk-cancel.pngbin0 -> 796 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/information.pngbin0 -> 778 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/language.pngbin0 -> 1204 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/none.pngbin0 -> 70 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/person.pngbin0 -> 1086 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/pootle-medium.pngbin0 -> 8426 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/pootle.pngbin0 -> 19344 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/images/up.pngbin0 -> 478 bytes
-rw-r--r--Pootle-1.2.1/Pootle/html/js/autoexpand.js241
-rw-r--r--Pootle-1.2.1/Pootle/html/js/correctpng.js39
-rw-r--r--Pootle-1.2.1/Pootle/html/js/jquery/jquery.color.js123
-rw-r--r--Pootle-1.2.1/Pootle/html/js/jquery/jquery.js32
-rw-r--r--Pootle-1.2.1/Pootle/html/js/search.js44
-rw-r--r--Pootle-1.2.1/Pootle/html/js/sorttable.js327
-rw-r--r--Pootle-1.2.1/Pootle/html/js/suggestions.js169
-rw-r--r--Pootle-1.2.1/Pootle/html/js/unfuzzy.js24
-rw-r--r--Pootle-1.2.1/Pootle/html/pootle.css677
-rw-r--r--Pootle-1.2.1/Pootle/html/tests/LoginTest.html198
-rw-r--r--Pootle-1.2.1/Pootle/html/tests/ProjectPageTest.html364
-rw-r--r--Pootle-1.2.1/Pootle/html/tests/TestSuite.html20
-rw-r--r--Pootle-1.2.1/Pootle/indexpage.py1031
-rw-r--r--Pootle-1.2.1/Pootle/pagelayout.py320
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/af/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/af/pootle.po1549
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ak/jToolkit.po141
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ak/pootle.po1459
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/am/jToolkit.po141
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/am/pootle.po1512
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ar/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ar/pootle.po1420
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/az/jToolkit.po146
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/az/pootle.po1391
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/be/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/be/pootle.po1386
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/bg/jToolkit.po142
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/bg/pootle.po1496
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/bn/jToolkit.po140
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/bn/pootle.po1356
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/bo/jToolkit.po146
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/bo/pootle.po1352
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/br/jToolkit.po148
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/br/pootle.po1356
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ca/jToolkit.po147
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ca/pootle.po1551
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/cs/jToolkit.po140
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/cs/pootle.po1405
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/da/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/da/pootle.po1455
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/de/jToolkit.po149
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/de/pootle.po1504
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/dz/jToolkit.po142
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/dz/pootle.po1438
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/el/jToolkit.po150
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/el/pootle.po1459
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/en/jToolkit.po142
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/en/pootle.po1353
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/en_GB/jToolkit.po142
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/en_GB/pootle.po1388
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/en_ZA/jToolkit.po140
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/en_ZA/pootle.po1354
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/eo/jToolkit.po141
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/eo/pootle.po1361
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/es/jToolkit.po148
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/es/pootle.po1499
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/et/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/et/pootle.po1501
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/eu/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/eu/pootle.po1499
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/fa/jToolkit.po141
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/fa/pootle.po1444
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/fi/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/fi/pootle.po1404
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/fo/jToolkit.po141
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/fo/pootle.po1391
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/fr/jToolkit.po154
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/fr/pootle.po1504
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/fur/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/fur/pootle.po1447
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ga/jToolkit.po143
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ga/pootle.po1397
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/gl/jToolkit.po141
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/gl/pootle.po1422
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ha/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ha/pootle.po1387
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/he/jToolkit.po141
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/he/pootle.po1445
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/hi/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/hi/pootle.po1421
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/hr/jToolkit.po143
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/hr/pootle.po1450
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/hu/jToolkit.po149
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/hu/pootle.po1461
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/hy/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/hy/pootle.po1381
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/id/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/id/pootle.po1397
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/is/jToolkit.po142
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/is/pootle.po1459
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/it/jToolkit.po147
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/it/pootle.po1556
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ja/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ja/pootle.po1396
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ka/jToolkit.po149
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ka/pootle.po1491
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/kg/jToolkit.po140
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/kg/pootle.po1387
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/km/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/km/pootle.po1360
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/kn/jToolkit.po146
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/kn/pootle.po1392
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ko/jToolkit.po141
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ko/pootle.po1398
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ku/jToolkit.po141
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ku/pootle.po1413
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ky/jToolkit.po147
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ky/pootle.po1386
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ln/jToolkit.po146
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ln/pootle.po1403
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/lt/jToolkit.po147
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/lt/pootle.po1436
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/lv/jToolkit.po143
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/lv/pootle.po1403
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ml/jToolkit.po151
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ml/pootle.po1408
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/mn/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/mn/pootle.po1368
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/mr/jToolkit.po140
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/mr/pootle.po1371
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ms/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ms/pootle.po1476
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/mt/jToolkit.po142
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/mt/pootle.po1424
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/nap/jToolkit.po146
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/nap/pootle.po1412
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/nb/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/nb/pootle.po1392
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ne/jToolkit.po140
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ne/pootle.po1423
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/nl/jToolkit.po147
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/nl/pootle.po1480
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/nn/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/nn/pootle.po1386
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/nso/jToolkit.po146
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/nso/pootle.po1382
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/pa/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/pa/pootle.po1443
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/pap/jToolkit.po148
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/pap/pootle.po1401
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/pl/jToolkit.po153
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/pl/pootle.po1486
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/pt/jToolkit.po146
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/pt/pootle.po1487
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/pt_BR/jToolkit.po147
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/pt_BR/pootle.po1497
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ro/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ro/pootle.po1420
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ru/jToolkit.po148
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ru/pootle.po1474
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/sk/jToolkit.po148
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/sk/pootle.po1400
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/sl/jToolkit.po146
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/sl/pootle.po1492
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/sq/jToolkit.po140
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/sq/pootle.po1417
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/sr/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/sr/pootle.po1435
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/st/jToolkit.po142
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/st/pootle.po1406
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/sv/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/sv/pootle.po1541
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/te/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/te/pootle.po1388
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/templates/jToolkit.pot143
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/templates/pootle.pot1356
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/th/jToolkit.po143
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/th/pootle.po1365
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/tl/jToolkit.po146
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/tl/pootle.po1393
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/tr/jToolkit.po146
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/tr/pootle.po1487
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/uk/jToolkit.po149
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/uk/pootle.po1470
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ur/jToolkit.po143
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ur/pootle.po1365
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/uz/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/uz/pootle.po1355
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ve/jToolkit.po147
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/ve/pootle.po1393
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/vi/jToolkit.po154
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/vi/pootle.po1497
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/wo/jToolkit.po145
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/wo/pootle.po1432
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/xh/jToolkit.po149
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/xh/pootle.po1423
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/zh_CN/jToolkit.po140
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/zh_CN/pootle.po1392
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/zh_HK/jToolkit.po140
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/zh_HK/pootle.po1385
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/zh_TW/jToolkit.po144
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/zh_TW/pootle.po1389
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/zu/jToolkit.po143
-rw-r--r--Pootle-1.2.1/Pootle/po/pootle/zu/pootle.po1387
-rw-r--r--Pootle-1.2.1/Pootle/pootle.prefs756
-rwxr-xr-xPootle-1.2.1/Pootle/pootle.py696
-rw-r--r--Pootle-1.2.1/Pootle/pootlefile.py748
-rw-r--r--Pootle-1.2.1/Pootle/potree.py566
-rw-r--r--Pootle-1.2.1/Pootle/projects.py1462
-rw-r--r--Pootle-1.2.1/Pootle/request_cache.py34
-rw-r--r--Pootle-1.2.1/Pootle/statistics.py64
-rw-r--r--Pootle-1.2.1/Pootle/templates/__init__.py0
-rw-r--r--Pootle-1.2.1/Pootle/templates/about.html64
-rw-r--r--Pootle-1.2.1/Pootle/templates/activate.html57
-rw-r--r--Pootle-1.2.1/Pootle/templates/adminindex.html75
-rw-r--r--Pootle-1.2.1/Pootle/templates/adminlanguages.html71
-rw-r--r--Pootle-1.2.1/Pootle/templates/adminprojects.html82
-rw-r--r--Pootle-1.2.1/Pootle/templates/adminusers.html73
-rw-r--r--Pootle-1.2.1/Pootle/templates/error.html36
-rw-r--r--Pootle-1.2.1/Pootle/templates/fileindex.html163
-rw-r--r--Pootle-1.2.1/Pootle/templates/home.html57
-rw-r--r--Pootle-1.2.1/Pootle/templates/index.html53
-rw-r--r--Pootle-1.2.1/Pootle/templates/language.html69
-rw-r--r--Pootle-1.2.1/Pootle/templates/languages.html37
-rw-r--r--Pootle-1.2.1/Pootle/templates/login.html67
-rw-r--r--Pootle-1.2.1/Pootle/templates/navbar.kid79
-rw-r--r--Pootle-1.2.1/Pootle/templates/options.html153
-rw-r--r--Pootle-1.2.1/Pootle/templates/pootlepage.kid40
-rw-r--r--Pootle-1.2.1/Pootle/templates/project.html75
-rw-r--r--Pootle-1.2.1/Pootle/templates/projectadmin.html68
-rw-r--r--Pootle-1.2.1/Pootle/templates/projectlangadmin.html101
-rw-r--r--Pootle-1.2.1/Pootle/templates/projects.html39
-rw-r--r--Pootle-1.2.1/Pootle/templates/redirect.html34
-rw-r--r--Pootle-1.2.1/Pootle/templates/register.html87
-rw-r--r--Pootle-1.2.1/Pootle/templates/translatepage.html294
-rw-r--r--Pootle-1.2.1/Pootle/test_client.py484
-rw-r--r--Pootle-1.2.1/Pootle/test_cmdlineserver.py75
-rw-r--r--Pootle-1.2.1/Pootle/test_create.py168
-rw-r--r--Pootle-1.2.1/Pootle/test_indexing.py32
-rw-r--r--Pootle-1.2.1/Pootle/test_init.py10
-rw-r--r--Pootle-1.2.1/Pootle/test_pootlefile.py145
-rw-r--r--Pootle-1.2.1/Pootle/tools/__init__.py23
-rwxr-xr-xPootle-1.2.1/Pootle/tools/updatetm27
-rw-r--r--Pootle-1.2.1/Pootle/tools/updatetm.py98
-rw-r--r--Pootle-1.2.1/Pootle/translatepage.py901
-rw-r--r--Pootle-1.2.1/Pootle/users.prefs59
-rw-r--r--Pootle-1.2.1/Pootle/users.py680
-rw-r--r--Pootle-1.2.1/Pootle/util.py62
l---------Pootle-1.2.1/README1
-rwxr-xr-xPootle-1.2.1/pootlesetup.py347
278 files changed, 163756 insertions, 0 deletions
diff --git a/Pootle-1.2.1/COPYING b/Pootle-1.2.1/COPYING
new file mode 120000
index 0000000..b34e37f
--- /dev/null
+++ b/Pootle-1.2.1/COPYING
@@ -0,0 +1 @@
+Pootle/COPYING \ No newline at end of file
diff --git a/Pootle-1.2.1/LICENSE b/Pootle-1.2.1/LICENSE
new file mode 120000
index 0000000..b2e0278
--- /dev/null
+++ b/Pootle-1.2.1/LICENSE
@@ -0,0 +1 @@
+Pootle/LICENSE \ No newline at end of file
diff --git a/Pootle-1.2.1/PKG-INFO b/Pootle-1.2.1/PKG-INFO
new file mode 100644
index 0000000..80ec7b9
--- /dev/null
+++ b/Pootle-1.2.1/PKG-INFO
@@ -0,0 +1,20 @@
+Metadata-Version: 1.0
+Name: Pootle
+Version: 1.2.1
+Summary: Pootle is a web portal for localization
+Home-page: http://translate.sourceforge.net/wiki/pootle/index
+Author: Translate.org.za
+Author-email: translate-devel@lists.sourceforge.net
+License: GNU General Public License (GPL)
+Download-URL: http://sourceforge.net/project/showfiles.php?group_id=91920&package_id=144807
+Description: Pootle is a web portal for localization
+Platform: any
+Classifier: Development Status :: 5 - Production/Stable
+Classifier: Environment :: Web Environment
+Classifier: Intended Audience :: End Users/Desktop
+Classifier: License :: OSI Approved :: GNU General Public License (GPL)
+Classifier: Programming Language :: Python
+Classifier: Topic :: Software Development :: Localization
+Classifier: Operating System :: OS Independent
+Classifier: Operating System :: Microsoft :: Windows
+Classifier: Operating System :: Unix
diff --git a/Pootle-1.2.1/Pootle/COPYING b/Pootle-1.2.1/Pootle/COPYING
new file mode 100644
index 0000000..5b6e7c6
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/COPYING
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ 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 General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/Pootle-1.2.1/Pootle/ChangeLog b/Pootle-1.2.1/Pootle/ChangeLog
new file mode 100644
index 0000000..5292b3f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/ChangeLog
@@ -0,0 +1,7769 @@
+2008-10-06 12:40 friedelwolff
+
+ * request_cache.py: Correct the copyright date
+
+2008-10-06 12:39 friedelwolff
+
+ * CREDITS: Credit Daniel Schafer and Wil Clouser for Mozootle work
+
+2008-10-06 12:27 friedelwolff
+
+ * po/pootle/be/pootle.po, po/pootle/cs/pootle.po,
+ po/pootle/ml/pootle.po, po/pootle/nl/pootle.po,
+ po/pootle/pt/pootle.po, po/pootle/pt_BR/pootle.po,
+ po/pootle/te/pootle.po: Translation updates from
+ pootle.locamotion.org
+
+2008-10-01 10:38 dwaynebailey
+
+ * pootle.prefs: Add special characters for Kurdish
+
+2008-10-01 10:21 winterstream
+
+ * pootle.py, templates/about.html, templates/activate.html,
+ templates/adminindex.html, templates/adminlanguages.html,
+ templates/adminprojects.html, templates/adminusers.html,
+ templates/error.html, templates/fileindex.html,
+ templates/home.html, templates/index.html,
+ templates/language.html, templates/languages.html,
+ templates/login.html, templates/options.html,
+ templates/project.html, templates/projectadmin.html,
+ templates/projectlangadmin.html, templates/projects.html,
+ templates/redirect.html, templates/register.html,
+ templates/translatepage.html: [Contributed by Nicolas François]
+
+ Nicolas' description:
+
+ On Debian, the templates directory is installed separately from
+ the Pootle
+ directory.
+ (The original reason was that html files could be installed
+ separately
+ from the code).
+ This is just done by changing Pootle/filelocations.py
+
+ To continue supporting this with the kid templates containing
+ code, I had
+ to apply the attached patch.
+
+ It restricts and specifies the path containing the file which can
+ be
+ imported from the templates, and removes the "from
+ Pootle.templates " in
+ front of the import lines in the templates.
+
+2008-09-30 07:55 winterstream
+
+ * html/js/suggestions.js, pootlefile.py, translatepage.py:
+ [Authors: Wil Clouser & Julen Ruiz Aizpuru]
+ [Bug URL: http://bugs.locamotion.org/show_bug.cgi?id=490]
+
+ Original problem description:
+
+ I think this was introduced with the patch from bug 427. To
+ reproduce:
+
+ 1) Have a project with .po files in a directory. For example:
+ /$project/en/somedirectory/messages.po
+
+ 2) Make a suggestion for a string in the .po
+ 3) Approve the suggestion via the AJAX link (it will fail)
+ 4) Approve the suggestion via the submit button (it will work)
+
+ I did some debugging on this and it looks like the submit button
+ is sending
+ more data via POST than the ajax method. The item it's sending
+ that matters
+ here is pofilename. When that isn't set in the POST it ends up
+ being double up
+ like so:
+ /somedirectory/somedirectory/messages.po
+
+ Easy solution is to make the ajax send pofilename. The hard
+ solution is to dig
+ through pootle.py and look at the pathwords variable to see why
+ it's doubling
+ up. :)
+
+ This patch fixes the suggestion problems.
+
+2008-09-29 21:14 friedelwolff
+
+ * pootlefile.py: Provide the new 'Language' field for the PO header
+ if we update the file header
+
+2008-09-29 07:14 friedelwolff
+
+ * projects.py: [Contributed by João Miguel Neves] Correctly
+ maintain directory layout in converttemplates(). This fixes bug
+ 527
+
+2008-09-27 09:43 dwaynebailey
+
+ * projects.py: docstring: proper enumerated list and some links
+
+2008-09-24 20:21 friedelwolff
+
+ * projects.py: Fix wrong ordering of parameters in error message
+
+2008-09-23 15:05 friedelwolff
+
+ * po/pootle/vi/pootle.po: Commit from Pootle 1.2-rc1 by user admin.
+ 299 of 299 messages translated (0 fuzzy).
+
+2008-09-23 14:10 dwaynebailey
+
+ * po/terminology/am/gnome, po/terminology/ar/gnome,
+ po/terminology/az/gnome, po/terminology/ca/gnome,
+ po/terminology/cs/gnome, po/terminology/da/gnome,
+ po/terminology/eo/gnome, po/terminology/es/gnome,
+ po/terminology/eu/gnome, po/terminology/fa/gnome,
+ po/terminology/fr/gnome, po/terminology/hi/gnome,
+ po/terminology/hu/gnome, po/terminology/it/gnome,
+ po/terminology/ja/gnome, po/terminology/kn/gnome,
+ po/terminology/ku/gnome, po/terminology/mk/gnome,
+ po/terminology/mr/gnome, po/terminology/ms/gnome,
+ po/terminology/nb/gnome, po/terminology/nl/gnome,
+ po/terminology/nn/gnome, po/terminology/pa/gnome,
+ po/terminology/pl/gnome, po/terminology/pt/gnome,
+ po/terminology/pt_BR/gnome, po/terminology/rw/gnome,
+ po/terminology/sk/gnome, po/terminology/sq/gnome,
+ po/terminology/sv/gnome, po/terminology/th/gnome,
+ po/terminology/uk/gnome, po/terminology/vi/gnome,
+ po/terminology/wa/gnome, po/terminology/zh_CN/gnome,
+ po/terminology/zh_HK/gnome, po/terminology/zh_TW/gnome: Ignore
+ *.po.tm
+
+2008-09-23 13:59 dwaynebailey
+
+ * po/pootle/af, po/pootle/ak, po/pootle/am, po/pootle/ar,
+ po/pootle/az, po/pootle/be, po/pootle/bg, po/pootle/bn,
+ po/pootle/bo, po/pootle/br, po/pootle/ca, po/pootle/cs,
+ po/pootle/da, po/pootle/de, po/pootle/dz, po/pootle/el,
+ po/pootle/en, po/pootle/en_GB, po/pootle/en_ZA, po/pootle/eo,
+ po/pootle/es, po/pootle/et, po/pootle/eu, po/pootle/fa,
+ po/pootle/fi, po/pootle/fr, po/pootle/fur, po/pootle/ga,
+ po/pootle/gl, po/pootle/ha, po/pootle/he, po/pootle/hi,
+ po/pootle/hr, po/pootle/hu, po/pootle/hy, po/pootle/id,
+ po/pootle/is, po/pootle/it, po/pootle/ja, po/pootle/ka,
+ po/pootle/kg, po/pootle/km, po/pootle/ko, po/pootle/ku,
+ po/pootle/lt, po/pootle/lv, po/pootle/ml, po/pootle/mr,
+ po/pootle/ms, po/pootle/mt, po/pootle/nap, po/pootle/nb,
+ po/pootle/ne, po/pootle/nl, po/pootle/nn, po/pootle/nso,
+ po/pootle/pa, po/pootle/pl, po/pootle/pt, po/pootle/pt_BR,
+ po/pootle/ro, po/pootle/ru, po/pootle/sk, po/pootle/sl,
+ po/pootle/sr, po/pootle/st, po/pootle/sv, po/pootle/tr,
+ po/pootle/uk, po/pootle/ve, po/pootle/vi, po/pootle/wo,
+ po/pootle/xh, po/pootle/zh_CN, po/pootle/zh_HK, po/pootle/zh_TW,
+ po/pootle/zu: Update svn:ignore to add *.po.tm and others
+
+2008-09-23 13:28 friedelwolff
+
+ * pootlefile.py: Remove deprecated code that was needed earlier to
+ update quickstats and for memoization
+
+2008-09-23 13:16 dwaynebailey
+
+ * templates: Ignore *.pyc
+
+2008-09-22 16:45 winterstream
+
+ * indexpage.py, projects.py, statistics.py: file_fails_test doesn't
+ work correctly. Reverted this code to a previous state so
+ that it works.
+
+2008-09-19 19:09 friedelwolff
+
+ * html/favicon.ico: Translate logo as favicon
+
+2008-09-19 15:30 friedelwolff
+
+ * __version__.py: Version 1.2.0-rc1
+
+2008-09-19 15:29 friedelwolff
+
+ * pootle.prefs: Add and/or enable some languages to be active in
+ the default installation: Greek (el), Estonian (et), Irish (ga),
+ Kurdish (ku), Kyrgyz (ky), Lingala (ln), Latvian (lv), Norwegian
+ Bokmal (nb), Norwegian Nynorsk (nn), Papiamento (pap), Albanian
+ (sq), Telugu (te), Tagalog (tl). Disable Chinese (Hong Kong)
+ (zh_HK) since it dropped below 80% :-(
+
+2008-09-19 14:38 friedelwolff
+
+ * po/pootle/ky, po/pootle/ky/jToolkit.po, po/pootle/ky/pootle.po,
+ po/pootle/mn, po/pootle/mn/jToolkit.po, po/pootle/mn/pootle.po,
+ po/pootle/tl, po/pootle/tl/jToolkit.po, po/pootle/tl/pootle.po:
+ New translations from pootle.locamotion.org: Kyrgyz (ky), Tagalog
+ (tl), Mongolian (mn)
+
+2008-09-19 14:33 friedelwolff
+
+ * po/pootle/ak/pootle.po, po/pootle/ar/pootle.po,
+ po/pootle/ca/pootle.po, po/pootle/da/pootle.po,
+ po/pootle/de/pootle.po, po/pootle/es/pootle.po,
+ po/pootle/eu/pootle.po, po/pootle/fa/pootle.po,
+ po/pootle/fi/pootle.po, po/pootle/fr/pootle.po,
+ po/pootle/ga/pootle.po, po/pootle/gl/pootle.po,
+ po/pootle/hu/pootle.po, po/pootle/it/pootle.po,
+ po/pootle/ja/pootle.po, po/pootle/ka/pootle.po,
+ po/pootle/ko/pootle.po, po/pootle/ku/jToolkit.po,
+ po/pootle/ku/pootle.po, po/pootle/lv/jToolkit.po,
+ po/pootle/lv/pootle.po, po/pootle/ml/jToolkit.po,
+ po/pootle/ml/pootle.po, po/pootle/nap/pootle.po,
+ po/pootle/nb/pootle.po, po/pootle/nn/jToolkit.po,
+ po/pootle/nn/pootle.po, po/pootle/pap/jToolkit.po,
+ po/pootle/pap/pootle.po, po/pootle/pl/pootle.po,
+ po/pootle/ro/jToolkit.po, po/pootle/ro/pootle.po,
+ po/pootle/ru/pootle.po, po/pootle/sq/pootle.po,
+ po/pootle/st/pootle.po, po/pootle/sv/pootle.po,
+ po/pootle/te/pootle.po, po/pootle/tr/pootle.po,
+ po/pootle/uk/jToolkit.po, po/pootle/uk/pootle.po,
+ po/pootle/xh/pootle.po, po/pootle/zh_TW/pootle.po: Update
+ existing translations from pootle.locamotion.org
+
+2008-09-19 13:42 friedelwolff
+
+ * po/pootle/zu/pootle.po: Commit from Pootle 1.2-beta2 by user
+ fwolff. 77 of 299 messages translated (21 fuzzy).
+
+2008-09-19 13:40 friedelwolff
+
+ * po/pootle/af/pootle.po: Updated Afrikaans translation from
+ pootle.locamotion.org. 100% translated
+
+2008-09-18 09:50 dwaynebailey
+
+ * po/pootle/st/pootle.po: Lets credit the person who actually did
+ the work, not the fact that he used
+ my laptop!
+
+2008-09-17 09:49 dwaynebailey
+
+ * po/pootle/st/pootle.po: Update
+
+2008-09-17 06:13 dwaynebailey
+
+ * po/pootle/st/pootle.po: Fix some capitalisation and mark aunit
+ for review
+
+2008-09-17 06:02 dwaynebailey
+
+ * po/pootle/st/pootle.po: Update translations
+
+2008-09-11 12:23 friedelwolff
+
+ * pootle.py: On the login page, only list languages that exist in
+ the 'pootle' project. Also obtain them fresh every time. This
+ fixes the bug where a new language in the Pootle page whould not
+ show up in the list unless the server is restarted.
+
+2008-09-08 11:19 winterstream
+
+ * request_cache.py, statistics.py, users.py: WARNING: This patch
+ will BREAK in multi-threaded code. Luckily, we
+ know that Pootle will turn into a multi-process server one day.
+ Threads are for masochistics.
+
+ A simple per-request cache.
+
+ Some fairly expensive things are computed numerous times with
+ every
+ HTTP request. We can reduce this cost by keeping building a cache
+ which is cleared for every new HTTP request.
+
+2008-09-08 11:18 winterstream
+
+ * projects.py: 1. Committed combine_file_failures, which on which
+ the previous patch is dependant.
+ 2. Replaced code that used getstats()["total"] with code that
+ uses pofile.total directly.
+
+2008-09-08 11:18 winterstream
+
+ * indexpage.py: Replaced the old lazy evaluation code with the code
+ in util.
+
+ Where the old code used a dictionary, the new code uses
+ attributes.
+
+ There is a new property: has_suggestion. This uses the
+ new method combine_file_failures in statistics.py to
+ quickly determine if a file has suggestions. This
+ replaces a previous check which read all the stats
+ to determine whether the "hassuggestion" test was
+ present.
+
+2008-09-08 11:17 winterstream
+
+ * statistics.py: Removed memoization from the stats and added
+ file_fails_test
+ which can quickly check to see whether a file contains
+ any units which fail the test specified by the name
+ parameter.
+
+2008-09-08 11:16 winterstream
+
+ * translatepage.py: Here we only need the totals of a file, so it's
+ faster simply to
+ use getpototals instead of getpostats.
+
+2008-09-08 11:15 winterstream
+
+ * pootlefile.py: We might as well store the totals array - that is,
+ the mapping from unit indices to their positions in the store -
+ inside a pootlefile. Thus we can avoid hitting the stats code
+ every time we need to do such a lookup.
+
+ This code also uses the new lazy evaluation code to defer
+ loading the totals array until it is needed. Note that
+ the totals array has to be reset when we reload the po file,
+ thus we do self._total = util.undefined.
+
+2008-09-08 11:14 winterstream
+
+ * util.py: Added a lazy evaluation decorator and a simple
+ dictionary cache
+ which invokes the getter when it a cache miss occurs.
+
+2008-09-08 11:13 winterstream
+
+ * pagelayout.py: Fixed code that still assumed that it had to
+ compute file totals by
+ using arrays of data. The old code paths were never taken, so
+ this
+ is really only dead code elimination.
+
+2008-09-08 11:12 winterstream
+
+ * indexpage.py, pootlefile.py, projects.py, statistics.py,
+ test_pootlefile.py: Storing the quick stats in a file leads to
+ some stats synchronization
+ nightmares.
+
+ The toolkit already supports storing the quick stats in the stats
+ database, and so we are moving everything there.
+
+ This commit also includes some other changes:
+ 1. Move scanpofiles down the stack, so that it will only be
+ called
+ once when a ZIP file is uploaded (instead of once for every
+ file).
+ 2. Move stats resetting code to savepofile, so that it is
+ centralized.
+
+2008-08-28 10:02 dwaynebailey
+
+ * po/pootle/en_GB, po/pootle/en_GB/jToolkit.po,
+ po/pootle/en_GB/pootle.po: Add British English 'translations'
+
+2008-08-28 09:21 winterstream
+
+ * pootle.prefs: Fix the location of the statsdb in pootle.prefs to
+ point to a valid database
+ location.
+
+2008-08-27 16:18 winterstream
+
+ * pootlefile.py: Added an ugly hack to force the recalculation of
+ the stats of a
+ PO file which lacks a header and then gains one by being saved
+ in Pootle.
+
+2008-08-27 16:17 winterstream
+
+ * projects.py: Removed no-op code.
+
+2008-08-27 16:16 winterstream
+
+ * pootlefile.py: We don't need to reread a file to have its stats
+ recalculated.
+
+2008-08-27 16:15 winterstream
+
+ * pootlefile.py: Removed dead code in pootlefile
+
+2008-08-27 16:14 winterstream
+
+ * pootlefile.py: Don't allow units to be shared between stores.
+ There be dragons.
+
+ The thing is, this won't work with our libgettext bindings, since
+ libgettext only provides us with iterators to translation stores.
+ So that's the real reason we require units to be copied instead
+ of shared.
+
+2008-08-27 15:39 friedelwolff
+
+ * projects.py: Provide better error message if the indexer could
+ not be initialised
+
+2008-08-26 15:25 winterstream
+
+ * potree.py, projects.py, test_indexing.py: Change the indexing
+ system so that we have to ask for project.indexer
+ if we want to do an indexing query.
+
+ project.indexer computes the index of a project lazily. Thus, if
+ it
+ is invoked, it first checks to see whether a project's index is
+ up to
+ date (by calling project.initindex).
+
+ project.indexer returns None if there is no indexer for a
+ project. This
+ can happen if indexing is not available (that is, if
+ indexer.HAVE_INDEX
+ is false) or if the index for a project is corrupt. In this way
+ we
+ guard against corrupt indices making Pootle unusable for some
+ projects.
+
+ The --refreshstats functionality was also updated to force index
+ initialization, which is required due to the laziness.
+
+2008-08-26 15:15 friedelwolff
+
+ * __version__.py: Version 1.2.0-beta2
+
+2008-08-26 14:36 winterstream
+
+ * benchmark.py, projects.py: Rename the module named indexer to
+ indexing.
+
+2008-08-25 15:33 friedelwolff
+
+ * CREDITS: Credit Walter Leibbrandt and Wynand Winterbach
+
+2008-08-25 14:04 winterstream
+
+ * statistics.py: Purge the in-memory stats before writing
+ quickstats to disk. This is necessary, since at this point,
+ the in-memory stats are old and we need to force Pootle to read
+ the stats from the database again.
+
+2008-08-25 14:03 winterstream
+
+ * projects.py: [Contributed by David Calavera]. Remove an
+ unnecessary file save,
+ since newpofile.mergefile(currentpofile, "versionmerge") already
+ does it.
+
+2008-08-25 14:02 winterstream
+
+ * pootlefile.py, projects.py: Fixed a mismatch in the way the
+ quality checks looked at suggestions
+ and in the way that Pootle looked at suggestions.
+
+ When the suggestion quality check looks at whether a unit has a
+ suggestion, it simply looks to see whether there exists a
+ suggestion
+ with a matching source string.
+
+ In contrast, Pootle also required that the location information
+ of a unit in a suggestion file matched.
+
+ This caused problems if the location information in translation
+ files was updated. This is because the quality check mechanism
+ would report that there were suggestions, while Pootle would
+ fail to find the suggestions, due to the mismatch of location
+ information.
+
+ Pootle now also only looks at the source information. This is not
+ ideal and we need a more fundamental solution. But for now, this
+ is the best way to go.
+
+2008-08-22 17:14 winterstream
+
+ * projects.py: The zip upload code did not fall back to the Python
+ implementation if the external unzip failed,
+
+ This has been fixed and the code was slightly refactored.
+
+2008-08-22 16:43 winterstream
+
+ * statistics.py: Modify getquickstats to take into account that
+ StatsCache.filetotals
+ may now return an empty dictionary. If it does, then
+ getquickstats
+ should return emptyfiletotals, since Pootle expects the
+ quickstats
+ dictionary to contain certain values.
+
+2008-08-22 14:11 murgilduta
+
+ * html/images/information.png, html/pootle.css,
+ templates/translatepage.html, translatepage.py: Provide links to
+ online documentation when a user is reviewing quality checks.
+ [Based on Friedel's proposal]
+
+2008-08-21 23:21 sumpfralle
+
+ * projects.py: avoid the shell when calling "unzip"
+
+2008-08-21 23:18 sumpfralle
+
+ * README: Pootle uses the python module "subprocess" - thus it
+ requires python v2.4
+
+2008-08-21 22:42 sumpfralle
+
+ * test_indexing.py: adapt test to the new indexing interface
+
+2008-08-21 22:33 sumpfralle
+
+ * README: update note regarding indexing engines
+ fix some line breaks (>80 characters)
+
+2008-08-21 15:33 friedelwolff
+
+ * pootle.py: Expect at least build 12000
+
+2008-08-21 12:50 winterstream
+
+ * projects.py: Fixed an invalid reference to item (it was renamed
+ to lastitem),
+ and did minor refactoring of the functions.
+
+2008-08-21 12:13 winterstream
+
+ * potree.py: Fix refreshstats by forcing calculation of the
+ statistics used in
+ each project.
+
+2008-08-21 10:38 winterstream
+
+ * indexpage.py: Fixed a lazy evaluation error. We have to add () to
+ evaluate
+ a lazy value.
+
+2008-08-21 10:37 winterstream
+
+ * pootlefile.py, projects.py: Refactored and reworked the code to
+ find the indices.
+
+ This code should be fast and should work when walking through
+ assignments and tests.
+
+2008-08-21 09:51 friedelwolff
+
+ * projects.py: Replace subprocess.Popen with subprocess.call since
+ we have to wait for unzip to complete
+
+2008-08-21 09:43 friedelwolff
+
+ * templates/navbar.kid: Always show the itemtitle if it exists
+
+2008-08-20 11:30 winterstream
+
+ * pootle.py, translatepage.py: Fixed a bad boolean expression in
+ translatepage.py which could make it possible
+ for someone without authorization to edit units.
+
+ Also added the translate=1 flag then the URL contains
+ translate.html so that
+ we get the right behaviour from things like suggestion reviews.
+
+2008-08-20 11:09 friedelwolff
+
+ * __version__.py: Version 1.2.0-beta1
+
+2008-08-20 11:02 friedelwolff
+
+ * indexpage.py: Adapt meta keywords
+
+2008-08-20 10:18 friedelwolff
+
+ * po/pootle/af/pootle.po, po/pootle/ak/pootle.po,
+ po/pootle/am/pootle.po, po/pootle/ar/pootle.po,
+ po/pootle/az/pootle.po, po/pootle/be/pootle.po,
+ po/pootle/bg/pootle.po, po/pootle/bn/pootle.po,
+ po/pootle/bo/pootle.po, po/pootle/br/pootle.po,
+ po/pootle/ca/pootle.po, po/pootle/cs/pootle.po,
+ po/pootle/da/pootle.po, po/pootle/de/pootle.po,
+ po/pootle/dz/pootle.po, po/pootle/el/pootle.po,
+ po/pootle/en/pootle.po, po/pootle/en_ZA/pootle.po,
+ po/pootle/eo/pootle.po, po/pootle/es/pootle.po,
+ po/pootle/et/pootle.po, po/pootle/eu/pootle.po,
+ po/pootle/fa/pootle.po, po/pootle/fi/pootle.po,
+ po/pootle/fr/pootle.po, po/pootle/fur/pootle.po,
+ po/pootle/ga/pootle.po, po/pootle/gl/pootle.po,
+ po/pootle/ha/pootle.po, po/pootle/he/pootle.po,
+ po/pootle/hi/pootle.po, po/pootle/hr/pootle.po,
+ po/pootle/hu/pootle.po, po/pootle/hy/pootle.po,
+ po/pootle/id/pootle.po, po/pootle/is/pootle.po,
+ po/pootle/it/pootle.po, po/pootle/ja/pootle.po,
+ po/pootle/ka/pootle.po, po/pootle/kg/pootle.po,
+ po/pootle/km/pootle.po, po/pootle/ko/pootle.po,
+ po/pootle/ku/pootle.po, po/pootle/ln/pootle.po,
+ po/pootle/lt/pootle.po, po/pootle/lv/pootle.po,
+ po/pootle/ml/pootle.po, po/pootle/mr/pootle.po,
+ po/pootle/ms/pootle.po, po/pootle/mt/pootle.po,
+ po/pootle/nap/pootle.po, po/pootle/nb/pootle.po,
+ po/pootle/ne/pootle.po, po/pootle/nl/pootle.po,
+ po/pootle/nn/pootle.po, po/pootle/nso/pootle.po,
+ po/pootle/pa/pootle.po, po/pootle/pap/pootle.po,
+ po/pootle/pl/pootle.po, po/pootle/pt/pootle.po,
+ po/pootle/pt_BR/pootle.po, po/pootle/ro/pootle.po,
+ po/pootle/ru/pootle.po, po/pootle/sk/pootle.po,
+ po/pootle/sl/pootle.po, po/pootle/sq/pootle.po,
+ po/pootle/sr/pootle.po, po/pootle/st/pootle.po,
+ po/pootle/sv/pootle.po, po/pootle/te/pootle.po,
+ po/pootle/th/pootle.po, po/pootle/tr/pootle.po,
+ po/pootle/uk/pootle.po, po/pootle/ve/pootle.po,
+ po/pootle/vi/pootle.po, po/pootle/wo/pootle.po,
+ po/pootle/zh_CN/pootle.po, po/pootle/zh_HK/pootle.po,
+ po/pootle/zh_TW/pootle.po, po/pootle/zu/pootle.po: Migrate all
+ translations to the new POT file for Pootle 1.2
+
+2008-08-20 10:07 friedelwolff
+
+ * po/pootle/az/pootle.po, po/pootle/be/pootle.po: Convert windows
+ newlines to unix newlines
+
+2008-08-20 10:00 murgilduta
+
+ * translatepage.py: Forgot to remove a print statement.
+
+2008-08-20 09:24 murgilduta
+
+ * README: Fix bugzilla URL.
+
+2008-08-20 09:22 murgilduta
+
+ * translatepage.py: Display correctly translations with markup when
+ using alternative source language.
+
+2008-08-20 09:08 friedelwolff
+
+ * po/pootle/az, po/pootle/az/jToolkit.po, po/pootle/az/pootle.po,
+ po/pootle/be, po/pootle/be/jToolkit.po, po/pootle/be/pootle.po,
+ po/pootle/bo, po/pootle/bo/jToolkit.po, po/pootle/bo/pootle.po,
+ po/pootle/br, po/pootle/br/jToolkit.po, po/pootle/br/pootle.po,
+ po/pootle/ln, po/pootle/ln/jToolkit.po, po/pootle/ln/pootle.po,
+ po/pootle/nap, po/pootle/nap/jToolkit.po,
+ po/pootle/nap/pootle.po, po/pootle/pap,
+ po/pootle/pap/jToolkit.po, po/pootle/pap/pootle.po, po/pootle/sq,
+ po/pootle/sq/jToolkit.po, po/pootle/sq/pootle.po, po/pootle/te,
+ po/pootle/te/jToolkit.po, po/pootle/te/pootle.po, po/pootle/th,
+ po/pootle/th/jToolkit.po, po/pootle/th/pootle.po: Add new
+ translations from pootle.locamotion.org (many still incomplete)
+
+2008-08-19 16:13 friedelwolff
+
+ * po/pootle/ak/pootle.po, po/pootle/am/pootle.po,
+ po/pootle/ar/pootle.po, po/pootle/bg/jToolkit.po,
+ po/pootle/bg/pootle.po, po/pootle/el/pootle.po,
+ po/pootle/es/jToolkit.po, po/pootle/es/pootle.po,
+ po/pootle/et/pootle.po, po/pootle/fi/pootle.po,
+ po/pootle/fur/pootle.po, po/pootle/ga/pootle.po,
+ po/pootle/gl/jToolkit.po, po/pootle/gl/pootle.po,
+ po/pootle/hi/pootle.po, po/pootle/hy/pootle.po,
+ po/pootle/is/pootle.po, po/pootle/it/pootle.po,
+ po/pootle/ka/pootle.po, po/pootle/lv/jToolkit.po,
+ po/pootle/lv/pootle.po, po/pootle/ml/jToolkit.po,
+ po/pootle/ml/pootle.po, po/pootle/ms/pootle.po,
+ po/pootle/mt/pootle.po, po/pootle/nb/pootle.po,
+ po/pootle/nn/pootle.po, po/pootle/pl/pootle.po,
+ po/pootle/sr/pootle.po, po/pootle/tr/pootle.po,
+ po/pootle/uk/pootle.po, po/pootle/ve/pootle.po,
+ po/pootle/zu/jToolkit.po, po/pootle/zu/pootle.po: Update
+ translations from pootle.locamotion.org before updating to new
+ POT file
+
+2008-08-19 16:03 winterstream
+
+ * pootlefile.py: Add a check to ensure that we use valid list
+ indices.
+
+2008-08-19 15:30 winterstream
+
+ * templates/__init__.py, templates/navbar.kid,
+ templates/pootlepage.kid: Forgot to add these files to a previous
+ commit.
+
+2008-08-19 14:54 winterstream
+
+ * translatepage.py: Fixed a logical and syntax error.
+
+2008-08-19 14:53 winterstream
+
+ * pootle.py, templates/about.html, templates/activate.html,
+ templates/adminindex.html, templates/adminlanguages.html,
+ templates/adminprojects.html, templates/adminusers.html,
+ templates/error.html, templates/fileindex.html,
+ templates/home.html, templates/index.html,
+ templates/language.html, templates/languages.html,
+ templates/login.html, templates/navbar.html,
+ templates/options.html, templates/pootlepage.html,
+ templates/project.html, templates/projectadmin.html,
+ templates/projectlangadmin.html, templates/projects.html,
+ templates/redirect.html, templates/register.html,
+ templates/translatepage.html: Replace jToolkit's template overlay
+ code with a Kid-only solution.
+ One less thether to jToolkit!
+
+2008-08-19 14:49 winterstream
+
+ * indexpage.py: Fixed a stats display bug that was introduced when
+ the diet branch
+ was merged in.
+
+2008-08-19 14:48 winterstream
+
+ * indexpage.py: Changed one of the stats structures into a lazy
+ structure which will
+ only compute a value when it's needed. This saves us from having
+ to
+ fret about pushing computations into code areas where their
+ values
+ are needed. It also speeds up Pootle :).
+
+2008-08-19 14:47 winterstream
+
+ * indexpage.py: Removed an unnecessary calculation and fixed
+ indentation.
+
+2008-08-19 14:46 winterstream
+
+ * indexpage.py: Fix in-goal navigation so that the user will only
+ see the units
+ in a goal when clicking on something like a quality check related
+ to a goal.
+
+2008-08-19 14:45 winterstream
+
+ * projects.py: Don't use the indexer when search.matchnames is the
+ only thing
+ we're using. search.matchnames contains things like "fuzzy",
+ "check-spaces" etc.
+
+2008-08-19 14:44 winterstream
+
+ * pootlefile.py: Replaced a linear search with a binary search.
+ This speeds up
+ the enumeration of checks on large files significantly.
+
+2008-08-19 14:43 winterstream
+
+ * indexpage.py: Don't perform unnecessary calculations. This should
+ provide a tiny
+ speed boost in some cases.
+
+2008-08-19 14:33 friedelwolff
+
+ * po/pootle/xh/pootle.po: Update translation to new POT file (with
+ some manual tweaks)
+
+2008-08-19 14:31 friedelwolff
+
+ * po/pootle/templates/pootle.pot: Update POT file before 1.2
+ release
+
+2008-08-19 10:38 friedelwolff
+
+ * translatepage.py: Rewrite ugettext code slightly to avoid getting
+ a wrong string in pootle.pot with xgettext
+
+2008-08-19 09:08 friedelwolff
+
+ * tools/updatetm.py: Increase the default maximum length to 1000
+ (same as pot2po)
+
+2008-08-18 14:08 murgilduta
+
+ * indexpage.py, pagelayout.py, translatepage.py: Unify
+ getsearchfields() function, move it to
+ pagelayout.py::PootleNavPage, and use it more efficiently
+ removing unnecessary member variables.
+
+2008-08-18 14:07 murgilduta
+
+ * projects.py: Since we already have a string, we don't need this
+ stupid conversion.
+
+2008-08-18 14:07 murgilduta
+
+ * projects.py: Index a list of term values instead of a string for
+ the locations.
+
+ This is possible due to changes introduced in rev 8053.
+
+2008-08-18 14:06 murgilduta
+
+ * pootlefile.py: Do not use mutable objects as default parameters.
+
+ For more information, see "important warning" in
+ http://docs.python.org/tut/node6.html#SECTION006710000000000000000
+
+2008-08-15 15:01 walter_l
+
+ * projects.py: Replaced Python 2.4-incompatible try-except-finally
+ block with a try-finally block in
+ TranslationProject.uploadarchive()
+
+2008-08-15 12:42 winterstream
+
+ * pootlefile.py: Fix pootlefile to work correctly when using XLIFF
+ files.
+
+2008-08-15 12:42 winterstream
+
+ * projects.py: Replace the merging code used when updating from
+ version control
+ with the merging code used when uploading a file.
+
+2008-08-15 12:41 winterstream
+
+ * pootlefile.py: Improve data structures used in matchitems.
+
+2008-08-15 12:40 winterstream
+
+ * pootlefile.py, projects.py: Add a position index for the units so
+ that, given a unit, we can find
+ its position in the unit list in O(1) time (instead of the silly
+ O(n)
+ system we had in place).
+
+2008-08-15 12:39 winterstream
+
+ * statistics.py: Fixed incorrect empty stats returns in the
+ statistics module.
+
+2008-08-15 08:58 walter_l
+
+ * projects.py: Replaced os.execvp() with subprocess.Popen() and
+ added a missing "import shutil" (oops! :P).
+
+2008-08-15 08:43 walter_l
+
+ * projects.py: Try to use "unzip" from the system before falling
+ back to Python's (_slightly_)
+ slower zipfile module in TranslationProject.uploadarchive(). This
+ fixes bug 402.
+
+2008-08-14 18:06 murgilduta
+
+ * html/images/bullet_arrow_down.png,
+ html/images/bullet_arrow_up.png, html/js/search.js,
+ html/pootle.css, templates/fileindex.html,
+ templates/translatepage.html: Allow Pootle search for fields (GUI
+ part).
+
+ This completes the user interface to the search for fields
+ enhancement.
+
+2008-08-14 18:04 murgilduta
+
+ * indexpage.py, pootlefile.py, projects.py, translatepage.py: Allow
+ Pootle to search for fields.
+
+ This is the codebase for implementing search for fields (GUI
+ follows).
+ Important note: this commit introduces changes in terms of what
+ information and under which names is stored by the indexing
+ engine, so from now on it is necessary to rebuild the search
+ indexes in order to work this functionality.
+ Specifically, "msgid" and "msgstr" fields now are known as
+ "source" and "target". Additionally, "notes" and "locations"
+ fields have been added.
+
+2008-08-14 16:46 murgilduta
+
+ * html/images/gtk-apply.png, html/images/gtk-cancel.png,
+ html/js/suggestions.js, html/pootle.css,
+ templates/translatepage.html, translatepage.py: Added option to
+ (re)view suggestions made by others while translating.
+
+ Normal users can view suggestions made by others while they
+ translate.
+ Users with reviewing privileges will be able to review
+ suggestions at the moment. Accepting and rejecting suggestions
+ works through an AJAX interface, so no page reload is needed.
+ Accepting a suggestion rejects the remaining others.
+
+ This fixes bug 427.
+
+2008-08-14 16:15 friedelwolff
+
+ * templates/translatepage.html: Only focus on the translation area
+ if we have translate or suggest rights
+
+2008-08-14 15:02 friedelwolff
+
+ * adminpages.py, templates/adminlanguages.html,
+ templates/adminprojects.html, templates/adminusers.html: Make
+ previously untranslatable admin page titles translatable
+
+2008-08-14 14:47 friedelwolff
+
+ * pootle.prefs: Disable Luganda (lg) and add more special
+ characters. Add and enable Neapolitan (nap). Add Urdu (ur)
+ disabled.
+
+2008-08-11 09:19 winterstream
+
+ * pootle.prefs, pootle.py: Added the ability to specify the stats
+ database in the Poolte preferences
+ file.
+
+2008-08-07 06:38 murgilduta
+
+ * html/js/unfuzzy.js, templates/translatepage.html: Mark fuzzy
+ messages as unfuzzy automatically after editing.
+
+ This fixes bug 456. Anyway, there are some issues with pasting
+ that will be addressed on bug 473.
+
+2008-08-04 15:12 winterstream
+
+ * pootlefile.py, projects.py, statistics.py, test_pootlefile.py:
+ Currently, when we reclassify a unit, we recompute the statistics
+ of an entire file
+ due to a bug. This is now fixed.
+
+2008-08-04 13:19 winterstream
+
+ * pootle.py: Used an incorrect import statement in the import code.
+
+ This should fix it.
+
+2008-07-29 13:13 winterstream
+
+ * pootle.py, profiling, profiling/__init__.py,
+ profiling/lsprofcalltree.py: This adds some profiling code to
+ Poolte. The output can be viewed with
+ kcachegrind.
+
+2008-07-25 10:23 dwaynebailey
+
+ * pootle.prefs: Add entry for Lugandan
+
+2008-07-24 20:12 friedelwolff
+
+ * potree.py: [Contributed by Suresh Chandrasekharan] Move the
+ language matching code from Pootle to the toolkit
+
+2008-07-23 10:00 murgilduta
+
+ * html/js/jquery, html/js/jquery/jquery.color.js,
+ html/js/jquery/jquery.js: Add jQuery library into /js/jquery/.
+
+ In this commit the core library (jquery.js, version 1.2.6) and
+ the Color Animations plugin (jquery.color.js) have been added.
+
+2008-07-22 15:03 friedelwolff
+
+ * statistics.py: Update the project-level quick stats after
+ reclassifying a unit
+
+2008-07-22 14:46 friedelwolff
+
+ * statistics.py: Remove invalid/unnecessary
+ @invalidates_memoization for .updatequickstats()
+
+2008-07-21 00:35 sumpfralle
+
+ * projects.py: add support for the 'author' tag to various revision
+ control systems (contributed by Miklos Vajna)
+
+2008-07-18 09:48 winterstream
+
+ * statistics.py: Added kwargs to memoization functions
+
+2008-07-17 17:50 winterstream
+
+ * pootlefile.py, projects.py: We make sure to invalidate memoized
+ stats values when we realize that
+ a file has changed since we last read its stats.
+
+2008-07-17 17:49 winterstream
+
+ * statistics.py: Improved the memoization a bit by making it
+ generic.
+
+2008-07-15 21:46 murgilduta
+
+ * translatepage.py: Escape correctly alternative source language
+ text.
+
+ This fixes bug 449.
+
+2008-07-15 15:27 winterstream
+
+ * pootlefile.py: Fixed a stupid bug which caused projects
+ containing more than one type of
+ translation file to experience strange bugs.
+
+ One can indeed be too smart for oneself. pootlefile.pootlefile
+ was a class
+ which extended the functionality an existing file store. When the
+ old code
+ was asked to load a translation file, it found the translation
+ store class
+ corresponding to the file and set pootlefile.pootlefile's base
+ class to that
+ class. Thus, if you loaded a PO file, then
+ pootlefile.pootlefile's class's
+ __bases__ member was set to (pofile,). This would cause
+ pootlefile.pootlefile
+ to behave as a class derived from pofile.
+
+ This worked great in projects with only a single file type. But
+ if you also
+ happened to use something like XLIFF, then the base class of
+ pootlefile.pootlefile would flip between pofile and xlifffile
+ depending on
+ the last loaded file type.
+
+ This is obviously not a good thing. So, we need to create
+ pootlefile classes
+ for each type of translation store that gets used. We do this at
+ runtime
+ by seeing whether such a class already exists; if not, it is
+ created.
+
+2008-07-15 12:45 murgilduta
+
+ * pootlefile.py, translatepage.py: Fixed retrieval of suggestions
+ from XLIFF files in reviewing mode.
+
+2008-07-07 10:32 winterstream
+
+ * statistics.py: modinfo in the translate toolkit is now a 2-tuple
+ containing the mtime and
+ the size of a file.
+
+ The pootle modtime function used the toolkit's get_mod_info
+ directly, but
+ this didn't play nice with existing code that's only interested
+ in looking
+ at the mtime of a file. So this has been modified to only give
+ the mtime
+ for Poolte.
+
+2008-07-01 14:47 winterstream
+
+ * pootlefile.py: pootlefile.getitem was previously modified not to
+ trigger full-scale quality checks on a unit,
+ with the aim of speeding up common operations. At the moment
+ though, there is no other code
+ to trigger checks, which means that the quality checking
+ functionality doesn't work with
+ these changes.
+
+ We really ought to work on this high coupling that causes so much
+ unexpected breakage.
+
+2008-07-01 11:23 winterstream
+
+ * benchmark.py, conflict2suggest.py, indexpage.py, pootle.py,
+ pootlefile.py, potree.py, projects.py, statistics.py,
+ templates/navbar.html, test_pootlefile.py, test_statistics.py,
+ translatepage.py: Merged in changes from
+ branches/Pootle-diet-and-trunk-merge.
+
+ Please see the branch if you are interested in the changes that
+ led to this commit.
+
+2008-06-20 15:33 friedelwolff
+
+ * projects.py: (Re-)fix XLIFF support in Pootle (where there are
+ not necessarily multistrings). Probably regressed during merging
+ of indexing code.
+
+2008-06-20 12:30 walter_l
+
+ * pootlefile.py: Changed the "%F" formatter to the expanded
+ "%Y-%m-%d" which results in the same
+ date. The difference is that the former is not supported on
+ Windows.
+
+ This is related to bug #290.
+
+2008-06-20 11:32 walter_l
+
+ * pootlefile.py: Used translate.storage.poheader.tzstring() to
+ replace the "%z" date formatting
+ option.
+
+ This fixes bug #290
+
+2008-06-19 20:52 sumpfralle
+
+ * projects.py: use different sub-directories for databases of
+ different indexing engines
+ rename the indexing directory from ".poindex-PROJECT-LANGUAGE" to
+ ".translation_index"
+ note for UPGRADING: you have to remove old indexing directories
+ manually
+
+ these changes are meant to ease migrations from one indexing
+ engine to another and to
+ allow different indexing engines to be on the same server
+
+2008-06-14 09:21 friedelwolff
+
+ * projects.py: Update Pootle code to new indexing code by merging
+ from the translate-search-indexer-generic-merging branch. Check
+ the branch for individual commits on this file.
+
+2008-06-13 16:45 friedelwolff
+
+ * pagelayout.py, pootle.prefs, pootle.py, templates/options.html,
+ templates/translatepage.html, translatepage.py, users.prefs,
+ users.py: Enable translation while displaying an alternative
+ source language.
+
+ A user option is provided to choose which language should be used
+ as the
+ alternative source language. The feature can be enabled/disabled
+ server wide
+ with the variable Pootle.enablealtsrc (disabled by default).
+
+ This closes bug 209.
+
+ Known issues:
+ Plural units are not supported yet (nothing is displayed)
+ Unit context (such as msgctxt in PO) is not taken into account
+ The first match from the alternative source language project is
+ used - not
+ specifically from the unit or file corresponding to the current
+ unit
+ This might need lots of memory and possibly processing power in
+ large projects
+
+ [Contributed by Julen Ruiz Aizpuru as part of GSoC2008, based on
+ work by
+ Sayamindu Dasgupta]
+
+2008-06-06 08:53 dwaynebailey
+
+ * createpootlepot: Prep the .pot fiel with package name and version
+ number
+
+2008-06-04 19:12 dwaynebailey
+
+ * pootle.py: Use mimetypes for downloads that match those defined
+ in virtaal.
+
+2008-06-04 19:09 dwaynebailey
+
+ * pootle.prefs: Add Venda as a disables language
+
+2008-06-04 19:07 dwaynebailey
+
+ * createpootlepot: Sort the found files before extracting text.
+
+2008-06-03 09:38 walter_l
+
+ * projects.py: The second commit (for Pootle) to fix bug 350.
+ Use of the tempfile module has replaced the use of os.tmpnam(),
+ which is apparently insecure.
+
+2008-05-15 15:20 friedelwolff
+
+ * test_client.py: Update test to new formatting on project admin
+ page
+
+2008-04-25 07:35 friedelwolff
+
+ * adminpages.py: Fix misnomer 'Login' -> 'Username' [reported by
+ Jussi Aalto]
+
+2008-04-23 11:35 friedelwolff
+
+ * README: Fix URL to bugzilla
+
+2008-04-03 14:55 friedelwolff
+
+ * templates/projectadmin.html: Show the language code in the
+ dropdown of languages to add to the project. This closes bug 357
+
+2008-04-03 14:27 friedelwolff
+
+ * adminpages.py, templates/projectadmin.html: Show existing
+ languages in a sortable table
+
+2008-04-02 15:12 dwaynebailey
+
+ * __init__.py: Fixes to cleanup PKG-INFO. Wrong download URL and
+ some wording changes.
+
+2008-03-28 13:51 friedelwolff
+
+ * statistics.py, translatepage.py: Fix bugs in .xlf support
+ (reported by Robert Malovec)
+
+2008-03-27 07:22 friedelwolff
+
+ * pootle.prefs: Update URLs
+
+2008-03-26 13:53 friedelwolff
+
+ * ChangeLog: Update Changelog before release of 1.1.0
+
+2008-03-26 13:02 friedelwolff
+
+ * __version__.py: Version 1.1.0
+
+2008-03-26 12:42 friedelwolff
+
+ * po/pootle/dz, po/pootle/dz/jToolkit.po, po/pootle/dz/pootle.po,
+ po/pootle/ga, po/pootle/ga/jToolkit.po, po/pootle/ga/pootle.po,
+ po/pootle/id, po/pootle/id/jToolkit.po, po/pootle/id/pootle.po,
+ po/pootle/nso, po/pootle/nso/jToolkit.po,
+ po/pootle/nso/pootle.po, po/pootle/sk, po/pootle/sk/jToolkit.po,
+ po/pootle/sk/pootle.po: New translations from
+ pootle.locamotion.org - Dzonkha (dz), Irish (ga), Indonesian
+ (id), Northern Sotho (nso), Slovak (sk)
+
+2008-03-26 12:23 friedelwolff
+
+ * po/pootle/ak/pootle.po, po/pootle/ar/pootle.po,
+ po/pootle/bg/jToolkit.po, po/pootle/bg/pootle.po,
+ po/pootle/cs/pootle.po, po/pootle/da/pootle.po,
+ po/pootle/de/jToolkit.po, po/pootle/de/pootle.po,
+ po/pootle/eo/pootle.po, po/pootle/es/jToolkit.po,
+ po/pootle/et/pootle.po, po/pootle/eu/jToolkit.po,
+ po/pootle/eu/pootle.po, po/pootle/fa/jToolkit.po,
+ po/pootle/fa/pootle.po, po/pootle/fr/pootle.po,
+ po/pootle/he/jToolkit.po, po/pootle/he/pootle.po,
+ po/pootle/hu/pootle.po, po/pootle/is/pootle.po,
+ po/pootle/ja/pootle.po, po/pootle/km/pootle.po,
+ po/pootle/ku/jToolkit.po, po/pootle/ku/pootle.po,
+ po/pootle/lt/jToolkit.po, po/pootle/lt/pootle.po,
+ po/pootle/ml/pootle.po, po/pootle/ms/pootle.po,
+ po/pootle/nb/jToolkit.po, po/pootle/nb/pootle.po,
+ po/pootle/ne/pootle.po, po/pootle/pl/jToolkit.po,
+ po/pootle/pl/pootle.po, po/pootle/pt/pootle.po,
+ po/pootle/ro/jToolkit.po, po/pootle/ro/pootle.po,
+ po/pootle/ru/jToolkit.po, po/pootle/ru/pootle.po,
+ po/pootle/sl/pootle.po, po/pootle/sr/jToolkit.po,
+ po/pootle/tr/pootle.po, po/pootle/uk/pootle.po,
+ po/pootle/wo/pootle.po, po/pootle/zh_CN/jToolkit.po,
+ po/pootle/zh_CN/pootle.po, po/pootle/zh_TW/jToolkit.po,
+ po/pootle/zu/pootle.po: Updated translations from
+ pootle.locamotion.org
+
+2008-03-18 21:27 friedelwolff
+
+ * pootle.prefs: Correct plural information for Hungarian
+
+2008-03-18 14:33 friedelwolff
+
+ * pootle.prefs: Enable Hungarian (hu)
+
+2008-03-18 14:32 friedelwolff
+
+ * pootle.prefs: Add Malayalam (ml)
+
+2008-03-18 14:29 friedelwolff
+
+ * pootle.prefs: Add special characters for Northern Sotho (nso)
+
+2008-03-18 14:27 friedelwolff
+
+ * pootle.py: Require at least build number 11000 (Version 1.1) of
+ the toolkit
+
+2008-03-13 10:13 friedelwolff
+
+ * pootlefile.py: Use .addunit() instead of .units.append. +Note
+ about inefficient merging code
+
+2008-02-29 12:55 friedelwolff
+
+ * __version__.py: Version 1.1.0rc2
+
+2008-02-29 12:54 friedelwolff
+
+ * indexpage.py, pootlefile.py, projects.py: Provide an upload box
+ for users that only have the 'suggest' right, and handle such
+ uploads properly.
+
+2008-02-29 12:52 friedelwolff
+
+ * test_client.py: Test that a user that only has suggest rights can
+ upload
+
+2008-02-29 08:04 friedelwolff
+
+ * po/pootle/templates/pootle.pot: Update template for the Pootle
+ project (very little actual change)
+
+2008-02-29 07:59 friedelwolff
+
+ * html/pootle.css: Change the colour of HTML highligting to a dark
+ red (#A00000)
+
+2008-02-29 07:42 friedelwolff
+
+ * translatepage.py: Implement highlighting of HTML markup in the
+ translate page
+
+2008-02-29 07:41 friedelwolff
+
+ * pootle.prefs: Allign language name with the iso-codes package for
+ 'Spanish; Castilian' (es)
+
+2008-02-29 07:38 friedelwolff
+
+ * projects.py: Update the indexing code to the newest provided by
+ the Toolkit that should work with PyLucene 1 and 2.
+
+2008-02-18 11:32 friedelwolff
+
+ * po/pootle/ru/jToolkit.po, po/pootle/ru/pootle.po,
+ po/pootle/sr/jToolkit.po, po/pootle/sr/pootle.po,
+ po/pootle/uk/jToolkit.po, po/pootle/uk/pootle.po: Fix broken
+ spacing in plural equations for ru, sr, uk
+
+2008-02-18 11:26 friedelwolff
+
+ * po/pootle/cs/jToolkit.po, po/pootle/cs/pootle.po: Fix broken
+ spacing in Czeck (cs) plural equation
+
+2008-02-15 13:48 friedelwolff
+
+ * pootle.py: Only swallow an ImportError - we want to know about
+ anything else
+
+2008-02-07 15:05 friedelwolff
+
+ * pootle.prefs: Close tags that were causing kid error
+
+2008-01-30 16:15 friedelwolff
+
+ * projects.py: Adapt to API change in the toolkit (convertfile ->
+ convertstore)
+
+2008-01-29 15:10 friedelwolff
+
+ * html/pootle.css: Comment out float: left; in #content and explain
+ why. This should fix bug 253.
+
+2008-01-29 09:30 friedelwolff
+
+ * html/pootle.css: Show a pointer (hand) over the related entries
+
+2008-01-28 16:08 friedelwolff
+
+ * html/js/autoexpand.js: Fix text insertion for Internet Explorer
+
+2008-01-28 13:28 friedelwolff
+
+ * pootle.prefs: New Arabic plural formula as given by Arabeyes
+
+2008-01-28 10:40 friedelwolff
+
+ * pootle.prefs: Rather use div than span tags for descriptions -
+ this ensures correct text alignment in bidi pages
+
+2008-01-28 10:35 friedelwolff
+
+ * templates/about.html: Remove fullwidthcontent in favour of
+ content. Now this looks better with the new RTL characteristics
+
+2008-01-23 23:01 larskr
+
+ * projects.py: avoid to use PyLucene v2 since the API is not
+ supported, yet
+
+2008-01-23 12:35 friedelwolff
+
+ * templates/activate.html, templates/login.html,
+ templates/register.html: Format login, register and activate
+ forms consistently
+
+2008-01-23 12:15 friedelwolff
+
+ * pootle.prefs: Adapt language names to ensure better alignment
+ with iso-codes
+
+2008-01-23 12:09 friedelwolff
+
+ * pootle.prefs: Provide proper country names to ensure better
+ alignment with iso-codes
+
+2008-01-23 11:22 friedelwolff
+
+ * pootle.prefs: Mention translation of language names with the
+ iso-codes package
+
+2008-01-23 11:16 friedelwolff
+
+ * pootle.prefs: Update and expand some descriptions
+
+2008-01-23 10:44 friedelwolff
+
+ * html/doc/en/howto.html, html/doc/en/index.html,
+ html/doc/en/resources.html: Mark several sections as 'info'
+ instead of 'intro'
+
+2008-01-23 10:40 friedelwolff
+
+ * html/doc/en/howto.html, html/doc/en/index.html,
+ html/doc/en/resources.html: Replace with new banner code
+
+2008-01-23 10:17 friedelwolff
+
+ * pootle.prefs: Remove unnecessary configuration of logos. This is
+ now entirely in the templates and CSS.
+
+2008-01-23 10:15 friedelwolff
+
+ * pagelayout.py: Remove dead code that handled logos
+
+2008-01-23 10:09 friedelwolff
+
+ * templates/projectlangadmin.html: Mark links as 'info' instead of
+ 'intro'
+
+2008-01-23 10:06 friedelwolff
+
+ * templates/adminlanguages.html, templates/adminprojects.html,
+ templates/adminusers.html: Mark admin links as 'info' instead of
+ 'intro'
+
+2008-01-23 10:03 friedelwolff
+
+ * templates/adminindex.html: Mark links as 'info' instead of
+ 'intro'
+
+2008-01-23 10:01 friedelwolff
+
+ * templates/home.html: Mark options and admin links as 'info'
+ instead of 'intro'
+
+2008-01-23 10:00 friedelwolff
+
+ * templates/login.html: Only show intro div if there is some intro
+ text
+
+2008-01-23 09:00 friedelwolff
+
+ * __version__.py: Version 1.1.0rc1
+
+2008-01-23 08:59 friedelwolff
+
+ * html/pootle.css: Align the source text vertically at the top to
+ align well with the target text
+
+2008-01-23 08:57 friedelwolff
+
+ * html/pootle.css: Draw a thick black border around the source text
+ to be translated
+
+2008-01-22 08:40 friedelwolff
+
+ * html/pootle.css: Fix background image url to proper name
+
+2008-01-22 08:27 friedelwolff
+
+ * html/images/WordForge-blue.png, html/images/WordForge-white.png,
+ html/images/gradient.png: Adapt images to new styling
+
+2008-01-22 08:10 friedelwolff
+
+ * html/pootle.css: Restore some better layout for older versions of
+ IE, although this will only work in LTR
+
+2008-01-22 07:36 friedelwolff
+
+ * templates/translatepage.html: Mark developer comments and
+ locations as lang="en" dir="ltr"
+
+2008-01-22 01:41 larskr
+
+ * html/pootle.css: image url should be relative to css file
+ location due to a potential 'baseurl' setting
+
+2008-01-21 15:43 friedelwolff
+
+ * templates/translatepage.html: Don't add title to related term
+ unnecessarily (when it is empty)
+
+2008-01-21 15:30 friedelwolff
+
+ * html/pootle.css: Make Tahoma a bit bigger for Arabic by default
+
+2008-01-21 15:22 friedelwolff
+
+ * templates/translatepage.html: Markup language and direction more
+ precicely
+
+2008-01-21 14:41 friedelwolff
+
+ * html/pootle.css: Exploit IE < 7 bug to somewhat mitigate display
+ bugs in IE < 7
+
+2008-01-21 10:43 friedelwolff
+
+ * html/pootle.css: Exploit IE bugs to ensure proper banner height
+ on IE
+
+2008-01-21 10:25 friedelwolff
+
+ * html/pootle.css: Use the descendant selector instead of the child
+ ('>') selector which is not supported older versions of IE
+
+2008-01-21 09:46 friedelwolff
+
+ * templates/pootlepage.html: Revove dir=ltr where it might not be
+ what is wanted
+
+2008-01-21 07:21 friedelwolff
+
+ * projects.py, statistics.py: Avoid writing the quickstats file
+ unnecessarily
+
+2008-01-18 15:13 friedelwolff
+
+ * test_pootlefile.py: Update to namechange in
+ translate.storage.test_po
+
+2008-01-18 15:12 friedelwolff
+
+ * templates/pootlepage.html: Stop output of unnecessary HTML
+ comments from kid
+
+2008-01-18 15:11 friedelwolff
+
+ * templates/fileindex.html, templates/language.html,
+ templates/translatepage.html: Stop output of unnecessary HTML
+ comments from kid
+
+2008-01-18 14:39 friedelwolff
+
+ * templates/translatepage.html: Only display tooltip if any
+ comments are present, and don't use newline unnecessarily
+
+2008-01-17 15:17 friedelwolff
+
+ * html/pootle.css: New styling for Pootle
+
+2008-01-17 14:00 friedelwolff
+
+ * templates/translatepage.html: Specify the 'dir' attribute in many
+ places to fit with the new layout
+
+2008-01-17 13:52 friedelwolff
+
+ * templates/pootlepage.html: Move the main navigation to the left,
+ below the banner
+
+2008-01-17 13:45 friedelwolff
+
+ * templates/about.html: Only mark first paragraph as introduction.
+ The rest is in new class 'info'.
+
+2007-12-15 16:47 friedelwolff
+
+ * pootle.prefs: Mark default descriptions as English and
+ left-to-right to ensure proper display
+
+2007-12-15 16:44 friedelwolff
+
+ * pootle.prefs: Document the treestyle project option
+
+2007-12-15 16:41 friedelwolff
+
+ * pootle.prefs: Enable Indonesian (id) and fix typos in (commented)
+ Khmer decleration
+
+2007-11-26 15:17 friedelwolff
+
+ * templates/about.html, templates/adminindex.html,
+ templates/home.html: Use fullwidthcontent in a few cases to
+ improve layout for right-to-left locales
+
+2007-11-22 22:07 dwaynebailey
+
+ * pootle.prefs: Fix equation error
+
+2007-11-13 15:08 friedelwolff
+
+ * html/pootle.css: Add default styling for Akan (ak)
+
+2007-11-13 12:40 friedelwolff
+
+ * pootlefile.py: Update now that ._initallcomments() is private in
+ the toolkit
+
+2007-11-13 12:39 friedelwolff
+
+ * pootle.prefs: Add special characters for Akan (ak)
+
+2007-10-22 10:34 friedelwolff
+
+ * projects.py: Don't upload output file after updating from
+ tepmlates (pot2po), otherwise the merging code of the upload
+ might retain units that were removed. The upload code just adds
+ unnecessary processing anyway.
+
+2007-10-19 20:48 larskr
+
+ * indexpage.py: fix revision control support - no versioned files
+ were detected before
+
+2007-10-09 21:17 larskr
+
+ * tools: ignore pre-compiled python files for svn
+
+2007-10-08 23:34 larskr
+
+ * projects.py: improve some comments
+
+2007-10-08 23:08 larskr
+
+ * po/pootle/af, po/pootle/ak, po/pootle/am, po/pootle/ar,
+ po/pootle/bg, po/pootle/bn, po/pootle/ca, po/pootle/cs,
+ po/pootle/da, po/pootle/de, po/pootle/el, po/pootle/en,
+ po/pootle/en_ZA, po/pootle/eo, po/pootle/es, po/pootle/et,
+ po/pootle/eu, po/pootle/fa, po/pootle/fi, po/pootle/fr,
+ po/pootle/fur, po/pootle/gl, po/pootle/ha, po/pootle/he,
+ po/pootle/hi, po/pootle/hr, po/pootle/hu, po/pootle/hy,
+ po/pootle/is, po/pootle/it, po/pootle/ja, po/pootle/ka,
+ po/pootle/kg, po/pootle/km, po/pootle/ko, po/pootle/ku,
+ po/pootle/lt, po/pootle/lv, po/pootle/ml, po/pootle/mr,
+ po/pootle/ms, po/pootle/mt, po/pootle/nb, po/pootle/ne,
+ po/pootle/nl, po/pootle/nn, po/pootle/pa, po/pootle/pl,
+ po/pootle/pt, po/pootle/pt_BR, po/pootle/ro, po/pootle/ru,
+ po/pootle/sl, po/pootle/sr, po/pootle/st, po/pootle/sv,
+ po/pootle/templates, po/pootle/tr, po/pootle/uk, po/pootle/ve,
+ po/pootle/vi, po/pootle/wo, po/pootle/xh, po/pootle/zh_CN,
+ po/pootle/zh_HK, po/pootle/zh_TW, po/pootle/zu,
+ po/terminology/am, po/terminology/am/gnome, po/terminology/ar,
+ po/terminology/ar/gnome, po/terminology/az,
+ po/terminology/az/gnome, po/terminology/ca,
+ po/terminology/ca/gnome, po/terminology/cs,
+ po/terminology/cs/gnome, po/terminology/da,
+ po/terminology/da/gnome, po/terminology/eo,
+ po/terminology/eo/gnome, po/terminology/es,
+ po/terminology/es/gnome, po/terminology/eu,
+ po/terminology/eu/gnome, po/terminology/fa,
+ po/terminology/fa/gnome, po/terminology/fr,
+ po/terminology/fr/gnome, po/terminology/hi,
+ po/terminology/hi/gnome, po/terminology/hu,
+ po/terminology/hu/gnome, po/terminology/it,
+ po/terminology/it/gnome, po/terminology/ja,
+ po/terminology/ja/gnome, po/terminology/kn,
+ po/terminology/kn/gnome, po/terminology/ku,
+ po/terminology/ku/gnome, po/terminology/mk,
+ po/terminology/mk/gnome, po/terminology/mr,
+ po/terminology/mr/gnome, po/terminology/ms,
+ po/terminology/ms/gnome, po/terminology/nb,
+ po/terminology/nb/gnome, po/terminology/nl,
+ po/terminology/nl/gnome, po/terminology/nn,
+ po/terminology/nn/gnome, po/terminology/pa,
+ po/terminology/pa/gnome, po/terminology/pl,
+ po/terminology/pl/gnome, po/terminology/pt,
+ po/terminology/pt/gnome, po/terminology/pt_BR,
+ po/terminology/pt_BR/gnome, po/terminology/rw,
+ po/terminology/rw/gnome, po/terminology/sk,
+ po/terminology/sk/gnome, po/terminology/sq,
+ po/terminology/sq/gnome, po/terminology/sv,
+ po/terminology/sv/gnome, po/terminology/th,
+ po/terminology/th/gnome, po/terminology/uk,
+ po/terminology/uk/gnome, po/terminology/vi,
+ po/terminology/vi/gnome, po/terminology/wa,
+ po/terminology/wa/gnome, po/terminology/zh_CN,
+ po/terminology/zh_CN/gnome, po/terminology/zh_HK,
+ po/terminology/zh_HK/gnome, po/terminology/zh_TW,
+ po/terminology/zh_TW/gnome: hide irrelevant language files from
+ svn
+
+2007-10-06 09:30 larskr
+
+ * benchmark.py, projects.py: imported 'jToolkit/data/indexer.py'
+ from jToolkit 0.7.8
+ added a copyright note to the new file
+ imports of 'indexer' adapted
+
+2007-09-26 14:11 friedelwolff
+
+ * adminpages.py, indexpage.py: Make the medium bannerheight be 80
+ pixels to fit with the current medium graphics size
+
+2007-09-17 10:31 friedelwolff
+
+ * pootle.prefs: Remind the admin to copy the pootle project if the
+ default podirectory is changed
+
+2007-09-14 09:17 friedelwolff
+
+ * indexpage.py, projects.py: [Contributed by Lars Kruse] Import
+ version control functionality from the translate toolkit
+
+2007-09-14 09:12 friedelwolff
+
+ * versioncontrol.py: Remove versioncontrol.py from Pootle, now that
+ it has been moved to the translate toolkit
+
+2007-09-14 08:50 dwaynebailey
+
+ * pootlefile.py, projects.py: Change isblankmsgstr() and use
+ istranslated() instead; to align with base class.
+
+2007-09-13 11:59 friedelwolff
+
+ * indexpage.py: Remove debugging output
+
+2007-09-06 09:15 friedelwolff
+
+ * versioncontrol.py: [Contributed by Lars Kruse]
+ Move duplicated filesystem code to the base class.
+ Provide all infrastructure in the base class to handle relative
+ and absolute
+ styles of specifying file parameters.
+
+2007-09-04 08:47 friedelwolff
+
+ * versioncontrol.py: - replace all shell string commands with
+ arrays of strings
+ - improve consistency of error messages
+ - use exitcodes instead of stderr to check for failures
+ - use python instead of the shell for "cd", "rm", "mv", etc.
+ - use the subprocess module if available, otherwise fall back to
+ popen2
+
+2007-08-31 12:54 friedelwolff
+
+ * projects.py: Rename pofilter::filterlement() -> filterunit()
+ according to API change of r6334
+
+2007-08-31 11:15 friedelwolff
+
+ * statistics.py: Adapt to new pofilter API
+
+2007-08-03 11:09 friedelwolff
+
+ * pootle.prefs: Enable Slovak for the next release as it is
+ currently at 100%
+
+2007-08-03 10:28 friedelwolff
+
+ * templates/navbar.html: Use a hex colour for proper rendering in
+ Internet Explorer. Remove the useless class attribute of
+ itemdata.
+
+2007-08-02 15:22 friedelwolff
+
+ * html/pootle.css: Add KacstOne as a possible font for Arabic after
+ Nazli but before Dejavu Sans
+
+2007-08-02 13:09 friedelwolff
+
+ * templates/index.html: Remove fancy spacing to avoid incorrect
+ extra spaces between project names and the (comma) seperators
+
+2007-08-02 13:04 friedelwolff
+
+ * indexpage.py: Use the correct list seperator for the list of
+ languages and projects
+
+2007-08-02 09:42 friedelwolff
+
+ * users.py: Instantiate the language module for the interface
+ interface language
+
+2007-08-02 09:34 friedelwolff
+
+ * templates/options.html: Make the language dropdown 100% of the
+ width of the table cell
+
+2007-08-02 09:33 friedelwolff
+
+ * templates/index.html: Mark the language names as English so that
+ the styling isn't affected when the interface is in languages
+ with different styling (such as Chinese and Khmer)
+
+2007-08-02 09:29 friedelwolff
+
+ * templates/pootlepage.html: Simplify the header by removing one
+ table and the spacer
+
+2007-08-01 20:01 dwaynebailey
+
+ * html/images/pootle-medium.jpg, html/images/pootle-small.jpg,
+ html/images/pootle.jpg, html/images/pootle.svg,
+ html/images/top.png: Remove all old Pootle and Translate logos
+
+2007-08-01 13:19 friedelwolff
+
+ * pootle.py: Give more information about the error if a translation
+ couldn't be initialised
+
+2007-07-31 15:23 friedelwolff
+
+ * indexpage.py: Remove unused function (summarizestats). +Comment,
+ update copyright dates.
+
+2007-07-31 10:18 friedelwolff
+
+ * pagelayout.py: Simplify getstats() by taking a shortcut in the
+ calculation
+
+2007-07-31 08:26 friedelwolff
+
+ * CREDITS: Change Miklos' credit line to indicate the complete
+ breadth of the contributions
+
+2007-07-31 08:24 friedelwolff
+
+ * versioncontrol.py: [Contributed by Miklos Vajna] +Support for bzr
+ version control system
+
+2007-07-26 11:21 friedelwolff
+
+ * html/pootle.css: Use 'bolder' instead of 'bold' for font-weight
+ to improve the ability to override per language / tag later
+
+2007-07-26 10:55 friedelwolff
+
+ * indexpage.py: Update indexpage to use new keys for stats
+ dictionary
+
+2007-07-26 10:51 friedelwolff
+
+ * templates/navbar.html: Use the new dicionary keys for source word
+ counts
+
+2007-07-26 10:50 friedelwolff
+
+ * pagelayout.py, projects.py: Change the word count keys in stats
+ dictionaries to reflect the fact that they are source word counts
+
+2007-07-26 10:48 friedelwolff
+
+ * indexpage.py: Don't pass the unnecessary third parameter to
+ pagelayout.getstats()
+
+2007-07-25 08:45 friedelwolff
+
+ * pootle.prefs: Fix Chinese typo, Slovak indenting. Enable
+ Lithuanian for next release. +Malagasy (commented).
+
+2007-07-24 06:25 friedelwolff
+
+ * versioncontrol.py: [Contributed by Miklos Vajna] Add support for
+ Git version control system
+
+2007-07-23 11:14 friedelwolff
+
+ * statistics.py: Remove unneeded handling of source and target
+ (unneeded because of new checker API)
+
+2007-07-19 10:30 friedelwolff
+
+ * statistics.py: Remove unnecessary import of pocount
+
+2007-07-19 10:10 friedelwolff
+
+ * projects.py: Use the filename with directory name to get
+ quickstats [reported by Igor Miletic]
+
+2007-07-19 10:06 friedelwolff
+
+ * projects.py: Remove unnecessary import of pofilter
+
+2007-07-19 09:34 friedelwolff
+
+ * README: Update comments about python versions
+
+2007-07-19 07:06 friedelwolff
+
+ * versioncontrol.py: [Contributed by Lars Kruse] Rewrite
+ os.path.samefile for platform independence
+
+2007-07-18 11:42 friedelwolff
+
+ * statistics.py: Update to the new API for run_filters()
+
+2007-07-18 11:41 friedelwolff
+
+ * pootle.py, projects.py, test_pootlefile.py: Remove references to
+ POTeeChecker by replacing with a normal TeeChecker
+
+2007-07-18 11:35 friedelwolff
+
+ * pootle.py, projects.py, test_pootlefile.py: Rename POChecker ->
+ UnitChecker
+
+2007-07-17 10:49 friedelwolff
+
+ * pootlefile.py: Remove unused functions getfilename() and getext()
+
+2007-07-17 10:47 friedelwolff
+
+ * test_pootlefile.py: Remove test_filename() and remove unnecessary
+ cleanup in test_classifyunits()
+
+2007-07-17 10:44 friedelwolff
+
+ * statistics.py: The counting helper functions moved from
+ pocount.py to statsdb.py in the toolkit
+
+2007-07-17 10:30 friedelwolff
+
+ * indexpage.py: Sort languages in a way that is compatible with
+ Python 2.3
+
+2007-07-17 10:29 friedelwolff
+
+ * pootle.prefs: Recommend the use of a language attribute for
+ server and project descriptions
+
+2007-07-17 09:38 friedelwolff
+
+ * users.py: Provide translated language names on the login page (if
+ available) with the English version. Sort language names in a way
+ that is compatible with python 2.3.
+
+2007-07-16 15:17 friedelwolff
+
+ * adminpages.py: Use translated language names in the
+ administration interface
+
+2007-07-16 13:44 friedelwolff
+
+ * versioncontrol.py: [Contributed by Lars Kruse and Miklos Vajna]
+ Support different configurations with darcs by traversing the
+ directory tree upwards in search of the marker directory
+
+2007-07-12 10:19 friedelwolff
+
+ * pootle.py: Ensure that we test for a .po extention otherwise
+ directories called 'po' could confuse Pootle
+
+2007-07-10 15:13 dwaynebailey
+
+ * createpootlepot: Cleanup. Easier to read and adjust the xgettext
+ commands. Also output to the correct place in po/
+
+2007-07-10 13:09 friedelwolff
+
+ * pootle.prefs: Enable Wolof in the default installation
+
+2007-07-10 10:31 friedelwolff
+
+ * ChangeLog: Update ChangeLog before 1.0.2 release
+
+2007-07-10 10:16 friedelwolff
+
+ * README: Mention that ElementTree is not needed with Python 2.5
+
+2007-07-10 09:40 friedelwolff
+
+ * indexpage.py, pootle.py: Fix the ElementTree import for Python
+ 2.5
+
+2007-07-10 07:21 dwaynebailey
+
+ * indexpage.py, pootle.py: Fix ElementTree import for Python 2.5
+ users.
+
+2007-07-09 15:39 friedelwolff
+
+ * po/pootle/wo/pootle.po: Provisionaly add plural information.
+ nplural=2 should be right, but the equation is a guess at (n !=
+ 1) for the moment
+
+2007-07-09 14:59 friedelwolff
+
+ * po/pootle/wo, po/pootle/wo/jToolkit.po, po/pootle/wo/pootle.po:
+ Add Wolof (wo) translation
+
+2007-07-09 14:47 friedelwolff
+
+ * po/pootle/el/jToolkit.po, po/pootle/el/pootle.po,
+ po/pootle/lv/pootle.po: Update Greek (el) and Latvian (lv)
+ translations from http://pootle.wordforge.org/
+
+2007-07-09 13:08 friedelwolff
+
+ * __version__.py: Version 1.0.2
+
+2007-07-09 12:59 friedelwolff
+
+ * pootle.prefs: Add the (commented) information for Papiamento
+
+2007-07-09 07:37 friedelwolff
+
+ * CREDITS: Credit Abel Cheung
+
+2007-07-06 15:01 friedelwolff
+
+ * pagelayout.py, pootle.prefs: [Contributed by Lars Kruse] show
+ banner image for a configured baseurl. Part of the fixes for bug
+ 113.
+
+2007-07-06 14:59 friedelwolff
+
+ * html/js/sorttable.js, templates/fileindex.html,
+ templates/language.html, templates/project.html: [Contributed by
+ Lars Kruse] Make the javascript aware of the baseurl. Part of the
+ fixes for bug 113.
+
+2007-07-06 14:44 friedelwolff
+
+ * html/doc/en/howto.html, templates/pootlepage.html: [Contributed
+ by Lars Kruse] Make documentation work with the configured
+ baseurl. Part of the fixes for bug 113.
+
+2007-07-06 13:04 friedelwolff
+
+ * pootle.prefs: [Contributed by Abel Cheung] Add some special
+ characters for all Chinese locales that can't be easily typed
+ with input methods
+
+2007-07-04 15:26 friedelwolff
+
+ * pootlefile.py: [Contributed by Lars Kruse] Handle path in
+ portable way
+
+2007-07-04 06:35 friedelwolff
+
+ * test_statistics.py: [Contributed by Lars Kruse] Use platform
+ independent path seperators for test_creation()
+
+2007-07-03 13:18 friedelwolff
+
+ * __version__.py: Update to version 1.0.2rc1
+
+2007-07-03 13:17 friedelwolff
+
+ * indexpage.py: [Contributed by Lars Kruse] Handle path seperators
+ in a platform independent way
+
+2007-07-03 13:12 friedelwolff
+
+ * test_client.py: Adapt test to not expect the disabled attribute
+ of the fuzzy checkbox
+
+2007-07-03 09:13 friedelwolff
+
+ * templates/translatepage.html: Only use add the disabled attribute
+ to the fuzzy check box if the user does not have translate
+ rights. This fixes bug 266.
+
+2007-07-02 09:00 friedelwolff
+
+ * pootle.prefs: Mention in the default description that contact
+ details were not provided and should be done by the server
+ administrator
+
+2007-06-26 08:29 friedelwolff
+
+ * translatepage.py: Support styling of basic escapes (\t, \n, and
+ \r). It uses the already defined styling in pootle.css (just
+ purple colour). Fix docstring.
+
+2007-06-25 09:33 friedelwolff
+
+ * versioncontrol.py: Update docstrings
+
+2007-06-25 09:20 friedelwolff
+
+ * versioncontrol.py: Change the indenting to four spaces while the
+ diff with older versions is mostly useless now anyway
+
+2007-06-25 09:11 friedelwolff
+
+ * versioncontrol.py: [Contributed by Lars Kruse]
+ Rewrite the version control support to have an object oriented
+ design.
+ Symlinked targets are now also supported to ease integration with
+ checkouts at
+ other locations. No new dependencies are introduced.
+
+2007-06-22 14:36 friedelwolff
+
+ * pagelayout.py: Use os.path.sep instead of the hard coded '/'
+ [based on the initial work by Lars Kruse]
+
+2007-06-22 12:26 friedelwolff
+
+ * projects.py: Test whether the commandline ZIP command actually
+ worked before we return the output
+
+2007-06-20 08:45 friedelwolff
+
+ * ChangeLog: Update ChangeLog with the latest changes before 1.0.1
+
+2007-06-20 08:41 friedelwolff
+
+ * pootle.py, potree.py: Print error on missing files (like broken
+ symbolic links)
+
+2007-06-20 08:37 friedelwolff
+
+ * pootle.py: Fix incorrect function call [reported by Nicolas
+ François]
+
+2007-06-20 08:16 friedelwolff
+
+ * potree.py: Handle the problem of broken symbolic links better by
+ ignoring the files. Space for readability.
+
+2007-06-19 12:52 friedelwolff
+
+ * ChangeLog: Update ChangeLog before the release of 1.0.1
+
+2007-06-19 12:38 friedelwolff
+
+ * po/pootle/ml, po/pootle/ml/jToolkit.po, po/pootle/ml/pootle.po:
+ Add new translation for Malayalam (ml)
+
+2007-06-19 09:33 friedelwolff
+
+ * po/pootle/cs/pootle.po, po/pootle/fr/pootle.po,
+ po/pootle/it/pootle.po, po/pootle/lv/jToolkit.po,
+ po/pootle/lv/pootle.po, po/pootle/nl/pootle.po,
+ po/pootle/st/jToolkit.po, po/pootle/st/pootle.po,
+ po/pootle/vi/pootle.po: Update existing translations from
+ http://pootle.wordforge.org/
+
+2007-06-19 08:39 friedelwolff
+
+ * __version__.py: Version 1.0.1
+
+2007-06-19 08:17 friedelwolff
+
+ * CREDITS: Update entries for Lars and Lucas to be clearer
+
+2007-06-18 10:39 friedelwolff
+
+ * templates/fileindex.html, templates/translatepage.html:
+ [Contributed by Lars Kruse] Fix the missing links section that
+ sometimes dissapear on Internet Explorer. This fixes bug 253
+
+2007-06-14 12:11 friedelwolff
+
+ * test_client.py: Update tests to expect new disabled attribute in
+ test_submit_fuzzy
+
+2007-06-12 15:41 friedelwolff
+
+ * templates/navbar.html: Fix some minor bugs in the graphing of
+ minute (smaller than 1%) values
+
+2007-06-12 10:40 friedelwolff
+
+ * templates/translatepage.html: disable the fuzzy control if the
+ user does not have translate rights
+
+2007-06-12 09:46 friedelwolff
+
+ * templates/translatepage.html: Only show special characters if the
+ user has translate or suggest rights. This fixes bug 192.
+
+2007-06-11 16:04 friedelwolff
+
+ * __version__.py: Version 1.0.1rc1
+
+2007-06-11 14:55 friedelwolff
+
+ * templates/pootlepage.html: strip out unnecessary span tags
+
+2007-06-11 14:46 friedelwolff
+
+ * html/js/autoexpand.js, templates/translatepage.html: Insert the
+ suggested text into the focused textarea if the user clicks on
+ it. This fixes bug 187.
+
+2007-06-04 14:57 friedelwolff
+
+ * html/js/autoexpand.js: Escape newlines and tabs. Fix for bug 180
+
+2007-06-04 13:11 friedelwolff
+
+ * templates/navbar.html: Ensure that each part of the graph always
+ shows, even if it represents something less than 1%. This fixes
+ bug 228
+
+2007-06-04 09:54 friedelwolff
+
+ * pootle.prefs: Fix wrong indentation. Should fix bug 247
+
+2007-05-25 11:36 friedelwolff
+
+ * CREDITS: Remove duplicate entry for Capel
+
+2007-05-25 09:56 friedelwolff
+
+ * ChangeLog: Update ChangeLog before 1.0 release
+
+2007-05-25 09:36 friedelwolff
+
+ * src/trunk/Pootle/CREDITS: Credit Capel Brunker
+
+2007-05-24 15:50 friedelwolff
+
+ * src/trunk/Pootle/__version__.py: Version 1.0
+
+2007-05-24 15:34 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/eo,
+ src/trunk/Pootle/po/pootle/eo/jToolkit.po,
+ src/trunk/Pootle/po/pootle/eo/pootle.po: Add minimal Esperanto
+ (eo) translation (2% translated)
+
+2007-05-24 15:30 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/af/jToolkit.po,
+ src/trunk/Pootle/po/pootle/af/pootle.po,
+ src/trunk/Pootle/po/pootle/ca/pootle.po,
+ src/trunk/Pootle/po/pootle/de/pootle.po,
+ src/trunk/Pootle/po/pootle/es/pootle.po,
+ src/trunk/Pootle/po/pootle/eu/pootle.po,
+ src/trunk/Pootle/po/pootle/fa/pootle.po,
+ src/trunk/Pootle/po/pootle/fi/pootle.po,
+ src/trunk/Pootle/po/pootle/gl/pootle.po,
+ src/trunk/Pootle/po/pootle/ko/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ko/pootle.po,
+ src/trunk/Pootle/po/pootle/ms/pootle.po,
+ src/trunk/Pootle/po/pootle/pt_BR/pootle.po,
+ src/trunk/Pootle/po/pootle/ro/pootle.po,
+ src/trunk/Pootle/po/pootle/ru/pootle.po,
+ src/trunk/Pootle/po/pootle/sr/pootle.po,
+ src/trunk/Pootle/po/pootle/st/jToolkit.po,
+ src/trunk/Pootle/po/pootle/st/pootle.po,
+ src/trunk/Pootle/po/pootle/sv/pootle.po,
+ src/trunk/Pootle/po/pootle/tr/pootle.po,
+ src/trunk/Pootle/po/pootle/uk/pootle.po,
+ src/trunk/Pootle/po/pootle/zh_TW/pootle.po: Update translations
+ from http://pootle.wordforge.org for 1.0 release
+
+2007-05-24 12:59 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs: Change the Afrikaans diacritics.
+ Clean up whitespace.
+
+2007-05-24 09:29 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs: Disable Slovak (sk) enabled by
+ accident
+
+2007-05-24 09:16 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs: Enable Persian (fa), Korean (ko),
+ Romanian (ro), Serbian (sr), Sotho, (st), Turkish (tr), Ukrainian
+ (uk) in the default install
+
+2007-05-24 06:26 andreaspauley
+
+ * src/trunk/Pootle/html/doc/en/index.html: Added links to
+ translated documentation.
+
+2007-05-23 14:43 andreaspauley
+
+ * src/trunk/pootlesetup.py: Included 'en' subdir for HTML
+ documentation.
+
+2007-05-23 12:43 friedelwolff
+
+ * src/trunk/Pootle/__version__.py: Version 1.0rc3
+
+2007-05-23 10:56 friedelwolff
+
+ * src/trunk/Pootle/README: Tidy up and mention toolkit dependencies
+
+2007-05-22 10:30 friedelwolff
+
+ * src/trunk/Pootle/CREDITS: Reflow the text, credit translators and
+ Nicolas François
+
+2007-05-18 16:14 friedelwolff
+
+ * src/trunk/Pootle/__version__.py: Version 1.0rc2
+
+2007-05-17 11:44 friedelwolff
+
+ * src/trunk/Pootle/README: Mention that we can't run with the
+ newest PyLucene
+
+2007-05-17 10:49 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Fix the bug where PyLucene breaks
+ some tests
+
+2007-05-16 12:25 friedelwolff
+
+ * src/trunk/Pootle/indexpage.py, src/trunk/Pootle/pootle.py,
+ src/trunk/Pootle/potree.py, src/trunk/Pootle/translatepage.py:
+ Changed obsolete sre references to re
+
+2007-05-16 12:10 friedelwolff
+
+ * src/trunk/Pootle/indexpage.py, src/trunk/Pootle/pagelayout.py,
+ src/trunk/Pootle/users.py: Translate language names and sort them
+ properly
+
+2007-05-16 08:53 friedelwolff
+
+ * src/trunk/Pootle/users.py: Handle session initialisation errors
+ better
+
+2007-05-11 09:33 andreaspauley
+
+ * src/trunk/Pootle/html/doc/en,
+ src/trunk/Pootle/html/doc/en/howto.html,
+ src/trunk/Pootle/html/doc/en/index.html,
+ src/trunk/Pootle/html/doc/en/resources.html,
+ src/trunk/Pootle/html/doc/howto.html,
+ src/trunk/Pootle/html/doc/index.html,
+ src/trunk/Pootle/html/doc/resources.html,
+ src/trunk/Pootle/pagelayout.py,
+ src/trunk/Pootle/templates/pootlepage.html: Moved the English
+ user documentation into an 'en' subdirectory. This is to be able
+ to provide our user's guide in multiple languages.
+
+2007-05-07 12:22 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Close pending file after writing
+ it
+
+2007-05-07 10:37 friedelwolff
+
+ * src/trunk/Pootle/pootle.py: Remove debug message
+
+2007-05-03 19:41 friedelwolff
+
+ * src/trunk/Pootle/__version__.py: Change the version to 1.0rc1
+
+2007-05-03 19:18 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/af/pootle.po,
+ src/trunk/Pootle/po/pootle/ak/pootle.po,
+ src/trunk/Pootle/po/pootle/am/pootle.po,
+ src/trunk/Pootle/po/pootle/ar/pootle.po,
+ src/trunk/Pootle/po/pootle/bg/pootle.po,
+ src/trunk/Pootle/po/pootle/bn/pootle.po,
+ src/trunk/Pootle/po/pootle/ca/pootle.po,
+ src/trunk/Pootle/po/pootle/cs/pootle.po,
+ src/trunk/Pootle/po/pootle/da/pootle.po,
+ src/trunk/Pootle/po/pootle/de/pootle.po,
+ src/trunk/Pootle/po/pootle/el/pootle.po,
+ src/trunk/Pootle/po/pootle/en/pootle.po,
+ src/trunk/Pootle/po/pootle/en_ZA/pootle.po,
+ src/trunk/Pootle/po/pootle/es/pootle.po,
+ src/trunk/Pootle/po/pootle/et/pootle.po,
+ src/trunk/Pootle/po/pootle/eu/pootle.po,
+ src/trunk/Pootle/po/pootle/fa/pootle.po,
+ src/trunk/Pootle/po/pootle/fi/pootle.po,
+ src/trunk/Pootle/po/pootle/fr/pootle.po,
+ src/trunk/Pootle/po/pootle/fur/pootle.po,
+ src/trunk/Pootle/po/pootle/gl/pootle.po,
+ src/trunk/Pootle/po/pootle/ha/pootle.po,
+ src/trunk/Pootle/po/pootle/he/pootle.po,
+ src/trunk/Pootle/po/pootle/hi/pootle.po,
+ src/trunk/Pootle/po/pootle/hr/pootle.po,
+ src/trunk/Pootle/po/pootle/hu/pootle.po,
+ src/trunk/Pootle/po/pootle/hy/pootle.po,
+ src/trunk/Pootle/po/pootle/is/pootle.po,
+ src/trunk/Pootle/po/pootle/it/pootle.po,
+ src/trunk/Pootle/po/pootle/ja/pootle.po,
+ src/trunk/Pootle/po/pootle/ka/pootle.po,
+ src/trunk/Pootle/po/pootle/kg/pootle.po,
+ src/trunk/Pootle/po/pootle/km/pootle.po,
+ src/trunk/Pootle/po/pootle/ko/pootle.po,
+ src/trunk/Pootle/po/pootle/ku/pootle.po,
+ src/trunk/Pootle/po/pootle/lt/pootle.po,
+ src/trunk/Pootle/po/pootle/lv/pootle.po,
+ src/trunk/Pootle/po/pootle/mr/pootle.po,
+ src/trunk/Pootle/po/pootle/ms/pootle.po,
+ src/trunk/Pootle/po/pootle/mt/pootle.po,
+ src/trunk/Pootle/po/pootle/nb/pootle.po,
+ src/trunk/Pootle/po/pootle/ne/pootle.po,
+ src/trunk/Pootle/po/pootle/nl/pootle.po,
+ src/trunk/Pootle/po/pootle/nn/pootle.po,
+ src/trunk/Pootle/po/pootle/pa/pootle.po,
+ src/trunk/Pootle/po/pootle/pl/pootle.po,
+ src/trunk/Pootle/po/pootle/pt/pootle.po,
+ src/trunk/Pootle/po/pootle/pt_BR/pootle.po,
+ src/trunk/Pootle/po/pootle/ro/pootle.po,
+ src/trunk/Pootle/po/pootle/ru/pootle.po,
+ src/trunk/Pootle/po/pootle/sl/pootle.po,
+ src/trunk/Pootle/po/pootle/sr/pootle.po,
+ src/trunk/Pootle/po/pootle/st/pootle.po,
+ src/trunk/Pootle/po/pootle/sv/pootle.po,
+ src/trunk/Pootle/po/pootle/tr/pootle.po,
+ src/trunk/Pootle/po/pootle/uk/pootle.po,
+ src/trunk/Pootle/po/pootle/ve/pootle.po,
+ src/trunk/Pootle/po/pootle/vi/pootle.po,
+ src/trunk/Pootle/po/pootle/xh/pootle.po,
+ src/trunk/Pootle/po/pootle/zh_CN/pootle.po,
+ src/trunk/Pootle/po/pootle/zh_HK/pootle.po,
+ src/trunk/Pootle/po/pootle/zh_TW/pootle.po,
+ src/trunk/Pootle/po/pootle/zu/pootle.po: Update translations to
+ new template
+
+2007-05-03 16:24 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/cs/jToolkit.po,
+ src/trunk/Pootle/po/pootle/cs/pootle.po,
+ src/trunk/Pootle/po/pootle/el/pootle.po,
+ src/trunk/Pootle/po/pootle/es/pootle.po,
+ src/trunk/Pootle/po/pootle/fr/pootle.po,
+ src/trunk/Pootle/po/pootle/pt/jToolkit.po,
+ src/trunk/Pootle/po/pootle/pt/pootle.po,
+ src/trunk/Pootle/po/pootle/pt_BR/pootle.po,
+ src/trunk/Pootle/po/pootle/ro/pootle.po,
+ src/trunk/Pootle/po/pootle/st/pootle.po,
+ src/trunk/Pootle/po/pootle/zh_TW/pootle.po: Forward port
+ translation updates from revision 5558 on wordforge-0-10-branch
+
+2007-04-25 14:29 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css: Typo: text-size -> font-size
+
+2007-04-20 15:30 andreaspauley
+
+ * src/trunk/Pootle/pootle.prefs: Documented the valid values for
+ localfiletype in pootle.prefs
+
+2007-04-20 15:18 andreaspauley
+
+ * src/trunk/Pootle/pagelayout.py, src/trunk/Pootle/pootle.prefs:
+ Included the logo config options in the default pootle.prefs and
+ simplified the retrieval of these options.
+
+2007-04-19 17:12 andreaspauley
+
+ * src/trunk/Pootle/users.py: Encode the Subject Header of the
+ registration mails in UTF-8. Patch contributed by Nicolas
+ François.
+
+2007-04-19 17:07 andreaspauley
+
+ * src/trunk/Pootle/pagelayout.py,
+ src/trunk/Pootle/templates/pootlepage.html: Permit
+ personalization of the Pootle logos. Patch contributed by Nicolas
+ François.
+
+2007-04-19 16:11 andreaspauley
+
+ * src/trunk/Pootle/potree.py: Made potree check for 'treestyle' in
+ the prefs file, so as to avoid traversing directories to
+ determine if a project is gnu-style or not. Patch contributed by
+ Nicolas François.
+
+2007-04-17 15:04 andreaspauley
+
+ * src/trunk/Pootle/projects.py: Fixed some docstring typos,
+ contributed by Nicolas François.
+
+2007-04-13 14:27 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/af/af: Delete duplicate Afrikaans (af)
+ tranlation
+
+2007-04-13 14:20 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/zh_TW: Copy the zh_TW translations
+ from the 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:20 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/zh_HK: Copy the zh_HK translations
+ from the 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:19 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/zh_CN: Copy the zh_CN translations
+ from the 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:19 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/pt_BR: Copy the pt_BR translations
+ from the 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:18 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/en_ZA: Copy the en_ZA translations
+ from the 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:18 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/fur: Copy the fur translations from
+ the 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:18 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/zu: Copy the zu translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:17 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/xh: Copy the xh translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:17 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/vi: Copy the vi translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:16 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ve: Copy the ve translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:16 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/uk: Copy the uk translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:16 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/tr: Copy the tr translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:15 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/sv: Copy the sv translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:15 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/st: Copy the st translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:14 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/sr: Copy the sr translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:14 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/sl: Copy the sl translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:14 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ru: Copy the ru translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:13 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ro: Copy the ro translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:13 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/pt: Copy the pt translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:13 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/pl: Copy the pl translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:12 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/pa: Copy the pa translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:12 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/nn: Copy the nn translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:11 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/nl: Copy the nl translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:11 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ne: Copy the ne translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:11 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/nb: Copy the nb translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:10 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/mt: Copy the mt translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:10 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ms: Copy the ms translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:10 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/mr: Copy the mr translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:09 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/lv: Copy the lv translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:09 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/lt: Copy the lt translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:09 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ku: Copy the ku translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:08 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ko: Copy the ko translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:08 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/km: Copy the km translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:07 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/kg: Copy the kg translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:07 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ka: Copy the ka translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:07 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ja: Copy the ja translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:06 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/it: Copy the it translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:06 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/is: Copy the is translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:06 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/hy: Copy the hy translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:05 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/hu: Copy the hu translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:05 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/hr: Copy the hr translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:05 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/hi: Copy the hi translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:04 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/he: Copy the he translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:04 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ha: Copy the ha translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:04 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/gl: Copy the gl translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:03 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/fr: Copy the fr translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:03 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/fi: Copy the fi translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:03 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/fa: Copy the fa translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:02 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/eu: Copy the eu translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:02 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/et: Copy the et translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:01 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/es: Copy the es translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:01 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/en: Copy the en translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:01 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/el: Copy the el translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:00 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/de: Copy the de translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:00 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/da: Copy the da translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 14:00 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/cs: Copy the cs translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 13:59 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ca: Copy the ca translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 13:59 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/bn: Copy the bn translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 13:59 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/bg: Copy the bg translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 13:58 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ar: Copy the ar translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 13:58 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/am: Copy the am translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 13:58 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ak: Copy the ak translations from the
+ 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 13:57 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/af/af: Copy the af translations from
+ the 0.10 branch (version 0.11) to preserve ancestry
+
+2007-04-13 13:50 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/af: Copy the af translation from the
+ 0.10 branch to preserve ancestry
+
+2007-04-13 13:35 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/af, src/trunk/Pootle/po/pootle/aka,
+ src/trunk/Pootle/po/pootle/am, src/trunk/Pootle/po/pootle/ar,
+ src/trunk/Pootle/po/pootle/bn, src/trunk/Pootle/po/pootle/ca,
+ src/trunk/Pootle/po/pootle/da, src/trunk/Pootle/po/pootle/de,
+ src/trunk/Pootle/po/pootle/el, src/trunk/Pootle/po/pootle/en,
+ src/trunk/Pootle/po/pootle/en_ZA, src/trunk/Pootle/po/pootle/es,
+ src/trunk/Pootle/po/pootle/et, src/trunk/Pootle/po/pootle/eu,
+ src/trunk/Pootle/po/pootle/fa, src/trunk/Pootle/po/pootle/fi,
+ src/trunk/Pootle/po/pootle/fr, src/trunk/Pootle/po/pootle/fur,
+ src/trunk/Pootle/po/pootle/gl, src/trunk/Pootle/po/pootle/he,
+ src/trunk/Pootle/po/pootle/hi, src/trunk/Pootle/po/pootle/hr,
+ src/trunk/Pootle/po/pootle/hu, src/trunk/Pootle/po/pootle/is,
+ src/trunk/Pootle/po/pootle/it, src/trunk/Pootle/po/pootle/ja,
+ src/trunk/Pootle/po/pootle/ka, src/trunk/Pootle/po/pootle/ko,
+ src/trunk/Pootle/po/pootle/kon, src/trunk/Pootle/po/pootle/ku,
+ src/trunk/Pootle/po/pootle/lt, src/trunk/Pootle/po/pootle/lv,
+ src/trunk/Pootle/po/pootle/mr, src/trunk/Pootle/po/pootle/ms,
+ src/trunk/Pootle/po/pootle/mt, src/trunk/Pootle/po/pootle/nb,
+ src/trunk/Pootle/po/pootle/ne, src/trunk/Pootle/po/pootle/nl,
+ src/trunk/Pootle/po/pootle/no, src/trunk/Pootle/po/pootle/pa,
+ src/trunk/Pootle/po/pootle/pl, src/trunk/Pootle/po/pootle/pt,
+ src/trunk/Pootle/po/pootle/ru, src/trunk/Pootle/po/pootle/sl,
+ src/trunk/Pootle/po/pootle/sr, src/trunk/Pootle/po/pootle/st,
+ src/trunk/Pootle/po/pootle/sv, src/trunk/Pootle/po/pootle/tr,
+ src/trunk/Pootle/po/pootle/uk, src/trunk/Pootle/po/pootle/ve,
+ src/trunk/Pootle/po/pootle/vi, src/trunk/Pootle/po/pootle/xh,
+ src/trunk/Pootle/po/pootle/zh_CN,
+ src/trunk/Pootle/po/pootle/zh_HK, src/trunk/Pootle/po/pootle/zu:
+ Remove old placeholder translations. Will update now with
+ migrated ones from 0.10 branch
+
+2007-04-13 10:25 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/templates/pootle.pot: New POT file for
+ upcoming 1.0 release
+
+2007-04-13 06:38 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Send the target language to the
+ POTeeChecker
+
+2007-04-12 12:25 friedelwolff
+
+ * src/trunk/Pootle/html/js/autoexpand.js: Only autoexpand after 500
+ miliseconds
+
+2007-04-12 09:56 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css: Make borders around focused
+ unit thicker
+
+2007-04-12 09:55 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css,
+ src/trunk/Pootle/templates/translatepage.html: Always make text
+ areas consume 100% of available width.
+
+2007-04-12 09:50 friedelwolff
+
+ * src/trunk/Pootle/html/js/autoexpand.js,
+ src/trunk/Pootle/templates/translatepage.html,
+ src/trunk/Pootle/translatepage.py, src/trunk/Pootle/users.py:
+ Remove option to set the width of the text area
+
+2007-04-12 07:56 friedelwolff
+
+ * src/trunk/Pootle/projects.py, src/trunk/Pootle/translatepage.py:
+ Add some l10n tips for translators
+
+2007-04-05 10:35 andreaspauley
+
+ * src/trunk/Pootle/__version__.py: Bumped version number of Pootle
+ to beta 2.
+
+2007-04-05 09:10 friedelwolff
+
+ * src/trunk/Pootle/templates/translatepage.html: Slight relayout of
+ translate table. This gives more space for units and restyles the
+ comment area, etc.
+
+2007-04-05 09:07 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css: Slight relayout of banner, and
+ the table in the translate page for more space. Improve styling
+ of comment area
+
+2007-04-04 15:08 friedelwolff
+
+ * src/trunk/Pootle/test_client.py: Mark test XLIFF units as
+ approved so that they are not seen as fuzzy
+
+2007-04-04 15:03 friedelwolff
+
+ * src/trunk/Pootle/users.py: Only use the session language as the
+ default language on the login page if it is neither English nor
+ the default server language (fix for bug 234)
+
+2007-04-03 15:08 andreaspauley
+
+ * src/trunk/Pootle/indexpage.py: Allow version control updates for
+ any valid project file extension, not just PO files.
+
+2007-04-03 14:58 andreaspauley
+
+ * src/trunk/Pootle/indexpage.py: Allow version control commits for
+ any valid project file extension, not just PO files.
+
+2007-04-03 09:35 andreaspauley
+
+ * src/trunk/Pootle/indexpage.py, src/trunk/Pootle/pootle.py,
+ src/trunk/Pootle/projects.py: Add conversion from xliff to po for
+ xliff-based projects.
+
+2007-04-02 10:00 andreaspauley
+
+ * src/trunk/Pootle/indexpage.py: Remove non-functional converters
+ for xliff files.
+
+2007-04-02 08:49 friedelwolff
+
+ * src/trunk/Pootle/CREDITS: Credit Miklos Vajna
+
+2007-04-02 08:48 friedelwolff
+
+ * src/trunk/Pootle/versioncontrol.py: [Contributed by Miklos Vajna]
+ Support darcs version control system
+
+2007-03-30 12:15 andreaspauley
+
+ * src/trunk/Pootle/pootle.py: Cater for xliff files, they don't
+ have an encoding attribute.
+
+2007-03-29 12:05 andreaspauley
+
+ * src/trunk/Pootle/pootlefile.py: Save the file after an alt-trans
+ suggestion has been deleted in an xliff file.
+
+2007-03-29 09:52 andreaspauley
+
+ * src/trunk/Pootle/pootlefile.py: Fix adding of suggestions in
+ xliff.
+
+2007-03-28 08:50 andreaspauley
+
+ * src/trunk/Pootle/adminpages.py: Fixed a bug where the
+ localfiletype was not set properly on creation of a new project.
+
+2007-03-26 14:49 friedelwolff
+
+ * src/trunk/Pootle/pagelayout.py: Ensure correct link depth and
+ trailing slash for XLIFF based projects
+
+2007-03-20 13:06 andreaspauley
+
+ * src/trunk/Pootle/adminpages.py: Let pootle rather display xliff
+ files with extension .xlf
+
+2007-03-16 15:47 friedelwolff
+
+ * src/trunk/Pootle/translatepage.py: Test for .xlf in dirfilter
+
+2007-03-16 15:27 friedelwolff
+
+ * src/trunk/Pootle/test_pootlefile.py: Don't remove the locking
+ file anymore now that we don't do locking
+
+2007-03-16 14:55 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Remove the locking code while it
+ affects performance and isn't complete anyway
+
+2007-03-16 14:51 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Postpone opening the lock file
+ and close it immediately after using. This fixes the error "too
+ many open files" that could appear in large projects
+
+2007-03-16 10:59 friedelwolff
+
+ * src/trunk/Pootle/translatepage.py: Fix a bug when searching for
+ non-existing text from a file listing.
+
+2007-03-13 15:13 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs: Surround example descriptions with
+ <span> with dir attribute to ensure good rendering with rtl
+ layout
+
+2007-02-27 09:10 andreaspauley
+
+ * src/trunk/Pootle/pootle.prefs: Display language names in English
+ by default.
+
+2007-02-23 10:56 andreaspauley
+
+ * src/trunk/pootlesetup.py: Update some distutils classifier values.
+
+2007-02-20 13:43 andreaspauley
+
+ * src/trunk/pootlesetup.py: Remove subversion directories from our
+ distribution.
+
+2007-02-07 14:49 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Fix the undefined variable
+ 'usesources'. Reported in bug 217.
+
+2007-02-07 13:25 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css: Only use unicode-bidi: embed
+ for the navigation bar. This improves rtl display with somewhat
+ untranslated Pootle interface
+
+2007-02-06 16:48 friedelwolff
+
+ * src/trunk/pootlesetup.py: Don't limit packaged PO files to
+ approved languages. Prune the correct (new) directories.
+
+2007-02-05 09:42 andreaspauley
+
+ * src/trunk/Pootle/pootlefile.py: Close files after opening them.
+
+2007-02-02 13:48 friedelwolff
+
+ * src/trunk/Pootle/statistics.py: Close the stats file after
+ reading
+
+2007-01-31 09:48 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs: Add the defaultright configuration
+ option with documentation
+
+2007-01-31 09:09 friedelwolff
+
+ * src/trunk/Pootle/templates/pootlepage.html: Don't use baseurl for
+ the documentation for the moment
+
+2007-01-26 15:17 friedelwolff
+
+ * src/trunk/Pootle/potree.py, src/trunk/Pootle/projects.py: Get the
+ default project rights from the preferences
+
+2007-01-26 12:40 friedelwolff
+
+ * src/trunk/Pootle/test_create.py: Fix corresponding to the rename
+ of session in commit of revision 4772
+
+2007-01-26 11:27 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Remove review right by default
+
+2007-01-26 10:15 friedelwolff
+
+ * src/trunk/Pootle/pootle.py: Rather send user to index page with
+ all the files on error
+
+2007-01-26 09:20 friedelwolff
+
+ * src/trunk/Pootle/pagelayout.py, src/trunk/Pootle/pootle.py,
+ src/trunk/Pootle/templates/about.html,
+ src/trunk/Pootle/templates/activate.html,
+ src/trunk/Pootle/templates/adminindex.html,
+ src/trunk/Pootle/templates/adminlanguages.html,
+ src/trunk/Pootle/templates/adminprojects.html,
+ src/trunk/Pootle/templates/adminusers.html,
+ src/trunk/Pootle/templates/error.html,
+ src/trunk/Pootle/templates/fileindex.html,
+ src/trunk/Pootle/templates/home.html,
+ src/trunk/Pootle/templates/index.html,
+ src/trunk/Pootle/templates/language.html,
+ src/trunk/Pootle/templates/languages.html,
+ src/trunk/Pootle/templates/login.html,
+ src/trunk/Pootle/templates/navbar.html,
+ src/trunk/Pootle/templates/options.html,
+ src/trunk/Pootle/templates/pootlepage.html,
+ src/trunk/Pootle/templates/project.html,
+ src/trunk/Pootle/templates/projectadmin.html,
+ src/trunk/Pootle/templates/projectlangadmin.html,
+ src/trunk/Pootle/templates/projects.html,
+ src/trunk/Pootle/templates/redirect.html,
+ src/trunk/Pootle/templates/register.html,
+ src/trunk/Pootle/templates/translatepage.html: [Contributed by
+ Lars Kruse] Use the configured baseurl. Fix for bug 113.
+
+2007-01-24 11:22 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css, src/trunk/Pootle/pagelayout.py:
+ Add two more languages as rtl (right-to-left): Aramaic (arc) and
+ Dhivehi (dv). Rewrite direction detection slightly to be more
+ robust
+
+2007-01-22 14:48 friedelwolff
+
+ * src/trunk/Pootle/translatepage.py: A fix for an encoding problem
+ with non-ascii usernames
+
+2007-01-22 12:05 andreaspauley
+
+ * src/trunk/Pootle/pootle.py: Used the warning method defined in
+ optrecurse, rather than using a print statement.
+
+2007-01-19 08:19 andreaspauley
+
+ * src/trunk/Pootle/pootlefile.py: Corrected a reference to
+ header_order, see bug 217.
+
+2007-01-18 06:56 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/ns: Remove old garbage translation
+ (ns)
+
+2007-01-17 15:46 friedelwolff
+
+ * src/trunk/Pootle/TODO: Remove some done items from the TODO list
+
+2007-01-17 13:32 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Ignore files in the goal that has
+ been removed from the project
+
+2007-01-17 07:43 friedelwolff
+
+ * src/trunk/Pootle/CREDITS: Credit Lars Kruse and Add Simos' name
+ in Greek script
+
+2007-01-17 07:34 friedelwolff
+
+ * src/trunk/Pootle/versioncontrol.py: [Contributed by Lars Kruse]
+ Also use shellescape for for cvsroot, revision and message
+
+2007-01-17 06:42 friedelwolff
+
+ * src/trunk/Pootle/pagelayout.py,
+ src/trunk/Pootle/translatepage.py: Fix the bug with links in the
+ navigation bar with certain directory tries. Fix for bug 218.
+
+2007-01-16 16:14 andreaspauley
+
+ * src/trunk/Pootle/pootle.py, src/trunk/Pootle/pootlefile.py,
+ src/trunk/Pootle/potree.py, src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/statistics.py,
+ src/trunk/Pootle/translatepage.py, src/trunk/Pootle/users.py:
+ General code improvements to appease the wrath of pylint. Bug
+ 217.
+
+2007-01-16 09:36 friedelwolff
+
+ * src/trunk/Pootle/potree.py: Make sure that the local file type is
+ nevery empty
+
+2007-01-12 11:57 friedelwolff
+
+ * src/trunk/Pootle/indexpage.py,
+ src/trunk/Pootle/templates/fileindex.html: Reword file
+ overwriting text and provide tooltips. Remove configurable input
+ type while template doesn't support it
+
+2007-01-12 08:31 friedelwolff
+
+ * src/trunk/Pootle/README: Update URL for wiki documentation
+
+2007-01-11 15:12 friedelwolff
+
+ * src/trunk/Pootle/pootle.py: Increase the version of the expected
+ build number of the toolkit. Add TODO
+
+2007-01-11 15:09 friedelwolff
+
+ * src/trunk/Pootle/__version__.py: Up the version to 1.0beta
+
+2007-01-11 14:14 friedelwolff
+
+ * src/trunk/Pootle/indexpage.py, src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/templates/fileindex.html: Impliment the
+ 'overwrite' right that allows the user to overwrite a file,
+ otherwise not. Only show the UI options if the right is present
+
+2007-01-11 14:10 friedelwolff
+
+ * src/trunk/Pootle/test_client.py: Don't pass unnecessary
+ 'dooverwrite' parameter in tests. Test more carefully for
+ successful overwrite.
+
+2007-01-11 12:33 friedelwolff
+
+ * src/trunk/Pootle/test_client.py: Pass the permissions of testuser
+ to setup_testproject now that translate is not allowed by default
+
+2007-01-10 10:56 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Disable translate right by default
+
+2007-01-10 10:55 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Enable suggest right by default
+
+2007-01-08 12:03 friedelwolff
+
+ * src/trunk/Pootle/templates/fileindex.html: Do a slight relayout
+ of the file upload form
+
+2007-01-08 11:59 friedelwolff
+
+ * src/trunk/Pootle/indexpage.py: Use question mark with question in
+ translatable text
+
+2007-01-08 11:44 friedelwolff
+
+ * src/trunk/Pootle/users.py: Rewrite error handling slightly
+ simpler
+
+2007-01-08 11:21 friedelwolff
+
+ * src/trunk/Pootle/templates/fileindex.html: Fix problem where we
+ are unable to assign a user to a goal because of naming mismatch
+
+2007-01-08 10:41 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Fix typo in comment
+
+2007-01-08 07:47 friedelwolff
+
+ * src/trunk/Pootle/users.py: Don't make 'templates' a possible
+ interface language
+
+2007-01-04 12:40 friedelwolff
+
+ * src/trunk/Pootle/users.py: Indicate message bug in comment
+
+2007-01-04 11:07 andreaspauley
+
+ * src/trunk/Pootle/html/pootle.css,
+ src/trunk/Pootle/templates/translatepage.html,
+ src/trunk/Pootle/translatepage.py: Display the message context,
+ if available.
+
+2006-12-28 14:45 friedelwolff
+
+ * src/trunk/Pootle/translatepage.py: Rewrite fuzzy and comment form
+ handling to ensure that we will be able to handle multiple
+ submittions.
+
+2006-12-28 08:41 friedelwolff
+
+ * src/trunk/Pootle/templates/translatepage.html: Keep displaying
+ the search text in the search form. Fix for bug 195
+
+2006-12-27 11:49 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py, src/trunk/Pootle/projects.py:
+ Allow XLIFF suggestions using alt-trans tags. Move some code from
+ projects.py to pootlefile.py, etc.
+
+2006-12-22 07:25 friedelwolff
+
+ * src/trunk/Pootle/users.py: Recheck the session status after
+ changing the interface language to ensure that the status message
+ is correctly traslated in the new locale (fix for bug 197)
+
+2006-11-28 09:01 varsist
+
+ * src/trunk/Pootle/indexpage.py, src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/templates/fileindex.html,
+ src/trunk/Pootle/test_client.py: Project fileindex webpage now
+ supports Overwrite abilities for files.
+
+2006-11-24 07:31 andreaspauley
+
+ * src/trunk/Pootle/pootlefile.py, src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/test_pootlefile.py,
+ src/trunk/Pootle/translatepage.py: Updated Pootle to work with
+ the updated pogrep, and changed a lot of po-specific variable
+ names.
+
+2006-11-16 14:21 andreaspauley
+
+ * src/trunk/Pootle/test_pootlefile.py: Wrote a test for our
+ updateunit() method.
+
+2006-11-16 10:00 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Use a local variable for
+ innerclass (fixes some unit tests)
+
+2006-11-14 16:28 andreaspauley
+
+ * src/trunk/Pootle/test_client.py: Wrote 2 new tests for the
+ submission of plural translations. Found a possible bug when
+ submitting a plural translation to a language that doesn't
+ support plurals, eg. Japanese.
+
+2006-11-14 13:48 andreaspauley
+
+ * src/trunk/Pootle/translatepage.py: Fixed a small bug where the
+ translate_comments url var didn't get popped in all instances.
+
+2006-11-14 13:47 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: provide .updateheaderplural() and
+ .updateheader() functions to delegate if it exists in the
+ innerobj
+
+2006-11-14 13:44 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Always use self.innerclass
+ instead of global innerclass
+
+2006-11-14 06:38 andreaspauley
+
+ * src/trunk/Pootle/templates/translatepage.html: Fixed a bug where
+ the location comments didn't display if a translation unit didn't
+ have developer comments as well.
+
+2006-11-13 12:09 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Add pootlefile.getheaderplural()
+ that delegates to the innerobj if available
+
+2006-11-10 15:14 andreaspauley
+
+ * src/trunk/Pootle/html/pootle.css, src/trunk/Pootle/pootlefile.py,
+ src/trunk/Pootle/templates/translatepage.html,
+ src/trunk/Pootle/test_client.py,
+ src/trunk/Pootle/translatepage.py: Added the ability to edit
+ comments. Moved all comments to a separate row in edit mode.
+
+2006-11-08 15:03 dwaynebailey
+
+ * src/trunk/Pootle/statistics.py: First step to put all meta data
+ into a dict and remove specific special cases.
+
+2006-11-07 15:53 friedelwolff
+
+ * src/trunk/Pootle/test_pootlefile.py: Remove pootleunit tests now
+ that we don't have pootleunit anymore
+
+2006-11-07 15:50 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Various fixes to make all the
+ unit tests work.\n+ classmethod parsefile(), don't inherit from
+ base.TranslationStore
+
+2006-11-06 15:35 dwaynebailey
+
+ * src/trunk/Pootle/statistics.py: s/poel/unit/ for consistency
+
+2006-11-06 15:28 dwaynebailey
+
+ * src/trunk/Pootle/statistics.py: s/filter/check/ for clarity
+
+2006-11-06 13:38 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Do away with pootleunit and all
+ of its users
+
+2006-11-05 19:13 dwaynebailey
+
+ * src/trunk/Pootle/statistics.py: Remove some more po'ness
+
+2006-11-05 10:47 dwaynebailey
+
+ * src/trunk/Pootle/statistics.py,
+ src/trunk/Pootle/test_statistics.py: Change remove() to
+ hasparent() and adjust tests.
+
+2006-11-03 15:16 andreaspauley
+
+ * src/trunk/Pootle/test_client.py: Removed the mixture of spaces
+ and tabs, changed indentation to 4 spaces.
+
+2006-11-03 14:39 friedelwolff
+
+ * src/trunk/Pootle/translatepage.py: Correct pofile parameter that
+ caused problems with navigation links
+
+2006-11-03 14:19 andreaspauley
+
+ * src/trunk/Pootle/test_client.py: Added
+ test_navigation_url_parameters, tests that the navigation urls
+ (next/end etc) has the necessary parameters
+
+2006-11-03 14:19 friedelwolff
+
+ * src/trunk/Pootle/CREDITS: Credit Andreas and Capel
+
+2006-11-03 06:54 dwaynebailey
+
+ * src/trunk/Pootle/projects.py, src/trunk/Pootle/statistics.py:
+ Remove references to msgstr and msgid and replace with source and
+ target.
+ Leave 'readstats' with ability to read {msgstr,msgid}wordcounts
+ so that old stats files can be read (they will be updated to use
+ {source,target}wordcounts when they are saved)
+
+2006-11-03 06:11 dwaynebailey
+
+ * src/trunk/Pootle/statistics.py,
+ src/trunk/Pootle/test_statistics.py: Add a remove function that
+ checks that the stats file is associated with some translatable
+ file and removes
+ the stats file if it is no longer associated.
+
+2006-11-02 15:19 dwaynebailey
+
+ * src/trunk/Pootle/statistics.py,
+ src/trunk/Pootle/test_statistics.py: Add a StatsFile class for
+ creating, reading and writing the stats file
+ Add initial test file
+
+2006-11-02 14:21 dwaynebailey
+
+ * src/trunk/Pootle/pootlefile.py, src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/statistics.py: Place pootlestatistics class in a
+ seperate file and adjust all references. Making ready to
+ break up pootlestatistics so that we can migrate some of the
+ functionality to the toolkit.
+
+2006-11-02 13:21 andreaspauley
+
+ * src/trunk/Pootle/conflict2suggest.py,
+ src/trunk/Pootle/pootlefile.py, src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/translatepage.py: Renamed setmsgstr() to
+ updateunit() and replaced the "target" parameter with a dict that
+ can contain more than just the target, eg. "fuzzy"
+
+2006-11-01 10:11 friedelwolff
+
+ * src/trunk/Pootle/templates/home.html: Remove trailing slash (/)
+ in admin url
+
+2006-10-31 07:57 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Rewrite statement with
+ .isblankmsgstr() to rather use new .gettargetlen()
+
+2006-10-31 05:53 friedelwolff
+
+ * src/trunk/Pootle/potree.py: Use .po as default file type if the
+ project doesn't have one specified
+
+2006-10-30 08:47 varsist
+
+ * src/trunk/Pootle/projects.py: Variable name chane, left one
+ variable name behind. Fixed
+
+2006-10-30 08:37 varsist
+
+ * src/trunk/Pootle/projects.py: Comment/Documentation change for
+
+2006-10-30 08:34 varsist
+
+ * src/trunk/Pootle/test_client.py, src/trunk/Pootle/test_create.py:
+ Adapted test cases for new project file type attribute
+
+2006-10-30 08:33 varsist
+
+ * src/trunk/Pootle/adminpages.py, src/trunk/Pootle/benchmark.py,
+ src/trunk/Pootle/potree.py: Added new project attribute allowing
+ specific file types (e.g po/xliff) for individual projects,
+ accessable via the Web interface
+
+2006-10-30 08:27 varsist
+
+ * src/trunk/Pootle/indexpage.py, src/trunk/Pootle/projects.py:
+ Removed reliance on po file types
+
+2006-10-30 08:26 varsist
+
+ * src/trunk/Pootle/pootle.prefs: Update of Pootle Preference file
+ to support new local file type attribute
+
+2006-10-25 16:19 andreaspauley
+
+ * src/trunk/Pootle/pootlefile.py, src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/templates/translatepage.html,
+ src/trunk/Pootle/test_client.py,
+ src/trunk/Pootle/translatepage.py: Add fuzzy checkbox to the
+ translate page, bug 188.
+
+2006-10-20 14:21 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Remove unused functions
+ .getitemclasses() and .unquotefrompo()
+
+2006-10-20 09:59 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Addapt ungettext() to use new base
+ class methods instead of unquotefrompo
+
+2006-10-19 15:28 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Commeniting .getitemclasses() in
+ preperation for removal - no users of this function
+
+2006-10-19 15:27 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Remove reduntant assign
+
+2006-10-19 13:57 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Fix typo
+
+2006-10-19 13:36 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Cosmetic reordering of instructions
+
+2006-10-19 13:34 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Use correct filename when uploading
+ new file from template. This fixes the bug with projects with a
+ directory hierarchy in the temlates directory
+
+2006-10-18 15:25 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs: Update plural equation for Akan
+ from information from paa kwesi imbeah
+
+2006-10-16 07:24 varsist
+
+ * src/trunk/Pootle/pootlefile.py,
+ src/trunk/Pootle/test_pootlefile.py: filename and extension API
+ now avaliable via getext() and getfilename(). Added cleanup for
+ left over files from pootlefile tests
+
+2006-10-13 22:15 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Filter interested users by language
+ only, not by project as well.
+
+2006-10-13 15:26 friedelwolff
+
+ * src/trunk/Pootle/adminpages.py: Make sure that we have the
+ information of all relevant users, even if they don't have the
+ language selected yet or anymore
+
+2006-10-13 07:20 friedelwolff
+
+ * src/trunk/Pootle/test_client.py: Adapt expected hyperlink to
+ account for lang attribute that is now inserted
+
+2006-10-12 23:27 friedelwolff
+
+ * src/trunk/Pootle/adminpages.py, src/trunk/Pootle/indexpage.py,
+ src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/templates/fileindex.html,
+ src/trunk/Pootle/templates/projectlangadmin.html: Display more
+ friendly usernames for selection, displaying the full name where
+ available. Only list users that registered for the specific
+ project/language combination.
+
+2006-10-12 21:30 friedelwolff
+
+ * src/trunk/Pootle/potree.py: Use new localelanguage() function
+ when entering languages
+
+2006-10-12 21:23 friedelwolff
+
+ * src/trunk/Pootle/indexpage.py,
+ src/trunk/Pootle/templates/home.html: Show administrate link on
+ home page next to language if the user is a project admin
+
+2006-10-12 15:36 friedelwolff
+
+ * src/trunk/Pootle/pootle.py: Convert the browser's Accept-Lang
+ when looking for the preferred translation
+
+2006-10-12 15:35 friedelwolff
+
+ * src/trunk/Pootle/pagelayout.py: Add function localelanguage() to
+ reformat a web style (pt-br) language code to a locale style
+ (pt_BR) style code
+
+2006-10-12 15:23 friedelwolff
+
+ * src/trunk/Pootle/pootle.py: Don't complain if no English
+ translation is found
+
+2006-10-12 14:40 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Use the unit's own
+ .istranslated(). Adjust comment
+
+2006-10-12 14:32 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Use a factory to construct the
+ storage classes for the __innerobj__, pending files, and tm
+ files. Move classify function from pootleunit, and rename a few
+ things (mostly pofile -> file)
+
+2006-10-12 14:27 friedelwolff
+
+ * src/trunk/Pootle/test_pootlefile.py: Move test_classify to make
+ upcoming structure easier to test
+
+2006-10-12 14:03 friedelwolff
+
+ * src/trunk/Pootle/test_client.py: Correct the expected hyperlinks.
+ Since we now include a lang attribute that kid puts before href,
+ this broke the tests
+
+2006-10-12 07:33 friedelwolff
+
+ * src/trunk/Pootle/templates/pootlepage.html: Add dir and lang
+ attributes to the about div in the footer
+
+2006-10-12 07:14 friedelwolff
+
+ * src/trunk/Pootle/conf.py, src/trunk/Pootle/indexpage.py,
+ src/trunk/Pootle/pagelayout.py, src/trunk/Pootle/pootle.py,
+ src/trunk/Pootle/storage_client.py, src/trunk/Pootle/users.py,
+ src/trunk/Pootle/utils.py: Revert 4019:4021 by Gasper since it is
+ not yet working perfectly. It will probably be remerged in
+ smaller chunks.
+
+2006-10-11 16:26 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css: Several display updates for
+ specific languages, remove most places where line-height is
+ altered, don't use percentage increases for fonts, etc.
+
+2006-10-11 16:24 friedelwolff
+
+ * src/trunk/Pootle/templates/translatepage.html: Insert space
+ between clickable special characters
+
+2006-10-11 16:21 friedelwolff
+
+ * src/trunk/Pootle/templates/navbar.html: Display filenames as
+ normal links (not H3) and style as lang=en dir=ltr
+
+2006-10-11 13:08 zejn
+
+ * src/trunk/Pootle/indexpage.py: Fixed a typo.
+
+2006-10-11 12:56 zejn
+
+ * src/trunk/Pootle/conf.py, src/trunk/Pootle/indexpage.py,
+ src/trunk/Pootle/pagelayout.py, src/trunk/Pootle/pootle.py,
+ src/trunk/Pootle/storage_client.py, src/trunk/Pootle/users.py,
+ src/trunk/Pootle/utils.py: Moving methods of PootlePage
+ subclasses out of indexpage, pagelayout and users. This
+ will allow for easier migration. All still works as before.
+ conf.py contains global pootle variables: prefs and potree.
+ storage_client has all the functions that were returning a list
+ of projects, languages...
+ utils.py has universally usable functions.
+
+2006-10-11 12:45 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs: Add configurations for some
+ missing languages
+
+2006-10-11 10:44 friedelwolff
+
+ * src/trunk/Pootle/users.py: Properly deal with interface language
+ set at login and/or preferences
+
+2006-10-10 10:02 friedelwolff
+
+ * src/trunk/Pootle/translatepage.py: Always provide pofilename so
+ that navigation works even when using project search or translate
+ functions
+
+2006-10-10 07:32 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py, src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/test_pootlefile.py: Complete the merge of the
+ refactorings from the Pootle locking branch. Initial locking work
+ also ported.
+
+2006-10-09 08:36 zejn
+
+ * src/trunk/Pootle/html/selenium, src/trunk/Pootle/html/tests,
+ src/trunk/Pootle/html/tests/LoginTest.html,
+ src/trunk/Pootle/html/tests/ProjectPageTest.html,
+ src/trunk/Pootle/html/tests/TestSuite.html,
+ src/trunk/Pootle/pootle.py: Removing selenium from svn
+ repository, it's far too big. I've rather added notes on
+ installation.
+
+2006-10-09 08:03 zejn
+
+ * src/trunk/Pootle/html/selenium/README.txt: Adding a note in
+ readme file explaining how to run tests.
+
+2006-10-09 07:57 zejn
+
+ * src/trunk/Pootle/html/selenium,
+ src/trunk/Pootle/html/selenium/InjectedSeleneseRunner.html,
+ src/trunk/Pootle/html/selenium/SeleneseRunner.html,
+ src/trunk/Pootle/html/selenium/SeleniumLog.html,
+ src/trunk/Pootle/html/selenium/TestPrompt.html,
+ src/trunk/Pootle/html/selenium/TestRunner-splash.html,
+ src/trunk/Pootle/html/selenium/TestRunner.hta,
+ src/trunk/Pootle/html/selenium/TestRunner.html,
+ src/trunk/Pootle/html/selenium/domviewer,
+ src/trunk/Pootle/html/selenium/domviewer/butmin.gif,
+ src/trunk/Pootle/html/selenium/domviewer/butplus.gif,
+ src/trunk/Pootle/html/selenium/domviewer/domviewer.css,
+ src/trunk/Pootle/html/selenium/domviewer/domviewer.html,
+ src/trunk/Pootle/html/selenium/domviewer/selenium-domviewer.js,
+ src/trunk/Pootle/html/selenium/iedoc-core.xml,
+ src/trunk/Pootle/html/selenium/iedoc.xml,
+ src/trunk/Pootle/html/selenium/lib,
+ src/trunk/Pootle/html/selenium/lib/cssQuery,
+ src/trunk/Pootle/html/selenium/lib/cssQuery/cssQuery-p.js,
+ src/trunk/Pootle/html/selenium/lib/cssQuery/src,
+ src/trunk/Pootle/html/selenium/lib/cssQuery/src/cssQuery-level2.js,
+ src/trunk/Pootle/html/selenium/lib/cssQuery/src/cssQuery-level3.js,
+ src/trunk/Pootle/html/selenium/lib/cssQuery/src/cssQuery-standard.js,
+ src/trunk/Pootle/html/selenium/lib/cssQuery/src/cssQuery.js,
+ src/trunk/Pootle/html/selenium/lib/prototype.js,
+ src/trunk/Pootle/html/selenium/lib/scriptaculous,
+ src/trunk/Pootle/html/selenium/lib/scriptaculous/builder.js,
+ src/trunk/Pootle/html/selenium/lib/scriptaculous/controls.js,
+ src/trunk/Pootle/html/selenium/lib/scriptaculous/dragdrop.js,
+ src/trunk/Pootle/html/selenium/lib/scriptaculous/effects.js,
+ src/trunk/Pootle/html/selenium/lib/scriptaculous/scriptaculous.js,
+ src/trunk/Pootle/html/selenium/lib/scriptaculous/slider.js,
+ src/trunk/Pootle/html/selenium/lib/scriptaculous/unittest.js,
+ src/trunk/Pootle/html/selenium/scripts,
+ src/trunk/Pootle/html/selenium/scripts/find_matching_child.js,
+ src/trunk/Pootle/html/selenium/scripts/htmlutils.js,
+ src/trunk/Pootle/html/selenium/scripts/injection.html,
+ src/trunk/Pootle/html/selenium/scripts/injection_iframe.html,
+ src/trunk/Pootle/html/selenium/scripts/js2html.js,
+ src/trunk/Pootle/html/selenium/scripts/narcissus-defs.js,
+ src/trunk/Pootle/html/selenium/scripts/narcissus-exec.js,
+ src/trunk/Pootle/html/selenium/scripts/narcissus-parse.js,
+ src/trunk/Pootle/html/selenium/scripts/se2html.js,
+ src/trunk/Pootle/html/selenium/scripts/selenium-api.js,
+ src/trunk/Pootle/html/selenium/scripts/selenium-browserbot.js,
+ src/trunk/Pootle/html/selenium/scripts/selenium-browserdetect.js,
+ src/trunk/Pootle/html/selenium/scripts/selenium-commandhandlers.js,
+ src/trunk/Pootle/html/selenium/scripts/selenium-executionloop.js,
+ src/trunk/Pootle/html/selenium/scripts/selenium-logging.js,
+ src/trunk/Pootle/html/selenium/scripts/selenium-seleneserunner.js,
+ src/trunk/Pootle/html/selenium/scripts/selenium-testrunner.js,
+ src/trunk/Pootle/html/selenium/scripts/selenium-version.js,
+ src/trunk/Pootle/html/selenium/scripts/user-extensions.js.sample,
+ src/trunk/Pootle/html/selenium/scripts/xmlextras.js,
+ src/trunk/Pootle/html/selenium/selenium-logo.png,
+ src/trunk/Pootle/html/selenium/selenium.css,
+ src/trunk/Pootle/html/selenium/tests,
+ src/trunk/Pootle/html/selenium/tests/LoginTest.html,
+ src/trunk/Pootle/html/selenium/tests/ProjectPageTest.html,
+ src/trunk/Pootle/html/selenium/tests/TestSuite.html,
+ src/trunk/Pootle/html/selenium/xpath,
+ src/trunk/Pootle/html/selenium/xpath/dom.js,
+ src/trunk/Pootle/html/selenium/xpath/misc.js,
+ src/trunk/Pootle/html/selenium/xpath/xpath.js,
+ src/trunk/Pootle/pootle.py: Adding selenium for testing portal
+ from browser.
+
+2006-10-06 11:50 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Move some more pootlefile
+ functions around. All changes are purely cosmetic to make review
+ of upcomming merging from pootle-locking branch easier
+
+2006-10-06 11:29 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Revert accidental commit as part
+ of revision on 15 June 2006 - pootlefile in dummy project has no
+ checker
+
+2006-10-06 09:19 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Move some pootlefile functions
+ around. All changes are purely cosmetic to make review of
+ upcomming merging from pootle-locking branch easier
+
+2006-10-06 08:45 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Remove some methods from
+ pootleunit that are duplicated from Wrapper. Add methods in
+ pootleunit that need to be overridden
+
+2006-10-06 08:12 friedelwolff
+
+ * src/trunk/Pootle/test_client.py: Give adminrights in
+ test_upload_xliff_over_file. Make xliff more readable
+
+2006-10-05 06:52 friedelwolff
+
+ * src/trunk/Pootle/users.py: Correctly display exceptions in unit
+ tests (we don't have a server.options variable)
+
+2006-10-04 13:46 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Override __str__ for pootleunit
+ to call __str__ for __innerobj__
+
+2006-10-04 10:08 friedelwolff
+
+ * src/trunk/Pootle/__version__.py: Up to mystical version 0.10.90
+ (just for current HEAD)
+
+2006-10-03 12:54 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Merge Wrapper class from
+ pootle-locking branch and implement for pootleunit with some
+ differences from branch (pootleunit not a base.TranslationUnit)
+
+2006-10-03 07:01 friedelwolff
+
+ * src/trunk/Pootle/benchmark.py,
+ src/trunk/Pootle/conflict2suggest.py,
+ src/trunk/Pootle/pootlefile.py, src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/test_pootlefile.py: Renaming for consistency:
+ element -> unit. First step in preparation of merging in the
+ pootle-locking branch
+
+2006-09-29 07:13 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Rather use pocount.wordcount to
+ avoid duplication
+
+2006-09-22 10:02 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py: Adapt to refactoring that
+ happened with poheaders in toolkit
+
+2006-09-22 06:57 friedelwolff
+
+ * src/trunk/Pootle/users.py: Only set the UI language from
+ preference if it is not yet set from the login
+
+2006-09-22 06:51 friedelwolff
+
+ * src/trunk/Pootle/CREDITS: Credit Gasper Zeijn
+
+2006-09-22 06:48 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css, src/trunk/Pootle/indexpage.py,
+ src/trunk/Pootle/pagelayout.py,
+ src/trunk/Pootle/templates/activate.html,
+ src/trunk/Pootle/templates/adminindex.html,
+ src/trunk/Pootle/templates/adminlanguages.html,
+ src/trunk/Pootle/templates/adminprojects.html,
+ src/trunk/Pootle/templates/adminusers.html,
+ src/trunk/Pootle/templates/error.html,
+ src/trunk/Pootle/templates/fileindex.html,
+ src/trunk/Pootle/templates/home.html,
+ src/trunk/Pootle/templates/index.html,
+ src/trunk/Pootle/templates/language.html,
+ src/trunk/Pootle/templates/languages.html,
+ src/trunk/Pootle/templates/login.html,
+ src/trunk/Pootle/templates/options.html,
+ src/trunk/Pootle/templates/pootlepage.html,
+ src/trunk/Pootle/templates/project.html,
+ src/trunk/Pootle/templates/projectadmin.html,
+ src/trunk/Pootle/templates/projectlangadmin.html,
+ src/trunk/Pootle/templates/projects.html,
+ src/trunk/Pootle/templates/redirect.html,
+ src/trunk/Pootle/templates/register.html,
+ src/trunk/Pootle/templates/translatepage.html: Move 'About this
+ Pootle server' to the footer on each page'. Contributed by Gasper
+ Zejn.
+
+2006-09-20 15:22 friedelwolff
+
+ * src/trunk/Pootle/potree.py: Fix encoding issue with special
+ character administration
+
+2006-09-18 10:23 varsist
+
+ * src/trunk/Pootle/test_pootlefile.py: removal of redundant
+ unquoting test method
+
+2006-09-18 10:22 varsist
+
+ * src/trunk/Pootle/pootlefile.py: removal of redundant unquotedmsg
+ methods and utilization of source and target directly
+
+2006-09-18 10:19 varsist
+
+ * src/trunk/Pootle/projects.py, src/trunk/Pootle/translatepage.py:
+ implementation of direct source and target
+
+2006-09-18 09:29 friedelwolff
+
+ * src/trunk/Pootle/users.py: Handle language preference better
+ across server restarts. Allow changing interface language
+ immediately at user options
+
+2006-09-18 06:20 friedelwolff
+
+ * src/trunk/Pootle/templates/translatepage.html: Convert tab to
+ space
+
+2006-09-18 06:11 friedelwolff
+
+ * src/trunk/Pootle/html/js/autoexpand.js,
+ src/trunk/Pootle/templates/translatepage.html: Make special
+ characters clickable [Contributed by Djihed Afifi]
+
+2006-09-15 23:53 friedelwolff
+
+ * src/trunk/Pootle/users.py: Minor improvements to new translatable
+ messages. Unify existing message with the better worded new
+ message.
+
+2006-09-15 22:44 friedelwolff
+
+ * src/trunk/Pootle/pootle.py, src/trunk/Pootle/users.py: Allow
+ users to change their password. Factor out some error handling
+ and display error messages [Contributed by Charl van Niekerk]
+
+2006-09-15 22:42 friedelwolff
+
+ * src/trunk/Pootle/templates/options.html: Support messages in
+ user's option page
+
+2006-09-15 06:45 varsist
+
+ * src/trunk/Pootle/conflict2suggest.py: removed unquotedmsgstr/id
+ dependency and added plural checking on strings
+
+2006-09-14 15:25 friedelwolff
+
+ * src/trunk/Pootle/pagelayout.py,
+ src/trunk/Pootle/translatepage.py: Convert lang directives from
+ locale style (pt_BR) to web style (pt-BR) when passing to
+ templates
+
+2006-09-14 12:17 friedelwolff
+
+ * src/trunk/Pootle/templates/options.html,
+ src/trunk/Pootle/users.py: Enable functionality for users to
+ change their passwords [Contributed by Charl van Niekerk]
+
+2006-09-12 10:56 friedelwolff
+
+ * src/trunk/Pootle/conflict2suggest.py: Split strings on newline
+ not literal '\n'
+
+2006-09-12 08:40 friedelwolff
+
+ * src/trunk/Pootle/CREDITS: Credit Djihed Afifi
+
+2006-09-12 08:39 friedelwolff
+
+ * src/trunk/Pootle/html/js/autoexpand.js,
+ src/trunk/Pootle/templates/translatepage.html,
+ src/trunk/Pootle/translatepage.py: Enable copying text for plural
+ messages too. Contributed by Djihed Afifi
+
+2006-09-09 08:06 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs, src/trunk/Pootle/tools/updatetm,
+ src/trunk/Pootle/users.prefs: [Forward port from
+ wordforge-0-10-branch] Import minor fixes (mainly typo's) from
+ debian pootle package (Nicolas François)
+
+2006-09-08 10:09 friedelwolff
+
+ * src/trunk/Pootle/tools/updatetm.py: Remove svn:executable
+ property
+
+2006-09-07 13:38 friedelwolff
+
+ * src/trunk/Pootle/CREDITS: Add Clytie and Charl
+
+2006-09-07 09:41 friedelwolff
+
+ * src/trunk/Pootle/templates/adminlanguages.html,
+ src/trunk/Pootle/templates/adminprojects.html,
+ src/trunk/Pootle/templates/adminusers.html: Use new fullwidth
+ classes for some pages. Remove temporary hack
+
+2006-09-07 09:40 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css: Add new CSS classes for pages
+ that should use the full width of the screen instead of just the
+ normal contents area
+
+2006-09-07 09:37 friedelwolff
+
+ * src/trunk/Pootle/TODO: Update by removing some items that are
+ already done
+
+2006-09-05 06:15 friedelwolff
+
+ * src/trunk/Pootle/templates/register.html,
+ src/trunk/Pootle/users.py: [Contributed by Charl van Niekerk]
+ Implement password confirmation on registration page
+
+2006-09-04 09:23 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs: Improve configuration
+ documentation, with examples and explanations of how descriptions
+ can now contain markup
+
+2006-09-04 09:09 friedelwolff
+
+ * src/trunk/Pootle/indexpage.py,
+ src/trunk/Pootle/templates/language.html,
+ src/trunk/Pootle/templates/project.html: Display descriptions for
+ the project on the project page and shortened forms in tooltips
+ elsewhere
+
+2006-09-04 09:05 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css: Also overflow display of
+ comments and locations that are too long
+
+2006-09-01 10:25 friedelwolff
+
+ * src/trunk/Pootle/indexpage.py,
+ src/trunk/Pootle/templates/index.html: Display site description
+ on front page
+
+2006-09-01 09:57 friedelwolff
+
+ * src/trunk/Pootle/indexpage.py, src/trunk/Pootle/pootle.prefs,
+ src/trunk/Pootle/templates/about.html,
+ src/trunk/Pootle/templates/index.html: Support markup in site
+ description. Strip markup for meta description tag. Document with
+ example
+
+2006-08-31 13:13 friedelwolff
+
+ * src/trunk/Pootle/pootlefile.py, src/trunk/Pootle/projects.py: Use
+ unicode goalnames and encode as necessary. Fixes problem with
+ assigns and non-ascii goalnames
+
+2006-08-30 09:26 friedelwolff
+
+ * src/trunk/Pootle/translatepage.py: Use the correct icon
+ (file/edit) on the translate page
+
+2006-08-30 09:25 friedelwolff
+
+ * src/trunk/Pootle/translatepage.py: Display navigation links in
+ edit mode too
+
+2006-08-30 08:08 friedelwolff
+
+ * src/trunk/Pootle/adminpages.py, src/trunk/Pootle/indexpage.py,
+ src/trunk/Pootle/pagelayout.py, src/trunk/Pootle/projects.py,
+ src/trunk/Pootle/translatepage.py: Improve localize calls to have
+ one on a line in most cases. Add more l10n comments
+
+2006-08-30 07:45 friedelwolff
+
+ * src/trunk/Pootle/tools/updatetm.py: Fix bug with format change in
+ notes
+
+2006-08-29 08:22 friedelwolff
+
+ * src/trunk/Pootle/html/images/up.png: Commit images from CVS where
+ the svn properties got mixed up
+
+2006-08-29 08:00 friedelwolff
+
+ * src/trunk/Pootle/html/images/down.png,
+ src/trunk/Pootle/html/images/none.png: Commit images from CVS
+ where the svn properties got mixed up
+
+2006-08-29 07:37 friedelwolff
+
+ * src/trunk/Pootle/html/images/down.png,
+ src/trunk/Pootle/html/images/none.png,
+ src/trunk/Pootle/html/images/pootle.svg: Remove invalid svn
+ properties and add mime-type. (hopefully) fixes unusable images
+ in Pootle
+
+2006-08-28 11:43 friedelwolff
+
+ * src/trunk/pootlesetup.py: Also package subpackages (currently
+ only tools)
+
+2006-08-28 09:57 friedelwolff
+
+ * src/trunk/Pootle/users.prefs: Fix typo
+
+2006-08-24 21:16 friedelwolff
+
+ * src/trunk/pootlesetup.py: Update list of languages for install
+
+2006-08-24 21:11 friedelwolff
+
+ * src/trunk/pootlesetup.py: prune editor and lingua directories
+ from the build
+
+2006-08-24 15:03 friedelwolff
+
+ * src/trunk/Pootle/translatepage.py: Remove some unnecessary
+ template variables, but ensure we always pass rows and cols for
+ the textarea
+
+2006-08-24 15:01 friedelwolff
+
+ * src/trunk/Pootle/translatepage.py: Don't retrieve tm and
+ terminology unnecessarily, but show it always if one item is in
+ view
+
+2006-08-24 13:23 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs: Update default preferences
+ according to current translation status (75% +)
+
+2006-08-24 13:17 friedelwolff
+
+ * src/trunk/Pootle/po/pootle/af/pootle.po,
+ src/trunk/Pootle/po/pootle/ar/pootle.po,
+ src/trunk/Pootle/po/pootle/ca/pootle.po,
+ src/trunk/Pootle/po/pootle/de/pootle.po,
+ src/trunk/Pootle/po/pootle/eu/pootle.po,
+ src/trunk/Pootle/po/pootle/fr/pootle.po,
+ src/trunk/Pootle/po/pootle/gl/pootle.po,
+ src/trunk/Pootle/po/pootle/it/pootle.po,
+ src/trunk/Pootle/po/pootle/ja/pootle.po,
+ src/trunk/Pootle/po/pootle/mt/pootle.po,
+ src/trunk/Pootle/po/pootle/pt/pootle.po,
+ src/trunk/Pootle/po/pootle/sr/pootle.po,
+ src/trunk/Pootle/po/pootle/sv/pootle.po,
+ src/trunk/Pootle/po/pootle/zh_CN/pootle.po,
+ src/trunk/Pootle/po/pootle/zh_HK/pootle.po: Translation updates
+ from pootle.wordforge.org: mainly ar, de, sr and incorrect type
+ comments (fixed manually)
+
+2006-08-24 09:33 friedelwolff
+
+ * src/trunk/Pootle/projects.py: Remove TODO that is already done
+
+2006-08-23 13:02 friedelwolff
+
+ * src/trunk/pootlesetup.py: add tools/updatetm as a script to be
+ installed
+
+2006-08-23 11:06 friedelwolff
+
+ * src/trunk/Pootle/__version__.py: Version 0.10rc4
+
+2006-08-22 18:03 friedelwolff
+
+ * src/trunk/Pootle/indexpage.py,
+ src/trunk/Pootle/templates/about.html,
+ src/trunk/Pootle/templates/index.html: Supply meta tags for
+ description and keywords on about page and index(/) page
+
+2006-08-22 12:41 friedelwolff
+
+ * src/trunk/Pootle/tools/updatetm.py: Typo in help text of
+ commandline option
+
+2006-08-21 12:53 friedelwolff
+
+ * src/trunk/Pootle/filelocations.py: Remove #! - it isn't a script
+
+2006-08-21 12:30 friedelwolff
+
+ * src/trunk/Pootle/html/pootle.css,
+ src/trunk/Pootle/templates/adminlanguages.html,
+ src/trunk/Pootle/templates/adminprojects.html,
+ src/trunk/Pootle/templates/adminusers.html,
+ src/trunk/translate/misc/test_zipfileext.py: Remove some
+ executable properties and #! where it isn't a script
+
+2006-08-21 10:45 friedelwolff
+
+ * src/trunk/Pootle/test_client.py: Fix tests to work with new
+ layout of KDE comments, and correct output of suggestion string
+ (suggested by testuser\n
+
+2006-08-21 10:14 friedelwolff
+
+ * src/trunk/Pootle/README: Mention cvs and svn clients under
+ requirements
+
+2006-08-21 08:57 friedelwolff
+
+ * src/trunk/Pootle/pootle.prefs: Add terminology project to default
+ preferences
+
+2006-08-21 08:53 friedelwolff
+
+ * src/trunk/Pootle/po/terminology/am/pootle-terminology-am.prefs,
+ src/trunk/Pootle/po/terminology/ar/pootle-terminology-ar.prefs,
+ src/trunk/Pootle/po/terminology/az/pootle-terminology-az.prefs,
+ src/trunk/Pootle/po/terminology/ca/pootle-terminology-ca.prefs,
+ src/trunk/Pootle/po/terminology/cs/pootle-terminology-cs.prefs,
+ src/trunk/Pootle/po/terminology/da/pootle-terminology-da.prefs,
+ src/trunk/Pootle/po/terminology/eo/pootle-terminology-eo.prefs,
+ src/trunk/Pootle/po/terminology/es/pootle-terminology-es.prefs,
+ src/trunk/Pootle/po/terminology/eu/pootle-terminology-eu.prefs,
+ src/trunk/Pootle/po/terminology/fa/pootle-terminology-fa.prefs,
+ src/trunk/Pootle/po/terminology/fr/pootle-terminology-fr.prefs,
+ src/trunk/Pootle/po/terminology/hi/pootle-terminology-hi.prefs,
+ src/trunk/Pootle/po/terminology/hu/pootle-terminology-hu.prefs,
+ src/trunk/Pootle/po/terminology/it/pootle-terminology-it.prefs,
+ src/trunk/Pootle/po/terminology/ja/pootle-terminology-ja.prefs,
+ src/trunk/Pootle/po/terminology/kn/pootle-terminology-kn.prefs,
+ src/trunk/Pootle/po/terminology/ku/pootle-terminology-ku.prefs,
+ src/trunk/Pootle/po/terminology/mk/pootle-terminology-mk.prefs,
+ src/trunk/Pootle/po/terminology/mr/pootle-terminology-mr.prefs,
+ src/trunk/Pootle/po/terminology/ms/pootle-terminology-ms.prefs,
+ src/trunk/Pootle/po/terminology/nb/pootle-terminology-nb.prefs,
+ src/trunk/Pootle/po/terminology/nl/pootle-terminology-nl.prefs,
+ src/trunk/Pootle/po/terminology/nn/pootle-terminology-nn.prefs,
+ src/trunk/Pootle/po/terminology/pa/pootle-terminology-pa.prefs,
+ src/trunk/Pootle/po/terminology/pl/pootle-terminology-pl.prefs,
+ src/trunk/Pootle/po/terminology/pt/pootle-terminology-pt.prefs,
+ src/trunk/Pootle/po/terminology/pt_BR/pootle-terminology-pt_BR.prefs,
+ src/trunk/Pootle/po/terminology/rw/pootle-terminology-rw.prefs,
+ src/trunk/Pootle/po/terminology/sk/pootle-terminology-sk.prefs,
+ src/trunk/Pootle/po/terminology/sq/pootle-terminology-sq.prefs,
+ src/trunk/Pootle/po/terminology/sv/pootle-terminology-sv.prefs,
+ src/trunk/Pootle/po/terminology/th/pootle-terminology-th.prefs,
+ src/trunk/Pootle/po/terminology/uk/pootle-terminology-uk.prefs,
+ src/trunk/Pootle/po/terminology/vi/pootle-terminology-vi.prefs,
+ src/trunk/Pootle/po/terminology/wa/pootle-terminology-wa.prefs,
+ src/trunk/Pootle/po/terminology/zh_CN/pootle-terminology-zh_CN.prefs,
+ src/trunk/Pootle/po/terminology/zh_HK/pootle-terminology-zh_HK.prefs,
+ src/trunk/Pootle/po/terminology/zh_TW/pootle-terminology-zh_TW.prefs:
+ Add default .prefs file for all terminology projects that only
+ allow viewing
+
+2006-08-21 08:21 friedelwolff
+
+ * src/trunk/Pootle/po/terminology,
+ src/trunk/Pootle/po/terminology/am,
+ src/trunk/Pootle/po/terminology/am/gnome,
+ src/trunk/Pootle/po/terminology/am/gnome/am.po,
+ src/trunk/Pootle/po/terminology/ar,
+ src/trunk/Pootle/po/terminology/ar/gnome,
+ src/trunk/Pootle/po/terminology/ar/gnome/ar.po,
+ src/trunk/Pootle/po/terminology/az,
+ src/trunk/Pootle/po/terminology/az/gnome,
+ src/trunk/Pootle/po/terminology/az/gnome/az.po,
+ src/trunk/Pootle/po/terminology/ca,
+ src/trunk/Pootle/po/terminology/ca/gnome,
+ src/trunk/Pootle/po/terminology/ca/gnome/ca.po,
+ src/trunk/Pootle/po/terminology/cs,
+ src/trunk/Pootle/po/terminology/cs/gnome,
+ src/trunk/Pootle/po/terminology/cs/gnome/cs.po,
+ src/trunk/Pootle/po/terminology/da,
+ src/trunk/Pootle/po/terminology/da/gnome,
+ src/trunk/Pootle/po/terminology/da/gnome/da.po,
+ src/trunk/Pootle/po/terminology/eo,
+ src/trunk/Pootle/po/terminology/eo/gnome,
+ src/trunk/Pootle/po/terminology/eo/gnome/eo.po,
+ src/trunk/Pootle/po/terminology/es,
+ src/trunk/Pootle/po/terminology/es/gnome,
+ src/trunk/Pootle/po/terminology/es/gnome/es.po,
+ src/trunk/Pootle/po/terminology/eu,
+ src/trunk/Pootle/po/terminology/eu/gnome,
+ src/trunk/Pootle/po/terminology/eu/gnome/eu.po,
+ src/trunk/Pootle/po/terminology/fa,
+ src/trunk/Pootle/po/terminology/fa/gnome,
+ src/trunk/Pootle/po/terminology/fa/gnome/fa.po,
+ src/trunk/Pootle/po/terminology/fr,
+ src/trunk/Pootle/po/terminology/fr/gnome,
+ src/trunk/Pootle/po/terminology/fr/gnome/fr.po,
+ src/trunk/Pootle/po/terminology/hi,
+ src/trunk/Pootle/po/terminology/hi/gnome,
+ src/trunk/Pootle/po/terminology/hi/gnome/hi.po,
+ src/trunk/Pootle/po/terminology/hu,
+ src/trunk/Pootle/po/terminology/hu/gnome,
+ src/trunk/Pootle/po/terminology/hu/gnome/hu.po,
+ src/trunk/Pootle/po/terminology/it,
+ src/trunk/Pootle/po/terminology/it/gnome,
+ src/trunk/Pootle/po/terminology/it/gnome/it.po,
+ src/trunk/Pootle/po/terminology/ja,
+ src/trunk/Pootle/po/terminology/ja/gnome,
+ src/trunk/Pootle/po/terminology/ja/gnome/ja.po,
+ src/trunk/Pootle/po/terminology/kn,
+ src/trunk/Pootle/po/terminology/kn/gnome,
+ src/trunk/Pootle/po/terminology/kn/gnome/kn.po,
+ src/trunk/Pootle/po/terminology/ku,
+ src/trunk/Pootle/po/terminology/ku/gnome,
+ src/trunk/Pootle/po/terminology/ku/gnome/ku.po,
+ src/trunk/Pootle/po/terminology/mk,
+ src/trunk/Pootle/po/terminology/mk/gnome,
+ src/trunk/Pootle/po/terminology/mk/gnome/mk.po,
+ src/trunk/Pootle/po/terminology/mr,
+ src/trunk/Pootle/po/terminology/mr/gnome,
+ src/trunk/Pootle/po/terminology/mr/gnome/mr.po,
+ src/trunk/Pootle/po/terminology/ms,
+ src/trunk/Pootle/po/terminology/ms/gnome,
+ src/trunk/Pootle/po/terminology/ms/gnome/ms.po,
+ src/trunk/Pootle/po/terminology/nb,
+ src/trunk/Pootle/po/terminology/nb/gnome,
+ src/trunk/Pootle/po/terminology/nb/gnome/nb.po,
+ src/trunk/Pootle/po/terminology/nl,
+ src/trunk/Pootle/po/terminology/nl/gnome,
+ src/trunk/Pootle/po/terminology/nl/gnome/nl.po,
+ src/trunk/Pootle/po/terminology/nn,
+ src/trunk/Pootle/po/terminology/nn/gnome,
+ src/trunk/Pootle/po/terminology/nn/gnome/nn.po,
+ src/trunk/Pootle/po/terminology/pa,
+ src/trunk/Pootle/po/terminology/pa/gnome,
+ src/trunk/Pootle/po/terminology/pa/gnome/pa.po,
+ src/trunk/Pootle/po/terminology/pl,
+ src/trunk/Pootle/po/terminology/pl/gnome,
+ src/trunk/Pootle/po/terminology/pl/gnome/pl.po,
+ src/trunk/Pootle/po/terminology/pt,
+ src/trunk/Pootle/po/terminology/pt/gnome,
+ src/trunk/Pootle/po/terminology/pt/gnome/pt.po,
+ src/trunk/Pootle/po/terminology/pt_BR,
+ src/trunk/Pootle/po/terminology/pt_BR/gnome,
+ src/trunk/Pootle/po/terminology/pt_BR/gnome/pt_BR.po,
+ src/trunk/Pootle/po/terminology/rw,
+ src/trunk/Pootle/po/terminology/rw/gnome,
+ src/trunk/Pootle/po/terminology/rw/gnome/rw.po,
+ src/trunk/Pootle/po/terminology/sk,
+ src/trunk/Pootle/po/terminology/sk/gnome,
+ src/trunk/Pootle/po/terminology/sk/gnome/sk.po,
+ src/trunk/Pootle/po/terminology/sq,
+ src/trunk/Pootle/po/terminology/sq/gnome,
+ src/trunk/Pootle/po/terminology/sq/gnome/sq.po,
+ src/trunk/Pootle/po/terminology/sv,
+ src/trunk/Pootle/po/terminology/sv/gnome,
+ src/trunk/Pootle/po/terminology/sv/gnome/sv.po,
+ src/trunk/Pootle/po/terminology/th,
+ src/trunk/Pootle/po/terminology/th/gnome,
+ src/trunk/Pootle/po/terminology/th/gnome/th.po,
+ src/trunk/Pootle/po/terminology/uk,
+ src/trunk/Pootle/po/terminology/uk/gnome,
+ src/trunk/Pootle/po/terminology/uk/gnome/uk.po,
+ src/trunk/Pootle/po/terminology/vi,
+ src/trunk/Pootle/po/terminology/vi/gnome,
+ src/trunk/Pootle/po/terminology/vi/gnome/vi.po,
+ src/trunk/Pootle/po/terminology/wa,
+ src/trunk/Pootle/po/terminology/wa/gnome,
+ src/trunk/Pootle/po/terminology/wa/gnome/wa.po,
+ src/trunk/Pootle/po/terminology/zh_CN,
+ src/trunk/Pootle/po/terminology/zh_CN/gnome,
+ src/trunk/Pootle/po/terminology/zh_CN/gnome/zh_CN.po,
+ src/trunk/Pootle/po/terminology/zh_HK,
+ src/trunk/Pootle/po/terminology/zh_HK/gnome,
+ src/trunk/Pootle/po/terminology/zh_HK/gnome/zh_HK.po,
+ src/trunk/Pootle/po/terminology/zh_TW,
+ src/trunk/Pootle/po/terminology/zh_TW/gnome,
+ src/trunk/Pootle/po/terminology/zh_TW/gnome/zh_TW.po: terminology
+ project, currently only with the gnome glossaries without
+ encoding problems
+
+2006-08-19 16:06 friedelwolff
+
+ * src/trunk/Pootle/po, src/trunk/Pootle/po/pootle,
+ src/trunk/Pootle/po/pootle/af,
+ src/trunk/Pootle/po/pootle/af/jToolkit.po,
+ src/trunk/Pootle/po/pootle/af/pootle.po,
+ src/trunk/Pootle/po/pootle/aka,
+ src/trunk/Pootle/po/pootle/aka/jToolkit.po,
+ src/trunk/Pootle/po/pootle/aka/pootle.po,
+ src/trunk/Pootle/po/pootle/am,
+ src/trunk/Pootle/po/pootle/am/jToolkit.po,
+ src/trunk/Pootle/po/pootle/am/pootle.po,
+ src/trunk/Pootle/po/pootle/ar,
+ src/trunk/Pootle/po/pootle/ar/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ar/pootle.po,
+ src/trunk/Pootle/po/pootle/bn,
+ src/trunk/Pootle/po/pootle/bn/jToolkit.po,
+ src/trunk/Pootle/po/pootle/bn/pootle.po,
+ src/trunk/Pootle/po/pootle/ca,
+ src/trunk/Pootle/po/pootle/ca/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ca/pootle.po,
+ src/trunk/Pootle/po/pootle/da,
+ src/trunk/Pootle/po/pootle/da/jToolkit.po,
+ src/trunk/Pootle/po/pootle/da/pootle.po,
+ src/trunk/Pootle/po/pootle/de,
+ src/trunk/Pootle/po/pootle/de/jToolkit.po,
+ src/trunk/Pootle/po/pootle/de/pootle.po,
+ src/trunk/Pootle/po/pootle/el,
+ src/trunk/Pootle/po/pootle/el/jToolkit.po,
+ src/trunk/Pootle/po/pootle/el/pootle.po,
+ src/trunk/Pootle/po/pootle/en,
+ src/trunk/Pootle/po/pootle/en/jToolkit.po,
+ src/trunk/Pootle/po/pootle/en/pootle.po,
+ src/trunk/Pootle/po/pootle/en_ZA,
+ src/trunk/Pootle/po/pootle/en_ZA/jToolkit.po,
+ src/trunk/Pootle/po/pootle/en_ZA/pootle.po,
+ src/trunk/Pootle/po/pootle/es,
+ src/trunk/Pootle/po/pootle/es/jToolkit.po,
+ src/trunk/Pootle/po/pootle/es/pootle.po,
+ src/trunk/Pootle/po/pootle/et,
+ src/trunk/Pootle/po/pootle/et/jToolkit.po,
+ src/trunk/Pootle/po/pootle/et/pootle.po,
+ src/trunk/Pootle/po/pootle/eu,
+ src/trunk/Pootle/po/pootle/eu/jToolkit.po,
+ src/trunk/Pootle/po/pootle/eu/pootle.po,
+ src/trunk/Pootle/po/pootle/fa,
+ src/trunk/Pootle/po/pootle/fa/jToolkit.po,
+ src/trunk/Pootle/po/pootle/fa/pootle.po,
+ src/trunk/Pootle/po/pootle/fi,
+ src/trunk/Pootle/po/pootle/fi/jToolkit.po,
+ src/trunk/Pootle/po/pootle/fi/pootle.po,
+ src/trunk/Pootle/po/pootle/fr,
+ src/trunk/Pootle/po/pootle/fr/jToolkit.po,
+ src/trunk/Pootle/po/pootle/fr/pootle.po,
+ src/trunk/Pootle/po/pootle/fur,
+ src/trunk/Pootle/po/pootle/fur/jToolkit.po,
+ src/trunk/Pootle/po/pootle/fur/pootle.po,
+ src/trunk/Pootle/po/pootle/gl,
+ src/trunk/Pootle/po/pootle/gl/jToolkit.po,
+ src/trunk/Pootle/po/pootle/gl/pootle.po,
+ src/trunk/Pootle/po/pootle/he,
+ src/trunk/Pootle/po/pootle/he/jToolkit.po,
+ src/trunk/Pootle/po/pootle/he/pootle.po,
+ src/trunk/Pootle/po/pootle/hi,
+ src/trunk/Pootle/po/pootle/hi/jToolkit.po,
+ src/trunk/Pootle/po/pootle/hi/pootle.po,
+ src/trunk/Pootle/po/pootle/hr,
+ src/trunk/Pootle/po/pootle/hr/jToolkit.po,
+ src/trunk/Pootle/po/pootle/hr/pootle.po,
+ src/trunk/Pootle/po/pootle/hu,
+ src/trunk/Pootle/po/pootle/hu/jToolkit.po,
+ src/trunk/Pootle/po/pootle/hu/pootle.po,
+ src/trunk/Pootle/po/pootle/is,
+ src/trunk/Pootle/po/pootle/is/jToolkit.po,
+ src/trunk/Pootle/po/pootle/is/pootle.po,
+ src/trunk/Pootle/po/pootle/it,
+ src/trunk/Pootle/po/pootle/it/jToolkit.po,
+ src/trunk/Pootle/po/pootle/it/pootle.po,
+ src/trunk/Pootle/po/pootle/ja,
+ src/trunk/Pootle/po/pootle/ja/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ja/pootle.po,
+ src/trunk/Pootle/po/pootle/ka,
+ src/trunk/Pootle/po/pootle/ka/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ka/pootle.po,
+ src/trunk/Pootle/po/pootle/ko,
+ src/trunk/Pootle/po/pootle/ko/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ko/pootle.po,
+ src/trunk/Pootle/po/pootle/kon,
+ src/trunk/Pootle/po/pootle/kon/jToolkit.po,
+ src/trunk/Pootle/po/pootle/kon/pootle.po,
+ src/trunk/Pootle/po/pootle/ku,
+ src/trunk/Pootle/po/pootle/ku/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ku/pootle.po,
+ src/trunk/Pootle/po/pootle/lt,
+ src/trunk/Pootle/po/pootle/lt/jToolkit.po,
+ src/trunk/Pootle/po/pootle/lt/pootle.po,
+ src/trunk/Pootle/po/pootle/lv,
+ src/trunk/Pootle/po/pootle/lv/jToolkit.po,
+ src/trunk/Pootle/po/pootle/lv/pootle.po,
+ src/trunk/Pootle/po/pootle/mr,
+ src/trunk/Pootle/po/pootle/mr/jToolkit.po,
+ src/trunk/Pootle/po/pootle/mr/pootle.po,
+ src/trunk/Pootle/po/pootle/ms,
+ src/trunk/Pootle/po/pootle/ms/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ms/pootle.po,
+ src/trunk/Pootle/po/pootle/mt,
+ src/trunk/Pootle/po/pootle/mt/jToolkit.po,
+ src/trunk/Pootle/po/pootle/mt/pootle.po,
+ src/trunk/Pootle/po/pootle/nb,
+ src/trunk/Pootle/po/pootle/nb/jToolkit.po,
+ src/trunk/Pootle/po/pootle/nb/pootle.po,
+ src/trunk/Pootle/po/pootle/ne,
+ src/trunk/Pootle/po/pootle/ne/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ne/pootle.po,
+ src/trunk/Pootle/po/pootle/nl,
+ src/trunk/Pootle/po/pootle/nl/jToolkit.po,
+ src/trunk/Pootle/po/pootle/nl/pootle.po,
+ src/trunk/Pootle/po/pootle/no,
+ src/trunk/Pootle/po/pootle/no/jToolkit.po,
+ src/trunk/Pootle/po/pootle/no/pootle.po,
+ src/trunk/Pootle/po/pootle/ns,
+ src/trunk/Pootle/po/pootle/ns/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ns/pootle.po,
+ src/trunk/Pootle/po/pootle/pa,
+ src/trunk/Pootle/po/pootle/pa/jToolkit.po,
+ src/trunk/Pootle/po/pootle/pa/pootle.po,
+ src/trunk/Pootle/po/pootle/pl,
+ src/trunk/Pootle/po/pootle/pl/jToolkit.po,
+ src/trunk/Pootle/po/pootle/pl/pootle.po,
+ src/trunk/Pootle/po/pootle/pt,
+ src/trunk/Pootle/po/pootle/pt/jToolkit.po,
+ src/trunk/Pootle/po/pootle/pt/pootle.po,
+ src/trunk/Pootle/po/pootle/ru,
+ src/trunk/Pootle/po/pootle/ru/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ru/pootle.po,
+ src/trunk/Pootle/po/pootle/sl,
+ src/trunk/Pootle/po/pootle/sl/jToolkit.po,
+ src/trunk/Pootle/po/pootle/sl/pootle.po,
+ src/trunk/Pootle/po/pootle/sr,
+ src/trunk/Pootle/po/pootle/sr/jToolkit.po,
+ src/trunk/Pootle/po/pootle/sr/pootle.po,
+ src/trunk/Pootle/po/pootle/st,
+ src/trunk/Pootle/po/pootle/st/jToolkit.po,
+ src/trunk/Pootle/po/pootle/st/pootle.po,
+ src/trunk/Pootle/po/pootle/sv,
+ src/trunk/Pootle/po/pootle/sv/jToolkit.po,
+ src/trunk/Pootle/po/pootle/sv/pootle.po,
+ src/trunk/Pootle/po/pootle/templates,
+ src/trunk/Pootle/po/pootle/templates/jToolkit.pot,
+ src/trunk/Pootle/po/pootle/templates/pootle.pot,
+ src/trunk/Pootle/po/pootle/tr,
+ src/trunk/Pootle/po/pootle/tr/jToolkit.po,
+ src/trunk/Pootle/po/pootle/tr/pootle.po,
+ src/trunk/Pootle/po/pootle/uk,
+ src/trunk/Pootle/po/pootle/uk/jToolkit.po,
+ src/trunk/Pootle/po/pootle/uk/pootle.po,
+ src/trunk/Pootle/po/pootle/ve,
+ src/trunk/Pootle/po/pootle/ve/jToolkit.po,
+ src/trunk/Pootle/po/pootle/ve/pootle.po,
+ src/trunk/Pootle/po/pootle/vi,
+ src/trunk/Pootle/po/pootle/vi/jToolkit.po,
+ src/trunk/Pootle/po/pootle/vi/pootle.po,
+ src/trunk/Pootle/po/pootle/xh,
+ src/trunk/Pootle/po/pootle/xh/jToolkit.po,
+ src/trunk/Pootle/po/pootle/xh/pootle.po,
+ src/trunk/Pootle/po/pootle/zh_CN,
+ src/trunk/Pootle/po/pootle/zh_CN/jToolkit.po,
+ src/trunk/Pootle/po/pootle/zh_CN/pootle.po,
+ src/trunk/Pootle/po/pootle/zh_HK,
+ src/trunk/Pootle/po/pootle/zh_HK/jToolkit.po,
+ src/trunk/Pootle/po/pootle/zh_HK/pootle.po,
+ src/trunk/Pootle/po/pootle/zu,
+ src/trunk/Pootle/po/pootle/zu/jToolkit.po,
+ src/trunk/Pootle/po/pootle/zu/pootle.po: Add all the translations
+ and templates for pootle and jToolkit from pootle.wordforge.org
+
+2006-08-19 13:47 friedelwolff
+
+ * src/trunk/pootlesetup.py: [forwardport] merge from
+ wordforge-0-9-branch -r2816:3281. Include po/ and po/pootle/ for
+ approved languages
+
+2006-08-19 08:17 friedelwolff
+
+ * src/trunk/Pootle/html/doc/howto.html: Use relative links instead
+ of hard links to pootle.wordforge.org
+
+2006-08-17 12:03 gintautasm
+
+ * src/trunk, trunk: Moved trunk (3/3).
+
+2006-08-17 10:38 friedelwolff
+
+ * projects.py: Pass the original po file to pot2po. This minimises
+ the difference with the final po and uses the new fuzzy matching.
+
+2006-08-17 08:04 friedelwolff
+
+ * templates/error.html: Templatepage for displaying errors. Can
+ behave like redirect page, but also has explicit back button
+
+2006-08-16 16:10 friedelwolff
+
+ * __version__.py, trunk/translate/__version__.py: Version 0.10rc3
+
+2006-08-16 13:45 friedelwolff
+
+ * users.py: Trap exceptions and display a neat error page. This
+ does not trap kid errors that can occur, though.
+
+2006-08-16 13:32 friedelwolff
+
+ * pootle.py: Store optparse options in PootleServer
+
+2006-08-16 13:31 friedelwolff
+
+ * pootle.py: Remove misleading comment
+
+2006-08-16 09:36 friedelwolff
+
+ * templates/fileindex.html, templates/language.html,
+ templates/project.html: Use description in title for percentage
+ columns in stats view
+
+2006-08-15 15:51 friedelwolff
+
+ * pootlefile.py: Add real KDE comments with trailing newline
+
+2006-08-14 08:35 friedelwolff
+
+ * pootle.prefs: Fix brackets for the plural equation of Maltese
+
+2006-08-14 07:24 friedelwolff
+
+ * pootle.prefs: Fix plural equations where 'or' was used instead of
+ '||'
+
+2006-08-14 06:03 friedelwolff
+
+ * indexpage.py, projects.py: Fix statistics for goalles files
+
+2006-08-12 13:31 friedelwolff
+
+ * users.py: Typo in code to add space for extra sentence
+
+2006-08-11 21:56 friedelwolff
+
+ * users.py: Use localised email subject (already used elsewhere)
+
+2006-08-11 21:52 friedelwolff
+
+ * users.py: Use instancetitle instead of repeating the pagetitle
+ (like other pages)
+
+2006-08-11 21:46 friedelwolff
+
+ * pootle.py: Initialse languagenames as before t fix logic error,
+ but retain extra initialisation to compensate for jToolkit
+ overriting it (should be rare)
+
+2006-08-11 21:45 friedelwolff
+
+ * users.py: Use session.localize() instead of self.localize().
+ Internationalise more errors for next version. More of these left
+ todo.
+
+2006-08-11 20:30 friedelwolff
+
+ * __version__.py, trunk/translate/__version__.py: Version 0.10rc2
+
+2006-08-11 14:49 friedelwolff
+
+ * pootle.prefs: [forwardport] Document the 'supportaddress'
+ configuration option
+
+2006-08-11 12:20 friedelwolff
+
+ * potree.py: Remove unnecessary debug message
+
+2006-08-11 12:19 friedelwolff
+
+ * pootle.py: Initialise languagenames later, since jToolkit
+ overrites them otherwise. This fixes the problem of no languages
+ in login page if no default language is set.
+
+2006-08-11 12:14 friedelwolff
+
+ * pootle.py: call localize of the session, not the server. Fix
+ untranslated 'Login failed'
+
+2006-08-11 12:13 friedelwolff
+
+ * pootle.py: Initialise the language for the session from the
+ browsers Accept-language: directive
+
+2006-08-11 12:09 friedelwolff
+
+ * users.py: with setlanguage(None) only change .language if it
+ doesn't already have a value
+
+2006-08-11 12:08 friedelwolff
+
+ * users.py: Pave the way to have the session language set if the
+ session is not open.
+
+2006-08-11 07:14 friedelwolff
+
+ * indexpage.py: Use complete stats in more cases. Reword. Fixes bug
+ when showing assigns or checks.
+
+2006-08-11 06:53 dwaynebailey
+
+ * html/doc/resources.html: Link to Pootle online docs and
+ Localisation Guide.
+
+2006-08-10 15:57 friedelwolff
+
+ * projects.py: Add don't translate comment for message
+
+2006-08-10 15:53 friedelwolff
+
+ * html/pootle.css: Display updates for Greek (el), Persian (fa),
+ and Vietnamese (vi). Add Tahoma do default fonts
+
+2006-08-10 15:32 friedelwolff
+
+ * projects.py: Receive the session on delrights() for access to
+ localize() function
+
+2006-08-10 15:27 friedelwolff
+
+ * pootle.py: [backport] Hack to ensure we always have unicode
+ arguments (should be in jToolkit)
+
+2006-08-10 15:19 friedelwolff
+
+ * adminpages.py: Pass the session to project.delrights() for access
+ to localize() function
+
+2006-08-10 15:11 friedelwolff
+
+ * html/robots.txt: Remove static robots.txt since we now generate
+ it dynamically in the code
+
+2006-08-10 14:20 friedelwolff
+
+ * projects.py, translatepage.py: Robustly handle errors in
+ terminology to enable user to continue, but log complete
+ traceback.
+
+2006-08-10 14:18 friedelwolff
+
+ * tools/updatetm.py: Use new sourcelencmp function for the sake of
+ python 2.3
+
+2006-08-10 13:05 friedelwolff
+
+ * pootle.py: Generate a robots.txt file dynamically for for the
+ languages that are in use
+
+2006-08-08 07:56 friedelwolff
+
+ * translatepage.py: Strip added <br /> at end of displayed message
+
+2006-08-07 10:17 friedelwolff
+
+ * indexpage.py: Update stats of language listing in project
+
+2006-08-07 08:48 friedelwolff
+
+ * indexpage.py, templates/navbar.html: Internationalise 'Select
+ Multiple' in assings form
+
+2006-08-07 07:21 friedelwolff
+
+ * projects.py: Use consistent naming for matcher -> termmatcher
+
+2006-08-05 10:13 dwaynebailey
+
+ * pootle.prefs: Add entries for British and South African English
+
+2006-08-05 00:09 friedelwolff
+
+ * projects.py: (re)fix order of file initialisation. This is
+ necessary because we might need to update the stats files and
+ call getquickstats() before we called scanpofiles
+
+2006-08-04 23:45 friedelwolff
+
+ * projects.py: Correct typo in list comprehension
+
+2006-08-04 23:08 friedelwolff
+
+ * users.py: Two minor improvements to English messages
+
+2006-08-04 21:41 friedelwolff
+
+ * templates/translatepage.html, translatepage.py: Show comments in
+ a tooltip in all view modes
+
+2006-08-04 21:39 friedelwolff
+
+ * projects.py: Display stats summary in commit message
+
+2006-08-04 12:22 friedelwolff
+
+ * html/pootle.css: Add language specific display settings, mostly
+ from http://translate.sourceforge.net/wiki/l10n/displaysettings
+
+2006-08-04 12:21 friedelwolff
+
+ * html/pootle.css: Refactor all font-family declerations
+
+2006-08-04 10:24 friedelwolff
+
+ * translatepage.py: Have the option to strip and interpret escapes
+ rather than showing them. Now used to display comments
+
+2006-08-04 09:37 friedelwolff
+
+ * projects.py: +isterminologyproject(). Remove implementation with
+ muliple matchers with the terminology project as term base
+
+2006-08-04 07:27 friedelwolff
+
+ * pootle.py: Fix serving of .ico properly
+
+2006-08-04 06:43 friedelwolff
+
+ * projects.py: Rework terminology code to store the matcher and its
+ modification time to elimiate unnecessary reconstruction. More
+ work left (see TODO)
+
+2006-08-03 15:53 friedelwolff
+
+ * pootle.py: Enable caching for favicon
+
+2006-08-03 09:28 friedelwolff
+
+ * pootle.prefs: Use native language names in most cases
+
+2006-08-02 15:52 friedelwolff
+
+ * pootle.py: Mandate new enough version of toolkit
+
+2006-08-02 15:51 friedelwolff
+
+ * __version__.py, trunk/translate/__version__.py: Version 0.10rc1
+
+2006-08-02 15:50 friedelwolff
+
+ * pootle.prefs, users.prefs: [forwardport] Updates for
+ configuration files from 0.9 branch
+
+2006-08-02 15:34 friedelwolff
+
+ * README: Add more information about external packages and debian
+ (Cecilia Saltori)
+
+2006-08-02 14:30 friedelwolff
+
+ * templates/fileindex.html, templates/translatepage.html: Make
+ search field smaller (narrower)
+
+2006-08-02 14:10 friedelwolff
+
+ * projects.py: Fix bug with uninitialised stats
+
+2006-08-02 08:34 friedelwolff
+
+ * README: [fowardport] Updates from 0.9 branch
+
+2006-08-01 20:19 friedelwolff
+
+ * indexpage.py: Localisation note about 'Checks'
+
+2006-08-01 19:56 friedelwolff
+
+ * projects.py: Tweak initialisation codes regarding quick stats
+
+2006-08-01 19:55 friedelwolff
+
+ * indexpage.py: Don't use quick stats for editing interface
+
+2006-08-01 10:39 friedelwolff
+
+ * users.py: Add full stops to messages that are complete sentences
+
+2006-08-01 10:27 friedelwolff
+
+ * users.py: Internationalise the activation email and some error
+ messages
+
+2006-08-01 10:09 friedelwolff
+
+ * indexpage.py: Remove two messages for translation. Add
+ localisation comments
+
+2006-08-01 10:00 friedelwolff
+
+ * adminpages.py: Provide localisation notes
+
+2006-08-01 09:46 friedelwolff
+
+ * indexpage.py, pagelayout.py, pootlefile.py, projects.py: Store
+ and get fuzzy stats from quickstats. Use quickstats again.
+
+2006-07-28 08:53 friedelwolff
+
+ * pootle.py: Make sure we run if psyco is not installed
+
+2006-07-28 07:23 friedelwolff
+
+ * __version__.py, trunk/translate/__version__.py: version 0.10beta3
+
+2006-07-28 07:05 friedelwolff
+
+ * templates/home.html: Don't loop twice through languages
+
+2006-07-28 06:56 friedelwolff
+
+ * translatepage.py: Factor out fancy spaces, escape comments
+ without showing fancy spaces. This fixes a bug with xml tags in
+ comments
+
+2006-07-27 15:15 friedelwolff
+
+ * translatepage.py: Annotate translation text with comments
+
+2006-07-27 13:05 friedelwolff
+
+ * pootlefile.py: Search in sourceindex using the singular msgid
+ only, to avoid problems with multistrings from PO xliff
+
+2006-07-27 12:05 friedelwolff
+
+ * pootlefile.py: Fix the case where there are no plurals or not
+ enough plurals in msgstr
+
+2006-07-27 11:45 friedelwolff
+
+ * indexpage.py, pootlefile.py, projects.py: Implement XLIFF
+ uploading. Renaming of some pofile -> file, etc.
+
+2006-07-27 11:43 friedelwolff
+
+ * test_client.py: Test xliff upload
+
+2006-07-26 12:51 friedelwolff
+
+ * pootlefile.py: Update with comments
+
+2006-07-25 20:14 dwaynebailey
+
+ * pootle.py: Add psyco to Pootle.
+
+2006-07-25 19:52 dwaynebailey
+
+ * html/pootle.css: Some styling fixes
+
+2006-07-25 19:46 dwaynebailey
+
+ * TODO: Clear up some cruft
+
+2006-07-25 07:19 friedelwolff
+
+ * translatepage.py: Correct end of line logic for view and edit
+ mode. Fix for bug 170
+
+2006-07-24 09:48 friedelwolff
+
+ * __version__.py, trunk/translate/__version__.py: Version up to
+ 0.10beta2
+
+2006-07-24 09:18 friedelwolff
+
+ * templates/translatepage.html, translatepage.py: Internationalise
+ the TM and terminology heading (related)
+
+2006-07-21 14:30 friedelwolff
+
+ * translatepage.py: Correct number of rows in view and translate
+ mode. Fix for bug 156
+
+2006-07-20 10:09 friedelwolff
+
+ * templates/navbar.html: Remove duplicate ids for valid xhtml
+
+2006-07-20 09:56 friedelwolff
+
+ * templates/pootlepage.html: Set banner language to Undetermined
+ (und) for valid xhtml
+
+2006-07-20 09:55 friedelwolff
+
+ * templates/fileindex.html, templates/language.html,
+ templates/project.html: Extra right-to-left (rtl) support where
+ inheritence fails
+
+2006-07-20 09:39 friedelwolff
+
+ * templates/fileindex.html, templates/language.html,
+ templates/navbar.html, templates/project.html,
+ templates/translatepage.html: Alt tags for all icons. Move hidden
+ field to avoid duplicate searchform. Better xhtml compliance.
+
+2006-07-20 09:24 friedelwolff
+
+ * html/pootle.css: Fix a few non-standard compliant values. Now
+ valid CSS.
+
+2006-07-20 08:53 friedelwolff
+
+ * projects.py, translatepage.py: Display terminology from a file
+ called pootle-terminology.po
+
+2006-07-19 15:24 friedelwolff
+
+ * pootle.py, templates/login.html, users.py: Support introtext on
+ login page, use for failed login, show introtext for register
+ page
+
+2006-07-19 14:13 friedelwolff
+
+ * templates/fileindex.html, templates/navbar.html,
+ templates/pootlepage.html, templates/translatepage.html: Extra
+ right-to-left (rtl) support where inheritence fails
+
+2006-07-19 14:09 friedelwolff
+
+ * html/pootle.css: Styling information to support right-to-left
+ (rtl)
+
+2006-07-19 09:06 friedelwolff
+
+ * tools/updatetm.py, trunk/translate/search/match.py,
+ trunk/translate/search/test_match.py,
+ trunk/translate/services/lookupservice.py: Adapt matcher to
+ return real units rather tuples, adapt users
+
+2006-07-18 21:20 dwaynebailey
+
+ * indexpage.py, pootle.py: Add version info for kid and elementree
+ to the about page of Pootle and to
+ the --version option of PootleServer.
+
+2006-07-18 11:39 dwaynebailey
+
+ * html/js/sorttable.js: Add the ability to correctly paint odd and
+ even lines after sorting. Its
+ currently hackish and should be made more generic. Plus it
+ suffers from
+ screen flicker which should be fixed.
+
+2006-07-18 09:27 friedelwolff
+
+ * CREDITS: Add some contributors
+
+2006-07-18 08:37 friedelwolff
+
+ * adminpages.py: Add l10n note
+
+2006-07-18 08:20 friedelwolff
+
+ * pagelayout.py: Also use right-to-left (rtl) for Yiddish
+
+2006-07-17 20:45 friedelwolff
+
+ * templates/about.html, templates/activate.html,
+ templates/adminindex.html, templates/adminlanguages.html,
+ templates/adminprojects.html, templates/adminusers.html,
+ templates/fileindex.html, templates/home.html,
+ templates/index.html, templates/language.html,
+ templates/languages.html, templates/login.html,
+ templates/options.html, templates/pootlepage.html,
+ templates/project.html, templates/projectadmin.html,
+ templates/projectlangadmin.html, templates/projects.html,
+ templates/redirect.html, templates/register.html,
+ templates/translatepage.html: Support for right-to-left (rtl)
+ layout
+
+2006-07-17 07:00 friedelwolff
+
+ * projects.py: [forwardport] Don't print search text to console (to
+ avoid encoding problems)
+
+2006-07-17 06:17 friedelwolff
+
+ * pagelayout.py, translatepage.py: Send language and directionality
+ to templates for rtl support
+
+2006-07-12 14:11 friedelwolff
+
+ * translatepage.py: Deal with the case where no plural information
+ is available
+
+2006-07-11 20:01 friedelwolff
+
+ * __version__.py, trunk/translate/__version__.py: Version 0.10beta
+ (for testing)
+
+2006-07-10 14:21 friedelwolff
+
+ * html/pootle.css: Show gray left border on fuzzy messages
+
+2006-07-10 14:17 friedelwolff
+
+ * html/pootle.css, templates/translatepage.html: Restyle action
+ link (now reflowing of text necessary)
+
+2006-07-10 14:13 friedelwolff
+
+ * tools/updatetm, tools/updatetm.py: Tool to generate and update
+ translation memory files for Pootle
+
+2006-07-10 13:56 friedelwolff
+
+ * tools, tools/__init__.py: Tools to be used with Pootle
+
+2006-07-10 13:51 friedelwolff
+
+ * pootle.py: Import kid, so we know if it is not installed
+
+2006-07-07 12:07 friedelwolff
+
+ * translatepage.py: Remove slightly incorrect comment
+
+2006-07-07 11:57 friedelwolff
+
+ * html/pootle.css, translatepage.py: Show very visible fancy
+ spaces.
+ * More than one consecutive space
+ * Space at beginning of message or after newline
+ * Space at end of message
+
+2006-07-06 15:44 friedelwolff
+
+ * templates/adminlanguages.html, templates/adminprojects.html,
+ templates/adminusers.html: Improve layout of admin pages.
+ This improves the layout problem caused by the empty cell in the
+ last row
+ (the row where a new entry can be entered). A better solution
+ might still
+ be needed.
+
+2006-07-05 09:23 friedelwolff
+
+ * translatepage.py: Always show correct number of plurals
+
+2006-07-04 14:56 friedelwolff
+
+ * templates/translatepage.html, translatepage.py: Only edit on
+ double click if allowed to
+
+2006-07-04 14:54 friedelwolff
+
+ * translatepage.py: Show TM when viewing unit after search
+
+2006-07-04 14:46 friedelwolff
+
+ * html/pootle.css: Make navigation bar big enough to always enclose
+ search box
+
+2006-07-04 12:29 friedelwolff
+
+ * html/pootle.css, templates/fileindex.html: Improve layout of file
+ upload
+
+2006-07-04 12:27 friedelwolff
+
+ * html/pootle.css, templates/translatepage.html: Improve layout of
+ translatepage, particularly with high zoom levels and/or long
+ strings without spaces (like URLs). Reported by Clytie Siddall
+
+2006-07-04 06:41 friedelwolff
+
+ * pootle.py: Disable client/proxy caching of generated files
+
+2006-07-03 13:06 friedelwolff
+
+ * templates/translatepage.html: Display TM-suggestion comments.
+ Edit unit on double click
+
+2006-07-03 09:56 friedelwolff
+
+ * html/js/autoexpand.js: Display edit link for longer
+
+2006-07-02 19:38 dwaynebailey
+
+ * storage: Remove 'pootle-api' files accidently commited to HEAD.
+
+2006-06-30 14:31 gintautasm
+
+ * storage, storage/__init__.py, storage/api.py, storage/memory.py,
+ storage/test_memory.py: - Added the Pootle backend API
+ declarations.
+ - Added a proof-of-concept nonpersistent implementation for the
+ proposed API.
+ By the way, this can be easily made persistent by using pickle.
+ - Added some tests for the sample implementation. They are far
+ from exhaustive,
+ but touch some areas to weed out the worst of the bugs.
+
+2006-06-30 08:05 friedelwolff
+
+ * html/pootle.css: Only underline real hyperlinks, fix pseudo
+ classes order, fix typo
+
+2006-06-28 15:18 friedelwolff
+
+ * templates/translatepage.html: Remove debugging JavaScript at tm
+
+2006-06-28 15:16 friedelwolff
+
+ * templates/translatepage.html: Go back by means of JavaScript
+
+2006-06-28 13:31 friedelwolff
+
+ * html/pootle.css, templates/pootlepage.html: Move account
+ information (login, register, etc.) to top right, apply styling
+
+2006-06-28 09:15 friedelwolff
+
+ * templates/fileindex.html, templates/pootlepage.html,
+ templates/translatepage.html: Move search form to translatepage
+ and fileindex
+
+2006-06-28 09:14 friedelwolff
+
+ * html/pootle.css: Styling for search form
+
+2006-06-28 02:50 dwaynebailey
+
+ * projects.py, test_pootlefile.py: Remove last remnants of
+ elementclass. The one prevented uploading of files and the other
+ caused a test to fail.
+
+2006-06-27 16:58 dwaynebailey
+
+ * templates/translatepage.html, translatepage.py: Add a back button
+ for review suggestion mode.
+
+2006-06-27 15:44 friedelwolff
+
+ * html/pootle.css: Style information for translation memory, adapt
+ links for uniformity
+
+2006-06-27 15:43 friedelwolff
+
+ * templates/translatepage.html: Display TM if editing
+
+2006-06-27 15:41 friedelwolff
+
+ * translatepage.py: Provide TM information to translatepage
+ template
+
+2006-06-27 15:40 friedelwolff
+
+ * projects.py: Supply tm matches for given item and file
+
+2006-06-27 15:39 friedelwolff
+
+ * pootlefile.py: Support for .po.tm files with pregenerated TM
+ matches
+
+2006-06-27 15:06 dwaynebailey
+
+ * templates/translatepage.html, translatepage.py: Add a back button
+ to allow you to move backwards through the work.
+ Still need to add a back button to review suggestion mode.
+
+2006-06-27 14:17 friedelwolff
+
+ * html/pootle.css: Move links to top righthand corner, adapt banner
+ accordingly
+
+2006-06-26 15:04 friedelwolff
+
+ * templates/translatepage.html: Remove textarea from div to fix
+ javascript. Put buttons in div in case of narrow layout
+
+2006-06-26 14:13 friedelwolff
+
+ * indexpage.py, translatepage.py: Always pass real instance title
+ to template.
+ Use instance title in page titles instead of hardcoded "Pootle".
+
+2006-06-26 12:00 friedelwolff
+
+ * templates/about.html, templates/index.html,
+ templates/languages.html, templates/projects.html: Always use
+ variable pagetitle as title of page
+
+2006-06-26 09:42 friedelwolff
+
+ * html/pootle.css, templates/translatepage.html: Improve layout
+ with comments and plurals
+
+2006-06-26 07:18 friedelwolff
+
+ * templates/translatepage.html: Fix layout bug with original cells
+
+2006-06-23 13:26 friedelwolff
+
+ * html/pootle.css: Visual styling for fuzzy translations
+
+2006-06-23 13:25 friedelwolff
+
+ * templates/translatepage.html, translatepage.py: Support for
+ indicating state (like fuzzy) with CSS class
+
+2006-06-23 10:27 friedelwolff
+
+ * html/pootle.css: Update styling for suggestions and comments
+
+2006-06-23 10:08 friedelwolff
+
+ * templates/translatepage.html, translatepage.py: Add support for
+ displaying comments and locations
+
+2006-06-23 10:05 friedelwolff
+
+ * pagelayout.py: Check that arguments were passed for navigation
+ bar
+
+2006-06-23 10:00 friedelwolff
+
+ * indexpage.py: Don't show link for checks in statistics mode
+
+2006-06-23 09:59 friedelwolff
+
+ * indexpage.py, pagelayout.py: Maintain state more consistently in
+ navigation bar
+
+2006-06-23 09:32 friedelwolff
+
+ * translatepage.py: Maintain editing mode when returning from end
+ of batch
+
+2006-06-22 14:33 friedelwolff
+
+ * templates/translatepage.html: Only shade suggestion, not the
+ heading too
+
+2006-06-22 14:24 friedelwolff
+
+ * html/pootle.css: Don't make focusbox bold, othewise headings
+ don't show clearly
+
+2006-06-22 13:49 friedelwolff
+
+ * html/pootle.css: Add class translate-suggestion to distinguish
+ suggestions
+
+2006-06-22 13:42 friedelwolff
+
+ * templates/translatepage.html: Add accesskey=k for all skip
+ buttons, improve review layout (especially for reviewing plurals)
+
+2006-06-22 12:30 friedelwolff
+
+ * templates/translatepage.html: Replace some spans with divs. +Some
+ HTML comments
+
+2006-06-22 09:56 friedelwolff
+
+ * indexpage.py, pagelayout.py: Keep editing mode when navigating
+ into goals and projects
+
+2006-06-22 09:31 friedelwolff
+
+ * indexpage.py: Fix typos, remain in editing mode after update and
+ commit
+
+2006-06-22 09:31 friedelwolff
+
+ * projects.py: Give a commit message
+
+2006-06-22 08:03 friedelwolff
+
+ * indexpage.py, projects.py: Add support for commiting to version
+ control on new right: commit
+
+2006-06-21 12:18 friedelwolff
+
+ * versioncontrol.py: Add functions for doing CVS and SVN commit
+
+2006-06-21 10:12 friedelwolff
+
+ * versioncontrol.py: Minor improvements to two comments
+
+2006-06-20 14:50 friedelwolff
+
+ * README: Mention PootleServer to run Pootle, rather than running
+ .py file directly
+
+2006-06-20 14:48 friedelwolff
+
+ * pootlefile.py: Make pootlefile work with renaming of elementclass
+ -> unitclass
+
+2006-06-20 08:27 friedelwolff
+
+ * ChangeLog: Update ChangeLog with HEAD entries since 2006-04-26
+
+2006-06-20 08:45 dwaynebailey
+
+ * README: [Forwardport] update dependencies
+
+2006-06-19 09:06 friedelwolff
+
+ * translatepage.py: Fix traceback when searching for nonexisting
+ text
+
+2006-06-19 08:59 friedelwolff
+
+ * templates/pootlepage.html: Add link tags (stylesheet, favicon),
+ Add Content-Type
+
+2006-06-15 16:32 dwaynebailey
+
+ * PootleServer, __init__.py, adminpages.py, benchmark.py,
+ conflict2suggest.py, filelocations.py, indexpage.py,
+ pagelayout.py, pootle.py, pootlefile.py, potree.py, projects.py,
+ translatepage.py, users.py, versioncontrol.py: [Forwardport]
+ Update copyright dates and add missing copyright headers to
+ files.
+
+2006-06-15 16:11 dwaynebailey
+
+ * pootle.py: Makre sure that you have the correct version of
+ Translate Toolkit before you can run PootleServer. Bump the
+ toolkit build number up.
+
+2006-06-15 09:52 dwaynebailey
+
+ * createpootlepot: Make it clear the Zuza is Translate.org.za
+
+2006-06-15 01:18 dwaynebailey
+
+ * templates/projectadmin.html: [Forwardport] Remove proprietary
+ attribute from select tag
+
+2006-06-15 00:55 dwaynebailey
+
+ * templates/: fileindex.html, language.html, project.html: <script>
+ tags must have a type= attribute
+
+2006-06-14 18:05 friedelwolff
+
+ * adminpages.py, templates/adminusers.html: Fix editing of user
+ admin interface
+
+2006-06-14 15:52 friedelwolff
+
+ * pootle.py: Enable caching for CSS, JS, and images
+
+2006-06-14 00:44 friedelwolff
+
+ * translatepage.py: Another capitalisation fix skip->Skip
+
+2006-06-13 14:49 friedelwolff
+
+ * indexpage.py: Temporary fix for link at multigoal file
+
+2006-06-13 14:21 friedelwolff
+
+ * indexpage.py: Reword "No Goal" -> "Not in a goal"
+
+2006-06-13 13:39 dwaynebailey
+
+ * templates/: fileindex.html, options.html, projectlangadmin.html:
+ [FOrwardport] Remove type= attributes from tags (img, td, etc)
+
+2006-06-13 13:27 dwaynebailey
+
+ * templates/: adminindex.html, adminlanguages.html,
+ adminprojects.html, adminusers.html, language.html, navbar.html,
+ project.html, translatepage.html: [Forwardport] Remove type=
+ attributes from tags (img, td, etc)
+
+2006-06-13 13:06 dwaynebailey
+
+ * templates/login.html: [Forwardport] Remove type= attributes from
+ tags (img, td, etc)
+
+2006-06-13 13:00 dwaynebailey
+
+ * templates/activate.html: [Forwardport] Remove type= attributes
+ from tags (img, td, etc)
+
+2006-06-13 12:56 dwaynebailey
+
+ * templates/register.html: [Forwardport] Remove type= attributes
+ from tags (img, td, etc)
+
+2006-06-13 12:27 dwaynebailey
+
+ * templates/pootlepage.html: [Forwardport] Remove type= attributes
+ from tags (img, td, etc)
+
+2006-06-13 12:15 friedelwolff
+
+ * translatepage.py: Make capitalisation consitent
+
+2006-06-13 11:07 dwaynebailey
+
+ * pagelayout.py, templates/navbar.html: [Forwardport] Change cls ->
+ class
+
+2006-06-13 10:55 dwaynebailey
+
+ * templates/pootlepage.html: [Forwardport] Height is not a valid
+ attribute, change it to a style attribute.
+
+2006-06-13 10:41 dwaynebailey
+
+ * templates/pootlepage.html: [Forwardport] Only show 'logged in
+ as...' if a session is actually open.
+
+2006-06-13 10:14 dwaynebailey
+
+ * indexpage.py, templates/fileindex.html, templates/navbar.html,
+ templates/translatepage.html: [Forwardport] Make all empty tags
+ ie <br>, <img>, etc end in [space]/> remove lonely </img> if not
+ needed.
+
+2006-06-13 08:43 friedelwolff
+
+ * projects.py: Support for non-ascii goalnames
+
+2006-06-12 10:54 friedelwolff
+
+ * potree.py, projects.py: Detect gnu style projects differently
+
+2006-06-09 21:59 friedelwolff
+
+ * test_client.py: Fix unit url passed and expected
+
+2006-06-09 21:57 friedelwolff
+
+ * test_client.py: Adapt tests to new pofile output without the
+ unnecessary newline at the end
+
+2006-06-09 20:02 friedelwolff
+
+ * test_client.py: Fix unit test (a PO header ofsets the part that
+ is tested for)
+
+2006-06-08 14:26 friedelwolff
+
+ * templates/translatepage.html: Don't use HTML comment for
+ JavaScript, lest kid ignores it
+
+2006-06-08 14:16 friedelwolff
+
+ * templates/translatepage.html: Make resizing javascript work again
+
+2006-06-08 12:42 friedelwolff
+
+ * translatepage.py: Decode special characters if necessary
+
+2006-06-08 12:21 friedelwolff
+
+ * templates/translatepage.html: [Forwardport] Show special
+ characters again, make copy button work again
+
+2006-06-05 07:16 friedelwolff
+
+ * pagelayout.py: Internationalise string-statistics
+
+2006-06-05 07:07 friedelwolff
+
+ * templates/register.html: Internationalise one last string
+
+2006-06-02 16:03 friedelwolff
+
+ * createpootlepot: Specify outputfile
+
+2006-06-02 14:18 friedelwolff
+
+ * adminpages.py, templates/adminlanguages.html,
+ templates/adminprojects.html, templates/adminusers.html,
+ templates/projectlangadmin.html: Internationalise admin pages
+
+2006-06-02 13:21 friedelwolff
+
+ * adminpages.py, templates/adminindex.html: Internationalise main
+ admin page
+
+2006-06-02 11:32 friedelwolff
+
+ * pagelayout.py, templates/pootlepage.html: Internationalise side
+ links
+
+2006-06-02 11:20 friedelwolff
+
+ * templates/languages.html: Use localised aboutlink
+
+2006-06-02 10:08 friedelwolff
+
+ * createpootlepot: Create pot file with "l10n" as automatic comment
+ keyword
+
+2006-06-02 09:40 friedelwolff
+
+ * templates/pootlepage.html, pagelayout.py: Resolve banner vs. logo
+ confusion
+
+2006-06-02 09:18 friedelwolff
+
+ * potree.py: Encode special characters before comparison
+
+2006-06-01 20:11 friedelwolff
+
+ * potree.py: Format new language code correctly as la_CO, allow
+ user to enter with dash instead of underscore
+
+2006-06-01 19:13 friedelwolff
+
+ * potree.py: Prefer regional dialect over generic language
+
+2006-06-01 18:45 dwaynebailey
+
+ * pootle.py: [Forwardport] pass through Pootle, jToolkit and
+ Translate Toolkit versions disable logging every internal url
+ load which outputs loads of stuff... [David Fraser]
+
+2006-06-01 17:14 dwaynebailey
+
+ * test_client.py: [Forwardport] from Pootle-loacking branch, fixes
+ for expestec content on Pootle pages.
+
+2006-06-01 17:05 dwaynebailey
+
+ * test_client.py: [Forwardport] Use lowercase HTML tags jsut as KID
+ does.
+
+2006-05-31 16:52 friedelwolff
+
+ * html/pootle.css: make default sizes biger to make a basic line
+ display even if collapsed
+
+2006-05-31 16:19 friedelwolff
+
+ * translatepage.py: Bring back resize buttons
+
+2006-05-31 12:16 friedelwolff
+
+ * translatepage.py: Do proper escaping and unescaping for view and
+ edit mode
+
+2006-05-29 11:15 friedelwolff
+
+ * translatepage.py, templates/translatepage.html: Remove dead code
+ for number of plurals (caused traceback with plurals in view
+ mode)
+
+2006-05-25 16:51 friedelwolff
+
+ * potree.py: Fix not being able to disable MO files
+
+2006-05-25 10:41 friedelwolff
+
+ * adminpages.py, templates/adminprojects.html: Fix display of MO
+ checkbox
+
+2006-05-25 08:33 friedelwolff
+
+ * projects.py: Rename variable correctly to fix version control
+
+2006-05-24 09:48 friedelwolff
+
+ * templates/adminprojects.html: Fix double display of checker
+ styles
+
+2006-05-24 00:36 friedelwolff
+
+ * templates/adminprojects.html: Display selected checkerstyle
+ correctly
+
+2006-05-23 14:11 friedelwolff
+
+ * templates/pootlepage.html: Reorder links
+
+2006-05-23 14:05 friedelwolff
+
+ * templates/pootlepage.html: Change Home->My account Add real home
+ (root of server) Seperate Log In | Register | Activate
+
+2006-05-23 13:14 friedelwolff
+
+ * html/js/correctpng.js, templates/about.html,
+ templates/activate.html, templates/adminindex.html,
+ templates/adminlanguages.html, templates/adminprojects.html,
+ templates/adminusers.html, templates/fileindex.html,
+ templates/home.html, templates/index.html,
+ templates/language.html, templates/languages.html,
+ templates/login.html, templates/navbar.html,
+ templates/options.html, templates/pootlepage.html,
+ templates/project.html, templates/projectadmin.html,
+ templates/projectlangadmin.html, templates/projects.html,
+ templates/redirect.html, templates/register.html,
+ templates/translatepage.html: Fix IE PNG transparency deficiency
+ by including conditional JavaScript only with IE
+
+2006-05-23 12:38 friedelwolff
+
+ * templates/navbar.html: Fix layout bug in Konqueror with
+ untranslated and fuzzy graphs showing even if zero
+
+2006-05-23 12:30 friedelwolff
+
+ * html/: images/down.png, images/none.png, images/up.png,
+ js/sorttable.js: New images for table sorting Use new images in
+ javascript
+
+2006-05-23 12:24 friedelwolff
+
+ * html/pootle.css, templates/fileindex.html,
+ templates/language.html, templates/navbar.html,
+ templates/project.html: Split percentages into seperate columns
+ Implement sorting for the statistics tables CSS styling necessary
+ for the sorting Cleanup some code
+
+2006-05-23 12:09 friedelwolff
+
+ * html/js/sorttable.js: Javascript to sort html tables
+
+2006-05-23 09:46 friedelwolff
+
+ * html/pootle.css: Add styling information for statistics table
+
+2006-05-23 09:44 friedelwolff
+
+ * indexpage.py, templates/project.html: Stats in the project page
+
+2006-05-23 09:38 friedelwolff
+
+ * templates/language.html: remove use of debugging overlay
+
+2006-05-22 15:02 friedelwolff
+
+ * indexpage.py, templates/fileindex.html: Updates to show
+ statistics
+
+2006-05-22 14:31 friedelwolff
+
+ * templates/pootlepage.html: New banner and logo
+
+2006-05-22 14:13 friedelwolff
+
+ * pagelayout.py: Code for new banner and logo
+
+2006-05-22 14:08 friedelwolff
+
+ * html/doc/: howto.html, index.html, resources.html: New formatting
+ to static pages
+
+2006-05-22 14:06 friedelwolff
+
+ * html/pootle.css: Forward port new style
+
+2006-05-22 13:48 friedelwolff
+
+ * html/: favicon.ico, images/language.png: Changed branding
+
+2006-05-22 13:45 friedelwolff
+
+ * html/images/: WordForge-blue.png, WordForge-white.png,
+ pootle-medium.png, pootle.png: Commit new branding on HEAD
+ (binary)
+
+2006-05-22 13:31 friedelwolff
+
+ * templates/translatepage.html: Restore original formatting of
+ notices
+
+2006-05-19 16:30 friedelwolff
+
+ * templates/translatepage.html: Restore pre-kid edit link behaviour
+ in view mode
+
+2006-05-18 13:56 friedelwolff
+
+ * indexpage.py: Fix traceback with all goals view
+
+2006-05-18 11:14 friedelwolff
+
+ * templates/project.html: Fix accidental commit of yesterday
+
+2006-05-18 10:38 friedelwolff
+
+ * translatepage.py: Fix traceback when clicking "end" in view mode
+
+2006-05-18 09:31 friedelwolff
+
+ * templates/translatepage.html: Display notice correctly and hide
+ table if notice is present
+
+2006-05-18 09:16 friedelwolff
+
+ * translatepage.py: add missing parameter to dictionary for
+ templatevars (notice)
+
+2006-05-17 18:01 friedelwolff
+
+ * templates/: adminprojects.html, language.html, navbar.html,
+ project.html: itemdata element: a row in a statistics table
+
+2006-05-17 10:39 friedelwolff
+
+ * pagelayout.py: Accessor methods for statistics and statistics
+ headings
+
+2006-05-16 13:40 friedelwolff
+
+ * adminpages.py: [Forward port] Insert input type in dictionary
+
+2006-05-16 11:20 friedelwolff
+
+ * translatepage.py: [Forward port] String keys for dictionary
+
+2006-05-16 07:54 friedelwolff
+
+ * users.py, templates/adminusers.html: [Forward port] Fix adding
+ users as admin
+
+2006-05-15 12:35 friedelwolff
+
+ * indexpage.py: [Forward port] fix checks
+
+2006-05-15 12:24 friedelwolff
+
+ * templates/redirect.html: Need raw xml to make link in message
+
+2006-05-15 11:58 friedelwolff
+
+ * users.py: templatevars is dictionary, not list
+
+2006-05-04 17:16 friedelwolff
+
+ * indexpage.py: Display file icon for files
+
+2006-05-03 20:02 dwaynebailey
+
+ * pagelayout.py, templates/pootlepage.html: Add alt tags to images
+ as we move towards XHTML Strict conformance.
+
+2006-05-03 17:51 dwaynebailey
+
+ * templates/: about.html, activate.html, fileindex.html, home.html,
+ index.html, language.html, languages.html, login.html,
+ options.html, project.html, projectlangadmin.html, projects.html,
+ redirect.html, register.html, translatepage.html: Make all
+ template pages UTF-8
+
+2006-05-03 16:13 friedelwolff
+
+ * translatepage.py: Correct </br> -> <br />
+
+2006-05-03 13:20 dwaynebailey
+
+ * benchmark.py: Comment so we know what each of the
+ sample_file_size tuple values are used for.
+
+2006-05-03 12:38 davidfraser
+
+ * benchmark.py: moved setup_server and get_session to top of class
+ added benchmark for submitting translation change
+
+2006-05-03 12:24 davidfraser
+
+ * benchmark.py: update to put po files in the right proejct
+ directory, use a normal project and potree rather than dummies
+ fix up arguments so prefsfile is picked up correctly make server
+ a member, add get_session helper print out variables for page so
+ a visual check can be done
+
+2006-05-03 12:04 dwaynebailey
+
+ * benchmark.py: Actually write to users.prefs not pootle.prefs
+ Remember the current directory (seems Pootle changes the
+ directory when the server starts, then this messes with writing
+ stats files as your now in a non-writable part of the filesystem)
+
+2006-05-03 11:01 davidfraser
+
+ * benchmark.py: added benchmarking for generating pages note that
+ this creates a PootleServer object and gets that to create the
+ pages, so no HTTP transfer is actually done this includes code to
+ set up a server with a test prefs page etc
+
+2006-05-03 07:46 friedelwolff
+
+ * projects.py: [Forward port from wordforge-0-9-branch] Reorder and
+ fix traceback with unassigned "rights"
+
+2006-04-28 17:21 friedelwolff
+
+ * pootlefile.py, projects.py, test_pootlefile.py: Rename: *
+ po.sourceindex -> locationindex (and related uses) *
+ po.msgidindex -> sourceindex * pounit.getids() -> getlocations()
+ (and related uses)
+
+2006-04-28 12:22 davidfraser
+
+ * benchmark.py, potree.py: move DummyPoTree into potree module
+ adjusted default sample sizes for quicker testing
+
+2006-04-28 12:14 davidfraser
+
+ * benchmark.py: added ability to measure stats creation and index
+ creation this uses a Dummy PO Tree (need to move into potree)
+ index testing should be more robust in particular also would be
+ nice to be able to measure stats creation and index creation
+ without reparsing etc this may require a refactor
+
+2006-04-28 11:32 davidfraser
+
+ * benchmark.py: added start of benchmarking tool
+
+2006-04-26 14:53 davidfraser
+
+ * test_client.py: fixed test for template style code
+
+2006-04-26 14:37 davidfraser
+
+ * ChangeLog: Up-to-date ChangeLog that includes branch
+
+2006-04-26 14:31 davidfraser
+
+ * __version__.py: bump version up (need to resolve this better
+ soon)
+
+2006-04-26 14:26 davidfraser
+
+ * adminpages.py, indexpage.py, pagelayout.py, pootle.py, potree.py,
+ projects.py, translatepage.py, users.py, templates/about.html,
+ templates/activate.html, templates/adminindex.html,
+ templates/adminlanguages.html, templates/adminprojects.html,
+ templates/adminusers.html, templates/fileindex.html,
+ templates/home.html, templates/index.html,
+ templates/language.html, templates/languages.html,
+ templates/login.html, templates/navbar.html,
+ templates/options.html, templates/pootlepage.html,
+ templates/project.html, templates/projectadmin.html,
+ templates/projectlangadmin.html, templates/projects.html,
+ templates/redirect.html, templates/register.html,
+ templates/translatepage.html: [forwardport from
+ Pootle-kid-conversion branch] forward ported conversion to
+ templates to HEAD This requires kid from kid.lesscode.org To see
+ the actual commit messages that produced this, look at the branch
+ This now requires jToolkit >= 0.7.7
+
+2006-04-26 14:12 davidfraser
+
+ * __version__.py (Pootle-kid-conversion): version numbers are still
+ pretty arbritary, but bump this up for fun
+
+2006-04-26 14:12 davidfraser
+
+ * adminpages.py, projects.py, templates/projectlangadmin.html
+ (Pootle-kid-conversion): [backported and adapted from friedel's
+ work on HEAD] List existing users in dropdown for rights (this
+ now lists users that don't have rights for addition) improved
+ structure of templating to support this better - rather than
+ having big dictionary per user, separate out rights and handle
+ selection in the template restructured projects.getrights to
+ support this better, including returning None if no rights
+ defined and usedefaults is set to False added method
+ getuserswithrights to projects to support this page corrected
+ unicode problems by calling .__xxxattr__() rather than xxxattr()
+ handle unicode keys in argument handling section (note that fixes
+ to jToolkit's pref handling that this uncovered will be in
+ jToolkit 0.7.7)
+
+2006-04-26 14:06 davidfraser
+
+ * users.py (Pootle-kid-conversion): [backport from friedel's commit
+ r1.13 on HEAD] Don't allow "nobody" or "default" as usernames
+
+2006-04-26 14:04 davidfraser
+
+ * pootle.prefs (Pootle-kid-conversion): [backported from friedel's
+ patch r.18] typos reported by Munzir Taha
+
+2006-04-26 14:03 davidfraser
+
+ * potree.py (Pootle-kid-conversion): [backported from friedel's
+ commit r1.12] allow dialect language names like pt_BR
+
+2006-04-26 14:02 davidfraser
+
+ * pootlefile.py (Pootle-kid-conversion): [backported from Friedel's
+ commit r1.35] don't add second header when merging files
+
+2006-04-10 16:30 davidfraser
+
+ * indexpage.py, translatepage.py, users.py (Pootle-kid-conversion):
+ removed unused widgets imports
+
+2006-04-10 16:26 davidfraser
+
+ * adminpages.py, indexpage.py, pagelayout.py, translatepage.py,
+ users.py (Pootle-kid-conversion): adjusted to not use widgets and
+ simplified templates usage slightly fixed real pagelink problem
+
+2006-04-10 15:50 davidfraser
+
+ * adminpages.py, indexpage.py, pagelayout.py, translatepage.py
+ (Pootle-kid-conversion): use new style of passing arguments into
+ localize as *arglist rather than (arg, arg, arg) requires
+ jToolkit 0.7.7 (not released yet)
+
+2006-04-10 15:48 davidfraser
+
+ * translatepage.py (Pootle-kid-conversion): missed index to
+ pagelinks
+
+2006-04-10 15:43 davidfraser
+
+ * pagelayout.py, pootle.py, users.py, templates/redirect.html
+ (Pootle-kid-conversion): redid redirect code to use templates.
+ requires jToolkit > 0.7.7 (about to be released) factored out
+ completetemplatevars so it can be used with non-PootlePage
+ templatevars changed account activation failure to show actual
+ activation page (was easier, is nicer too)
+
+2006-04-10 15:02 davidfraser
+
+ * pagelayout.py (Pootle-kid-conversion): more default variables
+ that we're redoing all over the place...
+
+2006-04-10 14:50 davidfraser
+
+ * pagelayout.py (Pootle-kid-conversion): separated out method for
+ default vars
+
+2006-04-05 13:15 davidfraser
+
+ * pagelayout.py (Pootle-kid-conversion): removed unused code
+
+2006-04-05 10:14 friedelwolff
+
+ * users.py (Pootle-kid-conversion): message change: clarify display
+ options
+
+2006-04-05 09:59 davidfraser
+
+ * translatepage.py (Pootle-kid-conversion): we already had the
+ formaction...
+
+2006-04-05 09:51 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): remember pofilename given (to prevent
+ breaking previous behaviour) make an actionurl parameter - this
+ may need further work
+
+2006-04-05 09:49 friedelwolff
+
+ * pootlefile.py: don't add second header when merging files
+
+2006-04-05 09:48 friedelwolff
+
+ * pootlefile.py: update header and header comments in mergefile()
+
+2006-04-05 09:40 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): templatise hidden widgets
+
+2006-04-05 09:08 friedelwolff
+
+ * users.py: Don't allow "nobody" or "default" as usernames
+
+2006-04-05 09:05 friedelwolff
+
+ * users.py: message change: clarify display options
+
+2006-04-05 09:02 friedelwolff
+
+ * adminpages.py: List existing users in dropdown for rights
+ assignment
+
+2006-04-05 09:00 friedelwolff
+
+ * adminpages.py: Refix language admin page with existing variables
+
+2006-04-05 08:48 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): since review only needs skip, refactor
+ so we don't have a separate buttons component
+
+2006-04-05 08:47 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): templatise buttons - makes this code
+ much simpler :-)
+
+2006-04-05 08:45 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): small cleanups for translation page
+
+2006-04-05 08:43 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): templatise review widgets (not buttons
+ yet)
+
+2006-04-05 08:41 davidfraser
+
+ * pootle.py (Pootle-kid-conversion): while we're still debugging
+ the templates, and printing out template dictionaries, we should
+ make them look nice...
+
+2006-04-05 08:40 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): templatise items in edit mode (not
+ buttons or spellcheck yet)
+
+2006-04-05 08:38 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): templatise translation items in view
+ mode, enable widgetising others include test display of old
+ widgets
+
+2006-04-05 08:36 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): templatise translation item table, by
+ wrapping the translation items as widgets temporarily
+
+2006-04-05 08:34 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): templatise assigns, notice, check text,
+ title
+
+2006-04-05 08:32 davidfraser
+
+ * pagelayout.py (Pootle-kid-conversion): fix commans that should be
+ outside localize...
+
+2006-04-05 08:30 davidfraser
+
+ * adminpages.py, pagelayout.py, templates/projectlangadmin.html
+ (Pootle-kid-conversion): templatise TranslationProjectAdminPage
+ remove unneccessary widgets code ensure search template isn't
+ attempted on non-templated page fix localization comma mistake
+
+2006-03-29 13:23 friedelwolff
+
+ * adminpages.py: Remove duplicated plural equation in admin. Fix
+ for bug 124
+
+2006-03-29 09:17 dwaynebailey
+
+ * pagelayout.py (Pootle-kid-conversion): Fix some safe localize
+ errors. We shouldn't be passing the commas to the localize
+ function. This isn't ideal as you can't localize the comma. But
+ lets fix that later.
+
+2006-03-28 17:03 davidfraser
+
+ * adminpages.py, indexpage.py, pagelayout.py, translatepage.py,
+ users.py (Pootle-kid-conversion): [Dwayne Bailey, from bug 122]
+ Make all the localize calls that involve variables use the safe
+ localize and nlocalize funtions.
+
+2006-03-28 13:54 friedelwolff
+
+ * adminpages.py: Fix double rows in user admin
+
+2006-03-28 10:32 davidfraser
+
+ * pagelayout.py (Pootle-kid-conversion): handle search box only
+ being present if search variable included
+
+2006-03-27 16:09 dwaynebailey
+
+ * pootle.prefs: Another spelling/grammar fixes.
+
+2006-03-27 14:38 friedelwolff
+
+ * pootle.prefs: typos reported by Munzir Taha
+
+2006-03-24 18:21 friedelwolff
+
+ * potree.py: allow dialect language names like pt_BR
+
+2006-03-24 17:29 davidfraser
+
+ * translatepage.py, templates/translatepage.html
+ (Pootle-kid-conversion): initiale templatising of translatepage
+ (only nav bar etc, not actual translation area which is still
+ static)
+
+2006-03-24 17:23 davidfraser
+
+ * templates/translatepage.html (Pootle-kid-conversion): added rough
+ start to translation page
+
+2006-03-24 17:22 davidfraser
+
+ * indexpage.py (Pootle-kid-conversion): don't need this old call
+
+2006-03-24 17:20 davidfraser
+
+ * templates/pootlepage.html (Pootle-kid-conversion): moved search
+ into pootlepage from fileindex
+
+2006-03-24 17:06 davidfraser
+
+ * pagelayout.py, templates/fileindex.html (Pootle-kid-conversion):
+ add separators to path in navbar move search form into page
+ layout
+
+2006-03-24 16:59 davidfraser
+
+ * indexpage.py, pagelayout.py (Pootle-kid-conversion): we don't use
+ old widgets version anymore
+
+2006-03-24 16:57 davidfraser
+
+ * indexpage.py, pagelayout.py (Pootle-kid-conversion): removed
+ unused addfolderlinks functions (could want them back, but they'd
+ have to be done in templates now anyway)
+
+2006-03-24 16:55 davidfraser
+
+ * indexpage.py (Pootle-kid-conversion): remove arguments that might
+ get left over from forms probably overkill, but some forms have
+ different actions and we need to make sure arguments intended for
+ their other actions don't make their way into the URLs
+
+2006-03-24 16:53 davidfraser
+
+ * indexpage.py, templates/navbar.html (Pootle-kid-conversion): fix
+ up users to not contain usernames twice, make form a post
+
+2006-03-24 16:52 davidfraser
+
+ * indexpage.py, templates/navbar.html (Pootle-kid-conversion):
+ templatised goal form
+
+2006-03-24 16:46 davidfraser
+
+ * indexpage.py, templates/fileindex.html, templates/navbar.html
+ (Pootle-kid-conversion): further rationalising of navbar items
+
+2006-03-24 16:44 davidfraser
+
+ * indexpage.py, templates/fileindex.html, templates/navbar.html
+ (Pootle-kid-conversion): moved common elements into navbar.html
+ (including from main navigation bar)
+
+2006-03-24 16:39 davidfraser
+
+ * indexpage.py, templates/fileindex.html (Pootle-kid-conversion):
+ rather than using a separate variable for each item, merge them
+ to a common interface so they can be combined later...
+
+2006-03-24 16:38 davidfraser
+
+ * templates/navbar.html (Pootle-kid-conversion): need navbar
+ template
+
+2006-03-24 16:35 davidfraser
+
+ * indexpage.py, templates/fileindex.html (Pootle-kid-conversion):
+ templatised assigns
+
+2006-03-24 16:34 davidfraser
+
+ * users.py (Pootle-kid-conversion): LoginPage needs self.localize
+
+2006-03-24 02:43 dwaynebailey
+
+ * pootle.prefs: Add a UTF-8 marker to the file to ensure we don't
+ have encoding problems.
+
+2006-03-23 18:08 davidfraser
+
+ * indexpage.py, templates/fileindex.html (Pootle-kid-conversion):
+ converted more stats stuff to templates
+
+2006-03-23 17:54 friedelwolff
+
+ * adminpages.py: prevent two rows for new projects
+
+2006-03-23 17:35 davidfraser
+
+ * indexpage.py, templates/fileindex.html (Pootle-kid-conversion):
+ templatise getactionlinks factored out the goal form
+
+2006-03-23 16:47 davidfraser
+
+ * indexpage.py, templates/fileindex.html (Pootle-kid-conversion):
+ set up file item (still using actions and stats made out of
+ widgets)
+
+2006-03-23 16:31 davidfraser
+
+ * indexpage.py, pagelayout.py, templates/fileindex.html
+ (Pootle-kid-conversion): replaced language page with templated
+ version started replacing fileindex with templated version - this
+ is a big job, this is part 1 goals and directories are templated,
+ but the file entry is still generated using the old widgets code
+ and then shoved into the template ungracefully likewise the
+ actionlinks etc that get used in directories/files are still
+ using old code
+
+2006-03-23 15:31 davidfraser
+
+ * templates/language.html (Pootle-kid-conversion): added page for
+ language page listing projects
+
+2006-03-23 10:31 davidfraser
+
+ * __version__.py: version 0.7a1
+
+2006-03-23 10:26 davidfraser
+
+ * __version__.py (Pootle-kid-conversion): version 0.7a1k - for the
+ kid templates branch
+
+2006-03-23 09:55 davidfraser
+
+ * ChangeLog (Pootle-kid-conversion): added more of a ChangeLog
+
+2006-03-17 16:58 davidfraser
+
+ * adminpages.py, indexpage.py, pagelayout.py, users.py,
+ templates/pootlepage.html (Pootle-kid-conversion): refactored
+ banner layout so it works with templates requires template vars
+ to be initialised before call to base class constructor
+
+2006-03-17 16:52 davidfraser
+
+ * adminpages.py, templates/projectadmin.html
+ (Pootle-kid-conversion): converted project admin page to template
+
+2006-03-17 16:16 davidfraser
+
+ * templates/index.html (Pootle-kid-conversion): strip out
+ unneccessary tags
+
+2006-03-17 16:14 davidfraser
+
+ * indexpage.py, templates/project.html (Pootle-kid-conversion):
+ converted ProjectLanguageIndex to template
+
+2006-03-17 15:29 davidfraser
+
+ * indexpage.py, templates/languages.html, templates/projects.html
+ (Pootle-kid-conversion): converted projects page and languages
+ page to templates (they can just reuse the index page code)
+
+2006-03-17 15:23 davidfraser
+
+ * users.py, templates/options.html (Pootle-kid-conversion):
+ converted options page to template
+
+2006-03-17 14:43 davidfraser
+
+ * indexpage.py, templates/home.html (Pootle-kid-conversion):
+ changed home page to template
+
+2006-03-17 14:16 davidfraser
+
+ * indexpage.py, templates/index.html (Pootle-kid-conversion):
+ converted index page to template currently need a hacky sep
+ attribute to join a list with commas without putting one on the
+ end...
+
+2006-03-17 13:50 davidfraser
+
+ * users.py, templates/login.html (Pootle-kid-conversion): replaec
+ LoginPage with template (and don't derive from server.LoginPage
+ which would make it all complicated)
+
+2006-03-17 12:15 davidfraser
+
+ * users.py, templates/register.html (Pootle-kid-conversion):
+ converted registration page to template
+
+2006-03-17 12:02 davidfraser
+
+ * users.py, templates/activate.html (Pootle-kid-conversion):
+ converted ActivationPage to template
+
+2006-03-17 11:51 davidfraser
+
+ * indexpage.py, templates/about.html (Pootle-kid-conversion):
+ converted about page to template
+
+2006-03-17 11:22 davidfraser
+
+ * test_client.py (Pootle-kid-conversion): fixed case of A tags. we
+ should really use the DOM / a scraper to test
+
+2006-03-17 11:15 davidfraser
+
+ * adminpages.py (Pootle-kid-conversion): remove old widgets cruft
+
+2006-03-17 10:54 davidfraser
+
+ * templates/: adminindex.html, adminlanguages.html,
+ adminprojects.html, adminusers.html, pootlepage.html
+ (Pootle-kid-conversion): use overlays to include banner and
+ sidebar (requires Overlay support, not yet in jToolkit 0.7.5)
+
+2006-03-17 10:53 davidfraser
+
+ * pootle.py (Pootle-kid-conversion): add loadurl function for
+ handling DOMOverlay includes
+
+2006-03-17 10:23 davidfraser
+
+ * potree.py (Pootle-kid-conversion): handle the special chars being
+ in utf-8
+
+2006-03-17 10:16 davidfraser
+
+ * templates/: adminindex.html, adminlanguages.html, adminusers.html
+ (Pootle-kid-conversion): batch conversion of templates to kid
+
+2006-03-17 09:53 davidfraser
+
+ * adminpages.py, templates/adminprojects.html
+ (Pootle-kid-conversion): convert adminprojects template to kid
+ fairly straightforward in the end. expects use of attribify (not
+ in jToolkit 0.7.5)
+
+2006-03-17 09:51 davidfraser
+
+ * pootle.py (Pootle-kid-conversion): bring templates back, for the
+ branch
+
+2006-03-16 16:41 davidfraser
+
+ * test_client.py: added test for merging files (we may want to
+ change how it actually works)
+
+2006-03-16 13:18 friedelwolff
+
+ * indexpage.py, pootle.py, projects.py: Generate GSI's from within
+ Pootle
+
+2006-03-13 12:44 friedelwolff
+
+ * pootlefile.py: rename more output (i.t.o. __str__) to output
+
+2006-03-13 11:25 friedelwolff
+
+ * pootlefile.py, projects.py, test_create.py, test_pootlefile.py:
+ rename source(s) (i.t.o. source location) to id(s)
+
+2006-03-13 10:34 davidfraser
+
+ * test_client.py: added test for uploading archive remove extra
+ userprefs
+
+2006-03-13 10:22 friedelwolff
+
+ * pootlefile.py, projects.py, test_create.py: rename source (i.t.o.
+ __str__) to output
+
+2006-03-13 10:12 davidfraser
+
+ * test_client.py: fixed up response from post made
+ setup_testproject_dir return podir
+
+2006-03-13 10:03 davidfraser
+
+ * test_client.py: factored out post_request and setup_testproject
+
+2006-03-10 18:14 davidfraser
+
+ * test_create.py: refactored so we clear the directory each time in
+ the NoReuse system
+
+2006-03-10 18:11 davidfraser
+
+ * test_client.py: added test for uploading new file, checking it is
+ listed, and is created on disk, downloading the file and checking
+ its the same this requires constructing multipart posts, so added
+ import for that and os for looking at disk
+
+2006-03-10 17:39 davidfraser
+
+ * potree.py, projects.py, test_client.py: handle missing project
+ directories when trying to add a language
+
+2006-03-10 17:37 davidfraser
+
+ * test_client.py: allow test methods to specify user preferences in
+ an attribute added test for adding a language to a project
+
+2006-03-10 17:16 davidfraser
+
+ * test_client.py, test_create.py: modified test setup to have test
+ projects added tests for admin rights, and for adding a project
+
+2006-03-07 14:41 dwaynebailey
+
+ * pootle.prefs: Make sure that by default we have a defined
+ Templates directory
+
+2006-03-07 13:06 davidfraser
+
+ * indexpage.py: call the translate toolkit by its full name
+
+2006-03-06 09:16 friedelwolff
+
+ * indexpage.py: Show toolkit version
+
+2006-03-03 16:15 friedelwolff
+
+ * pootlefile.py, projects.py: Use more of base class and new plural
+ infrastructure
+
+2006-03-02 17:17 davidfraser
+
+ * test_client.py, test_create.py: fix up login and test for login
+
+2006-03-02 16:40 davidfraser
+
+ * test_client.py, test_cmdlineserver.py, test_create.py: added test
+ infrastructure for testing web server
+
+2006-03-02 15:23 davidfraser
+
+ * pootlefile.py, projects.py, test_pootlefile.py: altered
+ pootlefile to make it easier to construct with no project (uses
+ DummyProject) also made usable if no file has been parsed yet (so
+ stats file is removed if main file doesn't exist) altered
+ DummyProject so it won' scanpofiles created helper class
+ pootletetfile in TestPootleFile to negotiate directory etc
+
+2006-03-02 12:47 davidfraser
+
+ * pootlefile.py: if someone does something strange and the msgid
+ has a plural but there's no msgstr dict, handle it normally (this
+ is still insane, but we should check...)
+
+2006-02-24 10:56 friedelwolff
+
+ * test_pootlefile.py: Tests for pootlefile
+
+2006-02-24 10:55 friedelwolff
+
+ * pootlefile.py: joinlinebreaks defaults to false getunquoted...
+ Make statscalculation optional in pootlefile constructor for unit
+ test typo in comment
+
+2006-02-23 12:20 friedelwolff
+
+ * test_pootlefile.py: First unit tests for pootlefile.py
+
+2006-02-21 12:14 friedelwolff
+
+ * pootlefile.py: Prevent infinte recursion from
+ pootlefile.__str__()
+
+2006-02-21 07:41 friedelwolff
+
+ * pootlefile.py: pootlefile.pounits -> pootlefile.units
+
+2006-02-14 17:50 davidfraser
+
+ * pootlefile.py, projects.py: replace getunquotedstr with
+ unquotefrompo
+
+2006-02-02 11:37 davidfraser
+
+ * pootlefile.py: use new poelement encoding attribute if present...
+ spelling fix
+
+2006-01-27 12:09 dwaynebailey
+
+ * pootlefile.py: Changed poelement to pounit. Changed quite a few
+ that probably didn't need changing buts its good for the
+ refactoring goo.
+
+2005-12-23 11:13 davidfraser
+
+ * pootlefile.py, projects.py: replaced tolines calls with str calls
+
+2005-11-29 12:08 davidfraser
+
+ * indexpage.py: fixed links for directory items
+
+2005-10-24 09:52 davidfraser
+
+ * users.py: fixed missing : syntax errors
+
+2005-10-21 15:40 davidfraser
+
+ * users.py: corrected horrendous code that replaced the email
+ address with the fullname try handle settting all the parameters
+ correctly
+
+2005-10-21 15:13 davidfraser
+
+ * adminpages.py: fixed mistaken variable name that made all the new
+ entry items checkboxes
+
+2005-10-21 15:00 davidfraser
+
+ * pootle.py: remove templating - rather move towards a better
+ structure later
+
+2005-10-18 16:08 davidfraser
+
+ * adminpages.py: wrong word - projects is actually a module, we're
+ looking at languages here
+
+2005-10-11 10:19 davidfraser
+
+ * pootlefile.py: update to work with new checker.run_filters return
+ style
+
+2005-08-09 00:16 dwaynebailey
+
+ * templates/: adminindex.html, adminlanguages.html,
+ adminprojects.html, adminusers.html: Made encoding UTF-8 as these
+ pages will contain UTF-8 encoded content.
+
+2005-08-05 13:49 dwaynebailey
+
+ * projects.py: This partially fixes:
+ http://bugs.wordforge.org/show_bug.cgi?id=28
+
+ We now do not use strings that are marked fuzzy with pootle live
+ translation.
+
+2005-08-03 15:54 davidfraser
+
+ * adminpages.py, templates/adminindex.html,
+ templates/adminlanguages.html, templates/adminprojects.html,
+ templates/adminusers.html: converted languages, projects, users
+ admin pages to use templates
+
+2005-07-27 01:30 dwaynebailey
+
+ * pagelayout.py, html/pootle.css, html/doc/howto.html,
+ html/doc/index.html, html/doc/resources.html: Corrected CSS
+ errors identified using http://jigsaw.w3.org/css-validator
+
+2005-07-27 01:18 dwaynebailey
+
+ * indexpage.py, pagelayout.py, translatepage.py,
+ html/doc/howto.html, html/doc/index.html,
+ html/doc/resources.html: Make Pootle HTML 4.01 Transitional
+ compliant
+
+2005-07-02 22:51 davidfraser
+
+ * pootle.py: .mo files were being left out...
+
+2005-07-02 22:49 davidfraser
+
+ * pootlefile.py, projects.py: move all the converters out of
+ pootlefile into projects, use the classes automatically (assume
+ it has a convertfile method that takes a pofile object as
+ argument and returns either a string or an object with a tolines
+ method)
+
+2005-07-02 18:55 davidfraser
+
+ * pootle.py, projects.py: the etag needs to be a string or internal
+ comparisons fail and we need to actually return it when serving
+ the file :-)
+
+2005-07-02 18:47 davidfraser
+
+ * pootle.py, projects.py: use the convert function directly from
+ pootle.py to serve converted files it now returns a tuple that is
+ (etag, filepath) if the file is served from disk, or (False,
+ contents) otherwise this is a bit convoluted and hopefully the
+ interface will settle down as more converter standardisation is
+ done
+
+2005-07-02 18:14 davidfraser
+
+ * projects.py: added generic code for caching converted files.
+
+2005-07-02 17:41 davidfraser
+
+ * pootle.py, projects.py: allow getting a pofile without parsing
+ it, and use this to serve .po files straight from disk
+
+2005-07-02 17:31 davidfraser
+
+ * conflict2suggest.py: added conflict2suggest which converts
+ msgmerge conflicts to Pootle suggestions
+
+2005-07-02 16:11 davidfraser
+
+ * pootle.py, projects.py: move DummyStatsProject to projects.py and
+ split off base DummyProject
+
+2005-07-02 16:07 davidfraser
+
+ * conftest.py, test_init.py: added conftest that stops py.test from
+ searching po directory for python tests (which could take hours
+ if its big) and basic init test
+
+2005-07-02 09:07 dwaynebailey
+
+ * README: Change the bug address to bugs.wordforge.org
+
+2005-07-01 23:06 davidfraser
+
+ * projects.py: when we were using the index, we weren't checking
+ the match names. if using the index, do a separate sesarch
+ (without text matching) for match names added some funny logic to
+ merge the two lists, once they are integrated this should be
+ simpler this should fix
+ http://bugs.wordforge.org/show_bug.cgi?id=6
+
+2005-07-01 22:39 davidfraser
+
+ * translatepage.py: we can't reliably determine positions in
+ strings or changes unless they are unicode due to multibyte
+ characters so decode everything to unicode before calculating
+ differences (and use these strings when displaying the difference
+ markers) fixes http://bugs.wordforge.org/show_bug.cgi?id=4
+
+2005-07-01 20:57 davidfraser
+
+ * __init__.py, __version__.py, adminpages.py, filelocations.py,
+ indexpage.py, pagelayout.py, pootle.py, pootlefile.py, potree.py,
+ projects.py, test_indexing.py, translatepage.py, users.py,
+ versioncontrol.py: added encoding markers for Python source
+ [Simos Xenitellis]
+
+2005-07-01 13:22 davidfraser
+
+ * users.py: removed test stuff I left in by mistake
+
+2005-07-01 12:24 davidfraser
+
+ * users.py: add support for unicode usernames (using __hasattr__
+ and __getattr__ where required)
+
+2005-07-01 11:12 dwaynebailey
+
+ * README: Added a reference section and a section about reporting
+ bugs.
+
+2005-07-01 09:59 davidfraser
+
+ * translatepage.py: return focus to the input box after copying...
+
+2005-07-01 09:55 davidfraser
+
+ * translatepage.py, CREDITS: prevent bug 2: searching in xxx.po?
+ URL with no results and po file longer than pagesize gives error
+ [Matt Chisholm] added Matt and Simos to CREDITS
+
+2005-06-30 23:26 dwaynebailey
+
+ * translatepage.py: Add acceskeys for the common tasks on the
+ translation interface
+
+2005-06-30 20:39 dwaynebailey
+
+ * indexpage.py, pootle.py, pootlefile.py, projects.py: Allow us to
+ get Qt .ts files from Pootle. We should I guess introduce a
+ system that allows you to switch on which file types are valid
+ for a project as most will not need .ts files.
+
+2005-06-30 20:14 davidfraser
+
+ * users.py: handle null translations which are still dicts
+
+2005-06-30 16:34 davidfraser
+
+ * pootle.py: if not actually running the webserver, set the
+ servertype to dummy so we don't try to bind the port
+
+2005-06-30 12:00 davidfraser
+
+ * projects.py: fixed bad logic: if items are given we always want
+ to update exactly those items
+
+2005-06-29 10:17 davidfraser
+
+ * translatepage.py: only include spellchecking UI if we can check
+ that language (the values are cached so its not a performance hit
+ to do this each time)
+
+2005-06-28 23:14 davidfraser
+
+ * pootle.py: pass the language code to the spell checker
+
+2005-06-28 23:10 davidfraser
+
+ * translatepage.py: use spell checkable TextArea widgets
+
+2005-06-28 22:53 davidfraser
+
+ * filelocations.py, pootle.py: added module filelocations to
+ identify directories etc (moved existing code there) added
+ spellui backend support added support for reading js files from
+ jToolkit as well as html/js
+
+2005-06-28 21:33 davidfraser
+
+ * translatepage.py: make the focus script work with plurals by
+ selecting the first text box
+
+2005-06-28 21:27 davidfraser
+
+ * translatepage.py: set the focus to the textarea so people can
+ start typing straight away
+
+2005-06-28 19:57 davidfraser
+
+ * pootlefile.py: add x_generator member and update PO files to say
+ they have been edited by Pootle revise the way we add headers...
+
+2005-06-28 12:05 davidfraser
+
+ * pootle.py: can't use pofile to get pomtime when we don't have it
+ (for other file types) this should be fixed up later
+
+2005-06-28 11:10 davidfraser
+
+ * pootlefile.py, projects.py: make sure new po files use
+ pootleelement so we can use unquotedmsgstr etc if unquotedmsgstr
+ is a list (as returned by get method) then handle it properly
+
+2005-06-28 11:08 davidfraser
+
+ * potree.py: fixed using same variable name for local and outer
+ variable
+
+2005-06-27 22:09 davidfraser
+
+ * pootle.py: added code to allow HTTP caching of source files using
+ modified time of po file
+
+2005-06-26 21:42 davidfraser
+
+ * __version__.py: version 0.6.3
+
+2005-06-26 21:38 davidfraser
+
+ * translatepage.py: handle blank pofilename in form
+
+2005-06-26 21:37 davidfraser
+
+ * projects.py: handle quickstats when creating from templates
+
+2005-06-26 21:36 davidfraser
+
+ * projects.py: jToolkit 0.6.5+ uses HAVE_INDEXER not HAVE_PYLUCENE
+
+2005-06-26 21:21 davidfraser
+
+ * TODO, adminpages.py: don't allow people to add templates from
+ templates updated TODO
+
+2005-06-26 21:17 davidfraser
+
+ * pootle.py, potree.py, projects.py: added support for
+ TemplatesProject like TranslationProject but for pot files
+
+2005-06-26 20:45 davidfraser
+
+ * users.py: added ability to set a language for the ui in the user
+ preferences, and logic to make it work nicely if somebody
+ explicitly selects a language on login, and they don't have
+ uilanguage set, it will be set if somebody goes to the options
+ page, it will select the first of their chosen languages if
+ uilanguage not set
+
+2005-06-26 20:14 davidfraser
+
+ * pootle.py: get languagenames from getlanguages so it is sorted
+
+2005-06-26 19:30 davidfraser
+
+ * test_indexing.py: changed manner of generating search results
+
+2005-06-26 19:29 davidfraser
+
+ * pootle.py: moved option parsing into a class
+
+2005-06-26 19:06 davidfraser
+
+ * indexpage.py: added some information on a language to the main
+ language page (code, name, plural info)
+
+2005-06-23 18:05 davidfraser
+
+ * pootlefile.py: add a copy method to Search
+
+2005-06-23 17:48 davidfraser
+
+ * test_indexing.py: added some tests of indexing code (using
+ py.test)
+
+2005-06-23 17:44 davidfraser
+
+ * projects.py: moved search for filenames out of matchessearch and
+ into indexsearch so it isn't repeated for each filename
+
+2005-06-23 17:37 davidfraser
+
+ * projects.py: make sure pofilenames are updated in index in sorted
+ order added items option to updateindex that lets you just update
+ particular items added optimize option to updateindex that lets
+ you not optimize on commit (so a batch optimize can be done
+ later) do a batch optimize on startup make sure quickstats are
+ sorted update the index for a particular item when it is changed
+
+2005-06-23 12:57 davidfraser
+
+ * projects.py: factored out new indexsearch method which
+ understands pootlefile.Search, use this to find items quicker too
+ added note about updating files to help debugging handle
+ lastpofilename being a blank string
+
+2005-06-23 12:32 davidfraser
+
+ * projects.py: fixed up the index updating logic this is now done
+ in one block per pofile, since we need to delete and add in each
+ step and you cannot do both at the same time also use
+ ExactAnalyzer for pofilename so it doesn't try match different
+ parts as words check exactly how many items match the correct
+ pomtime / wrong pomtime and use this to work out whether to
+ update use searcher.makeQuery rather than building PyLucene
+ queries ourselves
+
+2005-06-23 10:10 davidfraser
+
+ * projects.py: adjusted to use jToolkit.data.indexer rather than
+ using PyLucene directly (more advanced locking etc) also store
+ each item separately rather than one document per file update
+ code still needs improvement...
+
+2005-06-20 20:32 dwaynebailey
+
+ * TODO: More plural work
+
+2005-06-20 14:57 davidfraser
+
+ * adminpages.py, users.py: make sure languages are sorted by name
+ not iso code
+
+2005-06-16 07:45 davidfraser
+
+ * pootle.py: added DummyStatsProject so quickstats can be updated
+ in refreshstats, use projectcode and languagecode from
+ potree.getcodesfordir if dirname is a project directory calculate
+ quickstats in refreshstats
+
+2005-06-16 07:43 davidfraser
+
+ * potree.py: added method to work out if a directory is a project
+ or language directory and return codes
+
+2005-06-16 06:58 davidfraser
+
+ * indexpage.py, projects.py: return dictionary from getquickstats,
+ so we don't get parameter orders confused :-)
+
+2005-06-15 22:46 davidfraser
+
+ * pootle.py: handle quickstats in refresh
+
+2005-06-15 22:41 davidfraser
+
+ * potree.py: allow a limit to depth of search for gnu files
+ (default 3 levels) to prevent it consuming lots of resources
+
+2005-06-15 22:40 davidfraser
+
+ * indexpage.py: use quickstats for language index
+
+2005-06-15 22:39 davidfraser
+
+ * pagelayout.py: handle the style of stats used for quickstats
+ (lengths rather lists of strings, counts of words included)
+
+2005-06-15 22:39 davidfraser
+
+ * pootlefile.py, projects.py: added quickstats method to prevent
+ scanning through all the stats files for project summaries
+
+2005-06-14 14:38 davidfraser
+
+ * __version__.py: version 0.6.2
+
+2005-06-13 21:49 davidfraser
+
+ * TODO: added some more suggestions
+
+2005-06-13 21:49 davidfraser
+
+ * adminpages.py: added ability to select multiple languages for
+ update simultaneously
+
+2005-06-13 21:37 davidfraser
+
+ * adminpages.py, indexpage.py, potree.py: added getlanguages method
+ which can return languagecode, languagename tuples sorted by name
+ used this wherever sensible to get sorted language names
+
+2005-06-13 21:29 davidfraser
+
+ * translatepage.py: added code to get pofilename if present in the
+ URL (dirfilter)
+
+2005-06-13 21:27 davidfraser
+
+ * TODO: some suggestions from Clytie
+
+2005-06-13 21:23 davidfraser
+
+ * TODO: add some new management ideas
+
+2005-06-01 16:39 dwaynebailey
+
+ * pootle.prefs: Added examples of nplurals and pluralequation and
+ an explanation of what each is for.
+
+2005-05-31 23:31 dwaynebailey
+
+ * users.prefs: Extensive comments added to the default user file.
+ Show the structure and items present for each user and explains
+ what each means. Also added a user startup password startup that
+ is commented out. Uncommenting this will create a user with
+ siteadmin rights that is usefull when you first setup Pootle.
+
+2005-05-30 21:18 dwaynebailey
+
+ * .cvsignore: Ignore those .pyc files
+
+2005-05-29 23:43 dwaynebailey
+
+ * indexpage.py: Correctly calculate the avarage translation
+ completion percentage on the a languages project list page.
+
+2005-05-29 21:28 dwaynebailey
+
+ * adminpages.py: Users are now sorted alphabetically on username
+
+2005-05-21 13:04 davidfraser
+
+ * TODO: updated TODO to reflect goals work, assignment, word counts
+ also added a few new issues
+
+2005-05-21 12:59 davidfraser
+
+ * projects.py: use getitemslen to count words
+
+2005-05-21 09:33 davidfraser
+
+ * indexpage.py: allow assigning of unassigned or unassigned and
+ untranslated elements
+
+2005-05-21 09:33 davidfraser
+
+ * pootlefile.py, projects.py: added getunassigned method to
+ pootlefile, and let search.assignedto == [None] mean search for
+ unassigned elements fill out the search logic for unassigned
+ added getitemslen method as we often need this in pootlefile, but
+ transelements isn't always available
+
+2005-05-21 09:08 davidfraser
+
+ * indexpage.py: allow admin to specify whether to assign all
+ strings or just untranslated strings
+
+2005-05-20 23:18 davidfraser
+
+ * projects.py: sanity check on items in stats
+
+2005-05-20 23:15 davidfraser
+
+ * indexpage.py: fix statistics calculation (logic was inverted) for
+ quick translate my strings
+
+2005-05-20 23:13 davidfraser
+
+ * pootlefile.py: added sanity check on item values for assigns if
+ we have stats (which we don't always when we parse the assigns)
+
+2005-05-20 23:02 davidfraser
+
+ * __version__.py: version 0.6.1 with lots of goals support
+
+2005-05-20 23:01 davidfraser
+
+ * indexpage.py, translatepage.py: improve silly dummy logic (why
+ did I ever put a dummy user there???)
+
+2005-05-20 23:00 davidfraser
+
+ * indexpage.py: added quickminelink (this is getting a bit verbose,
+ but still useful)
+
+2005-05-20 22:56 davidfraser
+
+ * indexpage.py: added "mine" linksrequired option which links to
+ all strings assigned to the current user... and display it fix
+ actionlinks basename being index.html for goals as it messed up
+ all the links
+
+2005-05-20 22:41 davidfraser
+
+ * indexpage.py: added scripts etc so that a user can convert a
+ standard user select to a multiselect for auto-assigning to
+ multiple users give the goalform a decent name so it can be
+ accessed via javascript
+
+2005-05-20 22:17 davidfraser
+
+ * projects.py: allow assignpoitems to handle multiple users like
+ reassignpoitems made assignpoitems distribute the given strings
+ between multiple users based on wordcount
+
+2005-05-20 22:15 davidfraser
+
+ * indexpage.py: shouldn't pass goalname as basename to getitemstats
+ added TODO about letting getassigndetails just use a particular
+ action (for goals to only display assigns to the correct goal)
+
+2005-05-20 21:54 davidfraser
+
+ * indexpage.py: allow possibility of unexpected usernames appearing
+
+2005-05-20 21:53 davidfraser
+
+ * projects.py: only add the user stats if there are some items
+ assigned
+
+2005-05-20 21:51 davidfraser
+
+ * pagelayout.py: never allow 'allowmultikey' into the link (used
+ for internal jToolkit marking of what key values can have
+ multiple values)
+
+2005-05-20 21:41 davidfraser
+
+ * indexpage.py: detect what users a file has been assigned to for
+ the current goal (or generally) rename goalfile to editfilegoal
+ to prevent confusion (same variable used for actual goal
+ filename) handle assignments to multiple users properly when
+ present
+
+2005-05-20 21:40 davidfraser
+
+ * projects.py: allow getassignstats to filter by action factor out
+ combineassignstats from combinestats so it can be user to search
+ separately by action (for goals)
+
+2005-05-20 21:23 davidfraser
+
+ * pootlefile.py, projects.py: added method reassignpoitems which
+ clears all existing assignments for that action and sets to a
+ list of users made unassign (and therefore unassignpoitems) take
+ username=None to remove from all users
+
+2005-05-20 21:22 davidfraser
+
+ * indexpage.py: use reassignpoitems, and have a unique action for
+ each goalname
+
+2005-05-20 21:09 davidfraser
+
+ * indexpage.py: use assignment to handle setting user on goals (and
+ process goalnames so it doesn't stay in URL) only show user
+ editing if session has admin rights fix __dummy__ check
+
+2005-05-20 21:07 davidfraser
+
+ * pootlefile.py: clarify invalid assigns messages, and fix test (so
+ it doesn't give problems if - in filename or action)
+
+2005-05-20 21:05 davidfraser
+
+ * pagelayout.py: only have , after non-empty filestats
+
+2005-05-20 20:44 davidfraser
+
+ * indexpage.py, pagelayout.py: further rearrange stats strings to
+ make localize more consistent
+
+2005-05-20 20:35 davidfraser
+
+ * indexpage.py, pagelayout.py, html/pootle.css: made a separate css
+ class for string statistics so they don't stand out too much also
+ separate out the stats string generation a bit
+
+2005-05-20 19:29 davidfraser
+
+ * indexpage.py: make sure main navbar actionlinks don't have the
+ goal in inadvertently by popping it earlier allow anyone to show
+ goals
+
+2005-05-20 19:20 davidfraser
+
+ * adminpages.py: added option to change home page
+
+2005-05-20 19:18 davidfraser
+
+ * pootle.prefs, pootle.py: allow preferences to set home page to a
+ different value
+
+2005-05-20 19:14 davidfraser
+
+ * indexpage.py: show stats of how much of the assigned work is
+ translated ("complete" vars)
+
+2005-05-20 19:09 davidfraser
+
+ * projects.py: handle items that are out of range when counting
+ words (ignore them)
+
+2005-05-20 19:08 davidfraser
+
+ * indexpage.py: made assigned stats based on words rather than
+ strings added TODO: stats for goalless don't work
+
+2005-05-19 22:06 davidfraser
+
+ * projects.py: redid removefilefromgoal to handle directories
+ properly when file/directory is not direct member of goal cleaned
+ up the getgoalfiles code a bit, make sure it never returns
+ duplicates made expanddirs return subdirectories as well as
+ subfiles if includedirs (and adjust for browsefiles not returning
+ final /) renamed loop variables to goaldir if they're dealing
+ with dirs, for readability sort goal file list for readability
+
+2005-05-19 21:25 davidfraser
+
+ * projects.py: use better intelligence for working out which
+ partialdirs are already in goaldirs
+
+2005-05-19 21:20 davidfraser
+
+ * projects.py: make sure partialdirs end with a / otherwise they'll
+ be counted as different from dirs already present
+
+2005-05-19 21:15 davidfraser
+
+ * pagelayout.py: rearranged goal links to simply show link to all
+ goals if current goal is activated
+
+2005-05-19 21:01 davidfraser
+
+ * indexpage.py, pagelayout.py: added goal option to makenavbarpath
+ which shows the goal as though it were a path. enhanced
+ getbrowseurl, getitems, getfileitem, getdiritem to handle custom
+ args for makelink so far this is just used for the goal setting
+ (files in current goal include goal in link)
+
+2005-05-19 15:41 davidfraser
+
+ * adminpages.py: made taldom optional for people who haven't
+ upgraded jToolkit yet
+
+2005-05-19 14:25 dwaynebailey
+
+ * translatepage.py: Using escapetext on the translations that are
+ being viewed. This will fix the visual error that translations
+ without the proper wrapping that you see in the original.
+
+2005-05-19 14:06 dwaynebailey
+
+ * translatepage.py: Create a dropdown of valid users for assigning
+ work in the translate page.
+
+2005-05-19 13:40 dwaynebailey
+
+ * pootlefile.py: We weren't ever actually updating the plural
+ header because we were looking for "nplural" instead of
+ "nplurals".
+
+2005-05-19 13:30 dwaynebailey
+
+ * indexpage.py: You can now only assign users from s dropdown
+ select box thus ensuring that they are actually valid users when
+ you assign them.
+
+2005-05-19 13:18 dwaynebailey
+
+ * indexpage.py: Add plural forms to various messages
+
+2005-05-19 13:10 dwaynebailey
+
+ * projects.py: Handle the case where thepo.msgstr is not a
+ dictionary
+
+2005-05-19 13:07 dwaynebailey
+
+ * projects.py: Added ungettext function so that we can now display
+ plural translations of Pootel live.
+
+2005-05-17 22:16 davidfraser
+
+ * templates/adminindex.html: added initial template for AdminPage
+ (adminindex.html)
+
+2005-05-17 22:13 davidfraser
+
+ * adminpages.py, pagelayout.py, pootle.py: added initial templates
+ support (Woohoo!) This requires the latest jToolkit (version >=
+ 0.6.2) but should gracefully fall back without it basically if a
+ Page object contains the attributes templatename and templatevars
+ it will be constructed from the template and the widgets ignored
+ (if jToolkit version supports templating) This is to enable
+ gradual migration to the templating approach currently only one
+ page is templated as a demonstration, adminpages.AdminPage the
+ basic approach is to pull out all the logic into separate
+ functions, and use the same logic for the widgets and the
+ templates then when migration is complete, all the widgeting code
+ can be deleted :-)
+
+2005-05-14 15:33 dwaynebailey
+
+ * pootle.py: Checks the prefs file for defaultlanguage and will
+ setup the interface to that. Of course you need all the rest
+ like the translated Pootle files :). This allows you to run an
+ instance of Pootle in a default or "not logged in" language other
+ than English.
+
+2005-05-14 15:30 davidfraser
+
+ * indexpage.py, pagelayout.py, projects.py: fixed up handling of
+ directories that partially belong to a goal (something inside the
+ directory does) include these in the list of items to display
+ (using new arg includepartial to project.getgoalfiles) display
+ the number of files in the directory that match the goal (e.g.
+ 1/2 files) calculate statistics based on the files actually
+ matching the goal, not the whole directory if it is partial
+
+2005-05-14 15:23 dwaynebailey
+
+ * pootle.prefs: Added many comments to make it easy to understand
+ the options and layout of the main prefs file.
+
+2005-05-14 14:54 davidfraser
+
+ * indexpage.py: display goals with no files in the current
+ directory, but don't display action links for them
+
+2005-05-14 14:01 davidfraser
+
+ * indexpage.py: cleaned up goals interface so "show goals" only
+ shows the goals you have to click on a goal to see its files when
+ you've selected a goal, you see only that goal you can now also
+ select "No goal" (exactly the same as a normal goal, but can't
+ add users etc) if there are no users for a goal, don't show the
+ "Set User" button
+
+2005-05-14 13:31 davidfraser
+
+ * pootle.py: changed xliff mime type to xml as it is
+
+2005-05-13 11:45 davidfraser
+
+ * pagelayout.py: fixed links so if at no depth, we don't have a /
+ link (leading to things like /../)
+
+2005-05-13 10:43 davidfraser
+
+ * pootle.py: made commandline refreshstats work on mandrake which
+ has .po directories, and pass the correct relative name not the
+ path to pootlefile
+
+2005-05-13 10:20 davidfraser
+
+ * html/images/language.png: added a funny language icon until we
+ can get a nicer one
+
+2005-05-12 11:18 davidfraser
+
+ * potree.py: reverse order of dir / .po check so that if
+ directories are called "xxx.po" they don't get skipped (e.g.
+ mandrake)
+
+2005-05-11 16:36 davidfraser
+
+ * pootle.py: added ability to specify files to refreshstats on on
+ the commandline recurse directories given for .po files and
+ process files given uses dummy project classes etc
+
+2005-05-10 22:44 davidfraser
+
+ * indexpage.py, projects.py: improved goal handling so it deals
+ with directories and files properly (don't remove initial
+ dirfilter from goalfile name in indexpages as this confuses
+ things) added options to project.getgoalfiles to enable this (and
+ helper function getancestry) - similar to browsefiles, which it
+ uses check that __dummy__ unassigneduser is there before removing
+ it! added code to remove a file if its directory is in the goal
+ (this removes the directory and adds the other filenames)
+
+2005-05-09 20:57 davidfraser
+
+ * translatepage.py: check usernode properly (if
+ self.session.username is None you can't getattr)
+
+2005-05-09 14:10 davidfraser
+
+ * indexpage.py: pass the project to describestats so it can count
+ words
+
+2005-05-09 14:05 davidfraser
+
+ * projects.py: added a countwords method that takes a (pofilename,
+ itemnum) list (as returned by combinedstats)
+
+2005-05-09 13:16 davidfraser
+
+ * pagelayout.py: display wordcounts wherever string counts are
+ (except for checks etc)
+
+2005-05-09 13:14 davidfraser
+
+ * indexpage.py, pagelayout.py: added a method to PootleNavPage
+ called describestats so it can be done consistently renamed
+ self.average -> average throughout
+
+2005-05-07 13:25 davidfraser
+
+ * translatepage.py: handle new stats format (just display number of
+ strings with len)
+
+2005-05-07 13:25 davidfraser
+
+ * pootlefile.py: added wordcounts and remember wordcounts of each
+ item in stats file the format allows wordcounts per plural form,
+ separated by / msgidwordcounts and msgstrwordcounts are lists of
+ lists, each item has a list of wordcounts per plural form
+
+2005-05-07 12:56 davidfraser
+
+ * projects.py: handle assign stats the same as others (use items
+ rather than counts)
+
+2005-05-07 12:47 davidfraser
+
+ * pootlefile.py, projects.py, indexpage.py: replaced statistics'
+ count of items with an actual list of items this means we should
+ be able to get wordcounts etc much more easily replaced
+ calculatestats with a method combinestats that returns a list of
+ pofilename-item tuples string count statistics can easily be
+ calculated with len but other operations should be possible too
+ assignstats still need to be handled
+
+2005-05-07 12:15 davidfraser
+
+ * pootlefile.py: moved pootlefile.classifyelement ->
+ pootleelement.classify made it handle only the singular elements
+ (plurals are tricky) fixed mergeitem adding suggestion in quoted
+ form (this is a bit roundabout)
+
+2005-05-07 12:12 davidfraser
+
+ * pagelayout.py: rootlink should always end in a /
+
+2005-05-07 11:55 davidfraser
+
+ * pootlefile.py, projects.py, translatepage.py: added class
+ pootleelement derived from poelement to allow special methods
+ rather than doing them in pootlefile use pootlelement as the
+ elementclass for pootlefile added unquotedmsgstr and
+ unquotedmsgid properties to pootleelement, use them where
+ appropriate return actual pootleelements rather than msgid,
+ msgstr pairs from getitems, getsuggestions don't need to do
+ quoting/unquoting in projects anymore since using unquotedxxx
+ property
+
+2005-05-06 17:58 davidfraser
+
+ * projects.py, translatepage.py: factored out makeitems from
+ getitems, which puts the po items into an understandable format
+ modified suggestions to use this fixed up missing buttons for
+ single translations made sure non-plural submissions don't come
+ through as plural
+
+2005-05-06 17:23 davidfraser
+
+ * translatepage.py: realized deleting the checks wasn't a good
+ idea... (aborts the search) made the 'currentfolder' in the
+ navbar for translatepage the current po filename rather than the
+ dirfilter (this lets you see where you are)
+
+2005-05-06 17:19 davidfraser
+
+ * TODO: done a few of these, notably plurals!
+
+2005-05-06 17:12 davidfraser
+
+ * translatepage.py: made sure checks don't appear in links clean up
+ the action so that it doesn't come back to the same place (fixes
+ bug where after editing an item it wouldn't move on)
+
+2005-05-06 17:06 davidfraser
+
+ * translatepage.py: - made accepting and rejecting plural
+ suggestions work this requires having an extra point field in
+ the receivetranslations fixed up the name of the submitted
+ fields and made sure it contains the pluralsuggestion (was the
+ suggestion dict) - fixed up logic of what self.pofilename means -
+ its the current pofilename being dealt with that means it can
+ be changed in finditem after receivetranslations has received the
+ submitted translations - ensured that unwanted arguments are
+ cleaned up so they don't affect links this includes pofilename,
+ item, the receivetranslation arguments and the hidden orig-pure
+ arguments - cleaned up the generation of orig-pure (was
+ orig-hidden) and made copy use the singular
+
+2005-05-06 17:01 davidfraser
+
+ * projects.py: corrected annoying error where items would be
+ skipped because the item variable was not being reset between
+ filenames this basically meant it would only go to items in later
+ filenames if they had more items than the previous filenames
+
+2005-05-06 16:13 davidfraser
+
+ * translatepage.py: redid gettransreview to work with plurals
+ cleaned up leftover bit in receivetranslations
+
+2005-05-06 11:42 davidfraser
+
+ * indexpage.py, translatepage.py: removed unneccessary parameters
+ etc from TranslatePage functions use PootleNavPage for base
+ constructors where thats the base class
+
+2005-05-06 11:34 davidfraser
+
+ * projects.py, translatepage.py: decided we didn't need to pass
+ isplural around everywhere, since we can tell based on the length
+ of the orig/trans lists
+
+2005-05-06 11:23 davidfraser
+
+ * projects.py, translatepage.py: handle plural forms being edited
+ redid handling of submitted arguments to make it less verbose and
+ ponderous (match keytype and items directly rather than trying
+ hundreds of options) for translations submitted, use a dictionary
+ (like msgstr) if they are plural redit gettransedit to create
+ proper edit facilities for plural text also, only show skip if
+ not allowed to translate use enumerate in gettransview to make it
+ simpler in projects, handle plural forms in indexing code and
+ unquotefrompo/quotefrompo these now return dictionaries if given
+ them, containing the quoted values
+
+2005-05-06 11:20 davidfraser
+
+ * pagelayout.py: make sure the adminlink is properly joined
+
+2005-05-06 10:25 davidfraser
+
+ * translatepage.py: redid gettransedit to use gettransview if not
+ allowed to edit changed so plurals display the actual plurals
+ along with the explanation that they can't be edited reordered
+ logic in gettransview
+
+2005-05-06 10:11 davidfraser
+
+ * translatepage.py, html/pootle.css: gettransview - cleaning up
+ plural form construction, use TranslationHeaders for it added
+ color to the translation header
+
+2005-05-06 09:49 davidfraser
+
+ * translatepage.py: handle plurals in translatepage maketable - get
+ isplural from projects translations and pass to
+ getorigdiv/gettransedit/gettransview
+ getorigdiv/transview/transedit now handle plural forms
+ getorigdiv: prints headers for the plural note that this
+ changes the id for the raw original hidden field gettransedit:
+ plurals are simply marked as not working yet gettransview:
+ displays the plural translation with the numeric plural item
+ number. highlightdiffs: I'm sending trans[0], etc to transdiff
+ I don't think this is right. Diffs are screwy if you have
+ plurals in the file.
+
+ note: up till now, you need pagelayout.py revision <= 1.5 - with
+ this commit you need pagelayout.py >= 1.6
+
+2005-05-06 09:27 davidfraser
+
+ * translatepage.py: removed sidebar entry showing current file as
+ thats now in the title
+
+2005-05-06 09:21 davidfraser
+
+ * indexpage.py, pagelayout.py, translatepage.py: moved navigation
+ functions from PootlePage into PootleNavPage, adjusted classes
+ that need them added check that the languagecodes the user has
+ set for their home page are valid
+
+2005-05-06 09:12 davidfraser
+
+ * indexpage.py, pagelayout.py: move getbrowseurl and makelink from
+ indexpage.ProjectIndex to pagelayout.PootlePage this makes them
+ accessible in a TranslatePage as well (but possibly they should
+ be moved to a more general class)
+
+2005-05-06 09:11 davidfraser
+
+ * translatepage.py: until we have plurals, we should use the whole
+ of orig...
+
+2005-05-06 08:50 davidfraser
+
+ * translatepage.py: gettransedit patch [Dwayne Bailey]: - allow
+ user-specified inputheight and width to start with, remove hack
+ to guess size - use inputheight+width - add break before
+ buttons to stop them looking ugly
+
+2005-05-06 08:41 davidfraser
+
+ * translatepage.py: Made all the translate widget buttons
+ localizable [Dwayne Bailey]
+
+2005-05-06 08:38 davidfraser
+
+ * translatepage.py: added hidden field to store raw original, copy
+ now copies the hidden field [Dwayne Bailey]
+
+2005-05-06 08:34 davidfraser
+
+ * translatepage.py: made editlinks localizable [Dwayne Bailey]
+
+2005-05-06 07:14 davidfraser
+
+ * translatepage.py: Make accept / reject widgets localizable
+ [Dwayne Bailey]
+
+2005-05-06 07:11 davidfraser
+
+ * translatepage.py: Patch from Dwayne Bailey: - refactor to use
+ navbar - moved postats calculation to navbar construction - added
+ getdisplayrows to allow user to set number of rows for view or
+ translate mode (with maximums)
+
+2005-05-06 06:58 davidfraser
+
+ * translatepage.py: pagelinks are now only displayed if you
+ actually have more than one page [Dwayne Bailey]
+
+2005-05-06 06:30 davidfraser
+
+ * indexpage.py, pagelayout.py, html/pootle.css: removed MainItem
+ and renamed to navbar where neccessary made languagelink more
+ logical (to me!) by putting .. after rootlink
+
+2005-05-06 06:29 davidfraser
+
+ * indexpage.py: Patch from Dwayne Bailey: - consolidate statistics
+ generation with *pagestats in pagelayout - created navbar code in
+ pagelayout (was MainItem) - navbars are added to project list for
+ a language and language list for a project - use new
+ polarizeitems function from pagelayout
+
+2005-05-06 06:24 davidfraser
+
+ * pagelayout.py: patch from Dwayne Bailey: - added a Navbar class
+ and retired MainItem - Added TranslationHeaders for plural forms
+ - new geticon function to return the right icon for a given named
+ type - makenavbarpath creates the navbar clickable path, i've
+ tried to optimise it as far as possible removing redundant and
+ repeated code but its still a bit barfish - makenavbar puts them
+ all together - polarizeitems creates the striped lists which are
+ now appearing averywhere - *pagestats create stats for the two
+ project and language list pages
+
+2005-05-06 06:17 davidfraser
+
+ * html/pootle.css: Added items for the navbar, translation headers,
+ highlights [Dwayne Bailey]
+
+2005-05-06 06:15 davidfraser
+
+ * projects.py: Added the ability to return plural items in a list
+ with an isplural marker [Dwayne Bailey]
+
+2005-05-03 12:04 dwaynebailey
+
+ * translatepage.py, html/js/autoexpand.js: Buttons to widden,
+ narrow and reset the textarea to its origianl size. This should
+ be a widget of some kind though not raw links.
+
+2005-05-03 11:27 dwaynebailey
+
+ * pootle.py: Another part of the user interface settings change
+
+2005-05-03 10:06 dwaynebailey
+
+ * users.py: Users can now set the desired items in view and
+ translate mode and the size of the textarea widgets. Changes to
+ make use of these values follow.
+
+2005-05-03 09:57 dwaynebailey
+
+ * TODO: TODO cleanup
+
+2005-04-28 17:00 dwaynebailey
+
+ * translatepage.py: Make the viewmode navbar localisable
+
+2005-04-28 16:49 dwaynebailey
+
+ * TODO: TODO cleanup
+
+2005-04-28 16:10 dwaynebailey
+
+ * projects.py: Add function to create xliff
+
+2005-04-28 14:57 dwaynebailey
+
+ * pootlefile.py: Added method for retreiving xliff files.
+
+2005-04-28 10:57 dwaynebailey
+
+ * indexpage.py, pootle.py: The about link on the projects/ and
+ languages/ page now work correctly. You get a correct error
+ message if you try to upload without supplying a filename.
+ Upload errors are localisable. The users that you can assign to
+ a goal now appear in a dropdown list. You can only view CSV or
+ XLIFF files if you have translate rights to a project. We can
+ now also supply XLIFF files using po2xliff A minor bugfix getgoal
+ -> getgoalfiles
+
+2005-04-28 10:50 dwaynebailey
+
+ * pagelayout.py: We should now always find the favicon.
+
+2005-04-26 16:37 dwaynebailey
+
+ * pootlefile.py, projects.py: PO Plural-Forms header is now updated
+ if it is present in the PO file and if the nplural and
+ pluralequation are set for the language.
+
+2005-04-26 16:13 dwaynebailey
+
+ * indexpage.py: Added a number of returnurl parameters for pages
+ where users would want to login and be returned to the correct
+ location. Add an admin links for the projects' languages page if
+ you are the siteadmin making it easy to get to this admin page.
+ The project & language level admin link is now formated to be
+ associated with the project ie [ Zulu ][ Pootle : Admin ] making
+ its role clearer. Fixed a localize bracket placement error.
+
+2005-04-26 16:01 dwaynebailey
+
+ * adminpages.py: On the projects/%s/admin.html page added a link to
+ return you to the language lists for that project. Also added a
+ return URL to allow people who go to the page without having
+ logged in to login and be correctly returned to the page.
+
+2005-04-26 15:35 dwaynebailey
+
+ * potree.py, projects.py: Project PO Template files can now be in
+ the "templates" or "pot" directory.
+
+2005-04-26 15:12 dwaynebailey
+
+ * potree.py: Languages are now always returned sorted
+
+2005-04-25 12:56 dwaynebailey
+
+ * projects.py: Second part of deleting rights to a project &
+ language. Also sort goals in alphabetical order.
+
+2005-04-25 12:38 dwaynebailey
+
+ * adminpages.py: You can now delete a users rights to a project &
+ language.
+
+2005-04-25 12:34 dwaynebailey
+
+ * adminpages.py: Change the checkerstyle textbox to a dropdown with
+ test names pulled from the filter module. Now you can't mistype
+ or add a checker that does not exist.
+
+2005-04-25 12:28 dwaynebailey
+
+ * adminpages.py: Make the Pootle general admin option localizable
+ (title, description, baseurl)
+
+2005-04-25 12:12 dwaynebailey
+
+ * users.py: Make the title of user configurable options (name,
+ email) localizable.
+
+2005-04-22 16:40 davidfraser
+
+ * indexpage.py: added version information to the about page
+
+2005-04-21 17:17 davidfraser
+
+ * __version__.py: arbritrarily decided this should be version 0.6
+ :-)
+
+2005-04-21 10:53 davidfraser
+
+ * pootle.prefs, users.prefs: fixed up importmodules to refer to new
+ class location cut down languages, projects
+
+2005-04-20 14:48 davidfraser
+
+ * COPYING, CREDITS: Added initial CREDITS file, and COPYING (GPL)
+
+2005-04-20 11:50 davidfraser
+
+ * ChangeLog, ChangeLog.pre-0.8, PootleServer, __version__.py: added
+ PootleServer script, new __version__ for Pootle, and ChangeLogs
+ (including old changelog from before move)
+
+2005-04-20 11:33 davidfraser
+
+ * README, TODO, __init__.py, adminpages.py, indexpage.py,
+ pagelayout.py, pootle.prefs, pootle.py, pootlefile.py, potree.py,
+ projects.py, translatepage.py, users.py, versioncontrol.py,
+ html/favicon.ico, html/pootle.css, html/robots.txt,
+ html/doc/howto.html, html/doc/index.html,
+ html/doc/resources.html, html/images/edit.png,
+ html/images/file.png, html/images/folder.png,
+ html/images/gap.png, html/images/goal.png,
+ html/images/person.png, html/images/pootle-medium.jpg,
+ html/images/pootle-small.jpg, html/images/pootle.jpg,
+ html/images/pootle.svg, html/images/top.png,
+ html/js/autoexpand.js: moved from translate/pootle to Pootle and
+ adjusted imports, README etc
+
diff --git a/Pootle-1.2.1/Pootle/LICENSE b/Pootle-1.2.1/Pootle/LICENSE
new file mode 120000
index 0000000..d24842f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/LICENSE
@@ -0,0 +1 @@
+COPYING \ No newline at end of file
diff --git a/Pootle-1.2.1/Pootle/PootleServer b/Pootle-1.2.1/Pootle/PootleServer
new file mode 100755
index 0000000..6228916
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/PootleServer
@@ -0,0 +1,26 @@
+#!/usr/bin/env python
+#
+# Copyright 2005 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+"""This is just a simple script that runs the pootle main program"""
+
+from Pootle import pootle
+
+pootle.main()
+
diff --git a/Pootle-1.2.1/Pootle/README b/Pootle-1.2.1/Pootle/README
new file mode 100644
index 0000000..87316ea
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/README
@@ -0,0 +1,142 @@
+Pootle: a web translation and translation management engine
+===========================================================
+
+* How it works
+* References
+* Requirement/Installation
+* Running
+* Bug reporting
+* Notes
+* Assignments
+
+How it works
+------------
+The concept is: a PO file is a document, so lets use PO files directly,
+rather than storing it in a database. But we need quick access to statistics
+so we cache them in a statistics database. This lets us do most checks etc.
+in advance and then iterate quickly.
+
+References
+----------
+Bugzilla: http://bugs.locamotion.org/
+Wiki: http://translate.sourceforge.net/wiki/pootle/index
+Mailing List: https://lists.sourceforge.net/lists/listinfo/translate-pootle
+ translate-pootle@lists.sourceforge.net
+Mail Archives: http://sourceforge.net/mailarchive/forum.php?forum=translate-pootle
+
+Requirements/Installation
+-------------------------
+Please read http://translate.sourceforge.net/wiki/pootle/installation for the
+lastest instructions.
+
+Pootle requires the Translate Toolkit package from
+http://translate.sourceforge.net/
+Note all the optional dependencies of the Translate Toolkit for optimal
+performance and functionality in Pootle.
+
+The Translate Toolkit requires Python 2.3 or higher, but Pootle itself only
+works with Python 2.4 or higher. The Translate Toolkit must be installed
+properly i.e. it needs to be accessible in your Python Path. This will normally
+be accomplished by installing from source:
+
+ python setup.py install
+
+If you get this error along the lines of
+Unable to open /usr/lib/python2.N/config/Makefile (no such file or directory)
+while running setup.py, you need to install python-dev or libpython2.N-devel
+package. Try to install python2.N-dev or libpython2.N-devel or something
+similar with your distribution's package manager.
+
+For the web interface, Pootle requires jToolkit
+(http://jtoolkit.sourceforge.net/)
+jToolkit can run applications either via Apache using mod_python, or standalone
+from the command line. Pootle works best at the moment being run from the
+command line since we don't handle inter-process locking etc. It's also
+much easier! To install jToolkit run:
+
+ tar xvzf jToolkit-N.N.N.tar.gz
+ cd jToolkit-N.N.N
+ python jToolkitSetup.py install
+
+ZIP is needed to enable users to download ZIP files of directories. For
+integration with CVS and/or Subversion, the relevant version control client
+must be installed and accessible from the PATH.
+
+From version 0.9 of Pootle, kid (http://kid.lesscode.org/), and elementtree
+(http://effbot.org/downloads/#elementtree) are also needed. Elementtree is
+not needed anymore with Python 2.5.
+
+To install "elementtree", run
+ tar xvfz elementtree-N.N.N.tar.gz
+ cd elementtree-N.N.N
+ python setup.py install
+
+To install kid, run
+ tar xvfz kid-N.N.N.tar.gz
+ cd kid-N.N.N
+ python setup.py install
+
+For Debian users: if you do not have setuptools installed, try:
+ apt-get install python2.N-setuptools
+or
+ wget http://files.turbogears.org/eggs/setuptools-0.6a11-py2.4.egg
+
+Installation of an indexing engine (PyLucene or Xapian) is optional, but helps
+to speed up searching.
+
+To install Pootle itself, run
+
+ tar xzf Pootle-N.N.N.tar.gz
+ cd Pootle-N.N.N
+ python pootlesetup.py install
+
+Running
+-------
+To run, edit pootle.prefs and specify your languages and projects. The key
+detail here is the podir for each project. Then run:
+
+ PootleServer
+
+You can also copy pootle.prefs to another directory, allowing you to run Pootle
+outside of the installation directory. Edit this copy of pootle.prefs as
+needed. Then run:
+
+ PootleServer --prefsfile=your.prefs
+
+Use --help to see the other options. You can tell it which prefs file to use,
+what HTML file and what port to run on (the default is 8080). The defaults will
+generally work.
+
+Now visit http://localhost:8080/ and begin translating.
+
+To stop, press Ctrl-C. On Windows, it will only react to the Ctrl-C after a
+webpage is requested.
+
+Bug Reporting/Feature requests
+------------------------------
+You can always report bugs or feature requests on the mailing list but because
+of the increase in users and the fact that bug reports do go missing it is
+probably best to place your bug report in Bugzilla: http://bugs.locamotion.org/
+
+If you have a traceback or a patch then please include it. Also please be quite
+specific about how the bug occured and what you expected to happen.
+
+If this is a feature request then try to be specific about how you think this
+feature should work.
+
+Notes
+-----
+Files should be reindexed automatically.
+To reindex manually, simply remove any stats files you want reindexed, or run
+ python pootle.py --refreshstats
+
+Assignments
+-----------
+To assign strings to users, you need to create a xxx.po.assigns file in the same
+directory as xxx.po This should contain lines in the following format:
+
+username: action: 0,2-34,36,99
+
+where action can be 'suggest' or 'review', and the numbers refer to 0-based item
+numbers in the file.
+
diff --git a/Pootle-1.2.1/Pootle/TODO b/Pootle-1.2.1/Pootle/TODO
new file mode 100644
index 0000000..5501776
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/TODO
@@ -0,0 +1,82 @@
+current tasks:
+ assigning stuff to people (package + email too)
+ - upload completed work (by maintainer)
+ - what has been returned, what hasn't
+ - ability to send work to people
+ - let maintainer add people manually
+ priorities (directory/file order)
+ process (administrators/translators/reviewers)
+ locking
+ allow search to display only items related to search (no context)
+ add ability to email bug report
+
+requirements for translatathon:
+ relate assignments to rights (people can only translate what they're assigned)
+ - both translation and review
+ attribution (based on login)
+ ? where to put it
+ - last translator
+ - comment with everyone at top of po file
+ - comment in suggestion
+ translation review cycle
+ - comment to explain rejection
+
+other:
+ move the sidebar to be like distributed proofreaders (at the top, small)
+ test with apache multiprocess
+ store a history file
+ maybe have a separate file to track who translated each string
+ display results of checks for each string on submission
+ handle project versions
+ a reviewer can mark a string as fuzzy but not provide a translation (in
+ order to browse and fixup things like af KDE.
+ integrate with KBabel/POEdit
+ create .qm (compiled Qt .ts files). See lrelease which is GPL'd for Qt .qm files
+ create XPI files automatically when updates are made
+ Add X-Poedit style tags in the header when you download so that people using
+ this PO editor don't have to configure everything
+ stats:
+ percentage change. So you can see if a language/project is active or not.
+ if there is only one .PO file for a project then merge the header bar and the
+ PO file bar to make it less clutered and more logical.
+ goto a specific message. Maybe a better thing to have a bar graph showing
+ what bits aren't translated and jump straight to that.
+ localisation: create a fallback mechanism so you can set a number of
+ languages: Bambara, French then default to English.
+ three column translation: English, Other language, Destination Language. So
+ that a French speaker can translate into Bambarra with little English
+
+bugs:
+ currently project codes cannot have a dash "-" in them eg kde-i18n. Either
+ we should allow or warn when starting pootle. (check, should be fixed)
+ items inside the current group should have "group=" in link so clicking "remove" on assignment doesn't jump out of group
+
+assignment:
+ create user groups, assign to a group
+
+feedback from Durban translatathon:
+ regenerate Pootle PO files on web
+ autocreate POT files when packaging
+ automatic tips for things like accelerators
+ tutorial PO file
+
+new:
+ add more management of pot files
+ - rights
+ - uploading, updating from CVS etc
+ ? able to have multiple pot repositories
+ new rights model:
+ maintainer of a whole project (all languages)
+ global goals for all languages
+ admins for a whole language - accept translators etc
+ let people "take" a file (self-assign) if not being managed
+ let setting up project be totally automatic...
+
+suggestions from list:
+ search and replace across a whole file
+ translator comments / tagging of strings
+ translation of language names (do the whole iso codes list)
+ drop-down list for languages (improve selection)
+ simple way to see the plural definition for a language
+ validate plurals against KBabel/msginit entries
+
diff --git a/Pootle-1.2.1/Pootle/__init__.py b/Pootle-1.2.1/Pootle/__init__.py
new file mode 100644
index 0000000..bb23c7c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/__init__.py
@@ -0,0 +1,25 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2004, 2005, 2008 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+"""Pootle is a web portal for localization"""
+
+__all__ = ["pootle"]
+
diff --git a/Pootle-1.2.1/Pootle/__version__.py b/Pootle-1.2.1/Pootle/__version__.py
new file mode 100644
index 0000000..6d20ac6
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/__version__.py
@@ -0,0 +1,5 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+"""this file contains the version of pootle"""
+ver = "1.2.1"
+
diff --git a/Pootle-1.2.1/Pootle/adminpages.py b/Pootle-1.2.1/Pootle/adminpages.py
new file mode 100644
index 0000000..e0172c4
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/adminpages.py
@@ -0,0 +1,429 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+from Pootle import pagelayout
+from Pootle import projects
+from translate.filters import checks
+
+import locale
+
+class AdminPage(pagelayout.PootlePage):
+ """page for administering pootle..."""
+ def __init__(self, potree, session, instance):
+ self.potree = potree
+ self.session = session
+ self.instance = instance
+ self.localize = session.localize
+ templatename = "adminindex"
+ sessionvars = {"status": self.session.status, "isopen": self.session.isopen, "issiteadmin": self.session.issiteadmin()}
+ instancetitle = getattr(self.instance, "title", session.localize("Pootle Demo"))
+ text = self.gettext(session)
+ templatevars = {"options": self.getoptions(), "session": sessionvars, "instancetitle": instancetitle, "text": text}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+ def gettext(self, session):
+ """Localize the text"""
+ text = {}
+ text["home"] = session.localize("Home")
+ text["users"] = session.localize("Users")
+ text["languages"] = session.localize("Languages")
+ text["projects"] = session.localize("Projects")
+ text["generaloptions"] = session.localize("General options")
+ text["option"] = session.localize("Option")
+ text["currentvalue"] = session.localize("Current value")
+ text["savechanges"] = session.localize("Save changes")
+ return text
+
+ def getoptions(self):
+ optiontitles = {"title": self.localize("Title"),
+ "description": self.localize("Description"),
+ "baseurl": self.localize("Base URL"),
+ "homepage": self.localize("Home Page")}
+ options = []
+ for optionname, optiontitle in optiontitles.items():
+ optionvalue = getattr(self.instance, optionname, "")
+ option = {"name": "option-%s" % optionname, "title": optiontitle, "value": optionvalue}
+ options.append(option)
+ return options
+
+class LanguagesAdminPage(pagelayout.PootlePage):
+ """page for administering pootle..."""
+ def __init__(self, potree, session, instance):
+ self.potree = potree
+ self.session = session
+ self.instance = instance
+ self.localize = session.localize
+ templatename = "adminlanguages"
+ sessionvars = {"status": self.session.status, "isopen": self.session.isopen, "issiteadmin": self.session.issiteadmin()}
+ instancetitle = getattr(self.instance, "title", session.localize("Pootle Demo"))
+ pagetitle = self.localize("Pootle Languages Admin Page")
+ text = self.gettext(session)
+ templatevars = {"pagetitle": pagetitle, "languages": self.getlanguagesoptions(), "options": self.getoptions(), "session": sessionvars, "instancetitle": instancetitle, "text": text}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+ def gettext(self, session):
+ """Localize the text"""
+ text = {}
+ text["home"] = session.localize("Home")
+ text["admin"] = session.localize("Main admin page")
+ text["languages"] = session.localize("Languages")
+ text["savechanges"] = session.localize("Save changes")
+ return text
+
+ def getoptions(self):
+ options = [{"name": "code", "title": self.localize("ISO Code"), "size": 6, "newvalue": ""},
+ {"name": "name", "title": self.localize("Full Name"),
+ "newvalue": self.localize("(add language here)")},
+ {"name": "specialchars", "title": self.localize("Special Chars"), "newvalue": self.localize("(special characters)")},
+ {"name": "nplurals", "title": self.localize("Number of Plurals"), "newvalue": self.localize("(number of plurals)")},
+ {"name": "pluralequation", "title": self.localize("Plural Equation"), "newvalue": self.localize("(plural equation)")},
+ {"name": "remove", "title": self.localize("Remove Language")}]
+ for option in options:
+ if "newvalue" in option:
+ option["newname"] = "newlanguage" + option["name"]
+ return options
+
+ def getlanguagesoptions(self):
+ languages = []
+ for languagecode, languagename in self.potree.getlanguages():
+ languagespecialchars = self.potree.getlanguagespecialchars(languagecode)
+ languagenplurals = self.potree.getlanguagenplurals(languagecode)
+ languagepluralequation = self.potree.getlanguagepluralequation(languagecode)
+ languageremove = None
+ # TODO: make label work like this
+ # l10n: The parameter is a languagecode, projectcode or username
+ removelabel = self.localize("Remove %s", languagecode)
+ languageoptions = [{"name": "languagename-%s" % languagecode, "value": languagename, "type": "text"},
+ {"name": "languagespecialchars-%s" % languagecode, "value": languagespecialchars, "type": "text"},
+ {"name": "languagenplurals-%s" % languagecode, "value": languagenplurals, "type": "text"},
+ {"name": "languagepluralequation-%s" % languagecode, "value": languagepluralequation, "type": "text"},
+ {"name": "languageremove-%s" % languagecode, "value": languageremove, "type": "checkbox", "label": removelabel}]
+ languages.append({"code": languagecode, "options": languageoptions})
+ return languages
+
+class ProjectsAdminPage(pagelayout.PootlePage):
+ """page for administering pootle..."""
+ def __init__(self, potree, session, instance):
+ self.potree = potree
+ self.session = session
+ self.instance = instance
+ self.localize = session.localize
+ templatename = "adminprojects"
+ projectfiletypes = ["po","xlf"]
+ self.allchecks = [{"value": check, "description": check} for check in checks.projectcheckers.keys()]
+ self.allchecks.insert(0, {"value": "", "description": self.localize("Standard")})
+ self.alltypes = [{"value": check, "description": check} for check in projectfiletypes]
+ sessionvars = {"status": self.session.status, "isopen": self.session.isopen, "issiteadmin": self.session.issiteadmin()}
+ instancetitle = getattr(self.instance, "title", session.localize("Pootle Demo"))
+ pagetitle = self.localize("Pootle Projects Admin Page")
+ text = self.gettext(session)
+ templatevars = {"pagetitle": pagetitle, "projects": self.getprojectsoptions(), "options": self.getoptions(), "session": sessionvars, "instancetitle": instancetitle, "text": text}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+ def gettext(self, session):
+ """Localize the text"""
+ text = {}
+ text["home"] = session.localize("Home")
+ text["admin"] = session.localize("Main admin page")
+ text["projects"] = session.localize("Projects")
+ text["savechanges"] = session.localize("Save changes")
+ return text
+
+ def getoptions(self):
+ options = [{"name": "code", "title": self.localize("Project Code"), "size": 6, "newvalue": ""},
+ {"name": "name", "title": self.localize("Full Name"),
+ "newvalue": self.localize("(add project here)")},
+ {"name": "description", "title": self.localize("Project Description"), "newvalue": self.localize("(project description)")},
+ {"name": "checkerstyle", "title": self.localize("Checker Style"), "selectoptions": self.allchecks, "newvalue": ""},
+ {"name": "filetype", "title": self.localize("File Type"), "selectoptions": self.alltypes, "newvalue": ""},
+ {"name": "createmofiles", "title": self.localize("Create MO Files"), "type": "checkbox", "newvalue": ""},
+ {"name": "remove", "title": self.localize("Remove Project")}]
+ for option in options:
+ if "newvalue" in option:
+ option["newname"] = "newproject" + option["name"]
+ if "type" not in option and "selectoptions" not in option:
+ option["type"] = "text"
+ return options
+
+ def getprojectsoptions(self):
+ projects = []
+ for projectcode in self.potree.getprojectcodes():
+ projectadminlink = "../projects/%s/admin.html" % projectcode
+ projectname = self.potree.getprojectname(projectcode)
+ projectdescription = self.potree.getprojectdescription(projectcode)
+ projectname = self.potree.getprojectname(projectcode)
+ projectcheckerstyle = self.potree.getprojectcheckerstyle(projectcode)
+ projectfiletype = self.potree.getprojectlocalfiletype(projectcode)
+ if self.potree.getprojectcreatemofiles(projectcode):
+ projectcreatemofiles = "checked"
+ else:
+ projectcreatemofiles = ""
+ projectremove = None
+ # l10n: The parameter is a languagecode, projectcode or username
+ removelabel = self.localize("Remove %s", projectcode)
+ projectoptions = [{"name": "projectname-%s" % projectcode, "value": projectname, "type": "text"},
+ {"name": "projectdescription-%s" % projectcode, "value": projectdescription, "type": "text"},
+ {"name": "projectcheckerstyle-%s" % projectcode, "value": projectcheckerstyle, "selectoptions": self.allchecks},
+ {"name": "projectfiletype-%s" % projectcode, "value": projectfiletype, "selectoptions": self.alltypes},
+ {"name": "projectcreatemofiles-%s" % projectcode, "value": projectcreatemofiles, "type": "checkbox", projectcreatemofiles: projectcreatemofiles},
+ {"name": "projectremove-%s" % projectcode, "value": projectremove, "type": "checkbox", "label": removelabel}]
+ projects.append({"code": projectcode, "adminlink": projectadminlink, "options": projectoptions})
+ return projects
+
+class UsersAdminPage(pagelayout.PootlePage):
+ """page for administering pootle..."""
+ def __init__(self, server, users, session, instance):
+ self.server = server
+ self.users = users
+ self.session = session
+ self.instance = instance
+ self.localize = session.localize
+ templatename = "adminusers"
+ sessionvars = {"status": self.session.status, "isopen": self.session.isopen, "issiteadmin": self.session.issiteadmin()}
+ instancetitle = getattr(self.instance, "title", session.localize("Pootle Demo"))
+ pagetitle = self.localize("Pootle User Admin Page")
+ text = self.gettext(session)
+ templatevars = {"pagetitle": pagetitle, "users": self.getusersoptions(), "options": self.getoptions(), "session": sessionvars, "instancetitle": instancetitle, "text": text}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+ def gettext(self, session):
+ """Localize the text"""
+ text = {}
+ text["home"] = session.localize("Home")
+ text["admin"] = session.localize("Main admin page")
+ text["users"] = session.localize("Users")
+ text["savechanges"] = session.localize("Save changes")
+ return text
+
+ def getoptions(self):
+ options = [{"name": "name", "title": self.localize("Username"), "newvalue": "", "size": 6},
+ {"name": "fullname", "title": self.localize("Full Name"),
+ "newvalue": self.localize("(add full name here)")},
+ {"name": "email", "title": self.localize("Email Address"), "newvalue": self.localize("(add email here)")},
+ {"name": "password", "title": self.localize("Password"), "newvalue": self.localize("(add password here)")},
+ {"name": "activated", "title": self.localize("Activated"), "type": "checkbox", "checked": "true", "newvalue": "", "label": self.localize("Activate New User")},
+ {"name": "remove", "title": self.localize("Remove User"), "type": "checkbox"}]
+ for option in options:
+ if "newvalue" in option:
+ # TODO: rationalize this in the form processing
+ if option["name"] == "activated":
+ option["newname"] = "newuseractivate"
+ else:
+ option["newname"] = "newuser" + option["name"]
+ return options
+
+ def getusersoptions(self):
+ users = []
+ for usercode, usernode in self.users.iteritems(sorted=True):
+ fullname = getattr(usernode, "name", "")
+ email = getattr(usernode, "email", "")
+ activated = getattr(usernode, "activated", 0) == 1
+ if activated:
+ activatedattr = "checked"
+ else:
+ activatedattr = ""
+ userremove = None
+ # l10n: The parameter is a languagecode, projectcode or username
+ removelabel = self.localize("Remove %s", usercode)
+ useroptions = [{"name": "username-%s" % usercode, "value": fullname, "type": "text"},
+ {"name": "useremail-%s" % usercode, "value": email, "type": "text"},
+ {"name": "userpassword-%s" % usercode, "value": None, "type": "text"},
+ {"name": "useractivated-%s" % usercode, "type": "checkbox", activatedattr: activatedattr},
+ {"name": "userremove-%s" % usercode, "value": None, "type": "checkbox", "label": removelabel}]
+ users.append({"code": usercode, "options": useroptions})
+ return users
+
+class ProjectAdminPage(pagelayout.PootlePage):
+ """list of languages belonging to a project"""
+ def __init__(self, potree, projectcode, session, argdict):
+ self.potree = potree
+ self.projectcode = projectcode
+ self.session = session
+ self.localize = session.localize
+ self.tr_lang = session.tr_lang
+ projectname = self.potree.getprojectname(self.projectcode)
+ if self.session.issiteadmin():
+ if "doaddlanguage" in argdict:
+ newlanguage = argdict.get("newlanguage", None)
+ if not newlanguage:
+ raise ValueError("You must select a new language")
+ self.potree.addtranslationproject(newlanguage, self.projectcode)
+ if "doupdatelanguage" in argdict:
+ languagecodes = argdict.get("updatelanguage", None)
+ if not languagecodes:
+ raise ValueError("No languagecode given in doupdatelanguage")
+ if isinstance(languagecodes, (str, unicode)):
+ languagecodes = [languagecodes]
+ for languagecode in languagecodes:
+ translationproject = self.potree.getproject(languagecode, self.projectcode)
+ translationproject.converttemplates(self.session)
+ main_link = self.localize("Back to main page")
+ existing_title = self.localize("Existing languages")
+ existing_languages = self.getexistinglanguages()
+ new_languages = self.getnewlanguages()
+ # l10n: This refers to updating the translation files from the templates like with .pot files
+ update_button = self.localize("Update Languages")
+ pagetitle = self.localize("Pootle Admin: %s", projectname)
+ norights_text = self.localize("You do not have the rights to administer this project.")
+ iso_code = self.localize("ISO Code")
+ full_name = self.localize("Full Name")
+ # l10n: This refers to updating the translation files from the templates like with .pot files
+ update_link = self.localize("Update from templates")
+ templatename = "projectadmin"
+ sessionvars = {"status": self.session.status, "isopen": self.session.isopen, "issiteadmin": self.session.issiteadmin()}
+ instancetitle = getattr(self.session.instance, "title", session.localize("Pootle Demo"))
+ templatevars = {"pagetitle": pagetitle, "norights_text": norights_text,
+ "project": {"code": projectcode, "name": projectname},
+ "iso_code": iso_code, "full_name": full_name,
+ "existing_title": existing_title, "existing_languages": existing_languages,
+ "new_languages": new_languages,
+ "update_button": update_button, "add_button": self.localize("Add Language"),
+ "main_link": main_link, "update_link": update_link,
+ "session": sessionvars, "instancetitle": instancetitle}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session, bannerheight=80)
+
+ def getexistinglanguages(self):
+ """gets the info on existing languages"""
+ languages = self.potree.getlanguages(self.projectcode)
+ languageitems = [{"code": languagecode, "name": self.tr_lang(languagename)} for languagecode, languagename in languages]
+ # rewritten for compatibility with Python 2.3
+ # languageitems.sort(cmp=locale.strcoll, key=lambda dict: dict["name"])
+ languageitems.sort(lambda x,y: locale.strcoll(x["name"], y["name"]))
+ for n, item in enumerate(languageitems):
+ item["parity"] = ["even", "odd"][n % 2]
+ return languageitems
+
+ def getnewlanguages(self):
+ """returns a box that lets the user add new languages"""
+ existingcodes = self.potree.getlanguagecodes(self.projectcode)
+ allcodes = self.potree.getlanguagecodes()
+ newcodes = [code for code in allcodes if not (code in existingcodes or code == "templates")]
+ newoptions = [(self.potree.getlanguagename(code), code) for code in newcodes]
+ newoptions.sort()
+ newoptions = [{"code": code, "name": self.tr_lang(languagename)} for (languagename, code) in newoptions]
+ # rewritten for compatibility with Python 2.3
+ # newoptions.sort(cmp=locale.strcoll, key=lambda dict: dict["name"])
+ newoptions.sort(lambda x,y: locale.strcoll(x["name"], y["name"]))
+ return newoptions
+
+class TranslationProjectAdminPage(pagelayout.PootlePage):
+ """admin page for a translation project (project+language)"""
+ def __init__(self, potree, project, session, argdict):
+ self.potree = potree
+ self.project = project
+ self.session = session
+ self.localize = session.localize
+ self.rightnames = self.project.getrightnames(session)
+ # l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+ pagetitle = self.localize("Pootle Admin: %s %s", self.project.languagename, self.project.projectname)
+ main_link = self.localize("Project home page")
+ if "admin" in self.project.getrights(self.session):
+ if "doupdaterights" in argdict:
+ for key, value in argdict.iteritems():
+ if isinstance(key, str):
+ key = key.decode("utf-8")
+ if key.startswith("rights-"):
+ username = key.replace("rights-", "", 1)
+ self.project.setrights(username, value)
+ if key.startswith("rightsremove-"):
+ username = key.replace("rightsremove-", "", 1)
+ self.project.delrights(self.session, username)
+ username = argdict.get("rightsnew-username", None)
+ if username:
+ username = username.strip()
+ if self.session.loginchecker.userexists(username):
+ self.project.setrights(username, argdict.get("rightsnew", ""))
+ else:
+ raise IndexError(self.localize("Cannot set rights for username %s - user does not exist", username))
+ norights_text = self.localize("You do not have the rights to administer this project.")
+ templatename = "projectlangadmin"
+ sessionvars = {"status": self.session.status, "isopen": self.session.isopen, "issiteadmin": self.session.issiteadmin()}
+ instancetitle = getattr(self.session.instance, "title", session.localize("Pootle Demo"))
+ templatevars = {"pagetitle": pagetitle, "norights_text": norights_text,
+ "project": {"code": self.project.projectcode, "name": self.project.projectname},
+ "language": {"code": self.project.languagecode, "name": self.project.languagename},
+ "main_link": main_link,
+ "session": sessionvars, "instancetitle": instancetitle}
+ templatevars.update(self.getoptions())
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session, bannerheight=80)
+
+ def getoptions(self):
+ """returns a box that describes the options"""
+ self.project.readprefs()
+ if self.project.filestyle == "gnu":
+ filestyle_text = self.localize("This is a GNU-style project (one directory, files named per language).")
+ else:
+ filestyle_text = self.localize("This is a standard style project (one directory per language).")
+ permissions_title = self.localize("User Permissions")
+ username_title = self.localize("Username")
+ adduser_text = self.localize("(select to add user)")
+ rights_title = self.localize("Rights")
+ remove_title = self.localize("Remove")
+ nobodyrights = self.project.getrights(username=None)
+ nobody_dict = self.getuserdict("nobody", delete=False)
+ defaultrights = self.project.getrights(username="default")
+ default_dict = self.getuserdict("default", delete=False)
+ users_with_rights = ["nobody", "default"]
+ rights = {"nobody": nobodyrights, "default": defaultrights}
+ for username in self.project.getuserswithrights():
+ if username in ("nobody", "default"): continue
+ users_with_rights.append(username)
+ rights[username] = self.project.getrights(username=username)
+ users = self.project.getuserswithinterest(self.session)
+ user_details = {"nobody": nobody_dict, "default": default_dict}
+ for username, usernode in users.iteritems():
+ if not isinstance(username, unicode):
+ username = username.decode("utf-8")
+ user_dict = self.getuserdict(username, usernode=usernode)
+ user_details[username] = user_dict
+ # We need to make sure that users_with_rights are also in user_details,
+ # since they might not be there yet or anymore
+ for username in users_with_rights:
+ if username in user_details:
+ continue
+ user_dict = self.getuserdict(username, usernode=None)
+ user_details[username] = user_dict
+ users_without_rights = [username for username in user_details if username not in users_with_rights]
+ newuser_dict = self.getuserdict(None, delete=False)
+ updaterights_text = self.localize("Update Rights")
+ return {"filestyle_text": filestyle_text,
+ "permissions_title": permissions_title,
+ "username_title": username_title,
+ "rights_title": rights_title,
+ "remove_title": remove_title,
+ "users_with_rights": users_with_rights,
+ "users_without_rights": users_without_rights,
+ "user_details": user_details,
+ "rights": rights,
+ "newuser": newuser_dict,
+ "updaterights_text": updaterights_text,
+ "rightnames": self.rightnames,
+ "adduser_text": adduser_text,
+ }
+
+ def getuserdict(self, username, delete=True, usernode=None):
+ """gets a dictionary for the given user given user's rights"""
+ # l10n: The parameter is a languagecode, projectcode or username
+ remove_text = self.localize("Remove %s", username)
+ description = getattr(usernode, "description", None) or username
+ userdict = {"username": username, "delete": delete or None, "remove_text": remove_text, "description": description}
+ return userdict
+
diff --git a/Pootle-1.2.1/Pootle/benchmark.py b/Pootle-1.2.1/Pootle/benchmark.py
new file mode 100644
index 0000000..bea1a84
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/benchmark.py
@@ -0,0 +1,203 @@
+#!/usr/bin/env python
+#
+# Copyright 2004-2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+from Pootle import pootlefile
+from Pootle import projects
+from Pootle import potree
+from Pootle import pootle
+from Pootle import users
+from translate.storage import po
+from translate.search import indexing
+import os
+import profile
+import pstats
+
+class PootleBenchmarker:
+ """class to aid in benchmarking pootle"""
+ StoreClass = pootlefile.pootlefile
+ UnitClass = pootlefile.pootleunit
+ def __init__(self, test_dir):
+ """sets up benchmarking on the test directory"""
+ self.test_dir = os.path.abspath(test_dir)
+ self.project_dir = os.path.join(self.test_dir, "benchmark")
+ self.po_dir = os.path.join(self.project_dir, "zxx")
+
+ def clear_test_dir(self):
+ """removes the given directory"""
+ if os.path.exists(self.test_dir):
+ for dirpath, subdirs, filenames in os.walk(self.test_dir, topdown=False):
+ for name in filenames:
+ os.remove(os.path.join(dirpath, name))
+ for name in subdirs:
+ os.rmdir(os.path.join(dirpath, name))
+ if os.path.exists(self.test_dir): os.rmdir(self.test_dir)
+ assert not os.path.exists(self.test_dir)
+
+ def setup_server(self):
+ """gets a pootle server"""
+ cwd = os.path.abspath(os.path.curdir)
+ parser = pootle.PootleOptionParser()
+ prefsfile = os.path.join(self.test_dir, "pootle.prefs")
+ pootleprefsstr = """
+importmodules.pootleserver = 'Pootle.pootle'
+Pootle:
+ serverclass = pootleserver.PootleServer
+ sessionkey = 'dummy'
+ baseurl = "/"
+ userprefs = "users.prefs"
+ podirectory = "%s"
+ projects.benchmark:
+ fullname = "Benchmark"
+ description = "Benchmark auto-created files"
+ checkstyle = "standard"
+ localfiletype = "po"
+ languages.zxx.fullname = "Test Language"
+""" % (self.test_dir)
+ open(prefsfile, "w").write(pootleprefsstr)
+ userprefsfile = os.path.join(self.test_dir, "users.prefs")
+ open(userprefsfile, "w").write("testuser.activated=1\ntestuser.passwdhash = 'dd82c1882969461de74b46427961ea2c'\n")
+ options, args = parser.parse_args(["--prefsfile=%s" % prefsfile])
+ options.servertype = "dummy"
+ self.server = parser.getserver(options)
+ os.chdir(cwd)
+ return self.server
+
+ def get_session(self):
+ """gets a new session object"""
+ return users.PootleSession(self.server.sessioncache, self.server)
+
+ def create_sample_files(self, num_dirs, files_per_dir, strings_per_file, source_words_per_string, target_words_per_string):
+ """creates sample files for benchmarking"""
+ if not os.path.exists(self.test_dir):
+ os.mkdir(self.test_dir)
+ if not os.path.exists(self.project_dir):
+ os.mkdir(self.project_dir)
+ if not os.path.exists(self.po_dir):
+ os.mkdir(self.po_dir)
+ for dirnum in range(num_dirs):
+ if num_dirs > 1:
+ dirname = os.path.join(self.po_dir, "sample_%d" % dirnum)
+ if not os.path.exists(dirname):
+ os.mkdir(dirname)
+ else:
+ dirname = self.po_dir
+ for filenum in range(files_per_dir):
+ sample_file = self.StoreClass(pofilename=os.path.join(dirname, "file_%d.po" % filenum))
+ for stringnum in range(strings_per_file):
+ source_string = " ".join(["word%d" % i for i in range(source_words_per_string)])
+ sample_unit = sample_file.addsourceunit(source_string)
+ sample_unit.target = " ".join(["drow%d" % i for i in range(target_words_per_string)])
+ sample_file.savepofile()
+
+ def parse_po_files(self):
+ """parses all the po files in the test directory into memory"""
+ count = 0
+ for dirpath, subdirs, filenames in os.walk(self.po_dir, topdown=False):
+ for name in filenames:
+ pofilename = os.path.join(dirpath, name)
+ parsedfile = po.pofile(open(pofilename, 'r'))
+ count += len(parsedfile.units)
+ print "counted %d units" % count
+
+ def parse_and_create_stats(self):
+ """parses all the po files in the test directory into memory, using pootlefile, which creates Stats"""
+ count = 0
+ indexing.HAVE_INDEXER = False
+ for dirpath, subdirs, filenames in os.walk(self.po_dir, topdown=False):
+ for name in filenames:
+ pofilename = os.path.join(dirpath, name)
+ parsedfile = pootlefile.pootlefile(pofilename=pofilename)
+ count += len(parsedfile.units)
+ print "stats on %d units" % count
+
+ def parse_and_create_index(self):
+ """parses all the po files in the test directory into memory, using pootlefile, and allow index creation"""
+ count = 0
+ indexing.HAVE_INDEXER = True
+ self.server.potree.projectcache.clear()
+ project = self.server.potree.getproject("zxx", "benchmark")
+ for name in project.browsefiles():
+ count += len(project.getpofile(name).units)
+ print "indexed %d units" % count
+ assert os.path.exists(os.path.join(self.po_dir, ".poindex-%s-%s" % (project.projectcode, project.languagecode)))
+
+ def generate_main_page(self):
+ """tests generating the main page"""
+ session = self.get_session()
+ page = self.server.getpage(["index.html"], session, {})
+ print page.templatevars
+
+ def generate_projectindex_page(self):
+ """tests generating the index page for the project"""
+ session = self.get_session()
+ assert self.server.potree.haslanguage("zxx")
+ assert self.server.potree.hasproject("zxx", "benchmark")
+ page = self.server.getpage(["zxx", "benchmark"], session, {})
+ print page.templatevars
+
+ def generate_translation_page(self):
+ """tests generating the translation page for the file"""
+ session = self.get_session()
+ page = self.server.getpage(["zxx", "benchmark", "translate.html"], session, {})
+ print page.templatevars
+
+ def submit_translation_change(self):
+ """tests generating the translation page for the file"""
+ session = self.get_session()
+ project = self.server.potree.getproject("zxx", "benchmark")
+ project.setrights(None, ["view", "translate"])
+ pofilename = project.browsefiles()[0]
+ args = {"pofilename": pofilename, "submit0": "true", "trans0": "changed"}
+ page = self.server.getpage(["zxx", "benchmark", "translate.html"], session, args)
+ pofile = project.getpofile(pofilename)
+ print str(pofile.getitem(0))
+ # assert fails because of multistring
+ # assert pofile.getitem(0).unquotedmsgstr == "changed"
+ print page.templatevars
+
+if __name__ == "__main__":
+ for sample_file_sizes in [
+ # num_dirs, files_per_dir, strings_per_file, source_words_per_string, target_words_per_string
+ # (1, 1, 1, 1, 1),
+ (1, 1, 30, 10, 10),
+ # (1, 5, 10, 10, 10),
+ (1, 10, 10, 10, 10),
+ (5, 10, 10, 10, 10),
+ # (5, 10, 100, 20, 20),
+ # (10, 20, 100, 10, 10),
+ ]:
+ benchmarker = PootleBenchmarker("BenchmarkDir")
+ benchmarker.clear_test_dir()
+ benchmarker.create_sample_files(*sample_file_sizes)
+ benchmarker.setup_server()
+ methods = ["parse_po_files", "parse_and_create_stats", "parse_and_create_index",
+ "generate_main_page", "generate_projectindex_page", "generate_translation_page",
+ "submit_translation_change",
+ ]
+ for methodname in methods:
+ print methodname, "%d dirs, %d files, %d strings, %d/%d words" % sample_file_sizes
+ print "_______________________________________________________"
+ statsfile = methodname + '_%d_%d_%d_%d_%d.stats' % sample_file_sizes
+ profile.run('benchmarker.%s()' % methodname, statsfile)
+ stats = pstats.Stats(statsfile)
+ stats.sort_stats('cumulative').print_stats(20)
+ print "_______________________________________________________"
+ benchmarker.clear_test_dir()
+
diff --git a/Pootle-1.2.1/Pootle/conflict2suggest.py b/Pootle-1.2.1/Pootle/conflict2suggest.py
new file mode 100755
index 0000000..68b9d0f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/conflict2suggest.py
@@ -0,0 +1,90 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2005, 2006 Zuza Software Foundation
+#
+# This file is part of Pootle.
+#
+# Pootle is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# Pootle 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 General Public License
+# along with Pootle; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+"""processes conflicts from msgmerge and turns them into Pootle suggestions"""
+
+from Pootle import pootlefile
+from Pootle import projects
+import os
+
+conflictmarker = "#-#-#-#-#"
+
+def processfile(filename):
+ dummyproject = projects.DummyProject(os.path.dirname(filename), None)
+ pofile = pootlefile.pootlefile(dummyproject, os.path.basename(filename))
+ pofile.readpofile()
+ conflictitems = []
+ for item in pofile.statistics.getstats()["total"]:
+ poentry = pofile.units[item]
+ if poentry.hasplural():
+ targets = poentry.target.strings
+ else:
+ targets = [poentry.target]
+ for target in targets:
+ if conflictmarker in target:
+ conflictitems.append((item, targets))
+ break
+ for item, targets in conflictitems:
+ replacetargets = []
+ for target in targets:
+ if conflictmarker not in target:
+ replacetargets.append(target)
+ continue
+ lines = target.split("\n")
+ parts = []
+ marker, part = "", ""
+ for line in lines:
+ if line.startswith(conflictmarker) and line.endswith(conflictmarker):
+ if marker or part:
+ parts.append((marker, part))
+ marker = line[len(conflictmarker):-len(conflictmarker)]
+ part = ""
+ else:
+ part += line
+ if marker or part:
+ parts.append((marker, part))
+ for marker, part in parts:
+ pofile.addsuggestion(item, part, marker.strip())
+ replacetargets.append("")
+
+ newvalues = {"target": replacetargets}
+ pofile.updateunit(item, newvalues, None, None)
+
+def processdir(dirname):
+ for filename in os.listdir(dirname):
+ pathname = os.path.join(dirname, filename)
+ if os.path.isdir(pathname):
+ processdir(pathname)
+ elif filename.endswith(os.extsep + "po"):
+ processfile(pathname)
+
+if __name__ == "__main__":
+ import sys
+ for filename in sys.argv[1:]:
+ if os.path.isdir(filename):
+ processdir(filename)
+ elif os.path.isfile(filename):
+ processfile(filename)
+ else:
+ print >>sys.stderr, "cannot process", filename
+
+
+
diff --git a/Pootle-1.2.1/Pootle/conftest.py b/Pootle-1.2.1/Pootle/conftest.py
new file mode 100644
index 0000000..2cccf84
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/conftest.py
@@ -0,0 +1,11 @@
+# customization of py.test collection
+
+import py.test.collect
+
+class PootleDirectory(py.test.collect.Directory):
+ def recfilter(self, path):
+ return super(PootleDirectory, self).recfilter(path) and \
+ path.basename not in ('po')
+
+Directory = PootleDirectory
+
diff --git a/Pootle-1.2.1/Pootle/filelocations.py b/Pootle-1.2.1/Pootle/filelocations.py
new file mode 100644
index 0000000..a06d824
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/filelocations.py
@@ -0,0 +1,48 @@
+# -*- coding: utf-8 -*-
+#
+# Copyright 2005 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+"""module to handle consistent file locations for Pootle"""
+
+import os.path
+import sys
+import imp
+
+def check_if_frozen():
+ return (hasattr(sys, "frozen") or # new py2exe
+ hasattr(sys, "importers") # old py2exe
+ or imp.is_frozen("__main__")) # tools/freeze
+
+is_frozen = check_if_frozen()
+# same directory as this file (or the executable under py2exe)
+if is_frozen:
+ pootledir = os.path.abspath(os.path.dirname(sys.executable))
+ jtoolkitdir = os.path.abspath(os.path.dirname(sys.executable))
+else:
+ from jToolkit import __version__ as jtoolkitversion
+ pootledir = os.path.abspath(os.path.dirname(__file__))
+ jtoolkitdir = os.path.dirname(jtoolkitversion.__file__)
+
+# default prefs file is pootle.prefs in the pootledir
+prefsfile = os.path.join(pootledir, 'pootle.prefs')
+
+htmldir = os.path.join(pootledir, "html")
+templatedir = os.path.join(pootledir, "templates")
+sys.path.append(templatedir) # So kid can find our templates
+
diff --git a/Pootle-1.2.1/Pootle/html/doc/en/howto.html b/Pootle-1.2.1/Pootle/html/doc/en/howto.html
new file mode 100644
index 0000000..adb515d
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/doc/en/howto.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html>
+<head>
+ <meta name="generator" content=
+ "HTML Tidy for Linux/x86 (vers 1st March 2004), see www.w3.org">
+
+ <title>Pootle's HOWTO</title>
+ <meta http-equiv="Content-Type" content=
+ "text/html; charset=UTF-8">
+ <link rel="stylesheet" type="text/css" href=
+ "../../pootle.css">
+ <link rel="shortcut icon" href="../../favicon.ico">
+</head>
+
+<body>
+ <div id="banner">
+ <h1>Pootle documentation</h1>
+ </div>
+
+ <div id="content">
+ <div class="contents">
+ <h3 class="title">Pootle howto: how to use it</h3>
+
+ <div class="intro">
+ <ul>
+ <li><a href="#about">About Pootle</a></li>
+
+ <li><a href="#registration">Registration</a></li>
+
+ <li><a href="#login">Login and User Page setup</a></li>
+
+ <li><a href="#browsing">Browsing the files tree</a></li>
+
+ <li><a href="#translation">Online translating with
+ Pootle</a></li>
+
+ <li><a href="#aids">Other aids from Pootle</a></li>
+ </ul>
+ </div>
+
+ <h3 class="title" id="about">About Pootle</h3>
+
+ <div class="info">
+ The name stands for PO-based Online Translation /
+ Localization Engine, but you may need to read <a href=
+ "http://www.thechestnut.com/flumps.htm" target=
+ "_blank">this</a>.<br>
+ Pootle is a web portal that allows you to translate more
+ easily.<br>
+ Pootle is GPL licensed Free Software, and you can download
+ it and run your own copy if you like.<br>
+ You can also help participate in the development in many
+ ways (you don't have to be able to program).<br>
+ The Pootle project itself is hosted at <a href=
+ "http://translate.sourceforge.net/" target=
+ "_blank">translate.sourceforge.net</a> where you can find
+ details about source code, mailing lists etc.<br>
+
+ <div style="margin-left: 2em">
+ <a href="#content">up</a>
+ </div>
+ </div><br>
+
+ <h3 class="title" id="registration">Registration</h3>
+
+ <div class="info">
+ While everybody can view the files, only registered users
+ can edit them and receive credit for their effort, so the
+ first thing you should do in order to translate is to
+ register.<br>
+ You can register following two simple steps, providing you
+ have a current email address:<br>
+ 1. <a href="../../register.html"
+ target="_blank">Fill in your User Name, Password and a
+ valid E-mail account</a>, choose "Register" and an
+ activation code will be sent to the E-mail address you've
+ provided.<br>
+ 2. When you receive the activation code and login details
+ by E-mail go to the <a href=
+ "../../activate.html" target=
+ "_blank">Activation page</a> and fill them in. Choose
+ "Activate Account" and your account will be activated,
+ giving you permission to edit the Pootle translation
+ files.<br>
+
+ <div style="margin-left: 2em">
+ <a href="#content">up</a>
+ </div>
+ </div><br>
+
+ <h3 class="title" id="login">Login and User Page setup</h3>
+
+ <div class="info">
+ Now that you are a registered user, <a href=
+ "../../login.html" target=
+ "_blank">login to Pootle</a>.<br>
+ Once you have logged in, you will be presented with your
+ User Page, which includes links to your selected languages
+ and projects. Choose "Change options" to edit your User
+ Page, and choose "Home Page" from the "Option Page" to
+ return to your User page.<br>
+
+ <div style="margin-left: 2em">
+ <a href="#content">up</a>
+ </div>
+ </div><br>
+
+ <h3 class="title" id="browsing">Browsing the files tree</h3>
+
+ <div class="info">
+ Now that your User Page is set up, you can reach the
+ desired files for translation directly through the links in
+ it.<br>
+ Another way to find the file you wish to translate is
+ through the <a href="../../" target=
+ "_blank">the main page</a>.<br>
+ The main page displays two categories - Languages and
+ Projects. Choosing a language will give you the list of
+ projects available for translation into this language;
+ choosing a project will give you the list of languages to
+ which it can be translated.<br>
+ Once you have choose both the project and the language,
+ you'll be presented with the files available for
+ translation.<br>
+
+ <div style="margin-left: 2em">
+ <a href="#content">up</a>
+ </div>
+ </div><br>
+
+ <h3 class="title" id="translation">Online translating with
+ Pootle</h3>
+
+ <div class="info">
+ Each file available for translation can be accessible in
+ two ways - "Quick Translate" will show only the fuzzy and
+ untranslated entries, while "Translate All" will show all
+ the entries in the file, translated or not. In both cases
+ you'll be presented with a two-column table, with the
+ strings to be translated on the left, and the current
+ translation on the right.<br>
+ The current edited entry will appear as of a text box with
+ the options "Skip" and "Submit" below it. Naturally you can
+ enter text in the text box and submit it or skip to the
+ next entry.<br>
+ You can also directly access any of the other entries
+ presented by hovering the mouse over the right-hand edge of
+ the text and clicking on the pop-up "Edit" option.<br>
+
+ <div style="margin-left: 2em">
+ <a href="#content">up</a>
+ </div>
+ </div><br>
+
+ <h3 class="title" id="aids">Other aids from Pootle</h3>
+
+ <div class="info">
+ The files available for translation sometimes offer you, in
+ addition to the above, the options to download the PO file
+ and/or the CVS version.<br>
+
+ <div style="margin-left: 2em">
+ <a href="#content">up</a>
+ </div>
+ </div>
+ </div>
+ </div>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/html/doc/en/index.html b/Pootle-1.2.1/Pootle/html/doc/en/index.html
new file mode 100644
index 0000000..29aeae2
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/doc/en/index.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html>
+<head>
+ <meta name="generator" content=
+ "HTML Tidy for Linux/x86 (vers 1st March 2004), see www.w3.org">
+
+ <title>Pootle Documentation</title>
+ <meta http-equiv="Content-Type" content=
+ "text/html; charset=UTF-8">
+ <link rel="stylesheet" type="text/css" href=
+ "../../pootle.css">
+ <link rel="shortcut icon" href="../../favicon.ico">
+</head>
+
+<body>
+ <div id="banner">
+ <h1>Pootle documentation</h1>
+ </div>
+
+ <div id="content">
+ <div class="contents">
+ <h3 class="title">Pootle Documentation</h3>
+ <div class="info">
+ There are various docs available, see below for the links.
+ </div>
+ <div class="info">
+ <ul>
+ <li><a href="howto.html">Pootle HOWTO</a>: guide to using Pootle</li>
+ <li><a href="resources.html">Resources</a>: other helpful resources, where to ask questions etc</li>
+ </ul>
+ This documentation is also available in the following languages:
+ <ul>
+ <li><a href="http://translate.sourceforge.net/wiki/users/af/user_guide" alt="Afrikaans">Afrikaans</a></li>
+ <li><a href="http://translate.sourceforge.net/wiki/users/de/user_guide" alt="German">German</a></li>
+ <li><a href="http://translate.sourceforge.net/wiki/users/es/user_guide" alt="Spanish">Spanish</a></li>
+ <li><a href="http://translate.sourceforge.net/wiki/users/eu/user_guide" alt="Basque">Basque</a></li>
+ <li><a href="http://translate.sourceforge.net/wiki/users/fa/user_guide" alt="Persian">Persian</a></li>
+ <li><a href="http://translate.sourceforge.net/wiki/users/fr/user_guide" alt="French">French</a></li>
+ </ul>
+ </div>
+ </div>
+ </div>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/html/doc/en/resources.html b/Pootle-1.2.1/Pootle/html/doc/en/resources.html
new file mode 100644
index 0000000..a7f7102
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/doc/en/resources.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html>
+<head>
+ <meta name="generator" content=
+ "HTML Tidy for Linux/x86 (vers 1st March 2004), see www.w3.org">
+
+ <title>Pootle Resources</title>
+ <meta http-equiv="Content-Type" content=
+ "text/html; charset=UTF-8">
+ <link rel="stylesheet" type="text/css" href=
+ "../../pootle.css">
+ <link rel="shortcut icon" href="../../favicon.ico">
+</head>
+
+<body>
+ <div id="banner">
+ <h1>Pootle documentation</h1>
+ </div>
+
+ <div id="content">
+ <div class="contents">
+ <h3 class="title">Pootle Resources</h3>
+ <div class="info">
+ Pootle development and support happens in a variety of places, outlined below
+ </div>
+ <div class="info">
+ <ul>
+ <li><a href="http://lists.sourceforge.net/mailman/listinfo/translate-pootle">Pootle mailing list</a>: the definitive place to ask questions, discuss development, etc. Please sign up!</li>
+ <li><a href="irc://irc.freenode.net/#pootle">Pootle IRC channel</a>: for realtime discussion</li>
+ <li><a href="http://translate.sourceforge.net/wiki/pootle/index">Pootle Wiki</a>: online documentation for Pootle</li>
+ <li><a href="http://translate.sourceforge.net/wiki/guide/start">Localisation Guide</a>: online localization guide for new and old localizers alike</li>
+ </ul>
+ </div>
+ </div>
+ </div>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/html/favicon.ico b/Pootle-1.2.1/Pootle/html/favicon.ico
new file mode 100644
index 0000000..200d102
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/favicon.ico
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/bullet_arrow_down.png b/Pootle-1.2.1/Pootle/html/images/bullet_arrow_down.png
new file mode 100644
index 0000000..9b23c06
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/bullet_arrow_down.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/bullet_arrow_up.png b/Pootle-1.2.1/Pootle/html/images/bullet_arrow_up.png
new file mode 100644
index 0000000..24df0f4
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/bullet_arrow_up.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/down.png b/Pootle-1.2.1/Pootle/html/images/down.png
new file mode 100644
index 0000000..75b5857
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/down.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/edit.png b/Pootle-1.2.1/Pootle/html/images/edit.png
new file mode 100644
index 0000000..3677539
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/edit.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/file.png b/Pootle-1.2.1/Pootle/html/images/file.png
new file mode 100644
index 0000000..777b51a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/file.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/folder.png b/Pootle-1.2.1/Pootle/html/images/folder.png
new file mode 100644
index 0000000..a913d60
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/folder.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/gap.png b/Pootle-1.2.1/Pootle/html/images/gap.png
new file mode 100644
index 0000000..cb96bb0
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/gap.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/goal.png b/Pootle-1.2.1/Pootle/html/images/goal.png
new file mode 100644
index 0000000..0845605
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/goal.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/gradient.png b/Pootle-1.2.1/Pootle/html/images/gradient.png
new file mode 100644
index 0000000..375bf67
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/gradient.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/gtk-apply.png b/Pootle-1.2.1/Pootle/html/images/gtk-apply.png
new file mode 100644
index 0000000..ddcf494
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/gtk-apply.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/gtk-cancel.png b/Pootle-1.2.1/Pootle/html/images/gtk-cancel.png
new file mode 100644
index 0000000..d68dc5a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/gtk-cancel.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/information.png b/Pootle-1.2.1/Pootle/html/images/information.png
new file mode 100644
index 0000000..12cd1ae
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/information.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/language.png b/Pootle-1.2.1/Pootle/html/images/language.png
new file mode 100644
index 0000000..c48138f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/language.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/none.png b/Pootle-1.2.1/Pootle/html/images/none.png
new file mode 100644
index 0000000..37c28e7
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/none.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/person.png b/Pootle-1.2.1/Pootle/html/images/person.png
new file mode 100644
index 0000000..f522bfa
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/person.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/pootle-medium.png b/Pootle-1.2.1/Pootle/html/images/pootle-medium.png
new file mode 100644
index 0000000..bd6fb1c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/pootle-medium.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/pootle.png b/Pootle-1.2.1/Pootle/html/images/pootle.png
new file mode 100644
index 0000000..e2930a3
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/pootle.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/images/up.png b/Pootle-1.2.1/Pootle/html/images/up.png
new file mode 100644
index 0000000..c909324
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/images/up.png
Binary files differ
diff --git a/Pootle-1.2.1/Pootle/html/js/autoexpand.js b/Pootle-1.2.1/Pootle/html/js/autoexpand.js
new file mode 100644
index 0000000..de186e4
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/js/autoexpand.js
@@ -0,0 +1,241 @@
+var W3CDOM = (document.createElement && document.getElementsByTagName);
+
+window.onload = init;
+
+function init()
+{
+ if (!W3CDOM) return;
+ var divs = document.getElementsByTagName('div');
+ for (var i=0;i<divs.length;i++)
+ {
+ if (divs[i].className.indexOf('autoexpand') != -1)
+ {
+ var divobj = divs[i];
+ if (divobj.id.match("orig[0-9]+"))
+ {
+ divobj.rownum = parseInt(divobj.id.replace("orig", ""));
+ divobj.partner = document.getElementById("trans"+divobj.rownum)
+ divobj.editlink = document.getElementById("editlink"+divobj.rownum)
+ }
+ else if (divobj.id.match("trans[0-9]+"))
+ {
+ divobj.rownum = parseInt(divobj.id.replace("trans", ""));
+ divobj.partner = document.getElementById("orig"+divobj.rownum)
+ divobj.editlink = document.getElementById("editlink"+divobj.rownum)
+ }
+ else
+ {
+ divobj.rownum = -1;
+ }
+ divobj.contractedHeight = 50;
+ divobj.expandedHeight = 999;
+ divobj.makeexpanded = makeexpanded;
+ divobj.makecontracted = makecontracted;
+ divobj.expandaction = expandaction;
+ divobj.contractaction = contractaction;
+ divobj.autoexpandstate = 'mouse';
+ divobj.onmouseover = mouseGoesOver;
+ divobj.onmouseout = mouseGoesOut;
+ divobj.onclick = mouseClick;
+ divobj.makecontracted();
+ }
+ }
+}
+
+function makeexpanded()
+{
+ this.style.maxHeight = this.expandedHeight + 'px';
+ if (this.offsetHeight >= this.expandedHeight)
+ this.style.borderBottom = '1px dotted #999';
+ else
+ this.style.borderBottom = '0';
+ if (this.editlink)
+ this.editlink.style.display = 'inline';
+}
+
+function makecontracted()
+{
+ this.style.maxHeight = this.contractedHeight + 'px';
+ if (this.offsetHeight >= this.contractedHeight)
+ this.style.borderBottom = '1px dotted #999';
+ else
+ this.style.borderBottom = '0';
+ if (this.editlink)
+ this.editlink.style.display = 'none';
+}
+
+function expandaction()
+{
+ if (this.autoexpandstate == 'mouse')
+ {
+ this.makeexpanded();
+ if (this.partner)
+ {
+ this.partner.makeexpanded();
+ }
+ }
+}
+
+function contractaction()
+{
+ if (this.autoexpandstate == 'mouse')
+ {
+ this.makecontracted();
+ if (this.partner)
+ {
+ this.partner.makecontracted();
+ }
+ }
+}
+
+function timedexpansion(divid)
+{
+ var div = document.getElementById(divid);
+ div.expandaction();
+}
+
+function timedcontraction(divid)
+{
+ var div = document.getElementById(divid);
+ div.contractaction();
+}
+
+function mouseGoesOver()
+{
+ if (this.timeevent)
+ clearTimeout(this.timeevent);
+ if (this.partner)
+ if (this.partner.timeevent)
+ clearTimeout(this.partner.timeevent);
+ this.timeevent = setTimeout('timedexpansion("'+this.id+'")', 500);
+}
+
+function mouseGoesOut()
+{
+ if (this.timeevent)
+ clearTimeout(this.timeevent);
+ if (this.partner)
+ if (this.partner.timeevent)
+ clearTimeout(this.partner.timeevent);
+ this.timeevent = setTimeout('timedcontraction("'+this.id+'")', 1000);
+}
+
+function mouseClick()
+{
+ if (this.autoexpandstate == 'mouse')
+ {
+ this.autoexpandstate = 'seton';
+ this.makeexpanded();
+ if (this.partner)
+ {
+ this.partner.makeexpanded();
+ this.partner.autoexpandstate = 'seton';
+ }
+ }
+ else // if (this.autoexpandstate == 'seton')
+ {
+ this.autoexpandstate = 'mouse';
+ this.makecontracted();
+ if (this.partner)
+ {
+ this.partner.makecontracted();
+ this.partner.autoexpandstate = 'mouse';
+ }
+ }
+}
+
+function findsiblingtextarea(link)
+{
+ var parentdiv = link.parentNode;
+ if (parentdiv.nodeName != 'DIV') return null;
+ var childnodes = parentdiv.childNodes;
+ for (var i=0; i < childnodes.length; i++)
+ {
+ if (childnodes[i].nodeName == 'TEXTAREA')
+ return childnodes[i];
+ }
+ return null;
+}
+
+function expandtextarea(link)
+{
+ if (link == null) alert("link is null");
+ var textarea = findsiblingtextarea(link);
+ if (textarea == null) return true;
+ if (textarea.rows >= 3)
+ textarea.rows += 3;
+ else
+ textarea.rows += 1;
+ return false;
+}
+
+function contracttextarea(link)
+{
+ if (link == null) alert("link is null");
+ var textarea = findsiblingtextarea(link);
+ if (textarea == null) return true;
+ if (textarea.rows > 3)
+ textarea.rows -= 3;
+ else if (textarea.rows > 1)
+ textarea.rows -= 1;
+ return false;
+}
+
+function copyorigtranslation(elementNumber)
+{
+ var i = 0;
+ var enelement = document.getElementById("orig-pure" + elementNumber + "." + 0);
+ //no plurals
+ var trelement = document.getElementById("areatrans" + elementNumber );
+ if (trelement){
+ trelement.value = enelement.value.replace("\n", "\\n\n", "g").replace("\t", "\\t", "g");
+ trelement.focus();
+ return;
+ }
+
+ //plurals
+ trelement = document.getElementById("areatrans" + elementNumber + "." + i );
+ while (trelement)
+ {
+ trelement.focus(); //it will go to the last one
+ trelement.value = enelement.value.replace("\n", "\\n\n", "g").replace("\t", "\\t", "g");
+ i++;
+ trelement = document.getElementById("areatrans" + elementNumber + "." + i );
+ }
+}
+
+var focusedElement;
+function setfocusedelement(element)
+{
+ focusedElement = element;
+}
+
+function writespecial(specialchar, elementnumber)
+{
+ //elementnumber will be something like "trans4"
+ var element = document.getElementById("area" + elementnumber);
+ if (focusedElement)
+ insertatposition(focusedElement, specialchar, 0);
+}
+
+function insertatposition(element, text, rollback)
+{
+ element.focus();
+ if (navigator && navigator.appName == "Microsoft Internet Explorer")
+ {
+ document.selection.createRange().text = text;
+ }
+ else
+ {
+ var wholetext = element.value;
+ var cursorposition = element.selectionStart;
+ var finalposition = cursorposition + text.length - rollback;
+
+ var before = wholetext.substr(0, cursorposition);
+ var after = wholetext.substr(cursorposition, wholetext.length);
+
+ element.value = before + text + after;
+ element.setSelectionRange(finalposition, finalposition);
+ }
+}
+
diff --git a/Pootle-1.2.1/Pootle/html/js/correctpng.js b/Pootle-1.2.1/Pootle/html/js/correctpng.js
new file mode 100644
index 0000000..ac3947f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/js/correctpng.js
@@ -0,0 +1,39 @@
+/*
+
+Correctly handle PNG transparency in Win IE 5.5 & 6.
+http://homepage.ntlworld.com/bobosola. Updated 18-Jan-2006.
+
+Use in <HEAD> with DEFER keyword wrapped in conditional comments:
+<!--[if lt IE 7]>
+<script defer type="text/javascript" src="pngfix.js"></script>
+<![endif]-->
+
+*/
+
+var arVersion = navigator.appVersion.split("MSIE")
+var version = parseFloat(arVersion[1])
+
+if ((version >= 5.5) && (document.body.filters))
+{
+ for(var i=0; i<document.images.length; i++)
+ {
+ var img = document.images[i]
+ var imgName = img.src.toUpperCase()
+ if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
+ {
+ var imgID = (img.id) ? "id='" + img.id + "' " : ""
+ var imgClass = (img.className) ? "class='" + img.className + "' " : ""
+ var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
+ var imgStyle = "display:inline-block;" + img.style.cssText
+ if (img.align == "left") imgStyle = "float:left;" + imgStyle
+ if (img.align == "right") imgStyle = "float:right;" + imgStyle
+ if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
+ var strNewHTML = "<span " + imgID + imgClass + imgTitle
+ + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
+ + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
+ + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
+ img.outerHTML = strNewHTML
+ i = i-1
+ }
+ }
+}
diff --git a/Pootle-1.2.1/Pootle/html/js/jquery/jquery.color.js b/Pootle-1.2.1/Pootle/html/js/jquery/jquery.color.js
new file mode 100644
index 0000000..dbb254d
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/js/jquery/jquery.color.js
@@ -0,0 +1,123 @@
+/*
+ * jQuery Color Animations
+ * Copyright 2007 John Resig
+ * Released under the MIT and GPL licenses.
+ */
+
+(function(jQuery){
+
+ // We override the animation for all of these color styles
+ jQuery.each(['backgroundColor', 'borderBottomColor', 'borderLeftColor', 'borderRightColor', 'borderTopColor', 'color', 'outlineColor'], function(i,attr){
+ jQuery.fx.step[attr] = function(fx){
+ if ( fx.state == 0 ) {
+ fx.start = getColor( fx.elem, attr );
+ fx.end = getRGB( fx.end );
+ }
+
+ fx.elem.style[attr] = "rgb(" + [
+ Math.max(Math.min( parseInt((fx.pos * (fx.end[0] - fx.start[0])) + fx.start[0]), 255), 0),
+ Math.max(Math.min( parseInt((fx.pos * (fx.end[1] - fx.start[1])) + fx.start[1]), 255), 0),
+ Math.max(Math.min( parseInt((fx.pos * (fx.end[2] - fx.start[2])) + fx.start[2]), 255), 0)
+ ].join(",") + ")";
+ }
+ });
+
+ // Color Conversion functions from highlightFade
+ // By Blair Mitchelmore
+ // http://jquery.offput.ca/highlightFade/
+
+ // Parse strings looking for color tuples [255,255,255]
+ function getRGB(color) {
+ var result;
+
+ // Check if we're already dealing with an array of colors
+ if ( color && color.constructor == Array && color.length == 3 )
+ return color;
+
+ // Look for rgb(num,num,num)
+ if (result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color))
+ return [parseInt(result[1]), parseInt(result[2]), parseInt(result[3])];
+
+ // Look for rgb(num%,num%,num%)
+ if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color))
+ return [parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55];
+
+ // Look for #a0b1c2
+ if (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color))
+ return [parseInt(result[1],16), parseInt(result[2],16), parseInt(result[3],16)];
+
+ // Look for #fff
+ if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color))
+ return [parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16)];
+
+ // Otherwise, we're most likely dealing with a named color
+ return colors[jQuery.trim(color).toLowerCase()];
+ }
+
+ function getColor(elem, attr) {
+ var color;
+
+ do {
+ color = jQuery.curCSS(elem, attr);
+
+ // Keep going until we find an element that has color, or we hit the body
+ if ( color != '' && color != 'transparent' || jQuery.nodeName(elem, "body") )
+ break;
+
+ attr = "backgroundColor";
+ } while ( elem = elem.parentNode );
+
+ return getRGB(color);
+ };
+
+ // Some named colors to work with
+ // From Interface by Stefan Petre
+ // http://interface.eyecon.ro/
+
+ var colors = {
+ aqua:[0,255,255],
+ azure:[240,255,255],
+ beige:[245,245,220],
+ black:[0,0,0],
+ blue:[0,0,255],
+ brown:[165,42,42],
+ cyan:[0,255,255],
+ darkblue:[0,0,139],
+ darkcyan:[0,139,139],
+ darkgrey:[169,169,169],
+ darkgreen:[0,100,0],
+ darkkhaki:[189,183,107],
+ darkmagenta:[139,0,139],
+ darkolivegreen:[85,107,47],
+ darkorange:[255,140,0],
+ darkorchid:[153,50,204],
+ darkred:[139,0,0],
+ darksalmon:[233,150,122],
+ darkviolet:[148,0,211],
+ fuchsia:[255,0,255],
+ gold:[255,215,0],
+ green:[0,128,0],
+ indigo:[75,0,130],
+ khaki:[240,230,140],
+ lightblue:[173,216,230],
+ lightcyan:[224,255,255],
+ lightgreen:[144,238,144],
+ lightgrey:[211,211,211],
+ lightpink:[255,182,193],
+ lightyellow:[255,255,224],
+ lime:[0,255,0],
+ magenta:[255,0,255],
+ maroon:[128,0,0],
+ navy:[0,0,128],
+ olive:[128,128,0],
+ orange:[255,165,0],
+ pink:[255,192,203],
+ purple:[128,0,128],
+ violet:[128,0,128],
+ red:[255,0,0],
+ silver:[192,192,192],
+ white:[255,255,255],
+ yellow:[255,255,0]
+ };
+
+})(jQuery);
diff --git a/Pootle-1.2.1/Pootle/html/js/jquery/jquery.js b/Pootle-1.2.1/Pootle/html/js/jquery/jquery.js
new file mode 100644
index 0000000..82b98e1
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/js/jquery/jquery.js
@@ -0,0 +1,32 @@
+/*
+ * jQuery 1.2.6 - New Wave Javascript
+ *
+ * Copyright (c) 2008 John Resig (jquery.com)
+ * Dual licensed under the MIT (MIT-LICENSE.txt)
+ * and GPL (GPL-LICENSE.txt) licenses.
+ *
+ * $Date: 2008-05-24 14:22:17 -0400 (Sat, 24 May 2008) $
+ * $Rev: 5685 $
+ */
+(function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;}if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3])return jQuery().find(selector);return jQuery(elem);}selector=[];}}else
+return jQuery(context).find(selector);}else if(jQuery.isFunction(selector))return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String)if(value===undefined)return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;}return this.each(function(i){for(name in options)jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0)value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null)return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8)ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0])jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild)elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1)this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1)this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else
+return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined)this[expando]=null;});if(events===true)this.find("*").andSelf().each(function(i){if(this.nodeType==3)return;var events=jQuery.data(this,"events");for(var type in events)for(var handler in events[type])jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String)if(isSimple.test(selector))return this.pushStack(jQuery.multiFilter(selector,this,true));else
+selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0)return null;for(var i=one?index:0,max=one?index+1:options.length;i<max;i++){var option=options[i];if(option.selected){value=jQuery.browser.msie&&!option.attributes.value.specified?option.text:option.value;if(one)return value;values.push(value);}}return values;}else
+return(this[0].value||"").replace(/\r/g,"");}return undefined;}if(value.constructor==Number)value+='';return this.each(function(){if(this.nodeType!=1)return;if(value.constructor==Array&&/radio|checkbox/.test(this.type))this.checked=(jQuery.inArray(this.value,value)>=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length)this.selectedIndex=-1;}else
+this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length)data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else
+return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse)elems.reverse();}var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr"))obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script"))scripts=scripts.add(elem);else{if(elem.nodeType==1)scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"script"});else
+jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode)elem.parentNode.removeChild(elem);}function now(){return+new Date;}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;}if(typeof target!="object"&&typeof target!="function")target={};if(length==i){target=this;--i;}for(;i<length;i++)if((options=arguments[i])!=null)for(var name in options){var src=target[name],copy=options[name];if(target===copy)continue;if(deep&&copy&&typeof copy=="object"&&!copy.nodeType)target[name]=jQuery.extend(deep,src||(copy.length!=null?[]:{}),copy);else if(copy!==undefined)target[name]=copy;}return target;};var expando="jQuery"+now(),uuid=0,windowData={},exclude=/z-?index|font-?weight|opacity|zoom|line-?height/i,defaultView=document.defaultView||{};jQuery.extend({noConflict:function(deep){window.$=_$;if(deep)window.jQuery=_jQuery;return jQuery;},isFunction:function(fn){return!!fn&&typeof fn!="string"&&!fn.nodeName&&fn.constructor!=Array&&/^[\s[]?function/.test(fn+"");},isXMLDoc:function(elem){return elem.documentElement&&!elem.body||elem.tagName&&elem.ownerDocument&&!elem.ownerDocument.body;},globalEval:function(data){data=jQuery.trim(data);if(data){var head=document.getElementsByTagName("head")[0]||document.documentElement,script=document.createElement("script");script.type="text/javascript";if(jQuery.browser.msie)script.text=data;else
+script.appendChild(document.createTextNode(data));head.insertBefore(script,head.firstChild);head.removeChild(script);}},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()==name.toUpperCase();},cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id)id=elem[expando]=++uuid;if(name&&!jQuery.cache[id])jQuery.cache[id]={};if(data!==undefined)jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id])break;if(!name)jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute)elem.removeAttribute(expando);}delete jQuery.cache[id];}},each:function(object,callback,args){var name,i=0,length=object.length;if(args){if(length==undefined){for(name in object)if(callback.apply(object[name],args)===false)break;}else
+for(;i<length;)if(callback.apply(object[i++],args)===false)break;}else{if(length==undefined){for(name in object)if(callback.call(object[name],name,object[name])===false)break;}else
+for(var value=object[0];i<length&&callback.call(value,i,value)!==false;value=object[++i]){}}return object;},prop:function(elem,value,type,i,name){if(jQuery.isFunction(value))value=value.call(elem,i);return value&&value.constructor==Number&&type=="curCSS"&&!exclude.test(name)?value+"px":value;},className:{add:function(elem,classNames){jQuery.each((classNames||"").split(/\s+/),function(i,className){if(elem.nodeType==1&&!jQuery.className.has(elem.className,className))elem.className+=(elem.className?" ":"")+className;});},remove:function(elem,classNames){if(elem.nodeType==1)elem.className=classNames!=undefined?jQuery.grep(elem.className.split(/\s+/),function(className){return!jQuery.className.has(classNames,className);}).join(" "):"";},has:function(elem,className){return jQuery.inArray(className,(elem.className||elem).toString().split(/\s+/))>-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.call(elem);for(var name in options)elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);}if(jQuery(elem).is(":visible"))getWH();else
+jQuery.swap(elem,props,getWH);return Math.max(0,val);}return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari)return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;}if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;}if(name.match(/float/i))name=styleFloat;if(!force&&style&&style[name])ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i))name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem))ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode)stack.unshift(a);for(;i<stack.length;i++)if(color(stack[i])){swap[i]=stack[i].style.display;stack[i].style.display="block";}ret=name=="display"&&swap[stack.length-1]!=null?"none":(computedStyle&&computedStyle.getPropertyValue(name))||"";for(i=0;i<swap.length;i++)if(swap[i]!=null)stack[i].style.display=swap[i];}if(name=="opacity"&&ret=="")ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}}return ret;},clean:function(elems,context){var ret=[];context=context||document;if(typeof context.createElement=='undefined')context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;jQuery.each(elems,function(i,elem){if(!elem)return;if(elem.constructor==Number)elem+='';if(typeof elem=="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+"></"+tag+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!tags.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!tags.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!tags.indexOf("<td")||!tags.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!tags.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||jQuery.browser.msie&&[1,"div<div>","</div>"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--)div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf("<table")&&tags.indexOf("<tbody")<0?div.firstChild&&div.firstChild.childNodes:wrap[1]=="<table>"&&tags.indexOf("<tbody")<0?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);}elem=jQuery.makeArray(div.childNodes);}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select")))return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options)ret.push(elem);else
+ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari)elem.parentNode.selectedIndex;if(name in elem&&notxml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode)throw"type property can't be changed";elem[name]=value;}if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name))return elem.getAttributeNode(name).nodeValue;return elem[name];}if(msie&&notxml&&name=="style")return jQuery.attr(elem.style,"cssText",value);if(set)elem.setAttribute(name,""+value);var attr=msie&&notxml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;}if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set)elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call)ret[0]=array;else
+while(i)ret[--i]=array[i];}return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i<length;i++)if(array[i]===elem)return i;return-1;},merge:function(first,second){var i=0,elem,pos=first.length;if(jQuery.browser.msie){while(elem=second[i++])if(elem.nodeType!=8)first[pos++]=elem;}else
+while(elem=second[i++])first[pos++]=elem;return first;},unique:function(array){var ret=[],done={};try{for(var i=0,length=array.length;i<length;i++){var id=jQuery.data(array[i]);if(!done[id]){done[id]=true;ret.push(array[i]);}}}catch(e){ret=array;}return ret;},grep:function(elems,callback,inv){var ret=[];for(var i=0,length=elems.length;i<length;i++)if(!inv!=!callback(elems[i],i))ret.push(elems[i]);return ret;},map:function(elems,callback){var ret=[];for(var i=0,length=elems.length;i<length;i++){var value=callback(elems[i],i);if(value!=null)ret[ret.length]=value;}return ret.concat.apply([],ret);}});var userAgent=navigator.userAgent.toLowerCase();jQuery.browser={version:(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[])[1],safari:/webkit/.test(userAgent),opera:/opera/.test(userAgent),msie:/msie/.test(userAgent)&&!/opera/.test(userAgent),mozilla:/mozilla/.test(userAgent)&&!/(compatible|webkit)/.test(userAgent)};var styleFloat=jQuery.browser.msie?"styleFloat":"cssFloat";jQuery.extend({boxModel:!jQuery.browser.msie||document.compatMode=="CSS1Compat",props:{"for":"htmlFor","class":"className","float":styleFloat,cssFloat:styleFloat,styleFloat:styleFloat,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing"}});jQuery.each({parent:function(elem){return elem.parentNode;},parents:function(elem){return jQuery.dir(elem,"parentNode");},next:function(elem){return jQuery.nth(elem,2,"nextSibling");},prev:function(elem){return jQuery.nth(elem,2,"previousSibling");},nextAll:function(elem){return jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return jQuery.dir(elem,"previousSibling");},siblings:function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem);},children:function(elem){return jQuery.sibling(elem.firstChild);},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(selector){var ret=jQuery.map(this,fn);if(selector&&typeof selector=="string")ret=jQuery.multiFilter(selector,ret);return this.pushStack(jQuery.unique(ret));};});jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(){var args=arguments;return this.each(function(){for(var i=0,length=args.length;i<length;i++)jQuery(args[i])[original](this);});};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1)this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames){jQuery.className[jQuery.className.has(this,classNames)?"remove":"add"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).r.length){jQuery("*",this).add(this).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode)this.parentNode.removeChild(this);}},empty:function(){jQuery(">*",this).remove();while(this.firstChild)this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return i<m[3]-0;},gt:function(a,i,m){return i>m[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);}return cur;},find:function(t,context){if(typeof t!="string")return[t];if(context&&context.nodeType!=1&&context.nodeType!=9)return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++)for(var c=ret[i].firstChild;c;c=c.nextSibling)if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName))r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j<rl;j++){var n=m=="~"||m=="+"?ret[j].nextSibling:ret[j].firstChild;for(;n;n=n.nextSibling)if(n.nodeType==1){var id=jQuery.data(n);if(m=="~"&&merge[id])break;if(!nodeName||n.nodeName.toUpperCase()==nodeName){if(m=="~")merge[id]=true;r.push(n);}if(m=="+")break;}}ret=r;t=jQuery.trim(t.replace(re,""));foundToken=true;}}if(t&&!foundToken){if(!t.indexOf(",")){if(context==ret[0])ret.shift();done=jQuery.merge(done,ret);r=ret=[context];t=" "+t.substr(1,t.length);}else{var re2=quickID;var m=re2.exec(t);if(m){m=[0,m[2],m[3],m[1]];}else{re2=quickClass;m=re2.exec(t);}m[2]=m[2].replace(/\\/g,"");var elem=ret[ret.length-1];if(m[1]=="#"&&elem&&elem.getElementById&&!jQuery.isXMLDoc(elem)){var oid=elem.getElementById(m[2]);if((jQuery.browser.msie||jQuery.browser.opera)&&oid&&typeof oid.id=="string"&&oid.id!=m[2])oid=jQuery('[@id="'+m[2]+'"]',elem)[0];ret=r=oid&&(!m[3]||jQuery.nodeName(oid,m[3]))?[oid]:[];}else{for(var i=0;ret[i];i++){var tag=m[1]=="#"&&m[3]?m[3]:m[1]!=""||m[0]==""?"*":m[2];if(tag=="*"&&ret[i].nodeName.toLowerCase()=="object")tag="param";r=jQuery.merge(r,ret[i].getElementsByTagName(tag));}if(m[1]==".")r=jQuery.classFilter(r,m[2]);if(m[1]=="#"){var tmp=[];for(var i=0;r[i];i++)if(r[i].getAttribute("id")==m[2]){tmp=[r[i]];break;}r=tmp;}ret=r;}t=t.replace(re2,"");}}if(t){var val=jQuery.filter(t,r);ret=r=val.r;t=jQuery.trim(val.t);}}if(t)ret=[];if(ret&&context==ret[0])ret.shift();done=jQuery.merge(done,ret);return done;},classFilter:function(r,m,not){m=" "+m+" ";var tmp=[];for(var i=0;r[i];i++){var pass=(" "+r[i].className+" ").indexOf(m)>=0;if(!not&&pass||not&&!pass)tmp.push(r[i]);}return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}}if(!m)break;if(m[1]==":"&&m[2]=="not")r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".")r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i<rl;i++){var a=r[i],z=a[jQuery.props[m[2]]||m[2]];if(z==null||/href|src|selected/.test(m[2]))z=jQuery.attr(a,m[2])||'';if((type==""&&!!z||type=="="&&z==m[5]||type=="!="&&z!=m[5]||type=="^="&&z&&!z.indexOf(m[5])||type=="$="&&z.substr(z.length-m[5].length)==m[5]||(type=="*="||type=="~=")&&z.indexOf(m[5])>=0)^not)tmp.push(a);}r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i<rl;i++){var node=r[i],parentNode=node.parentNode,id=jQuery.data(parentNode);if(!merge[id]){var c=1;for(var n=parentNode.firstChild;n;n=n.nextSibling)if(n.nodeType==1)n.nodeIndex=c++;merge[id]=true;}var add=false;if(first==0){if(node.nodeIndex==last)add=true;}else if((node.nodeIndex-last)%first==0&&(node.nodeIndex-last)/first>=0)add=true;if(add^not)tmp.push(node);}r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object")fn=fn[m[2]];if(typeof fn=="string")fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cur);cur=cur[dir];}return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem)r.push(n);}return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8)return;if(jQuery.browser.msie&&elem.setInterval)elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered)return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener)elem.addEventListener(type,handle,false);else if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)=="."))for(var type in events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler)delete events[type][handler.guid];else
+for(handler in events[type])if(!parts[1]||events[type][handler].type==parts[1])delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret=null;delete events[type];}}});}for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;}if(!elem){if(this.global[type])jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8)return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;}data[0].type=type;if(exclusive)data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle)val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false)val=false;if(event)data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined)val=ret;}if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}}this.triggered=false;}return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false)val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}return val;},fix:function(event){if(event[expando]==true)return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--)event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault)originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation)originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target)event.target=event.srcElement||document;if(event.target.nodeType==3)event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&event.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i<args.length)jQuery.event.proxy(fn,args[i++]);return this.click(jQuery.event.proxy(fn,function(event){this.lastToggle=(this.lastToggle||0)%i;event.preventDefault();return args[this.lastToggle++].apply(this,arguments)||false;}));},hover:function(fnOver,fnOut){return this.bind('mouseenter',fnOver).bind('mouseleave',fnOut);},ready:function(fn){bindReady();if(jQuery.isReady)fn.call(document,jQuery);else
+jQuery.readyList.push(function(){return fn.call(this,jQuery);});return this;}});jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isReady){jQuery.isReady=true;if(jQuery.readyList){jQuery.each(jQuery.readyList,function(){this.call(document);});jQuery.readyList=null;}jQuery(document).triggerHandler("ready");}}});var readyBound=false;function bindReady(){if(readyBound)return;readyBound=true;if(document.addEventListener&&!jQuery.browser.opera)document.addEventListener("DOMContentLoaded",jQuery.ready,false);if(jQuery.browser.msie&&window==top)(function(){if(jQuery.isReady)return;try{document.documentElement.doScroll("left");}catch(error){setTimeout(arguments.callee,0);return;}jQuery.ready();})();if(jQuery.browser.opera)document.addEventListener("DOMContentLoaded",function(){if(jQuery.isReady)return;for(var i=0;i<document.styleSheets.length;i++)if(document.styleSheets[i].disabled){setTimeout(arguments.callee,0);return;}jQuery.ready();},false);if(jQuery.browser.safari){var numStyles;(function(){if(jQuery.isReady)return;if(document.readyState!="loaded"&&document.readyState!="complete"){setTimeout(arguments.callee,0);return;}if(numStyles===undefined)numStyles=jQuery("style, link[rel=stylesheet]").length;if(document.styleSheets.length!=numStyles){setTimeout(arguments.callee,0);return;}jQuery.ready();})();}jQuery.event.add(window,"load",jQuery.ready);}jQuery.each(("blur,focus,load,resize,scroll,unload,click,dblclick,"+"mousedown,mouseup,mousemove,mouseover,mouseout,change,select,"+"submit,keydown,keypress,keyup,error").split(","),function(i,name){jQuery.fn[name]=function(fn){return fn?this.bind(name,fn):this.trigger(name);};});var withinElement=function(event,elem){var parent=event.relatedTarget;while(parent&&parent!=elem)try{parent=parent.parentNode;}catch(error){parent=elem;}return parent==elem;};jQuery(window).bind("unload",function(){jQuery("*").add(document).unbind();});jQuery.fn.extend({_load:jQuery.fn.load,load:function(url,params,callback){if(typeof url!='string')return this._load(url);var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}callback=callback||function(){};var type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQuery("<div/>").append(res.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataType=="script"&&s.cache==null)s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};}head.appendChild(script);return undefined;}var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username)xhr.open(type,s.url,s.async,s.username,s.password);else
+xhr.open(type,s.url,s.async);try{if(s.data)xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified)xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){}if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;}if(s.global)jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}}if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=modRes;if(!jsonp)success();}else
+jQuery.handleError(s,xhr,status);complete();if(s.async)xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(xhr){xhr.abort();if(!requestDone)onreadystatechange("timeout");}},s.timeout);}try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);}if(!s.async)onreadystatechange();function success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxSuccess",[xhr,s]);}function complete(){if(s.complete)s.complete(xhr,status);if(s.global)jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global)jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror")throw"parsererror";if(filter)data=filter(data,type);if(type=="script")jQuery.globalEval(data);if(type=="json")data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery)jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else
+for(var j in a)if(a[j]&&a[j].constructor==Array)jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else
+s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none")this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1)return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else
+e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";}if(!type||(typeof type=="string"&&!fn))return queue(this[0],type);return this.each(function(){if(fn.constructor==Array)queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1)fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array)q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));}return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length)q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(jQuery.isFunction(opt.old))opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step)this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width")this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null)return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);}t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i<timers.length;i++)if(!timers[i]())timers.splice(i--,1);if(!timers.length){clearInterval(jQuery.timerId);jQuery.timerId=null;}},13);}},show:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.show=true;this.custom(0,this.cur());if(this.prop=="width"||this.prop=="height")this.elem.style[this.prop]="1px";jQuery(this.elem).show();},hide:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=now();if(gotoEnd||t>this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.elem.style.display="block";}if(this.options.hide)this.elem.style.display="none";if(this.options.hide||this.options.show)for(var p in this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);}if(done)this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed")fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display")))add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible")border(parent);parent=parent.parentNode;}if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute"))add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed)add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));}results={top:top,left:left};}function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));}function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;}return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static'))offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+num(this,"padding"+tl)+num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+num(this,"border"+tl+"Width")+num(this,"border"+br+"Width")+(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})(); \ No newline at end of file
diff --git a/Pootle-1.2.1/Pootle/html/js/search.js b/Pootle-1.2.1/Pootle/html/js/search.js
new file mode 100644
index 0000000..4e4ae65
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/js/search.js
@@ -0,0 +1,44 @@
+$(document).ready(function($) {
+
+ /* Search input text */
+ var focused = { color: "#000" }
+ var unfocused = { color: "#aaa" }
+
+ $('label.inputHint').each(function() {
+ var label = $(this);
+ var input = $('#' + label.attr('for'));
+ if (input.attr("defaultValue")) {
+ var initial = input.attr("defaultValue");
+ var search = true;
+ } else {
+ var initial = label.hide().text().replace(':', '');
+ }
+ input.focus(function() {
+ input.css(focused);
+ if (input.val() == initial && !search) {
+ input.val('');
+ }
+ }).blur(function() {
+ if (input.val() == '') {
+ input.val(initial).css(unfocused);
+ } else if (search && input.val() == initial) {
+ input.css(unfocused);
+ }
+ }).css(unfocused).val(initial);
+ });
+
+ /* Dropdown toggling */
+ $("a.advancedlink").click(function(event) {
+ event.preventDefault();
+ $("div.advancedsearch").slideToggle();
+ }).toggle(
+ function() {
+ $("img.togglesearch").attr("src", "/images/bullet_arrow_up.png");
+ },
+ function() {
+ $("img.togglesearch").attr("src", "/images/bullet_arrow_down.png");
+ }
+ );
+
+});
+
diff --git a/Pootle-1.2.1/Pootle/html/js/sorttable.js b/Pootle-1.2.1/Pootle/html/js/sorttable.js
new file mode 100644
index 0000000..16f1731
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/js/sorttable.js
@@ -0,0 +1,327 @@
+/*
+ * Table sorting Javascript. MIT-licensed. Originally from
+ *
+ * http://www.kryogenix.org/code/browser/sorttable/
+ *
+ * 2005-07-13: Initial import. Changed the arrow code to use the images
+ * included with Plone instead of the entities. Also changed
+ * the way sorting of a previously-sorted column behaves
+ * slightly. Reformatted to try keeping to 80 columns. (kiko)
+ *
+ * 2006-03-13: Added support for indicating sortkeys (direct and
+ * reverse) inside table cells. Removed tabs. (kiko)
+ *
+ * 2006-04-08: Fixed matching of "sortable". Added support for "initial-sort".
+ * Made sorting stable. (ddaa)
+ *
+ * 2006-04-11: Fixed numeric sorting to be robust in the presence of
+ * whitespace; added trim(). Note that parseFloat() deals
+ * with leading and trailing whitespace just fine. (kiko)
+ *
+ * 2006-04-12: Added default-sort and default-revsort classes. When
+ * the data in the table is already pre-sorted, you can use
+ * these classes to indicate by which column they were
+ * ordered by. This, in turn, allows us to correctly
+ * Javascript-sort them later. (kiko)
+ *
+ * 2006-07-14: Added ability to honour odd/even row colouring. It is hackish
+ * as the styles are hardcoded and you get some screen jitter.
+ * Should most probably be part of the actual sort code to prevent
+ * the jittering. (dwayne)
+ *
+ */
+
+addEvent(window, "load", sortables_init);
+
+var SORT_COLUMN_INDEX;
+
+/* the variable "baseurl" must be defined in any page including sorttable.js */
+var arrowUp = baseurl + "images/up.png";
+var arrowDown = baseurl + "images/down.png";
+var arrowBlank = baseurl + "images/none.png";
+
+function trim(str) {
+ return str.replace(/^\s*|\s*$/g, "");
+}
+
+function sortables_init() {
+ // Find all tables with class sortable and make them sortable
+ if (!document.getElementsByTagName) return;
+ tbls = document.getElementsByTagName("table");
+ for (ti=0;ti<tbls.length;ti++) {
+ thisTbl = tbls[ti];
+ if (((' '+thisTbl.className+' ').indexOf(" sortable ") != -1) &&
+ (thisTbl.id)) {
+ ts_makeSortable(thisTbl);
+ }
+ }
+}
+
+function ts_makeSortable(table) {
+ if (table.tHead && table.tHead.rows && table.tHead.rows.length > 0) {
+ var firstRow = table.tHead.rows[0];
+ } else if (table.rows && table.rows.length > 0) {
+ var firstRow = table.rows[0];
+ }
+ if (!firstRow) return;
+
+ // We have a first row: assume it's the header, and make its
+ // contents clickable links
+ for (var i=0;i<firstRow.cells.length;i++) {
+ var cell = firstRow.cells[i];
+ var txt = ts_getInnerText(cell);
+ cell.innerHTML = '<a href="#" class="sortheader" onclick="ts_resortTable(this); return false;">'
+ + txt +
+ '<img class="sortarrow" src="'+arrowBlank+'" height="1" width="1"></a>';
+ }
+
+ // Sort by the first column whose title cell has initial-sort class.
+ for (var i=0; i<firstRow.cells.length; i++) {
+ var cell = firstRow.cells[i];
+ var lnk = ts_firstChildByName(cell, 'A');
+ var img = ts_firstChildByName(lnk, 'IMG')
+ if ((' ' + cell.className + ' ').indexOf(" default-sort ") != -1) {
+ ts_arrowDown(img);
+ break;
+ }
+ if ((' ' + cell.className + ' ').indexOf(" default-revsort ") != -1) {
+ ts_arrowUp(img);
+ break;
+ }
+ if ((' ' + cell.className + ' ').indexOf(" initial-sort ") != -1) {
+ ts_resortTable(lnk);
+ break;
+ }
+ }
+}
+
+function ts_getInnerText(el) {
+ if (typeof el == "string") return el;
+ if (typeof el == "undefined") { return el };
+ if (el.innerText) return el.innerText; //Not needed but it is faster
+ var str = "";
+
+ var cs = el.childNodes;
+ var l = cs.length;
+ for (var i = 0; i < l; i++) {
+ node = cs[i];
+ switch (node.nodeType) {
+ case 1: //ELEMENT_NODE
+ if (node.className == "sortkey") {
+ return ts_getInnerText(node);
+ } else if (node.className == "revsortkey") {
+ return "-" + ts_getInnerText(node);
+ } else {
+ str += ts_getInnerText(node);
+ break;
+ }
+ case 3: //TEXT_NODE
+ str += node.nodeValue;
+ break;
+ }
+ }
+ return str;
+}
+
+function ts_firstChildByName(el, name) {
+ for (var ci=0; ci < el.childNodes.length; ci++) {
+ if (el.childNodes[ci].tagName &&
+ el.childNodes[ci].tagName.toLowerCase() == name.toLowerCase())
+ return el.childNodes[ci];
+ }
+}
+
+function ts_arrowUp(img) {
+ img.setAttribute('sortdir','up');
+ img.src = arrowUp;
+ img.height = 17
+ img.width = 17
+ img.alt = "up"
+}
+
+function ts_arrowDown(img) {
+ img.setAttribute('sortdir','down');
+ img.src = arrowDown;
+ img.height = 17
+ img.width = 17
+ img.alt = "down"
+}
+
+function ts_arrowBlank(img) {
+ img.setAttribute('sortdir','');
+ img.src = arrowBlank;
+ img.height = 1
+ img.width = 1
+// img.alt = ""
+}
+
+function ts_resortTable(lnk) {
+ // get the img
+ var img = ts_firstChildByName(lnk, 'IMG')
+ var td = lnk.parentNode;
+ var column = td.cellIndex;
+ var table = getParent(td,'TABLE');
+
+ // Work out a type for the column
+ if (table.rows.length <= 1) return;
+ var itm = ts_getInnerText(table.rows[1].cells[column]);
+ itm = trim(itm);
+
+ sortfn = ts_sort_caseinsensitive;
+ if (itm.match(/^\d\d[\/-]\d\d[\/-]\d\d\d\d$/)) sortfn = ts_sort_date;
+ if (itm.match(/^\d\d[\/-]\d\d[\/-]\d\d$/)) sortfn = ts_sort_date;
+ if (itm.match(/^[£$]/)) sortfn = ts_sort_currency;
+ if (itm.match(/^-?[\d\.]+%?$/)) sortfn = ts_sort_numeric;
+
+ SORT_COLUMN_INDEX = column;
+ var firstRow = new Array();
+ var newRows = new Array();
+ for (i=0;i<table.rows[0].length;i++) { firstRow[i] = table.rows[0][i]; }
+ for (j=1;j<table.rows.length;j++) {
+ newRows[j-1] = table.rows[j];
+ newRows[j-1].oldPosition = j-1;
+ }
+
+ newRows.sort(ts_stableSort(sortfn));
+
+ if (img.getAttribute("sortdir") == 'down') {
+ newRows.reverse();
+ ts_arrowUp(img);
+ } else {
+ ts_arrowDown(img);
+ }
+
+ // We appendChild rows that already exist to the tbody, so it moves
+ // them rather than creating new ones
+ // don't do sortbottom rows
+ for (i=0;i<newRows.length;i++) {
+ if (!newRows[i].className ||
+ (newRows[i].className &&
+ (newRows[i].className.indexOf('sortbottom') == -1)))
+ table.tBodies[0].appendChild(newRows[i]);
+ }
+ // do sortbottom rows only
+ for (i=0;i<newRows.length;i++) {
+ if (newRows[i].className &&
+ (newRows[i].className.indexOf('sortbottom') != -1))
+ table.tBodies[0].appendChild(newRows[i]);
+ }
+
+ for (i=0;i<newRows.length;i++) {
+ if (i % 2 == 0) {
+ table.tBodies[0].rows[i].className = ('item item-even')
+ } else {
+ table.tBodies[0].rows[i].className = ('item item-odd')
+ }
+ }
+
+ // Delete any other arrows there may be showing
+ var allimgs = document.getElementsByTagName("img");
+ for (var ci=0; ci<allimgs.length; ci++) {
+ var one_img = allimgs[ci];
+ if (one_img != img &&
+ one_img.className == 'sortarrow' &&
+ getParent(one_img, "table") == getParent(lnk, "table")) {
+ ts_arrowBlank(one_img)
+// one_img.src = arrowBlank;
+// one_img.setAttribute('sortdir', '');
+ }
+ }
+}
+
+function getParent(el, pTagName) {
+ if (el == null)
+ return null;
+ else if (el.nodeType == 1 &&
+ el.tagName.toLowerCase() == pTagName.toLowerCase())
+ // Gecko bug, supposed to be uppercase
+ return el;
+ else
+ return getParent(el.parentNode, pTagName);
+}
+
+function ts_stableSort(sortfn) {
+ // Return a comparison function based on sortfn, but using oldPosition
+ // attributes to discriminate between objects that sortfn compares as
+ // equal, effectively providing stable sort.
+ function stableSort(a, b) {
+ var cmp = sortfn(a, b);
+ if (cmp != 0) {
+ return cmp;
+ } else {
+ return a.oldPosition - b.oldPosition;
+ }
+ }
+ return stableSort;
+}
+
+function ts_sort_date(a,b) {
+ // y2k notes: two digit years less than 50 are treated as 20XX,
+ // greater than 50 are treated as 19XX
+ aa = trim(ts_getInnerText(a.cells[SORT_COLUMN_INDEX]));
+ bb = trim(ts_getInnerText(b.cells[SORT_COLUMN_INDEX]));
+ if (aa.length == 10) {
+ dt1 = aa.substr(6,4)+aa.substr(3,2)+aa.substr(0,2);
+ } else {
+ yr = aa.substr(6,2);
+ if (parseInt(yr) < 50) { yr = '20'+yr; } else { yr = '19'+yr; }
+ dt1 = yr+aa.substr(3,2)+aa.substr(0,2);
+ }
+ if (bb.length == 10) {
+ dt2 = bb.substr(6,4)+bb.substr(3,2)+bb.substr(0,2);
+ } else {
+ yr = bb.substr(6,2);
+ if (parseInt(yr) < 50) { yr = '20'+yr; } else { yr = '19'+yr; }
+ dt2 = yr+bb.substr(3,2)+bb.substr(0,2);
+ }
+ if (dt1==dt2) return 0;
+ if (dt1<dt2) return -1;
+ return 1;
+}
+
+function ts_sort_currency(a,b) {
+ aa = ts_getInnerText(a.cells[SORT_COLUMN_INDEX]).replace(/[^0-9.]/g,'');
+ bb = ts_getInnerText(b.cells[SORT_COLUMN_INDEX]).replace(/[^0-9.]/g,'');
+ return parseFloat(aa) - parseFloat(bb);
+}
+
+function ts_sort_numeric(a,b) {
+ aa = parseFloat(ts_getInnerText(a.cells[SORT_COLUMN_INDEX]));
+ if (isNaN(aa)) aa = 0;
+ bb = parseFloat(ts_getInnerText(b.cells[SORT_COLUMN_INDEX]));
+ if (isNaN(bb)) bb = 0;
+ return aa-bb;
+}
+
+function ts_sort_caseinsensitive(a,b) {
+ aa = ts_getInnerText(a.cells[SORT_COLUMN_INDEX]).toLowerCase();
+ bb = ts_getInnerText(b.cells[SORT_COLUMN_INDEX]).toLowerCase();
+ if (aa==bb) return 0;
+ if (aa<bb) return -1;
+ return 1;
+}
+
+function ts_sort_default(a,b) {
+ aa = ts_getInnerText(a.cells[SORT_COLUMN_INDEX]);
+ bb = ts_getInnerText(b.cells[SORT_COLUMN_INDEX]);
+ if (aa==bb) return 0;
+ if (aa<bb) return -1;
+ return 1;
+}
+
+
+// addEvent and removeEvent
+// cross-browser event handling for IE5+, NS6 and Mozilla
+// By Scott Andrew
+function addEvent(elm, evType, fn, useCapture) {
+ if (elm.addEventListener){
+ elm.addEventListener(evType, fn, useCapture);
+ return true;
+ } else if (elm.attachEvent){
+ var r = elm.attachEvent("on"+evType, fn);
+ return r;
+ } else {
+ alert("Handler could not be removed");
+ }
+}
+
diff --git a/Pootle-1.2.1/Pootle/html/js/suggestions.js b/Pootle-1.2.1/Pootle/html/js/suggestions.js
new file mode 100644
index 0000000..f0e1fbe
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/js/suggestions.js
@@ -0,0 +1,169 @@
+$(document).ready(function() {
+
+ function getSiblingParams(node) {
+ var param = "";
+ sibling_inputs = $(node).siblings("input");
+ $.each(sibling_inputs, function() {
+ param += "&" + this.getAttribute("name") +
+ "=" + this.getAttribute("value");
+ });
+ return param;
+ }
+
+ function clearPath(path) {
+ parts = path.split("/");
+ return parts[parts.length - 1]
+ }
+
+ function rejectSuggestions(requestURL, paramsR, refs, accept) {
+ $.ajax({
+ type: "POST",
+ url: requestURL,
+ data: paramsR,
+ beforeSend: function() {
+ $("div#working").show();
+ },
+ complete: function() {
+ $("div#working").hide();
+ },
+ dataType: "html",
+ success: function(d) {
+ // Animate suggestion removals
+ if (refs.length > 1) {
+ $.each(refs, function() {
+ $(this).parents(".translate-suggestion").animate({ backgroundColor: "#fbc7c7" }, "fast").animate({opacity: "hide"}, "slow");
+ $(this).parents(".translate-suggestion-block").animate({ backgroundColor: "#fbc7c7" }, "fast").animate({opacity: "hide"}, "slow");
+ });
+ } else {
+ $(refs).parents(".translate-suggestion").animate({ backgroundColor: "#fbc7c7" }, "fast").animate({opacity: "hide"}, "slow");
+ $(refs).parents(".translate-suggestion-block").animate({ backgroundColor: "#fbc7c7" }, "fast").animate({opacity: "hide"}, "slow");
+ }
+ // Get item ID
+ var itemName = $(".rejectsugg").siblings("input").attr("name");
+ var pattern = /\d{1,4}/;
+ var itemID = itemName.match(pattern)[0];
+ // Retrieve updated references
+ $.ajax({
+ type: "GET",
+ url: requestURL,
+ data: "translate=1&item="+itemID+"&review=1&pofilename="+escape($("input[name='pofilename']").val()),
+ dataType: "html",
+ success: function(data) {
+ // Remove old references
+ $("#translate-suggestion-container").children().each(function() {
+ $(this).remove();
+ });
+ // Append updated references
+ var updatedSuggestions = $("#translate-suggestion-container", data).children();
+ $("#translate-suggestion-container").html(updatedSuggestions);
+ // If we're in reviewing mode, append the updated diff for current translation
+ var reviewmode = $("#translate-suggestion-container").prev().is("#translate-original-container");
+ if (reviewmode) {
+ var original = $("#translate-original-container");
+ $(".translate-original-block", original).remove();
+ original.append($(".translate-original-block", data));
+ }
+ // If we also want to accept suggestions, go ahead with it
+ if (accept != undefined) {
+ var ref = $(".acceptsugg");
+ // Retrieve updated parameters
+ var paramsA = "?review=1&translate=1";
+ paramsA += getSiblingParams(ref);
+ paramsA += "&" + $(ref).attr("id");
+ acceptSuggestion(requestURL, paramsA, ref);
+ }
+ },
+ error: function() {
+ alert(AJAX_ERROR);
+ }
+ });
+ },
+ error: function() {
+ alert(AJAX_ERROR);
+ }
+ });
+ }
+
+ function acceptSuggestion(requestURL, params, reference) {
+ $.ajax({
+ type: "POST",
+ url: requestURL,
+ data: params,
+ dataType: "html",
+ beforeSend: function() {
+ $("div#working").show();
+ },
+ complete: function() {
+ $("div#working").hide();
+ },
+ success: function(data) {
+ // Animate accepting current suggestion
+ var textareas = $("#translate-suggestion-container").siblings("textarea");
+ var inputs = $(reference).siblings("input");
+ $.each(textareas, function(i) {
+ $(this).val(inputs.eq(i).val());
+ $(this).animate({ backgroundColor: "#dafda5" }, "fast").animate({ backgroundColor: "#ffffff" }, "slow");
+ });
+ var currentBlock = $(reference).parents(".translate-suggestion-block");
+ currentBlock.animate({opacity: "hide"}, "slow");
+ // Remove from the DOM tree
+ currentBlock.remove();
+ // If we're in reviewing mode, remove the original translation container
+ var reviewmode = $("#translate-suggestion-container").prev().is("#translate-original-container");
+ if (reviewmode) {
+ $("#translate-original-container").remove();
+ }
+ },
+ error: function() {
+ alert(AJAX_ERROR);
+ }
+ });
+ }
+
+$("#translate-suggestion-container").click(function(event) {
+ if ($(event.target).parent().is(".rejectsugg")) {
+ // Save this object reference
+ var reference = $(event.target).parent();
+ var requestURL = clearPath(escape($("input[name='pofilename']").val()));
+ // Ideally we could make use of the serialize() method
+ // but this isn't a ideal case ;P
+ var params = "review=1&translate=1";
+ params += getSiblingParams(reference);
+ params += "&" + $(reference).attr("id") + "=1";
+ params += "&pofilename=" + escape($("input[name='pofilename']").val());
+ // Reject selected suggestion
+ rejectSuggestions(requestURL, params, reference, undefined);
+ return false;
+ }
+
+ if ($(event.target).parent().is(".acceptsugg")) {
+ // Save this object reference
+ var reference = $(event.target).parent();
+ // The url is the po filename itself
+ var requestURL = clearPath(escape($("input[name='pofilename']").val()));
+ var reject_others = $(reference).parents(".translate-suggestion-block").siblings(".translate-suggestion-block");
+ // There are suggestions to reject
+ if (reject_others.length > 0) {
+ // Parameters to reject the remaining suggestions
+ var paramsReject = "?review=1&translate=1";
+ paramsReject += "&pofilename=" + escape($("input[name='pofilename']").val());
+ $.each(reject_others, function() {
+ paramsReject += getSiblingParams($(".rejectsugg", this));
+ paramsReject += "&" + $(".rejectsugg", this).attr("id") + "=1";
+ });
+ var refs = reject_others.children(".rejecsugg");
+ rejectSuggestions(requestURL, paramsReject, reject_others, true);
+ } else { // Just accept this one
+ // Parameters to accept this suggestion
+ var paramsAccept = "?review=1&translate=1";
+ paramsAccept += getSiblingParams(reference);
+ paramsAccept += "&" + $(reference).attr("id") + "=1";
+ paramsAccept += "&pofilename=" + escape($("input[name='pofilename']").val());
+ // Accept selected suggestion
+ acceptSuggestion(requestURL, paramsAccept, reference);
+ }
+ return false;
+ }
+ });
+
+});
diff --git a/Pootle-1.2.1/Pootle/html/js/unfuzzy.js b/Pootle-1.2.1/Pootle/html/js/unfuzzy.js
new file mode 100644
index 0000000..e9b639e
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/js/unfuzzy.js
@@ -0,0 +1,24 @@
+/*
+ * For future enhancements like multiple edit boxes, please note
+ * that the selector is based on a class, so it must be modified
+ * to get the textarea's element ID and select the checkbox to
+ * remove the "checked" attribute according to that value.
+ */
+$(document).ready(function() {
+ var keepstate = false;
+ $("textarea.translation").bind("keyup blur", function() {
+ if (!keepstate && $(this).attr("defaultValue") != $(this).val()) {
+ var checkbox = $("input.unfuzzy[checked]");
+ checkbox.removeAttr("checked");
+ checkbox.parent().animate({ backgroundColor: "#dafda5 !important" }, "fast")
+ .animate({ backgroundColor: "#f4f4f4 !important" }, "slow");
+ $("textarea.translate-translation-fuzzy").each(function () {
+ $(this).removeClass("translate-translation-fuzzy");
+ });
+ keepstate = true;
+ }
+ });
+ $("input.unfuzzy").click(function() {
+ keepstate = true;
+ });
+});
diff --git a/Pootle-1.2.1/Pootle/html/pootle.css b/Pootle-1.2.1/Pootle/html/pootle.css
new file mode 100644
index 0000000..e3ef6a8
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/pootle.css
@@ -0,0 +1,677 @@
+/* Language codes that are styled with right-to-left (rtl) layout:
+ ar (Arabic)
+ arc (Aramaic)
+ dv (Dhivehi)
+ fa (Persian)
+ he (Hebrew)
+ ks (Kashmir)
+ ps (Pashto)
+ ur (Urdu)
+ yi (Yiddish)
+ also see pagelayout.py::languagedir()
+*/
+/* Doesn't work: [dir="rtl"]*/
+*:lang(ar), *:lang(arc), *:lang(dv), *:lang(fa), *:lang(he), *:lang(ks), *:lang(ps), *:lang(ur), *:lang(yi)
+{
+ /* If any styling is necessary for the rtl languages, add it here */
+}
+/* Default settings */
+*
+{
+ font-family: verdana, arial, tahoma, sans-serif;
+ font-size: small;
+}
+
+/* Language specific settings (see http://translate.sourceforge.net/wiki/l10n/displaysettings) */
+:lang(ak)
+{
+ font-family: Lucida, "DejaVu Sans", inherit;
+}
+:lang(ar)
+{
+ font-family: Tahoma 12, Nazli, KacstOne, "DejaVu Sans", inherit;
+}
+:lang(bn)
+{
+ font-family: FreeSans, MuktiNarrow, Vrinda, inherit;
+ font-size: medium;
+ line-height: 110%;
+}
+:lang(el)
+{
+ font-family: "DejaVu Sans", inherit;
+}
+:lang(fa)
+{
+ font-family: Terafik, Traffic, Roya, Nazli, Nazanin, sans;
+ font-size: large;
+}
+:lang(ja), :lang(ko)
+{
+ font-size: medium;
+}
+:lang(zh)
+{
+ font-size: large;
+}
+:lang(km)
+{
+ font-family: "Khmer OS System", "Khmer OS", "Khmer Kampongtrach", "CDT Khmer", inherit;
+ line-height: 170%;
+}
+:lang(vi)
+{
+ font-family: "Lucida Grande", "Vu Phu Tho", "DejaVu Sans", inherit;
+}
+:lang(vi) a:hover[href]
+{
+ text-decoration: none;
+ color: #606047;
+}
+:lang(vi) a:active[href]
+{
+ text-decoration: none;
+ color: #606047;
+}
+
+a { color: #7090B7; text-decoration: none; }
+a:link { color: #004077; text-decoration: none; }
+a:visited { color: #004077; text-decoration: none; }
+a:hover[href] { color: #004077; text-decoration: underline; }
+a:active[href] { color: #004077; text-decoration: underline; }
+a img { border: 0; }
+
+html {
+/* height: 98%;*/
+/* min-height: 98%;*/
+ background: #fff;
+}
+body {
+/* height: 98%;*/
+/* min-height: 98%;*/
+ background: url(images/gradient.png) #fff repeat-x scroll;
+ margin: 0px;
+ padding: 0px;
+}
+
+#working {
+ position: absolute;
+ left: 50%;
+ margin: 0 auto;
+ text-align: center;
+ font-weight: bold;
+ background-color: #cc0000;
+ color: #eeeeec;
+ padding: 3px;
+}
+
+#abovefooter
+{
+/* min-height: 98%;*/
+}
+#about {
+ position: relative;
+ text-align: center;
+ bottom: 0;
+ clear: both;
+}
+
+h1, h2, h3
+{
+ margin: 0px;
+ padding: 0px;
+}
+.title
+{
+ color: #004077;
+}
+.title a
+{
+ unicode-bidi: embed;
+}
+.icon
+{
+ float: left;
+ padding-right: 2px;
+}
+.icon[dir="rtl"]
+{
+ float: right;
+ padding-right: 0px;
+ padding-left: 2px;
+}
+div.autoexpand
+{
+ max-height: 50px;
+ min-height: 1.5em;
+ overflow: hidden;
+ border-bottom: none;
+}
+div.contents
+{
+ width:84%;
+ padding:15px;
+}
+div.fullwidthcontents
+{
+ width:100%;
+ padding:15px;
+}
+div.item
+{
+ margin-bottom:5px;
+}
+.item-even
+{
+ background-color: #f4f4f4;
+}
+div.navbar
+{
+ background-color: #cfd1d3;
+ padding: 5px;
+ min-height: 1.8em;
+}
+
+div.searchform {
+ float: right;
+ max-width: 30%;
+ /* sets max-height for IE */
+ height: expression( this.scrollHeight > (500/12) * parseInt(document.body.currentStyle.fontSize) ? "1.8em" : "auto" );
+ max-height: 1.8em;
+ background-color:#E4E6E8;
+ padding: 3px;
+ border: 1px solid gray;
+}
+
+div.searchform[dir="rtl"] {
+ float: left;
+}
+
+div.advancedsearch {
+ background-color: #E4E6E8;
+ border-bottom: 1px solid gray;
+ border-left: 1px solid gray;
+ border-right: 1px solid gray;
+ overflow: auto;
+ padding-bottom:3px;
+ padding-left: 3px;
+ padding-right: 8px;
+ position: relative;
+ z-index: 2;
+ display: none;
+}
+
+div.advancedsearch[dir="rtl"] {
+ position: relative;
+ padding-left: 8px;
+ padding-right: 3px;
+}
+
+div.nodefaultsearch {
+ background-color: #f1f3f5 !important;
+}
+
+label.inputHint {
+ display: none;
+}
+
+.togglesearch {
+ cursor: pointer;
+ vertical-align: middle;
+}
+
+div.goalitem
+{
+ margin-bottom:6px;
+ background-color: #F0F0B0;
+ padding: 5px;
+}
+div.contentsitem
+{
+ font-size:small;
+ font-weight:normal;
+}
+div.item-description
+{
+ font-size:small;
+}
+div.item-statistics
+{
+ font-size: x-small;
+ color: #000000;
+}
+.string-statistics
+{
+ color: #505050;
+}
+div.translate-form
+{
+ font-size: x-small;
+/* direction: ltr;*/
+}
+table.translate-table
+{
+ font-size: x-small;
+ width:100%;
+ border-spacing:1px;
+ border:0;
+ table-layout: fixed;
+}
+.translate-table-title
+{
+ font-weight: bolder;
+ color: #004077;
+ text-align: center;
+}
+div.translate-original-focus
+{
+/* font-weight: bolder;*/
+}
+.translate-focus div.translate-original
+{
+ border: 3px solid black;
+}
+td.translate-original
+{
+ width: 50%;
+}
+td.translate-focus
+{
+ border-top:2px solid #000000;
+ padding-top: 1px;
+ vertical-align: top;
+}
+td.comments
+{
+ border-bottom:2px solid #000000;
+}
+textarea.comments
+{
+ max-width: 100%;
+ width: 100%;
+}
+.translate-original-odd
+{
+ background-color: #ffffff;
+}
+.translate-original-even
+{
+ background-color: #f4f4f4;
+}
+td.translate-translation
+{
+ width: 50%;
+}
+.translate-translation-odd
+{
+ background-color: #ffffff;
+}
+.translate-translation-even
+{
+ background-color: #f4f4f4;
+}
+.translate-translation-fuzzy
+{
+ color: #666;
+ border-left: 4px solid #AAA;
+ padding-left: 3px;
+}
+textarea.translate-translation-fuzzy
+{
+ color: black;
+ border-left: 6px groove gray;
+ padding-left: 3px;
+}
+
+#translate-original-container,
+#translate-suggestion-container {
+ margin-top: 10px;
+ margin-bottom: 10px;
+}
+
+.translate-suggestion-block {
+ position: relative;
+ margin-top: 5px;
+ margin-bottom: 10px;
+}
+
+.translate-suggestion-block .rejectsugg img {
+ position: absolute;
+ top: 0px;
+ right: 0px;
+ cursor: pointer;
+}
+
+.translate-suggestion-block .rejectsugg img[dir="rtl"] {
+ left: 0px;
+ right: auto;
+}
+
+.translate-suggestion-block .acceptsugg img {
+ position: absolute;
+ top: 0px;
+ right: 20px;
+ cursor: pointer;
+}
+
+.translate-suggestion-block .acceptsugg img[dir="rtl"] {
+ left: 20px;
+ right: auto;
+}
+
+.translate-suggestion {
+ background-color: #DDD;
+}
+
+.translator-comments
+{
+ background-color: #b0d6de;
+ overflow: auto;
+}
+.developer-comments
+{
+ background-color: #b0d6de;
+ margin-top: 10px;
+ overflow: auto;
+}
+
+.translate-context
+{
+ background-color: #EEE;
+ font-family: monospace;
+ margin-top: 10px;
+ overflow: auto;
+}
+
+.translate-locations
+{
+ background-color: #DDD;
+ font-family: monospace;
+ margin-top: 10px;
+ overflow: auto;
+}
+.translate-diff-replace
+{
+ background-color: #ffff00;
+ border: 1px solid #f0f000;
+}
+.translate-diff-delete
+{
+ background-color: #ff8000;
+ border: 1px solid #f07000;
+}
+.translate-diff-insert
+{
+ background-color: #80ff00;
+ border: 1px solid #70f000;
+}
+
+table.stats
+{
+ width: 100%;
+ border-spacing: 0;
+ padding: 0;
+ font-size: small;
+}
+th.stats
+{
+ font-weight: bolder;
+ color: #004077;
+ text-align: center;
+}
+td.stats
+{
+ text-align: right;
+ border: 1px dotted #999;
+ font-size: small;
+}
+.stats-name
+{
+ border: 1px dotted #999;
+ font-size: small;
+}
+td.stats-graph
+{
+ border: 1px dotted #999;
+}
+
+div.intro {
+ color:#000;
+ background: #FFFFDD;
+ border: solid #777 1px;
+ font-weight:normal;
+ margin-bottom:15px;
+ margin-left:15px;
+ margin-right: 15px;
+ padding: 10px;
+}
+div.info {
+ color:#000;
+ font-weight:normal;
+ margin-left:15px;
+ margin-right: 15px;
+ padding: 10px;
+}
+#banner
+{
+}
+#banner h1
+{
+ background: url(images/pootle-medium.png) no-repeat scroll left top;
+ padding-left: 80px;
+ font-size: xx-large;
+ color: black;
+ height: auto !important;
+ min-height: 62px;
+ height: 62px;
+ text-align: left;
+}
+#banner[dir="rtl"] h1
+{
+ background: url(images/pootle-medium.png) no-repeat scroll right top;
+ padding-right: 80px;
+ padding-left: 0px;
+ text-align: right;
+}
+#content
+{
+ width: 72%;
+ padding-bottom:10px;
+ /* ltr: */
+ /* Removing the float styling fixes the broken account area on
+ * about.html in old versions of Internet Explorer. See bug 253.
+ */
+/* float: left;*/
+ margin-right: 27%;
+ padding-left: 5px;
+}
+#content[dir="rtl"]
+{
+ float: right;
+ margin-left: 27%;
+ margin-right: 0%;
+ padding-right: 5px;
+ padding-left: 0px;
+}
+#fullwidthcontent
+{
+ float: left;
+ width: 100%;
+ margin-right:0px;
+ padding-bottom:10px;
+}
+.sidebar
+{
+ padding-right:10px;
+ padding-left:10px;
+ margin-left:0px;
+ margin-right:0px;
+ padding-bottom:10px;
+ border-bottom:1px dotted #999;
+ width:22%;
+ /* ltr: */
+ right: 0px;
+ border-left: 1px dotted #999;
+}
+.sidebar[dir="rtl"]
+{
+ /* undo ltr: */
+ right: auto;
+ border-left: none;
+ /* rtl: */
+ left: 0px;
+ border-right: 1px dotted #999;
+}
+#links
+{
+ position: absolute;
+ top: 0px;
+}
+#tm
+{
+ position: absolute;
+ border-top: 1px dotted #999;
+}
+.sidetitle
+{
+ color:#004077;
+ font-size: small;
+ font-weight:bolder;
+ padding:2px;
+ margin-top:10px;
+ letter-spacing: .1em;
+ border-bottom:1px dotted #999;
+ text-align:center;
+ text-transform:lowercase;
+}
+.side
+{
+ color:#333;
+ font-size: 0.7em;
+ font-weight:normal;
+ line-height:150%;
+ padding:2px;
+}
+
+.checkinfo {
+ vertical-align: top;
+}
+
+.account
+{
+}
+.upload
+{
+ width: 100%;
+}
+.tm-unit
+{
+ margin: 5px 0px 5px 0px;
+ padding: 0px 2px 0px 0px;
+ background-color: #F7F7F7;
+ position: relative;
+ cursor: pointer;
+}
+.tm-original
+{
+ font-weight: bolder;
+}
+.tm-translation
+{
+ font-style: oblique;
+}
+.tm-translation[dir="rtl"]
+{
+ text-align: right;
+}
+textarea.translation
+{
+ max-width: 100%;
+ width: 100%;
+}
+.translation-text
+{
+ max-width: 100%;
+ overflow: auto;
+/* white-space: pre-wrap;*/
+ padding: 10px;
+}
+.translation-space
+{
+ border-bottom: 1px solid #BBB;
+ margin: 0em 0.2em 0em 0.2em;
+ padding: 0em 0.2em 0em 0.2em;
+ width: 0px;
+ letter-spacing: -0.5em;
+}
+.translation-text-headers
+{
+ font-weight: bolder;
+ color: #006699;
+}
+a.translation-action
+{
+ display: none;
+ position: absolute;
+ background: white;
+ border: 1px dotted gray;
+ margin: 2px;
+ padding: 2px;
+ z-index: 2;
+}
+div.translation-action
+{
+ float: right;
+ width: 0px;
+ height: 0px;
+}
+div.translation-action[dir="rtl"]
+{
+ float: left;
+}
+.specialchars
+{
+ line-height: 150%;
+ margin-top: 5px;
+}
+.extraspace
+{
+ margin-left: 7px;
+ margin-right: 7px;
+}
+.translation-highlight-space
+{
+ background-color: #d3d3d3;
+}
+.translation-highlight-accelerator
+{
+ color: #8b8b00;
+ background-color: #add8e6;
+}
+.translation-highlight-variable
+{
+ color: #8b0000;
+}
+.translation-highlight-escape
+{
+ color: purple;
+}
+.translation-highlight-html
+{
+ color: #A00000;
+}
+.trackerdetails
+{
+ color:#0000ff;
+}
+
+table.sortable img.sortarrow {
+ padding-left: 2px;
+ border: none;
+ position: relative;
+ top: 4px;
+}
+.sortkey {
+ display: none;
+}
+
diff --git a/Pootle-1.2.1/Pootle/html/tests/LoginTest.html b/Pootle-1.2.1/Pootle/html/tests/LoginTest.html
new file mode 100644
index 0000000..d2b80e3
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/tests/LoginTest.html
@@ -0,0 +1,198 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <meta content="text/html; charset=ISO-8859-1"
+ http-equiv="content-type">
+ <title>Test Login</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+ <tbody>
+ <tr>
+ <td rowspan="1" colspan="3">Test Login<br>
+ </td>
+ </tr>
+ <tr>
+ <td>open</td>
+ <td>/</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>link=exact:Log in</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTitle</td>
+ <td>Login to Pootle</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Log in</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Register</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Activate</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>document.forms['loginform'].username</td>
+ <td>startoff</td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>document.forms['loginform'].password</td>
+ <td>atotallywrongpassword</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>document.forms['loginform'].Login</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyText</td>
+ <td>xpath=//div[@class='intro']</td>
+ <td>Login failed</td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>document.forms['loginform'].username</td>
+ <td>startup</td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>document.forms['loginform'].password</td>
+ <td>startup</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>document.forms['loginform'].Login</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTitle</td>
+ <td>User Page for: startup</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Log out</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Log in</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Register</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Activate</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyText</td>
+ <td>xpath=//span</td>
+ <td>logged in as <b>startup</b></td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>My account</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Admin</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>open</td>
+ <td>/login.html</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTitle</td>
+ <td>User Page for: startup</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Log out</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Log in</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Register</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Activate</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyText</td>
+ <td>xpath=//span</td>
+ <td>logged in as <b>startup</b></td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>My account</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Admin</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>link=exact:Log out</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTitle</td>
+ <td>Pootle</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Log out</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Log in</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Activate</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Register</td>
+ <td>&nbsp;</td>
+ </tr>
+ </tbody>
+</table>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/html/tests/ProjectPageTest.html b/Pootle-1.2.1/Pootle/html/tests/ProjectPageTest.html
new file mode 100644
index 0000000..ff40c34
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/tests/ProjectPageTest.html
@@ -0,0 +1,364 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <meta content="text/html; charset=ISO-8859-1"
+ http-equiv="content-type">
+ <title>Test Project Page</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+ <tbody>
+ <tr>
+ <td rowspan="1" colspan="3">Test Project Page<br>
+ </td>
+ </tr>
+ <tr>
+ <td rowspan="1" colspan="3">User not logged in</td>
+ </tr>
+ <tr>
+ <td>open</td>
+ <td>/nl/pootle/</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTitle</td>
+ <td>Pootle: Project Pootle, Language Nederlands</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Nederlands</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Pootle</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Show Editing Functions</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Show Goals</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Translated</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Fuzzy</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Total</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>pootle.po</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Graph</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>PO file</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Show Statistics</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>View Untranslated</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>link=exact:Show Editing Functions</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Fuzzy</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Graph</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Total</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>PO file</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>View Untranslated</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Show Statistics</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>link=exact:Show Goals</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>pootle.po</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Not in a goal</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Hide Goals</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td rowspan="1" colspan="3">Now user IS logged in</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>link=exact:Log in</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>document.forms['loginform'].username</td>
+ <td>startup</td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>document.forms['loginform'].password</td>
+ <td>startup</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>document.forms['loginform'].Login</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>open</td>
+ <td>/nl/pootle/</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTitle</td>
+ <td>Pootle: Project Pootle, Language Nederlands</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Nederlands</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Pootle</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Show Editing Functions</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Show Goals</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Translated</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Fuzzy</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Total</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>pootle.po</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Graph</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>PO file</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Show Statistics</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>View Untranslated</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>ZIP of folder</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Upload File</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>link=exact:Show Editing Functions</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Fuzzy</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Graph</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>Total</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>PO file</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>View Untranslated</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Show Checks</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Show Assigns</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Translate My Strings</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Quick Translate My Strings</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Quick Translate</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Translate All</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>ZIP of folder</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>XLIFF file</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Qt .ts file</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>CSV file</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Update</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Show Statistics</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>link=exact:Show Goals</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextNotPresent</td>
+ <td>pootle.po</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Not in a goal</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>verifyTextPresent</td>
+ <td>Hide Goals</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>link=exact:Log out</td>
+ <td>&nbsp;</td>
+ </tr>
+ </tbody>
+</table>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/html/tests/TestSuite.html b/Pootle-1.2.1/Pootle/html/tests/TestSuite.html
new file mode 100644
index 0000000..7c5b40a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/html/tests/TestSuite.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta content="text/html; charset=ISO-8859-1"
+http-equiv="content-type">
+<title>Pootle Test Suite</title>
+
+</head>
+
+<body>
+ <table cellpadding="1" cellspacing="1"border="1">
+ <tbody>
+ <tr><td><b>Pootle Test Suite</b></td></tr>
+ <tr><td><a href="./LoginTest.html">LoginTest</a></td></tr>
+ <tr><td><a href="./ProjectPageTest.html">ProjectPageTest</a></td></tr>
+ </tbody>
+ </table>
+</body>
+</html>
+
diff --git a/Pootle-1.2.1/Pootle/indexpage.py b/Pootle-1.2.1/Pootle/indexpage.py
new file mode 100644
index 0000000..eb57759
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/indexpage.py
@@ -0,0 +1,1031 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2004-2007 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+from Pootle import pagelayout
+from Pootle import projects
+from Pootle import pootlefile
+from translate.storage import versioncontrol
+# Versioning information
+from Pootle import __version__ as pootleversion
+from translate import __version__ as toolkitversion
+from jToolkit import __version__ as jtoolkitversion
+from kid import __version__ as kidversion
+try:
+ # ElementTree is part of Python 2.5, so let's try that first
+ from xml.etree import ElementTree
+except ImportError:
+ from elementtree import ElementTree
+import os
+import sys
+import re
+import locale
+import util
+
+def shortdescription(descr):
+ """Returns a short description by removing markup and only including up
+ to the first br-tag"""
+ stopsign = descr.find("<br")
+ if stopsign >= 0:
+ descr = descr[:stopsign]
+ return re.sub("<[^>]*>", "", descr).strip()
+
+class AboutPage(pagelayout.PootlePage):
+ """the bar at the side describing current login details etc"""
+ def __init__(self, session):
+ self.localize = session.localize
+ pagetitle = getattr(session.instance, "title")
+ description = getattr(session.instance, "description")
+ meta_description = shortdescription(description)
+ keywords = ["Pootle", "locamotion", "translate", "translation", "localisation",
+ "localization", "l10n", "traduction", "traduire"]
+ abouttitle = self.localize("About Pootle")
+ # l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+ introtext = self.localize("<strong>Pootle</strong> is a simple web portal that should allow you to <strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, you can download it and run your own copy if you like. You can also help participate in the development in many ways (you don't have to be able to program).")
+ hosttext = self.localize('The Pootle project itself is hosted at <a href="http://translate.sourceforge.net/">translate.sourceforge.net</a> where you can find the details about source code, mailing lists etc.')
+ # l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+ # l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+ nametext = self.localize('The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, but you may need to read <a href="http://www.thechestnut.com/flumps.htm">this</a>.')
+ versiontitle = self.localize("Versions")
+ # l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+ # l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+ versiontext = self.localize("This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)", pootleversion.ver, toolkitversion.ver, jtoolkitversion.ver, kidversion, ElementTree.VERSION, sys.version, sys.platform, os.name)
+ templatename = "about"
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ templatevars = {"pagetitle": pagetitle, "description": description,
+ "meta_description": meta_description, "keywords": keywords,
+ "abouttitle": abouttitle, "introtext": introtext,
+ "hosttext": hosttext, "nametext": nametext, "versiontitle": versiontitle, "versiontext": versiontext,
+ "session": sessionvars, "instancetitle": instancetitle}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+class PootleIndex(pagelayout.PootlePage):
+ """The main page listing projects and languages. It is also reused for
+ LanguagesIndex and ProjectsIndex"""
+ def __init__(self, potree, session):
+ self.potree = potree
+ self.localize = session.localize
+ self.nlocalize = session.nlocalize
+ self.tr_lang = session.tr_lang
+ self.listseperator = session.lang.listseperator
+ templatename = "index"
+ description = getattr(session.instance, "description")
+ meta_description = shortdescription(description)
+ keywords = ["Pootle", "WordForge", "translate", "translation", "localisation", "localization",
+ "l10n", "traduction", "traduire"] + self.getprojectnames()
+ languagelink = self.localize('Languages')
+ projectlink = self.localize('Projects')
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ pagetitle = instancetitle
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ languages = [{"code": code, "name": self.tr_lang(name), "sep": self.listseperator} for code, name in self.potree.getlanguages()]
+ # rewritten for compatibility with Python 2.3
+ # languages.sort(cmp=locale.strcoll, key=lambda dict: dict["name"])
+ languages.sort(lambda x,y: locale.strcoll(x["name"], y["name"]))
+ if languages:
+ languages[-1]["sep"] = ""
+ templatevars = {"pagetitle": pagetitle, "description": description,
+ "meta_description": meta_description, "keywords": keywords,
+ "languagelink": languagelink, "languages": languages,
+ "projectlink": projectlink, "projects": self.getprojects(),
+ "session": sessionvars, "instancetitle": instancetitle}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+ def getprojects(self):
+ """gets the options for the projects"""
+ projects = []
+ for projectcode in self.potree.getprojectcodes():
+ projectname = self.potree.getprojectname(projectcode)
+ description = shortdescription(self.potree.getprojectdescription(projectcode))
+ projects.append({"code": projectcode, "name": projectname, "description": description, "sep": self.listseperator})
+ if projects:
+ projects[-1]["sep"] = ""
+ return projects
+
+ def getprojectnames(self):
+ return [self.potree.getprojectname(projectcode) for projectcode in self.potree.getprojectcodes()]
+
+class UserIndex(pagelayout.PootlePage):
+ """home page for a given user"""
+ def __init__(self, potree, session):
+ self.potree = potree
+ self.session = session
+ self.tr_lang = session.tr_lang
+ self.localize = session.localize
+ self.nlocalize = session.nlocalize
+ pagetitle = self.localize("User Page for: %s", session.username)
+ templatename = "home"
+ optionslink = self.localize("Change options")
+ adminlink = self.localize("Admin page")
+ admintext = self.localize("Administrate")
+ quicklinkstitle = self.localize("Quick Links")
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ quicklinks = self.getquicklinks()
+ setoptionstext = self.localize("Please click on 'Change options' and select some languages and projects")
+ templatevars = {"pagetitle": pagetitle, "optionslink": optionslink,
+ "adminlink": adminlink, "admintext": admintext,
+ "quicklinkstitle": quicklinkstitle,
+ "quicklinks": quicklinks, "setoptionstext": setoptionstext,
+ "session": sessionvars, "instancetitle": instancetitle}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+ def getquicklinks(self):
+ """gets a set of quick links to user's project-languages"""
+ quicklinks = []
+ for languagecode in self.session.getlanguages():
+ if not self.potree.haslanguage(languagecode):
+ continue
+ languagename = self.potree.getlanguagename(languagecode)
+ langlinks = []
+ for projectcode in self.session.getprojects():
+ if self.potree.hasproject(languagecode, projectcode):
+ projecttitle = self.potree.getprojectname(projectcode)
+ project = self.potree.getproject(languagecode, projectcode)
+ isprojectadmin = "admin" in project.getrights(session=self.session) \
+ or self.session.issiteadmin()
+ langlinks.append({"code": projectcode, "name": projecttitle,
+ "isprojectadmin": isprojectadmin, "sep": "<br />"})
+ if langlinks:
+ langlinks[-1]["sep"] = ""
+ quicklinks.append({"code": languagecode, "name": self.tr_lang(languagename), "projects": langlinks})
+ # rewritten for compatibility with Python 2.3
+ # quicklinks.sort(cmp=locale.strcoll, key=lambda dict: dict["name"])
+ quicklinks.sort(lambda x,y: locale.strcoll(x["name"], y["name"]))
+ return quicklinks
+
+class ProjectsIndex(PootleIndex):
+ """the list of languages"""
+ def __init__(self, potree, session):
+ PootleIndex.__init__(self, potree, session)
+ self.templatename = "projects"
+
+class LanguagesIndex(PootleIndex):
+ """the list of languages"""
+ def __init__(self, potree, session):
+ PootleIndex.__init__(self, potree, session)
+ self.templatename = "languages"
+
+class LanguageIndex(pagelayout.PootleNavPage):
+ """The main page for a language, listing all the projects in it"""
+ def __init__(self, potree, languagecode, session):
+ self.potree = potree
+ self.languagecode = languagecode
+ self.localize = session.localize
+ self.nlocalize = session.nlocalize
+ self.tr_lang = session.tr_lang
+ self.languagename = self.potree.getlanguagename(self.languagecode)
+ self.initpagestats()
+ languageprojects = self.getprojects()
+ self.projectcount = len(languageprojects)
+ average = self.getpagestats()
+ languagestats = self.nlocalize("%d project, average %d%% translated", "%d projects, average %d%% translated", self.projectcount, self.projectcount, average)
+ languageinfo = self.getlanguageinfo()
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ # l10n: The first parameter is the name of the installation
+ # l10n: The second parameter is the name of the project/language
+ # l10n: This is used as a page title. Most languages won't need to change this
+ pagetitle = self.localize("%s: %s", instancetitle, self.tr_lang(self.languagename))
+ templatename = "language"
+ adminlink = self.localize("Admin")
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ templatevars = {"pagetitle": pagetitle,
+ "language": {"code": languagecode, "name": self.tr_lang(self.languagename), "stats": languagestats, "info": languageinfo},
+ "projects": languageprojects,
+ "statsheadings": self.getstatsheadings(),
+ "session": sessionvars, "instancetitle": instancetitle}
+ pagelayout.PootleNavPage.__init__(self, templatename, templatevars, session, bannerheight=80)
+
+ def getlanguageinfo(self):
+ """returns information defined for the language"""
+ # specialchars = self.potree.getlanguagespecialchars(self.languagecode)
+ nplurals = self.potree.getlanguagenplurals(self.languagecode)
+ pluralequation = self.potree.getlanguagepluralequation(self.languagecode)
+ infoparts = [(self.localize("Language Code"), self.languagecode),
+ (self.localize("Language Name"), self.tr_lang(self.languagename)),
+ # (self.localize("Special Characters"), specialchars),
+ (self.localize("Number of Plurals"), str(nplurals)),
+ (self.localize("Plural Equation"), pluralequation),
+ ]
+ return [{"title": title, "value": value} for title, value in infoparts]
+
+ def getprojects(self):
+ """gets the info on the projects"""
+ projectcodes = self.potree.getprojectcodes(self.languagecode)
+ self.projectcount = len(projectcodes)
+ projectitems = [self.getprojectitem(projectcode) for projectcode in projectcodes]
+ for n, item in enumerate(projectitems):
+ item["parity"] = ["even", "odd"][n % 2]
+ return projectitems
+
+ def getprojectitem(self, projectcode):
+ href = '%s/' % projectcode
+ projectname = self.potree.getprojectname(projectcode)
+ projectdescription = shortdescription(self.potree.getprojectdescription(projectcode))
+ project = self.potree.getproject(self.languagecode, projectcode)
+ projectstats = project.getquickstats()
+ projectdata = self.getstats(project, projectstats)
+ self.updatepagestats(projectdata["translatedsourcewords"], projectdata["totalsourcewords"])
+ return {"code": projectcode, "href": href, "icon": "folder", "title": projectname, "description": projectdescription, "data": projectdata, "isproject": True}
+
+class ProjectLanguageIndex(pagelayout.PootleNavPage):
+ """The main page for a project, listing all the languages belonging to it"""
+ def __init__(self, potree, projectcode, session):
+ self.potree = potree
+ self.projectcode = projectcode
+ self.localize = session.localize
+ self.nlocalize = session.nlocalize
+ self.tr_lang = session.tr_lang
+ self.initpagestats()
+ languages = self.getlanguages()
+ average = self.getpagestats()
+ projectstats = self.nlocalize("%d language, average %d%% translated", "%d languages, average %d%% translated", self.languagecount, self.languagecount, average)
+ projectname = self.potree.getprojectname(self.projectcode)
+ description = self.potree.getprojectdescription(projectcode)
+ meta_description = shortdescription(description)
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ # l10n: The first parameter is the name of the installation
+ # l10n: The second parameter is the name of the project/language
+ # l10n: This is used as a page title. Most languages won't need to change this
+ pagetitle = self.localize("%s: %s", instancetitle, projectname)
+ templatename = "project"
+ adminlink = self.localize("Admin")
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ statsheadings = self.getstatsheadings()
+ statsheadings["name"] = self.localize("Language")
+ templatevars = {"pagetitle": pagetitle,
+ "project": {"code": projectcode, "name": projectname, "stats": projectstats},
+ "description": description, "meta_description": meta_description,
+ "adminlink": adminlink, "languages": languages,
+ "session": sessionvars, "instancetitle": instancetitle,
+ "statsheadings": statsheadings}
+ pagelayout.PootleNavPage.__init__(self, templatename, templatevars, session, bannerheight=80)
+
+ def getlanguages(self):
+ """gets the stats etc of the languages"""
+ languages = self.potree.getlanguages(self.projectcode)
+ self.languagecount = len(languages)
+ languageitems = [self.getlanguageitem(languagecode, languagename) for languagecode, languagename in languages]
+ # rewritten for compatibility with Python 2.3
+ # languageitems.sort(cmp=locale.strcoll, key=lambda dict: dict["title"])
+ languageitems.sort(lambda x,y: locale.strcoll(x["title"], y["title"]))
+ for n, item in enumerate(languageitems):
+ item["parity"] = ["even", "odd"][n % 2]
+ return languageitems
+
+ def getlanguageitem(self, languagecode, languagename):
+ language = self.potree.getproject(languagecode, self.projectcode)
+ href = "../../%s/%s/" % (languagecode, self.projectcode)
+ quickstats = language.getquickstats()
+ data = self.getstats(language, quickstats)
+ self.updatepagestats(data["translatedsourcewords"], data["totalsourcewords"])
+ return {"code": languagecode, "icon": "language", "href": href, "title": self.tr_lang(languagename), "data": data}
+
+class LazyStats(object):
+ def __init__(self, project, pofilenames):
+ self._project = project
+ self._pofilenames = pofilenames
+ self._basic = util.undefined
+ self._assign = util.undefined
+ self._units = util.undefined
+
+ @util.lazy('_basic')
+ def _get_basic(self):
+ return self._project.getquickstats(self._pofilenames)
+ basic = property(_get_basic)
+
+ @util.lazy('_assign')
+ def _get_assign(self):
+ return self._project.combineassignstats(self._pofilenames)
+ assign = property(_get_assign)
+
+ @util.lazy('_units')
+ def _get_units(self):
+ return self._project.combine_unit_stats(self._pofilenames)
+ units = property(_get_units)
+
+class ProjectIndex(pagelayout.PootleNavPage):
+ """The main page of a project in a specific language"""
+ def __init__(self, project, session, argdict, dirfilter=None):
+ self.project = project
+ self.session = session
+ self.localize = session.localize
+ self.nlocalize = session.nlocalize
+ self.tr_lang = session.tr_lang
+ self.rights = self.project.getrights(self.session)
+ message = argdict.get("message", "")
+ if dirfilter == "":
+ dirfilter = None
+ self.dirfilter = dirfilter
+ if dirfilter and dirfilter.endswith(".po"):
+ self.dirname = os.path.dirname(dirfilter)
+ else:
+ self.dirname = dirfilter or ""
+ self.argdict = argdict
+ # handle actions before generating URLs, so we strip unneccessary parameters out of argdict
+ self.handleactions()
+ # generate the navigation bar maintaining state
+ navbarpath_dict = self.makenavbarpath_dict(project=self.project, session=self.session, currentfolder=dirfilter, argdict=self.argdict)
+ self.showtracks = self.getboolarg("showtracks")
+ self.showchecks = self.getboolarg("showchecks")
+ self.showassigns = self.getboolarg("showassigns")
+ self.showgoals = self.getboolarg("showgoals")
+ self.editing = self.getboolarg("editing")
+ self.currentgoal = self.argdict.pop("goal", None)
+ if dirfilter and dirfilter.endswith(".po"):
+ actionlinks = []
+ mainstats = ""
+ mainicon = "file"
+ else:
+ pofilenames = self.project.browsefiles(dirfilter)
+ projectstats = LazyStats(self.project, pofilenames)
+ if self.editing:
+ actionlinks = self.getactionlinks("", projectstats, ["editing", "mine", "review", "check", "assign", "goal", "quick", "all", "zip", "sdf"], dirfilter)
+ else:
+ actionlinks = self.getactionlinks("", projectstats, ["editing", "goal", "zip", "sdf"])
+ mainstats = self.getitemstats("", pofilenames, len(pofilenames))
+ if self.showgoals:
+ childitems = self.getgoalitems(dirfilter)
+ else:
+ childitems = self.getchilditems(dirfilter)
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ # l10n: The first parameter is the name of the installation (like "Pootle")
+ pagetitle = self.localize("%s: Project %s, Language %s", instancetitle, self.project.projectname, self.tr_lang(self.project.languagename))
+ templatename = "fileindex"
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ templatevars = {"pagetitle": pagetitle,
+ "project": {"code": self.project.projectcode, "name": self.project.projectname},
+ "language": {"code": self.project.languagecode, "name": self.tr_lang(self.project.languagename)},
+ # optional sections, will appear if these values are replaced
+ "assign": None, "goals": None, "upload": None,
+ "search": {"title": self.localize("Search"),
+ "advanced_title": self.localize("Advanced Search"),
+ "fields": self.getsearchfields() },
+ "message": message,
+ # navigation bar
+ "navitems": [{"icon": "folder", "path": navbarpath_dict, "actions": actionlinks, "stats": mainstats}],
+ # children
+ "children": childitems,
+ # are we in editing mode (otherwise stats)
+ "editing": self.editing,
+ # stats table headings
+ "statsheadings": self.getstatsheadings(),
+ # general vars
+ "session": sessionvars, "instancetitle": instancetitle}
+ pagelayout.PootleNavPage.__init__(self, templatename, templatevars, session, bannerheight=80)
+ if self.showassigns and "assign" in self.rights:
+ self.templatevars["assign"] = self.getassignbox()
+ if "admin" in self.rights:
+ if self.showgoals:
+ self.templatevars["goals"] = self.getgoalbox()
+ if "admin" in self.rights or "translate" in self.rights or "suggest" in self.rights:
+ self.templatevars["upload"] = self.getuploadbox()
+
+ def handleactions(self):
+ """handles the given actions that must be taken (changing operations)"""
+ if "doassign" in self.argdict:
+ assignto = self.argdict.pop("assignto", None)
+ action = self.argdict.pop("action", None)
+ if not assignto and action:
+ raise ValueError("cannot doassign, need assignto and action")
+ search = pootlefile.Search(dirfilter=self.dirfilter)
+ assigncount = self.project.assignpoitems(self.session, search, assignto, action)
+ print "assigned %d strings to %s for %s" % (assigncount, assignto, action)
+ del self.argdict["doassign"]
+ if self.getboolarg("removeassigns"):
+ assignedto = self.argdict.pop("assignedto", None)
+ removefilter = self.argdict.pop("removefilter", "")
+ if removefilter:
+ if self.dirfilter:
+ removefilter = self.dirfilter + removefilter
+ else:
+ removefilter = self.dirfilter
+ search = pootlefile.Search(dirfilter=removefilter)
+ search.assignedto = assignedto
+ assigncount = self.project.unassignpoitems(self.session, search, assignedto)
+ print "removed %d assigns from %s" % (assigncount, assignedto)
+ del self.argdict["removeassigns"]
+ if "doupload" in self.argdict:
+ extensiontypes = ("xlf", "xlff", "xliff", "po")
+ if "Yes" in self.argdict.pop("dooverwrite", []):
+ overwrite = True
+ else:
+ overwrite = False
+ uploadfile = self.argdict.pop("uploadfile", None)
+ # multiple translation file extensions check
+ if filter(uploadfile.filename.endswith, extensiontypes):
+ transfiles = True
+ else:
+ transfiles = False
+ if not uploadfile.filename:
+ raise ValueError(self.localize("Cannot upload file, no file attached"))
+ if transfiles:
+ self.project.uploadfile(self.session, self.dirname, uploadfile.filename, uploadfile.contents, overwrite)
+ self.project.scanpofiles()
+ elif uploadfile.filename.endswith(".zip"):
+ self.project.uploadarchive(self.session, self.dirname, uploadfile.contents)
+ self.project.scanpofiles()
+ else:
+ raise ValueError(self.localize("Can only upload PO files and zips of PO files"))
+ del self.argdict["doupload"]
+ if "doupdate" in self.argdict:
+ updatefile = self.argdict.pop("updatefile", None)
+ if not updatefile:
+ raise ValueError("cannot update file, no file specified")
+ if updatefile.endswith("." + self.project.fileext):
+ self.project.updatepofile(self.session, self.dirname, updatefile)
+ self.project.scanpofiles()
+ else:
+ raise ValueError("can only update files with extension ." + self.project.fileext)
+ del self.argdict["doupdate"]
+ if "docommit" in self.argdict:
+ commitfile = self.argdict.pop("commitfile", None)
+ if not commitfile:
+ raise ValueError("cannot commit file, no file specified")
+ if commitfile.endswith("." + self.project.fileext):
+ self.project.commitpofile(self.session, self.dirname, commitfile)
+ else:
+ raise ValueError("can only commit files with extension ." + self.project.fileext)
+ del self.argdict["docommit"]
+ if "doaddgoal" in self.argdict:
+ goalname = self.argdict.pop("newgoal", None)
+ if not goalname:
+ raise ValueError("cannot add goal, no name given")
+ self.project.setgoalfiles(self.session, goalname.strip(), "")
+ del self.argdict["doaddgoal"]
+ if "doeditgoal" in self.argdict:
+ goalnames = self.argdict.pop("editgoal", None)
+ goalfile = self.argdict.pop("editgoalfile", None)
+ if not goalfile:
+ raise ValueError("cannot add goal, no filename given")
+ if self.dirname:
+ goalfile = os.path.join(self.dirname, goalfile)
+ if not isinstance(goalnames, list):
+ goalnames = [goalnames]
+ goalnames = [goalname.strip() for goalname in goalnames if goalname.strip()]
+ self.project.setfilegoals(self.session, goalnames, goalfile)
+ del self.argdict["doeditgoal"]
+ if "doeditgoalusers" in self.argdict:
+ goalname = self.argdict.pop("editgoalname", "").strip()
+ if not goalname:
+ raise ValueError("cannot edit goal, no name given")
+ goalusers = self.project.getgoalusers(goalname)
+ addusername = self.argdict.pop("newgoaluser", "").strip()
+ if addusername:
+ self.project.addusertogoal(self.session, goalname, addusername)
+ del self.argdict["doeditgoalusers"]
+ if "doedituser" in self.argdict:
+ goalnames = self.argdict.pop("editgoal", None)
+ goalusers = self.argdict.pop("editfileuser", "")
+ goalfile = self.argdict.pop("editgoalfile", None)
+ assignwhich = self.argdict.pop("edituserwhich", "all")
+ if not goalfile:
+ raise ValueError("cannot add user to file for goal, no filename given")
+ if self.dirname:
+ goalfile = os.path.join(self.dirname, goalfile)
+ if not isinstance(goalusers, list):
+ goalusers = [goalusers]
+ goalusers = [goaluser.strip() for goaluser in goalusers if goaluser.strip()]
+ if not isinstance(goalnames, list):
+ goalnames = [goalnames]
+ goalnames = [goalname.strip() for goalname in goalnames if goalname.strip()]
+ search = pootlefile.Search(dirfilter=goalfile)
+ if assignwhich == "all":
+ pass
+ elif assignwhich == "untranslated":
+ search.matchnames = ["fuzzy", "untranslated"]
+ elif assignwhich == "unassigned":
+ search.assignedto = [None]
+ elif assignwhich == "unassigneduntranslated":
+ search.matchnames = ["fuzzy", "untranslated"]
+ search.assignedto = [None]
+ else:
+ raise ValueError("unexpected assignwhich")
+ for goalname in goalnames:
+ action = "goal-" + goalname
+ self.project.reassignpoitems(self.session, search, goalusers, action)
+ del self.argdict["doedituser"]
+ # pop arguments we don't want to propogate through inadvertently...
+ for argname in ("assignto", "action", "assignedto", "removefilter",
+ "uploadfile", "updatefile", "commitfile",
+ "newgoal", "editgoal", "editgoalfile", "editgoalname",
+ "newgoaluser", "editfileuser", "edituserwhich"):
+ self.argdict.pop(argname, "")
+
+ def getboolarg(self, argname, default=False):
+ """gets a boolean argument from self.argdict"""
+ value = self.argdict.get(argname, default)
+ if isinstance(value, bool):
+ return value
+ elif isinstance(value, int):
+ return bool(value)
+ elif isinstance(value, (str, unicode)):
+ value = value.lower()
+ if value.isdigit():
+ return bool(int(value))
+ if value == "true":
+ return True
+ if value == "false":
+ return False
+ raise ValueError("Invalid boolean value for %s: %r" % (argname, value))
+
+ def getassignbox(self):
+ """adds a box that lets the user assign strings"""
+ users = self.project.getuserswithinterest(self.session)
+ return {
+ "users": users,
+ "title": self.localize("Assign Strings"),
+ "action_text": self.localize("Assign Action"),
+ "users_text": self.localize("Assign to User"),
+ "button": self.localize("Assign Strings")
+ }
+
+ def getgoalbox(self):
+ """adds a box that lets the user add a new goal"""
+ return {"title": self.localize('goals'),
+ "name-title": self.localize("Enter goal name"),
+ "button": self.localize("Add Goal")}
+
+ def getuploadbox(self):
+ """adds a box that lets the user assign strings"""
+ uploadbox = {
+ "title": self.localize("Upload File"),
+ "file_title": self.localize("Select file to upload"),
+ "upload_button": self.localize("Upload File")
+ }
+ if "admin" in self.rights or "overwrite" in self.rights:
+ uploadbox.update({
+ #l10n: radio button text
+ "overwrite": self.localize("Overwrite"),
+ #l10n: tooltip
+ "overwrite_title": self.localize("Overwrite the current file if it exists"),
+ #l10n: radio button text
+ "merge": self.localize("Merge"),
+ #l10n: tooltip
+ "merge_title": self.localize("Merge the file with the current file and turn conflicts into suggestions"),
+ })
+ return uploadbox
+
+ def getchilditems(self, dirfilter):
+ """get all the items for directories and files viewable at this level"""
+ if dirfilter is None:
+ depth = 0
+ else:
+ depth = dirfilter.count(os.path.sep)
+ if not dirfilter.endswith(os.path.extsep + self.project.fileext):
+ depth += 1
+ diritems = []
+ for childdir in self.project.browsefiles(dirfilter=dirfilter, depth=depth, includedirs=True, includefiles=False):
+ diritem = self.getdiritem(childdir)
+ diritems.append((childdir, diritem))
+ diritems.sort()
+ fileitems = []
+ for childfile in self.project.browsefiles(dirfilter=dirfilter, depth=depth, includefiles=True, includedirs=False):
+ fileitem = self.getfileitem(childfile)
+ fileitems.append((childfile, fileitem))
+ fileitems.sort()
+ childitems = [diritem for childdir, diritem in diritems] + [fileitem for childfile, fileitem in fileitems]
+ self.polarizeitems(childitems)
+ return childitems
+
+ def getitems(self, itempaths, linksrequired=None, **newargs):
+ """gets the listed dir and fileitems"""
+ diritems, fileitems = [], []
+ for item in itempaths:
+ if item.endswith(os.path.extsep + self.project.fileext):
+ fileitem = self.getfileitem(item, linksrequired=linksrequired, **newargs)
+ fileitems.append((item, fileitem))
+ else:
+ if item.endswith(os.path.sep):
+ item = item.rstrip(os.path.sep)
+ diritem = self.getdiritem(item, linksrequired=linksrequired, **newargs)
+ diritems.append((item, diritem))
+ diritems.sort()
+ fileitems.sort()
+ childitems = [diritem for childdir, diritem in diritems] + [fileitem for childfile, fileitem in fileitems]
+ self.polarizeitems(childitems)
+ return childitems
+
+ def getgoalitems(self, dirfilter):
+ """get all the items for directories and files viewable at this level"""
+ if dirfilter is None:
+ depth = 0
+ else:
+ depth = dirfilter.count(os.path.sep)
+ if not dirfilter.endswith(os.path.extsep + self.project.fileext):
+ depth += 1
+ allitems = []
+ goalchildren = {}
+ allchildren = []
+ for childname in self.project.browsefiles(dirfilter=dirfilter, depth=depth, includedirs=True, includefiles=False):
+ allchildren.append(childname + os.path.sep)
+ for childname in self.project.browsefiles(dirfilter=dirfilter, depth=depth, includedirs=False, includefiles=True):
+ allchildren.append(childname)
+ initial = dirfilter
+ if initial and not initial.endswith(os.path.extsep + self.project.fileext):
+ initial += os.path.sep
+ if initial:
+ maxdepth = initial.count(os.path.sep)
+ else:
+ maxdepth = 0
+ # using a goal of "" means that the file has no goal
+ nogoal = ""
+ if self.currentgoal is None:
+ goalnames = self.project.getgoalnames() + [nogoal]
+ else:
+ goalnames = [self.currentgoal]
+ goalfiledict = {}
+ for goalname in goalnames:
+ goalfiles = self.project.getgoalfiles(goalname, dirfilter, maxdepth=maxdepth, expanddirs=True, includepartial=True)
+ goalfiles = [goalfile for goalfile in goalfiles if goalfile != initial]
+ goalfiledict[goalname] = goalfiles
+ for goalfile in goalfiles:
+ goalchildren[goalfile] = True
+ goalless = []
+ for item in allchildren:
+ itemgoals = self.project.getfilegoals(item)
+ if not itemgoals:
+ goalless.append(item)
+ goalfiledict[nogoal] = goalless
+ for goalname in goalnames:
+ goalfiles = goalfiledict[goalname]
+ goalusers = self.project.getgoalusers(goalname)
+ goalitem = self.getgoalitem(goalname, dirfilter, goalusers)
+ allitems.append(goalitem)
+ if self.currentgoal == goalname:
+ goalchilditems = self.getitems(goalfiles, linksrequired=["editgoal"], goal=self.currentgoal)
+ allitems.extend(goalchilditems)
+ return allitems
+
+ def getgoalitem(self, goalname, dirfilter, goalusers):
+ """returns an item showing a goal entry"""
+ pofilenames = self.project.getgoalfiles(goalname, dirfilter, expanddirs=True, includedirs=False)
+ goal = {"actions": None, "icon": "goal", "isgoal": True, "goal": {"name": goalname}}
+ if goalname:
+ goal["title"] = goalname
+ else:
+ goal["title"] = self.localize("Not in a goal")
+ goal["href"] = self.makelink("index.html", goal=goalname)
+ if pofilenames:
+ actionlinks = self.getactionlinks("", LazyStats(self.project, pofilenames), linksrequired=["mine", "review", "translate", "zip"], goal=goalname)
+ goal["actions"] = actionlinks
+ goaluserslist = []
+ if goalusers:
+ goalusers.sort()
+ goaluserslist = [{"name": goaluser, "sep": ", "} for goaluser in goalusers]
+ if goaluserslist:
+ goaluserslist[-1]["sep"] = ""
+ goal["goal"]["users"] = goaluserslist
+ if goalname and self.currentgoal == goalname:
+ if "admin" in self.rights:
+ unassignedusers = self.project.getuserswithinterest(self.session)
+ for user in goalusers:
+ if user in unassignedusers:
+ unassignedusers.pop(user)
+ goal["goal"]["show_adduser"] = True
+ goal["goal"]["otherusers"] = unassignedusers
+ goal["goal"]["adduser_title"] = self.localize("Add User")
+ goal["stats"] = self.getitemstats("", pofilenames, len(pofilenames), {'goal': goalname})
+ projectstats = self.project.getquickstats(pofilenames)
+ goal["data"] = self.getstats(self.project, projectstats)
+ return goal
+
+ def getdiritem(self, direntry, linksrequired=None, **newargs):
+ """returns an item showing a directory entry"""
+ pofilenames = self.project.browsefiles(direntry)
+ basename = os.path.basename(direntry)
+ browseurl = self.getbrowseurl("%s/" % basename, **newargs)
+ diritem = {"href": browseurl, "title": basename, "icon": "folder", "isdir": True}
+ basename += "/"
+ actionlinks = self.getactionlinks(basename, LazyStats(self.project, pofilenames), linksrequired=linksrequired)
+ diritem["actions"] = actionlinks
+ if self.showgoals and "goal" in self.argdict:
+ goalfilenames = self.project.getgoalfiles(self.currentgoal, dirfilter=direntry, includedirs=False, expanddirs=True)
+ diritem["stats"] = self.getitemstats(basename, goalfilenames, (len(goalfilenames), len(pofilenames)))
+ projectstats = self.project.getquickstats(goalfilenames)
+ diritem["data"] = self.getstats(self.projects, projectstats)
+ else:
+ diritem["stats"] = self.getitemstats(basename, pofilenames, len(pofilenames))
+ projectstats = self.project.getquickstats(pofilenames)
+ diritem["data"] = self.getstats(self.project, projectstats)
+ return diritem
+
+ def getfileitem(self, fileentry, linksrequired=None, **newargs):
+ """returns an item showing a file entry"""
+ if linksrequired is None:
+ if fileentry.endswith('.po'):
+ linksrequired = ["mine", "review", "quick", "all", "po", "xliff", "ts", "csv", "mo", "update", "commit"]
+ else:
+ linksrequired = ["mine", "review", "quick", "all", "po", "xliff", "update", "commit"]
+ basename = os.path.basename(fileentry)
+ browseurl = self.getbrowseurl(basename, **newargs)
+ fileitem = {"href": browseurl, "title": basename, "icon": "file", "isfile": True}
+ actions = self.getactionlinks(basename, LazyStats(self.project, [fileentry]), linksrequired=linksrequired)
+ actionlinks = actions["extended"]
+ if "po" in linksrequired:
+ poname = basename.replace(".xlf", ".po")
+ polink = {"href": poname, "text": self.localize('PO file')}
+ actionlinks.append(polink)
+ if "xliff" in linksrequired and "translate" in self.rights:
+ xliffname = basename.replace(".po", ".xlf")
+ xlifflink = {"href": xliffname, "text": self.localize('XLIFF file')}
+ actionlinks.append(xlifflink)
+ if "ts" in linksrequired and "translate" in self.rights:
+ tsname = basename.replace(".po", ".ts")
+ tslink = {"href": tsname, "text": self.localize('Qt .ts file')}
+ actionlinks.append(tslink)
+ if "csv" in linksrequired and "translate" in self.rights:
+ csvname = basename.replace(".po", ".csv")
+ csvlink = {"href": csvname, "text": self.localize('CSV file')}
+ actionlinks.append(csvlink)
+ if "mo" in linksrequired:
+ if self.project.hascreatemofiles(self.project.projectcode) and "pocompile" in self.rights:
+ moname = basename.replace(".po", ".mo")
+ molink = {"href": moname, "text": self.localize('MO file')}
+ actionlinks.append(molink)
+ if "update" in linksrequired and "admin" in self.rights:
+ if versioncontrol.hasversioning(os.path.join(self.project.podir,
+ self.dirname, basename)):
+ # l10n: Update from version control (like CVS or Subversion)
+ updatelink = {"href": "index.html?editing=1&doupdate=1&updatefile=%s" % (basename), "text": self.localize('Update')}
+ actionlinks.append(updatelink)
+ if "commit" in linksrequired and "commit" in self.rights:
+ if versioncontrol.hasversioning(os.path.join(self.project.podir,
+ self.dirname, basename)):
+ # l10n: Commit to version control (like CVS or Subversion)
+ commitlink = {"href": "index.html?editing=1&docommit=1&commitfile=%s" % (basename), "text": self.localize('Commit')}
+ actionlinks.append(commitlink)
+ # update the separators
+ for n, actionlink in enumerate(actionlinks):
+ if n < len(actionlinks)-1:
+ actionlink["sep"] = " | "
+ else:
+ actionlink["sep"] = ""
+ fileitem["actions"] = actions
+ fileitem["stats"] = self.getitemstats(basename, [fileentry], None)
+ fileitem["data"] = self.getstats(self.project, self.project.getquickstats([fileentry]))
+ return fileitem
+
+ def getgoalform(self, basename, goalfile, filegoals):
+ """Returns a form for adjusting goals"""
+ goalformname = "goal_%s" % (basename.replace("/", "_").replace(".", "_"))
+ goalnames = self.project.getgoalnames()
+ useroptions = []
+ for goalname in filegoals:
+ useroptions += self.project.getgoalusers(goalname)
+ multifiles = None
+ if len(filegoals) > 1:
+ multifiles = "multiple"
+ multiusers = None
+ assignusers = []
+ assignwhich = []
+ if len(useroptions) > 1:
+ assignfilenames = self.project.browsefiles(dirfilter=goalfile)
+ if self.currentgoal:
+ action = "goal-" + self.currentgoal
+ else:
+ action = None
+ assignstats = self.project.combineassignstats(assignfilenames, action)
+ assignusers = list(assignstats.iterkeys())
+ useroptions += [username for username in assignusers if username not in useroptions]
+ if len(assignusers) > 1:
+ multiusers = "multiple"
+ assignwhich = [('all', self.localize("All Strings")),
+ ('untranslated', self.localize("Untranslated")),
+ ('unassigned', self.localize('Unassigned')),
+ ('unassigneduntranslated', self.localize("Unassigned and Untranslated"))]
+ return {
+ "name": goalformname,
+ "filename": basename,
+ "goalnames": goalnames,
+ "filegoals": dict([(goalname, goalname in filegoals or None) for goalname in goalnames]),
+ "multifiles": multifiles,
+ "setgoal_text": self.localize("Set Goal"),
+ "users": useroptions,
+ "assignusers": dict([(username, username in assignusers or None) for username in useroptions]),
+ "multiusers": multiusers,
+ "selectmultiple_text": self.localize("Select Multiple"),
+ "assignwhich": [{"value": value, "text": text} for value, text in assignwhich],
+ "assignto_text": self.localize("Assign To"),
+ }
+
+ def getactionlinks(self, basename, projectstats, linksrequired=None, filepath=None, goal=None):
+ """get links to the actions that can be taken on an item (directory / file)"""
+ if linksrequired is None:
+ linksrequired = ["mine", "review", "quick", "all"]
+ actionlinks = []
+ actions = {}
+ actions["goalform"] = None
+ if not basename or basename.endswith("/"):
+ baseactionlink = basename + "translate.html?"
+ baseindexlink = basename + "index.html?"
+ else:
+ baseactionlink = "%s?translate=1" % basename
+ baseindexlink = "%s?index=1" % basename
+ if goal:
+ baseactionlink += "&goal=%s" % goal
+ baseindexlink += "&goal=%s" % goal
+ def addoptionlink(linkname, rightrequired, attrname, showtext, hidetext):
+ if linkname in linksrequired:
+ if rightrequired and not rightrequired in self.rights:
+ return
+ if getattr(self, attrname, False):
+ link = {"href": self.makelink(baseindexlink, **{attrname:0}), "text": hidetext}
+ else:
+ link = {"href": self.makelink(baseindexlink, **{attrname:1}), "text": showtext}
+ link["sep"] = " | "
+ actionlinks.append(link)
+ addoptionlink("editing", None, "editing", self.localize("Show Editing Functions"),
+ self.localize("Show Statistics"))
+ addoptionlink("track", None, "showtracks", self.localize("Show Tracks"), self.localize("Hide Tracks"))
+ # l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+ addoptionlink("check", "translate", "showchecks", self.localize("Show Checks"), self.localize("Hide Checks"))
+ addoptionlink("goal", None, "showgoals", self.localize("Show Goals"), self.localize("Hide Goals"))
+ addoptionlink("assign", "translate", "showassigns", self.localize("Show Assigns"), self.localize("Hide Assigns"))
+ actions["basic"] = actionlinks
+ actionlinks = []
+ if not goal:
+ goalfile = os.path.join(self.dirname, basename)
+ filegoals = self.project.getfilegoals(goalfile)
+ if self.showgoals:
+ if len(filegoals) > 1:
+ #TODO: This is not making sense. For now make it an unclickable link
+ allgoalslink = {"href": "", "text": self.localize("All Goals: %s", (", ".join(filegoals)))}
+ actionlinks.append(allgoalslink)
+ if "editgoal" in linksrequired and "admin" in self.rights:
+ actions["goalform"] = self.getgoalform(basename, goalfile, filegoals)
+ if "mine" in linksrequired and self.session.isopen:
+ if "translate" in self.rights:
+ minelink = self.localize("Translate My Strings")
+ else:
+ minelink = self.localize("View My Strings")
+ mystats = projectstats.assign.get(self.session.username, [])
+ if len(mystats):
+ minelink = {"href": self.makelink(baseactionlink, assignedto=self.session.username), "text": minelink}
+ else:
+ minelink = {"title": self.localize("No strings assigned to you"), "text": minelink}
+ actionlinks.append(minelink)
+ if "quick" in linksrequired and "translate" in self.rights:
+ if len(mystats) > 0: # A little shortcut to avoid the call to projectstats.units if we don't have anything assigned
+ mytranslatedstats = [statsitem for statsitem in mystats if statsitem in projectstats.units.get("translated", [])]
+ else:
+ mytranslatedstats = []
+ quickminelink = self.localize("Quick Translate My Strings")
+ if len(mytranslatedstats) < len(mystats):
+ quickminelink = {"href": self.makelink(baseactionlink, assignedto=self.session.username, fuzzy=1, untranslated=1), "text": quickminelink}
+ else:
+ quickminelink = {"title": self.localize("No untranslated strings assigned to you"), "text": quickminelink}
+ actionlinks.append(quickminelink)
+ if "review" in linksrequired and projectstats.units.get("check-hassuggestion", []):
+ if "review" in self.rights:
+ reviewlink = self.localize("Review Suggestions")
+ else:
+ reviewlink = self.localize("View Suggestions")
+ reviewlink = {"href": self.makelink(baseactionlink, review=1, **{"hassuggestion": 1}), "text": reviewlink}
+ actionlinks.append(reviewlink)
+ if "quick" in linksrequired:
+ if "translate" in self.rights:
+ quicklink = self.localize("Quick Translate")
+ else:
+ quicklink = self.localize("View Untranslated")
+ if projectstats.basic.get("translated", 0) < projectstats.basic.get("total", 0):
+ quicklink = {"href": self.makelink(baseactionlink, fuzzy=1, untranslated=1), "text": quicklink}
+ else:
+ quicklink = {"title": self.localize("No untranslated items"), "text": quicklink}
+ actionlinks.append(quicklink)
+ if "all" in linksrequired and "translate" in self.rights:
+ translatelink = {"href": self.makelink(baseactionlink), "text": self.localize('Translate All')}
+ actionlinks.append(translatelink)
+ if "zip" in linksrequired and "archive" in self.rights:
+ if filepath and filepath.endswith(".po"):
+ currentfolder = os.path.dirname(filepath)
+ else:
+ currentfolder = filepath
+ archivename = "%s-%s" % (self.project.projectcode, self.project.languagecode)
+ if currentfolder:
+ archivename += "-%s" % currentfolder.replace(os.path.sep, "-")
+ if goal:
+ archivename += "-%s" % goal
+ archivename += ".zip"
+ if goal:
+ archivename += "?goal=%s" % goal
+ linktext = self.localize('ZIP of goal')
+ else:
+ linktext = self.localize('ZIP of folder')
+ ziplink = {"href": archivename, "text": linktext, "title": archivename}
+ actionlinks.append(ziplink)
+
+ if "sdf" in linksrequired and "pocompile" in self.rights and \
+ self.project.ootemplate() and not (basename or filepath):
+ archivename = self.project.languagecode + ".sdf"
+ linktext = self.localize('Generate SDF')
+ oolink = {"href": archivename, "text": linktext, "title": archivename}
+ actionlinks.append(oolink)
+ for n, actionlink in enumerate(actionlinks):
+ if n < len(actionlinks)-1:
+ actionlink["sep"] = " | "
+ else:
+ actionlink["sep"] = ""
+ actions["extended"] = actionlinks
+ if not actions["extended"] and not actions["goalform"] and actions["basic"]:
+ actions["basic"][-1]["sep"] = ""
+ return actions
+
+ def getitemstats(self, basename, pofilenames, numfiles, url_opts={}):
+ """returns a widget summarizing item statistics"""
+ stats = {"summary": self.describestats(self.project, self.project.getquickstats(pofilenames), numfiles), "checks": [], "tracks": [], "assigns": []}
+ if not basename or basename.endswith("/"):
+ linkbase = basename + "translate.html?"
+ else:
+ linkbase = basename + "?translate=1"
+ if pofilenames:
+ if self.showchecks:
+ stats["checks"] = self.getcheckdetails(pofilenames, linkbase, url_opts)
+ if self.showtracks:
+ trackfilter = (self.dirfilter or "") + basename
+ trackpofilenames = self.project.browsefiles(trackfilter)
+ projecttracks = self.project.gettracks(trackpofilenames)
+ stats["tracks"] = self.gettrackdetails(projecttracks, linkbase)
+ if self.showassigns:
+ if not basename or basename.endswith("/"):
+ removelinkbase = "?showassigns=1&removeassigns=1"
+ else:
+ removelinkbase = "?showassigns=1&removeassigns=1&removefilter=%s" % basename
+ stats["assigns"] = self.getassigndetails(pofilenames, linkbase, removelinkbase)
+ return stats
+
+ def gettrackdetails(self, projecttracks, linkbase):
+ """return a list of strings describing the results of tracks"""
+ return [trackmessage for trackmessage in projecttracks]
+
+ def getcheckdetails(self, pofilenames, linkbase, url_opts={}):
+ """return a list of strings describing the results of checks"""
+ projectstats = self.project.combine_unit_stats(pofilenames)
+ total = max(len(projectstats.get("total", [])), 1)
+ checklinks = []
+ keys = projectstats.keys()
+ keys.sort()
+ for checkname in keys:
+ if not checkname.startswith("check-"):
+ continue
+ checkcount = len(projectstats[checkname])
+ checkname = checkname.replace("check-", "", 1)
+ if total and checkcount:
+ stats = self.nlocalize("%d string (%d%%) failed", "%d strings (%d%%) failed", checkcount, checkcount, (checkcount * 100 / total))
+ url_opts[str(checkname)] = 1
+ checklink = {"href": self.makelink(linkbase, **url_opts), "text": checkname, "stats": stats}
+ del url_opts[str(checkname)]
+ checklinks += [checklink]
+ return checklinks
+
+ def getassigndetails(self, pofilenames, linkbase, removelinkbase):
+ """return a list of strings describing the assigned strings"""
+ # TODO: allow setting of action, so goals can only show the appropriate action assigns
+ # quick lookup of what has been translated
+ projectstats = LazyStats(self.project, pofilenames)
+ totalcount = projectstats.basic.get("total", 0)
+ totalwords = projectstats.basic.get("totalsourcewords", 0)
+ assignlinks = []
+ keys = projectstats.assign.keys()
+ keys.sort()
+ for assignname in keys:
+ assigned = projectstats.assign[assignname]
+ assigncount = len(assigned)
+ assignwords = self.project.countwords(assigned)
+ complete = [statsitem for statsitem in assigned if statsitem in projectstats.units.get('translated', [])]
+ completecount = len(complete)
+ completewords = self.project.countwords(complete)
+ if totalcount and assigncount:
+ assignlink = {"href": self.makelink(linkbase, assignedto=assignname), "text": assignname}
+ percentassigned = assignwords * 100 / max(totalwords, 1)
+ percentcomplete = completewords * 100 / max(assignwords, 1)
+ stats = self.localize("%d/%d words (%d%%) assigned", assignwords, totalwords, percentassigned)
+ stringstats = self.localize("[%d/%d strings]", assigncount, totalcount)
+ completestats = self.localize("%d/%d words (%d%%) translated", completewords, assignwords, percentcomplete)
+ completestringstats = self.localize("[%d/%d strings]", completecount, assigncount)
+ if "assign" in self.rights:
+ removetext = self.localize("Remove")
+ removelink = {"href": self.makelink(removelinkbase, assignedto=assignname), "text": removetext}
+ else:
+ removelink = None
+ assignlinks.append({"assign": assignlink, "stats": stats, "stringstats": stringstats, "completestats": completestats, "completestringstats": completestringstats, "remove": removelink})
+ return assignlinks
+
diff --git a/Pootle-1.2.1/Pootle/pagelayout.py b/Pootle-1.2.1/Pootle/pagelayout.py
new file mode 100644
index 0000000..44f3a86
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/pagelayout.py
@@ -0,0 +1,320 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2004-2007 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+import os
+
+def localize_links(session):
+ """Localize all the generic links"""
+ links = {}
+ links["home"] = session.localize("Home")
+ links["projects"] = session.localize("All projects")
+ links["languages"] = session.localize("All languages")
+ links["account"] = session.localize("My account")
+ links["admin"] = session.localize("Admin")
+ links["doc"] = session.localize("Docs & help")
+ links["doclang"] = getdoclang(session.language)
+ links["logout"] = session.localize("Log out")
+ links["login"] = session.localize("Log in")
+ #l10n: Verb, as in "to register"
+ links["register"] = session.localize("Register")
+ links["activate"] = session.localize("Activate")
+ return links
+
+def getdoclang(language):
+ """Get the language code that the docs should be displayed in."""
+
+ #TODO: Determine the available languages programmatically.
+ available_languages = ["en"]
+ if language in available_languages:
+ return language
+ else:
+ return "en"
+
+def languagedir(language):
+ """Returns whether the language is right to left"""
+ shortcode = language[:3]
+ if not shortcode.isalpha():
+ shortcode = language[:2]
+ if shortcode in ["ar", "arc", "dv", "fa", "he", "ks", "ps", "ur", "yi"]:
+ return "rtl"
+ return "ltr"
+
+def weblanguage(language):
+ """Reformats the language code from locale style (pt_BR) to web style (pt-br)"""
+ return language.replace("_", "-")
+
+def localelanguage(language):
+ """Reformats the language code from web style (pt-br) to locale style (pt_BR)"""
+ dashindex = language.find("-")
+ if dashindex >= 0:
+ language = language[:dashindex] + "_" + language[dashindex+1:].upper()
+ return language
+
+def completetemplatevars(templatevars, session, bannerheight=135):
+ """fill out default values for template variables"""
+ if not "instancetitle" in templatevars:
+ templatevars["instancetitle"] = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ if not "session" in templatevars:
+ templatevars["session"] = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ if not "baseurl" in templatevars:
+ templatevars["baseurl"] = getattr(session.instance, "baseurl", "/")
+ if not templatevars["baseurl"].endswith("/"):
+ templatevars["baseurl"] += "/"
+ if not "enablealtsrc" in templatevars:
+ templatevars["enablealtsrc"] = getattr(session.instance, "enablealtsrc", False)
+ templatevars["logo_alttext"] = session.localize("Pootle Logo")
+ templatevars["aboutlink"] = session.localize("About this Pootle server")
+ templatevars["uilanguage"] = weblanguage(session.language)
+ templatevars["uidir"] = languagedir(session.language)
+ templatevars["links"] = localize_links(session)
+ if "search" not in templatevars:
+ templatevars["search"] = None
+
+class PootlePage:
+ """the main page"""
+ def __init__(self, templatename, templatevars, session, bannerheight=135):
+ if not hasattr(session.instance, "baseurl"):
+ session.instance.baseurl = "/"
+ if not hasattr(session.instance, "enablealtsrc"):
+ session.instance.enablealtsrc = False
+ self.localize = session.localize
+ self.session = session
+ self.templatename = templatename
+ self.templatevars = templatevars
+ self.completevars(bannerheight)
+
+ def completevars(self, bannerheight=135):
+ """fill out default values for template variables"""
+ if hasattr(self, "templatevars"):
+ completetemplatevars(self.templatevars, self.session, bannerheight=bannerheight)
+
+ def polarizeitems(self, itemlist):
+ """take an item list and alternate the background colour"""
+ polarity = False
+ for n, item in enumerate(itemlist):
+ if isinstance(item, dict):
+ item["parity"] = ["even", "odd"][n % 2]
+ else:
+ item.setpolarity(polarity)
+ polarity = not polarity
+ return itemlist
+
+class PootleNavPage(PootlePage):
+ def makenavbarpath_dict(self, project=None, session=None, currentfolder=None, language=None, argdict=None, dirfilter=None):
+ """create the navbar location line"""
+ #FIXME: Still lots of PO specific references here!
+ rootlink = ""
+ paramstring = ""
+ if argdict:
+ paramstring = "?" + "&".join(["%s=%s" % (arg, value) for arg, value in argdict.iteritems() if arg.startswith("show") or arg == "editing"])
+
+ links = {"admin": None, "project": [], "language": [], "goal": [], "pathlinks": []}
+ if currentfolder:
+ pathlinks = []
+ dirs = currentfolder.split(os.path.sep)
+ if dirfilter is None:
+ dirfilter = currentfolder
+
+ depth = dirfilter.count(os.path.sep) + 1
+ if dirfilter == "":
+ depth -= 1
+ elif dirfilter.endswith(".po") or dirfilter.endswith(".xlf"):
+ depth = depth - 1
+
+ rootlink = "/".join([".."] * depth)
+ if rootlink:
+ rootlink += "/"
+ backlinks = ""
+ for backlinkdir in dirs:
+ if depth >= 0:
+ backlinks = "../" * depth + backlinkdir
+ depth -= 1
+ else:
+ backlinks += backlinkdir
+ if not (backlinkdir.endswith(".po") or backlinkdir.endswith(".xlf")) and not backlinks.endswith("/"):
+ backlinks = backlinks + "/"
+ pathlinks.append({"href": self.getbrowseurl(backlinks), "text": backlinkdir, "sep": " / "})
+ if pathlinks:
+ pathlinks[-1]["sep"] = ""
+ links["pathlinks"] = pathlinks
+ if argdict and "goal" in argdict:
+ # goallink = {"href": self.getbrowseurl("", goal=goal), "text": goal}
+ links["goal"] = {"href": self.getbrowseurl(""), "text": self.localize("All goals")}
+ if project:
+ if isinstance(project, tuple):
+ projectcode, projectname = project
+ links["project"] = {"href": "/projects/%s/%s" % (projectcode, paramstring), "text": projectname}
+ else:
+ links["language"] = {"href": rootlink + "../index.html", "text": session.tr_lang(project.languagename)}
+ # don't getbrowseurl on the project link, so sticky options won't apply here
+ links["project"] = {"href": (rootlink or "index.html") + paramstring, "text": project.projectname}
+ if session:
+ if "admin" in project.getrights(session) or session.issiteadmin():
+ links["admin"] = {"href": rootlink + "admin.html", "text": self.localize("Admin")}
+ elif language:
+ languagecode, languagename = language
+ links["language"] = {"href": "/%s/" % languagecode, "text": session.tr_lang(languagename)}
+ return links
+
+ def getbrowseurl(self, basename, **newargs):
+ """gets the link to browse the item"""
+ if not basename or basename.endswith("/"):
+ return self.makelink(basename or "index.html", **newargs)
+ else:
+ return self.makelink(basename, translate=1, view=1, **newargs)
+
+ def makelink(self, link, **newargs):
+ """constructs a link that keeps sticky arguments e.g. showchecks"""
+ combinedargs = self.argdict.copy()
+ combinedargs.update(newargs)
+ if '?' in link:
+ if not (link.endswith("&") or link.endswith("?")):
+ link += "&"
+ else:
+ link += '?'
+ # TODO: check escaping
+ link += "&".join(["%s=%s" % (arg, value) for arg, value in combinedargs.iteritems() if arg != "allowmultikey"])
+ return link
+
+ def initpagestats(self):
+ """initialise the top level (language/project) stats"""
+ self.alltranslated = 0
+ self.grandtotal = 0
+
+ def getpagestats(self):
+ """return the top level stats"""
+ return (self.alltranslated*100/max(self.grandtotal, 1))
+
+ def updatepagestats(self, translated, total):
+ """updates the top level stats"""
+ self.alltranslated += translated
+ self.grandtotal += total
+
+ def describestats(self, project, projectstats, numfiles):
+ """returns a sentence summarizing item statistics"""
+ translated = projectstats.get("translated", [])
+ total = projectstats.get("total", 0)
+ if "translatedsourcewords" in projectstats:
+ translatedwords = projectstats["translatedsourcewords"]
+ else:
+ translatedwords = project.countwords(translated)
+ totalwords = projectstats["totalsourcewords"]
+ if isinstance(translated, list):
+ translated = len(translated)
+ if isinstance(total, list):
+ total = len(total)
+ percentfinished = (translatedwords*100/max(totalwords, 1))
+ if numfiles is None:
+ filestats = ""
+ elif isinstance(numfiles, tuple):
+ filestats = self.localize("%d/%d files", numfiles) + ", "
+ else:
+ #TODO: Perhaps do better?
+ filestats = self.nlocalize("%d file", "%d files", numfiles, numfiles) + ", "
+ wordstats = self.localize("%d/%d words (%d%%) translated", translatedwords, totalwords, percentfinished)
+ stringstatstext = self.localize("%d/%d strings", translated, total)
+ stringstats = ' <span class="string-statistics">[%s]</span>' % stringstatstext
+ return filestats + wordstats + stringstats
+
+ def getstatsheadings(self):
+ """returns a dictionary of localised headings"""
+ headings = {"name": self.localize("Name"),
+ "translated": self.localize("Translated"),
+ "translatedpercentage": self.localize("Translated percentage"),
+ "translatedwords": self.localize("Translated words"),
+ "fuzzy": self.localize("Fuzzy"),
+ "fuzzypercentage": self.localize("Fuzzy percentage"),
+ "fuzzywords": self.localize("Fuzzy words"),
+ "untranslated": self.localize("Untranslated"),
+ "untranslatedpercentage": self.localize("Untranslated percentage"),
+ "untranslatedwords": self.localize("Untranslated words"),
+ "total": self.localize("Total"),
+ "totalwords": self.localize("Total words"),
+ # l10n: noun. The graphical representation of translation status
+ "graph": self.localize("Graph")}
+ return headings
+
+ def getstats(self, project, projectstats):
+ """returns a list with the data items to fill a statistics table
+ Remember to update getstatsheadings() above as needed"""
+ wanted = ["translated", "fuzzy", "total"]
+ gotten = {}
+ for key in wanted:
+ gotten[key] = projectstats.get(key, [])
+ wordkey = key + "sourcewords"
+ if wordkey in projectstats:
+ gotten[wordkey] = projectstats[wordkey]
+ else:
+ count = projectstats.get(key, [])
+ gotten[wordkey] = project.countwords(count)
+ if isinstance(gotten[key], list):
+ #TODO: consider carefully:
+ gotten[key] = len(gotten[key])
+
+ gotten["untranslated"] = gotten["total"] - gotten["translated"] - gotten["fuzzy"]
+ gotten["untranslatedsourcewords"] = gotten["totalsourcewords"] - gotten["translatedsourcewords"] - gotten["fuzzysourcewords"]
+
+ wanted = ["translated", "fuzzy", "untranslated"]
+ for key in wanted:
+ percentkey = key + "percentage"
+ wordkey = key + "sourcewords"
+ gotten[percentkey] = gotten[wordkey]*100/max(gotten["totalsourcewords"], 1)
+
+ for key in gotten:
+ if key.find("check-") == 0:
+ value = gotten.pop(key)
+ gotten[key[len("check-"):]] = value
+
+ return gotten
+
+ def getsearchfields(self):
+ tmpfields = [{"name": "source",
+ "text": self.localize("Source Text"),
+ "value": self.argdict.get("source", 0),
+ "checked": self.argdict.get("source", 0) == "1" and "checked" or None},
+ {"name": "target",
+ "text": self.localize("Target Text"),
+ "value": self.argdict.get("target", 0),
+ "checked": self.argdict.get("target", 0) == "1" and "checked" or None},
+ {"name": "notes",
+ "text": self.localize("Comments"),
+ "value": self.argdict.get("notes", 0),
+ "checked": self.argdict.get("notes", 0) == "1" and "checked" or None},
+ {"name": "locations",
+ "text": self.localize("Locations"),
+ "value": self.argdict.get("locations", 0),
+ "checked": self.argdict.get("locations", 0) == "1" and "checked" or None}]
+
+ selection = [bool(field["checked"]) for field in tmpfields]
+ if selection == [True, True, False, False]:
+ # use only the default css class for the search form
+ self.extra_class = False
+ elif selection == [False, False, False, False]:
+ # no search field selected - we use the default instead
+ tmpfields[0]["checked"] = "checked"
+ tmpfields[1]["checked"] = "checked"
+ self.extra_class = False
+ else:
+ # add an extra css class to the search form
+ self.extra_class = True
+
+ return tmpfields
+
diff --git a/Pootle-1.2.1/Pootle/po/pootle/af/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/af/jToolkit.po
new file mode 100644
index 0000000..bce520c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/af/jToolkit.po
@@ -0,0 +1,145 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-05-04 19:54+0200\n"
+"Last-Translator: F Wolff <friedel@translate.org.za>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.0rc1\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Meld aan vir %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Kanselleer hierdie aksie en begin 'n nuwe sessie"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Meld af en begin op nuut eerder as om hierdie aksie te bevestig."
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Verlaat toepassing"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Verlaat hierdie toepassing en gaan terug na die ouertoepassing"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", bevestig asb. aanmeldinligting"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Meld aan"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Gebruikersnaam:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Wagwoord:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Taal:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Kies toepassing"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Meld af"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Verlaat"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "aangemeld as <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "kon nie nuwe sessie byvoeg nie"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "afgemeld"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "gekonnekteer"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "het ouertoepassing verlaat"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "u moet die gebruikers- of gebruikersvoorkeure-opsie in die bediener-konfigurasie instel"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "gebruiker bestaan nie (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ongeldige gebruikersnaam en/of wagwoord"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "bevestiging van aanmelding het misluk"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nee"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ja"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "verwyder"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(geen aanhangsel)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "aanhangsel is te groot"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "verwyder hierdie aanhangsel"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "herstel"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "Hierdie aanhangsel is verwyder. Kliek hier om dit te herstel."
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "heg 'n lêer aan"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr ""
+#~ "gebruiker se inskrywing moet gedefineer word in die bedieneropstelling"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/af/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/af/pootle.po
new file mode 100644
index 0000000..beeff5a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/af/pootle.po
@@ -0,0 +1,1549 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-01 12:53+0000\n"
+"Last-Translator: F Wolff <friedel@translate.org.za>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle-demonstrasie"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Tuisblad"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Gebruikers"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Tale"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekte"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Algemene keuses"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Keuses"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Huidige waarde"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Stoor veranderinge"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titel"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Beskrywing"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Basis-URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Tuisblad"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle Taaladministrasie-blad"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Hoof-adminblad"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO-kode"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Volle naam"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(voeg taal hier by)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Spes. karakters"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(spesiale karakters)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Aantal meervoude"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(aantal meervoude)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Meervoudvergelyking"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(meervoudvergelyking)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Verwyder taal"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Vee %s uit"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standaard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle projek-administrasieblad"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projekkode"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(voeg projek hier by)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projekbeskrywing"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(projekbeskrywing)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Toetserstyl"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Lêertipe"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Skep MO-lêers"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Verwyder projek"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle-gebruiker admin-blad"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Gebruikersnaam"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(voeg volle naam hier by)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "E-posadres"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(voeg e-pos hier by)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Wagwoord"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(voeg wagwoord hier by)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Geaktiveer"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktiveer nuwe gebruiker"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Verwyder gebruiker"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Terug na hoofblad"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Bestaande tale"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Dateer tale op"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle-admin: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "U het nie administrasieregte vir hierdie projek nie."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Dateer op vanaf sjablone"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Voeg taal by"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle admin: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Projektuisblad"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Kan nie regte verstel vir gebruikersnaam %s nie - gebruiker bestaan nie"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Hierdie is 'n GNU-styl projek (een gids waarin die lêers volgens taal genoem "
+"word)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Hierdie is 'n standaardstyl projek (een gids per taal)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Gebruikersregte"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(kies om gebruiker by te voeg)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Regte"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Haal uit"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Dateer regte op"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Aangaande Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> is 'n eenvoudige webportaal wat mens toelaat om te "
+"<strong>vertaal</strong>! Aangesien Pootle <strong>vrye sagteware</strong> "
+"is, kan mens dit aflaai en 'n eie kopie loop as mens wil. U kan ook hand "
+"bysit met die ontwikkeling op verskillende maniere (u hoef nie noodwendig "
+"eers te kan programeer nie)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Die Pootle-projek word gehuisves by <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> waar "
+"detail oor die bronkode, poslyste, ens. gekry kan word."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Die naam staan vir <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, maar u moet dalk <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">hierdie</a> lees."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Weergawes"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Hierdie werf loop:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Gebruikersblad vir: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Verander keuses"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Adminblad"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administreer"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Snelskakels"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Kliek asb. op 'Verander keuses' en kies u tale en projekte"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projek, gemiddeld %d%% vertaal"
+msgstr[1] "%d projekte, gemiddeld %d%% vertaal"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Taalkode"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Taalnaam"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d taal, gemiddeld %d%% vertaal"
+msgstr[1] "%d tale, gemiddeld %d%% vertaal"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Taal"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: projek %s, taal %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Soek"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Gevorderde soektog"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Kan nie lêer oplaai nie, geen lêer aangeheg nie."
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Kan slegs PO-lêers en ZIP's van PO-lêers oplaai."
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Ken stringe toe"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Ken aksie toe"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Ken toe aan gebruiker"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "doelwitte"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Tik die doelwit se naam in"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Voeg doelwit by"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Laai lêer op"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Kies lêer om op te laai"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Oorskryf"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Oorskryf die huidige lêer as dit bestaan"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Voeg saam"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Maak 'n samevoeging van die lêer met die huidige lêer en verander konflikte "
+"na voorstelle"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Nie in 'n doelwit nie"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Voeg gebruiker by"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO-lêer"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF-lêer"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts-lêer"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV-lêer"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO-lêer"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Dateer op"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Stuur weergawe in"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Alle stringe"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Onvertaald"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Nie toegeken nie"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Nie toegeken nie en onvertaald"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Stel doelwit"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Kies verskeie"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Ken toe aan"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Wys redigeerfunksies"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Wys statistiek"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Wys naspeursels"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Versteek naspeursels"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Wys toetse"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Versteek toetse"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Wys doelwitte"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Versteek doelwitte"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Wys toekennings"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Versteek toekennings"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Alle doelwitte: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Vertaal my stringe"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Bekyk my stringe"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Geen stringe aan u toegeken nie"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Snel-vertaal my stringe"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Geen onvertaalde stringe aan u toegeken nie"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Gaan voorstelle na"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Wys voorstelle"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Snel-vertaal"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Wys onvertaalde"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Geen onvertaalde items"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Vertaal alles"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP van doelwit"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP van gids"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Genereer SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d string (%d%%) het misluk"
+msgstr[1] "%d stringe (%d%%) het misluk"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d woorde (%d%%) toegeken"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d stringe]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d woorde (%d%%) vertaal"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Alle projekte"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Alle tale"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "My rekening"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumentasie & hulp"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Meld af"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Meld aan"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registreer"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktiveer"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle-embleem"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Aangaande hierdie Pootle-bediener"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Alle doelwitte"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d lêers"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d lêer"
+msgstr[1] "%d lêers"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d stringe"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Naam"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Vertaal"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Vertaalpersentasie"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Vertaalde woorde"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Wasig"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Wasigpersentasie"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Wasige woorde"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Onvertaalde persentasie"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Onvertaalde woorde"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Totaal"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Totale woorde"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafiek"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Bronteks"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Teikenteks"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Kommentaar"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Liggings"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Aanmeld gefaal"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Gaan nou aanstuur vir aanmelding..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Moet aanteken vir toegang tot tuisblad"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Persoonlike detail opgedateer"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Moet aanteken vir toegang tot adminblad"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Gaan nou aanstuur na tuisblad..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "U het nie administrasieregte vir pootle nie."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Bekyk"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Stel voor"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Vertaal"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Sien na"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Argiveer"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Bou PO-lêers"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Ken toe"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "U kan nie die \"nobody\"- of \"default\"-gebruiker verwyder nie."
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "U het nie regte om doelwitte hier te wysig nie."
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "U het nie regte om lêers hier op te laai nie."
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "U het nie regte om lêers hier te oorskryf nie."
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "U het nie regte om nuwe lêers hier op te laai nie."
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "U het nie regte om lêers hier op te dateer nie."
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "U het nie regte om lêerweergawes hier in te stuur nie."
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "U het nie die regte om toekennings hier te verander nie."
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "U het nie die regte om vertalings hier te verander nie."
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "U het nie die regte om veranderings hier voor te stel nie."
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "U het nie die regte om voorstelle hier na te gaan nie."
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d vertaal\n"
+"(%d onvertaald, %d wasig)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: vertaal %s in %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Oorspronklike"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Vertaling"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Aanvaar voorstel"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Verwerp voorstel"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Vertaler se kommentaar"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Programmeerder se kommentaar"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Verwant"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Besig..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Fout: Probleem tydens AJAX-verwerking."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Einde van bondel"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Kliek hier om terug te keer na indeks"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Begin"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Vorige %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Items %d tot %d van %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Volgende %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Einde"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "gaan tans %s na"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Daar is geen items wat met u soeknavraag ('%s') ooreenstem nie"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "U het klaar deur die items wat u gekies het, gegaan"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Enkelvoud"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Meervoud"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Redigeer"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopieer"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Slaan oor"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Terug"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Dien in"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Verleng"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Verkort"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Meervoudsvorm %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Vertaling onmoontlik omdat meervoudinligting vir u taal nie beskikbaar is "
+"nie. Kontak asseblief die werfadministrateur."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Huidige vertaling:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Voorstel %d deur %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Voorstel %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Voorstel deur %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Voorstel:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "U moet 'n wagwoord van minstens %d karakters voorsien."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Die wagwoord stem nie ooreen met die bevestiging nie."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Meld aan by Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Gebruikernaam:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Wagwoord:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Taal:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Meld aan"
+
+#: users.py:77
+msgid "Default"
+msgstr "Verstek"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Tik asb. u registrasie-inligting in"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle-registrasie"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "U aangevraagde wagwoord"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "U moet 'n geldige e-posadres verskaf"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "U volledige naam"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "U verkose wagwoord"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Bevestig wagwoord"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Tik u wagwoord weer om te verseker dat dit reg is"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registreer rekening"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Tik asb. u aktiveringsinligting in"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle-rekeningaktivering"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktiveringskode"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Die aktiveringskode wat u ontvang het"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktiveer rekening"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Keuses vir: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Persoonlike detail"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-pos"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Opstelling van vertaalkoppelvlak"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Taal vir gebruikerkoppelvlak"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "My projekte"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "My tale"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Tuisblad"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternatiewe brontaal"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Geen"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Invoerhoogte (in lyne)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Aantal rye in bekyk-modus"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Aantal rye in vertaal-modus"
+
+#: users.py:307
+msgid "Error"
+msgstr "Fout"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "U moet die werfadministrateur wees om gebruikers te kan verander."
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Gebruikernaam moet alfanumeries wees en moet met 'n alfabetletter begin."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "U (of iemand anders) het probeer om 'n rekening met u gebruikernaam te "
+"registreer.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Ons stoor nie u werklike wagwoord nie, maar slegs 'n hutsvorm daarvan.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Indien u 'n probleem ondervind met registrasie, kontak asseblief %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Indien u 'n probleem ondervind met registrasie, kontak asseblief die "
+"werfadministrateur.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Daardie gebruikernaam bestaan reeds. 'n E-pos sal gestuur word aan die "
+"geregestreerde e-posadres.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Gaan nou voortgaan na <a href='%s'>aanmelding</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "'n Pootle-rekening is vir u geskep met hierdie e-posadres.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Om u rekening te aktiveer, gebruik hierdie skakel:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"U aktiveringskode is:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Indien u nie die skakel kan gebruik nie, gebruik die bogenoemde "
+"aktiveringskode op die aktiveringsblad.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Hierdie boodskap is gestuur om te kontroleer dat die e-posadres inderdaad "
+"korrek is. Indien u nie 'n rekening wou registreer nie, ignoreer bloot "
+"hierdie boodskap.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Rekening geskep. 'n E-pos met aanmelddetail en 'n aktiveringskode sal aan u "
+"gestuur word. Voer asseblief u aktiveringskode in by die <a "
+"href='%s'>aktiveringsblad</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Of klik bloot op die aktiveringskakel in die e-pos)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "U gebruikernaam is: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "U wagwoord is: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "U geregistreerde e-posadres is: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Gaan nou aanstuur na registrasieblad..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Gaan nou aanstuur na aanmeldblad..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "U rekening is geaktiveer! Gaan nou aanstuur vir aanmelding..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Die aktiveringsdetail was nie geldig nie."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivering het misluk"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Invoerhoogte moet numeries wees"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Invoerwydte moet numeries wees"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Aantal rye in bekykmodus moet numeries wees"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Aantal rye in vertaalmodus moet numeries wees"
+
+#~ msgid "Accept"
+#~ msgstr "Aanvaar"
+
+#~ msgid "Reject"
+#~ msgstr "Verwerp"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge-vertaalprojek"
+
+#~ msgid "Broaden"
+#~ msgstr "Verbreed"
+
+#~ msgid "Narrow"
+#~ msgstr "Vernou"
+
+#~ msgid "Reset"
+#~ msgstr "Herstel"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Moet 'n geldige e-posadres wees"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Invoerwydte (in karakters)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> is 'n eenvoudige web-portaal wat u toelaat om te "
+#~ "<strong>vertaal</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "ouer-vouer"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projekte</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d lêers, %d/%d stringe (%d%%) reeds vertaal"
+
+#~ msgid "%s language"
+#~ msgstr "%s taal"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "hierdie is 'n demonstrasie-installasie van pootle"
+
+#~ msgid "current folder"
+#~ msgstr "huidige lêer"
+
+#~ msgid "Log In"
+#~ msgstr "Teken in"
+
+#~ msgid "login status"
+#~ msgstr "intekenings-status"
+
+#~ msgid "project root"
+#~ msgstr "projek-basis"
+
+#~ msgid "%s project"
+#~ msgstr "%s projek"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "u het nie regte om hier voorstelle te verskaf nie"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "u het nie regte om hier te vertaal nie"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d stringe (%d%%) reeds vertaal"
+
+#~ msgid "%d files, "
+#~ msgstr "%d lêers,"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Tale</h3>"
+
+#~ msgid "current file"
+#~ msgstr "huidige lêer"
+
+#~ msgid "not logged in"
+#~ msgstr "nie tans ingeteken nie"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pootle Administrasieblad"
+
+#~ msgid "(checker style)"
+#~ msgstr "(toetser-styl)"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Jy het nie die regte toegang om Pootle te administreer nie."
+
+#~ msgid "%d strings (%d%%) assigned"
+#~ msgstr "%d stringe (%d%%) toegeken"
+
+#~ msgid "suggest"
+#~ msgstr "stel voor"
+
+#~ msgid "Input Width"
+#~ msgstr "Invoerwydte"
+
+#~ msgid "skip"
+#~ msgstr "slaan oor"
+
+#~ msgid "Log Out"
+#~ msgstr "Teken uit"
+
+#~ msgid "<b>Current Translation:</b>"
+#~ msgstr "<b>Huidige vertaling:</b>"
+
+#~ msgid "General Options"
+#~ msgstr "Algemene opsies"
+
+#~ msgid "Main Admin page"
+#~ msgstr "Hoof Admin-blad"
+
+#~ msgid "Remove language"
+#~ msgstr "Vee taal uit"
+
+#~ msgid "Remove project"
+#~ msgstr "Vee projek uit"
+
+#~ msgid "No goal"
+#~ msgstr "Geen doelwit"
+
+#~ msgid "Docs & Help"
+#~ msgstr "Dokumente & hulp"
+
+#~ msgid "translation"
+#~ msgstr "vertaling"
+
+#~ msgid ""
+#~ "This site is running:<br/>Pootle %s</br>jToolkit %s</br>Python %s (on %s/%"
+#~ "s)"
+#~ msgstr ""
+#~ "Hierdie webwerf loop:<br/>Pootle %s</br>jToolkit %s</br>Python %s (op %s/%"
+#~ "s)"
+
+#~ msgid "All Projects"
+#~ msgstr "Alle projekte"
+
+#~ msgid "All Languages"
+#~ msgstr "Alle tale"
+
+#~ msgid "copy"
+#~ msgstr "kopieer"
+
+#~ msgid "submit"
+#~ msgstr "dien in"
+
+#~ msgid "accept"
+#~ msgstr "aanvaar"
+
+#~ msgid "reject"
+#~ msgstr "verwerp"
+
+#~ msgid "Input Height"
+#~ msgstr "Invoerhoogte"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ak/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ak/jToolkit.po
new file mode 100644
index 0000000..f3a6c32
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ak/jToolkit.po
@@ -0,0 +1,141 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2005-04-15 03:36-0500\n"
+"Last-Translator: Paa Kwesi Imbeah <imbeah@ghanathink.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Bue na kÉ” %s mu"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Twa adeyɛɛ yi mu na hyɛ fofor ase"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Ma entim adeyɛɛ yi do; pue fi mu na hyɛ ase bio"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Pon"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Pon na kÉ” panin de no"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", tim wo agodin ae"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Bue kÉ” mu"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Agodin:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Ehintasɛmfua:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Kasa:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Pa"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Pue"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Pon"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "aba mu dÉ› <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "entum amfa adeyɛe fofor anka ho"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "epue efi mu"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "atÉ” mu"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "aponn edwuma panin no"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "ohia dÉ› ebÉ› kyerÉ› users anaa userprefs wÉ” server config"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "obiara nni hɔ a wɔfrɛ no dɛm (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "eti agodin no anaa ehintasɛmfua anaa ebien no nyina"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "bue-mu-kÉ” ntimdo no anyÉ› yie"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Daabi"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Yiw"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "yi"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(mbataho no anyÉ› yie)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "mbataho yi so dodo"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "yi mbataho yi"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "san fabata ho"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "eyi dɛm mbataho yi. mia ha na san fabata ho"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "fa kyerɛwee bata ho"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ak/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ak/pootle.po
new file mode 100644
index 0000000..b1eaf0f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ak/pootle.po
@@ -0,0 +1,1459 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-12 23:54+0000\n"
+"Last-Translator: Jojoo Imbeah <jojoo.imbeah@suuch.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Mfatoho"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Fie"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Kasa"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Nkɔsodwuma"
+
+#: adminpages.py:49
+#, fuzzy
+msgid "General options"
+msgstr "Nea EpÉ›"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Kwan"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Sesei de"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Tim nsesa nyina"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+# thinking of a way to translate page
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Fie Krataafa"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+#, fuzzy
+msgid "Main admin page"
+msgstr "Nsesa fa"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO Kood"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Wodin Nyinara"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(fa kasa ka ho wÉ” ha)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Ɔdodow Nɔmba"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(ɔdodow nɔmba)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+#, fuzzy
+msgid "Remove Language"
+msgstr "Yi dɛm kasa yi"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Yi %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Nkɔsodwuma Kood"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(fa nkɔsodwuma yi ka ho wɔ ha)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Nkɔsodwuma Nkyerɛmu"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(nkɔsodwuma nkyerɛmu)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Checker Style"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+#, fuzzy
+msgid "Remove Project"
+msgstr "Yi nkɔsodwuma yi fi mu"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Agodin"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Emel"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(kyerɛw wo emel wɔ ha)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Ehintasɛmfua"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+#, fuzzy
+msgid "Activated"
+msgstr "Nyan"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+#, fuzzy
+msgid "Remove User"
+msgstr "Yi %s"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+#, fuzzy
+msgid "Pootle Admin: %s"
+msgstr "Pootle nsesa fa"
+
+#: adminpages.py:285 adminpages.py:356
+#, fuzzy
+msgid "You do not have the rights to administer this project."
+msgstr "Enyi tumi dÉ› ebÉ› sesa pootle."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+#, fuzzy
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle nsesa fa"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Ɔfa Pootle ho"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootel</strong> yɛ intanɛt adeyɛbea a ɔtum boa wo ma <strong>ekyerɛ "
+"nkasafuwa ase</strong>!Ɔnam sɛ Pootle yɛ <strong>Adeyɛde ɔyɛ Kwa</strong> "
+"nti no, ebotum atwe esian na ede ayÉ› wo edwuma biara a epÉ›. Ebotum so aboa "
+"ne mpontu wɔ akwan pii mu (onhia dɛ ebohu kɔmputa kasa ne nkyerɛwee)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle ne nkɔsodwuma no ankasa de ɔwɔ <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> HÉ” na "
+"ebenya nkɔsodwuma no ho kɔmputa kasa-nkyerɛwee, dawurbɔ, etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Din no kyerɛ--wɔ borɔfo mu--<b>PO</b>-based <b>O</b>nline <b>T</b>ranslation "
+"/ <b>L</b>ocalization <b>E</b>ngine, anhwÉ› a <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">eyi</a> so bÉ” boa."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Agodini Fa: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Sesa nea epÉ›"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Nsesa fa"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Ntɛmtɛmara"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Mia 'Sesa nea epɛ' na fa kasahorow na nkɔsodwuma biara epɛ"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+#, fuzzy
+msgid "%s: %s"
+msgstr "%s(%s)"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+#, fuzzy
+msgid "Language Code"
+msgstr "Kasa"
+
+#: indexpage.py:222
+#, fuzzy
+msgid "Language Name"
+msgstr "Kasa"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "Kasa"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "HwehwÉ›"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Ma hɔn nkasamu"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Fa Adeyɛe Bata Ho"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Fa ma Ɔdehye"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Kyerɛw so"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO fael"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV fael"
+
+#: indexpage.py:748
+#, fuzzy
+msgid "MO file"
+msgstr "PO fael"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+#, fuzzy
+msgid "Untranslated"
+msgstr "KyerÉ› Ni Nyinaa Ase"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "KyerÉ› nea ehia YieyÉ›"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Suma nea ehia YieyÉ›"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "KyerÉ› Mfa-ma"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Suma Mfa-ma"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "San HwÉ› Nsusui"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "HwÉ› Nsusui"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Kyerɛ Ase Ntɛmara"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Hwɛ Nea Ehia Nkyerɛase"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "KyerÉ› Ni Nyinaa Ase"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+#, fuzzy
+msgid "ZIP of folder"
+msgstr "folder ne zip"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+#, fuzzy
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d nkasamu (%d%%) anyÉ› yie"
+
+#: indexpage.py:1003
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d nkasamu (%d%%) ne nkyerɛase di mu"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d nkasamu (%d%%) ne nkyerɛase di mu"
+
+#: pagelayout.py:28
+#, fuzzy
+msgid "All projects"
+msgstr "%s nkɔsodwuma"
+
+#: pagelayout.py:29
+#, fuzzy
+msgid "All languages"
+msgstr "%s kasa"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+#, fuzzy
+msgid "Docs & help"
+msgstr "Nkrataa / Mboa"
+
+#: pagelayout.py:34
+#, fuzzy
+msgid "Log out"
+msgstr "Pue"
+
+#: pagelayout.py:35
+#, fuzzy
+msgid "Log in"
+msgstr "KÉ” Mu"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Dintwerɛw"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Nyan"
+
+#: pagelayout.py:83
+#, fuzzy
+msgid "Pootle Logo"
+msgstr "Pootle Mfatoho"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Ɔfa dɛm Pootle server yi ho"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "KyerÉ› Ni Nyinaa Ase"
+
+#: pagelayout.py:244
+#, fuzzy
+msgid "Translated percentage"
+msgstr "Hwɛ Nea Ehia Nkyerɛase"
+
+#: pagelayout.py:245
+#, fuzzy
+msgid "Translated words"
+msgstr "KyerÉ› Ni Nyinaa Ase"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "YÉ› Naa"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+#, fuzzy
+msgid "Untranslated percentage"
+msgstr "Hwɛ Nea Ehia Nkyerɛase"
+
+#: pagelayout.py:251
+#, fuzzy
+msgid "Untranslated words"
+msgstr "Hwɛ Nea Ehia Nkyerɛase"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Enyi tumi dÉ› ebÉ› sesa pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "HwÉ›"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Susu"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "KyerÉ› ase"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "HwÉ› mu"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Fa sie"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kɔmpael PO faels"
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Worenntumi nnyi obiara ne gyinabew ne \"nobody\" anaaso \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Worenntumi nnsesa botae biara wÉ” ha"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Worenntumi mmfa faels nnto ha"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "Wonni kwan sÉ› wobesusu nsesa wÉ” ha"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Worenntumi mmfa faels foforo nnto ha"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Wonni kwan sɛ wobɛsesa sɛdeɛ faels te wɔ ha"
+
+#: projects.py:555
+#, fuzzy
+msgid "You do not have rights to commit files here"
+msgstr "Wonni kwan sÉ› wobesusu nsesa wÉ” ha"
+
+#: projects.py:977 projects.py:1019
+#, fuzzy
+msgid "You do not have rights to alter assignments here"
+msgstr "Worenntumi nnsesa botae biara wÉ” ha"
+
+#: projects.py:1219
+#, fuzzy
+msgid "You do not have rights to change translations here"
+msgstr "Wonni kwan sɛ wobesesa nkyerɛase wɔ ha"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Wonni kwan sɛ wobɛkyerɛ w'adwen wɔ nsesae biara ho wɔ ha"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Wonni kwan sɛ wobɛsesa adwenkyerɛ biara wɔ ha"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d a ne nkyerɛase ewie\n"
+"(%d enwiei, %d yÉ› naa)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "Pootle: worekyerÉ› %s ase sÉ› %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+#, fuzzy
+msgid "Original"
+msgstr "Odikamfo"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+#, fuzzy
+msgid "Translation"
+msgstr "KyerÉ› Ni Nyinaa Ase"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Asekyerɛaseni adwenkyerɛ"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Kɔmputa kasakyerɛwni adwenkyerɛ"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+#, fuzzy
+msgid "End of batch"
+msgstr "Asekyerɛ wɔ krataafa yi so hɔn ewiei"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klik ha na san kÉ” indeks"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "HyÉ› Ase"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Nea Edi Ekyiri %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Ndeɛma %d kɔ si %d wɔ %d mu"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Nea Edi So %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Ewiei"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "rehwÉ› %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Biribiara nni hɔ a wɔne no yɛ pɛ ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Wo ewie sɛ worehwɛ ndeɛma a wopawee no"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Ankonam"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Ɔdodow"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Sesa"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "BÉ” Tra"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "KÉ” Ekyiri Baako"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Fa Ka Ho"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Buei kyerɛwbea no mu"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Mia kyerɛwbea no mu"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Ɔdodow Tebea %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Asekyerɛase no renntumi mmba so efiri sɛ wo nnkyerɛɛ wo kasa ne ɔdodow ho "
+"nsɛm mu yie. Mepa wo kyɛw bisa wo saet hwɛdofo."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Ma Ɔkyerɛ Seisei:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Nsusui a %d ɔfi %s hɔ:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Nsusui %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Nsusui a ɔfi %s hɔ:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Nsusui:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "KÉ” Pootle mu"
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "Agodin"
+
+#: users.py:68
+#, fuzzy
+msgid "Password:"
+msgstr "Ehintasɛmfua"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "Kasa"
+
+#: users.py:71
+#, fuzzy
+msgid "Login"
+msgstr "KÉ” Mu"
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Kyerɛ wo dintwerɛw de nyinaa"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle Dintwerɛw"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Agodin a ebisae"
+
+#: users.py:125 users.py:429
+#, fuzzy
+msgid "You must supply a valid email address"
+msgstr "Ɔyɛ dɛ ɔyɛ emel papa"
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Ehintasɛmfua a epɛ"
+
+#: users.py:133 users.py:189
+#, fuzzy
+msgid "Confirm password"
+msgstr "Ehintasɛmfua a epɛ"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+#, fuzzy
+msgid "Register Account"
+msgstr "Kenyan Wo Dintwerɛw"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "KyerÉ› wo nkeyane de ae"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle Dintwerɛw Nkenyane"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Nkenyane Kood"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Nkenyane kood a wonsa kae"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Kenyan Wo Dintwerɛw"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Agodini apɛde: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Me Nkɔsodwuma"
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "Kasa"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Fie"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Ma wo din a wode ba ha no nyɛ nɔmbas ne nkasafua a wɔakeka abɔ mu, na ɛwɔ sɛ "
+"kasafua di wo din no enim."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+#, fuzzy
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "Nkenyane Kood"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+#, fuzzy
+msgid "Your password is: %s\n"
+msgstr "Ehintasɛmfua a epɛ"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+#, fuzzy
+msgid "Activation Failed"
+msgstr "Nkenyane Kood"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Gye to mu"
+
+#, fuzzy
+#~ msgid "Reject"
+#~ msgstr "Yi nkɔsodwuma yi fi mu"
+
+#, fuzzy
+#~ msgid "WordForge Translation Project"
+#~ msgstr "<b>Ma Ɔkyerɛ Seisei:</b>"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Ɔyɛ dɛ ɔyɛ emel papa"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootel"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%s files, %d/%d nkasamu(%d%%) a woakyerɛase"
+
+#~ msgid "project root"
+#~ msgstr "nkɔsodwuma fie"
+
+#~ msgid "current folder"
+#~ msgstr "seisei folder"
+
+#~ msgid "parent folder"
+#~ msgstr "folder ne maame"
+
+#~ msgid "%d files, "
+#~ msgstr "%d mfael, "
+
+#~ msgid "%d strings (%d%%) assigned"
+#~ msgstr "%d nkasamu (%d%%) ayÉ› yie"
+
+#~ msgid "not logged in"
+#~ msgstr "enkÉ” mu"
+
+#~ msgid "current file"
+#~ msgstr "fael a wowÉ” mu seisei"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/am/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/am/jToolkit.po
new file mode 100644
index 0000000..1e379c1
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/am/jToolkit.po
@@ -0,0 +1,141 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2005-03-01 19:15\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ይህ ድርጊት ይሰረá‹áŠ“ አዲስ ተáŒá‰£áˆ­ ይጀመር"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr ""
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "የተጠቃሚ ስáˆ"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "ሚስጥር ቃáˆ"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "ቋንቋ"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr ""
+
+#: web/server.py:637
+msgid "Logout"
+msgstr ""
+
+#: web/server.py:639
+msgid "Exit"
+msgstr ""
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "አዲስ ተáŒá‰£áˆ­ መጨመር አáˆá‰°á‰»áˆˆáˆ"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+msgid "connected"
+msgstr "ተገናáŠá‰·áˆ"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "ተጠቃሚ አáˆá‰°áŒˆáŠ˜áˆ (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "አይ"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "አዎ"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "á‹­áŠáˆ³"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "áˆáŠ•áˆ አባሪ የለáˆ"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "አባሪዠከመጠን በላይ áŠá‹"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ይህ አባሪ á‹­áŠáˆ³"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "ይመለስ"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ይህ አባሪ ተáŠáˆµá‰·áˆá¢ ለመመለስ ይህንን ይጫኗáˆ"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ሰáŠá‹µ አባሪ á‹­áˆáŠ•"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/am/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/am/pootle.po
new file mode 100644
index 0000000..b791813
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/am/pootle.po
@@ -0,0 +1,1512 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: pootle\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-04-20 03:33+0100\n"
+"Last-Translator: tegegne tefera <tefera@mekuria.com>\n"
+"Language-Team: Amharic\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"X-Generator: Translate Toolkit 1.0beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "á‘ትሠመለማመጃ"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "ቤት"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "ተጠቃሚዎች"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "ቋንቋዎች"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "á•áˆ®áŒ€áŠ­á‰¶á‰½"
+
+#: adminpages.py:49
+#, fuzzy
+msgid "General options"
+msgstr "የመጫኛ áˆáˆ­áŒ«á‹Žá‰½"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "áˆáˆ­áŒ«"
+
+#: adminpages.py:51 users.py:183
+#, fuzzy
+msgid "Current value"
+msgstr "á‹á‰…ታዊ ከባቢ (%s)"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "ለá‹áŒ¦á‰½áŠ• አስቀáˆáŒ¥"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "ርዕስ"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "መáŒáˆˆáŒ«"
+
+#: adminpages.py:58
+#, fuzzy
+msgid "Base URL"
+msgstr "መሠረታዊ ዱካ:"
+
+#: adminpages.py:59
+#, fuzzy
+msgid "Home Page"
+msgstr "መስመር በገጽ"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+#, fuzzy
+msgid "Main admin page"
+msgstr "መስመር በገጽ"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO ኮድ"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "ሙሉ ስáˆ"
+
+#: adminpages.py:94
+#, fuzzy
+msgid "(add language here)"
+msgstr "(ቀዳሚ ቋንቋን ተጠቀáˆ)"
+
+#: adminpages.py:95
+#, fuzzy
+msgid "Special Chars"
+msgstr "áŠá‹°áˆ በመስመርá¦"
+
+#: adminpages.py:95
+#, fuzzy
+msgid "(special characters)"
+msgstr "የáŠáˆ²á‰¥ áŠá‹°áˆ አስገባ"
+
+#: adminpages.py:96 indexpage.py:224
+#, fuzzy
+msgid "Number of Plurals"
+msgstr "ይመስመር á‰áŒ¥áˆ­ _L"
+
+#: adminpages.py:96
+#, fuzzy
+msgid "(number of plurals)"
+msgstr "ይመስመር á‰áŒ¥áˆ­ _L"
+
+#: adminpages.py:97 indexpage.py:225
+#, fuzzy
+msgid "Plural Equation"
+msgstr "ብዙ-ቤትá¦"
+
+#: adminpages.py:97
+#, fuzzy
+msgid "(plural equation)"
+msgstr "ብዙ-ቤትá¦"
+
+#: adminpages.py:98
+#, fuzzy
+msgid "Remove Language"
+msgstr "%s ቋንቋ"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "ሰርዠ%s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "ቀዳሚ"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+#, fuzzy
+msgid "Project Code"
+msgstr "የኮድስáˆ_sá¦"
+
+#: adminpages.py:153
+#, fuzzy
+msgid "(add project here)"
+msgstr "አዲስ ዕቃ ጨáˆáˆ­"
+
+#: adminpages.py:154
+#, fuzzy
+msgid "Project Description"
+msgstr "መርሃ-áŒá‰¥áˆ­ ሰርá‹"
+
+#: adminpages.py:154
+#, fuzzy
+msgid "(project description)"
+msgstr "መርሃ-áŒá‰¥áˆ­ ሰርá‹"
+
+#: adminpages.py:155
+#, fuzzy
+msgid "Checker Style"
+msgstr "የትዕዛዠማስጫ ስታይáˆ"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "የá‹á‹­áˆ á‹“á‹­áŠá‰µ"
+
+#: adminpages.py:157
+#, fuzzy
+msgid "Create MO Files"
+msgstr "የትርጉሠá‹á‹­áˆŽá‰½ (*.po;*.mo)|*.po;*.mo"
+
+#: adminpages.py:158
+#, fuzzy
+msgid "Remove Project"
+msgstr "መርሃ-áŒá‰¥áˆ­ ሰርá‹"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "የተጠቃሚ ስáˆ"
+
+#: adminpages.py:219 users.py:403
+#, fuzzy
+msgid "(add full name here)"
+msgstr "የአዲሱ ተጠቃሚ ሙሉ ስáˆá¦"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "ኤ-መáˆá‹•áŠ­á‰µ አድራሻ"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(ኤ-መáˆá‹•áŠ­á‰µ አድራሻ እዚህ ይጨáˆáˆ©)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "ማለáŠá‹« ቃáˆ"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(ማለáŠá‹« ቃáˆáŠ• እዚህ ይጨáˆáˆ©)"
+
+#: adminpages.py:222
+#, fuzzy
+msgid "Activated"
+msgstr "ያሉ የይዘት áŒáˆ©á–ች á‹­áŠáˆ³áˆ±?"
+
+#: adminpages.py:222
+#, fuzzy
+msgid "Activate New User"
+msgstr "የአዲሱ ተጠቃሚ ሙሉ ስáˆá¦"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "ተጠቃሚን ሰርá‹"
+
+#: adminpages.py:278
+#, fuzzy
+msgid "Back to main page"
+msgstr "ወደ áˆáŠ“ሌዠወደኋላ áˆáˆ‚ድ?"
+
+#: adminpages.py:279
+#, fuzzy
+msgid "Existing languages"
+msgstr "የኔ ቋንቋዎች"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "ቋንቋዎችን አሻሽáˆ"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+#, fuzzy
+msgid "You do not have the rights to administer this project."
+msgstr ""
+"በመርሃ-áŒá‰¥áˆ© á‹áˆµáŒ¥ ያሉ áˆáˆ‰áŠ•áˆ መá‹áŒˆá‰¦á‰½\n"
+"ለማሻሻሠእንደሚáˆáˆáŒ‰ ርáŒáŒ áŠ› áŠá‹Žá‰µ?"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+#, fuzzy
+msgid "Update from templates"
+msgstr "ከáˆáŠ•áŒ© አሻሽሠ&U"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "ቋንቋ ጨáˆáˆ­"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+#, fuzzy
+msgid "Project home page"
+msgstr "መስመር በገጽ"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "የተጠቃሚ áˆá‰ƒá‹¶á‰½"
+
+#: adminpages.py:377
+#, fuzzy
+msgid "(select to add user)"
+msgstr "በá‹áˆ­á‹áˆ© á‹áˆµáŒ¥ ዶሴ ጨáˆáˆ­"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "áˆá‰ƒá‹¶á‰½"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "ሰርá‹"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "áˆá‰ƒá‹¶á‰½áŠ• አሻሽáˆ"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "ስለ á‘ትለ"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "á‹áˆ­á‹«á‹Žá‰½"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+#, fuzzy
+msgid "User Page for: %s"
+msgstr "የአዲሱ ተጠቃሚ ሙሉ ስáˆá¦"
+
+#: indexpage.py:135
+#, fuzzy
+msgid "Change options"
+msgstr "የመጫኛ áˆáˆ­áŒ«á‹Žá‰½"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "የማስተዳደሪያ ገጽ"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "አስተዳድር"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+#, fuzzy
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "በራስ-ገዠየተተረጎሙ %u áˆáˆ¨áŒŽá‰½"
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "አስተዳዳሪ"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "የቋንቋ ኮድ"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "የቋንቋ ስáˆ"
+
+#: indexpage.py:260
+#, python-format
+#, fuzzy
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "በራስ-ገዠየተተረጎሙ %u áˆáˆ¨áŒŽá‰½"
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "%s ቋንቋ"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+#, fuzzy
+msgid "%s: Project %s, Language %s"
+msgstr "ቋንቋ መረጣ"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "áˆáˆáŒ"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+#, fuzzy
+msgid "Cannot upload file, no file attached"
+msgstr "áˆáŠ•áˆ የስር á‹á‹­áˆ ስርዓት አáˆá‰°á‹ˆáˆ°áŠáˆá¡á¡"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "áˆáˆ¨áŒŽá‰½áŠ• መድብ"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "ተáŒá‰£áˆ­áŠ• መድብ"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "ለተጠቃሚ መድብ"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "áŒá‰¦á‰½"
+
+#: indexpage.py:544
+#, fuzzy
+msgid "Enter goal name"
+msgstr "አዲሱን ስሠጻáá¦"
+
+#: indexpage.py:545
+#, fuzzy
+msgid "Add Goal"
+msgstr "á‹á‹­áˆŽá‰½áŠ• ጨáˆáˆ­"
+
+#: indexpage.py:550 indexpage.py:552
+#, fuzzy
+msgid "Upload File"
+msgstr "HTML á‹á‹­áˆ (*.html)|*.html"
+
+#: indexpage.py:551
+#, fuzzy
+msgid "Select file to upload"
+msgstr "ለማትሠá‹á‹­áˆ áˆáˆ¨áŒ¥"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "ተካ"
+
+#. l10n: tooltip
+#: indexpage.py:559
+#, fuzzy
+msgid "Overwrite the current file if it exists"
+msgstr "á‹á‹­áˆáŠ• ከሰረዙት ለዘላለሠይጠá‹áˆá¢"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "áŒáŒ áˆ"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+#, fuzzy
+msgid "Not in a goal"
+msgstr "አስተያየት á‹áˆµáŒ¥ አáŒáŠ"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "ተጠቃሚን ጨáˆáˆ­"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "á’ኦ ሰáŠá‹µ"
+
+#: indexpage.py:735
+#, fuzzy
+msgid "XLIFF file"
+msgstr "HTML á‹á‹­áˆ (*.html)|*.html"
+
+#: indexpage.py:739
+#, fuzzy
+msgid "Qt .ts file"
+msgstr "%s á‹á‹­áˆáŠ• የመክáˆá‰µ ስህተት"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "የሲቪኤስ ሰáŠá‹µ"
+
+#: indexpage.py:748
+#, fuzzy
+msgid "MO file"
+msgstr "á’ኦ ሰáŠá‹µ"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "አሻሽáˆ"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "ሰይáˆ"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "áˆáˆ‰áˆ áˆáˆ¨áŒŽá‰½"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "á‹«áˆá‰°á‰°áˆ¨áŒŽáˆ˜"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "á‹«áˆá‰°áˆ˜á‹°á‰ "
+
+#: indexpage.py:801
+#, fuzzy
+msgid "Unassigned and Untranslated"
+msgstr "አስቀáˆáŒ¥áŠ“ á‹áŒ‹ _e"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "áŒá‰¥ ሰይáˆ"
+
+#: indexpage.py:812
+#, fuzzy
+msgid "Select Multiple"
+msgstr "ዶሴ á‹­áˆáˆ¨áŒ¡"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "መድብ ለ"
+
+#: indexpage.py:843
+#, fuzzy
+msgid "Show Editing Functions"
+msgstr "የአስተያየት መስኮቱን አሳይ &c"
+
+#: indexpage.py:844
+#, fuzzy
+msgid "Show Statistics"
+msgstr "ተጠቃሽ-መረጃዎችን አሳይ &S"
+
+#: indexpage.py:845
+#, fuzzy
+msgid "Show Tracks"
+msgstr "ተጠቃሽ-መረጃዎችን አሳይ &S"
+
+#: indexpage.py:845
+#, fuzzy
+msgid "Hide Tracks"
+msgstr "መቆጣጠሪያዎችን ደብቅ"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+#, fuzzy
+msgid "Show Checks"
+msgstr "ተጠቃሽ-መረጃዎችን አሳይ &S"
+
+#: indexpage.py:847
+#, fuzzy
+msgid "Hide Checks"
+msgstr "መቆጣጠሪያዎችን ደብቅ"
+
+#: indexpage.py:848
+#, fuzzy
+msgid "Show Goals"
+msgstr "ተጠቃሽ-መረጃዎችን አሳይ &S"
+
+#: indexpage.py:848
+#, fuzzy
+msgid "Hide Goals"
+msgstr "መቆጣጠሪያዎችን ደብቅ"
+
+#: indexpage.py:849
+#, fuzzy
+msgid "Show Assigns"
+msgstr "ተጠቃሽ-መረጃዎችን አሳይ &S"
+
+#: indexpage.py:849
+#, fuzzy
+msgid "Hide Assigns"
+msgstr "መቆጣጠሪያዎችን ደብቅ"
+
+#: indexpage.py:858
+#, python-format
+#, fuzzy
+msgid "All Goals: %s"
+msgstr "áˆáˆ‰áˆ á‹á‹­áˆŽá‰½"
+
+#: indexpage.py:864
+#, fuzzy
+msgid "Translate My Strings"
+msgstr "በራስ-ገዠየተተረጎሙ %u áˆáˆ¨áŒŽá‰½"
+
+#: indexpage.py:866
+#, fuzzy
+msgid "View My Strings"
+msgstr "በራስ-ገዠየተተረጎሙ %u áˆáˆ¨áŒŽá‰½"
+
+#: indexpage.py:871
+#, fuzzy
+msgid "No strings assigned to you"
+msgstr "መቀጠሠይáˆáˆáŒ‹áˆ‰?"
+
+#: indexpage.py:875
+#, fuzzy
+msgid "Quick Translate My Strings"
+msgstr "በáˆáŠ•áŒ­ áˆáˆ¨áŒŽá‰½ á‹áˆµáŒ¥ áˆáˆáŒ"
+
+#: indexpage.py:879
+#, fuzzy
+msgid "No untranslated strings assigned to you"
+msgstr "መርሃ-áŒá‰¥áˆ©áŠ• መሰረዠይáˆáˆáŒ‹áˆ‰?"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "áˆáŠ­áˆ®á‰½áŠ• አርáˆ"
+
+#: indexpage.py:885
+#, fuzzy
+msgid "View Suggestions"
+msgstr "ሙሉ-ስክሪን ዕይታ &F"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "áˆáŒ£áŠ• ትርጉáˆ"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "á‹«áˆá‰°á‰°áˆ¨áŒŽáˆ˜ የለáˆ"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "áˆáˆ‰áŠ•áˆ ይተርጉሙ"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+#, fuzzy
+msgid "ZIP of folder"
+msgstr "አዲስ ዶሴ"
+
+#: indexpage.py:923
+#, fuzzy
+msgid "Generate SDF"
+msgstr "መረጃ-ባንክን አመንጭ"
+
+#: indexpage.py:976
+#, python-format
+#, fuzzy
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d áˆáˆ¨áŒŽá‰½ (%d%d) የተበላሸ áŠá‹"
+
+#: indexpage.py:1003
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) assigned"
+msgstr "ከáተኛ የጠበቃላት á‰áŒ¥áˆ­"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+#, fuzzy
+msgid "[%d/%d strings]"
+msgstr "አዲስ áˆáˆ¨áŒŽá‰½"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) translated"
+msgstr "በራስ-ገዠየተተረጎሙ %u áˆáˆ¨áŒŽá‰½"
+
+#: pagelayout.py:28
+#, fuzzy
+msgid "All projects"
+msgstr "áˆáˆ‰áˆ á‹á‹­áˆŽá‰½"
+
+#: pagelayout.py:29
+#, fuzzy
+msgid "All languages"
+msgstr "%s ቋንቋ"
+
+#: pagelayout.py:30
+#, fuzzy
+msgid "My account"
+msgstr "የኔ ቋንቋዎች"
+
+#: pagelayout.py:32
+#, fuzzy
+msgid "Docs & help"
+msgstr "/መመሪያ/ ስለ _A"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "ሎáŒá‹áŒ£"
+
+#: pagelayout.py:35
+#, fuzzy
+msgid "Log in"
+msgstr "በ VG ${VG}"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "ተመá‹áŒˆá‰¥"
+
+#: pagelayout.py:38
+#, fuzzy
+msgid "Activate"
+msgstr "ያሉ የይዘት áŒáˆ©á–ች á‹­áŠáˆ³áˆ±?"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "የá‘ትለ መለያ"
+
+#: pagelayout.py:84
+#, fuzzy
+msgid "About this Pootle server"
+msgstr "የSSH ተጠሪ መáŒá‰¢á‹« á‰áˆá አሻራᦠ{fingerprint}"
+
+#: pagelayout.py:160
+#, fuzzy
+msgid "All goals"
+msgstr "áˆáˆ‰áˆ á‹á‹­áˆŽá‰½"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d á‹á‹­áˆŽá‰½"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d áˆáˆ¨áŒŽá‰½"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "ስáˆ"
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "áˆáŒ£áŠ• ትርጉáˆ"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "የተተረጎመዠáርሰንት"
+
+#: pagelayout.py:245
+#, fuzzy
+msgid "Translated words"
+msgstr "áˆáŒ£áŠ• ትርጉáˆ"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "ጅáˆáˆ­"
+
+#: pagelayout.py:247
+#, fuzzy
+msgid "Fuzzy percentage"
+msgstr "ጅáˆáˆ­ ትርጉáˆ"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "ጅáˆáˆ­ ቃላቶች"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "á‹«áˆá‰°á‰°áˆ¨áŒŽáˆ˜ áርሰንት"
+
+#: pagelayout.py:251
+#, fuzzy
+msgid "Untranslated words"
+msgstr "ከáተኛ የጠበቃላት á‰áŒ¥áˆ­"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "አጠቃላይ"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "አጠቃላይ ቃላት"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "áŒáˆ«á"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+#, fuzzy
+msgid "Login failed"
+msgstr "መጫን አáˆá‰°á‰»áˆˆáˆ"
+
+#: pootle.py:349 pootle.py:380
+#, fuzzy
+msgid "Redirecting to login..."
+msgstr "ሎáŒá‰£á‹áŠ• ይሰርዙና ወደ ሎáŒá‰£á‹ ስክሪን ይመለሱá¢"
+
+#: pootle.py:352
+#, fuzzy
+msgid "Need to log in to access home page"
+msgstr "ወደዚህ áˆáŠ“ሌ ለመመለስ እንደገና ሎáŒáˆ˜áŒá‰£á‰µ ያስáˆáˆáŒá‹Žá‰³áˆá¢"
+
+#: pootle.py:365
+#, fuzzy
+msgid "Personal details updated"
+msgstr "የቅንብር á‹áˆ­á‹áˆ©áŠ• ተመáˆáŠ¨á‰µ"
+
+#: pootle.py:383
+#, fuzzy
+msgid "Need to log in to access admin page"
+msgstr "ወደዚህ áˆáŠ“ሌ ለመመለስ እንደገና ሎáŒáˆ˜áŒá‰£á‰µ ያስáˆáˆáŒá‹Žá‰³áˆá¢"
+
+#: pootle.py:390
+#, fuzzy
+msgid "Redirecting to home..."
+msgstr "የ /home ክá‹á‹­ ይለይá¦"
+
+#: pootle.py:393
+#, fuzzy
+msgid "You do not have the rights to administer pootle."
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "እይታ"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "áˆáŠ¨áˆ­"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "ተረጉáˆ"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "አርáˆ"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "አስቀáˆáŒ¥"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+#, fuzzy
+msgid "Compile PO files"
+msgstr "የትርጉሠá‹á‹­áˆŽá‰½ (*.po;*.mo)|*.po;*.mo"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "መድብ"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+#, fuzzy
+msgid "You do not have rights to alter goals here"
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#: projects.py:510
+#, fuzzy
+msgid "You do not have rights to upload files here"
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#: projects.py:515
+#, fuzzy
+msgid "You do not have rights to upload new files here"
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#: projects.py:524
+#, fuzzy
+msgid "You do not have rights to update files here"
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#: projects.py:555
+#, fuzzy
+msgid "You do not have rights to commit files here"
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#: projects.py:977 projects.py:1019
+#, fuzzy
+msgid "You do not have rights to alter assignments here"
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#: projects.py:1219
+#, fuzzy
+msgid "You do not have rights to change translations here"
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#: projects.py:1229
+#, fuzzy
+msgid "You do not have rights to suggest changes here"
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#: projects.py:1245 projects.py:1263
+#, fuzzy
+msgid "You do not have rights to review suggestions here"
+msgstr "ለአብዛኛዠጥጥር አካሠእዚህ ጋ áˆáŠ•áˆ á‹áˆ­á‹áˆ­ መስጠት አያስáˆáˆáŒá‹Žá‰µáˆá¢"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr "%i áˆáˆ¨áŒŽá‰½ (%i ጅáˆáˆ­á£ %i የተበላሹ áˆáˆáŠ­á‰¶á‰½á£ %i á‹«áˆá‰°á‰°áˆ¨áŒŽáˆ˜)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "በራስ-ገዠበመተርጎሠላይ..."
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "áˆáŠ•áŒ­"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+#, fuzzy
+msgid "Translation"
+msgstr "áˆáŒ£áŠ• ትርጉáˆ"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "የተርጓሚ አስተያየት"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "የደራሲ አስተያየት"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "የተዛመደ"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "የጥቅሠመጨረሻ"
+
+#: translatepage.py:173
+#, fuzzy
+msgid "Click here to return to the index"
+msgstr "ወደ ተከላ áˆáŠ“ሌዠለመመለስ \"exit\" ትዕዛá‹áŠ• ይጠቀሙá¢"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "ጀáˆáˆ­"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "ያለáˆá‹ %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+#, fuzzy
+msgid "Items %d to %d of %d"
+msgstr "እቃዎችን á“áŠáˆ ላይ ጨáˆáˆ­"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "የሚቀጥለዠ%d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "መጨረሻ"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%sን በመáˆáˆˆáŒˆ ላይ"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+#, fuzzy
+msgid "You have finished going through the items you selected"
+msgstr "የተመረጠዠá“áŠáˆáŠ“ ያቀá‹á‰¸á‹ áˆáˆ‰ ይሰረዛሉá¢"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "áŠáŒ áˆ‹"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "ብዙ"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "አርáˆ"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "ኮá’"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "á‹áˆˆáˆ"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "ወደኋላ"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "አቅርብ"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "á‹­á‹°áŒ"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "á‹­áŠáˆµ"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "ብዙ-ቤት"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "ወቅታዊ ትርጉáˆ"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+#, fuzzy
+msgid "Suggestion %d by %s:"
+msgstr "ተጠሪ አስተዳዳሪ"
+
+#: translatepage.py:819
+#, python-format
+#, fuzzy
+msgid "Suggestion %d:"
+msgstr "አስተያየት"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+#, fuzzy
+msgid "Suggestion by %s:"
+msgstr "ተጠሪ አስተዳዳሪ"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "አስተያየት"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+#, fuzzy
+msgid "The password is not the same as the confirmation."
+msgstr "መስመር %u ከá‹á‹­áˆ '%s' ተበክáˆáˆ (%s የተበላሸ መረጃ)."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "ወደ á‘ትሌ á‹­áŒá‰¡"
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "የተጠቃሚ ስáˆ"
+
+#: users.py:68
+msgid "Password:"
+msgstr "ማለáŠá‹« ቃáˆá¦"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "%s ቋንቋ"
+
+#: users.py:71
+#, fuzzy
+msgid "Login"
+msgstr "እንደ ስር መáŒá‰£á‰µáŠ• አስችáˆá¡á¡"
+
+#: users.py:77
+msgid "Default"
+msgstr "ቀዳሚ"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "እባክዎን የáˆá‹áŒˆá‰£ á‹áˆ­á‹áˆ­áŠ• ያስገቡ"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "á‘ትለ áˆá‹áŒˆá‰£"
+
+#: users.py:122 users.py:158
+#, fuzzy
+msgid "Your requested username"
+msgstr "ለመá‹áŒˆá‰¥á‹Ž ተጠቃሚ-ስáˆá¦"
+
+#: users.py:125 users.py:429
+#, fuzzy
+msgid "You must supply a valid email address"
+msgstr "ያስገቡት የገትዌይ አድራሻ ሊደረስበት አáˆá‰°á‰»áˆˆáˆá¢"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "ሙሉ ስáˆá‹Ž"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "የሚáˆáˆáŒ‰á‰µ የማለáŠá‹« ቃáˆ"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "ማለáŠá‹« ቃáˆáŠ• ያረጋáŒáŒ¡"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr "መá‹áŒˆá‰¥ ክáˆá‰µ"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "የማስáŠáˆ» á‹áˆ­á‹áˆ­áŠ• ያቅርቡ"
+
+#: users.py:150
+#, fuzzy
+msgid "Pootle Account Activation"
+msgstr "ለመá‹áŒˆá‰¥á‹Ž ተጠቃሚ-ስáˆá¦"
+
+#: users.py:160
+#, fuzzy
+msgid "Activation Code"
+msgstr "የኮድስáˆ_sá¦"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "የተቀበሉት የማስጀመሪያ á‰áˆá"
+
+#: users.py:163
+#, fuzzy
+msgid "Activate Account"
+msgstr "ለመá‹áŒˆá‰¥á‹Ž ተጠቃሚ-ስáˆá¦"
+
+#: users.py:175
+#, python-format
+#, fuzzy
+msgid "Options for: %s"
+msgstr "የመጫኛ áˆáˆ­áŒ«á‹Žá‰½"
+
+#: users.py:181
+#, fuzzy
+msgid "Personal Details"
+msgstr "የቅንብር á‹áˆ­á‹áˆ©áŠ• ተመáˆáŠ¨á‰µ"
+
+#: users.py:186
+msgid "Email"
+msgstr "ኤ-መáˆá‹•áŠ­á‰µ"
+
+#: users.py:190
+#, fuzzy
+msgid "Translation Interface Configuration"
+msgstr "የሽቦ አáˆá‰£ አá‹á‰³áˆ­ ማስተካከáˆ"
+
+#: users.py:191
+#, fuzzy
+msgid "User Interface language"
+msgstr "ለተጠቃሚ የአስሊ ገጽታ áˆáˆ­áŒ«á‹Žá‰½"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "የኔ á•áˆ®áŒ€áŠ­á‰¶á‰½"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "የኔ ቋንቋዎች"
+
+#: users.py:196
+msgid "Home page"
+msgstr "የድርገጽ"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+#, fuzzy
+msgid "Input Height (in lines)"
+msgstr "በገቢ á‹á‹­áˆŽá‰½ á‹áˆ­á‹áˆ­ á‹áˆµáŒ¥ የሚገአዕቃá¤"
+
+#: users.py:258
+#, fuzzy
+msgid "Number of rows in view mode"
+msgstr "ይህንን አካሠበlayer2 ሞድ áˆáŒ á‰€áˆ?"
+
+#: users.py:259
+#, fuzzy
+msgid "Number of rows in translate mode"
+msgstr "ይህንን አካሠበlayer2 ሞድ áˆáŒ á‰€áˆ?"
+
+#: users.py:307
+msgid "Error"
+msgstr "ስህተት"
+
+#: users.py:359
+#, fuzzy
+msgid "You need to be siteadmin to change users"
+msgstr "${DEVICE}ን ለመመስጠር ማለáŠá‹«á‰ƒáˆ መáˆáˆ¨áŒ¥ ይኖርቦታáˆá¢"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+#, fuzzy
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "ሎáŒá‰£á‹áŠ• ይሰርዙና ወደ ሎáŒá‰£á‹ ስክሪን ይመለሱá¢"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+#, fuzzy
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "የተቀበሉት የማስጀመሪያ á‰áˆá"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+#, fuzzy
+msgid "Your user name is: %s\n"
+msgstr "\"${hostname}\" የሚለዠስሠየለáˆá¢"
+
+#: users.py:471
+#, python-format
+#, fuzzy
+msgid "Your password is: %s\n"
+msgstr "እብክዎ ማለáŠá‹«á‰ƒáˆáŠ• ያስገቡá¦"
+
+#: users.py:472
+#, python-format
+#, fuzzy
+msgid "Your registered email address is: %s\n"
+msgstr "ያስገቡት የገትዌይ አድራሻ ሊደረስበት አáˆá‰°á‰»áˆˆáˆá¢"
+
+#: users.py:500
+#, fuzzy
+msgid "Redirecting to Registration Page..."
+msgstr "በá‹áˆ­á‹áˆ© á‹áˆµáŒ¥ ዶሴ ጨáˆáˆ­"
+
+#: users.py:524
+#, fuzzy
+msgid "Redirecting to login Page..."
+msgstr "ሎáŒá‰£á‹áŠ• ይሰርዙና ወደ ሎáŒá‰£á‹ ስክሪን ይመለሱá¢"
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+#, fuzzy
+msgid "The activation information was not valid."
+msgstr "'%s' ትክክለኛ የPOT á‹á‹­áˆ አይደለáˆá¢"
+
+#: users.py:532
+#, fuzzy
+msgid "Activation Failed"
+msgstr "መጫን አáˆá‰°á‰»áˆˆáˆ"
+
+#: users.py:649
+#, fuzzy
+msgid "Input height must be numeric"
+msgstr "Boot ክá‹á‹­ በext2 ላይ መሆን አለበት"
+
+#: users.py:650
+#, fuzzy
+msgid "Input width must be numeric"
+msgstr "Boot ክá‹á‹­ በext2 ላይ መሆን አለበት"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "ተቀበáˆ"
+
+#~ msgid "Reject"
+#~ msgstr "አትቀበáˆ"
+
+#, fuzzy
+#~ msgid "WordForge Translation Project"
+#~ msgstr "ትርጉሙ ጅáˆáˆ­ áŠá‹ &f"
+
+#~ msgid "parent folder"
+#~ msgstr "እናት ዶሴ"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%dሰáŠá‹¶á‰½, %d%dáˆáˆ¨áŒŽá‰½ (%d%%) የተተረጎመ"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "ይህ የሙከራ የá‘ትሌ ተከላ áŠá‹"
+
+#~ msgid "current folder"
+#~ msgstr "ይህ ዶሴ"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ar/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ar/jToolkit.po
new file mode 100644
index 0000000..1c58dba
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ar/jToolkit.po
@@ -0,0 +1,145 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-11-02 08:14+0000\n"
+"Last-Translator: haytham abulela hammam <haytham.hammam@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n>=3 && "
+"n<=10 ? 3 : n>=11 && n<=99 ? 4 : 5;\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "ادخل إلى %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "إلغي هذا الÙعل وابدء جلسة جديدة"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "بدلا من تأكيد هذا الÙعل، أخرج وابدأ من الصÙر "
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "غادر التطبيق"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "غادر التطبيق وعÙد إلى التطبيق الأب"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "، يرجى تأكيد اسم الدخول"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "اسم الدخول"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "اسم المستخدم:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "كلمة السر:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "اللغة:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "انتق تطبيقا:"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "تسجيل الخروج"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "خروج"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "تم تسجيل الدخول باسم <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "لا يمكن إضاÙØ© جلسة جديدة"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "تم تسجيل الخروج"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "تم الاتصال"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "تم خروج الجلسة الرئيسية"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "يجب تعري٠مدخل المستخدمين أو تÙضيلاتهم ÙÙŠ مل٠تشكيل الخادم"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "المستخدم (%r) غير موجود"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "اسم المستخدم أو كلمة السر غير صحيحين"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "Ùشل تأكيد الدخول"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "لا"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "نعم"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "حذÙ"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(لا توجد مرÙقات)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "المرÙÙ‚ كبير جدا"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "حذ٠هذا المرÙÙ‚"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "استعادة"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "تم حذ٠هذا المرÙÙ‚. انقر هنا لاستعادته"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ارÙاق ملÙ"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "يجب تعري٠مدخل المستخدمين ÙÙŠ مل٠تشكيل الخادم"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ar/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ar/pootle.po
new file mode 100644
index 0000000..3ee3fd6
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ar/pootle.po
@@ -0,0 +1,1420 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-11-08 18:25+0000\n"
+"Last-Translator: haytham abulela hammam <haytham.hammam@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n>=3 && "
+"n<=10 ? 3 : n>=11 && n<=99 ? 4 : 5;\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "عرض تجريبي لبوتل"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "الرئيسية"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "المستخدمون"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "اللغات"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "المشاريع"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "خيارات عامة"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "خيار"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "القيمة الحالية"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "احÙظ التغييرات"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "العنوان"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "الوصÙ"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "الوصلة الأساسية"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "الصÙحة الرئيسية"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "صÙحة المدير للغات بوتل"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "صÙحة المدير الرئيسية"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "رمز ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "الاسم بالكامل"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(أض٠اللغة هنا)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "محار٠خاصة"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(محار٠خاصة)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "عدد الجموع"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(عدد الجموع)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "معادلة الجمع"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(معادلة الجمع)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "احذ٠اللغة"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "احذ٠%s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "معياري"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "صÙحة مدير مشروعات بوتل"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "رمز المشروع"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(أض٠المشروع هنا)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "وص٠المشروع"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(وص٠المشروع)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "نمط ترابيع"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "نوع الملÙ"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "انشيء ملÙات MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "احذ٠مشروع"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "صÙحة إدارة المستخدمين لبوتل"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "اسم المستخدم"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(أض٠الاسم الكامل هنا)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "عنوان البريد الإلكتروني"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(أض٠البريد الإلكتروني هنا)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "كلمة السر"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(أض٠كلمة السر هنا)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "منشط"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "نشّط المستخدم الجديد"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "احذ٠المستخدم"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "عودة إلى الصÙحة الرئيسية"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "اللغات الموجودة"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "حدّث اللغات"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "مدير بوتل: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "ليست لك حقوق إدارة هذا المشروع."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "حدّث من القوالب"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "أضÙ٠لغة"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "مدير بوتل: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "الصÙحة الرئيسية للمشروع"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "لا يمكن ضبط الحقوق لاسم المستخدم %s - المستخدم غير موجود"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "هذا مشروع على طريقة جنو (دليل واحد، ملÙات مسماة حسب اللغات)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "هذا مشروع على الطريقة القياسية (دليل واحد لكل لغة)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "صلاحيات المستخدم"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(اختر لتضي٠مستخدم)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "الحقوق"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "احذÙ"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "حدّث الحقوق"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "عن بوتل"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>بوتل</strong> هو بوابة وب بسيطة تسمح لك <strong>بالترجمة</strong>! "
+"بما أن بوتل <strong>برنامج حر</strong>، يمكنك تنزيله وتشغيل نسختك الخاصة منه "
+"إذا شئت. ويمكنك كذلك المساهمة ÙÙŠ التطوير بطرق متعددة (ليس من الضروري أن "
+"تكون قادرا على البرمجة)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"يستضا٠مشروع بوتل ÙÙŠ <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> حيث "
+"يمكنك الحصول على تÙاصيل حول الشÙرة المصدرية، والقوائم البريدية إلخ."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"أصل اسم البرنامج إنجليزي وهو <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine أو آلة ترجمة وتوطين "
+"على الخط مبنية على PO، لكن يمكنك قراءة <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">هذا</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "الإصدارات"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"يشغل هذا الموقع:<span dir=\"ltr\"><br />بوتل %s<br />عÙدّت أوات الترجمة %s<br "
+"/>jToolkit %s<br />Python %s </span>(على %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "صÙحة المستخدم: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "تغيير الخيارات"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "صÙحة المدير"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "أدÙر"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "وصلات سريعة"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "رجاء انقر 'غيّر الخيارات' وانتقي بعض اللغات والمشاريع"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "لا مشاريع (%d(، %d%% مترجمة"
+msgstr[1] "مشروع واحد(%d)، %d%% مترجم"
+msgstr[2] "مشروعان (%d)، %d%% مترجم"
+msgstr[3] "%d مشاريع، %d%% مترجم"
+msgstr[4] "%d مشروعا، %d%% مترجم"
+msgstr[5] "%d مشروع، %d%% مترجم"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "المدير"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "رمز اللغة"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "اسم اللغة"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "لا لغة، معدل %d%% مترجم"
+msgstr[1] "لغة واحدة، معدل %d%% مترجم"
+msgstr[2] "لغتان، معدل %d%% مترجم"
+msgstr[3] "%d لغات، معدل %d%% مترجم"
+msgstr[4] "%d لغة، معدل %d%% مترجم"
+msgstr[5] "%d لغة، معدل %d%% مترجم"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "اللغة"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: المشروع %s، اللغة %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "ابحث"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "بحث متقدم"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "لا يمكن رÙع الملÙØŒ لا مل٠مرÙÙ‚"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "لا يمكن رÙع إلا ملÙات PO أو ملÙات zip لملÙات PO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "أسنÙد مقاطÙع"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "أسنÙد Ùعل"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "أسنÙد للمستخدم"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "أهداÙ"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "أدخل اسم الهدÙ"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "أض٠هدÙا"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "ارÙع ملÙا"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "اختر ملÙا لرÙعه"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "استبدل"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "استبدل المل٠الحالي إذا كان موجودا بالÙعل"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "ادمج"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "ادمج المل٠مع المل٠الحالي وحول التعارضات إلى اقتراحات"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "ليس ÙÙŠ هدÙ"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "أض٠مستخدما"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "مل٠PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "مل٠XLIFF "
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "مل٠QT .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "مل٠CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "مل٠MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "حدّث"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "أرسل"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "كل السلاسل"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "غير مترجمة"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "غير Ù…Ùسندة"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "غير Ù…Ùسندة وغير مترجمة"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "ضع هدÙا"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "اختر العديد"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "أسند إلى"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "أظهر وظائ٠التحرير"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "أظهر الإحصائيات"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "أظهر المسارات"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "أخÙ٠المسارات"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "أظهر الÙحوص"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "أخÙ٠الÙحوص"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "أظهر الأهداÙ"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "أخÙ٠الأهداÙ"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "أظهر الإسنادات"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "أخÙ٠الإسنادات"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "كل الأهداÙ: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "ترجم مقاطعي"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "اعرض مقاطعي"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "لا مقاطع مسندة لك"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "ترجم مقاطعي بسرعة"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "لا مقاطع غير مترجمة مسندة إليك"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "راجع الاقتراحات"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "اعرض الاقتراحات"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "ترجم بسرعة"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "اعرض غير المترجم"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "لا عناصر غير مترجمة"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "ترجم الكل"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP الهدÙ"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP المجلد"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "ولّد SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "لم ÙŠÙشل أي مقطع (%d) (%d%%)"
+msgstr[1] "Ùشل مقطع واحد (%d) (%d%%)"
+msgstr[2] "Ùشل مقطعان (%d) (%d%%)"
+msgstr[3] "Ùشلت %d مقاطع (%d%%)"
+msgstr[4] "Ùشل %d مقطعا (%d%%)"
+msgstr[5] "Ùشل %d مقطع (%d%%)"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d كلمة (%d%%) مسندة"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d مقطع]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d كلمة (%d%%) مترجمة"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "كل المشاريع"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "كل اللغات"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "حسابي"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "وثائق ومساعدة"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "تسجيل الخروج"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "ادخل"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "سجل"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "نشّط"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "شعار بوتل"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "عنْ خادم بوتل هذا"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "كل الأهداÙ"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d من الملÙات"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "لا مل٠(%d)"
+msgstr[1] " مل٠واحد (%d)"
+msgstr[2] "ملÙان (%d)"
+msgstr[3] "%d ملÙات"
+msgstr[4] "%d ملÙا"
+msgstr[5] "%d ملÙ"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d من السلاسل"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "الاسم"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Ù…Ùتَرجَم"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "نسبة المÙتَرجَم"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "الكلمات المترجمة"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "مبهم"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "نسبة المبهم"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "كلمات مبهمة"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "نسبة العمل الغير مترجم"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "الكلمات غير المترجمة"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "المجموع الكلي"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "المجموع الكلي للكلمات"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "رسم بياني"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "النص الأصلي"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "النص المترجم"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "تعليقات"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "أماكن"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Ùشل الولوج"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "يجري إعادة التوجيه إلى الولوج..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "للوصول الي الصÙحة الرئيسية يجب أن تلÙج أولا"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Ø­Ùدّثَت التÙاصيل الشخصية"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "للوصول الي صÙحة المدير يجب أن تلÙج أولا"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "يجري إعادة التوجيه إلى الرئيسية..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "ليست لك حقوق إدارة بوتل."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "اعرض"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "اقترح"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "ترجم"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "راجع"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "أرشيÙ"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "صرّ٠ملÙات PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "أسنÙد"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "لا يمكن حذ٠المستخدمين \"nobody\" أو \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "لا تملك صلاحية تغيير الأهدا٠هنا"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "لا تملك صلاحية رÙع ملÙات هنا"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "لا تملك صلاحية استبدال الملÙات هنا"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "لا تملك صلاحية رÙع ملÙات جديدة هنا"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "لا تملك صلاحية تحديث ملÙات هنا"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "لا تملك صلاحية لايداع ملÙات هنا"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "لا تملك صلاحية لتغيير تعيينات هنا"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "لا تملك صلاحية لتغيير الترجمات هنا"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "لا تملك صلاحية لاقتراح تغييرات هنا"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "لا تملك صلاحية لمراجعة تغييرات هنا"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d مترجم\n"
+"(%d غير مترجم، %d مبهم)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "بوتل: ترجمة %s إلى %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "الأصل"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "الترجمة"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "اقبل الاقتراح"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "ارÙض الاقتراح"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "ملاحظات المترجم"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "ملاحظات المÙطوّر"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "ذو صلة"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "جارى..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "حدث خطأ ما"
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "نهاية نتائج البحث"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "انقر هنا للعودة إلى الÙهرس"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "البداية"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "السابق %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "عناصر %d إلى %d من %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "التالي %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "النهاية"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "يجري Ùحص %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "لا توجد عناصر تواÙÙ‚ ذلك البحث ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "أنهيت تصÙØ­ العناصر التي انتقيت"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "المÙرد"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "الجمع"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "حرّر"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "انسخ"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "تخطى"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "ارجع"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "أرسل"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "زوّد"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "قلّص"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "جمع %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"الترجمة غير متاحة لأن معلومات صيغة الجمع للغتك غير متوÙرة. من Ùضلك. اتصل "
+"بمدير الموقع."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "الترجمة الحالية:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "اقتراح %d من قبل %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "اقتراح %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "اقتراح %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "اقتراح:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "يجب أن تدخل كلمة سر صحيحة من %d حرÙا على الأقل."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "كلمة السر لا تتطابق التأكيد"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Ù„Ùج إلى بوتل"
+
+#: users.py:66
+msgid "Username:"
+msgstr "اسم المستخدم:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "كلمة السر:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "اللغة:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Ù„Ùج"
+
+#: users.py:77
+msgid "Default"
+msgstr "المبدئية"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "رجاء أدخÙÙ„ تÙاصيل التسجيل"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "التسجيل ÙÙŠ بوتل"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "اسم المستخدم المطلوب"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "يجب أن تدخÙÙ„ عنوانا إلكترونيا صحيحا"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "اسمك الكامل"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "كلمة السر المطلوبة"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "أكّد كلمة السر"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "اكتب كلمة سرك مرة أخرى لتتأكد أنها Ø£ÙدخÙلت بشكل صحيح"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "سجّل حساب"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "رجاء أدخÙÙ„ تÙاصيل التنشيط"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "نشّط حساب بوتل"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "رمز التنشيط"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "رمز التنشيط الذي استقبلت"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "نشّط حساب"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "خيارات ل: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "تÙاصيل شخصية"
+
+#: users.py:186
+msgid "Email"
+msgstr "البريد الإلكتروني"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "إعداد واجهة الترجمة"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "لغة واجهة المستخدم"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "مشاريعي"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "لغاتي"
+
+#: users.py:196
+msgid "Home page"
+msgstr "الصÙحة الرئيسية"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "لغة المصدر البديلة"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "بدون"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "ارتÙاع حيز الإدخال (بالسطور) "
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "عدد السطور ÙÙŠ نمط العرض"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "عدد السطور ÙÙŠ نمط الترجمة"
+
+#: users.py:307
+msgid "Error"
+msgstr "خطأ"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "يجب أن تكون مدير الموقع من أجل تغيير حسابات المستخدمين"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "يجب أن يكون اسم المستخدم ألÙباء-رقمي، ويجب أن يبدأ بمحر٠ألÙبائي"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "أنت (أو شخص آخر) حاول التسجيل لحساب مستخدما اسم المستخدم الخاص بك. \n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+"نحن لا نخزّن كلمت سرّك الحقيقية بل تلبيدها.\n"
+" "
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "إذا واجهت مشكلة ÙÙŠ التسجيل، اتصل بـ %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "إذا واجهت مشكلة ÙÙŠ التسجيل، اتصل بمدير الموقع.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "اسم المستخدم هذا موجود بالÙعل. أرسÙÙ„ بريد لعنوان البريد المسجّل.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "يجري التقدّم إلى <a href='%s'>الدخول</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "أنشئ حساب بوتل لك باستخدام عنوان البريد هذا.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "لتنشيط حسابك، اتّبع هذا الرابط:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "رمز التنشيط الخاص بك هو:"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "إذا لم تتمكن من اتّباع الرابط، رجاء أدخل الرمز بأعلى ÙÙŠ صÙحة التنشيط.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "أرسلت هذه الرسالة للتأكد من أن هذا العنوان البريدي صحيح. إذا لم تكن ترغب ÙÙŠ "
+"تسجيل حساب، بإمكانك تجاهل هذه الرسالة.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"انشيء الحساب. ستراسل على بريدك بمعلومات الدخول ورمز التنشيط. رجاء أدخل رمز "
+"التنشيط ÙÙŠ <a href='%s'>صÙحة التنشيط</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(أو ببساطة انقر على رابط التنشيط ÙÙŠ البريد)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "اسم المستخدم الخاص بك هو: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "كلمة سرك هي: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "عنوان بريدك المسجّل هو: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "إعادة التوجيه إلى صÙحة التسجيل..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "إعادة التوجيه إلى صÙحة الدخول..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "تم تنشيط حسابك! إعادة التوجيه إلى الدخول..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "معلومات التنشيط لم تكن صحيحة."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Ùشل التنشيط"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "يجب أن يكون الإرتÙاع عددياَ"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "يجب أن يكون العرض عدديا"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "يجب أن يكون عدد الصÙو٠الظاهرة ÙÙŠ نمط العرض بصيغة عددية"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "يجب أن يكون عدد الصÙو٠الظاهرة ÙÙŠ نمط الترجمة بصيغة عددية"
+
+#~ msgid "Accept"
+#~ msgstr "اقبل"
+
+#~ msgid "Reject"
+#~ msgstr "ارÙض"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "مشروع ترجمة \"ورد Ùورج\""
+
+#~ msgid "Broaden"
+#~ msgstr "توسيع"
+
+#~ msgid "Narrow"
+#~ msgstr "تضييق"
+
+#~ msgid "Reset"
+#~ msgstr "أعÙد ضبط"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "يجب أن يكون عنوانا إلكترونيا صحيحا"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "عرض حيز الإدخال (بالحروÙ)"
+
+#~ msgid "Pootle"
+#~ msgstr "بوتل"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "بوتل: %s"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/az/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/az/jToolkit.po
new file mode 100644
index 0000000..7870af5
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/az/jToolkit.po
@@ -0,0 +1,146 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Translate Toolkit 0.10rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+#, fuzzy
+msgid "Exit application"
+msgstr "Proqramdan çıx"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr "GiriÅŸ"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "İstifadəçi Adı:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "ÅžifrÉ™:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Dil:"
+
+#: web/server.py:551 web/server.py:642
+#, fuzzy
+msgid "Select Application"
+msgstr "Proqram Seç"
+
+#: web/server.py:637
+#, fuzzy
+msgid "Logout"
+msgstr "İclası sonlandır"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Çıx"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+#, fuzzy
+msgid "connected"
+msgstr "Bağlı"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Xeyr"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Bəli"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "sil"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+#, fuzzy
+msgid "restore"
+msgstr "Bərpa Et"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+#, fuzzy
+msgid "attach a file"
+msgstr "Fayl iliÅŸdir"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/az/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/az/pootle.po
new file mode 100644
index 0000000..b2d2681
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/az/pootle.po
@@ -0,0 +1,1391 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Translate Toolkit 0.10rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Ev"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "İstifadəçilər"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Dillər"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Layihələr"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Ümumi seçimlər"
+
+#: adminpages.py:50 users.py:182
+#, fuzzy
+msgid "Option"
+msgstr "Seçimlər"
+
+#: adminpages.py:51 users.py:183
+#, fuzzy
+msgid "Current value"
+msgstr "Hazırkı tarix"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Başlıq"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Ä°zahat"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Æsas URL"
+
+#: adminpages.py:59
+#, fuzzy
+msgid "Home Page"
+msgstr "Ana səhifə"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Tam Ad"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Dili Sil"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+#, fuzzy
+msgid "Remove %s"
+msgstr "%1-i &Sil"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standart"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "İstifadəçi adı"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Elektronik Ünvanı"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "ÅžifrÉ™"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+#, fuzzy
+msgid "Activated"
+msgstr "Fəallaşdır"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+#, fuzzy
+msgid "Remove User"
+msgstr "Uzaq İstifadəçi"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+#, fuzzy
+msgid "Update from templates"
+msgstr "Şablon işlədərək yarat"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Dil ÆlavÉ™ Et"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+#, fuzzy
+msgid "User Permissions"
+msgstr "Səlahiyyətləri Göstər"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+#, fuzzy
+msgid "Rights"
+msgstr "SaÄŸ"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Sil"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+#, fuzzy
+msgid "Versions"
+msgstr "Buraxılış"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+#, fuzzy
+msgid "Administrate"
+msgstr "Ä°darÉ™"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+#, fuzzy
+msgid "%s: %s"
+msgstr "%s %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+#, fuzzy
+msgid "Language Code"
+msgstr "Dil Modu"
+
+#: indexpage.py:222
+#, fuzzy
+msgid "Language Name"
+msgstr "Dil Modu"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Dil"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Axtar"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+#, fuzzy
+msgid "Select file to upload"
+msgstr "Göndəriləcək Faylları Seç"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Üstünə yaz"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Birləşdir"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "YenilÉ™"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+#, fuzzy
+msgid "Commit"
+msgstr "&Kommitlər"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Tərcüməsiz"
+
+#: indexpage.py:800
+#, fuzzy
+msgid "Unassigned"
+msgstr "İmzalanmamış"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Birdən Çoxunu Seç"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+#, fuzzy
+msgid "All projects"
+msgstr "Bütün Cismlər"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "İclası sonlandır"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "GiriÅŸ"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Fəallaşdır"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+#, fuzzy
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%u fayl"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Ad"
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "Tərcümə Et"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Fuzzy"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Toplam"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+#, fuzzy
+msgid "Graph"
+msgstr "Qrafikalar"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Giriş bacarılmadı"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Göstər"
+
+#: projects.py:139 translatepage.py:678
+#, fuzzy
+msgid "Suggest"
+msgstr "&Məsləhət Et"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Tərcümə Et"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Ä°cmal"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arxiv"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+#, fuzzy
+msgid "Assign"
+msgstr "Vəzifələndirilmiş"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Tərcümə"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "BaÅŸlat"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Son"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Düzəlt"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Köçür"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Keç"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Geri"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Yolla"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Genişlət"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+#, fuzzy
+msgid "Suggestion %d:"
+msgstr "Məsləhətlər"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+#, fuzzy
+msgid "Suggestion:"
+msgstr "Məsləhətlər"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr "İstifadəçi Adı:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "ÅžifrÉ™:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Dil:"
+
+#: users.py:71
+msgid "Login"
+msgstr "GiriÅŸ"
+
+#: users.py:77
+msgid "Default"
+msgstr "Ön Qurğulu"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+#, fuzzy
+msgid "Confirm password"
+msgstr "Şifrənin _təsdiqi:"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+#, fuzzy
+msgid "Personal Details"
+msgstr "Şəxsi Qurğular"
+
+#: users.py:186
+msgid "Email"
+msgstr "Epoçt"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "Dillər"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Ana səhifə"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr "Xəta"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Qəbul et"
+
+#~ msgid "Reject"
+#~ msgstr "Rədd et"
+
+#, fuzzy
+#~ msgid "Narrow"
+#~ msgstr "ox"
+
+#~ msgid "Reset"
+#~ msgstr "Sıfırla"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/be/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/be/jToolkit.po
new file mode 100644
index 0000000..152a58e
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/be/jToolkit.po
@@ -0,0 +1,144 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Translate Toolkit 0.10rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+#, fuzzy
+msgid "Exit application"
+msgstr "ВыйÑьці з даÑтаÑаваньнÑ"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr "РÑгіÑтрацыÑ"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Ð†Ð¼Ñ ÐºÐ°Ñ€Ñ‹Ñтальніка:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Пароль:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Мова:"
+
+#: web/server.py:551 web/server.py:642
+#, fuzzy
+msgid "Select Application"
+msgstr "ВылучÑньне даÑтаÑаваньнÑ"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Скончыць ÑÑанÑ"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Скончыць"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+#, fuzzy
+msgid "connected"
+msgstr "Далучаны"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ðе"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Так"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "выдаліць"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+msgid "restore"
+msgstr ""
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+#, fuzzy
+msgid "attach a file"
+msgstr "УклаÑьці файл"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/be/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/be/pootle.po
new file mode 100644
index 0000000..f993782
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/be/pootle.po
@@ -0,0 +1,1386 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-28 13:05+0000\n"
+"Last-Translator: Ihar Voitka <fireping@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Хатні"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "КарыÑтальнікі"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Мовы"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Праекты"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Ð“Ð°Ð»Ð¾ÑžÐ½Ñ‹Ñ Ð²Ñ‹Ð±Ð°Ñ€Ñ‹"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "ОпцыÑ"
+
+#: adminpages.py:51 users.py:183
+#, fuzzy
+msgid "Current value"
+msgstr "ЦÑперашнÑÑ Ñтаронка"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+#, fuzzy
+msgid "Save changes"
+msgstr "_Захаваць зьмены"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Başlıq"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "ÐпіÑаньне"
+
+#: adminpages.py:58
+#, fuzzy
+msgid "Base URL"
+msgstr "Базавы URI"
+
+#: adminpages.py:59
+#, fuzzy
+msgid "Home Page"
+msgstr "ÐŸÐ°Ñ‡Ð°Ñ‚ÐºÐ¾Ð²Ð°Ñ Ñтаронка"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Поўнае імÑ"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "СтандартныÑ"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+#, fuzzy
+msgid "Create MO Files"
+msgstr "СтварÑньне з файламі"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Ð†Ð¼Ñ ÐºÐ°Ñ€Ñ‹Ñтальніка"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Электронны адраÑ"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Пароль"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+#, fuzzy
+msgid "Activated"
+msgstr "_Злучыцца"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Дадаць мову"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+#, fuzzy
+msgid "Rights"
+msgstr "Праваруч"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Выдаліць"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+#, fuzzy
+msgid "Versions"
+msgstr "Ð’ÑÑ€ÑÑ‹Ñ"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+#, fuzzy
+msgid "Administrate"
+msgstr "ÐдмініÑтраваньне"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+#, fuzzy
+msgid "Language Code"
+msgstr "Мовы"
+
+#: indexpage.py:222
+#, fuzzy
+msgid "Language Name"
+msgstr "Мовы"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Мова"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Пошук"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+#, fuzzy
+msgid "Select file to upload"
+msgstr "ВыбÑрыце файл Ð´Ð»Ñ Ð°Ð´ÐºÑ€Ñ‹Ñ†ÑŒÑ†Ñ"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "ПерапіÑаць"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Дадаць карыÑтальніка"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "YenilÉ™"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+#, fuzzy
+msgid "Untranslated"
+msgstr "Перакладаць"
+
+#: indexpage.py:800
+#, fuzzy
+msgid "Unassigned"
+msgstr "ÐепадпіÑанае"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Ðдзначыць некалькі"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Выхад"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Уваход у ÑÑ‹ÑÑ‚Ñму"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+#, fuzzy
+msgid "Activate"
+msgstr "_Злучыцца"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+#, fuzzy
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%u файл"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Ðазва"
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "Перакладаць"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Ðгулам"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+#, fuzzy
+msgid "Graph"
+msgstr "Графікі"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Уваход Ð½Ñ Ð°Ð´Ð±Ñ‹ÑžÑÑ"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "ВыглÑд"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Перакладаць"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Праверыць"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Ðрхіў"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+#, fuzzy
+msgid "Assign"
+msgstr "Прызначанае"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Пераклад"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Датычыцца"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Пачатак"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Канец"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "РÑдагаваньне"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "КапіÑваць"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "ПрапуÑьціць"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Ðазад"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "ДазвалÑць ÑьціÑканьне"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+#, fuzzy
+msgid "Suggestion %d:"
+msgstr "Прапановы"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+#, fuzzy
+msgid "Suggestion:"
+msgstr "Прапановы"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr "Ð†Ð¼Ñ ÐºÐ°Ñ€Ñ‹Ñтальніка:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Пароль:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Мова:"
+
+#: users.py:71
+msgid "Login"
+msgstr "РÑгіÑтрацыÑ"
+
+#: users.py:77
+msgid "Default"
+msgstr "Дапомна"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+#, fuzzy
+msgid "Confirm password"
+msgstr "Паць_верджаньне паролÑ:"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+#, fuzzy
+msgid "Personal Details"
+msgstr "ПÑÑ€ÑÐ°Ð½Ð°Ð»ÑŒÐ½Ñ‹Ñ Ð½Ð°Ñтаўленьні"
+
+#: users.py:186
+msgid "Email"
+msgstr "Э.пошта"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "Мовы"
+
+#: users.py:196
+msgid "Home page"
+msgstr "ÐŸÐ°Ñ‡Ð°Ñ‚ÐºÐ¾Ð²Ð°Ñ Ñтаронка"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr "Памылка"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "ПрынÑць"
+
+#~ msgid "Reject"
+#~ msgstr "Ðдкінуць"
+
+#, fuzzy
+#~ msgid "Narrow"
+#~ msgstr "ÑÑ‚Ñ€Ñлка"
+
+#~ msgid "Reset"
+#~ msgstr "Скінуць"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/bg/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/bg/jToolkit.po
new file mode 100644
index 0000000..fb685fc
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/bg/jToolkit.po
@@ -0,0 +1,142 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-05-24 16:50+0000\n"
+"Last-Translator: Nikolay Bachiyski <nb@nikolay.bg>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Вход за %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Отказ от дейÑтвието и започване на нова ÑеÑиÑ"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ВмеÑто да потвърждавате това дейÑтвие, излезте и започнете наново"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Изход от приложението"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Изход от това приложение и връщане към предишното"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "молÑ, потвърдете влизането"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Вход"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Потребител:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Парола:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Език:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Изберете приложение"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Изход"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Изход"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "ВпиÑан като <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "неможе да Ñе добави нова ÑеÑиÑ"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "уÑпешно излизане"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "Ñвързан"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "изход от предишна ÑеÑиÑ"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"Ñ‚Ñ€Ñбва да Ñе дефинират потребители или префикÑи при конфигурациÑта на "
+"Ñървъра"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ Ð½Ðµ ÑъщеÑтвува (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "Ðевалиден потребител и/или парола"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "неуÑпешно потвърждаване на входа"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ðе"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Да"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "премахване"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(нÑма прикачен файл)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "прикачениÑÑ‚ файл е прекалено голÑм"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "премахване на този прикачен файл"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "възÑтановÑване"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "приложението е премахнато. щракнете тук за да го въÑтановите"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "прикрепване на файл"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/bg/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/bg/pootle.po
new file mode 100644
index 0000000..56ace76
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/bg/pootle.po
@@ -0,0 +1,1496 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-11-12 22:35+0000\n"
+"Last-Translator: Ivan Georgiev <IVG_18@yahoo.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37
+#: adminpages.py:76
+#: adminpages.py:135
+#: adminpages.py:201
+#: adminpages.py:292
+#: adminpages.py:359
+#: indexpage.py:70
+#: indexpage.py:95
+#: indexpage.py:139
+#: indexpage.py:201
+#: indexpage.py:264
+#: indexpage.py:352
+#: pagelayout.py:74
+#: translatepage.py:108
+#: users.py:63
+#: users.py:118
+#: users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle ДемонÑтрациÑ"
+
+#: adminpages.py:45
+#: adminpages.py:85
+#: adminpages.py:144
+#: adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Ðачало"
+
+#: adminpages.py:46
+#: adminpages.py:212
+msgid "Users"
+msgstr "Потребители"
+
+#: adminpages.py:47
+#: adminpages.py:87
+#: indexpage.py:93
+msgid "Languages"
+msgstr "Езици"
+
+#: adminpages.py:48
+#: adminpages.py:146
+#: indexpage.py:94
+msgid "Projects"
+msgstr "Проекти"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "ОÑновни наÑтройки"
+
+#: adminpages.py:50
+#: users.py:182
+msgid "Option"
+msgstr "ОпциÑ"
+
+#: adminpages.py:51
+#: users.py:183
+msgid "Current value"
+msgstr "Текуща ÑтойноÑÑ‚"
+
+#: adminpages.py:52
+#: adminpages.py:88
+#: adminpages.py:147
+#: adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "СъхранÑване на промените"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Заглавие"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "ОпиÑание"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Базов адреÑ"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Домашна Ñтраница"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Езикова Ñтраница на админа"
+
+#: adminpages.py:86
+#: adminpages.py:145
+#: adminpages.py:211
+msgid "Main admin page"
+msgstr "Главна Ñтраница на админа"
+
+#: adminpages.py:92
+#: adminpages.py:286
+msgid "ISO Code"
+msgstr "Код по ISO"
+
+#: adminpages.py:93
+#: adminpages.py:152
+#: adminpages.py:218
+#: adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Пълно име"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(добавете език тук)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Специални знаци"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(Ñпециални знаци)"
+
+#: adminpages.py:96
+#: indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Брой опити"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "Брой опити"
+
+#: adminpages.py:97
+#: indexpage.py:225
+msgid "Plural Equation"
+msgstr "МножеÑтвено Уравнение"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(множеÑтвено уравнение)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Премахване на език"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113
+#: adminpages.py:181
+#: adminpages.py:245
+#: adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Премахване на %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Стандартно"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Страница Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ð¸ на админа"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Код на проекта"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(добавете проекта тук)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "ОпиÑание на проекта"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(опиÑание на проекта)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Вид на квадратчето"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Тип на файла"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Създаване на МО фаилове"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Премахване на проект"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "ПотребителÑка Ñтраница на админа"
+
+#: adminpages.py:217
+#: adminpages.py:376
+#: users.py:121
+#: users.py:157
+msgid "Username"
+msgstr "ПотребителÑко име"
+
+#: adminpages.py:219
+#: users.py:403
+msgid "(add full name here)"
+msgstr "(добавете пълно име)"
+
+#: adminpages.py:220
+#: users.py:124
+msgid "Email Address"
+msgstr "Електронна поща"
+
+#: adminpages.py:220
+#: users.py:406
+msgid "(add email here)"
+msgstr "(добавете електронна поща)"
+
+#: adminpages.py:221
+#: users.py:130
+#: users.py:188
+msgid "Password"
+msgstr "Парола"
+
+#: adminpages.py:221
+#: users.py:400
+msgid "(add password here)"
+msgstr "(добавете парола)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Ðктивиран"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Ðктивиране на Ð½Ð¾Ð²Ð¸Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Премахване на потребител"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Обратно към главната Ñтраница"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "СъщеÑтвуващи езици"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "ОбновÑване на езиците"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle админ: %s"
+
+#: adminpages.py:285
+#: adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "ÐÑмате правата да управлÑвате този проект"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Създаване от образец"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "ПрибавÑне на език"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle админ: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Ðачална Ñтраница на проекта"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Ðе може да Ñе зададат права за Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ %s - той не ÑъщеÑтвува"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Това е GNU проект (една директориÑ, файловете Ñа именовани за езика)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Това е Ñтандартен проект (една Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð·Ð° език)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Права на потребителÑ"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(изберете за да прибавите потребител)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Права"
+
+#: adminpages.py:379
+#: indexpage.py:1008
+msgid "Remove"
+msgstr "Премахване"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "ОбновÑване на правата"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "ОтноÑно Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> е проÑÑ‚ портал, който ви позволÑва да "
+"<strong>превеждате</strong>! Pootle е <strong>Свободен Софтуер</strong> и "
+"вие можете да го изтеглите и Ñтартирате. Също можете да помогнете като "
+"учаÑтвате в разработката по много начини (не Ñ‚Ñ€Ñбва да можете да "
+"програмирате)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Проекта Pootle Ñе хоÑтва на <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"където ще намерите детайли за Ð¸Ð·Ñ…Ð¾Ð´Ð½Ð¸Ñ ÐºÐ¾Ð´, пощите и други."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Името е ÑÑŠÑтавено от <b>PO</b>-базиран <b>O</b>нлайн <b>T</b>превод "
+"(translation) за / <b>Л</b>Ð¾ÐºÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ <b>E</b>(метод), но може да прочетете "
+"<a href=\"http://www.thechestnut.com/flumps.htm\">това</a>."
+
+#: indexpage.py:65
+#, fuzzy
+msgid "Versions"
+msgstr "ВерÑиÑ"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Този Ñайт работи Ñ:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Страница за: %s"
+
+#: indexpage.py:135
+#, fuzzy
+msgid "Change options"
+msgstr "ÐаÑтройки на изображение"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Страница на Ðдмина"
+
+#: indexpage.py:137
+#: projects.py:149
+msgid "Administrate"
+msgstr "ÐдминиÑтриране"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Бързи връзки"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"МолÑ, натиÑнете върху 'ПромÑна на наÑтройките' и изберете езици и проекти"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d проект, Ñредно %d%% преведени"
+msgstr[1] "%d проекта, Ñредно %d%% преведени"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205
+#: indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207
+#: indexpage.py:270
+#: pagelayout.py:31
+#: pagelayout.py:171
+msgid "Admin"
+msgstr "ÐдминиÑтратор"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Код на език"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Име на език"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d език, Ñредно %d%% преведени"
+msgstr[1] "%d езици Ñредно %d%% преведени"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Език"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Проект %s, език %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362
+#: translatepage.py:145
+msgid "Search"
+msgstr "ТърÑене"
+
+#: indexpage.py:363
+#: translatepage.py:146
+msgid "Advanced Search"
+msgstr "Широко Ñ‚ÑŠÑ€Ñене"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Ðе може да Ñе качи файл, нÑма прикачен такъв"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Може да Ñе качват Ñамо РО файлове и zip архиви от Ñ‚ÑÑ…"
+
+#: indexpage.py:535
+#: indexpage.py:538
+#: translatepage.py:237
+#: translatepage.py:240
+msgid "Assign Strings"
+msgstr "ПрипиÑване на низ"
+
+#: indexpage.py:536
+#: translatepage.py:239
+msgid "Assign Action"
+msgstr "ПрипиÑване на дейÑтвие"
+
+#: indexpage.py:537
+#: translatepage.py:238
+msgid "Assign to User"
+msgstr "ПрипиÑване на потребител"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "цели"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Въведете име на цел"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "ДобавÑне на цел"
+
+#: indexpage.py:550
+#: indexpage.py:552
+msgid "Upload File"
+msgstr "Качване на файл"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Изберане на файл за качване"
+
+#. l10n: radio button text
+#: indexpage.py:557
+#: projects.py:141
+msgid "Overwrite"
+msgstr "ПрезапиÑване"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "ПрезапиÑване на файла, ако ÑъщеÑтвува"
+
+# или Слей ?
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Сливане"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Съедини файла Ñ Ñ‚ÐµÐºÑƒÑ‰Ð¸Ñ Ð¸ обърни конфликтите в предложениÑ"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ðе е в целта"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "ДобавÑне на потребител"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Файл PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Файл XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Файл Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Файл CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Файл MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "ОбновÑване"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760
+#: projects.py:150
+msgid "Commit"
+msgstr "Изпращане"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Ð’Ñички низове"
+
+#: indexpage.py:799
+#: pagelayout.py:249
+msgid "Untranslated"
+msgstr "Ðепреведени"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "ÐеприпиÑан"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "ÐеприпиÑано и непреведено"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "ПоÑтавÑне на цел"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Изберане на нÑколко"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "ПрипиÑване на"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Показване на функции за редактиране"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Показване на ÑтатиÑтика"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Показване на запиÑите"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Ñкриване на запиÑите"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Покажи маркировките"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Скрий маркировките"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Показване на цели"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Скриване на цели"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Показване на припиÑваниÑ"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Скриване на припиÑваниÑ"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Ð’Ñички цели: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Превеждане на моите низове"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Изглед на моите низове"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "ÐÑма низове, които Ñа Ви припиÑани"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Бързо превеждане на моите низове"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "ÐÑма непреведени низове, които Ñа Ви припиÑани"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Показване на предложениÑта"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Показване на предложениÑта"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Бърз превод"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Показване на непреведените"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "ÐÑма непреведени елементи"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Превод на вÑички"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP архив на целта"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP архив на папката"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Генериране на SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d Ñтринг (%d%%) неуÑпешен"
+msgstr[1] "%d Ñтрингове (%d%%) неуÑпешни"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d думи (%d%%) преведени"
+
+#: indexpage.py:1004
+#: indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "d/%d низа"
+
+#: indexpage.py:1005
+#: pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d думи (%d%%) преведени"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Ð’Ñички проекти"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Ð’Ñички езици"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "МоÑÑ‚ профил"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "ДокументациÑ"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Изход"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Влизане в ÑиÑтемата"
+
+# Спазвам правилата по Ñъвет на Балабанов : m-balabanov.hit.bg. Други варианти Ñа РегиÑтрациÑ, РегиÑтрирай
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "РегиÑтриране"
+
+# виж коментар към предната дума
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Ðктивиране"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle Лого"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "За този Pootle Ñървър"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Ð’Ñички цели"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d файла"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d файл"
+msgstr[1] "%d файла"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "d/%d низа"
+
+#: pagelayout.py:242
+#: users.py:184
+msgid "Name"
+msgstr "Име"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Преведени"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Процент преведени"
+
+#: pagelayout.py:245
+#, fuzzy
+msgid "Translated words"
+msgstr "Ðепреведени думи"
+
+# Ðепотвърдени, временни
+#: pagelayout.py:246
+#: translatepage.py:135
+msgid "Fuzzy"
+msgstr "ÐеÑÑни"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Процент неÑÑни"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "ÐеÑÑни думи"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Процент непреведени"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Ðепреведени думи"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Ð’Ñичко"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Ð’Ñичко думи"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Диаграма"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Изходен текÑÑ‚"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Целеви текÑÑ‚"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Коментари"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "МеÑтоположениÑ"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Влизането в ÑиÑтемата е неуÑпешно"
+
+#: pootle.py:349
+#: pootle.py:380
+msgid "Redirecting to login..."
+msgstr "ПренаÑочване към Ñтраницата за влизане"
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "ТрÑбва да влезете за доÑтъп до началната Ñтраница"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Личните данни Ñа обновени"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "ТрÑбва да влезете за доÑтъп до админ Ñтраницата"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "ПренаÑочване към началото..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "ÐÑмате правата да управлÑвате този проект"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Изглед"
+
+#: projects.py:139
+#: translatepage.py:678
+msgid "Suggest"
+msgstr "Предложение"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Превод"
+
+# Ðе е Ñпазено указанието на програмиÑта, че това е глагол, но въпреки това е Ñпазена уÑловната ÐºÐ¾Ð½Ð²ÐµÐ½Ñ†Ð¸Ñ Ð½Ð° И Балабанов.
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Преглед"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Ðрхив"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Събиране на РО архиви"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "ПрипиÑване"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Ðеможете да изтриете \"nobody\" и \"default\" потребителите"
+
+#: projects.py:382
+#: projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "ÐÑмате права да качвате файлове тука"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "ÐÑмате права да качвате файлове тука"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "ÐÑмате право да обновÑвате файлове"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "ÐÑмате право да качвате нови файлове"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "ÐÑмате право да обновÑвате файлове"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "ÐÑмате права да качвате файлове тука"
+
+#: projects.py:977
+#: projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "ÐÑмате права да променÑте документите тук"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "ÐÑмате право да променÑте превода"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "ÐÑмате право да давате предложениÑ"
+
+#: projects.py:1245
+#: projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "ÐÑмате право да прегледате предложениÑта"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d %d преведени\n"
+"(%d празни, %d неÑÑни)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s превежда %s на %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Оригинал"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Превод"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Приемане на предложение"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Отхвърли предложение"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Коментари на преводача"
+
+# Коментари на разработчика
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Коментари на разработчика"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Свързани"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Работи Ñе..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Грешка: Ðещо Ñе обърка."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Край на бач-файла"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "ÐатиÑнете тук за връщане в началото"
+
+#. l10n: noun (the start)
+#: translatepage.py:187
+#: translatepage.py:190
+msgid "Start"
+msgstr "Ðачало"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194
+#: translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Предишни %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Елементи %d до %d от %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204
+#: translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Следващи %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210
+#: translatepage.py:213
+msgid "End"
+msgstr "Край"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "проверÑване %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "ÐÑма елементи, отговарÑщи на това Ñ‚ÑŠÑ€Ñене ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Завърши обхождането на избраните неща"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "ЕдинÑтвено"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "МножеÑтвено"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Редактиране"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Копиране"
+
+#: translatepage.py:675
+#: translatepage.py:849
+msgid "Skip"
+msgstr "ПропуÑкане"
+
+#. l10n: verb
+#: translatepage.py:677
+#: translatepage.py:848
+#: users.py:312
+msgid "Back"
+msgstr "Ðазад"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Прилагане"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Увеличаване"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Свиване"
+
+#: translatepage.py:706
+#: translatepage.py:800
+#: translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "МножеÑтвена форма %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Превода е невъзможен, защото нÑма Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° Ð²Ð°ÑˆÐ¸Ñ ÐµÐ·Ð¸Ðº. МолÑ, Ñвържете "
+"Ñе Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратора."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Текущ превод:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Предложение %d от %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Предложение %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Предложение от %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Предложение:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "ТрÑбва да подадете валидна парола от поне %d Ñимвола."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Паролата не е Ñъщата като потвърдената."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Вход в Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Потребител:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Парола:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Език:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Влизане"
+
+#: users.py:77
+msgid "Default"
+msgstr "По подразбиране"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "ÐœÐ¾Ð»Ñ Ð²ÑŠÐ²ÐµÐ´ÐµÑ‚Ðµ детайлите по активирането"
+
+#: users.py:115
+#: users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle региÑтрациÑ"
+
+#: users.py:122
+#: users.py:158
+msgid "Your requested username"
+msgstr "ИзиÑкано име"
+
+#: users.py:125
+#: users.py:429
+msgid "You must supply a valid email address"
+msgstr "ТрÑбва да предоÑтавите валиден Ð°Ð´Ñ€ÐµÑ Ð½Ð° е-поща"
+
+# Ñ‚Ñ€Ñбва ли да Ñе изпуÑне 'Вашето' или това е чаÑÑ‚ от Ñтила, който Ñайта желае да придобие.
+#: users.py:128
+msgid "Your full name"
+msgstr "Вашето пълно име"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Желаната от Ð’Ð°Ñ Ð¿Ð°Ñ€Ð¾Ð»Ð°"
+
+#: users.py:133
+#: users.py:189
+msgid "Confirm password"
+msgstr "Потвърдете паролата"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Въведете Вашата парола отново за потвърждение"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "РегиÑтриране на профила"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "ÐœÐ¾Ð»Ñ Ð²ÑŠÐ²ÐµÐ´ÐµÑ‚Ðµ детайлите по активирането"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle Ð°ÐºÑ‚Ð¸Ð²Ð°Ñ†Ð¸Ñ Ð½Ð° акаунт"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Код за активиране"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "ÐктивационниÑÑ‚ код, който получихте"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Ðктивиране на профил"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Параметри за: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Лични детайли"
+
+#: users.py:186
+msgid "Email"
+msgstr "Е-поща"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Конфигуриране на интерфейÑа за превод"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Език на потребителÑÐºÐ¸Ñ Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Моите проекти"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Моите езици"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Ðачална Ñтраница"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Ðлтернативни изходни езици"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "ÐÑма"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Входна виÑочина (в редове)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Брой редове в режим преглед"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Брой редове в режим превод"
+
+#: users.py:307
+msgid "Error"
+msgstr "Грешка"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "ТрÑбва да Ñте админиÑтратор за промÑна на потребители"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"ПотребителÑкото име Ñ‚Ñ€Ñбва да е ÑÑŠÑтавено от цифри и/или букви и да започва "
+"Ñ Ð±ÑƒÐºÐ²Ð°"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Вие (или нÑкой друг) Ñе опитва да региÑтрира акаунт Ñ Ð²Ð°ÑˆÐµÑ‚Ð¾ потребителÑко "
+"име.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Ðие не ÑъхранÑваме Вашата парола, а Ñамо хеш от неÑ."
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Ðко имате проблем Ñ Ñ€ÐµÐ³Ð¸ÑтрациÑта, Ð¼Ð¾Ð»Ñ Ð¾Ð±ÑŠÑ€Ð½ÐµÑ‚Ðµ Ñе към %s \n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Ðко имате проблем Ñ Ñ€ÐµÐ³Ð¸ÑтрациÑта, Ð¼Ð¾Ð»Ñ Ð¾Ð±ÑŠÑ€Ð½ÐµÑ‚Ðµ Ñе към админиÑтратора на "
+"Ñайта.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Това име вече ÑъщеÑтвува. Ще бъде изпратена електронна поща на региÑÑ‚Ñ€Ð¸Ñ€Ð°Ð½Ð¸Ñ "
+"адреÑ.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Извършва Ñе <a href='%s'>влизане</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Създаден е Pootle акаунт, използвайки този електронен адреÑ."
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "За да активирате профила, щракнете на тази препратка:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"ВашиÑÑ‚ код за активиране е:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Ðко не можете да щракнете на препратката, Ð¼Ð¾Ð»Ñ Ð²ÑŠÐ²ÐµÐ´ÐµÑ‚Ðµ горниÑÑ‚ код на "
+"Ñтраницата за активиране.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+"Бе изпратено Ñъобщение, за проверка на електронната поща. Ðко не желаете да "
+"Ñе региÑтрирате, Ð¼Ð¾Ð»Ñ Ð¸Ð³Ð½Ð¾Ñ€Ð¸Ñ€Ð°Ð¹Ñ‚Ðµ Ñъобщението."
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Профил Ñъздаден. Ще получите детайли за легитимиране, както и активационен "
+"код. МолÑвъведете активационниÑÑ‚ код на <a href='%s'> тази Ñтраница</a>"
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Или проÑто натиÑнете на връзката в това Ñъобщение)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Вашето потребителÑко име е: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Вашата парола е: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "ВашиÑÑ‚ региÑтриран емайл е: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "ПренаÑочване към Ñтраницата за региÑтрациÑ..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "ПренаÑочване към Ñтраницата за влизане"
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "ВашиÑÑ‚ профил бе активиран! ПренаÑочване към Ñтраницата за влизане..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "ИнформациÑта за активиране не е правилна"
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "ÐктивациÑта е неуÑпешна"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Входната виÑочина Ñ‚Ñ€Ñбва да е цифра"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Входната ширина Ñ‚Ñ€Ñбва да е цифра"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "БроÑÑ‚ на редовете в режим преглед Ñ‚Ñ€Ñбва да е цифра"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "БроÑÑ‚ на редовете в режим превод Ñ‚Ñ€Ñбва да е цифра"
+
+#~ msgid "Accept"
+#~ msgstr "Приемане"
+
+#~ msgid "Reject"
+#~ msgstr "Отказване"
+
+#~ msgid "Broaden"
+#~ msgstr "РазширÑване"
+
+#~ msgid "Reset"
+#~ msgstr "ВъзÑтановÑване"
+
+#, fuzzy
+#~ msgid "Narrow"
+#~ msgstr "Ñтрелка"
+
+#~ msgid "Reset"
+#~ msgstr "Ðнулиране"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/bn/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/bn/jToolkit.po
new file mode 100644
index 0000000..6342ed5
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/bn/jToolkit.po
@@ -0,0 +1,140 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-07-31 12:52+0200\n"
+"Last-Translator: Jamil Ahmed <itsjamil@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.9.1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s à¦à¦° জনà§à¦¯ লগইন"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "à¦à¦‡ কারà§à¦¯à¦Ÿà¦¿ বাতিল করো à¦à¦¬à¦‚ নতà§à¦¨ সেশন আরমà§à¦­ করো"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "à¦à¦‡ কাজটি নিশà§à¦šà¦¿à¦¤ না করে, লগআউট করো à¦à¦¬à¦‚ শà§à¦°à§ থেকে আরমà§à¦­ করো"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "অà§à¦¯à¦¾à¦ªà§à¦²à¦¿à¦•à§‡à¦¶à¦¨ থেকে পà§à¦°à¦¸à§à¦¥à¦¾à¦¨"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "à¦à¦‡ অà§à¦¯à¦¾à¦ªà§à¦²à¦¿à¦•à§‡à¦¶à¦¨ পà§à¦°à¦¸à§à¦¥à¦¾à¦¨ করো à¦à¦¬à¦‚ উরà§à¦§à§à¦¬à¦¸à§à¦¥ অà§à¦¯à¦¾à¦ªà§à¦²à¦¿à¦•à§‡à¦¶à¦¨à§‡ ফেরত যাও"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", অনà§à¦—à§à¦°à¦¹ করে লগইন নিশà§à¦šà¦¿à¦¤ করà§à¦¨"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "লগইন"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€à¦° নাম:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "পাসওয়ারà§à¦¡:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "ভাষা:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "অà§à¦¯à¦¾à¦ªà§à¦²à¦¿à¦•à§‡à¦¶à¦¨ নিরà§à¦¬à¦¾à¦šà¦¨"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "লগআউট"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "পà§à¦°à¦¸à§à¦¥à¦¾à¦¨"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b> হিসাবে লগইনকৃত"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "নতà§à¦¨ সেশন যোগ করা যাচà§à¦›à§‡ না"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "লগআউট সমà§à¦ªà¦¨à§à¦¨"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "সংযà§à¦•à§à¦¤"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "উরà§à¦§à§à¦¬à¦¸à§à¦¥ সেশন বনà§à¦§ হয়েছে"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "users অথবা userprefs অনà§à¦¤à¦°à§à¦­à§à¦•à§à¦¤à¦¿, সারà§à¦­à¦¾à¦° কনফিগে উলà§à¦²à§‡à¦– করতে হবে"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€ উপসà§à¦¥à¦¿à¦¤ নেই (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€à¦° নাম à¦à¦¬à¦‚/অথবা পাসওয়ারà§à¦¡ ভà§à¦²"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "বà§à¦¯à¦°à§à¦¥ লগইনের নিশà§à¦šà¦¿à¦¤ পà§à¦°à¦®à¦¾à¦£"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "না"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "হà§à¦¯à¦¾à¦"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "সরাও"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(কোন à¦à¦Ÿà¦¾à¦šà¦®à§‡à¦¨à§à¦Ÿ নেই)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "à¦à¦Ÿà¦¾à¦šà¦®à§‡à¦¨à§à¦Ÿà¦Ÿà¦¿ অনেক বড়"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "à¦à¦‡ à¦à¦Ÿà¦¾à¦šà¦®à§‡à¦¨à§à¦Ÿà¦Ÿà¦¿ সরাও"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "পà§à¦¨à¦°à§à¦¦à§à¦§à¦¾à¦°"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "à¦à¦‡ à¦à¦Ÿà¦¾à¦šà¦®à§‡à¦¨à§à¦Ÿà¦Ÿà¦¿ সরানো হয়েছে। পà§à¦¨à¦°à§à¦¦à§à¦§à¦¾à¦° করতে চাইলে à¦à¦–ানে কà§à¦²à¦¿à¦•à§ করà§à¦¨"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "à¦à¦•à¦Ÿà¦¿ ফাইল সংযà§à¦•à§à¦¤ করো"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/bn/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/bn/pootle.po
new file mode 100644
index 0000000..4ebb731
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/bn/pootle.po
@@ -0,0 +1,1356 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-11-30 16:38+0000\n"
+"Last-Translator: Shuvro paul <shuvro.paul@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "পà§à¦Ÿà¦² ডেমো"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "হোম"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "ভাষা"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "পà§à¦°à§‹à¦œà§‡à¦•à§à¦Ÿ"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "সাধারন অপশন"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "অপশন"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "বরà§à¦¤à¦®à¦¾à¦¨ মান"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "শিরোনাম"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "বরà§à¦¨à¦¨à¦¾"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "বেইজ ইউ.আর.à¦à¦²"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "হোম পেজ"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "পà§à¦Ÿà¦² ভাষা পà§à¦°à¦¶à¦¾à¦¸à¦¨à¦¿à¦• à¦à¦²à¦¾à¦•à¦¾"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "মà§à¦² অà§à¦¯à¦¾à¦¡à¦®à¦¿à¦¨ পাতা"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO কোড"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "পূরà§à¦£ নাম"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(à¦à¦–ানে ভাষা যোগ করà§à¦¨)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "বিশেষ বরà§à¦£"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(বিশেষ বরà§à¦£à¦¸à¦®à§‚হ)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "পà§à¦²à§à¦°à¦¾à¦² à¦à¦° সংখà§à¦¯à¦¾"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(পà§à¦²à§à¦°à¦¾à¦² à¦à¦° সংখà§à¦¯à¦¾)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "পà§à¦²à§à¦°à¦¾à¦² সমীকরণ"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(পà§à¦²à§à¦°à¦¾à¦² সমীকরণ)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "ভাষা সরিয়ে ফেলà§à¦¨"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s ভাষা সরিয়ে ফেলà§à¦¨"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "পà§à¦°à¦®à¦¿à¦¤"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "পà§à¦Ÿà¦² পà§à¦°à¦œà§‡à¦•à§à¦Ÿ পà§à¦°à¦¶à¦¾à¦¸à¦¨à¦¿à¦• à¦à¦²à¦¾à¦•à¦¾"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "পà§à¦°à¦œà§‡à¦•à§à¦Ÿà§‡à¦° কোড"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(à¦à¦–ানে পà§à¦°à¦œà§‡à¦•à§à¦Ÿ যোগ করà§à¦¨)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "পà§à¦°à¦œà§‡à¦•à§à¦Ÿà§‡à¦° বরà§à¦£à¦¨à¦¾"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(পà§à¦°à¦œà§‡à¦•à§à¦Ÿà§‡à¦° বরà§à¦£à¦¨à¦¾)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "পরীকà§à¦·à¦•à§‡à¦° ধরণ"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "ফাইলের ধরণ"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO ফাইল তৈরী কর"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "পà§à¦°à¦œà§‡à¦•à§à¦Ÿ সরিয়ে ফেলà§à¦¨"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "পà§à¦Ÿà¦² বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€ পà§à¦°à¦¶à¦¾à¦¸à¦¨ à¦à¦²à¦¾à¦•à¦¾"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(à¦à¦–ানে সমà§à¦ªà§‚রà§à¦£ নাম লিখà§à¦¨)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "ই-মেইল ঠিকানা"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(à¦à¦–ানে ই-মেইল ঠিকানা লিখà§à¦¨)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "কূটশবà§à¦¦"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(à¦à¦–ানে কূটশবà§à¦¦ লিখà§à¦¨)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "সকà§à¦°à¦¿à§Ÿ করা হলো।"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "নতà§à¦¨ বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€ সকà§à¦°à¦¿à§Ÿ কর"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€ মà§à¦›à§‡ ফেল"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "মূল পাতায় ফিরে যাও"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "বরà§à¦¤à¦®à¦¾à¦¨à§‡ সà§à¦²à¦­ ভাষাসমূহ"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "ভাষা হালনাগাদ কর"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "পà§à¦Ÿà¦² পà§à¦°à¦¶à¦¾à¦¸à¦•à¦ƒ %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "à¦à¦‡ পà§à¦°à¦œà§‡à¦•à§à¦Ÿà§‡à¦° পà§à¦°à¦¸à¦¾à¦¶à¦¨à¦¿à¦• কারà§à¦¯à¦•à§à¦°à¦®à§‡ আমার অধিকার নেই।"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "ছাà¦à¦š থেকে পরিবরà§à¦§à¦¨ কর"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "ভাষা যোগ কর"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "পà§à¦Ÿà¦² পà§à¦°à¦¸à¦¾à¦¶à¦•à¦ƒ %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "পà§à¦°à¦œà§‡à¦•à§à¦Ÿà§‡à¦° পà§à¦°à¦¥à¦® পাতা"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€ নিরà§à¦¬à¦¾à¦šà¦¨ করে যোগ করà§à¦¨)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "অধিকার সমূহ"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "সরিয়ে ফেল"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "অধিকার পরিবরà§à¦§à¦¨ কর"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "পà§à¦Ÿà¦² সমà§à¦ªà¦°à§à¦•à§‡"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "ভারà§à¦¸à¦¨"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "নিমà§à¦¨à§‹à¦•à§à¦¤ বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€à¦° বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€ পাতাঃ %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "অপশন পরিবরà§à¦¤à¦¨"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "পà§à¦°à¦¶à¦¾à¦¸à¦• পাতা"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "পà§à¦°à¦¶à¦¾à¦¸à¦¨à§€à§Ÿ"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "পà§à¦°à¦¶à¦¾à¦¸à¦•"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "ভাষার কোড"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "ভাষার নাম"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "ভাষা"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: পà§à¦°à¦œà§‡à¦•à§à¦Ÿ %s টি , ভাষা %s টি"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "অনà§à¦¸à¦¨à§à¦§à¦¾à¦¨"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "উনà§à¦¨à¦¤ অনà§à¦¸à¦¨à§à¦§à¦¾à¦¨"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "কোন ফাইল সংযà§à¦•à§à¦¤ না খাকায় আপলোড করা গেল না।"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "শà§à¦§à§à¦®à¦¾à¦¤à§à¦° PO ফাইল কিংবা জিপ করা PO ফাইল আপলোড করা যাবে।"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "সà§à¦Ÿà§à¦°à¦¿à¦‚ নিরà§à¦§à¦¾à¦°à¦£ করà§à¦¨"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "করà§à¦® বরাদà§à¦¦ কর"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€à¦° জনà§à¦¯ বরাদà§à¦¦à¦•à§ƒà¦¤"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "লকà§à¦·à§à¦¯à¦¸à¦®à§‚হ"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "লকà§à¦·à§à¦¯à§‡à¦° নাম"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "লকà§à¦·à§à¦¯ যোগ করà§à¦¨"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "ফাইল আপলোড করà§à¦¨"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "আপলোড করার জনà§à¦¯ ফাইল নিরà§à¦¬à¦¾à¦šà¦¨ করà§à¦¨"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "পূনরà§à¦²à¦¿à¦–ন"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "সংযà§à¦•à§à¦¤ কর"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"ফাইলটি কে বরà§à¦¤à¦®à¦¾à¦¨ ফাইলের সাথে সংযà§à¦•à§à¦¤ করে দà§à¦¬à¦¨à§à¦¦ সমূহকে পরামরà§à¦¶ হিসাবে দেখাও"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "লকà§à¦·à§à¦¯à§‡ অনà§à¦ªà¦¸à§à¦¥à¦¿à¦¤"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€ যোগ"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO ফাইল"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF ফাইল"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts ফাইল"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV ফাইল"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO ফাইল"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "পরিবরà§à¦§à¦¨ কর"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "কমিট করো"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "সমসà§à¦¤ সà§à¦Ÿà§à¦°à¦¿à¦‚"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "অনঅনà§à¦¦à¦¿à¦¤"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "বরাদà§à¦¦ করা হয় নি"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "বরাদà§à¦¦ করা হয় নি à¦à¦¬à¦‚ অনঅনà§à¦¦à¦¿à¦¤"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "লকà§à¦·à§à¦¯ নিরà§à¦§à¦¾à¦°à¦£ করà§à¦¨"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "à¦à¦•à¦¾à¦§à¦¿à¦• নিরà§à¦¬à¦¾à¦šà¦¨ করà§à¦¨"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "যাকে বরাদà§à¦¦ করা হয়েছে"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "সমà§à¦ªà¦¾à¦¦à¦¨à¦¾à¦° ফাংশন গà§à¦²à§‹ দেখাও"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "পরিসংখà§à¦¯à¦¾à¦¨ দেখাও"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "টà§à¦°à§à¦¯à¦¾à¦• দেখাও"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "টà§à¦°à§à¦¯à¦¾à¦• লà§à¦•à¦¾à¦“"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "লকà§à¦·à§à¦¯à¦¸à¦®à§‚হ দেখাও"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "লকà§à¦·à§à¦¯à¦¸à¦®à§‚হ লà§à¦•à¦¾à¦“"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "বরাদà§à¦¦à¦¤à¦¥à§à¦¯ দেখাও"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "বরাদà§à¦¦à¦¤à¦¥à§à¦¯ লà§à¦•à¦¾à¦“"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "সমসà§à¦¤ লকà§à¦·à§à¦¯à¦ƒ %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "আমার সà§à¦Ÿà§à¦°à¦¿à¦‚টি অনà§à¦¬à¦¾à¦¦ কর"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "আমার সà§à¦Ÿà§à¦°à¦¿à¦‚ গà§à¦²à§‹ দেখাও"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "আপনার জনà§à¦¯ কোন সà§à¦Ÿà§à¦°à¦¿à¦‚ বরাদà§à¦¦ করা হয় নি।"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "অননà§à¦¦à¦¿à¦¤ সà§à¦Ÿà§à¦°à¦¿à¦‚ গà§à¦²à§‹ দেখাও"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d টি সà§à¦Ÿà§à¦°à¦¿à¦‚ (%d%%) বà§à¦¯à¦°à§à¦¥"
+msgstr[1] "%d গà§à¦²à§‹ সà§à¦Ÿà§à¦°à¦¿à¦‚ (%d%%) বà§à¦¯à¦°à§à¦¥"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d টি শবà§à¦¦ (%d%%) বরাদà§à¦¦ করা আছে"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d সà§à¦Ÿà§à¦°à¦¿à¦‚]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d টি শবà§à¦¦ (%d%%) অনূদিত হয়েছে"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "সমসà§à¦¤ পà§à¦°à¦œà§‡à¦•à§à¦Ÿ"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "সমসà§à¦¤ ভাষা"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "আমার à¦à¦•à¦¾à¦‰à¦¨à§à¦Ÿ"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "ডকà§à¦®à§‡à¦¨à§à¦Ÿà§‡à¦¸à¦¨ à¦à¦¬à¦‚ সহায়তা"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "পà§à¦°à¦¸à§à¦¥à¦¾à¦¨"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "পà§à¦°à¦¬à§‡à¦¶"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "নিবনà§à¦§à¦¨"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "সকà§à¦°à¦¿à§Ÿ কর"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "পà§à¦Ÿà¦² লোগো"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d ফাইল"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d টি ফাইল"
+msgstr[1] "%d গà§à¦²à§‹ ফাইল"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d সà§à¦Ÿà§à¦°à¦¿à¦‚"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "নাম"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "অনূদিত"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "অনà§à¦¬à¦¾à¦¦à§‡à¦° শতকরা হার"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "অনূদিত শবà§à¦¦à¦—à§à¦šà§à¦›"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Fuzzy"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Fuzzy শতকরা হার"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Fuzzy শবà§à¦¦"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "অননূদিত শবà§à¦¦à§‡à¦° শতকরা হার"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "অননূদিত শবà§à¦¦ সমগà§à¦°"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "সরà§à¦¬à¦®à§‹à¦Ÿ"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "সরà§à¦¬à¦®à§‹à¦Ÿ শবà§à¦¦à¦—à§à¦šà§à¦›"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "গà§à¦°à¦¾à¦«"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "উৎস টেকà§à¦¸à¦Ÿ"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "লকà§à¦·à§à¦¯à¦¨à§€à§Ÿ টেকà§à¦¸à¦Ÿ"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "মনà§à¦¤à¦¬à§à¦¯à¦¸à¦®à§‚হ"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "অবসà§à¦¥à¦¾à¦¨"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "পà§à¦°à¦¬à§‡à¦¶ পà§à¦°à¦•à§à¦°à¦¿à§Ÿà¦¾ বà§à¦¯à¦°à§à¦¥"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "পà§à¦°à¦¬à§‡à¦¶ পাতায় পূনঃনিরà§à¦¦à§‡à¦¶ করা হচà§à¦›à§‡.........."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "হোম পেজে যাওয়ার জনà§à¦¯ পà§à¦°à¦¬à§‡à¦¶ করতে হবে।"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "বà§à¦¯à¦•à§à¦¤à¦¿à¦—ত বিশদ বিবরণ পরিবরà§à¦§à¦¨ করা হয়েছে।"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "পà§à¦°à¦¶à¦¾à¦¸à¦¨à¦¿à¦• পেজে যাওয়ার জনà§à¦¯ পà§à¦°à¦¬à§‡à¦¶ করতে হবে।"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "হোমপেজে পূনঃনিরà§à¦¦à§‡à¦¶ করা হচà§à¦›à§‡................."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "পà§à¦°à¦¦à¦°à§à¦¶à¦¨"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "পà§à¦°à¦¸à§à¦¤à¦¾à¦¬à¦¨à¦¾"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "অনà§à¦¬à¦¾à¦¦ করà§à¦¨"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "পরà§à¦¯à¦¾à¦²à§‹à¦šà¦¨à¦¾"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "সংগà§à¦°à¦¹à¦¶à¦¾à¦²à¦¾"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO ফাইল কমà§à¦ªà¦¾à¦‡à¦² করো"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "বরাদà§à¦¦ কর"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d টি অনূদিত \n"
+"(%d টি অননূদিত, %d টি Fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "মূল"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "অনà§à¦¬à¦¾à¦¦"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "পà§à¦°à¦¸à§à¦¤à¦¾à¦¬à¦¨à¦¾ সà§à¦¬à§€à¦•à¦¾à¦° কর"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "অনà§à¦¬à¦¾à¦¦à¦•à§‡à¦° মনà§à¦¤à¦¬à§à¦¯"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "উনà§à¦¨à§Ÿà¦¨à¦•à¦¾à¦°à§€à¦° মনà§à¦¤à¦¬à§à¦¯ সমূহ"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "সনà§à¦®à¦¨à§à¦§à§€à§Ÿ"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "করà§à¦® সমà§à¦ªà¦¾à¦¦à¦¨ চলছে............"
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "সমসà§à¦¯à¦¾à¦ƒ কিছৠà¦à¦•à¦Ÿà¦¾ গোলমাল হয়েছে নিশà§à¦šà§Ÿà¥¤"
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "বà§à¦¯à¦¾à¦šà§‡à¦° শেষ"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "শà§à¦°à§"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "পূরà§à¦¬à¦°à§à¦¤à§€ %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "পরবরà§à¦¤à§€ %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "সমাপà§à¦¤"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s কে পরখ করা হচà§à¦›à§‡"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "à¦à¦•à¦¬à¦šà¦¨"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "বহà§à¦¬à¦šà¦¨"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "সমà§à¦ªà¦¾à¦¦à¦¨à¦¾"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "অনà§à¦²à¦¿à¦ªà¦¿"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "à¦à§œà¦¿à§Ÿà§‡ পরের ধাপে"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "জমা দাও"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "পà§à¦°à¦¸à¦¾à¦°à¦£"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "সংকোচন"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr " বহà§à¦¬à¦šà¦¨à§‡ %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "বরà§à¦¤à¦®à¦¾à¦¨ অনà§à¦¬à¦¾à¦¦à¦ƒ"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "%s করà§à¦¤à§ƒà¦• পà§à¦°à¦¦à¦¤à§à¦¤ পà§à¦°à¦¸à§à¦¤à¦¾à¦¬à¦¨à¦¾ %d :"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "পà§à¦°à¦¸à§à¦¤à¦¾à¦¬à¦¨à¦¾ %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s পà§à¦°à¦¦à¦¤à§à¦¤ পà§à¦°à¦¸à§à¦¤à¦¾à¦¬à¦¨à¦¾:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "পà§à¦°à¦¸à§à¦¤à¦¾à¦¬à¦¨à¦¾:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "পà§à¦Ÿà¦²à§‡ পà§à¦°à¦¬à§‡à¦¶"
+
+#: users.py:66
+msgid "Username:"
+msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€à¦ƒ"
+
+#: users.py:68
+msgid "Password:"
+msgstr "কূটশবà§à¦¦à¦ƒ"
+
+#: users.py:69
+msgid "Language:"
+msgstr "ভাষাঃ"
+
+#: users.py:71
+msgid "Login"
+msgstr "পà§à¦°à¦¬à§‡à¦¶"
+
+#: users.py:77
+msgid "Default"
+msgstr "পূরà§à¦¬à¦¨à¦¿à¦°à§à¦§à¦¾à¦°à¦¿à¦¤"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "পà§à¦Ÿà¦² নিবনà§à¦§à¦¨"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "আপনার পà§à¦°à¦¤à§à¦¯à¦¾à¦¶à¦¿à¦¤ সদসà§à¦¯à¦¨à¦¾à¦®"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "অবশà§à¦¯à¦‡ à¦à¦•à¦Ÿà¦¿ বৈধ ই-মেইল ঠিকানা লিখতে হবে।"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "পূরà§à¦£à¦¨à¦¾à¦®"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "পà§à¦°à¦¤à§à¦¯à¦¾à¦¶à¦¿à¦¤ কূটশবà§à¦¦"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "কূটশবà§à¦¦ নিশà§à¦šà¦¿à¦¤à¦•à¦°à¦£"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr "à¦à¦•à¦¾à¦‰à¦¨à§à¦Ÿ নিবনà§à¦§à¦¨"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "পà§à¦Ÿà¦² à¦à¦•à¦¾à¦‰à¦¨à§à¦Ÿ সকà§à¦°à¦¿à§Ÿà¦•à¦°à¦£"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "সকà§à¦°à¦¿à§Ÿà¦•à¦°à¦£ কোড"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "যে সকà§à¦°à¦¿à§Ÿà¦•à¦°à¦£ কোডটি আপনি পেয়েছেন"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "à¦à¦•à¦¾à¦‰à¦¨à§à¦Ÿ সকà§à¦°à¦¿à§Ÿ কর"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "বà§à¦¯à¦•à§à¦¤à¦¿à¦—ত বিসà§à¦¤à¦¾à¦°à¦¿à¦¤ বিবরণ"
+
+#: users.py:186
+msgid "Email"
+msgstr "ই-মেইল"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•à¦¾à¦°à§€à¦° ইনà§à¦Ÿà¦¾à¦°à¦«à§‡à¦¸à§‡à¦° ভাষা"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "আমার পà§à¦°à¦œà§‡à¦•à§à¦Ÿà¦—à§à¦²à§‹"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "আমার ভাষা"
+
+#: users.py:196
+#, fuzzy
+msgid "Home page"
+msgstr "হোম পেজ"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "কোনটিই নয়"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr "সমসà§à¦¯à¦¾"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/bo/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/bo/jToolkit.po
new file mode 100644
index 0000000..5e886f9
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/bo/jToolkit.po
@@ -0,0 +1,146 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-05-08 13:57+0000\n"
+"Last-Translator: GyangDrungRenChin <yzrq80@hotmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "à½à½¼à¼‹à½ à½‚ོད %s་à¼"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "མངགས་བཀོད་འདི་མེད་པར་བཟོས་ནས་à½à¼‹à½–རྡ་གསར་བ་ཞིག་གི་མགོ་རྩོམà¼"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ལས་ཀ་འདི་དང་ལེན་བྱ་བ་ལས་ཕྱིར་བུད་ནས་གསར་བ་ཞིག་མགོ་རྩོམà¼"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "མཉེན་ཆས་འདི་ལས་ཕྱིར་འབུདà¼"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "མཉེས་ཆས་འདི་ལས་ཕྱིར་བུད་ནས་སྔོན་མའི་མཉེས་ཆས་གཙོ་བོར་ལོག"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "à½à½¼à¼‹à½ à½‚ོད་བྱས་པར་ཡང་བསà¾à¾±à½¢à¼‹à½‘ུ་དང་ལེན་བྱ་རོགསà¼"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ནང་དུ་འཛུལà¼"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "བཀོལ་མིང་à¼"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "གསང་ཚིག"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "སà¾à½‘་རིགསà¼"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "མཉེན་ཆས་འདེམས་གསེསà¼"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "ཕྱིར་འབུདà¼"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "ཕྱིར་བུདà¼"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b> ལྟར་དུ་ནང་ལ་འཛུལà¼"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "à½à¼‹à½–རྡ་གསར་བ་ཞིག་གི་མགོ་རྩོམ་à½à½´à½–་མ་སོང་à¼"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "ཕྱིར་དོནà¼"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "སྦྲེལà¼"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "གླེང་མོལ་སྔོན་མ་ལས་ཕྱིར་བུདà¼"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"བཀོལ་མི་དང་བཀོལ་མིའི་དགའ་ཕྱོགས་གà½à½“་འà½à½ºà½£à¼‹à½–ྱས་ནས་དེ་དག་ཞབས་ཞུའི་སྒྲིག་གཞི་ནང་ད"
+"ུ་འཇོག"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "བཀོལ་མི་ (%r) ལྟ་བུ་ཞིག་མི་འདུག"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "བཀོལ་མིང་ངམ་ཡང་ན་གསང་ཚིག་ལ་ནོར་འà½à¾²à½´à½£à¼‹à½ à½‘ུག"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "ནང་འཛུལ་དང་ལེན་བྱེད་མ་à½à½´à½–à¼"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "མིནà¼"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "རེདà¼"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "ཕྱིར་དབྱུངསà¼"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "ཞོར་བà½à½‚ས་ཀྱི་ཡིག་ཆ་མེདà¼"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "ཞོར་གà½à½¼à½‚ས་ཡིག་ཆ་ཆེ་སོང་à¼"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ཟུར་གà½à½¼à½‚ས་ཀྱི་ཡིག་ཆ་ཕྱིར་དཔྱུངསà¼"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "ཕྱིར་དཔྱུངསà¼"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ཞོར་བà½à½‚ས་ཀྱི་ཡིག་ཆ་ཕྱིར་དཔྱུངས་ཟིན༠འདི་རྡེག་ནས་སླར་གསོ་བྱà¼"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ཡིག་ཆ་ཞིག་ཟུར་དུ་བà½à½‚སà¼"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/bo/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/bo/pootle.po
new file mode 100644
index 0000000..30faf8c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/bo/pootle.po
@@ -0,0 +1,1352 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-05-08 13:42+0000\n"
+"Last-Translator: GyangDrungRenChin <yzrq80@hotmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr ""
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr ""
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr ""
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr ""
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "བཀོད་འདོམསà¼"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr ""
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr ""
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "བཅོས་འབྲི"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "à½à½¦à¼‹à½£à½ºà½“à¼"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr ""
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "ཡིག་སྒྱུརà¼"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "ལྟ་སྒོ"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "གྲོས་འཆར"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "ཡིག་སྒྱུརà¼"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "དཔྱད་བརྗོད"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "ཉར་ཚགས"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr "བཀོད་སྒྲིག་བྱསà¼"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "མགོ་རྩོམà¼"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+msgid "Password:"
+msgstr ""
+
+#: users.py:69
+msgid "Language:"
+msgstr ""
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+msgid "My Languages"
+msgstr ""
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/br/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/br/jToolkit.po
new file mode 100644
index 0000000..eddeeca
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/br/jToolkit.po
@@ -0,0 +1,148 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-05-29 19:59+0200\n"
+"Last-Translator: jil quillevere <jil.quillevere@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Pootle 1.0\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "En em lojañ evel %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Kuitaat al labour-mañ ha kregiñ gant un abadenn nevez"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "E-lec'h kadarniñ al labour-mañ, dilojañ ha lorc'hañ en dro"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Kuitaat an abadenn"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Kuitaat an abadenn ha distreiñ uhelloc'h er wezenn abadennoù"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", mar plij kadarniñ an anv evit en em lojañ"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "en em lojañ"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Anv da lojañ"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "ger-alc'hwezh"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Yezh"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Dibad an abadenn"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Dilojañ"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Kuitaat"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "lojet evel <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "n'heller ket lakaat un abadenn ouzhpenn"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "kuitaet"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "liammet"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "kuitaet an abadenn uhelloc'h er wezenn"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"ezhomm da resissaat anv pe doareoù ar re 'zo lojet e skridoù diazez ar "
+"servij"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "an anv-se ne 'zeus ket dioutañ (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "an anv pe ar ger-alc'hwezh n'eo ket mat"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "n'helloc'h ket mont tre"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nann"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ya"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "tennañ kuit"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "( fichennaoueg stag ebet)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "ar fichennaoueg stag a zo re bonner"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "dilemel kuit ar fichennaoueg-se"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "lakaat en dro"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+"ar fichennaoueg stag-se a zo bet dilemet kuit. Klikañ amañ da lakaat anezhañ "
+"en dro"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "stagañ ur fichennaoueg"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/br/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/br/pootle.po
new file mode 100644
index 0000000..eb2a8ce
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/br/pootle.po
@@ -0,0 +1,1356 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"X-Generator: Translate Toolkit 1.0\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr ""
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr ""
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr ""
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr ""
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr ""
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr ""
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr ""
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr ""
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr ""
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+msgid "Password:"
+msgstr ""
+
+#: users.py:69
+msgid "Language:"
+msgstr ""
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+msgid "My Languages"
+msgstr ""
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ca/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ca/jToolkit.po
new file mode 100644
index 0000000..a60f815
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ca/jToolkit.po
@@ -0,0 +1,147 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-08-07 14:48+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.10rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Entrada de %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Cancel·la aquesta acció i inicia una nova sessió"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"En lloc de confirmar aquesta acció, finalitza la sessió i comença des de zero"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Surt de l'aplicació"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Surt d'aquesta aplicació i retorna a l'aplicació pare"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "confirmeu la vostra entrada"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Entrada"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Nom d'usuari:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Contrasenya:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Idioma:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Seleccioneu una Aplicació"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Desloguejar"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Surt"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "registrat com <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "no s'ha pogut afegir una nova sessió"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "desloguejat"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "connectat"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "s'ha sortit de la sessió pare"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"cal definir els usuaris o llurs preferències en la configuració del servidor"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "l'usuari no existeix (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nom d'usuari i/o contrasenya invàlids"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "ha fallat la confirmació d'entrada"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "No"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Si"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "elimina"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(no hi ha adjuncions)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "l'adjunció és massa gran"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "elimina aquesta adjunció"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "restaura"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "s'ha eliminat aquesta adjunció, cliqueu aqui per a restaurar-la"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "adjunta un fitxer"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "cal definir l'entrada dels usuaris a la configuració del servidor"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ca/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ca/pootle.po
new file mode 100644
index 0000000..534c705
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ca/pootle.po
@@ -0,0 +1,1551 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-07 12:10+0000\n"
+"Last-Translator: Carles Muñoz Gorriz <carlesmu@internautas.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37
+#: adminpages.py:76
+#: adminpages.py:135
+#: adminpages.py:201
+#: adminpages.py:292
+#: adminpages.py:359
+#: indexpage.py:70
+#: indexpage.py:95
+#: indexpage.py:139
+#: indexpage.py:201
+#: indexpage.py:264
+#: indexpage.py:352
+#: pagelayout.py:74
+#: translatepage.py:108
+#: users.py:63
+#: users.py:118
+#: users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demostració de Pootle"
+
+#: adminpages.py:45
+#: adminpages.py:85
+#: adminpages.py:144
+#: adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Inici"
+
+#: adminpages.py:46
+#: adminpages.py:212
+msgid "Users"
+msgstr "Usuaris"
+
+#: adminpages.py:47
+#: adminpages.py:87
+#: indexpage.py:93
+msgid "Languages"
+msgstr "Llengües"
+
+#: adminpages.py:48
+#: adminpages.py:146
+#: indexpage.py:94
+msgid "Projects"
+msgstr "Projectes"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opcions generals"
+
+#: adminpages.py:50
+#: users.py:182
+msgid "Option"
+msgstr "Opció"
+
+#: adminpages.py:51
+#: users.py:183
+msgid "Current value"
+msgstr "Valor actual"
+
+#: adminpages.py:52
+#: adminpages.py:88
+#: adminpages.py:147
+#: adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Desa els canvis"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Títol"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Descripció"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL de base"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Pàgina d'inici"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pàgina d'administració de llengües de Pootle"
+
+#: adminpages.py:86
+#: adminpages.py:145
+#: adminpages.py:211
+msgid "Main admin page"
+msgstr "Pàgina principal de l'administrador"
+
+#: adminpages.py:92
+#: adminpages.py:286
+msgid "ISO Code"
+msgstr "Codi ISO"
+
+#: adminpages.py:93
+#: adminpages.py:152
+#: adminpages.py:218
+#: adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nom sencer"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(afegiu aquí una llengua)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Caràcters especials"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(caràcters especials)"
+
+#: adminpages.py:96
+#: indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Nombre de plurals"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(nombre de plurals)"
+
+#: adminpages.py:97
+#: indexpage.py:225
+msgid "Plural Equation"
+msgstr "Fórmula pels plurals"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(fórmula pels plurals)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Suprimeix la llengua"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113
+#: adminpages.py:181
+#: adminpages.py:245
+#: adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Suprimeix %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Estàndard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pàgina d'administració de projectes de Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Codi del projecte"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(afegiu aquí un projecte)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Descripció del projecte"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(descripció del projecte)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Comprovador d'estil"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tipus de fitxer"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Crea fitxers MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Suprimeix un projecte"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pàgina d'administració d'usuari de Pootle"
+
+#: adminpages.py:217
+#: adminpages.py:376
+#: users.py:121
+#: users.py:157
+msgid "Username"
+msgstr "Nom d'usuari"
+
+#: adminpages.py:219
+#: users.py:403
+msgid "(add full name here)"
+msgstr "(afegiu aquí el nom sencer)"
+
+#: adminpages.py:220
+#: users.py:124
+msgid "Email Address"
+msgstr "Adreça de correu electrònic"
+
+#: adminpages.py:220
+#: users.py:406
+msgid "(add email here)"
+msgstr "(afegiu aquí l'adreça de correu electrònic)"
+
+#: adminpages.py:221
+#: users.py:130
+#: users.py:188
+msgid "Password"
+msgstr "Contrasenya"
+
+#: adminpages.py:221
+#: users.py:400
+msgid "(add password here)"
+msgstr "(afegiu aquó la contrasenya)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Activat"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Activa un usuari nou"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Suprimeix un usuari"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Torna a la pàgina principal"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Llengües existents"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Actualitza les llengües"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Administrador de Pootle: %s"
+
+#: adminpages.py:285
+#: adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "No teniu permisos d'administrador d'aquest projecte."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Actualitza mitjançant les plantilles"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Afegeix una llengua"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Administrador de Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Pàgina d'inici del projecte"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "No es poden concedir aquests permisos a l'usuari %s ja que no existeix"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Això és un projecte de tipus GNU (un directori i el fitxers reben el nom en "
+"funció de la llengua)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Això és un projecte estàndard (un directori per llengua)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Permisos d'usuari"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(selecciona per afegir un usuari)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Permisos"
+
+#: adminpages.py:379
+#: indexpage.py:1008
+msgid "Remove"
+msgstr "Suprimeix"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Permisos d'actualització"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Quant a Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> és un portal web senzill que us permetrà fer "
+"<strong>traduccions</strong>. Ja que Pootle és <strong>programari "
+"lliure</strong> us el podeu baixar i, si voleu, executar la vostra còpia. "
+"També podeu ajudar participant en el desenvolupament de moltes formes (no "
+"cal saber programar)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"El projecte Pootle en sí mateix està a <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> on "
+"podeu trobar detalls referents al codi font, llistes de correu, etcètera."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"El nom ve de <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, però potser hauríeu de llegir <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">això</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versions"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Aquest lloc està executant:<br />Pootle %s<br />Joc d'eines de traducció "
+"(Translate Toolkit) %s<br />jToolkit %s<br />Kid %s<br />ElementTree %s<br "
+"/>Python %s (a %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Pàgina d'usuari de %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Canvia les preferències"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Pàgina d'administració"
+
+#: indexpage.py:137
+#: projects.py:149
+msgid "Administrate"
+msgstr "Administra"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Enllaços ràpids"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Feu clic a «Canvia les preferències» i seleccioneu les llengües i projectes"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "En %d projecte i amb el %d%% traduït"
+msgstr[1] "En %d projectes i amb el %d%% traduït"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205
+#: indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207
+#: indexpage.py:270
+#: pagelayout.py:31
+#: pagelayout.py:171
+msgid "Admin"
+msgstr "Administrador"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Codi de la llengua"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nom de la llengua"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "En %d llengua i amb el %d%% traduït"
+msgstr[1] "En %d llengües i amb el %d%% traduït"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Llengua"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projecte %s, llengua %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362
+#: translatepage.py:145
+msgid "Search"
+msgstr "Cerca"
+
+#: indexpage.py:363
+#: translatepage.py:146
+msgid "Advanced Search"
+msgstr "Cerca avançada"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "No es pot penjar el fitxer, no s'ha adjuntat cap fitxer"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Només es poden penjar fitxers PO o arxius zips de fitxers PO"
+
+#: indexpage.py:535
+#: indexpage.py:538
+#: translatepage.py:237
+#: translatepage.py:240
+msgid "Assign Strings"
+msgstr "Assigna cadenes"
+
+#: indexpage.py:536
+#: translatepage.py:239
+msgid "Assign Action"
+msgstr "Assigna una acció"
+
+#: indexpage.py:537
+#: translatepage.py:238
+msgid "Assign to User"
+msgstr "Assigna a un usuari"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "objectius"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Introduïu el nom de l'objectiu"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Afegeix un objectiu"
+
+#: indexpage.py:550
+#: indexpage.py:552
+msgid "Upload File"
+msgstr "Penja un fitxer"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Seleccioneu un fitxer per carregar"
+
+#. l10n: radio button text
+#: indexpage.py:557
+#: projects.py:141
+msgid "Overwrite"
+msgstr "Sobreescriu"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Sobreescriu el fitxer actual si aquest existeix"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Uneix"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Uneix el fitxer amb l'actual i transforma els conflictes en suggeriments"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "En cap objectiu"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Afegeix un usuari"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Fitxer PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Fitxer XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Fitxer Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Fitxer CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Fitxer MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Actualitza"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760
+#: projects.py:150
+msgid "Commit"
+msgstr "Confirma"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Totes les cadenes"
+
+#: indexpage.py:799
+#: pagelayout.py:249
+msgid "Untranslated"
+msgstr "Sense traduir"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Sense assignar"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Sense assignar ni traduir"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Estabeix un objectiu"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Selecció múltiple"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Assigna a"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Mostra les funcions d'edició"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Mostra les estadístiques"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Mostra les pistes"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Oculta les pistes"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Mostra les comprovacions"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Oculta les comprovacions"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Mostra els objectius"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Oculta els objectius"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Mostra les assignacions"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Oculta les assignacions"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Tots els objectius: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Tradueix les meues cadenes"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Mostra les meues cadenes"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "No s'us ha assignat cap cadena"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Traducció ràpida de les meues cadenes"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "No s'us ha assignat cap cadena sense traduir"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Repassa els suggeriments"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Mostra els suggeriments"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Traducció ràpida"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Mostra els no traduïts"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Cap element sense traduir"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Traduex-ho tot"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP de l'objectiu"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP de la carpeta"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Genera un SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d cadena (%d%%) fallida"
+msgstr[1] "%d cadenes (%d%%) fallides"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d de %d paraules assignades (%d%%)"
+
+#: indexpage.py:1004
+#: indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d de %d cadenes]"
+
+#: indexpage.py:1005
+#: pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d de %d paraules traduïdes (%d%%)"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Tots els projectes"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Totes les llengües"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "El meu compte"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Documents i ajuda"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Surt"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Entra"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registra't"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Activa"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logotip de pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Quant a aquest servidor Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Tots els objectius"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d de %d fitxers"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fitxer"
+msgstr[1] "%d fitxers"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d de %d cadenes"
+
+#: pagelayout.py:242
+#: users.py:184
+msgid "Name"
+msgstr "Nom"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Traduït"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Percentatge de traduccions"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Paraules traduïdes"
+
+#: pagelayout.py:246
+#: translatepage.py:135
+msgid "Fuzzy"
+msgstr "Dubtosa"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Percentatge de dubtoses"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Paraules dubtoses"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Percentatge sense traduir"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Paraules sense traduir"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Nombre de paraules"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Gràfica"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Text d'origen"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Text de destí"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Comentaris"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Ubicacions"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "L'entrada ha estat fallida"
+
+#: pootle.py:349
+#: pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Redirigint cap a l'entrada..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Cal entrar per accedir a la pàgina d'inici"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "S'han actualitzat els seves dades personals"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Cal entrar per accedir a la pàgina d'administració"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Redirigint cap a inici..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "No teniu permisos d'administrador de Pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Mostra"
+
+#: projects.py:139
+#: translatepage.py:678
+msgid "Suggest"
+msgstr "Suggereix"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Tradueix"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Revisa"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arxiva"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Compila fitxers PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Assigna"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "No podeu suprimir els usuaris \"nobody\" i \"default\""
+
+#: projects.py:382
+#: projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "No teniu permisos per modificar aquí objectius"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "No teniu permisos per penjar aquí fitxers"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "No teniu permisos per sobreescriure fitxers aquí"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "No teniu permisos per penjar nous fitxers"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "No teniu permisos per actualitzar fitxers"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "No teniu permisos per guardar aquí fitxers"
+
+#: projects.py:977
+#: projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "No teniu permisos per canviar les assignacions"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "No teniu permisos per modificar traduccions"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "No teniu permisos per suggerir modificacions"
+
+#: projects.py:1245
+#: projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "No teniu permisos per revisar suggeriments"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d de %d traduïdes\n"
+"(%d en blanc, %d difuses)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: traduint %s a %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Traducció"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Accepta el suggeriment"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Rebutja el suggeriment"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Comentaris del traductor"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Comentaris del desenvolupador"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Relacionats"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Treballant…"
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Error: Quelcom no ha anat bé."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fi del lot"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Feu clic aquí per tornar a l'índex"
+
+#. l10n: noun (the start)
+#: translatepage.py:187
+#: translatepage.py:190
+msgid "Start"
+msgstr "Inici"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194
+#: translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Anteriors %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Elements %d a %d de %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204
+#: translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d següents"
+
+#. l10n: noun (the end)
+#: translatepage.py:210
+#: translatepage.py:213
+msgid "End"
+msgstr "Fi"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "comprovant %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "No hi ha elements que encaixin amb aquesta cerca ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Heu acabat de veure els elements que havieu seleccionat"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singular"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plural"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Edita"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Copia"
+
+#: translatepage.py:675
+#: translatepage.py:849
+msgid "Skip"
+msgstr "Omet"
+
+#. l10n: verb
+#: translatepage.py:677
+#: translatepage.py:848
+#: users.py:312
+msgid "Back"
+msgstr "Enrere"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Envia"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Més alt"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Més baix"
+
+#: translatepage.py:706
+#: translatepage.py:800
+#: translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Formes de plural %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"No s'ha pogut traduir degut a que la informació de plurals per la vostra "
+"llengua no està disponible. Contacteu amb l'administrador del lloc."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Traducció Actual:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Suggeriment %d de %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Suggeriment %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Suggeriment de %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Suggeriment:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Heu de facilitar una contrasenya vàlida d'almenys %d caràcters."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "La contrasenya no és la mateixa que en la confirmació."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Entreu a Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Nom d'usuari:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Clau:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Llengua:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Entra"
+
+#: users.py:77
+msgid "Default"
+msgstr "Predeterminat"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Entreu els vostres detalls de registre"
+
+#: users.py:115
+#: users.py:475
+msgid "Pootle Registration"
+msgstr "Registre amb Pootle"
+
+#: users.py:122
+#: users.py:158
+msgid "Your requested username"
+msgstr "El vostre nom d'usuari sol·licitat"
+
+#: users.py:125
+#: users.py:429
+msgid "You must supply a valid email address"
+msgstr "S'ha d'informar amb una adreça de correu electrònic vàlida"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "El vostre nom sencer"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "La vostra contrasenya desitjada"
+
+#: users.py:133
+#: users.py:189
+msgid "Confirm password"
+msgstr "Confirmeu la clau"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Entreu un altre cop la contrasenya per garantir que és correcte"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Activa el compte"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Si us plau, entreu els vostres detalls d'activació"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Activació del Compte de Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Codi d'activació"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "El codi d'activació que heu rebut"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Activa el compte"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opcions per: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Detalls personals"
+
+#: users.py:186
+msgid "Email"
+msgstr "Correu electrònic"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Configuració de la interfície de traducció"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Llengua de la interfície d'usuari"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Els meus projectes"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Els meus llenguatges"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Pàgina d'inici"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Llengua alternativa del text d'origen"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Cap"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Alçada de la finestra d'entrada (en línies)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Nombre de files en el mode de visualització"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Nombre de files en el mode de traducció"
+
+#: users.py:307
+msgid "Error"
+msgstr "Error"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Cal que sigueu administrador del lloc (siteadmin) per canviar usuaris"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Cal que el nom d'usuari sigui alfanumèric i que comenci per un caracter "
+"alfabètic."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Vostè (o algú altre) ha intentat registrar un compte amb el vostre nom "
+"d'usuari.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "No guardem la vostra contrasenya, tant sols un xifrat (hash) d'ella.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Si teniu algun problema amb el registre contacteu amb %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Si teniu algun problema amb el registre contacteu amb l'administrador del "
+"lloc.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "El nom d'usuari ja existeix. S'enviarà un correu a l'adreça d'aquest usuari.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Procedint amb l'<a href='%s'>entrada</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "S'us ha creat un compte a Pootle emprant aquesta adreça de correu "
+"electrònic.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Per activar el vostre compte seguiu aquest enllaç:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"El vostre codi d'activació és:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Si no podeu seguir l'enllaç entreu el següent codi a la pàgina d'activació.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "S'us ha enviat aquest missatge per verificar que l'adreça de correu "
+"electrònic és correcte. Si no voleu registrar un compte només cal que "
+"ignoreu aquest missatge.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"S'ha creat el compte. S'us enviarà un correu amb els detalls per entrar i "
+"amb el codi d'activació. Entreu el vostre codi d'activació a la <a "
+"href='%s'>pàgina d'activació</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(O simplement feu clic a l'enllaç d'activació del correu)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "El vostre nom d'usuari és: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "La vostra contrasenya és: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "La vostrew adreça de correu registrada és: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Redirigint cap a la pàgina de registre..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Redirigint cap a la pàgina d'entrada..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "S'ha activa el vostre compte. Redirigint-vos cap a l'entrada..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "La informació d'activació no és vàlida."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Activació fallida"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "L'alçada ha de ser numèrica"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "L'amplada ha de ser numèrica"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "El nombre de files en mode de visualització ha de ser numèrica"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "El nombre de files en mode de traducció ha de ser numèrica"
+
+#~ msgid "Accept"
+#~ msgstr "Accepta"
+
+#~ msgid "Reject"
+#~ msgstr "Rebutja"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Projecte de traducció WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Més ample"
+
+#~ msgid "Narrow"
+#~ msgstr "Més estret"
+
+#~ msgid "Reset"
+#~ msgstr "Reinicia"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Ha de ser un adreça de correu electrònic vàlida"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Amplada de la finestra d'entrada (en caràcters)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> és un portal web simple que us permetrà "
+#~ "<strong>traduir</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "carpeta pare"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projectes</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d fitxers, %d/%d cadenes (%d%%) traduïdes"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "aquesta és una instal·lació d'exemple de pootle"
+
+#~ msgid "current folder"
+#~ msgstr "carpeta actual"
+
+#~ msgid "login status"
+#~ msgstr "estat de logueig"
+
+#~ msgid "project root"
+#~ msgstr "arrel del projecte"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "no teniu drets per suggerir canvis aquí"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "no teniu drets per canviar les traduccions aquí"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d cadenes (%d%%) traduïdes"
+
+#~ msgid "%d files, "
+#~ msgstr "%d fitxers,"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Llengües</h3>"
+
+#~ msgid "current file"
+#~ msgstr "fitxer actual"
+
+#~ msgid "not logged in"
+#~ msgstr "no esteu loguejat"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/cs/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/cs/jToolkit.po
new file mode 100644
index 0000000..c6602be
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/cs/jToolkit.po
@@ -0,0 +1,140 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-04-30 19:53+0200\n"
+"Last-Translator: Michal ÄŒihaÅ™ <michal@cihar.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+"X-Generator: Pootle 0.11\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Přihlášení do %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "UkonÄit tuto akci a zaÄít nové sezení"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Místo potvrzení této akce se odhlaÅ¡te a zaÄnÄ›te znovu"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "UkonÄit aplikaci"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "UkonÄit aplikaci a vrátit se k pÅ™edchozí aplikaci"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", prosím potvrÄte login"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Login"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Uživatelské jméno:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Heslo:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Jazyk:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Výběr aplikace"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Odhlášení"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Konec"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "přihlášen jako <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "nepodařilo se vytvořit nové sezení"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "odhlášen"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "připojen"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "ukonÄil nadÅ™azené sezení"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "je zapotřebí nadefinovat záznam users nebo userprefs v nastaveních serveru"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "uživatel neexistuje (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "chybné jméno uživatele a/nebo heslo"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "selhalo potvrzení loginu"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ne"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ano"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "odstranit"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(žádná příloha)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "příloha je příliš velká"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "odstranit tuto přílohu"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "obnovit"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "příloha byla odstraněna, pro její obnovení klikněte zde"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "připojit soubor"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/cs/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/cs/pootle.po
new file mode 100644
index 0000000..f405598
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/cs/pootle.po
@@ -0,0 +1,1405 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-29 20:10+0000\n"
+"Last-Translator: Jiri Bergman <jiri.bergman@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Ukázka Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Domov"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Uživatelé"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Jazyky"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekty"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Obecné možnosti"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Možnosti"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "SouÄasná hodnota"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Uložit změny"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Nadpis"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Popis"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Základní URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Domovská stránka"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Administrátorská stránka jazyků"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Hlavní administrátorská stránka"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO kód"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Celé jméno"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(přidejte zde jazyk)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Speciální znaky"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(speciální znaky)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "PoÄet množných tvarů"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(poÄet množných tvarů)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Rovnice množných tvarů"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(rovnice množných tvarů)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Odebrat jazyk"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Odebrat %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Administrátorská stránka projektů"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Kód projektu"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(přidejte zde projekt)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Popis projektu"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(popis projektu)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Styl znaÄení"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "typ souboru"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Vytvořit MO soubory"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Odebrat projekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Administrátorská stránka uživatelů"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Uživatelské jméno"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(zde vložit celé jméno)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Emailová adresa"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(zde vložit emailovou adresu)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Heslo"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(zde vložit heslo)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktivováno"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktivovat nového uživatele"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Odebrat uživatele"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Návrat na hlavní stránku"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Existující jazyky"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Aktualizovat jazyky"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Správce Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Nemáte právo spravovat tento projektu."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Aktualizovat z Å¡ablon"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Přidat jazyk"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Správce Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Hlavní stránka projektu"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Nelze nastavit práva pro uživatele %s - takový uživatel neexistuje"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Toto je projekt ve stylu GNU (jeden adresář, pro každý jazyk soubor po něm "
+"pojmenovaný)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Toto je standartní projekt (jeden adresář pro každý jazyk)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Uživatelská práva"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(vybrat uživatele pro přidání)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Práva"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Odstranit"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Aktualizovat práva"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "O programu Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> je jednoduchý webový portál, který umožní "
+"<strong>překládat</strong>! Díky tomu, že Pootle je <strong>zdarma</strong>, "
+"můžete jej stáhnout a spustit si vlastní kopii. Můžete také mnoha cestami "
+"přispět k vývoji (a nemusíte umět programovat)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Projekt Pootle je hostovaný na <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>, kde "
+"naleznete podrobnosti o zdrojovém kódu, mailing listech, atd."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Jméno je zkratka z anglického <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, ale možná si budete "
+"chtít pÅ™eÄíst <a href=\"http://www.thechestnut.com/flumps.htm\">toto</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Verze"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Tyto stránky používají:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (na %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Uživatelská stránka pro: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Změnit možnosti"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Správa stránky"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Spravovat"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Rychlé odkazy"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Klikněte, prosím, na 'Změnit možnosti' a zvolte jazyky a projekty"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekt, průměrně %d%% přeloženo"
+msgstr[1] "%d projektů, průměrně %d%% přeloženo"
+msgstr[2] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Správce"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Kód jazyka"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Název jazyka"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d jazyk, průměrně %d%% přeloženo"
+msgstr[1] "%d jazyků, průměrně %d%% přeloženo"
+msgstr[2] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Jazyk"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekt %s, Jazyk %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Vyhledat"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Rozšíření vyhledávání"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Není možné nahrát soubor, žádný soubor nepřiložen"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Je možné nahrát pouze PO soubory nebo zip archivy obsahující PO soubory"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Přiřadit řetězce"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Přiřadit akci"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Přiřadit uživatele"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "cíle"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Zadat jméno cíle"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Přidat cíl"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Nahrát soubor"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Vybrat soubor k nahrání"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Přepsat"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Přepsat aktuální soubor pokud existuje"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "SlouÄit"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "SlouÄit s aktuálním souborem a z konfliktů vytvoÅ™it návrhy"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Není cílem"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Přidat uživatele"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO soubor"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF soubor"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts soubor"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV soubor"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO soubor"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Aktualizovat"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Provést"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Všechny řetězce"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Nepřeloženo"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Nepřiřazeno"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Nepřiřazeno a nepřeloženo"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Nastavit cíl"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Vybrat více"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Přiřadit k"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Ukázat editaÄní funkce"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Ukázat statistiky"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Ukázat stopy"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Skrýt stopy"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Ukázat kontroly"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Skrýt kontroly"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Ukázat cíle"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Skrýt cíle"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Ukázat přiřazení"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Skrýt přiřazení"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Všechny cíle: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Přeložit mé řetězce"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Zobrazit mé řetězce"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nebyly vám přiřazeny žádné řetězce"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Rychle přeložit mé řetězce"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nebyly vám přiřazeny žádné nepřeložené řetězce"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Projít návrhy"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Zobrazit návrhy"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Rychle přeložit"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Zobrazit nepřeložené"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Žádné nepřeložené položky"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Přeložit vše"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP cíle"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP adresáře"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Vytvořit SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d řetězec (%d%%) selhal"
+msgstr[1] "%d řetězce (%d%%) selhaly"
+msgstr[2] "%d řetězců (%d%%) selhalo"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d%d slov (%d%%) přiřazeno"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d%d řetězců] "
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d slov (%d%%) přeloženo"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "VÅ¡echny projekty"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "VÅ¡echny jazyky"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Můj úÄet"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumentace a nápověda"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Odhlásit"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Přihlásit"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registrovat"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktivovat"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "O tomto Pootle serveru"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Všechny cíle"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d souborů"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d soubor"
+msgstr[1] "%d soubory"
+msgstr[2] "%d souborů"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d textů"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Jméno"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Přeloženo"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Přeloženo procent"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Přeloženo slov"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Nejasných"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Nejasných procent"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Nejasných slov"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Nepřeloženo procent"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Nepřeloženo slov"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Celkem"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Celkem slov"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graf"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Zdrojový text"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Cílový text"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Komentáře"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Umístění"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Přihlášení selhalo."
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Přesměrování na přihlášení..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Pro přístup na Domovskou stránku se musíte přihlásit"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Osobní údaje byly aktualizovány."
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Pro přístup k administraci se musíte přihlásit"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Přesměrovávám na domov..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Nemáte oprávnění pro administraci pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Zobrazit"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Navrhnout"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Přeložit"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Zkontrolovat"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archivovat"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompilovat PO sobory"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Přiřadit"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Nemůžete odstranit uživatele \"nobody\" nebo \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Nemáte oprávnění pro změnu cílů"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Nemáte oprávnění pro nahrání souboru"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Nemáte oprávnění pro přepsání souborů"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Nemáte oprávnění pro nahrání nového souboru"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Nemáte oprávnění pro aktualizaci souboru"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Nemáte oprávnění pro commit souboru"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Nemáte oprávnění pro změnu přiřazení"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Nemáte oprávnění pro změnu překladu"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Nemáte oprávnění pro navrhování překladu"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Nemáte oprávnění pro schvalování překladu"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d přeloženo\n"
+"(%d prázdných, %d nejasných)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: překládám %s do %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Původní"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Překlad"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Akceptovat návrh"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Odmítnout návrh"
+
+# poznámky vývojáře
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "poznámky překladatele"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "poznámky vývojáře"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Související"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Pracuji..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Chyba: něco je špatně."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Konec textů"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klikněte zde pro návrat na seznam"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "ZaÄátek"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Předchozích %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Položky %d až %d z %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Následujících %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Konec"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "kontroluji %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Žádné položky neodpovídají vyhledávanému textu ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "UkonÄili jste procházení zvolených položek"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Jednotné Äíslo"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Množné Äíslo"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Upravit"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopírovat"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "PÅ™eskoÄit"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Zpět"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Odeslat"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Zvýšit"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Snížit"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Množný tvar %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Překlad není možným, protože pro váš jazyk nejsou definovány množné tvary. "
+"Prosím kontaktujte administrátora."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Aktuální překlad:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Návrh %d od %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Návrh %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Návrh od %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Návrh:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Musíte zadat platné heslo o délce nejméně %d znaků."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Heslo není stejné jako jeho potvrzení."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Přihlásit se do Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Jméno:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Heslo:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Jazyk:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Přihlášení"
+
+#: users.py:77
+msgid "Default"
+msgstr "Výchozí"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Prosím vyplňte detaily registrace"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Registrace do Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Požadované uživatelské jméno"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Musíte zadat platnou emailovou adresu"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Vaše celé jméno"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Požadované heslo"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "PotvrÄte heslo"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Zadejte heslo znovu, aby se předešlo překlepům"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "VytvoÅ™it úÄet"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Prosím zadejte detaily pro aktivaci"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Aktivace úÄtu Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "AktivaÄní kód"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "AktivaÄní kód, který vám pÅ™iÅ¡el"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktivovat úÄet"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Možnosti pro: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Osobní detaily"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Nastavení rozhraní překladu"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Jazyk rozhraní"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Moje projekty"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Moje jazyky"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Domovská stránka"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternativní zdroj jazyka"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Žádný"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Výška vstupu (v řádcích)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "PoÄet řádků pÅ™i prohlížení"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "PoÄet řádků pÅ™i pÅ™ekládání"
+
+#: users.py:307
+msgid "Error"
+msgstr "Chyba"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Musíte být administrátor, aby bylo možno měnit uživatele"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Jméno se musí skládat z Äíslic a písmen a musí zaÄínat písmenem."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Vy (nebo nÄ›kdo jiný) se pokusil zaregistrovat úÄet s vaším jménem.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Vaše heslo není uloženo, pouze jeho hash."
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Máte-li problém s registrací, kontaktujte prosím %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Máte-li problém s registrací, kontaktujte prosím správce serveru.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Takové uživatelské jméno již existuje. Bude odeslána zpráva na registrovanou "
+"emailovou adresu.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "PokraÄuji na <a href='%s'>pÅ™ihlášení</a>"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "ÚÄet u Pootlu byl pro vás vytvoÅ™en použitím této emailové adresy.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Pro založení úÄtu kliknÄ›te na následující odkaz:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Váš aktivaÄní kód je:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "PokuÄ nemůžete pokraÄovat na odkaz, prosím zadejte kód nahoÅ™e na aktivaÄní "
+"stránku.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Tato zpráva byla poslána aby potvrdila že emailová adresa je správná. PokuÄ "
+"jste nechchtÄ›l(a) zaregistrovat uÄet, můžete jednoduÅ¡e ignorovat zprávu.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"ÚÄet vytvoÅ™en. Budou vám odeslány pÅ™ihlaÅ¡ovací detaily a aktivaÄní kód. "
+"Prosím vložte váš aktivaÄní kód na <a href='%s'>aktivaÄní stránce</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Nebo jednoduÅ¡e kliknÄ›te na aktivaÄní odkaz v emailu.)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Vaše uživatelské jméno je: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Vaše heslo je: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Vaše registrovaná emailová adresa je: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "PÅ™esmÄ›rování na RegistraÄní stránku..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Přesměrování na Přihlašovací stránku..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Váš úÄet byl zřízen. PÅ™esmÄ›rování na pÅ™ihlaÅ¡ovací stránku..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Informace pro zřízení úÄtu jsou neplatné."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Zřízení úÄtu selhalo."
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Výška inputu musí být Äíslo."
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Šířka inputu musí být Äíslo."
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "PoÄet zobrazených řádků v zobrazovacím režimu musí být Äíslo."
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "PoÄet zobrazených řádků v pÅ™ekladovém režimu musí být Äíslo."
+
+#~ msgid "Accept"
+#~ msgstr "Přijmout"
+
+#~ msgid "Reject"
+#~ msgstr "Odmítnout"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge, projekt pro překlady"
+
+#~ msgid "Broaden"
+#~ msgstr "Rozšířit"
+
+#~ msgid "Narrow"
+#~ msgstr "Zůžit"
+
+#~ msgid "Reset"
+#~ msgstr "Původní"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Musí být zadána platná emailová adresa"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Šířka vstupu (ve znacích)"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/da/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/da/jToolkit.po
new file mode 100644
index 0000000..fc072b7
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/da/jToolkit.po
@@ -0,0 +1,145 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-06-14 14:23+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Translate Toolkit 0.9rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Login for %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Fortryd denne handling og start en ny session"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"Log ud og start fra begyndelsen, i stedet for at bekræfte denne handling"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Forlad programmet"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Forlad dette program og gå tilbage til hoved-programmet"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", venligst bekræft login"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Login"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Brugernavn:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Password:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Sprog:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Vælg program"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Log ud"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Forlad"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "logget ind som <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "kunne ikke tilføje ny session"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "logget ud"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "forbindelse etableret"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "hoved-session forladt"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"behov for at definere brugernes eller brugerpræferencernes indgang på server "
+"konfiguration"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "bruger eksisterer ikke (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ugyldigt brugernavn og/eller kodeord"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "login bekræftigelse mislykkedes"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nej"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ja"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "fjern"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ingen vedhæftning)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "vedhæftet fil er for stor"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "fjern denne vedhæftning"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "genskab"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "denne vedhæftning er fjernet. klik her for at genskabe den"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "vedhæft en fil"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/da/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/da/pootle.po
new file mode 100644
index 0000000..ba5688b
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/da/pootle.po
@@ -0,0 +1,1455 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-05 17:21+0000\n"
+"Last-Translator: Aputsiaq Janussen <aj@isit.gl>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Hjem"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Brugere"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Sprog"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekter"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Generelle indstillinger"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Valgmulighed"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Nuværende værdi"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Gem ændringer"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titel"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Beskrivelse"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Base URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Hovedside"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle administrationsside for sprog"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Hovedsiden for administration"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO-kode"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Fuldt navn"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(tilføj sprog her)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Specialtegn"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(specialtegn)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Antallet af flertals"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(antallet af flertals)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Flertalsligning"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(flertalsligning)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Fjern sprog"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Fjern %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle projekt-administrationsside"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projektkode"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(tilføj projekt her)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projektbeskrivelse"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(projektbeskrivelse)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Stil-tjekker"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Filtype"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Opret MO Filer"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Fjern Projekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle bruger-administrationsside"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Brugernavn"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(tilføj fuldt navn her)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Email-adresse"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(tilføj email her)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Kodeord"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(tilføj kodeord her)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktiveret"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktivér ny bruger"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Fjern Bruger"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Tilbage til forside"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Eksisterende sprog"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Opdater sprog"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle administrator: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Du har ikke rettighederne til at administrere dette projekt."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Opdatér fra skabelon"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Tilføj sprog"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle administrator: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Projekt hovedside"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Kan ikke sætte rettigheder for brugernavnet %s - bruger eksisterer ikke"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Dette er et GNU-lignende projekt (et katalog, filer navngivet per sprog)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Dette er et standard-lignende projekt (et katalog per sprog)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Brugerrettigheder"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(vælg for at tilføje bruger)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Rettigheder"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Fjern"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Opdatér rettigheder"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Om Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> er en simpel web portal som skulle tillade dig at "
+"<strong>oversætte</strong>! Eftersom Pootle er <strong>Gratis "
+"Software</strong>, så kan du downloade og køre din egen kopi efter ønske. Du "
+"kan også hjælpe ved at deltage i udviklingen på mange måder (du skal ikke "
+"nødvendigvis kunne programmere)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Selve Pootle-projektet har værtsside på <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>, hvor "
+"du kan find detaljer om kildekoden, mailinglister osv."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Navnet står for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, men du vil måske have behov for at <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">læse dette.</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versioner"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Dette site kører:<br />Pootle %s<br />Oversættelse værktøjssæt %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (på %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Brugerside for: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Skift indstillinger"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Admininstrationsside"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrér"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Hurtiglinks"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Venligst klik på 'Skift indstillinger' og vælg nogle sprog og projekter"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekt, gennemsnitlig %d%% oversat"
+msgstr[1] "%d projekter, gennemsnitlig %d%% oversat"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Sprog Kode"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Sprog"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d sprog, gennemsnitlig %d%% oversat"
+msgstr[1] "%d sprog, gennemsnitlig %d%% oversat"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Sprog"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekt %s, Sprog %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Søg"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Avanceret søgning"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Kan ikke uploade fil, ingen fil vedhæftet"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Kan kun uploade PO-filer and zippede PO-filer"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Tildel tekststrenge"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Tildel handling"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Tildel til bruger"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "mål"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Indtast mål-navn"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Tilføj mål"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Send fil"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Vælg fil som skal sendes"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Overskriv"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Overskriv den nuværende fil hvis den findes"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Sammenkør"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Sammenkør filen med den nuværende fil og lav konflikter om til forslag"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ikke i et mål"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Tilføj bruger"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO-fil"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF fil"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt.ts fil"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV-fil"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO-fil"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Opdatér"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Commit"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Alle tekststrenge"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Ikke oversat"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ikke tildelt"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ikke tildelt eller ikke oversat"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Sæt mål"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Vælg flere ad gangen"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Tildel til"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Vis redigeringsfunktioner"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Vis statistik"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Vis spor"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Skjul spor"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Vis afkrydsninger"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Skjul afkrydsninger"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Vis mål"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Skjul mål"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Vis tildelinger"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Skjul tildelinger"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Alle mål: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Oversæt mine tekststrenge"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Vis mine tekststrenge"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Ingen tekststrenge tildelt til dig"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Hurtig oversæt mine tekststrenge"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Ingen ikke-oversatte tekststrenge tildelt til dig"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Review forslag"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Vis forslag"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Hurtigoversættelse"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Vis ikke-oversatte"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ingen oversatte elementer"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Oversæt alle"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP af mål"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP af mappe"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Skab SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d streng (%d%%) fejlede"
+msgstr[1] "%d strenge (%d%%) fejlede"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d ord (%d%%) tildelt"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d tekststrenge]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d ord (%d%%) oversat"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Alle projekter"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Alle sprog"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Min konto"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dok. & hjælp"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Log ud"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Login"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registrér"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktivér"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle Logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Om denne Pootle-server"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Alle mål"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d filer"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fil"
+msgstr[1] "%d filer"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d strenge"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Navn"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Oversat"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Procenttal for oversættelser"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Oversatte ord"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Uklar"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Uklar procenttal"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Uklare ord"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Ikke oversat procenttal"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Ikke oversatte ord"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Ialt"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Ord ialt"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graf"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Kildetekst"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "MÃ¥ltekst"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Kommentarer"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Lokationer"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Login mislykkedes"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Omdiriger til log ind..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Log ind for at få adgang til hjemme siden"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Personlige detaljer opdateret"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Log ind for at få adgang til administartor siden"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Omdiriger til hjem..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Du har ikke rettigheder til at administrere pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Vis"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Foreslå"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Oversæt"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Vurdering"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arkiv"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompilér PO-filer"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Tildel"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Du kan ikke fjerne \"nobody\" eller \"default\" brugeren"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Du har ikke rettigheder til at ændre målene her"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Du har ikke rettigheder til at oploade filer her"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Du har ikke rettigheder til at overskrive filer her"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Du har ikke rettigheder til at oploade nye filer her"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Du har ikke rettigheder til at opdatere filer her"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Du har ikke rettigheder til at commit'e filer her"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Du har ikke rettigheder til at ændre tildelinger her"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Du har ikke rettigheder til at ændre oversættelser her"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Du har ikke rettigheder til at foreslå ændringer her"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Du har ikke rettigheder til at reviewe foreslag her"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d oversatte\n"
+"(%d ikke-oversatte, %d uklare)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: oversætter %s til %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Oversættelse"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Acceptér forslag"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Afvis forslag"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Oversætters kommentar"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Udviklers kommentar"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Relateret"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Arbejder..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Fejl: Noget gik galt."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Slutningen af skript"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klik her for at returnere til indekset"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Start"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Forrige %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Elementer %d til %d af %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Næste %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Slut"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "tjekker %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Der er ingen elementer som matcher søgningen ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Du har afsluttet gennemgangen af de elementer du valgte"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Ental"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Flertal"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Rediger"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopier"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Spring over"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Tilbage"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Send"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Forøg"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Mindsk"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Flertalsform %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Oversættelse er ikke mulig, da information vedrørende flertalsendelser for "
+"dit sprog ikke er tilgængeligt. Kontakt venligst sidens administrator."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Nuværende oversættelse:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Forslag %d af %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Forslag %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Forslag af %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Forslag:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Du skal bruge et gyldigt kodeord på mindst %d tegn."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Kodeordet er ikke det samme som konfirmationen."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Login på Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Brugernavn:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Kodeord:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Sprog:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Login"
+
+#: users.py:77
+msgid "Default"
+msgstr "standard"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Venligst indtast dine registrerings-detaljer"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle-registrering"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Dit forespurgte brugernavn"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Du skal give en gyldig email-adresse"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Dit fulde navn"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Dit ønskede kodeord"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Bekræft kodeord"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Skriv dit kodeord igen for at sikre at det er indtastet korrekt"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Register konto"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Venligst indtast din aktiveringsdetaljer"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle konto-aktivering"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktiveringskode"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Aktiveringskoden som du modtog"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktiver konto"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Indstillinger for: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Personlige detaljer"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Oversættelsesgrænseflade konfiguration"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Brugergrænseflade sprog"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mine projekter"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mine sprog"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Hjemmeside"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternativ kildesprog"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Ingen"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Input højde (i linier)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Antal rækker i visningstilstand"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Antal rækker i oversættelsestilstand"
+
+#: users.py:307
+msgid "Error"
+msgstr "Fejl"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Du skal være sideadministrator for at ændre brugerne"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Brugernavn skal være alfanumerisk, og skal starte med et tegn fra alfabetet."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Du (eller en anden) forsøgte at registrere en konto med dit brugernavn.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Vi lagrer ikke dit aktuelle kodeord men alene et hash af det.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Hvis du har et problem med registreringen, kontakt venligst %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "If du har et problem med registreringen, kontakt venligst sidens "
+"administrator.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Brugernavnet eksisterer allerede. En email vil blive sendt til den "
+"registrerede email-adresse.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Forsætter til <a href='%s'>login</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "En Pootle-konto er oprettet til dig med denne email-adresse.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "For at aktivere din konto, følg dette link:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Din aktiveringskode er:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Hvis du ikke er i stanad til at følge linket, så indtast venligst den "
+"ovenstående kode på aktiveringssiden.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Denne besked er sendt for at verificere at email-adressen faktisk er "
+"korrekt. Hvis du ikke ønsker at registrere en konto, så kan du blot ignorere "
+"denne besked.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Konto oprettet. Du vil få emailet login-detaljer og en aktiveringskode. "
+"Venligst indtast din aktiveringskode på <a href='%s'>aktiveringssiden</a>"
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Eller klik blot på aktiverings-linket i emailen)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Dit brugernavn er: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Dit kodeord er: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Din registrerede email-adresse er: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Omdirigering til registerings siden..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Omdirigering til log ind siden..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Din konto er blevet aktiveret! Omdirigering til log ind..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Aktiverings-informationen var ikke gyldig."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktiveringen fejlede"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Input højde skal være numerisk"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Input bredde skal være numerisk"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Antallet af rækker vist i visningstilstand skal være numerisk"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Antallet af rækker vist i oversættelsestilstand skal være et numerisk"
+
+#~ msgid "Accept"
+#~ msgstr "Godkend"
+
+#~ msgid "Reject"
+#~ msgstr "Afvis"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge Oversættelsesprojekt"
+
+#~ msgid "Broaden"
+#~ msgstr "Udbred"
+
+#~ msgid "Narrow"
+#~ msgstr "Smal"
+
+#~ msgid "Reset"
+#~ msgstr "Nulstil"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Skal være en valid email-adresse"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Input bredde (i tegn)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pootle Administrationsside"
+
+#~ msgid "(checker style)"
+#~ msgstr "(stil-tjekker)"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Du har ikke rettighederne til at administrere Pootle."
+
+#~ msgid "%s project"
+#~ msgstr "%s projekt"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d filer, %d/%d tekststrenge (%d%%) oversat"
+
+#~ msgid "%s language"
+#~ msgstr "%s sprog"
+
+#~ msgid "%d files, "
+#~ msgstr "%d filer,"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d tekststrenge (%d%%) oversatte"
+
+#~ msgid "%d strings (%d%%) assigned"
+#~ msgstr "%d tekststrenge (%d%%) tildelte"
+
+#~ msgid "not logged in"
+#~ msgstr "ikke logget ind"
+
+#~ msgid "Log In"
+#~ msgstr "Log ind"
+
+#~ msgid "current folder"
+#~ msgstr "aktuelle mappe"
+
+#~ msgid "current file"
+#~ msgstr "nuværende fil"
+
+#~ msgid "suggest"
+#~ msgstr "foreslå"
+
+#~ msgid "Input Width"
+#~ msgstr "Input bredde"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/de/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/de/jToolkit.po
new file mode 100644
index 0000000..9840917
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/de/jToolkit.po
@@ -0,0 +1,149 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-01-08 20:22+0100\n"
+"Last-Translator: Kristina Knaack <Kristina.Knaack@gmx.net>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.0.2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Anmeldung für %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Abbruch dieser Aktion und Start einer neuen Sitzung"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Anstatt diese Aktion zu bestätigen, abmelden und von vorne anfangen"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Anwendung beenden"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+"Beenden Sie diese Anwendung und kehren Sie zur übergeordneten Anwendung "
+"zurück"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", bitte Anmeldung bestätigen"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Anmeldung"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Benutzername:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Passwort:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Sprache:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Anwendung wählen"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Abmeldung"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Ende"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "angemeldet als <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "konnte neue Sitzung nicht hinzufügen"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "abgemeldet"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "verbunden"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "übergeordnete Sitzung beendet"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"Eintrag für Benutzer oder Benutzereinstellungen muss in der "
+"Serverkonfiguration definiert werden"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "Benutzer nicht vorhanden (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ungültiger Benutzername und/oder Passwort"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "Anmeldebestätigung fehlgeschlagen"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nein"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ja"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "entfernen"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(kein Anhang)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "Anhang ist zu groß"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "diesen Anhang entfernen"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "wiederherstellen"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+"Dieser Anhang wurde entfernt. Klicken Sie hier um ihn wiederherzustellen"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "eine Datei anhängen"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "Benutzereintrag muss in der Serverkonfiguration definiert werden"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/de/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/de/pootle.po
new file mode 100644
index 0000000..437576a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/de/pootle.po
@@ -0,0 +1,1504 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-31 08:27+0000\n"
+"Last-Translator: Robert Förster <Dessa@gmake.de>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle-Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Hauptseite"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Benutzer"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Sprachen"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekte"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Allgemeine Einstellungen"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Einstellung"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Aktueller Wert"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Änderungen speichern"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titel"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Beschreibung"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Basis URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Hauptseite"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Verwaltungsseite für Pootle-Sprachen"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Administration"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO Code"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Voller Name"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(hier Sprache hinzufügen)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Sonderzeichen"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(Sonderzeichen)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Anzahl der Pluralformen"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(Anzahl der Pluralformen)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Plural-Vergleich"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(Plural-Vergleich)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Sprache löschen"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s entfernen"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Verwaltungsseite für Pootle-Projekte"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projekt-Code"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(Projekt hier hinzufügen)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projekt-Beschreibung"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(Projekt-Beschreibung)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Überprüfungs-Stil"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Dateiformat"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO-Dateien erstellen"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Projekt löschen"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle-Benutzerverwaltungs-Seite"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Benutzername"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(hier Ihren vollen Namen hinzufügen)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "E-Mail-Adresse"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(E-Mail-Adresse hier hinzufügen)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Passwort"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(Passwort hier hinzufügen)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktiviert"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Neuen Benutzer aktivieren"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Benutzer löschen"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Zurück zur Hauptseite"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Vorhandene Sprachen"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Sprachen aktualisieren"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle-Administrator: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Sie haben nicht die Rechte, dieses Projekt zu administrieren."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Von den Vorlagen aktualisieren"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Sprache hinzufügen"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle-Administrator: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Projekt-Webseite"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Kann die Rechte für den Benutzernamen %s nicht einstellen - Benutzer ist "
+"nicht vorhanden"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Dies ist ein GNU-Stil-Projekt (ein Verzeichnis, Dateien nach der jeweiligen "
+"Sprache benannt)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Dies iat ein Standard-Stil-Projekt (ein Verzeichnis pro Sprache)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Benutzer-Rechte"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(auswählen um Benutzer hinzuzufügen)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Rechte"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Entfernen"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Rechte aktualisieren"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Ãœber Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> ist ein einfaches Web-Portal zum "
+"<strong>Ãœbersetzen</strong>!<br /><br />Da Pootle <strong>Freie "
+"Software</strong> ist, können Sie diese herunterladen und Ihre eigene Kopie "
+"nutzen wenn Sie wollen. Auch können Sie bei der Entwicklung auf verschiedene "
+"Weise mithelfen (Sie müssen dazu nicht programmieren können)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Das Pootle-Projekt selbst ist bei <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"zuhause, wo Sie mehr über den Quellcode, Mailing-Listen usw. erfahren "
+"können."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Pootle steht für <b>PO</b>-based<b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine (= PO-basierte Online-Ãœbersetzungs"
+"-/Lokalisierungs-Maschine), aber Sie sollten vielleicht <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">dies</a> lesen."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versionen"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Diese Seite benutzt:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Python %s (auf %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Nutzer-Seite für: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Einstellungen ändern"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Verwaltungsseite"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Verwalten"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Schnell-Verweise"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Bitte klicken Sie auf 'Einstellungen ändern' und wählen Sie Sprachen und "
+"Projekte aus"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d Projekt, durchschnittlich %d%% übersetzt"
+msgstr[1] "%d Projekte, durchschnittlich %d%% übersetzt"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administrator"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Sprach-Code"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Name der Sprache"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d Sprache, durchschnittlich %d%% übersetzt"
+msgstr[1] "%d Sprachen, durchschnittlich %d%% übersetzt"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Sprache"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekt %s, Sprache %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Suche"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Erweiterte Suche"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Kann die Datei nicht hochladen, keine Datei angehängt"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+"Es können nur PO-Dateien und ZIP-Dateien von PO-Dateien hochgeladen werden"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Zeichenketten zuweisen"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Aktion zuweisen"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "dem Benutzer zuweisen"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "Ziel"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Zielnamen eingeben"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Ziel hinzufügen"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Datei hochladen"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Datei zum Hochladen auswählen"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Ãœberschreiben"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Datei überschreiben, falls eine gleichnamige bereits exisitiert"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Zusammenführen"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Führe die Datei mit der aktuellen Version zusammen und verwandle alle "
+"Konflikte in Vorschläge"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Nicht im Ziel"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Nutzer hinzufügen"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO-Datei"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF-Datei"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "\"Qt .ts\"-Datei"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV-Datei"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO-Datei"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Aktualisieren"
+
+# Direct translations: "transfer", "transmit", "convey"
+# This should be more appropriate for "commit", than "Bestätigen" (the previous value - it means: "approve").
+# It is used by svn and tortoisesvn as the german translation of "commit".
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Ãœbertragen"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Alle Zeichenketten"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Nicht übersetzt"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Nicht zugeordnet"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Weder übersetzt noch zugeordnet"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Ziel einstellen"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Mehrere auswählen"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Zuordnen zu"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Bearbeitungsfunktionen anzeigen"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Statistik anzeigen"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Pfade anzeigen"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Pfade verstecken"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Zeige zu Überprüfende"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "zu Überprüfende ausblenden"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Ziele anzeigen"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Ziele ausblenden"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Zuordnungen anzeigen"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Zuordnungen verstecken"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Alle Ziele: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Meine Zeichenketten übersetzen"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Meine Zeichenketten ansehen"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Ihnen wurden keine Zeichenketten zugewiesen"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Meine Zeichenketten schnell übersetzen"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Ihnen wurden keine nicht übersetzte Zeichenketten zugewiesen"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Vorschläge durchsehen"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Vorschläge anzeigen"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Schnellübersetzung"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Nicht übersetzte anzeigen"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Es sind keine nicht übersetzten Elemente vorhanden"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Alles übersetzen"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP-Datei des/der Ziels/e"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP-Datei des Ordners"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF erstellen"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d Zeichenkette (%d%%) fehlerhaft"
+msgstr[1] "%d Zeichenketten (%d%%) fehlerhaft"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d Wörter (%d%%) zugewiesen"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d Zeichenketten]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d Wörter (%d%%) übersetzt"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Alle Projekte"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Alle Sprachen"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mein Pootle"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumente & Hilfe"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Abmelden"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Login"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registrieren"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktivieren"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle Logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Ãœber diesen Pootle-Server"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Alle Ziele"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d Dateien"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d Datei"
+msgstr[1] "%d Dateien"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d Zeichenketten"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Name"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Ãœbersetzt"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Prozent übersetzt"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Übersetzte Wörter"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "fraglich"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "fraglich Prozent"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "fragliche Wörter"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Nicht übersetzt Prozent"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Nicht übersetzte Wörter"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Gesamt"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Wörter gesamt"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graph"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Quelltext"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Zieltext"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Kommentare"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Orte"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Login fehlgeschlagen"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Weiterleiten zum Login..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Sie müssen sich erst einloggen, um auf die Seite zuzugreifen"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Persönliche Daten aktualisiert"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+"Sie müssen sich erst einloggen, um auf die Administrationsseite zuzugreifen"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Weiterleitung zur Hauptseite..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Sie haben nicht die Rechte, Pootle zu verwalten."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Ansehen"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Vorschlagen"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Ãœbersetzen"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Durchsehen"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archiv"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO-Dateien kompilieren"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Zuweisen"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+"Sie können den \"nobody\"- (niemand) oder den \"default\"- (Standard) Benutzer "
+"nicht entfernen"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Sie haben keine Berechtigung hier Ziele zu ändern"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Sie haben keine Berechtigung hier Dateien hochzuladen"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Sie haben keine Berechtigung hier Dateien zu Ãœberschreiben"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Sie haben keine Berechtigung hier neue Dateien hochzuladen"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Sie haben keine Berechtigung hier Dateien zu aktualisieren"
+
+# "commit" -> "übertragen" (transfer, transmit, convey)
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Sie haben keine Berechtigung hier Dateien zu übertragen"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Sie haben keine Berechtigung hier Zuweisungen zu ändern"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Sie haben keine Berechtigung hier Übersetzungen zu ändern"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Sie haben keine Berechtigung hier Änderungen vorzuschlagen"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Sie haben keine Berechtigung hier Vorschläge durchzusehen"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d übersetzt\n"
+"(%d fehlen, %d fraglich)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: Ãœbersetze %s nach %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Ãœbersetzung"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Vorschlag annehmen"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Vorschlag ablehnen"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Anmerkungen des Ãœbersetzers"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Anmerkungen des Entwicklers"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Verwandt"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Arbeite..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Fehler: Irgendetwas ist schiefgegangen."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Ende des Stapels"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Zurück zur Übersicht"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Start"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Vorige %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Elemente %d bis %d von %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Nächste %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Ende"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "überprüfe %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Es gibt keine Einträge, die zu dieser Suche passen ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Sie haben alle markierten Elemente durchgesehen"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Einzahl"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Mehrzahl"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Bearbeiten"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopieren"
+
+# the previous translation was "Weiter". It means "continue" or "forward".
+# "Ãœberspringen" means "skip", "leave out" or "omit".
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Ãœberspringen"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Zurück"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Senden"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "größer"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "kleiner"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Plural-Form %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Übersetzung nicht möglich, weil für Ihre Sprache keine Plural-Information "
+"verfügbar ist. Bitte kontaktieren Sie den Webadministrator."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Aktuelle Ãœbersetzung:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Vorschlag %d von %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Vorschlag %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Vorschlag von %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Vorschlag:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Bitte geben Sie ein gültiges Passwort mit min. %d Zeichen an."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Das Passwort stimmt nicht mit der Bestätigung überein."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "in Pootle einloggen"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Nutzername:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Passwort:"
+
+# previous translation was "Muttersprache" - that means "mother tongue".
+#: users.py:69
+msgid "Language:"
+msgstr "Sprache:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Login"
+
+#: users.py:77
+msgid "Default"
+msgstr "Standard"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Bitte geben Sie Einzelheiten zu Ihrer Registrierung ein"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle-Registrierung"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Ihr gewünschter Nutzername"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Geben Sie eine gültige Email-Adresse ein"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Ihr vollständiger Name"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Ihr gewünschtes Passwort"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Passwort bestätigen"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Wiederholen Sie Ihr Passwort, um sicherzugehen, dass die Schreibweise "
+"korrekt ist"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Konto registrieren"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Bitte geben Sie Einzelheiten zu Ihrer Aktivierung ein"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle Konto-Aktivierung"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktivierungscode"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Der Ihnen zugesandte Aktivierungscode"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Konto aktivieren"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Einstellungen für: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Persönliche Daten"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Konfiguration der Ãœbersetzungsschnittstelle"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Bediensprache von Pootle"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Meine Projekte"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Meine Sprachen"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Webseite"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternative Quellsprache"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Keine"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Höhe des Eingabefeldes (in Zeilen)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Zeilenanzahl im Anzeige-Modus"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Zeilenanzahl im Ãœbersetzungs-Modus"
+
+#: users.py:307
+msgid "Error"
+msgstr "Fehler"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Sie müssen Administrator sein, um Nutzer zu ändern"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Der Nutzername muss alphanumerisch sein und mit einem Buchstaben anfangen."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Sie (oder jemand anderes) hat versucht einen Account mit ihrem Benutzernamen "
+"zu erstellen.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Wir speichern nicht Ihr Passwort sondern nur den Hashwert.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Wenn Sie Probleme bei der Registrierung haben, kontaktieren Sie bitte %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Wenn Sie Probleme bei der Registrierung haben, kontaktieren Sie bitte den "
+"webmaster.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Der Nutzername ist schon vergeben. Eine Email wird an die registrierte "
+"Email-Adresse gesendet.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Fortfahren zum <a href='%s'>login</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Es wurde ein Pootle-Account mit dieser Email-Adresse erstellt.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Um Ihren Account zu aktivieren, folgen Sie diesem Link:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Ihr Aktivierungscode ist:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Wenn Sie dem Link nicht folgen können, geben Sie bitte den o.g. "
+"Aktivierungscode auf der Aktivierungsseite an.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Diese Nachricht wurde zur Verfikation Ihrer Emailadresse versendet. Wenn die "
+"Registrierung nicht von Ihnen beabsichtigt war, ignorieren Sie diese Email "
+"einfach.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Konto eingerichtet. Sie bekommen Ihre Login-Daten und einen Aktivierungscode "
+"zugesandt. Bitte bestätigen Sie diesen auf der <a "
+"href='%s'>Aktivierungsseite</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Oder klicken Sie einfach auf den Aktivierungslink in der Email)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Ihr Nutzername ist: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Ihr gewünschtes Passwort ist: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Ihre registrierte Email-Adresse ist: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Weiterleitung zur Registrierungs-Seite..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Weiterleitung zur Login-Seite..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Ihr Konto wurde aktiviert! Sie werden zum Login weitergeleitet..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Der eingegebene Aktivierungscode ist leider ungültig."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivierung fehlgeschlagen"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Eingabe-Höhe muss numerisch sein"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Eingabe-Breite muss numerisch sein"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Zeilenanzahl für den Anzeige-Modus muss numerisch sein"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Zeilenanzahl für den Übersetzungs-Modus muss numerisch sein"
+
+#~ msgid "Accept"
+#~ msgstr "Akzeptieren"
+
+#~ msgid "Reject"
+#~ msgstr "Ablehnen"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge Ãœbersetzungsprojekt"
+
+#~ msgid "Broaden"
+#~ msgstr "breiter"
+
+#~ msgid "Narrow"
+#~ msgstr "schmaler"
+
+#~ msgid "Reset"
+#~ msgstr "Zurücksetzen"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Es muss eine gültige Email-Adresse sein"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Breite des Eingabefeldes (in Zeichen)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> ist ein einfaches Webportal, das Ihnen "
+#~ "<strong>Übersetzungen</strong> ermöglicht!"
+
+#~ msgid "parent folder"
+#~ msgstr "übergeordneter Ordner"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projekte</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d Dateien, %d/%d Zeichenketten (%d%%) übersetzt"
+
+#~ msgid "%s language"
+#~ msgstr "%s Sprache"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "Dies ist eine Demo-Installation von Pootle"
+
+#~ msgid "current folder"
+#~ msgstr "aktueller Ordner"
+
+#~ msgid "Log In"
+#~ msgstr "Anmelden"
+
+#~ msgid "login status"
+#~ msgstr "Anmeldestatus"
+
+#~ msgid "project root"
+#~ msgstr "Projekthauptseite"
+
+#~ msgid "%s project"
+#~ msgstr "%s Projekt"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "Sie haben keine Rechte, hier Änderungen vorzuschlagen"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "Sie haben keine Rechte, hier Übersetzungen zu ändern"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d Zeichenketten (%d%%) übersetzt"
+
+#~ msgid "%d files, "
+#~ msgstr "%d Dateien, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Sprachen</h3>"
+
+#~ msgid "current file"
+#~ msgstr "aktuelle Datei"
+
+#~ msgid "not logged in"
+#~ msgstr "nicht angemeldet"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pootle-Administratorseite"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Sie haben keine Rechte zur Verwaltung von Pootle."
+
+#~ msgid "suggest"
+#~ msgstr "vorschlagen"
+
+#~ msgid "Input Width"
+#~ msgstr "Eingabe-Breite"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/dz/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/dz/jToolkit.po
new file mode 100644
index 0000000..23ca281
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/dz/jToolkit.po
@@ -0,0 +1,142 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"PO-Revision-Date: 2005-04-13 11:45-0500\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"Generated-By: pygettext.py 1.5\n"
+"Last-Translator: amdo lobsang <lobsang2008@yahoo.com.cn>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"POT-Creation-Date: Mon Mar 7 12:03:21 2005\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"MIME-Version: 1.0\n"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "ཞོར་གà½à½¼à½‚ས་ཡིག་ཆ་ཆེ་སོང་à¼"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ཞོར་གà½à½¼à½‚ས་ཡིག་ཆ་མེདà¼)"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "སྤོ་བà¼"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ཞོར་གà½à½¼à½‚ས་ཡིག་ཆ་སྤོ་བà¼"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "བསà¾à¾±à½¢à¼‹à½‚སོ་བྱེད་པà¼"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ཞོར་གà½à½¼à½‚ས་ཡིག་ཆ་སྤོ་ཚར་སོང་à¼à½‘ེ་ལ་མཛུབ་གནོན་བྱས་ནས་བསà¾à¾±à½¢à¼‹à½‚སོ་བྱེད་དགོསà¼"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ཡིག་ཆ་འདི་ཟུར་སྣོན་བྱེད་དགོསà¼"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "ནང་འཛུལ་ %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ལས་ཀ་འདི་ཕྱིར་འà½à½ºà½“་བྱས་ནས་གླིང་མོལ་གསར་པ་འགོ་འཛུགས་དགོསà¼"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ལས་ཀ་à½à½¦à¼‹à½£à½ºà½“་འདི་ཕྱིར་འབུད་ནས་དེ་མིན་ལས་ཀ་ཀྱིས་ཚབ་བྱེད་དགོསà¼"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "བེད་སྤྱོད་མཉེན་ཆས་ནས་ཕྱིར་འབུདà¼"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "བེད་སྤྱོད་མཉེན་ཆས་འདི་ནས་ཕྱིར་བུད་ནས་བེད་སྤྱོད་མཉེན་ཆས་གོང་མ་ནང་འཛུལ་དགོསà¼"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "ནང་འཛུལ་à½à½¦à¼‹à½£à½ºà½“་བྱེད་དགོསà¼"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ནང་འཛུལà¼"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "བཀོལ་མà½à½“་མིང་à¼"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "གསང་ཡིག"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "སà¾à½‘་རིགསà¼"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "བེད་སྤྱོད་མཉེན་ཆས་འདེམས་དགོསà¼"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "ཕྱིར་འབུདà¼"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "མཇུག་སྒྲིལà¼"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "ནང་འཛུལ་ནས་<b>%s</b>དང་འདྲà¼"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "གླིང་མོལ་གསར་པ་འགོ་འཛུགས་མི་à½à½´à½–à¼"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "ཕྱིར་འབུདà¼"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "འབྲེལ་མà½à½´à½‘་བྱས་པà¼"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "གླེང་མོལ་གོང་མ་རྫོགས་སོང་à¼"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "བཀོལ་མà½à½“་གà½à½“་འà½à½ºà½£à¼‹à½–ྱེབ་དགོས་ཡང་ན་རམ་འདེགས་ཆས་ནང་གི་བཀོལ་མà½à½“་སྡེབ་སྒྲིག་བྱེད་དགོསà¼"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "བཀོལ་མà½à½“་མེད་à¼"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "བེད་སྤྱོད་མེད་པའི་བཀོལ་མà½à½“་མིང་ཡང་ན་གསང་ཡིག"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "ནང་འཛུལ་à½à½¦à¼‹à½£à½ºà½“་བྱེད་à½à½´à½–་མ་སོང་à¼"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "རེདà¼"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "མ་རེདà¼"
+
diff --git a/Pootle-1.2.1/Pootle/po/pootle/dz/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/dz/pootle.po
new file mode 100644
index 0000000..32ef561
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/dz/pootle.po
@@ -0,0 +1,1438 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2005-04-13 09:18-0500\n"
+"Last-Translator: amdo lobsang <lobsang2008@yahoo.com.cn>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"X-Generator: Translate Toolkit 1.0.1\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle དཔེ་སྟོནà¼"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "སà¾à½‘་རིགསà¼"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "འཆར་གཞིà¼"
+
+#: adminpages.py:49
+#, fuzzy
+msgid "General options"
+msgstr "སྤྱིར་བà½à½„་གི་འདེམས་གསེསà¼"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "འདེམས་གསེསà¼"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "ད་ལྟའི་གྲངས་à½à½„་à¼"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "བཅོས་འགྱུར་ཉར་ཚགསà¼"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+#, fuzzy
+msgid "Home Page"
+msgstr "དབུ་ལྷེà¼"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISOཨང་སྒྲིག"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "མིང་ཆ་ཚང་à¼"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "དེ་ལ་སà¾à½‘་རིགས་à½à¼‹à½¦à¾£à½¼à½“་བྱེད་དགོསà¼"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+#, fuzzy
+msgid "Remove Language"
+msgstr "སà¾à½‘་རིགས་གསུབ་པà¼"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "གསུབ་པà¼"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "འཆར་གཞིའི་ཨང་སྒྲིག"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "དེ་ལ་འཆར་གཞི་à½à¼‹à½¦à¾£à½¼à½“་བྱེད་དགོསà¼"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "འཆར་གཞིའི་གསལ་བཤདà¼"
+
+#: adminpages.py:154
+#, fuzzy
+msgid "(project description)"
+msgstr "འཆར་གཞིའི་གསལ་བཤདà¼"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "དྲ་མིག་གི་རྣམ་པà¼"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+#, fuzzy
+msgid "Remove Project"
+msgstr "འཆར་གཞི་གསུབ་པà¼"
+
+#: adminpages.py:202
+#, fuzzy
+msgid "Pootle User Admin Page"
+msgstr "POOTLEཡི་དོ་དམ་ཤོག་ངོསà¼"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "སྤྱོད་མà½à½“་གྱི་མིང་à¼"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Email à½à¼‹à½¡à½²à½‚"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "གསང་ཡིག"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+#, fuzzy
+msgid "Activated"
+msgstr "སྒུལ་བà¼"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+#, fuzzy
+msgid "You do not have the rights to administer this project."
+msgstr "à½à¾±à½ºà½‘་རང་pootleལ་དོ་དམ་བྱེད་པའི་དབང་ཆ་མེདà¼"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "POOTLEསà¾à½¼à½¢à¼‹à½‚ྱིà¼"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> ནི་དྲ་ཚིགས་ཕྱོགས་ཀྱི་མཉེན་ཆས་ཆུང་ཆུང་ཞིག་ཡིན་ལ༠"
+"དེ་བེད་སྤྱོད་བྱས་ནས་ <strong>ཡིག་སྒྱུར་</strong>བྱས་མཆོག Pootle ནི་ "
+"<strong>དངུལ་སྤྲད་མི་དགོས་པའི་མཉེན་ཆས</strong>ཡིན་པས༠"
+"à½à¾±à½ºà½‘་ཀྱིས་་མར་ཕབ་་བྱས་ནས་སོ་སོའི་རྩིས་འà½à½¼à½¢à¼‹à½“ང་དུ་བླུག་མཆོག"
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle འཆར་གཞི་དྲ་ཚིགས་<a href=\"http://translate.sourceforge.net/\">translate"
+".sourceforge.net</a>སྟེང་དུ་ཡོད་ལ༠"
+"à½à¾±à½ºà½‘་ཀྱིས་་དེའི་སྟེང་ནས་གདོད་མའི་ཚབ་རྟགས་སོགས་གསལ་བོ་མà½à½¼à½„་à½à½´à½–à¼"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"མིང་འདིའི་ནང་དོན་ནི་ <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, འོན་ཀྱང་à½à¾±à½ºà½‘་རང་གིས་ <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">ཀློག་དགོསà¼</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "དྲ་ལྷེ་བེད་སྤྱོད་བྱས་པར: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "འདེམས་གསེས་བཅོས་འགྱུར་à¼"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "དོ་དམ་དྲ་ལྷེà¼"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "མྱུར་འགྲོས་འབྲེལ་མà½à½´à½‘à¼"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"\"འདེམས་གསེས་བཅོས་སྒྱུར་\"ལ་གཡས་རྡང་མཛུབ་གནོན་བྱས་ནས་སà¾à½‘་རིགས་དང་འཆར་གཞི་འདེམས"
+"་དགོསà¼"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "སà¾à½‘་རིགསà¼"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "བཤེར་འཚོལà¼"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "ཡིག་ཕྲེང་à½à½„་སྤྲད་བྱེད་པà¼"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "བྱ་སྤྱོད་བགོ་བཤའ་རྒྱག་པà¼"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "སྤྱོད་མà½à½“་ལ་བགོ་བཤའ་རྒྱག་པà¼"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "POཡིག་ཆà¼"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSVཡིག་ཆà¼"
+
+#: indexpage.py:748
+#, fuzzy
+msgid "MO file"
+msgstr "POཡིག་ཆà¼"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "ཞིབ་བཤེར་མངོན་པà¼"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "ཞིབ་བཤེར་སྦས་བà¼"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "à½à½„་སྤྲད་མངོན་པà¼"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "à½à½„་སྤྲད་སྦས་བà¼"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "བསམ་འཆར་བསà¾à¾±à½¢à¼‹à½žà½²à½–་བྱེད་པà¼"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "བསམ་འཆར་ལ་བལྟ་བà¼"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "མགྱོགས་མྱུར་ངང་སྒྱུར་བà¼"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "སྒྱུར་མེད་པ་ལ་བལྟ་བà¼"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "ཚང་མ་སྒྱུར་བà¼"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+#, fuzzy
+msgid "ZIP of folder"
+msgstr "གནོན་འà½à½´à½˜à¼‹à½…ན་གྱི་ཡིག་སྒྲོམà¼"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+#, fuzzy
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d ཡིག་ཕྲེང་ (%d%%) སྒྱུར་à½à½´à½–་མ་སོང་à¼"
+
+#: indexpage.py:1003
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d ཡིག་ཕྲེང་(%d%%) སྒྱུར་ཚརà¼"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d ཡིག་ཕྲེང་(%d%%) སྒྱུར་ཚརà¼"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+#, fuzzy
+msgid "Docs & help"
+msgstr "ཡིག་ཚགས/རོགས་རམà¼"
+
+#: pagelayout.py:34
+#, fuzzy
+msgid "Log out"
+msgstr "ཕྱིར་à½à½¼à½“à¼"
+
+#: pagelayout.py:35
+#, fuzzy
+msgid "Log in"
+msgstr "ནང་འཛུལà¼"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "à½à½¼à¼‹à½ à½‚ོདà¼"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "སྒུལ་བà¼"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Pootle རམ་འདེགས་ཆས་སà¾à½¼à½¢à¼‹à½£à¼"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr ""
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "à½à¾±à½ºà½‘་རང་pootleལ་དོ་དམ་བྱེད་པའི་དབང་ཆ་མེདà¼"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr ""
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+#, fuzzy
+msgid "You do not have rights to alter goals here"
+msgstr "à½à¾±à½ºà½‘་རང་འདིའི་བསམ་འཆར་བཅོས་སྒྱུར་བྱེད་པའི་དབང་ཆ་མེདà¼"
+
+#: projects.py:510
+#, fuzzy
+msgid "You do not have rights to upload files here"
+msgstr "à½à¾±à½ºà½‘་རང་འདིའི་བསམ་འཆར་བཅོས་སྒྱུར་བྱེད་པའི་དབང་ཆ་མེདà¼"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+#, fuzzy
+msgid "You do not have rights to update files here"
+msgstr "à½à¾±à½ºà½‘་རང་འདིའི་བསམ་འཆར་བཅོས་སྒྱུར་བྱེད་པའི་དབང་ཆ་མེདà¼"
+
+#: projects.py:555
+#, fuzzy
+msgid "You do not have rights to commit files here"
+msgstr "à½à¾±à½ºà½‘་རང་འདིའི་བསམ་འཆར་བཅོས་སྒྱུར་བྱེད་པའི་དབང་ཆ་མེདà¼"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+#, fuzzy
+msgid "You do not have rights to change translations here"
+msgstr "à½à¾±à½ºà½‘་རང་འདིའི་སྒྱུར་ཡིག་བཅོས་སྒྱུར་བྱེད་པའི་དབང་ཆ་མེདà¼"
+
+#: projects.py:1229
+#, fuzzy
+msgid "You do not have rights to suggest changes here"
+msgstr "à½à¾±à½ºà½‘་རང་འདིའི་བསམ་འཆར་བཅོས་སྒྱུར་བྱེད་པའི་དབང་ཆ་མེདà¼"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d སྒྱུར་ཚརà¼\n"
+"(%d སྟོང་པ༠%d རབ་རིབ)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "Pootle: %sསྒྱུར་ནས་%s:%s?"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "དོན་ཚན་%dསྒྱུར་ནས་�"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "དེའི་རྗེསà¼%d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "ཞིབ་སྡུར༠%s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "འདིར་བཤེར་འཚོལ་དང་མà½à½´à½“་པའི་དོན་ཚན་མེདà¼('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "à½à¾±à½ºà½‘་རང་འདེམས་པའི་དོན་ཚན་བལྟོས་ཚར་སོང་à¼"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "%sརྒྱུད་ནས་བསམ་འཆར་%dསྟོན་པà¼"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "བསམའཆར་%d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%sརྒྱུད་ནས་བསམ་འཆར་སྟོན་པà¼"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "བསམ་འཆརà¼"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Pootleནང་དུ་འཛུལ་བà¼"
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "སྤྱོད་མà½à½“་གྱི་མིང་à¼"
+
+#: users.py:68
+#, fuzzy
+msgid "Password:"
+msgstr "གསང་ཡིག"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "སà¾à½‘་རིགསà¼"
+
+#: users.py:71
+#, fuzzy
+msgid "Login"
+msgstr "ནང་འཛུལà¼"
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "à½à¾±à½ºà½‘་ཀྱི་à½à½¼à¼‹à¼‹à½žà½²à½–་ཕྲ་ངང་བླུག་རོགསà¼"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle བསམ་འཆརà¼"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "à½à¾±à½ºà½‘་རང་རེ་འབོད་བྱས་པའིསྤྱོད་མà½à½“་གྱི་མིང་à¼"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "à½à¾±à½ºà½‘་རང་རེ་འདུན་ཞུ་པའི་གསང་ཡིག"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "à½à¾±à½ºà½‘་རང་སྣེ་གཤིས་ཀྱི་ཞིབ་གནས་བླུག་རོགསà¼"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle ཀྱི་མིང་à½à½¼à¼‹à½¦à¾¤à¾±à½¼à½‘་ཆོག་བཟོ་བà¼"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "སྤྱོད་ཆོག་ཨང་སྒྲིག"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "à½à¾±à½ºà½‘་རང་ལག་འབྱོར་བྱུང་བའི་སྤྱོད་ཆོག་ཨང་སྒྲིག"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "མིང་à½à½¼à¼‹à½¦à¾¤à¾±à½¼à½‘་ཆོག་བཟོ་བà¼"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "འདེམས་གསེས་ལ༠%s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr "ངའི་འཆར་གཞིà¼"
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "སà¾à½‘་རིགསà¼"
+
+#: users.py:196
+msgid "Home page"
+msgstr "དབུ་ལྷེà¼"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "%s project"
+#~ msgstr "%s ཡི་འཆར་གཞིà¼"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d ཡིག་ཆ, %d/%d ཡིག་ཕྲེང་ (%d%%) སྒྱུར་ཚརà¼"
+
+#~ msgid "%s language"
+#~ msgstr "%s ཡི་སà¾à½‘་རིགསà¼"
+
+#~ msgid "%s (%s)"
+#~ msgstr "%s (%s)"
+
+#~ msgid "project root"
+#~ msgstr "འཆར་གཞིའི་གཞི་རྩà¼"
+
+#~ msgid "current folder"
+#~ msgstr "ད་ལྟའི་ཡིག་སྒྲོམà¼"
+
+#~ msgid "parent folder"
+#~ msgstr "ཡིག་སྒྲོམ་གོང་མà¼"
+
+#~ msgid "%d files, "
+#~ msgstr "%d ཡིག་ཆ༠"
+
+#~ msgid "%d strings (%d%%) assigned"
+#~ msgstr "%d ཡིག་ཕྲེང་ (%d%%) à½à½„་སྤྲད་བྱེད་པà¼"
+
+#~ msgid "not logged in"
+#~ msgstr "ནང་འཛུལ་མ་སོང་à¼"
+
+#~ msgid "current file"
+#~ msgstr "ད་ལྟའི་ཡིག་ཆà¼"
+
+#~ msgid "<b>Current Translation:</b>"
+#~ msgstr "<b>ད་ལྟའི་ཡིག་སྒྱུརà¼</b>"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "ངེས་པར་དུ་བེད་སྤྱོད་བྱེད་མཆོག་པའི་Emailà½à¼‹à½¡à½²à½‚་ཡིན་དགོསà¼"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/el/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/el/jToolkit.po
new file mode 100644
index 0000000..9e99604
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/el/jToolkit.po
@@ -0,0 +1,150 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-06-19 14:00+0200\n"
+"Last-Translator: Yannis Kaskamanidis <ttnfy17@sch.gr>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.0.1rc1\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "ΣÏνδεση για %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ΑκÏÏωση αυτής της ενέÏγειας και άνοιγμα νέας συνόδου"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"Αντί να επιβεβαιώσετε αυτή την ενέÏγεια, αποσυνδεθείτε και ξεκινήστε απο την "
+"αÏχή."
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Έξοδος από την εφαÏμογή"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Έξοδος και επιστÏοφή στην κεντÏική εφαÏμογή"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", παÏακαλώ επιβεβαιώστε τη σÏνδεση"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ΣÏδεση"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Όνομα χÏήστη:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Κωδικός:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Γλώσσα:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Επιλογή ΕφαÏμογής"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "ΑποσÏνδεση"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Έξοδος"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "Συνδεθήκατε σαν <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "δεν είναι δυνατή η Ï€Ïοσθήκη νέας συνεδÏίας"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "Αποσυνδέθηκε"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "Έχει γίνει σÏνδεση"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "εξήχθη από την αÏχική συνεδÏία"
+
+#: web/session.py:314
+#, fuzzy
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "υποχÏέωση οÏÎ¹ÏƒÎ¼Î¿Ï Ï„Î·Ï‚ εισόδου χÏηστών ή "
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "ο χÏήστης δεν υπάÏχει (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "λανθασμένος κωδικός ή/και όνομα χÏήστη"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "αποτυχία επαλήθευσης σÏνδεσης"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Όχι"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Îαι"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "αφαίÏεση"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(δεν υπάεχει επισυναπτόμενο)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "Το επισÏναπτόμενο είναι Ï€Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î¿"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ΑφαίÏεση Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… επισυναπτόμενου"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "ανάκτηση"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+"αυτό το επισυναπτόμενο έχει αφαιÏεθεί. Κάντε κλίκ εδώ για το ανακτήσετε"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "επισÏναψη αÏχείου"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr ""
+#~ "χÏειάζεται να οÏιστοÏν οι καταχωÏήσεις χÏηστών στις Ïυθμίσεις του "
+#~ "εξυπηÏετητή"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/el/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/el/pootle.po
new file mode 100644
index 0000000..8777682
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/el/pootle.po
@@ -0,0 +1,1459 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-04-04 17:17+0000\n"
+"Last-Translator: tsirakis nikos <nikos@tsirakis.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.1.0\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Επίδειξη Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "ΑÏχική"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "ΧÏήστες"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Γλώσσες"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "ΈÏγα"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Γενικές επιλογές"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Επιλογή"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "ΤÏέχουσα τιμή"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Αποθήκευση αλλαγών"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Τίτλος"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "ΠεÏιγÏαφή"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Βασικό URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "ΑÏχική Σελίδα"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "ΚεντÏική σελίδα διαχείÏισης"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Κωδικός ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "ΠλήÏες Όνομα"
+
+#: adminpages.py:94
+#, fuzzy
+msgid "(add language here)"
+msgstr "(Ï€Ïόσθεσε εδώ μια γλώσσα)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Ειδικοί χαÏακτήÏες"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(ειδικοί χαÏακτήÏες)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "ΑφαίÏεση Γλώσσας"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "ΑφαίÏεση %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "ΠÏότυπο"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+#, fuzzy
+msgid "Project Code"
+msgstr "Κωδικός έÏγου"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(Ï€Ïοσθέστε εδώ το έÏγο)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "ΠεÏιγÏαφή έÏγου"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(πεÏιγÏαφή έÏγου)"
+
+#: adminpages.py:155
+#, fuzzy
+msgid "Checker Style"
+msgstr "Στυλ διάταξης"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "ΤÏπος αÏχείου"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "ΔημιουÏγία αÏχείων MO "
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "ΔιαγÏαφή έÏγου"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Όνομα ΧÏήστη"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(εισάγετε εδώ το πλήÏες όνομα)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "ΔιεÏθυνση Email"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(εισάγετε εδώ το email)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Κωδικός ΠÏόσβασης"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(εισάγετε εδώ τον κωδικό Ï€Ïόσβασης)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "ΕνεÏγοποιημένος"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "ΕνεÏγοποίηση νέου χÏήστη"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "ΔιαγÏαφή χÏήστη"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "ΕπιστÏοφή στην αÏχική σελίδα"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "ΥπάÏχουσες γλώσσες"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "ΕνημέÏωση γλωσσών"
+
+#: adminpages.py:284
+#, python-format
+#, fuzzy
+msgid "Pootle Admin: %s"
+msgstr "ΔιαχειÏιστής Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Δεν έχετε τα δικαιώματα για να διαχειÏιστείτε αυτό το έÏγο."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "ΕνημέÏωση από Ï€Ïότυπα"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "ΠÏοσθήκη γλώσσας"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "ΔιαχείÏιση Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "ΑÏχική σελίδα έÏγου"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Δεν είναι δυνατή η ÏÏθμιση δικαιωμάτων για το όνομα χÏήστη %s - ο χÏήστης "
+"δεν υπάÏχει"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Αυτό είναι ένα έÏγο στυλ GNU (ένας κατάλογος, ονομασία αÏχείων ανά γλώσσα)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Αυτό είναι ένα έÏγο Î²Î±ÏƒÎ¹ÎºÎ¿Ï ÏƒÏ„Ï…Î» (ένας κατάλογος ανά γλώσσα)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Δικαιώματα χÏήστη"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(επιλέξτε για να Ï€Ïοσθέσετε ένα χÏήστη)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Δικαιώματα"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "ΑφαίÏεση"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "ΕνημέÏωση δικαιωμάτων"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Σχετικά με το Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"To <strong>Pootle</strong> είναι μια απλή διαδικτυακή Ï€Ïλη που σας επιτÏέπει "
+"να κάνετε <strong>μεταφÏάσεις</strong>! Εφόσον το Pootle είναι "
+"<strong>ΕλεÏθεÏο Λογισμικό</strong>, μποÏείτε να το κατεβάσετε και να "
+"Ï„Ïέχετε το δικό σας αντίγÏαφο αν θέλετε. ΜποÏείτε ακόμα να βοηθήσετε "
+"συμμετέχοντας στην ανάπτυξη του Pootle με πολλοÏÏ‚ Ï„Ïόπους (δεν χÏειάζεστε να "
+"έχετε γνώσεις Ï€ÏογÏαμματισμοÏ)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Το έÏγο Pootle φιλοξενείται στο <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> όπου "
+"μποÏείτε να βÏείτε λεπτομέÏειες σχετικά με τον πηγαίο κώδικα, λίστες "
+"ταχυδÏομείου κλπ."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Το όνομα Ï€ÏοέÏχεται από τη φÏάση <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, αλλά ίσως Ï€Ïέπει να "
+"διαβάσετε <a href=\"http://www.thechestnut.com/flumps.htm\">αυτό</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Εκδόσεις"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Το site Ï„Ïέχει:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit %s<br "
+"/>Kid %s<br />ElementTree %s<br />Python %s (σε %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Σελίδα χÏήστη για: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Αλλαγή επιλογών"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Σελίδα διαχείÏισης"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "ΔιαχείÏιση"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "ΣυντομεÏσεις"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"ΠαÏακαλοÏμε κάντε κλικ στο 'Αλλαγή επιλογών' και επιλέξτε μεÏικές γλώσσες "
+"και μεÏικά έÏγα"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d έÏγα, μέσος ÏŒÏος %d%% μεταφÏασμένα"
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+#, fuzzy
+msgid "Admin"
+msgstr "ΔιαχείÏιση"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Κωδικός γλώσσας"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Όνομα γλώσσας"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d γλώσσες, μέσος ÏŒÏος %d%% μεταφÏασμένες"
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Γλώσσα"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: ΈÏγο %s, Γλώσσα %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Αναζήτηση"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Αποτυχία αποστολής αÏχείου, δεν έχει επισυναφθεί αÏχείο"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "ΜποÏείτε μόνο να αποστείλετε αÏχεία PO και συμπιεσμένα αÏχεία PO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "ΠÏοσδιοÏισμός ΕνέÏγειας"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Ανάθεση στο ΧÏήστη"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "σκοποί"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Αποστολή αÏχείου"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Επιλέξτε αÏχείο για αποστολή"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Αντικατάσταση"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Αντικατάσταση υπάÏχοντος αÏχείου (αν υπάÏχει)"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Συγχώνευση"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Συγχώνευση του αÏχείου με το υπάÏχον αÏχείο και μετατÏοπή των συγκÏοÏσεων σε "
+"Ï€Ïοτάσεις"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "ΠÏοσθήκη χÏήστη"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "ΑÏχείο PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "ΑÏχείο XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "ΑÏχείο Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "ΑÏχείο CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "ΑÏχείο MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "ΕνημέÏωση"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Υποβολή"
+
+#: indexpage.py:798
+#, fuzzy
+msgid "All Strings"
+msgstr "Όλες οι συμβολοσειÏές"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Μη μεταφÏασμένα"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "ΧωÏίς ανάθεση"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "ΧωÏίς ανάθεση και μη μεταφÏασμένο"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "ÎŒÏισε σκοπό"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Πολλαπλή επιλογή"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Ανάθεση σε"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "ΠÏοβολή λειτουÏγιών επεξεÏγασίας"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "ΠÏοβολή στατιστικών"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Εμφάνιση Ελέγχων"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "ΑπόκÏυψη Ελέγχων"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "ΠÏοβολή αναθέσεων"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "ΑπόκÏυψη αναθέσεων"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+#, fuzzy
+msgid "Translate My Strings"
+msgstr "ΜετάφÏαση των συμβολοσειÏών μου"
+
+#: indexpage.py:866
+#, fuzzy
+msgid "View My Strings"
+msgstr "ΠÏοβολή των συμβολοσειÏών μου"
+
+#: indexpage.py:871
+#, fuzzy
+msgid "No strings assigned to you"
+msgstr "Δεν σας έχουν ανατεθεί συμβολοσειÏές"
+
+#: indexpage.py:875
+#, fuzzy
+msgid "Quick Translate My Strings"
+msgstr "ΓÏήγοÏη μετάφÏαση των συμβολοσειÏών μου"
+
+#: indexpage.py:879
+#, fuzzy
+msgid "No untranslated strings assigned to you"
+msgstr "Μη αμετάφÏαστες συμβολοσειÏές που σας έχουν ανατεθει"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "ΕπιθεώÏηση Ï€Ïοτάσεων"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "ΠÏοβολή Ï€Ïοτάσεων"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "ΓÏήγοÏη ΜετάφÏαση"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "ΠÏοβολή Μη-ΜεταφÏασμένων"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Δεν υπάÏχουν μη μεταφÏασμένα μηνÏματα"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "ΜετάφÏαση Όλων"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP φακέλου"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "ΔημιουÏγία SDF"
+
+#: indexpage.py:976
+#, python-format
+#, fuzzy
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d μηνÏματα (%d%%) απέτυχαν"
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d λέξει (%d%%) έχουν ανατεθεί"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+#, fuzzy
+msgid "[%d/%d strings]"
+msgstr "%d/%d συμβολοσειÏές"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d λέξεις (%d%%) έχουν μεταφÏαστεί"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Όλα τα έÏγα"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Όλες οι γλώσσες"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Ο λογαÏιασμός μου"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "ΤεκμηÏίωση & βοήθεια"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "ΑποσÏνδεση"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "ΣÏνδεση"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "ΕγγÏαφή"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "ΕνεÏγοποίηση"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Λογότυπο Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Σχετικά με αυτόν τον εξυπηÏετητή Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d αÏχεία"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d αÏχεία"
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+#, fuzzy
+msgid "%d/%d strings"
+msgstr "%d/%d συμβολοσειÏές"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Όνομα"
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "ΜεταφÏασμένα"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Ποσοστό μετάφÏασης"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "ΜεταφÏασμένες λέξεις"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Ασαφές"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Ποσοστό ασαφειών"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Ασαφείς λέξεις"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Ποσοστό μη μεταφÏασμένων"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Μη μεταφÏασμένες λέξεις"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "ΣÏνολο"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "ΣÏνολο λέξεων"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "ΓÏάφημα"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Αποτυχία σÏνδεσης"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Μετάβαση στη σελίδα σÏνδεσης"
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "ΠÏέπει να συνδεθείτε για να έχετε Ï€Ïόσβαση στην αÏχική σελίδα"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Τα Ï€Ïοσωπικά στοιχεία ενημεÏώθηκαν"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "ΠÏέπει να συνδεθείτε για να έχετε Ï€Ïόσβαση στη σελίδα διαχείÏισης"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Μετάβαση στην αÏχική σελίδα..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Δεν έχετε τα δικαιώματα για να διαχειÏιστείτε το Pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Εμφάνισε"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "ΠÏοτείνω"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "ΜετάφÏασε"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Επισκόπηση"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "ΑÏχειοθέτησε"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Μεταγλώττιση αÏχείων PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Ανάθεση"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Δεν μποÏείτε να διαγÏάψετε τους χÏήστες \"nobody\" και \"default\""
+
+#: projects.py:382 projects.py:444
+#, fuzzy
+msgid "You do not have rights to alter goals here"
+msgstr "Δεν έχετε δικαιώματα για να ανεβάσετε αÏχεία εδώ"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Δεν έχετε δικαιώματα για να ανεβάσετε αÏχεία εδώ"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Δεν έχετε δικαιώματα για να ανανεώσετε αÏχεία εδώ"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Δεν έχετε δικαιώματα για να ανεβάσετε νέα αÏχεία εδώ"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Δεν έχετε δικαιώματα για να ανανεώσετε αÏχεία εδώ"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Δεν έχετε δικαιώματα για να υποβάλετε αÏχεία εδώ"
+
+#: projects.py:977 projects.py:1019
+#, fuzzy
+msgid "You do not have rights to alter assignments here"
+msgstr "Δεν έχετε δικαιώματα για να ανεβάσετε αÏχεία εδώ"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Δεν έχετε δικαιώματα για να αλλάξετε μεταφÏάσεις εδώ"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Δεν έχετε δικαιώματα για να Ï€Ïοτείνετε αλλαγές εδώ"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Δεν έχετε δικαιώματα για να επιθεωÏήσετε Ï€Ïοτάσεις εδώ"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d μεταφÏασμένα\n"
+"(%d κενά, %d ασαφή)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "Pootle: μετάφÏαση του %s στο %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "ΠÏότυπο"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "ΜετάφÏαση"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Σχόλια μεταφÏαστή"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Σχόλια Ï€ÏογÏαμματιστή"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Σχετικά"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Τέλος δέσμης"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Κάντε κλικ εδώ για να επιστÏέψετε στον κατάλογο"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "ΑÏχή"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "ΠÏοηγοÏμενα %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "ΜηνÏματα %d έως %d από %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Επόμενα %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Τέλος"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "έλεγχος του %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Δεν βÏέθηκαν μηνÏματα που να ταιÏιάζουν σε αυτή την αναζήτηση ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Φτάσατε στο τελευταίο από τα μηνÏματα που επιλέξατε"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Ενικός"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Πληθυντικός"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "ΕπεξεÏγασία"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "ΑντιγÏαφή"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "ΠαÏάλειψη"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Πίσω"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Υποβολή"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "ΑÏξηση"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "ΣυÏÏίκνωση"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Πληθυντικός Ï„Ïπος %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "ΤÏέχουσα μετάφÏαση:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "ΠÏόταση %d από %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "ΠÏόταση %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "ΠÏόταση από %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "ΠÏόταση:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "ΠÏέπει να εισάγετε ένα έγκυÏο κωδικό μήκους τουλάχιστο %d χαÏακτήÏων."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Ο κωδικός και η επιβεβαίωσή του δεν ταυτίζονται."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Είσοδος στο Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Όνομα ΧÏήστη:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Κωδικός ΠÏόσβασης:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Γλώσσα:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Είσοδος"
+
+#: users.py:77
+msgid "Default"
+msgstr "ΠÏοεπιλογή"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Εισάγετε τα στοιχεία εγγÏαφής σας"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "ΕγγÏαφή στο Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Το όνομα χÏήστη που ζητήσατε"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "ΠÏέπει να εισάγετε μια έγκυÏη διεÏθυνση email"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Το πλήÏες όνομά σας"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Ο κωδικός που επιθυμείτε"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Επιβεβαίωση κωδικοÏ"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"ΠληκτÏολογήστε ακόμα μια φοÏά τον κωδικό σας για να βεβαιωθείτε ότι το "
+"εισάγατε σωστά"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "ΔημιουÏγία ΛογαÏιασμοÏ"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "ΠαÏακαλώ εισάγετε τα στοιχεία ενεÏγοποίησης"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "ΕνεÏγοποίηση λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Κωδικός ΕνεÏγοποίησης"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Ο κωδικός ενεÏγοποίησης που έχετε λάβει"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "ΕνεÏγοποίηση ΛογαÏιασμοÏ"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Επιλογές για: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "ΠÏοσωπικά στοιχεία"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "ΡÏθμιση διεπαφής μετάφÏασης"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Γλώσσα διεπαφής χÏήστη"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Τα έÏγα μου"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Οι γλώσσες μου"
+
+#: users.py:196
+msgid "Home page"
+msgstr "ΑÏχική σελίδα"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Ύψος πλαισίου εισόδου (σε γÏαμμές)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "ΑÏιθμός γÏαμμών σε κατάσταση επισκόπισης"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "ΑÏιθμός γÏαμμών σε κατάσταση μετάφÏασης"
+
+#: users.py:307
+msgid "Error"
+msgstr "Σφάλμα"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "ΠÏέπει να είστε siteadmin για να μεταβάλετε χÏήστες"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Το όνομα χÏήστη Ï€Ïέπει να είναι αλφαÏιθμητικό και Ï€Ïέπει να ξεκινά με έναν "
+"αλφαβητικό χαÏακτήÏα. "
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Εσείς (ή κάποιος άλλος) Ï€Ïοσπαθήσατε να δημιουÏγήσετε ένα λογαÏιασμό με το "
+"δικό σας όνομα χÏήστη.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Δεν αποθηκεÏεται ο Ï€Ïαγματικός κωδικός σας, αλλά μόνο ένα hash αυτοÏ.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Αν αντιμετωπίσετε κάποιο Ï€Ïόβλημα κατά τη δημιουÏγία του λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚, "
+"παÏακαλοÏμε επικοινωνήστε με τον/την %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Αν αντιμετωπίσετε κάποιο Ï€Ïόβλημα κατά τη δημιουÏγία του λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚, "
+"παÏακαλοÏμε επικοινωνήστε με το διαχειÏιστή του Î´Î¹ÎºÏ„Ï…Î±ÎºÎ¿Ï Ï„ÏŒÏ€Î¿Ï….\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Αυτό το όνομα χÏήστη υπάÏχει ήδη. Ένα email θα σταλεί στην αντίστοιχη "
+"διεÏθυνση email.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "ΠÏοχωÏάμε στην <a href='%s'>είσοδο</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Ένας λογαÏιασμός Pootle έχει δημιουÏγηθεί για εσάς χÏησιμοποιώντας αυτή τη "
+"διεÏθυνση email.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Για να ενεÏγοποιήσετε το λογαÏιασμό σας, ακολουθήστε αυτό το σÏνδεσμο:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Ο κωδικός ενεÏγοποίησης του λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ είναι: \n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Αν δεν μποÏείτε να ακολουθήσετε το σÏνδεσμο, παÏακαλοÏμε εισάγετε τον "
+"παÏαπάνω κωδικό στη σελίδα ενεÏγοποίησης.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Αυτό το μήνυμα στάλθηκε για να επιβεβαιώθεί ότι αυτή η διεÏθυνση email είναι "
+"Ï€Ïάγματι σωστή. Αν δεν θέλετε να δημιουÏγήσετε λογαÏιασμό, απλά αγνοήστε "
+"αυτό το μήνυμα.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Ο λογαÏιασμός δημιουÏγήθηκε. Θα σας σταλεί email με οδηγίες για την είσοδό "
+"σας στο σÏστημα καθώς και ένας κωδικός ενεÏγοποίησης. ΠαÏακαλοÏμε εισάγετε "
+"τον κωδικό ενεÏγοποίησης που θα λάβετε στη <a href='%s'>σελίδα "
+"ενεÏγοποίησης</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(ή απλά κάντε κλικ στο σÏνδεσμο ενεÏγοποίησης που πεÏιέχεται στο email)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Το όνομα χÏήστη σας είναι: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Ο κωδικός σας είναι: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Η διεÏθυνση email σας είναι: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Μετάβαση στη σελίδα ενεÏγοποίησης..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Μετάβαση στη σελίδα σÏνδεσης..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Ο λογαÏιασμός σας έχει ενεÏγοποιηθεί! Μετάβαση στη σελίδα σÏνδεσης..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Οι πληÏοφοÏίες ενεÏγοποίησης δεν ήταν έγκυÏες."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Η ενεÏγοποίηση απέτυχε"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Το Ïψος του πλαισίου εισόδου Ï€Ïέπει να είναι αÏιθμός"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Το πλάτος του πλαισίου εισόδου Ï€Ïέπει να είναι αÏιθμός"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Ο αÏιθμός γÏαμμών στην κατάσταση επισκόπησης Ï€Ïέπει να είναι αÏιθμός"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Ο αÏιθμός γÏαμμών στην κατάσταση μετάφÏασης Ï€Ïέπει να είναι αÏιθμός"
+
+#~ msgid "Accept"
+#~ msgstr "Αποδοχή"
+
+#~ msgid "Reject"
+#~ msgstr "ΑπόÏÏιψη"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "ΈÏγο μετάφÏασης WordForge"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "ΠÏέπει να είναι έγκυÏη διεÏθυνση email"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "&lt;strong&gt;Το Pootle&lt;/strong&gt;είναι μια δικτυακή Ï€Ïλη Ï€Î¿Ï ÏƒÎ±Ï‚ "
+#~ "διευκολÏνει στη &lt;strong&gt;μετάφÏαση&lt;/strong&gt;!"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "&lt;h3 class=\"title\"&gt;ΈÏγα&lt;/h3&gt;"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d αÏχεία, %d/%d μηνÏματα (%d%%) μεταφÏάστηκαν"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "Αυτή είναι μια εγκατάσταση επίδειξης του pootle"
+
+#~ msgid "current folder"
+#~ msgstr "ΤωÏινός Φάκελος"
+
+#~ msgid "login status"
+#~ msgstr "Κατάσταση σÏνδεσης"
+
+#~ msgid "%d files, "
+#~ msgstr "%d αÏχεία, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "&lt;h3 class=\"title\"&gt;Γλώσσες&lt;/h3&gt;"
+
+#~ msgid "current file"
+#~ msgstr "τωÏινό αÏχείο"
+
+#~ msgid "not logged in"
+#~ msgstr "δεν συνδεθήκατε"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/en/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/en/jToolkit.po
new file mode 100644
index 0000000..d38509b
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/en/jToolkit.po
@@ -0,0 +1,142 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-06-14 14:24+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Translate Toolkit 0.9rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr ""
+
+#: web/server.py:123
+msgid "Username:"
+msgstr ""
+
+#: web/server.py:125
+msgid "Password:"
+msgstr ""
+
+#: web/server.py:130
+msgid "Language:"
+msgstr ""
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr ""
+
+#: web/server.py:637
+msgid "Logout"
+msgstr ""
+
+#: web/server.py:639
+msgid "Exit"
+msgstr ""
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+msgid "connected"
+msgstr ""
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr ""
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr ""
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr ""
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+msgid "restore"
+msgstr ""
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/en/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/en/pootle.po
new file mode 100644
index 0000000..c5392df
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/en/pootle.po
@@ -0,0 +1,1353 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2006-06-14 14:24+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"X-Generator: Translate Toolkit 0.9rc1\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr ""
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr ""
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr ""
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr ""
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr ""
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr ""
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr ""
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr ""
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr ""
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+msgid "Password:"
+msgstr ""
+
+#: users.py:69
+msgid "Language:"
+msgstr ""
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+msgid "My Languages"
+msgstr ""
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/en_GB/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/en_GB/jToolkit.po
new file mode 100644
index 0000000..d8537c9
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/en_GB/jToolkit.po
@@ -0,0 +1,142 @@
+# British English 'translations' for jToolkit
+# Copyright (C) 2008 St James Software
+# This file is distributed under the same license as the jToolkit package.
+# Dwayne Bailey <dwayne@translate.org.za>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: jToolkit 0.7.8\n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-08-28 11:29+0200\n"
+"Last-Translator: Dwayne Bailey <dwayne@translate.org.za>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Login for %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Cancel this action and start a new session"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Instead of confirming this action, log out and start from scratch"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Exit application"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Exit this application and return to the parent application"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", please confirm login"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Login"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Username:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Password:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Language:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Select Application"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Logout"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Exit"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "logged in as <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "couldn't add new session"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "logged out"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "connected"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "exited parent session"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "need to define the users or userprefs entry on the server config"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "user does not exist (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "invalid username and/or password"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "failed login confirmation"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "No"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Yes"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "remove"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(no attachment)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "attachment is too large"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "remove this attachment"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "restore"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "this attachment has been removed. click here to restore it"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "attach a file"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/en_GB/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/en_GB/pootle.po
new file mode 100644
index 0000000..0f3093b
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/en_GB/pootle.po
@@ -0,0 +1,1388 @@
+# British English 'translations' of Pootle.
+# Copyright (C) 2008 Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the Pootle package.
+# Dwayne Bailey <dwayne@translate.org.za>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Pootle 1.1.0\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-28 11:29+0200\n"
+"Last-Translator: Dwayne Bailey <dwayne@translate.org.za>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Home"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Users"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Languages"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projects"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "General options"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Option"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Current value"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Save changes"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Title"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Description"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Base URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Home Page"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle Languages Admin Page"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Main admin page"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO Code"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Full Name"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(add language here)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Special Chars"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(special characters)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Number of Plurals"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(number of plurals)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Plural Equation"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(plural equation)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Remove Language"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Remove %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle Projects Admin Page"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Project Code"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(add project here)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Project Description"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(project description)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Checker Style"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "File Type"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Create MO Files"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Remove Project"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle User Admin Page"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Username"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(add full name here)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Email Address"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(add email here)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Password"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(add password here)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Activated"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Activate New User"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Remove User"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Back to main page"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Existing languages"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Update Languages"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle Admin: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "You do not have the rights to administer this project."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Update from templates"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Add Language"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle Admin: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Project home page"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Cannot set rights for username %s - user does not exist"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "This is a GNU-style project (one directory, files named per language)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "This is a standard style project (one directory per language)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "User Permissions"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(select to add user)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Rights"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Remove"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Update Rights"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "About Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalisation <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versions"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "User Page for: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Change options"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Admin page"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrate"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Quick Links"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Please click on 'Change options' and select some languages and projects"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d project, average %d%% translated"
+msgstr[1] "%d projects, average %d%% translated"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Language Code"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Language Name"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d language, average %d%% translated"
+msgstr[1] "%d languages, average %d%% translated"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Language"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Project %s, Language %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Search"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Advanced Search"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Cannot upload file, no file attached"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Can only upload PO files and zips of PO files"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Assign Strings"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Assign Action"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Assign to User"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "goals"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Enter goal name"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Add Goal"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Upload File"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Select file to upload"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Overwrite"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Overwrite the current file if it exists"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Merge"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Merge the file with the current file and turn conflicts into suggestions"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Not in a goal"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Add User"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO file"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF file"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts file"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV file"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO file"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Update"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Commit"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "All Strings"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Untranslated"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Unassigned"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Unassigned and Untranslated"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Set Goal"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Select Multiple"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Assign To"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Show Editing Functions"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Show Statistics"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Show Tracks"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Hide Tracks"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Show Checks"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Hide Checks"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Show Goals"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Hide Goals"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Show Assigns"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Hide Assigns"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "All Goals: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Translate My Strings"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "View My Strings"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "No strings assigned to you"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Quick Translate My Strings"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "No untranslated strings assigned to you"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Review Suggestions"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "View Suggestions"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Quick Translate"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "View Untranslated"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "No untranslated items"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Translate All"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP of goal"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP of folder"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Generate SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d string (%d%%) failed"
+msgstr[1] "%d strings (%d%%) failed"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d words (%d%%) assigned"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d strings]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d words (%d%%) translated"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "All projects"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "All languages"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "My account"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Docs & help"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Log out"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Log in"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Register"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Activate"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle Logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "About this Pootle server"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "All goals"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d files"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d file"
+msgstr[1] "%d files"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d strings"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Name"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Translated"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Translated percentage"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Translated words"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Fuzzy"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Fuzzy percentage"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Fuzzy words"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Untranslated percentage"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Untranslated words"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Total words"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graph"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Source Text"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Target Text"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Comments"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Locations"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Login failed"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Redirecting to login..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Need to log in to access home page"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Personal details updated"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Need to log in to access admin page"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Redirecting to home..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "You do not have the rights to administer pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "View"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Suggest"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Translate"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Review"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archive"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Compile PO files"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Assign"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "You cannot remove the \"nobody\" or \"default\" user"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "You do not have rights to alter goals here"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "You do not have rights to upload files here"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "You do not have rights to overwrite files here"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "You do not have rights to upload new files here"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "You do not have rights to update files here"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "You do not have rights to commit files here"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "You do not have rights to alter assignments here"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "You do not have rights to change translations here"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "You do not have rights to suggest changes here"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "You do not have rights to review suggestions here"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: translating %s into %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Translation"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Accept suggestion"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Reject suggestion"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Translator comments"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Developer comments"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Related"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Working..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Error: Something went wrong."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "End of batch"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Click here to return to the index"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Start"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Previous %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Items %d to %d of %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Next %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "End"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "checking %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "There are no items matching that search ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "You have finished going through the items you selected"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singular"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plural"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Edit"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Copy"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Skip"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Back"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Submit"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Grow"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Shrink"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Plural Form %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Current Translation:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Suggestion %d by %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Suggestion %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Suggestion by %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Suggestion:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "You must supply a valid password of at least %d characters."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "The password is not the same as the confirmation."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Login to Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Username:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Password:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Language:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Login"
+
+#: users.py:77
+msgid "Default"
+msgstr "Default"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Please enter your registration details"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle Registration"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Your requested username"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "You must supply a valid email address"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Your full name"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Your desired password"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Confirm password"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Type your password again to ensure it is entered correctly"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Register Account"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Please enter your activation details"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle Account Activation"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Activation Code"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "The activation code you received"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Activate Account"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Options for: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Personal Details"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Translation Interface Configuration"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "User Interface language"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "My Projects"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "My Languages"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Home page"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternative Source Language"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "None"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Input Height (in lines)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Number of rows in view mode"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Number of rows in translate mode"
+
+#: users.py:307
+msgid "Error"
+msgstr "Error"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "You need to be siteadmin to change users"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+"You (or someone else) attempted to register an account with your username.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "We don't store your actual password but only a hash of it.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "If you have a problem with registration, please contact %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Proceeding to <a href='%s'>login</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "A Pootle account has been created for you using this email address.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "To activate your account, follow this link:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Your activation code is:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Or simply click on the activation link in the email)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Your user name is: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Your password is: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Your registered email address is: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Redirecting to Registration Page..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Redirecting to login Page..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Your account has been activated! Redirecting to login..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "The activation information was not valid."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Activation Failed"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Input height must be numeric"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Input width must be numeric"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "The number of rows displayed in view mode must be numeric"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "The number of rows displayed in translate mode must be numeric"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/en_ZA/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/en_ZA/jToolkit.po
new file mode 100644
index 0000000..fd853e0
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/en_ZA/jToolkit.po
@@ -0,0 +1,140 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-10-24 12:19+0200\n"
+"Last-Translator: Dwayne Bailey <dwayne@translate.org.za>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.10.1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Cancel this action and start a new session"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr ""
+
+#: web/server.py:123
+msgid "Username:"
+msgstr ""
+
+#: web/server.py:125
+msgid "Password:"
+msgstr ""
+
+#: web/server.py:130
+msgid "Language:"
+msgstr ""
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr ""
+
+#: web/server.py:637
+msgid "Logout"
+msgstr ""
+
+#: web/server.py:639
+msgid "Exit"
+msgstr ""
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+msgid "connected"
+msgstr ""
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr ""
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr ""
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr ""
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+msgid "restore"
+msgstr ""
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/en_ZA/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/en_ZA/pootle.po
new file mode 100644
index 0000000..cec94fc
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/en_ZA/pootle.po
@@ -0,0 +1,1354 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2006-08-05 11:33+0200\n"
+"Last-Translator: Dwayne Bailey <dwayne@translate.org.za>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.10rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr ""
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr ""
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr ""
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr ""
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalisation <b>E</b>ngine, but you may need to read <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">this</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr ""
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr ""
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr ""
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr ""
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr ""
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+msgid "Password:"
+msgstr ""
+
+#: users.py:69
+msgid "Language:"
+msgstr ""
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+msgid "My Languages"
+msgstr ""
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/eo/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/eo/jToolkit.po
new file mode 100644
index 0000000..77b1d92
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/eo/jToolkit.po
@@ -0,0 +1,141 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-08-07 12:39+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"X-Generator: Translate Toolkit 0.10rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr ""
+
+#: web/server.py:123
+msgid "Username:"
+msgstr ""
+
+#: web/server.py:125
+msgid "Password:"
+msgstr ""
+
+#: web/server.py:130
+msgid "Language:"
+msgstr ""
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr ""
+
+#: web/server.py:637
+msgid "Logout"
+msgstr ""
+
+#: web/server.py:639
+msgid "Exit"
+msgstr ""
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+msgid "connected"
+msgstr ""
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr ""
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr ""
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr ""
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+msgid "restore"
+msgstr ""
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/eo/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/eo/pootle.po
new file mode 100644
index 0000000..eb7a7c9
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/eo/pootle.po
@@ -0,0 +1,1361 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-10-02 15:00+0200\n"
+"Last-Translator: Serge Leblanc <serge.leblanc@wanadoo.fr>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle montro"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr ""
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr ""
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr ""
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr ""
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administru"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr ""
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Serĉu"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "AnstataÅ­igu"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Enmemorigu"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr ""
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "Traduku"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Nebula"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Montru"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Sugestu"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Traduku"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Revuu"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arkivo"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Asignu"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Vi ne povas forigi la \"nobody\"-an aÅ­ \"default\"-an uzanton"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d tradukitaj\n"
+"(%d malplenaj, %d nebulaj)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: traduki %s en %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Originala"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Tradukado"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Komentoj de la tradukanto"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Komentoj de la programisto"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Pri"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fino de la interpreto"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klaku ĉi tie por reveni al la indekso"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Komenco"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d antaÅ­aj"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d sekvaj"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fino"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+msgid "Password:"
+msgstr ""
+
+#: users.py:69
+msgid "Language:"
+msgstr ""
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+msgid "My Languages"
+msgstr ""
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Akceptu"
+
+#~ msgid "Reject"
+#~ msgstr "Malakceptu"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/es/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/es/jToolkit.po
new file mode 100644
index 0000000..6dba2b9
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/es/jToolkit.po
@@ -0,0 +1,148 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-08-08 20:28+0000\n"
+"Last-Translator: Guillermo López <willyaranda@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.1.0\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Inicio de sesión para %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Cancelar esta acción e iniciar una nueva sesión"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"En vez de confirmar esta acción, salga de la sesión y comience desde el "
+"principio"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Salir de la aplicación"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Salir de la aplicación y volver a la aplicación padre"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", por favor confirme su nombre de usuario"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Inicio de sesión"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Nombre de usuario:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Contraseña:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Idioma:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Seleccionar aplicación"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Terminar sesión"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Salir"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "iniciada la sesión como <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "no se puede agregar una nueva sesión"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "sesión terminada"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "conectado"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "terminada sesión padre"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"necesita definir los usuarios o las preferencias de usuario en la "
+"configuración del servidor"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "el usuario no existe (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nombre de usuario o contraseña inválida"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "confirmación de fallo en el inicio de sesión"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "No"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Sí"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "quitar"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(sin adjunto)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "adjunto demasiado grande"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "quitar el archivo adjunto"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "restablecer"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "este archivo adjunto ha sido quitado. haga clic aquí para restablecerlo"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "adjuntar archivo"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "se requiere definir a los usuarios en la configuración del servidor"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/es/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/es/pootle.po
new file mode 100644
index 0000000..312cc91
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/es/pootle.po
@@ -0,0 +1,1499 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-06 04:44+0000\n"
+"Last-Translator: Daniel Espinosa Ortiz <esodan@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demo de Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Principal"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Usuarios"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Idiomas"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Proyectos"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opciones generales"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opción"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Valor actual"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Guardar cambios"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Título"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Descripción"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL base"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Página principal"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Página de Administración de Idiomas de Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Página principal de la administración"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Código ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nombre completo"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(agregar idioma aquí)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Carácteres especiales"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(caracteres especiales)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Número de plurales"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(número de plurales)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Ecuación del plural"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(ecuación del plural)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Eliminar idioma"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Eliminar %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Estándar"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Página de Administración de Proyectos de Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Código del proyecto"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(agregar proyecto aquí)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Descripción del proyecto"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(descripción del proyecto)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Estilo del verificador"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tipo de Archivo"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Crear archivos MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Eliminar proyecto"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Página de Administración de Usuarios de Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Nombre de usuario"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(agregar nombre completo aquí)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Dirección de correo electrónico"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(agregar correo electrónico aquí)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Contraseña"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(agregar contraseña aquí)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Activado"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Activar nuevo usuario"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Eliminar Usuario"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Regresar a la página principal"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Idiomas existentes"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Actualizar idiomas"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Administración de Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "No tiene los derechos para administrar este proyecto."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Actualizar desde plantillas"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Agregar idioma"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Administración Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Página principal del proyecto"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"No se pueden asignar derechos para el nombre de usuario %s - el usuario no "
+"existe"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Este es un proyecto al estilo GNU (un directorio, archivos nombrados por "
+"idioma)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Este es un proyecto al estilo estándar (un directorio por idioma)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Permisos del usuario"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(selecciona para agregar un usuario)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Derechos"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Eliminar"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Actualizar derechos"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Acerca de Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"¡<strong>Pootle</strong> es un simple portal web que le permite "
+"<strong>traducir</strong>! Desde que Pootle es <strong>Software "
+"Libre</strong>, puede descargarlo y ejecutar su propia copia si lo desea. "
+"Puede incluso ayudar participando en el desarrollo de muchas formas (no "
+"tiene por qué saber programar)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"El proyecto Pootle está hospedado en <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> donde "
+"puede encontrar detalles acerca del código, lista de correos, etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"El nombre quiere decir <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, que significa Motor para la Traducción en "
+"Línea basado en PO, pero probablemente necesite leer <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">ésto</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versiones"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Este sitio está ejecutando:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Página de usuario para: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Cambiar opciones"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Página de administración"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrar"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Vínculos rápidos"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Por favor haga clic en 'Cambiar opciones' y seleccione algunos idiomas y "
+"proyectos"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d proyecto, en promedio %d%% traducido"
+msgstr[1] "%d proyectos, en promedio %d%% traducido"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administración"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Código del idioma"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nombre del idioma"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d idioma, en promedio %d%% traducido"
+msgstr[1] "%d idiomas, en promedio %d%% traducido"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Idioma"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Proyecto %s, Idioma %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Búsqueda"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Búsqueda avanzada"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "No se puede enviar el archivo, no se adjuntó ningún archivo"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Sólo se pueden enviar archivos PO y archivos PO comprimidos"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Asignando cadenas"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Asignando acción"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Asignando al usuario"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "objetivos"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Introduzca el nombre del objetivo"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Agregar objetivo"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Enviar archivo"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Seleccionar archivo para enviar"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Sobrescribir"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Sobrescribir el archivo actual si es que existe"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Fusionar"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Fusionar este archivo con el archivo actual y mostrar los conflictos en las "
+"sugerencias"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "No forma parte de un objetivo"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Agregar usuario"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Archivo PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Archivo XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Archivo .ts de Qt"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Archivo CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Archivo MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Actualizar"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Enviar"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Todas las cadenas"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Sin traducir"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Sin asignar"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Sin asignar y sin traducir"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Asignar objetivo"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Selección múltiple"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Asignar a"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Mostrar funciones de edición"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Mostrar estadísticas"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Mostrar pistas"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Ocultar pistas"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Mostrar verificaciones"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Ocultar verificaciones"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Mostrar objetivos"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Ocultar objetivos"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Mostrar asignaciones"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Ocultar asignaciones"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Todos los objetivos: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Traducir mis cadenas"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Ver mis cadenas"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "No tiene cadenas asignadas"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Traducción rápida de mis cadenas"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "No tiene cadenas asignadas sin traducir"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Revisar sugerencias"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Ver sugerencias"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Traducción rápida"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Ver no traducidas"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "No hay elementos sin traducir"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Traducir todo"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP del objetivo"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP de la carpeta"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Generar SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d cadena (%d%%) falló"
+msgstr[1] "%d cadenas (%d%%) fallaron"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d palabras (%d%%) asignadas"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d cadenas]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d palabras (%d%%) traducido"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Todos los proyectos"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Todos los idiomas"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mi cuenta"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Documentos y ayuda"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Terminar sesión"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Iniciar sesión"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registro"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Activar"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logotipo de Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Acerca de este servidor Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Todos los objetivos"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d archivos"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d archivo"
+msgstr[1] "%d archivos"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d cadenas"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nombre"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Traducido"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Porcentaje traducido"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Palabras traducidas"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Con imprecisiones"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Porcentaje con imprecisiones"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Palabras con imprecisiones"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Porcentaje sin traducir"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Palabras sin traducir"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Total de palabras"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Gráfico"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Código fuente"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Código destino"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Comentarios"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Lugares"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Inicio de sesión fallido"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Redirigiendo para iniciar sesión..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Necesita iniciar sesión para acceder a la página principal"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Detalles personales actualizados"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Necesita iniciar sesión para accesar a la página de administración"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Redirigiendo a la página principal..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "No cuenta con los derechos necesarios para administrar pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Ver"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Sugerir"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Traducir"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Revisar"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archivar"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Compilar archivos PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Asignar"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "No puede eliminar el usuario \"nobody\" o \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "No tiene permiso para alterar los objetivos aquí"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "No tiene permiso para enviar archivos aquí"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "No tiene permiso para sobrescribir archivos aquí"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "No tiene permiso para enviar nuevos archivos aquí"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "No tiene permiso para actualizar archivos aquí"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "No tiene permiso para enviar archivos aquí"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "No tiene permiso para modificar asignaciones aquí"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "No tiene permiso para cambiar las traducciones aquí"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "No tiene permiso para sugerir cambios aquí"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "No tiene permisos para revisar las sugestiones aquí"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d traducidas\n"
+"(%d sin traducir, %d con imprecisiones)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: traduciendo %s al %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Traducción"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Aceptar sugerencia"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Rechazar sugerencia"
+
+# Comentarios al Desarrollador
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Comentarios al traductor"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Comentarios al desarrollador"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Relacionado"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Trabajando..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Error: algo fue mal."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fin de la rutina"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Haga clic aquí para volver al índice"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Iniciar"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Previos %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Elementos del %d al %d de %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Siguientes %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fin"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "verificando %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "No existen elementos que cumplan con la búsqueda ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Ha terminado de revisar los elementos que ha seleccionado"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singular"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plural"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Editar"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Copiar"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Saltar"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Regresar"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Enviar"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Ampliar"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Reducir"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma plural %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"La traducción no es posible debido a que la información del plural para su "
+"idioma no está disponible. Por favor contacte el administrador del sitio."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Traducción actual:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Sugerencia %d de %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Sugerencia %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Sugerencia de %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Sugerencia:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Debe proporcionar una contraseña válida de al menos %d caracteres."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "La contraseña no es la misma que la de la confirmación."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Inicio de sesión en Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Nombre de usuario:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Contraseña:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Idioma:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Iniciar sesión"
+
+#: users.py:77
+msgid "Default"
+msgstr "Por defecto"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Por favor introduzca los detalles de su registro"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Registro en Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Su nombre de usuario solicitado"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Debe proporcionar una dirección válida de correo electrónico"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Su nombre completo"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Su contraseña seleccionada"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Confirmar contraseña"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Escriba su contraseña de nuevo para aseguarse que la ha introducido "
+"correctamente"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registrar cuenta"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Por favor introduce sus detalles de activación"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Activación de cuenta Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Código de activación"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "El código de activación que ha recibido"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Activar cuenta"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opciones para: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Detalles personales"
+
+#: users.py:186
+msgid "Email"
+msgstr "Correo electrónico"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Configuración de la interfaz de traducción"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Idioma de la interfaz del usuario"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mis proyectos"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mis idiomas"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Página principal"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Idioma alternativo de fuente"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Ninguno"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Alto de la entrada (en líneas)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Número de renglones en el modo de vista"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Número de renglones en el modo de traducción"
+
+#: users.py:307
+msgid "Error"
+msgstr "Error"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Necesita ser el administrador del sitio para cambiar usuarios"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"El nombre de usuario debe ser alfanumérico, y debe comenzar con un carácter "
+"alfabético."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Usted (o alguien más) intentó registrar una cuenta con su nombre de usuario.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Nosotros no almacenamos directamente su contraseña; almacenamos una versión "
+"cifrada de ella.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Si tiene un problema con el registro, por favor contacte con %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Si tiene un problem con el registro, por favor contacte al administrador del "
+"sitio.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "El nombre de usuario ya existe. Un correo electrónico será enviado a la "
+"dirección de correo registrada.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Procediendo a <a href='%s'>iniciar sesión</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Una cuenta Pootle ha sido creada por usted usando esta dirección de correo "
+"electrónico.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Para activar su cuenta, siga el siguiente enlace:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Su código de activación es:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Si le es imposible seguir el enlace, por favor introduzca el código anterior "
+"en la página de activación.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Este mensaje es enviado para verificar que la dirección de correo electónico "
+"es correcta. Si no desea registrar una cuenta, simplemente ignore el "
+"mensaje.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Cuenta creada. Recibirá un correo con los detalles para iniciar sesión y un "
+"código de activación. Por favor introduzca su código de activación en la <a "
+"href='%s'>página de activación</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+"(O simplemente haga click en el vínculo de activación en el correo "
+"electrónico)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Su nombre de usuario es: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Su contraseña es: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Su dirección de correo electrónco registrado es: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Redirigiendo a la página de registro..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Redirigiendo a la página de inicio de sesión..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "¡Su cuenta ha sido activada! Redirigiendo al inicio de sesión..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "La información de activación no es válida."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Falló la activación"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "La altura de entrada debe ser numérica"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "El ancho de entrada debe ser numérico"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "El número de renglones mostrados en modo vista debe ser numérico"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+"El número de renglones mostrados en modo de traducción debe ser numérico"
+
+#~ msgid "Accept"
+#~ msgstr "Aceptar"
+
+#~ msgid "Reject"
+#~ msgstr "Rechazar"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Proyecto de traducción de WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Ensanchar"
+
+#~ msgid "Narrow"
+#~ msgstr "Estrechar"
+
+#~ msgid "Reset"
+#~ msgstr "Restablecer"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Debe ser una dirección válida de correo electrónico"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Ancho de la Entrada (en carácteres)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> es un portal sencillo que le permite "
+#~ "<strong>traducir</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "carpeta de nivel superior"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Proyectos</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d archivos, %d/%d cadenas (%d%%) traducidas"
+
+#~ msgid "%s language"
+#~ msgstr "idioma %s"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "este es una instlación de demostración de pootle"
+
+#~ msgid "current folder"
+#~ msgstr "carpeta actual"
+
+#~ msgid "Log In"
+#~ msgstr "Inciar Sesión"
+
+#~ msgid "login status"
+#~ msgstr "estado de la sesión"
+
+#~ msgid "project root"
+#~ msgstr "inicio del proyecto"
+
+#~ msgid "%s project"
+#~ msgstr "proyecto %s"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "usted no tiene los derechos para segerir cambios aquí"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr ""
+#~ "usted no tiene los derechos para sugerir cambios en las traducciones"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d cadenas (%d%%) traducidas"
+
+#~ msgid "%d files, "
+#~ msgstr "%d archivos, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Idiomas</h3>"
+
+#~ msgid "current file"
+#~ msgstr "archivo actual"
+
+#~ msgid "not logged in"
+#~ msgstr "sesión no iniciada"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Página de Administración de Pootle"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "No tiene los derechos para administrar Pootle."
+
+#~ msgid "suggest"
+#~ msgstr "sugerir"
+
+#~ msgid "Input Width"
+#~ msgstr "Ancho de la Entrada"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/et/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/et/jToolkit.po
new file mode 100644
index 0000000..be26275
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/et/jToolkit.po
@@ -0,0 +1,144 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-11-06 14:36+0100\n"
+"Last-Translator: Laur Mõtus <vprints@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.10.1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Logi sisse %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Loobu sellest tegevusest ja alusta uut sessiooni"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Selle tegevuse kinnitamiseks logi välja ning alusta uuesti"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Välju programmist"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Välju sellest programmist peaprogrammi"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", palun kinnita logimine"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Sisse logimine"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Kasutajanimi:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Parool:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Keel:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Vali programm"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Väljalogimine"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Välju"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "sisse logitud kasutajana <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "ei saanud lisada uut sessiooni"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "välja logitud"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "ühendatud"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "peasessioonist väljutud"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "vaja on määrata kasutajate või kasutajaeelistuste sissekanne serveri seadetes"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "kasutajat ei eksisteeri (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "vale kasutajanimi ja/või parool"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "logimise kinnitamine ebaõnnestus"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ei"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Jah"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "eemalda"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(manus puudub)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "manus on liiga suur"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "eemalda see manus"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "taasta"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "see manus on eemaldatud. kliki siia, et see taastada"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "manusta fail"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "on vaja defineerida kasutajate sisestus serveri configuratsioonis"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/et/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/et/pootle.po
new file mode 100644
index 0000000..6617800
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/et/pootle.po
@@ -0,0 +1,1501 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-05-26 09:01+0000\n"
+"Last-Translator: Henrik Pihl <ahvenas@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.1.0\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Kodu"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Kasutajad"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Keeled"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projektid"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Ãœldised valikud"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Valik"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Hetke väärtus"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Salvesta muudatused"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Pealkiri"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Kirjeldus"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Baas URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Koduleht"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle Keelte Administreerimise Leht"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Peamine Administreerimise leht"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO Kood"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Täisnimi"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(lisa keel siia)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Erilised märgid"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(erilised märgid)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Mitmuste arv"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(mitmuste arv)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Mitmuse võrrand"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(mitmuse võrrand)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Eemalda keel"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Eemalda %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle Projektide Administreerimise Leht"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projekti kood"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(lisa projekt siia)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projekti kirjeldus"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(projekti kirjeldus)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Kontrollija stiil"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Failitüüp"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Loo MO failid"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Eemalda projekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle Kasutajate Administreerimise Leht"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Kasutajanimi"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(lisa täisnimi siia)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Emaili aadress"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(lisa email siia)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Parool"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(sisesta parool siia)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktiveeritud"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktiveeri uus kasutaja"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Eemalda kasutaja"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Tagasi pealehele"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Olemasolevad keeled"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Uuenda keeli"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle administraator: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Sul pole õigusi, et administreerida seda projekti."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Uuenda näidistest"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Lisa keel"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle administraator: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Projekti koduleht"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Ei saa seada õigusi kasutajanimele %s - kasutajat ei eksisteeri"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "See on GNU stiilis projekt (üks kaust, failid keelenimede järgi)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "See on standardstiilis projekt (üks kaust keele kohta)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Kasutaja õigused"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(määra et lisada kasutajat)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Õigused"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Eemalda"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Uuenda õigused"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Pootle'st"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> on lihtne veebiportaal, mis peaks võimaldama "
+"sul<strong>tõlkida</strong>! Kuna Pootle on "
+"<strong>Vabatarkvara</strong>,siis võid sa selle alla laadida ning "
+"soovikorral jooksutada oma koopiat sellest. Sa võid samuti aidataosaledes "
+"mitmel erineval viisil arendamises (sa ei pea olema võimeline "
+"programmeerima)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle'i projekt ise on majutatud<a href=\"http://translate.sourceforge.net/\""
+">translate.sourceforge.net</a>leheküljel, kus sa saad leida detaile "
+"algkoodi, emaili listide, jne. kohta."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Nimi tähendab <b>PO</b>-baasilist <b>O</b>nline <b>T</b>õlke / "
+"<b>L</b>okaliseerimis <b>M</b>ootorit, aga sa võid lugeda ka <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">seda</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versioonid"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+#, fuzzy
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Seda lehte jooksutab: <br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "%s kasutaja lehekülg"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Muuda valikuid"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Administreerimise leht"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administreeri"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Kiirlingid"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Palun ava link 'Muuda valikuid' ja vali keeli ning projekte"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "% projekt, keskmiselt %d%% tõlgitud"
+msgstr[1] "%d projekti, keskmiselt %d%% tõlgitud"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administraator"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Keele kood"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Keele nimi"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d keel, keskmiselt %d%% tõlgitud"
+msgstr[1] "%d keelt, keskmiselt %d%% tõlgitud"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Keel"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+#, fuzzy
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekt %s, Keel %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Otsi"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Ei saa faili üles laadida, ühtegi faili pole lisatud"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Ãœlesse saab laadida ainult PO ja kokkupakitud (zip) PO faile"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Määra stringe"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Määra tegevus"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Määra kasutajale"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "eesmärgid"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Sisesta eesmärgi nimi"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Lisa eesmärk"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Lae üles fail"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Vali üleslaetav fail"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Kirjuta üle"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Kui fail juba on olemas, kirjuta üle"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Liida"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Liida fail hetkelise failiga ja muuda konfliktid soovitusteks"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ei ole eesmärkides kirjas"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Lisa kasutaja"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO fail"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF fail"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts fail"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV fail"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO fail"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Uuenda"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Soorita täiendus"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Kõik stringid"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Tõlkimata"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Määramata"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Määramata ja tõlkimata"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Sea eesmärk"
+
+#: indexpage.py:812
+#, fuzzy
+msgid "Select Multiple"
+msgstr "Vali üleslaetav fail"
+
+#: indexpage.py:814
+#, fuzzy
+msgid "Assign To"
+msgstr "Omista silt"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Näita redigeerimisfunktsioone"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Näita statistikat"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Näita radasid"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Peida rajad"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Näita Kontrolle"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Peida Kontrollid"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Näita eesmärke"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Peida eesmärgid"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Näita määramisi"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Peida määramised"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Kõik eesmärgid: %s"
+
+#: indexpage.py:864
+#, fuzzy
+msgid "Translate My Strings"
+msgstr "Tõlgi minu tekstid"
+
+#: indexpage.py:866
+#, fuzzy
+msgid "View My Strings"
+msgstr "Vaata minu tekste"
+
+#: indexpage.py:871
+#, fuzzy
+msgid "No strings assigned to you"
+msgstr "Sinule määratud tekstid puuduvad"
+
+#: indexpage.py:875
+#, fuzzy
+msgid "Quick Translate My Strings"
+msgstr "Tõlgi minu tekstid kiirelt"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Sinule määratud tõlkimata tekstid puuduvad"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Arvusta soovitusi"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Näita soovitusi"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Kiirtõlkimine"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Näita tõlkimata objekte"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Tõlkimata kirjeid pole"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Tõlgi kõik"
+
+#: indexpage.py:914
+#, fuzzy
+msgid "ZIP of goal"
+msgstr "Pakitud eesmärgid (zip)"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Pakitud kaust (zip)"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Genereeri SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d string (%d%%) ebaõnnestunud"
+msgstr[1] "%d stringi (%d%%) ebaõnnestunud"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d sõna (%d%%) seostatud"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d stringi]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d sõna (%d%%) tõlgitud"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Kõik projektid"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Kõik keeled"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Minu konto"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumendid & Abi"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Logi välja"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Logi sisse"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registreeri"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktiveeri"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle Logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Sellest pootle serverist"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Kõik eesmärgid"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d faili"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fail"
+msgstr[1] "%d faili"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d objekti"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nimi"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Tõlgitud"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Tõlgitud protsent"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Tõlgitud sõnad"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Ähmane"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Ähmaste protsent"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Ähmaseid sõnu"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Tõlkimata protsent"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Tõlkimata sõnu"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Kokku"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Kokku sõnu"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graafik"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Sisselogimine ebaõnnestus."
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Suunan edasi sisselogimisele..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Sisselogimine vajalik koduleheküljele minemiseks"
+
+# Personaalsed või isiklikud?
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Personaalsed üksikasjad uuendatud"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Sisselogimine vajalik administreerimisleheküljele minemiseks"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Suunan edasi koju..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Sul ei ole õigusi, et administreerida pootle't."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Vaata"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Soovita"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Tõlgi"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Kontrolli"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arhiveeri"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompileeri PO failid"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Seosta"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Sa ei saa eemaldada \"nobody\" Või \"default\" kasutajat"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Sul ei ole õigusi siin eesmärkide muutmiseks"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Sul ei ole failide üleslaadimiseks siin õiguseid"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Sul ei ole õiguseid siin faile üle kirjutada"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Sul ei ole siin uute failide üleslaadimise õiguseid"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Sul ei ole õiguseid siin failide uuendamiseks"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Sul ei ole õiguseid siia failide soovitamiseks"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Sul ei ole õiguseid siin ülesannete muutmiseks"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Sul ei ole õiguseid siin tõlke muutmiseks"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Sul ei ole õiguseid siin muutusi soovitada"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Sul ei ole õiguseid siia tehtud soovitusi ülevaadata"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d tõlgitud\n"
+"(%d tühja, %d ebatäpset)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "Pootle: %s tõlkimine %s keelde: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Originaal"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Tõlge"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Tõlkija ääremärkused"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Arendaja kommentaarid"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Seotud"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Paki lõpp"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Avalehele pöördumiseks kliki siia"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Algus"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Eelmine %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Objektid %d kuni %d %d-st"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Järgmised %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Lõpp"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s kontrollimine"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Ei leitud ühtegi objekti, mis sobiks otsinguga ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Sa oled läbinud valitud objektide tõlkimise"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Ainsus"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Mitmus"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Muuda"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopeeri"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Jäta vahele"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Tagasi"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Sisesta"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Kasvata"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Kahanda"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Mitmuse vorm %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Tõlkimine pole võimalik, sest mitmuse informatsioon sinu keele jaoks ei ole "
+"saadaval. Palun võta ühendust administraatoriga."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "<b>Hetke tõlge:</b>"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Soovitus %d kasutajalt %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Soovitus %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Soovitus kasutajalt %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Soovitus:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Sa pead määrama sobiva salasõna pikkusega vähemalt %d tähemärki."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Salasõna pole sama mis kinnituses."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Logi sisse Pootle'sse"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Kasutajanimi:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Salasõna:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Keel:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Logi sisse"
+
+#: users.py:77
+msgid "Default"
+msgstr "Vaikimisi"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Palun sisesta oma registreerimise andmed"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle registreerimine"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Sinu soovitud kasutajanimi"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Peab olema õige emaili aadress"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Sinu täisnimi"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Sinu soovitud salasõna"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Kinnita salasõna"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Trüki oma salasõna uuesti, et tagada, et see on õigesti sisestatud"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registreeri konto"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Palun sisesta oma aktiveerimise andmed"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle'i konto aktiveerimine"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktiveerimiskood"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Aktiveerimiskood, mille sa said"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktiveeri konto"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Valikud %s jaoks"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Isiklikud detailid"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-post"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Tõlkekeskkonna seaded"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Kasutajakeskkonna keel"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Minu projektid"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Minu keeled"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Koduleht"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Sisestuskõrgus (joontes)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Ridade arv vaaterežiimis"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Ridade arv tõlkerežiimis"
+
+#: users.py:307
+msgid "Error"
+msgstr "Viga"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Sa pead olema lehekülje administraator, et muuta kasutajaid"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Kasutajanimi peab koosnema tärk ja peab algama tähestikulise märgiga."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Sina (või keegi teine) proovis registreerida kontot sinu kasutajanimega.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Me ei talleta sinu reaalset parooli vaid ainult selle räsi.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Kui sul on probleeme registreerimisega, siis palun kontakteeru %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Kui sul on probleeme registreerimisega, siis palun kontakteeru lehekülje "
+"administraatoriga.\n"
+
+#: users.py:444
+#, fuzzy
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "See kasutajanimi on juba olemas. Selle kasutajanimega emailile saadatakse "
+"kiri.\n"
+
+# Pole aimugi hetkel, kus ma seda teksti peaksin nägema..
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Lähen edasi <a href='%s'>sisselogimise lehele</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Sul on tekitatud Pootle'i konto selle emaili aadressiga.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Konto aktiviseerimiseks ava see link:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Sinu aktiviseerimiskood on:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Kui sul ei ole võimalik minna antud lingile siis palun sisesta eespool antud "
+"aktiviseerimiskood.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+"See kiri on saadetud ainult kontrolliks, et kas see emaili aadress on "
+"korrektne. Kui sa ei tahtnud registreerida kontot siis lihtsalt ignoreeri "
+"seda kirja."
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Konto tekitatud. Sulle saadetakse postkasti sisenemise üksikasjad ja "
+"aktiviseerimiskood. Palun sisesta oma aktiviseerimiskood <a "
+"href='%s'>aktiviseerimisleheküljel</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Või lihtsalt ava aktiviseerimislink postkastis)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Sinu kasutajanimi on: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Sinu parool on: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Sinu registreeritud email on: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Suunan edasi registreerimise leheküljele..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Suunan edasi sisselogimise lehele..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Sinu konto on nüüd aktiviseeritud. Suunan edasi sisselogimisse..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Aktiviseerimise informatsioon ei ole korrektne."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktiviseerimine ebaõnnestus"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Sisestuskõrgus peab olema number"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Sisestuslaius peab olema number"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Nähtavate ridade arv vaaterežiimis peab olema number "
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Nähtavate ridade arv tõlkimisrežiimis peab olema number"
+
+#~ msgid "Accept"
+#~ msgstr "Nõustu"
+
+#~ msgid "Reject"
+#~ msgstr "Keeldu"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge Tõlkeprojekt"
+
+#~ msgid "Broaden"
+#~ msgstr "Laienda"
+
+#~ msgid "Narrow"
+#~ msgstr "Kitsenda"
+
+#~ msgid "Reset"
+#~ msgstr "Algsuurus"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Peab olema õige emaili aadress"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Sisestuslaius (tähemärkides)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> on lihtne veebiportaal, mis peaks lubama sul "
+#~ "<strong>tõlkida</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "eelmine kaust"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projektid</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d faili, %d/%d stringi (%d%%) tõlgitud"
+
+#~ msgid "%s language"
+#~ msgstr "%s keel"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "see on demoinstallatsioon pootle'ist"
+
+#~ msgid "current folder"
+#~ msgstr "hetke kaust"
+
+#~ msgid "Log In"
+#~ msgstr "Logi sisse"
+
+#~ msgid "login status"
+#~ msgstr "logimise staatus"
+
+#~ msgid "project root"
+#~ msgstr "projekti juur"
+
+#~ msgid "%s project"
+#~ msgstr "%s projekt"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "sul ei ole õigusi siin tõlkeid muuta"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d stringi (%d%%) tõlgitud"
+
+#~ msgid "%d files, "
+#~ msgstr "%d faili, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Keeled</h3>"
+
+#~ msgid "current file"
+#~ msgstr "hetke fail"
+
+#~ msgid "not logged in"
+#~ msgstr "pole sisse logitud"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pootle Administreerimise Leht"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Sul pole õigusi administrerida pootle't."
+
+#~ msgid "Broaden"
+#~ msgstr "Laienda"
+
+#~ msgid "Narrow"
+#~ msgstr "Kitsenda"
+
+#~ msgid "Reset"
+#~ msgstr "Lähtesta"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Emaili aadress peab olema kehtiv"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Sisestuslaius (tähemärkides)"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/eu/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/eu/jToolkit.po
new file mode 100644
index 0000000..33d0f18
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/eu/jToolkit.po
@@ -0,0 +1,144 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-06-28 22:13+0200\n"
+"Last-Translator: Julen Ruiz Aizpuru <julenx@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.0.1\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s-en saio abiaraztea"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Ekintza hau ezeztatu eta saio berria hasi"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Ekintza hau berretsi beharrean, saioa amaitu eta hasieratik hasi"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Aplikazioa utzi"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Aplikazio hau utzi eta aurrekora itzuli"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", mesedez saioa berretsi"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Saioa"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Erabiltzaile Izena:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Pasahitza:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Hizkuntza:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Aplikazioa aukeratu"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Saioa itxi"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Irten"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b> bezala saioa hasita"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "ezin da saio berria gehitu"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "saioa itxirik"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "konektaturik"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "saio gurasoa itxirik"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "zerbitzari konfigurazioan users edo userprefs sarrera ezarri behar da"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "erabiltzailea ez da existitzen (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "erabiltzaile-izen edo pasahitz okerra"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "huts saioa berrestean"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ez"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Bai"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "ezabatu"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(eranskinik gabe)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "eranskina luzeegia da"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "Eranskin hau ezabatu"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "berezarri"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "eranskin hau ezabatua izan da, egin klik hemen berrezartzeko"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "fitxategia erantsi"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "zerbitzari konfiguraketan users sarrera ezarri behar da"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/eu/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/eu/pootle.po
new file mode 100644
index 0000000..81e05f6
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/eu/pootle.po
@@ -0,0 +1,1499 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-28 09:54+0000\n"
+"Last-Translator: Julen Ruiz Aizpuru <julenx@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demoa"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Hasiera orria"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Erabiltzaileak"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Hizkuntzak"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Proiektuak"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Aukera orokorrak"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Aukera"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Uneko balioa"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Gorde aldaketak"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Izenburua"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Azalpena"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Oinarri URLa"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Hasiera orria"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle hizkuntzen kudeaketa orria"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Kudeaketa orri nagusia"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO kodea"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Izen osoa"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(gehitu hemen hizkuntza)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Karaktere bereziak"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(karaktere bereziak)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Plural kopurua"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(plural kopurua)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Plural ekuazioa"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(plural ekuazioa)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Ezabatu hizkuntza"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Ezabatu %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Estandarra"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle proiektuen kudeaketa orria"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Proiektuaren gakoa"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(gehitu hemen proiektua)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Proiektuaren azalpena"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(proiektuaren azalpena)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Arakatze estiloa"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Fitxategi mota"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Sortu MO fitxategiak"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Ezabatu proiektua"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle erabiltzailearen kudeaketa orria"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Erabiltzaile izena"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(gehitu hemen izen osoa)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Helbide elektronikoa"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(gehitu hemen e-posta)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Pasahitza"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(gehitu hemen pasahitza)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Gaituta"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Gaitu erabiltzaile berria"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Ezabatu erabiltzailea"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Itzuli orri nagusira"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Dauden hizkuntzak"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Eguneratu hizkuntzak"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle kudeatzailea: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Ez duzu proiektu hau kudeatzeko baimenik."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Eguneratu txantiloietatik"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Gehitu hizkuntza"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle kudeaketa: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Proiektuaren hasiera orria"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Ezin dira %s erabiltzaile-izenaren baimenak ezarri - erabiltzailea ez da "
+"existitzen"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Hau GNU-estiloko proiektu bat da (direktorio bat fitxategiak hizkuntzez "
+"izendaturik)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+"Hau estilo estandarreko proiektu bat da (direktorio bat hizkuntz "
+"bakoitzeko)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Erabiltzailearen baimenak"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(hautatu erabiltzailea gehitzeko)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Baimenak"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Ezabatu"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Eguneratu baimenak"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Pootle-ri buruz"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> <strong>itzulpenetan</strong> lagun zaitzakeen "
+"webgune sinple bat da! Pootle <strong>Software Librea</strong> denez, nahi "
+"izanez gero deskargatu eta zure kopia pribatua martxan ipin dezakezu. Bere "
+"garapenean modu ezberdinetan lagun dezakezu (ez duzu programatzen jakin "
+"beharrik)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle proiektua <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>en "
+"dago, hemen iturburu kodea, posta zerrendak eta abarri buruzko argibideak "
+"aurki daitezke."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Izenak \"<b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine\" esan nahi du, baina agian <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">hau irakurri beharko "
+"zenuke</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Bertsioak"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Gunea erabiltzen ari den bertsioak:<br />Pootle %s<br />Translate Toolkit "
+"%s<br />jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (%s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Erabiltzaile orria: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Aldatu aukerak"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Kudeaketa orria"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Kudeatu"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Lotura azkarrak"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Mesedez sakatu 'Aldatu aukerak' eta hizkuntza eta proiekturen bat hautatu"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "Proiektu %d, %%%d itzulita"
+msgstr[1] "%d proiektu, %%%d itzulita"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Kudeaketa"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Hizkuntzaren kodea"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Hizkuntzaren izena"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "Hizkuntza %d, batez beste %%%d itzulita"
+msgstr[1] "%d Hizkuntza, batez beste %%%d itzulita"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Hizkuntza"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: %s proiektua, %s hizkuntza"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Bilatu"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Bilaketa aurreratua"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Ezin da fitxategia igo, ez da fitxategirik erantsi"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "PO fitxategi eta PO fitxategi zipak bakarrik igo ditzakezu"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Esleitu kateak"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Esleitu ekintza"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Esleitu erabiltzaileari"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "helburuak"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Idatzi helburuaren izena"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Gehitu helburua"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Igo fitxategia"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Hautatu igotzeko fitxategia"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Gainidatzi"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Gainidatzi fitxategia balego"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Batu"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Batu fitxategi berria dagoenarekin eta gatazkak gomendio bihurtu"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ez dago helburuan"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Gehitu erabiltzailea"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO fitxategia"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF fitxategia"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts fitxategia"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV fitxategia"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO fitxategia"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Eguneratu"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Igo"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Kate guztiak"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Itzuli gabeak"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Esleitu gabeak"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Esleitu eta itzuli gabeak"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Ezarri helburua"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Batzuk hautatu"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Ezarri honi"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Bistarazi edizio funtzioak"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Bistarazi estatistikak"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Bistarazi jarraipenak"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Ezkutatu jarraipenak"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Ikusi egiaztapenak"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Ezkutatu egiaztapenak"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Bistarazi helburuak"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Ezkutatu helburuak"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Bistarazi ezarpenak"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Ezkutatu ezarpenak"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Helburu guztiak: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Itzuli nire kateak"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Ikusi nire kateak"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Ez duzu katerik esleituta"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Nire kateen itzulpen azkarra"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Ez duzu itzuli gabeko katerik esleituta"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Berrikusi gomendioak"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Ikusi gomendioak"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Itzulpen azkarra"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Bistarazi itzuli gabeak"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ez dago itzuli gabeko elementurik"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Itzuli dena"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Helburuen ZIPa"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Karpetaren ZIPa"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Sortu SDFa"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "kate %d-ek (%%%d) huts"
+msgstr[1] "%d katek (%%%d) huts"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d hitz (%%%d) esleituta"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d kate]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d hitz (%%%d) itzulita"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Proiektu guztiak"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Hizkuntza guztiak"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Nire kontua"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumentazioa eta laguntza"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Irten"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Hasi saioa"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Eman izena"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Gaitu"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle logoa"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Pootle zerbitzari honi buruz"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Helburu guztiak"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d fitxategi"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "fitxategi %d"
+msgstr[1] "%d fitxategi"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d kate"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Izena"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Itzulia"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Itzulitako ehunekoa"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Itzulitako hitzak"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Zalantzazkoa"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Zalantzazkoen ehunekoa"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Zalantzazko hitzak"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Itzuli gabeko ehunekoa"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Itzuli gabeko hitzak"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Guztira"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Hitz guztira"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graf"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Jatorrizko testua"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Helburu testua"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Iruzkinak"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Kokalekuak"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Huts saioa hasterakoan"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Saio hasiera orrira berbideratzen..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Saioa hasi behar duzu hasiera orrira joateko"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Xehetasun pertsonalak eguneratu dira"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Saioa hasi behar duzu kudeaketa orrira joateko"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Hasiera orrira berbideratzen..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Ez duzu pootle kudeatzeko baimenik."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Ikusi"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Gomendatu"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Itzuli"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Gainbegiratu"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Artxiboa"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Konpilatu PO fitxategiak"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Esleitu"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Ezin duzu \"nobody\" edo \"default\" erabiltzailea ezabatu"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Ez duzu hemen helburuak aldatzeko baimenik"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Ez duzu hemen fitxategirik igotzeko baimenik"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Ez duzu hemen fitxategirik gainidazteko baimenik"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Ez duzu hemen fitxategi berririk igotzeko baimenik"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Ez duzu hemen fitxategirik eguneratzeko baimenik"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Ez duzu hemen fitxategirik igotzeko baimenik"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Ez duzu hemen ezarpenik aldatzeko baimenik"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Ez duzu hemen itzulpenak aldatzeko baimenik"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Ez duzu hemen aldaketak gomendatzeko baimenik"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Ez duzu hemen gomendioak berrikusteko baimenik"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d itzulirik\n"
+"(%d itzuli gabe, %d zalantzan)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: %s %s-ra itzultzen: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Jatorrizkoa"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Itzulpena"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Onartu gomendioa"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Baztertu gomendioa"
+
+# Garatzaile iruzkinak
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Itzultzaile iruzkinak"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Garatzaile iruzkinak"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Erlazionatua"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Lanean..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Errorea: Zerbait oker joan da."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Banakako prozesaketaren amaiera"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Hemen klik egin hasierara itzultzeko"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Hasi"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Aurreko %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%d-%d bitartea %d elementutatik"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Hurrengo %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Amaiera"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s arakatzen"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Ez dago bilaketaren pareko elementurik ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Aukeratutako elementuak bukatu dira"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singularra"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plurala"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Editatu"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopiatu"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Salto"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Atzera"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Bidali"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Luzatu"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Txikitu"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "%d plural forma"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Itzulpena ez da posible hizkuntza honetako plural datuak ez baitaude "
+"ezarrita. Jar zaitez harremanetan sistema kudeatzailearekin."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Uneko itzulpena:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "%s(e)k %d gomendatzen du:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "%d gomendioa:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s(r)en gomendioa:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Gomendioa:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Gutxienez %d karaktereko baliozko pasahitz bat eman behar duzu."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Pasahitza eta berrespena ez datoz bat."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Pootlen saioa hasi"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Erabiltzaile izena:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Pasahitza:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Hizkuntza:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Hasi saioa"
+
+#: users.py:77
+msgid "Default"
+msgstr "Lehenetsia"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Mesedez ezarri zure izen-emate xehetasunak"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle izen-ematea"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Eskatutako erabiltzaile izena"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Baliozko e-posta helbide bat idatzi behar duzu"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Izen osoa"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Aukeratutako pasahitza"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Berretsi pasahitza"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Berridatzi pasahitza ongi idatzi duzula ziurtatzeko"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Eman izena"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Mesedez sar itzazu zure aktibazio xehetasunak"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle kontua gaitzea"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Gaitze gakoa"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Jasotako gaitze gakoa"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Gaitu kontua"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Aukerak: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Xehetasun pertsonalak"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-posta"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Itzulpen interfazearen konfigurazioa"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Erabiltzaile Interfazearen hizkuntza"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Nire proiektuak"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Nire hizkuntzak"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Hasiera orria"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Iturburu hizkuntza alternatiboa"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Bat ere ez"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Sarrera altuera (errenkada)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Bistaratze moduko kate kopurua"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Itzulpen moduko kate kopurua"
+
+#: users.py:307
+msgid "Error"
+msgstr "Errorea"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Gune kudeatzailea izan behar zara erabiltzaileak aldatzeko"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Erabiltzaile izena alfazenbakizkoa izan eta hizki batez hasi behar da"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Zu (edo beste norbait) zure erabiltzaile izenaz kontu bat harpidetzen saiatu "
+"da.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Guk ez dugu zure pasahitza gordetzen horren egiaztapen bat baizik.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Harpidetzarekin arazorik izanez gero, harremanetan ipini %s-rekin.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Harpidetzarekin arazorik izanez gero, harremanetan ipini sistema "
+"kudeatzailearekin.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Erabiltzaile izen badago dagoeneko. Harpidedunaren helbidera e-posta bat "
+"bidaliko da.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "<a href='%s'>Saioa hasten</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Pootle kontu bat sortu da e-posta kontu hau erabiliz.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Kontu hau gaitzeko, jarraitu lotura hau:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Zure gaitze gakoa:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Ezin baduzu lotura jarraitu, idatzi goiko gakoa gaitze orrian.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Mezu hau e-posta helbidea benetan baliozkoa den egiaztatzeko bidaltzen da. "
+"Ez baduzu kontu bat harpidetu nahi, alde batetara utz ezazu.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Kontua sortu da. E-postan jasoko dituzu gaitze kodea eta saio xehetasunak. "
+"Idatzi zure gaitze kodea <a href='%s'>gaitze orrian</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Edo egin klik e-postako gaitze loturan)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Zure erabiltzaile-izena: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Zure pasahitza: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Erregistraturiko e-posta helbidea: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Harpidetza orrira berbideratzen..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Saio hasiera orrira berbideratzen..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Zure kontua gaitua izan da! Saio hasiera orrira berbideratzen..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Gaitze informazioa ez da zuzena."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Huts gaitzerakoan"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Sarrera altuera zenbakizkoa izan behar da"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Sarrera zabalera zenbakizkoa izan behar da"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Bistaratze moduko errenkada kopurua zenbakizkoa izan behar da"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Itzulpen moduko errenkada kopurua zenbakizkoa izan behar da"
+
+#~ msgid "Accept"
+#~ msgstr "Onartu"
+
+#~ msgid "Reject"
+#~ msgstr "Ezetsi"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge Itzulpen Proiektua"
+
+#~ msgid "Broaden"
+#~ msgstr "Zabaldu"
+
+#~ msgid "Narrow"
+#~ msgstr "Estutu"
+
+#~ msgid "Reset"
+#~ msgstr "Berezarri"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Baliozko ePosta helbide bat izan behar da"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Sarrera zabalera (karaktere)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> <strong>itzulpenak</strong> egiten laguntzeko "
+#~ "sortutako webgune bat da!"
+
+#~ msgid "parent folder"
+#~ msgstr "aurreko karpeta"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Proiektuak</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d fitxategi, %d/%d kate (%d%%) itzulirik"
+
+#~ msgid "%s language"
+#~ msgstr "%s hizkuntza"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "hau pootle demostrazio instalazio bat da"
+
+#~ msgid "current folder"
+#~ msgstr "uneko karpeta"
+
+#~ msgid "Log In"
+#~ msgstr "Saioa hasi"
+
+#~ msgid "Log Out"
+#~ msgstr "saioa utzi"
+
+#~ msgid "login status"
+#~ msgstr "saio egoera"
+
+#~ msgid "project root"
+#~ msgstr "proiektu erroa"
+
+#~ msgid "%s project"
+#~ msgstr "%s proiektua"
+
+#~ msgid "<b>Current Translation:</b>"
+#~ msgstr "<b>DAgoen Itzulpena:</b>"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "Ez duzu baimenik hemen aldaketak gomendatzeko"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "Ez duzu baimenik hemen itzulpenak aldatzeko"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d kate (%d%%) itzulirik"
+
+#~ msgid "%d files, "
+#~ msgstr "%d fitxategi, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Hizkuntzak</h3>"
+
+#~ msgid "current file"
+#~ msgstr "uneko fitxategia"
+
+#~ msgid "not logged in"
+#~ msgstr "saioa hasi gabe"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pootle Kudeaketa Orrialdea"
+
+#~ msgid "General Options"
+#~ msgstr "Aukera Orokorrak"
+
+#~ msgid "Main Admin page"
+#~ msgstr "Kudeaketa orri nagusia"
+
+#~ msgid "Remove language"
+#~ msgstr "Hizkuntza ezabatu"
+
+#~ msgid "Remove project"
+#~ msgstr "Proiektua ezabatu"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Ez duzu Pootle kudeatzeko baimenik."
diff --git a/Pootle-1.2.1/Pootle/po/pootle/fa/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/fa/jToolkit.po
new file mode 100644
index 0000000..6520402
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/fa/jToolkit.po
@@ -0,0 +1,141 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-05-26 14:50+0200\n"
+"Last-Translator: Mohammad Ebrahim Mohammadi Panah <mebrahim@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.0\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "ورود به سیستم برای %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "انصرا٠از این کنش و آغاز یک نشست جدید"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "به جای تصدیق این کنش، از سیستم خارج شوید Ùˆ دوباره از صÙر آغاز کتید"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "خروج از برنامه"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "خروج از این برنامه و بازگشت به برنامه‌ی والد"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "ØŒ لطÙاً ورود به سیستم را تصدیق کنید"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ورود به سیستم"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "نام کاربر:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "گذرواژه:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "زبان:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "انتخاب زبان"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "خروج از سیستم"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "خروج"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "وارد شده به اسم <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "اضاÙÙ‡ کردن نشست جدید ممکن نبود"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "از سیستم خارج شد"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "متصل شد"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "خارج شده از نشست پدر"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "نیاز است ورودی users یا userprefs در پیکربندی خادم تعری٠شود"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "کاربر وجود ندارد (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "نام کاربر یا گذرواژه‌ی نامعتبر"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "تصدیق ورود به سیستم شکست خورد"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "نه"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "بله"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "حذÙ"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(بدون پیوست)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "پیوست خیلی بزرگ است"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "حذ٠این پیوست"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "بازگرداندن"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "این پیوست حذ٠شده است. برای بازگرداندن آن اینجا کلیک کنید"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "پیوست کردن یک پرونده"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/fa/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/fa/pootle.po
new file mode 100644
index 0000000..e652bd4
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/fa/pootle.po
@@ -0,0 +1,1444 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-29 11:11+0000\n"
+"Last-Translator: Mohammad Ebrahim Mohammadi Panah <mebrahim@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "نمایش پوتل"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "آغازه"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "کاربران"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "زبان‌ها"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "پروژه‌ها"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "انتخاب‌های عمومی"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "انتخاب"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "مقدار کنونی"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "تغییرات ذخیره شود"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "عنوان"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "توضیح"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL مبنا"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "صÙحهٔ آغازه"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "صÙحهٔ مدیریت زبان‌های پوتل"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "صÙحهٔ اصلی مدیریت"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "کد ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "نام کامل"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(زبان را این جا اضاÙÙ‡ Ú©Ù†)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "حرو٠ویژه"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(حرو٠ویژه)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "تعداد جمع‌ها"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(تعداد جمع‌ها)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "معادلهٔ جمع"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(معادلهٔ جمع)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "زبان را حذ٠کن"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s را حذ٠کن"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "معیار"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "صÙحهٔ مدیریت پروژه‌های پوتل"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "کد پروژه"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(پروژه را این جا اضاÙÙ‡ Ú©Ù†)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "توضیح پروژه"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(توضیح پروژه)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "سبک بررسی‌کننده"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "نوع پرونده"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "پرونده‌های MO بساز"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "پروژه را حذ٠کن"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "صÙحهٔ مدیریت کاربران پوتل"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "نام کاربر"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(نام کامل را این جا اضاÙÙ‡ Ú©Ù†)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "نشانی رایانامه"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(رایانامه را این جا اضاÙÙ‡ Ú©Ù†)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "گذرواژه"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(گذرواژه را این جا اضاÙÙ‡ Ú©Ù†)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Ùعال شد"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "کاربر جدید را Ùعال Ú©Ù†"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "کاربر را حذ٠کن"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "بازگشت به صÙحهٔ اصلی"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "زبان‌های موجود"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "زبان‌ها را به روز کن"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "مدیر پوتل: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "شما حق مدیریت این پروژه را ندارید."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "از روی قالب‌ها به روز کن"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "زبان اضاÙÙ‡ Ú©Ù†"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "مدیر پوتل: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "صÙحهٔ آغازهٔ پروژه"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "نمی‌توان حقوق کاربر %s را ثبت کرد - کاربر وجود ندارد"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"این پروژه به شیوهٔ GNU است (یک شاخه، پرونده‌ها بر اساس زبان نام گذاری "
+"می‌شوند)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "این پروژه به شیوهٔ معیار است (یک شاخه برای هر زبان)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "مجوز‌های کاربر"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(برای اÙزودن کاربر انتخاب کنید)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "حقوق"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "حذÙ"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "حقوق را به روز کن"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "دربارهٔ پوتل"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>پوتل</strong> یک درگاه سادهٔ وب است که باید به شما کمک کند که "
+"<strong>ترجمه کنید</strong>! از آن جا Ú©Ù‡ پوتل یک <strong>نرم‌اÙزار "
+"آزاد</strong> است، شما می‌توانید آن را بارگیری کنید و اگر مایلید نسخهٔ "
+"خودتان را اجرا نمایید. شما همچنین می‌توانید به روش‌های متعددی در توسعهٔ آن "
+"مشارکت کنید (شما مجبور نیستید بتوانید برنامه بنویسید)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"خود پروژهٔ پوتل در <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"میزبانی می‌شود. در آن‌ جا می‌توانید جزئیات کد منبع، Ùهرست‌های نامه‌نگاری Ùˆ "
+"غیره را بیابید."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"نام پوتل نماینده‌ی<span dir=\"ltr\"> <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine</span> (موتور برخط "
+"ترجمه/محلی‌سازی مبتنی بر PO) است، ولی ممکن است لازم باشد که <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">این مطلب</a> را هم بخوانید."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "نسخه‌ها"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"نرم‌اÙزار این پایگاه: <div align=\"left\"><span dir=\"ltr\"><br />Pootle %s<br "
+"/>Translate Toolkit %s<br />jToolkit %s<br />Kid %s<br />ElementTree %s<br "
+"/>Python %s (on %s/%s)</span></div>"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "صÙحهٔ کاربر برای: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "تغییر انتخاب‌ها"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "صÙحهٔ مدیریت"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "مدیریت"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "پیوندهای سریع"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "لطÙاً روی «تغییر انتخاب‌ها» کلیک کنید Ùˆ تعدادی زبان Ùˆ پروژه انتخاب کنید"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d پروژه، به طور متوسط %%%d ترجمه شده است"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "مدیر"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "کد زبان"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "نام زبان"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d زبان، به طور متوسط %%%d ترجمه شده است"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "زبان"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: پروژهٔ %s، زبان %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "جستجو"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "جستجوی پیشرÙته"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "نمی‌توان پرونده‌ای بالاگذاری کرد، پرونده‌ای پیوست نشده است"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+"Ùقط می‌توان پرونده‌های PO Ùˆ پرونده‌های ZIP حاوی پرونده‌های PO را بالاگذاری "
+"کرد"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "رشته‌ها را واگذار کن"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "عمل واگذاری"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "به کاربر واگذار کن"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "اهداÙ"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "نام هد٠را وارد کنید"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "هد٠را اضاÙÙ‡ Ú©Ù†"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "بالاگذاری پرونده"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "پرونده را برای بالاگذاری انتخاب کنید"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "بازنویسی"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "اگر پرونده وجود داشت آن را بازنویسی کن"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "ادغام کن"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"پرونده را با پروندهٔ کنونی ادغام کن و ناسازگاری‌ها را به پیشنهاد تبدیل کن"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "در هیچ هدÙÛŒ"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "کاربر اضاÙÙ‡ Ú©Ù†"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "پروندهٔ PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "پروندهٔ XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "پروندهٔ Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "پروندهٔ CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "پروندهٔ MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "به روز کن"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "اعزام"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "همهٔ رشته‌ها"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "ترجمه‌نشده"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "واگذارنشده"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "واگذار‌نشده و ترجمه‌نشده"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "هد٠را مقرر کن"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "انتخاب چند مورد"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "واگذار کن به"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "نمایش اعمال ویراستاری"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "نمایش آمار"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "نمایش ردپاها"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "پنهان‌سازی ردپاها"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "نمایش بررسی‌ها"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "پنهان‌سازی بررسی‌ها"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "نمایش اهداÙ"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "پنهان‌سازی اهداÙ"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "نمایش واگذاری‌ها"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "پنهان‌سازی واگذاری‌ها"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "همهٔ اهداÙ"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "ترجمهٔ رشته‌های من"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "مشاهدهٔ رشته‌های من"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "هیج رشته‌ای به شما واگذار نشده‌است"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "ترجمهٔ سریع رشته‌های من"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "هیج رشته‌ٔ ترجمه‌نشده‌ای به شما واگذار نشده‌است"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "بازبینی پیشنهادها"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "مشاهدهٔ پیشنهادها"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "ترجمهٔ سریع"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "مشاهدهٔ ترجمه‌نشده‌ها"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "رشتهٔ ترجمه‌نشده‌ای نیست"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "ترجمهٔ همه"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP شدهٔ هدÙ"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP شدهٔ پوشه"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF تولید کن"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d رشته (%%%d) ناموÙÙ‚ بود"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d تا از %d کلمه (%%%d) واگذار شده‌اند"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d تا از %d رشته]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d تا از %d کلمه (%%%d) ترجمه شده است"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "همهٔ پروژه‌ها"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "همه‌ٔ زبان‌ها"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "حساب من"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "مستندات و کمک"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "خروج"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "ورود"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "ثبت نام"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Ùعال Ú©Ù†"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "نماد پوتل"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "دربارهٔ این خادم پوتل"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "همهٔ اهداÙ"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d تا از %d پرونده"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d پرونده"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d تا از %d رشته"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "نام"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "ترجمه‌شده"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "درصد ترجمه‌شده"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "کلمات ترجمه‌شده"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Ùازی"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "درصد Ùازی"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "کلمات Ùازی"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "درصد ترجمه‌نشده‌ها"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "کلمات ترجمه‌نشده"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "مجموع"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "همهٔ کلمات"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "نمودار"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "متن مبدأ"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "متن مقصد"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "نظرات"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "مکان‌ها"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "ورود ناموÙÙ‚ بود"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "در حال هدایت به صÙحهٔ ورود..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "برای دسترسی به صÙحهٔ آغازه باید وارد سامانه شوید"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "جزئیات شخصی به روز شد"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "برای دسترسی به صÙحهٔ مدیریت باید وارد سامانه شوید"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "در حال هدایت به آغازه..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "شما حق مدیریت پوتل را ندارید."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "مشاهده"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "پیشنهاد"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "ترجمه"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "بازبینی"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "بایگانی"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "ترجمهٔ پرونده‌های PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "واگذاری"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "شما نمی توانید کاربر «nobody» یا «default» را حذ٠کنید"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "شما این جا حق تغییر هدÙ‌ها را ندارید"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "شما این جا حق بالاگذاری پرونده‌ها را ندارید"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "شما این جا حق بازنویسی ‌پرونده‌ها را ندارید"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "شما این جا حق بالاگذاری پرونده‌های جدید را ندارید"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "شما این جا حق به روز کردن پرونده‌ها را ندارید"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "شما این جا حق اعزام پرونده‌ها را ندارید"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "شما این جا حق تغییر واگذاری‌ها را ندارید"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "شما این جا حق تغییر دادن ترجمه‌ها را ندارید"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "شما این جا حق پیشنهاد دادن تغییرات را ندارید"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "شما این جا حق بازبینی پیشنهاد‌ها را ندارید"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d تا از %d تا ترجمه‌شده\n"
+"(%d تا ترجمه‌نشده، %d تا Ùازی)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "پوتل: درحال ترجمهٔ %s به %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "اصلی"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "ترجمه‌"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "قبول پیش‌نهاد"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "رد پیش‌نهاد"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "توضیحات مترجم"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "توضیحات توسعه‌دهنده"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "مرتبط"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "مشغول..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "خطا: ایرادی پیش آمد."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "پایان دسته‌کار"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "برای بازگشت به صÙحهٔ اصلی این جا کلیک کنید"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "شروع"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d مورد قبلی"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "موارد %d تا %d از %d تا"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d مورد بعدی"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "پایان"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "در حال بررسی %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "هیچ نتیجه ای مطابق جستجو شما یاÙت نشد ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "شما مرور موارد منتخبتان را به پایان رساندید"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Ù…Ùرد"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "جمع"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "ویرایش"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "رونوشت‌برداری"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "پرش"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "قبلی"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "ارائه"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "اÙزایش ارتÙاع"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "کاهش ارتÙاع"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "شکل جمع %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"ترجمه ممکن نیست، زیرا اطلاعات حالت جمع برای زبان شما در اختیار نیست. لطÙاً "
+"با مدیر سایت تماس بگیرید."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "ترجمهٔ کنونی:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "پیشنهاد %d از %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "پیشنهاد %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "پیشنهاد از %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "پیشنهاد:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "شما باید یک گذرواژهٔ معتبر به طول حداقل %d حر٠وارد کنید."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "گذرواژه همان تاییدیه نیست."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "ورود به پوتل"
+
+#: users.py:66
+msgid "Username:"
+msgstr "نام کاربر:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "گذرواژه:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "زبان:"
+
+#: users.py:71
+msgid "Login"
+msgstr "ورود"
+
+#: users.py:77
+msgid "Default"
+msgstr "پیش‌Ùرض"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "لطÙاً جزئیات ثبت‌نام خود را وارد کنید"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "ثبت نام در پوتل"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "نام کاربر درخواستی شما"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "شما باید یک نشانی رایانامهٔ معتبر وارد کنید"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "نام کامل شما"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "گذرواژهٔ دل‌خواه شما"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "تایید گذرواژه"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "برای اطمینان از درست وارد شدن گذرنامه‌تان، آن را دوباره وارد کنید"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "ثبت حساب"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "لطÙاً جزئیات Ùعال‌سازی خود را وارد کنید"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Ùعال‌سازی حساب پوتل"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "کد Ùعال‌سازی"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "کد Ùعال‌سازی‌ای Ú©Ù‡ دریاÙت کرده‌اید"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "حساب را Ùعال Ú©Ù†"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "انتخاب‌ها برای: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "جزئیات شخصی"
+
+#: users.py:186
+msgid "Email"
+msgstr "رایانامه"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "پیکربندی واسط ترجمه"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "زبان واسط کاربر"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "پروژه‌های من"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "زبان‌های من"
+
+#: users.py:196
+msgid "Home page"
+msgstr "صÙحهٔ آغازه"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "زبان مبدأ دیگر"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "هیچ"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "ارتÙاع ورودی (به تعداد خط)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "تعداد سطرها در حالت مشاهده"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "تعداد سطرها در حالت ترجمه"
+
+#: users.py:307
+msgid "Error"
+msgstr "خطا"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "شما باید مدیر پایگاه باشید تا بتوانید کاربران را تغییر دهید"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "نام کاربر باید حرÙÛŒ-عددی باشد Ùˆ با یک حر٠شروع شود"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "شما (یا شخصی دیگر) سعی کرده‌اید(کرده‌است) یک حساب با نام کاربر شما ثبت کند.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "ما گذرواژهٔ شما را نگه‌داری نمی‌کنیم، بلکه Ùقط Ø´Ú©Ù„ÛŒ درهم‌ریخته از آن را "
+"ذخیره می‌کنیم.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "اگر شما مشکلی با ثبت نام دارید لطÙاً با %s تماس بگیرید.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "اگر شما مشکلی با ثبت نام دارید لطÙاً با مدیر پایگاه تماس بگیرید.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+"این نام کاربر قبلاً انتخاب شده است. یک رایانامه به نشانی رایانامهٔ ثبت شده "
+"Ùرستاده خواهد ‌شد."
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "ره‌سپار <a href='%s'>ورود</a> می‌شویم\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "یک حساب پوتل توسط این نشانی رایانامه برای شما ساخته شده است.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "برای Ùعال کردن حسابتان این پیوند را دنبال کنید:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"کد Ùعال‌سازی شما این است:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "اگر شما نمی‌توانید پیوند را دنبال کنید، لطÙاً کد بالا را در صÙحهٔ Ùعال‌سازی "
+"وارد کنید.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "این پیغام برای حصول اطمینان از صحت نشانی رایانامه Ùرستاده شده است. اگر شما "
+"نمی‌خواستید حسابی ثبت کنید می‌توانید به سادگی این پیغام را نادیده بگیرید.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"حساب ساخته شد. رایانامه‌ای حاوی جزئیات ورود Ùˆ کد Ùعال‌سازی به شما Ùرستاده "
+"خواهد شد. لطÙاً کد Ùعال‌سازی خود را در <a href='%s'>صÙحهٔ Ùعال‌سازی</a> وارد "
+"کنید."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(یا به سادگی روی پیوند Ùعال‌سازی داخل رایانامه کلیک کنید)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "نام شما: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "گذرواژهٔ شما: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "نشانی رایانامهٔ ثبت شدهٔ شما: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "در حال هدایت به صÙحهٔ ثبت نام..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "در حال هدایت به صÙحهٔ ورود..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "حساب شما Ùعال شده است. در حال هدایت به صÙحهٔ ورود..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "اطلاعات Ùعال‌سازی معتبر نبود."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Ùعال‌سازی ناموÙÙ‚ بود."
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "ارتÙاع ورودی باید عدد باشد"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "عرض ورودی باید عدد باشد"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "تعداد سطرهای نمایش داده شده در حالت مشاهده باید عدد باشد"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "تعداد سطرهای نمایش داده شده در حالت ترجمه باید عدد باشد"
+
+#~ msgid "Accept"
+#~ msgstr "قبول"
+
+#~ msgid "Reject"
+#~ msgstr "رد"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "پروژهٔ ترجمهٔ WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "اÙزایش عرض"
+
+#~ msgid "Narrow"
+#~ msgstr "کاهش عرض"
+
+#~ msgid "Reset"
+#~ msgstr "حالت اول"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "باید یک نشانی رایانامه‌ی معتبر باشد"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "عرض ورودی (به تعداد خط)"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>پوتل</strong> ورودی وبی ساده‌ای است که شما را قادر می‌سازد "
+#~ "<strong>ترجمه</strong> کنید!"
+
+#~ msgid "parent folder"
+#~ msgstr "پوشه‌ی والد"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">پروژه‌ها</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%Id پرونده، %Id از %Id رشته (٪%Id) ترجمه شده"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "این یک نصب نمایشی پوتل است"
+
+#~ msgid "current folder"
+#~ msgstr "پرونده‌ی Ùعلی"
+
+#~ msgid "login status"
+#~ msgstr "وضعیت ورود به سیستم"
+
+#~ msgid "project root"
+#~ msgstr "ریشه پروژه"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "شما اجازهء تغییر ترجمه را ندارید"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d عبارت (%d%%) ترجمه شده است"
+
+#~ msgid "%d files, "
+#~ msgstr "%d Ùایل،"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/fi/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/fi/jToolkit.po
new file mode 100644
index 0000000..68a6b59
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/fi/jToolkit.po
@@ -0,0 +1,145 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-08-07 15:42+0200\n"
+"Last-Translator: Jussi Aalto <jta_lnx@dnainternet.net>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.10rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Kirjaudu sisään %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Peruuta tämä toimi ja aloita uusi sessio"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Kirjaudu ulos ja aloita alusta tallentamatta tätä toimintoa"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Poistu sovelluksesta"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Poistu sovelluksesta ja palaa isäntäsovellukseen"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", varmenna sisäänkirjautuminen"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Kirjaudu sisään"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Käyttäjänimi:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Salasana:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Kieli:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Valitse Sovellus"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Kirjaudu ulos"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Poistu"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "kirjauduttu sisään tunnuksella <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "uuden session avaaminen ei onnistunut"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "kirjauduttu ulos"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "yhdistetty"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "poistu isäntäsessiosta"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"käyttäjät tai käyttäjäasetusten syöte tulee määritellä palvelimen asetuksissa"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "käyttäjätunnusta ei ole (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "väärä käyttäjänimi ja/tai salasana"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "sisäänkirjautumisen varmennus epäonnistui"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ei"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Kyllä"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "poista"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ei liitettä)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "liite on liian suuri"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "poista tämä liite"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "palauta"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "tämä liite on poistettu. paina tästä palauttaaksesi se"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "liitä tiedosto"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "käyttäjän syöte palvelimen asetustiedostossa täytyy määritellä"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/fi/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/fi/pootle.po
new file mode 100644
index 0000000..9288cc5
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/fi/pootle.po
@@ -0,0 +1,1404 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-01 01:18+0000\n"
+"Last-Translator: Jussi Aalto <jta_lnx@dnainternet.net>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootlen kokeiluversio"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Etusivu"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Käyttäjät"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Kielet"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projektit"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Yleiset asetukset"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Valinta"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Nykyinen arvo"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Tallenna muutokset"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Otsikko"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Kuvaus"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Perus-URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Kotisivu"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootlen kieltenhallintasivu"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Hallinnan pääsivu"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO-koodi"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Koko nimi"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(lisää kieli tähän)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Erikoismerkit"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(erikoismerkit)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Monikoiden määrä"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(monikoiden määrä)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Monikon kaava"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(monikon kaava)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Poista kieli"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Poista %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Normaali"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootlen projektienhallintasivu"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projektin koodi"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(lisää projekti tähän)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projektin kuvaus"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(projektin kuvaus)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Tarkistustyyli"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tiedostotyyppi"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Luo MO-tiedostot"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Poista projekti"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootlen käyttäjähallintasivu"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Käyttäjätunnus"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(lisää koko nimi tähän)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Sähköpostiosoite"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(lisää sähköpostiosoite tähän)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Salasana"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(lisää salasana tähän)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktivoitu"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktivoi uusi käyttäjä"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Poista käyttäjä"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Takaisin pääsivulle"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Nykyiset kielet"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Päivitä kielet"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle-hallinta: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Sinulla ei ole tämän projektin ylläpito-oikeuksia."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Päivitä mallitiedostoista"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Lisää kieli"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle-hallinta: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Projektin kotisivu"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Käyttäjän %s oikeuksia ei voida asettaa - käyttäjää ei ole olemassa"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Tämä on GNU-tyylinen projekti (yksi hakemisto, tiedostonimet kielen mukaan)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Tämä on normaalityylinen projekti (yksi hakemisto per kieli)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Käyttöoikeudet"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(valitse lisätäksesi käyttäjän)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Oikeudet"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Poista"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Päivitä oikeudet"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Tietoja Pootlesta"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> on yksinkertainen www-portaali jonka avulla voit "
+"<strong>suomentaa</strong>! Koska Pootle on <strong>vapaata "
+"ohjelmistoa</strong>, voit ladata sen verkosta ja käyttää omaa kopiotasi "
+"niin kuin haluat. Voit myös osallistua kehitystyöhön monella eri tavalla "
+"(ohjelmointitaidot eivät ole välttämättömiä)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Itse Pootle-projektia isännöidään osoitteessa <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>, "
+"mistä löytyy lisätietoa lähdekoodista, postituslistoista jne."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Nimi Pootle tulee sanoista <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation "
+"/ <b>L</b>ocalization <b>E</b>ngine, mutta kannattanee lukea <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">tämä</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versiot"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Tällä sivustolla on käytössä:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (alustana "
+"%s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Käyttäjän sivut: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Vaihda asetuksia"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Hallintasivu"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Hallinta"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Pikalinkit"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Napsauta \"Vaihda asetuksia\" ja valitse haluamasi kielet ja projektit"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekti, keskimäärin %d%% käännetty"
+msgstr[1] "%d projektia, keskimäärin %d%% käännetty"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Hallinta"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Kielikoodi"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Kielen nimi"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d kieli, keskimäärin %d%% käännetty"
+msgstr[1] "%d kieltä, keskimäärin %d%% käännetty"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Kieli"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekti %s, kieli %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Haku"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Tarkempi haku"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Tiedoston lähetys ei onnistu, liitetiedosto puuttuu"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Vain PO-tiedostoja ja zip-pakattuja PO-tiedostoja voi lähettää"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Aseta tehtäväksi"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Osoitettava tehtävä"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Osoita käyttäjälle"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "tavoitteet"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Anna tavoitteen nimi"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Lisää tavoite"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Lähetä tiedosto"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Valitse lähetettävä tiedosto"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Korvaa"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Korvaa nykyisen tiedoston, mikäli sellainen on olemassa"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Yhdistä"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Yhdistää tiedoston nykyiseen ja muuntaa ristiriitaisuudet ehdotuksiksi"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ei kuulu tavoitteeseen"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Lisää käyttäjä"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO-tiedosto"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF-tiedosto"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts -tiedosto"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV-tiedosto"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO-tiedosto"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Päivitä"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Lähetys"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Kaikki merkkijonot"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Kääntämättömät"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Asettamattomat"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Asettamattomat ja kääntämättömät"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Aseta tavoite"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Valitse useita"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Osoita käyttäjälle"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Näytä muokkaustoiminnot"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Näytä tilastot"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Näytä seuranta"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Piilota seuranta"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Näytä tarkistukset"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Piilota tarkistukset"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Näytä tavoitteet"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Piilota tavoitteet"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Näytä tehtäväosoitukset"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Piilota tehtäväosoitukset"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Kaikki tavoitteet: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Käännä omia merkkijonoja"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Näytä omat merkkijonot"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Ei osoitettuja merkkijonoja"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Omien merkkijonojen pikakäännös"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Ei osoitettuja kääntämättömiä merkkijonoja"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Tarkasta ehdotuksia"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Katsele ehdotuksia"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Pikakäännös"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Näytä kääntämättömät"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ei kääntämättömiä kohtia"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Käännä kaikki"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Tavoite ZIP-tiedostona"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Kansio ZIP-tiedostona"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Luo SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d merkkijono (%d%%) epäonnistunut"
+msgstr[1] "%d merkkijonoa (%d%%) epäonnistunut"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d sanaa (%d%%) osoitettuna"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d merkkijonoa]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d sanaa (%d%%) käännetty"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Kaikki projektit"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Kaikki kielet"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Oma käyttäjätili"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumentit & ohjeet"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Kirjaudu ulos"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Kirjaudu sisään"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Rekisteröidy"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktivoi käyttäjätili"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootlen logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Tietoja tästä Pootle-palvelimesta"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Kaikki tavoitteet"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d tiedostoa"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d tiedosto"
+msgstr[1] "%d tiedostoa"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d merkkijonoa"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nimi"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Käännetty"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Käännösprosentti"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Käännettyjä sanoja"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Sumeita"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Sumeiden prosenttimäärä"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Sumeita sanoja"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Kääntämättömien prosenttimäärä"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Kääntämättömiä sanoja"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Yhteensä"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Sanoja yhteensä"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Diagrammi"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Lähdeteksti"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Kohdeteksti"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Kommentit"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Sijainnit"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Kirjautuminen epäonnistui"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Uudelleenohjataan kirjautumissivulle..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Kotisivulle pääsee vain sisäänkirjautuneena"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Omat tiedot päivitetty"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Hallintasivulle pääsee vain sisäänkirjautuneena"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Uudelleenohjataan kotisivulle..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Sinulla ei ole Pootlen hallintaoikeuksia."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Katselu"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Ehdota"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Käännös"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Tarkastus"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arkistointi"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO-tiedostojen kääntö"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Tehtäväosoitus"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Käyttäjää \"nobody\" tai \"default\" ei voi poistaa"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Käyttäjäoikeuksillasi ei voi muuttaa näitä tavoitteita"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Käyttäjäoikeuksillasi ei voi lähettää tiedostoja tänne"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Käyttäjäoikeuksillasi ei voi korvata näitä tiedostoja"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Käyttäjäoikeuksillasi ei voi lähettää uusia tiedostoja tänne"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Käyttäjäoikeuksillasi ei voi päivittää näitä tiedostoja"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Käyttäjäoikeuksillasi ei voi lähettää tiedostoja tänne"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Käyttäjäoikeuksillasi ei voi muuttaa näitä tehtäväosoituksia"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Käyttäjäoikeuksillasi ei voi muuttaa käännöksiä täällä"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Käyttäjäoikeuksillasi ei voi ehdottaa muutoksia täällä"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Käyttäjäoikeuksillasi ei voi tarkastaa ehdotuksia täällä"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d käännetty\n"
+" (%d kääntämätöntä, %d sumeata)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: käännetään %s kielelle %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Alkuperäinen"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Käännös"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Hyväksy ehdotus"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Hylkää ehdotus"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Kääntäjän kommentit"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Kehittäjän kommentit"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Aiheeseen liittyvät"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Suoritetaan..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Virhe: Jotain meni pieleen."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Eräajon loppu"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Napsauttamalla tästä pääset aloitussivulle"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Alkuun"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Edelliset %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Osat %d - %d / %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Seuraavat %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Loppuun"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "tarkistetaan %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Hakua vastaavia kohteita ei löydy ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Olet käynyt läpi valitsemasi kohdat"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Yksikkö"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Monikko"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Muokkaa"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopioi"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Ohita"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Takaisin"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Lähetä"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Korota"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Madalla"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Monikon muoto %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Käännös ei onnistu koska oman kielesi monikkotiedot puuttuvat. Ota yhteyttä "
+"sivuston ylläpitäjään."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Nykyinen käännös:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Ehdotuksen %d tehnyt %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Ehdotus %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Ehdottanut %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Ehdotus:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Valitsemasi salasanan täytyy olla vähintään %d merkin pituinen."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Salasana ei täsmää vahvistuksen kanssa."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Kirjaudu Pootleen"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Käyttäjätunnus:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Salasana:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Kieli:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Kirjaudu"
+
+#: users.py:77
+msgid "Default"
+msgstr "Oletus"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Syötä rekisteröintitietosi"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle-rekisteröinti"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Haluamasi käyttäjätunnus"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Antamasi sähköpostiosoitteen pitää olla oikea"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Koko nimesi"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Toivomasi salasana"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Vahvista salasana"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Kirjoita salasana uudelleen varmistaaksesi sen oikeinkirjoituksen"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Rekisteröi käyttäjätili"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Syötä aktivointitietosi"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle-käyttäjätilin aktivointi"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktivointikoodi"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Saamasi aktivointikoodi"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktivoi käyttäjätili"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Asetukset käyttäjälle: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Omat tiedot"
+
+#: users.py:186
+msgid "Email"
+msgstr "Sähköposti"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Käännösliittymän asetukset"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Käyttöliittymän kieli"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Omat projektit"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Omat kielet"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Kotisivu"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Vaihtoehtoinen lähdekieli"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "ei mitään"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Syöttötilan korkeus (rivejä)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Katselutilan rivimäärä"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Käännöstilan rivimäärä"
+
+#: users.py:307
+msgid "Error"
+msgstr "Virhe"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Käyttäjähallintaan tarvitaan ylläpitäjän oikeudet"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Käyttäjätunnuksen tulee koostua kirjaimista ja numeroista ja sen täytyy "
+"alkaa kirjaimella."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Sinä (tai joku muu) yritti rekisteröidä käyttäjätilin käyttäen sinun "
+"käyttäjätunnustasi.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Emme tallenna varsinaista salasanaasi vaan ainoastaan sen hash-arvon.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Jos sinulla on ongelmia rekisteröinnin kanssa, ota yhteyttä osoitteeseen %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Jos sinulla on ongelmia rekisteröinnin kanssa, ota yhteyttä sivuston "
+"ylläpitäjään.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Valitsemasi käyttäjätunnus on jo käytössä. Tunnuksen varanneelle lähetetään "
+"ilmoitus sähköpostitse.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Jatketaan <a href='%s'>kirjautumiseen</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Sinulle on luotu Pootle-käyttäjätili tätä sähköpostiosoitetta käyttäen.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Aktivoidaksesi käyttäjätilisi, seuraa tätä linkkiä:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Aktivointikoodisi on:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Jos et pysty seuraamaan linkkiä, syötä yllä oleva koodi aktivointisivulla.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Tällä viestillä tarkistetaan että sähköpostiosoite on oikea. Mikäli et "
+"halunnut rekisteröidä käyttäjätiliä, voit unohtaa tämän viestin.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Käyttäjätili luotu. Kirjautumistiedot ja aktivointikoodi lähetetään "
+"sähköpostitse. Syötä aktivointikoodisi <a href='%s'>aktivointisivulla</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Tai napsauta sähköpostin sisältämää aktivointilinkkiä)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Käyttäjätunnuksesi on: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Salasanasi on: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Rekisteröimäsi sähköpostiosoite on: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Uudelleenohjataan rekisteröintisivulle..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Uudelleenohjataan kirjautumissivulle..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Käyttäjätilisi on aktivoitu! Uudelleenohjataan kirjautumissivulle..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Aktivointitieto ei kelpaa."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivointi epäonnistui"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Syöttötilan korkeuden pitää olla numeroarvo"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Syöttötilan leveyden pitää olla numeroarvo"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Katselutilan rivimäärän pitää olla numeroarvo"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Käännöstilan rivimäärän pitää olla numeroarvo"
+
+#~ msgid "Accept"
+#~ msgstr "Hyväksy"
+
+#~ msgid "Reject"
+#~ msgstr "Hylkää"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge-käännösprojekti"
+
+#~ msgid "Broaden"
+#~ msgstr "Levennä"
+
+#~ msgid "Narrow"
+#~ msgstr "Kavenna"
+
+#~ msgid "Reset"
+#~ msgstr "Nollaa"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Sähköpostiosoitteen pitää olla oikea"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Syöttötilan leveys (merkkejä)"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/fo/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/fo/jToolkit.po
new file mode 100644
index 0000000..eb8b05b
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/fo/jToolkit.po
@@ -0,0 +1,141 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-11-28 21:58+0000\n"
+"Last-Translator: Jón Joensen <jon@umseting.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Logga á fyri %"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Avlýs hesa gerð og byrja nýggja setu"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "à staðin fyri at vátta hesa gerð, logga av og byrja av nýggjum"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Far út av nýtsluskipan"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Far út av hesi nýtsluskipan og vend aftur til høvuðsnýtsluskipan"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", vinarligast vátta innlogging"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Logga á"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Brúkaranavn:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Loyniorð:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Tungumál:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Byrja nýtsluskipan"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Logga av"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Út"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "loggaður inn sum <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "kláraði ikki at leggja nýggja setu afturat"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "loggaður av"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "samband"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "far út av høvuðssetu"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"neyðugt at lýsa brúkararnar ella brúkararættindi fyri atgongd á "
+"ambætarauppsetingini"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "brúkari er ikki til (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ógilt brúkaranavn og/ella loyniorð"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "kláraði ikki at vátta login"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nei"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ja"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "strika"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(einki tilknýtt)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "tilknýtið er ov stórt"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "strika hetta tilknýtið"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "endurnýggja"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "hetta tilknýtið er strika. Klikk her fyri at endurnýggja tað"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "knýt eina fílu afturat"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/fo/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/fo/pootle.po
new file mode 100644
index 0000000..4727507
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/fo/pootle.po
@@ -0,0 +1,1391 @@
+# Faroese translation of Pootle.
+# Copyright (C) 2008 Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the Pootle package.
+# Jón Joensen, 2008
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-11-28 23:26+0000\n"
+"Last-Translator: Jón Joensen <jon@umseting.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Heim"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Brúkarir"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Tungumál"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekt"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Vanligir møguleikar"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Møguleiki"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Verandi virði"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Goym broytingar"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Heiti"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Frágreiðing"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Grund URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Heimasíða"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle mál fyrisitingarsíða"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Høvuðsfyrisitingarsíða"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO Kota"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Fult navn"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(skriva mál her)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Serligir stavir"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(serligir stavir)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Tal fyri fleirtal"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(tal fyri fleirtal)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Fleirtalsjavnvág"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(fleirtalsjavnvág)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Strika mál"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Strika %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standardur"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle projekt fyrisitingarsíða"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projekt kota"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(skriva projekt her)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projektfrágreiðing"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(projektfrágreiðing)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Eftirlitisformur"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Fíluslag"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Skapa MO fílur"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Strika projekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle brúkara fyrisitingarsíða"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Brúkaranavn"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(skriva fult navn her)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "T-post bústaður"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(skriva t-post her)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Loyniorð"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(skriva loyniorð her)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Virkið"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Ger nýggjan brúkara virknan"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Strika brúkara"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Aftur til høvuðssíðu"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Verandi mál"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Dagfør mál"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle fyrisiting: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Tú hevur ikki rættindi til at fyrisita hetta projektið."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Dagfør frá formi"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Skriva tungumál"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle fyrisiting %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Projektheimasíða"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Síggi ikki rættindi fyri brúkaranavn %s - brúkari er ikki til"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Hetta er eitt GNU-slag av projekti (ein leiðvísari, fílur nevndar eftir "
+"tungumáli)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+"Hetta er eitt vanligt slag av projekti (ein leiðvísari fyri tungumálið)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Brúkaraloyvi"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(vel legg afturat brúkara)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Rættindi"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Strika"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Dagfør rættindi"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Um Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> er ein einkul netportalur, ið skuldi loyvt tær at "
+"<strong>umsett</strong>! Eftirsum Pootle er <strong>Ókeypis "
+"Software</strong>, kanst tú taka tað niður og koyra títt egan avrit um tú "
+"vilt. Tú kanst eisini taka lut í menningini á nógvar hættir (tær nýtist ikki "
+"at duga at forrita)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle projektið sjálvt liggur á <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> har "
+"tú kanst finna upplýsingar um keldukotu, postlistar osfr."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Navnið stendur fyri <b>PO</b>-grundað <b>Ã</b>linju <b>U</b>msetingar / "
+"<b>S</b>taðfestingar <b>M</b>askina, men tú hevur kanska brúk fyri at lesa "
+"<a href=\"http://www.thechestnut.com/flumps.htm\">hetta</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Útgávur"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Henda síðan koyrir:<br />Pootle %s<br />Umsetingartól %s<br />jTól %s<br "
+"/>Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Brúkarasíða fyri: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Broyt møguleikar"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Fyrisitingarsíða"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Skipa fyri"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Skjótar leinkjur"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Vinarligast klikk á 'Broyt møguleikar' og vel okkurt tungumál og projekt"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekt, miðal %d%% umsett"
+msgstr[1] "%d projekt, miðal %d%% umsett"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Fyrisiting"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Tungumálskota"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Tungumálsnavn"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d tungumál, miðal %d%% umsett"
+msgstr[1] "%d tungumál, miðal %d%% umsett"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Tungumál"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekt %s, Tungumál %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Leita"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Klárar ikki at leggja fílu upp, eingin fíla tilknýtt"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Kann bara leggja PO fílur og zip av PO fílum upp"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Tilluta streingir"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Tilluta gerð"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Luta til brúkara"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "mál"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "skriva navn á máli"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Skriva mál"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Send fílu upp"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Vel fílu at send upp"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Skriva útyvir"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Skriva yvir verandi fílu um hon er til"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Samein"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Samein fíluna við verandi fílu og broyt ósambæri til uppskot"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ikki í einum máli"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Skriva brúkara"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO fíla"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF fíla"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts fíla"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV fíla"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO fíla"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Dagfør"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Legg til"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Allir streingir"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Ikki umsett"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ikki tillutað"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ikki tillutað og ikki umsett"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Set mál"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Vel fleiri"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Luta til"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Vís rættingarfunkur"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Vís hagtøl"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Vís slóðir"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Krógva slóðir"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Vís kanningar"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Krógvan kanningar"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Vís mál"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Krógva mál"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Vís tillutingar"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Krógva tillutingar"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Øll mál: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Umset streingirnar hjá mær"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Vís streingirnar hjá mær"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Eingir streingir eru lutaðir til tín"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Snarumset streingirnar hjá mær"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Eingin ikki umsettur strongur er lutaður til tín"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Gjøgnumgakk uppskot"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Vís uppskot"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Snarumset"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Vís ikki umsett"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Eingi ikki umsett punkt"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Umset øll"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP av málum"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP av faldara"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Framleið SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d strongur (%d%%) miseudnaðist"
+msgstr[1] "%d streingir (%d%%) miseydnaðust"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d orð (%d%%) tillutað"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d streingir]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d orð (%d%%) umsett"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Øll Projekt"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Øll tungumál"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mín konta"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Skjøl & hjálp"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Logga av"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Logga inn"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Skráset"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Ger virkið"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle eyðkennismerki"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Um henda Pootle ambætaran"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Øll mál"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d fílur"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fíla"
+msgstr[1] "%d fílur"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d streingir"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Navn"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Umsett"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Umsett prosenttal"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Umsett orð"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Óklár"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Óklárt prosenttal"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Óklár orð"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Ikki umsett prosenttal"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Ikki umsett orð"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Tilsamans"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Orð tilsamans"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Stabbamynd"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Tað miseydnaðist at logga inn"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Visir aftur til innlogging..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Tað er neyðugt at logga inn fyri at sleppa inn á heimasíðuna"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Persónligir upplýsingar dagførdir"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Tað er neyðugt at logga inn fyri at sleppa inn á fyrisitingarsíðu"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Vísir aftur til heimasíðu..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Tú hevur ikki rættindi at fyrisita Pootle"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Vís"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Skjót upp"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Umset"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Gjøgnumgongd"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Savn"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Umset PO fílur"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Tilluta"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Tú kanst ikki strika \"ongin\" ella \"fráverandi\" brúkari"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Tú hevur ikki rættindi til at broyta mál her"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Tú hevur ikki rættindi til at leggja fílur upp her"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Tú hevur ikki rættindi til at yvirskriva fílur her"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Tú hevur ikki rættindi til at leggja nýggjafílur upp her"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Tú hevur ikki rættindi til at dagføra fílur her"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Tú hevur ikki rættindi til at binda fílur her"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Tú hevur ikki rættindi til at broyta tillutingar her"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Tú hevur ikki rættindi til at broyta umsetingar her"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Tú hevur ikki rættindi til at skjót broytingar upp her"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Tú hevur ikki rættindi til at gjøgnumganga uppskot her"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d umsett\n"
+"(%d ikki umsett, %d óklár)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: umsetir %s til %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Upprunaligi"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Umseting"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Skylt við"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Endi á rúgvu"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klikka her fyri at venda aftur til yvirlitið"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Byrja"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Fyrra %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Punkt %d to %d of %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Næsta %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Liðugt"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "kannar %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Tað eru eingi punkt, sum samsvara leitingini ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Tú ert komin ígjøgnum øll punktini, tú hevur valt"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Eintal"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Fleirtal"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Rætta"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Avrita"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Leyp um"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Aftur"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Send"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Veks um"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Minka"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Fleirtalsformur %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Umseting er ikki møgulig tí fleirtalsformurin ikki er tøkur á tínum "
+"tungumáli. Set teg vinarligast í samband við fyrisitaran."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Verandi umseting:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Uppskot %d frá %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Uppskot %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Uppskot frá %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Uppskot:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Tú mást skriva eitt loyniorð við minst %d stavum."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Loyniorðið er ikki tað sama sum váttanin."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Logga inn til Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Brúkaranavn:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Loyniorð:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Tungumál"
+
+#: users.py:71
+msgid "Login"
+msgstr "Logga inn"
+
+#: users.py:77
+msgid "Default"
+msgstr "Fráverandi"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Vinarligast skriva skrásetingarstaklutir"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle skráseting"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Ynskt brúkaranavn"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Tú mást skriva ein gilduga t-post addressu"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Fulla navn tygara"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Ynskt loyniorð"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Vátta loyniorð"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Skriva loyniorð umaftur og vissa teg um at tað er skrivað rætt"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Skrásetingarkonta"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Vinarligast skriva virkisstaklutir"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Ger Pootle konta virkna"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Virkiskota"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Virkiskotan tú hevur fingið"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Ger kontu virkna"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Møguleikar fyri: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Persónigir staklutir"
+
+#: users.py:186
+msgid "Email"
+msgstr "T-postur"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Uppseting av umsetingarmarkamóti"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Brúkara tungumálsmarkamót"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Míni projekt"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Tungumál"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Heimasíða"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Inntøkuhædd (í linjum)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Nummar av røðum í vísihátti"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Nummar av røðum í umsetingarhátti"
+
+#: users.py:307
+msgid "Error"
+msgstr "Feilur"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Tú mást vera síðufyrisitari fyri at broyta brúkarar"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Brúkaranavnið má vera alfanumeriskt, og má byrja við einum alfabetiskum "
+"stavi."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Tú (ella onkur annar) royndi at skráseta eina konta við tínum brúkaranavni.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Vit goyma ikki veruliga passorðið hjá tær, men bert aitt brongl av tí.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+"Um tú hevur trupulleikar við skráseting, set teg vinarligast í samband við "
+"%s."
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Um tú hevur trupulleikar við skráseting, set teg vinarligast í samband við "
+"síðufyrisitaran.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Hatta brúkaranavnið er longu til. Ein t-postur verður sendur til skrásettu "
+"t-post addressuna.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Heldur fram til <a href='%s'>logga á</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Ein pootle konta er gjørd til tín við hesari t-post addressu. \n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Fyri at gera konta tína virkna, fylg hesari leinkju:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Virkiskotan hjá tær er:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Um tú ikki fært fylgt leinkjuni, vinarligast skriva omanfyristandani kotu á "
+"virkissíðuna.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+"Hesi boðini eru send fyri at vátta at t-post addressan veruliga passar. Um "
+"tí ikki ynskir at stovna eina konta, so kanst tú bara lata sum einki."
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Konta stovnað. Tú fært ein t-post við áloggingarupplýsingum og eina "
+"virkiskotu. Skriva vinarligast virkiskotuna á <a href='%s'>virkissíða</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Ella klikk bara á virkisskontuna í t-postinum)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Brúkaranavnið hjá tær er: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Loyniorðið hjá tær er: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Tín skrásetti t-post addressa er: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Vísir aftur til skrásetingarsíðu..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Vísir aftur til innloggingarsíðu"
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Kontan hjá tær er virkin! Vísir aftur til innlogging..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Virkisupplýsingarnir er ógildugir."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Tað miseydnaðist at gera kontuna virkna"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Inntøkuhæddin má vera í tølim"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Inntøkuvíddin má vera í tølum"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Nummarið av røðum víst í vísihátti má vera í tølum"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Nummarið av røðum víst í umsetingarhátti má vera í tølum"
+
+#~ msgid "Reset"
+#~ msgstr "Afturstilla"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/fr/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/fr/jToolkit.po
new file mode 100644
index 0000000..a25358a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/fr/jToolkit.po
@@ -0,0 +1,154 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.9\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Connexion pour %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Annuler cette action et démarrer une nouvelle session"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"Au lieu de confirmer cette action, déconnectez-vous et redémarrez depuis le "
+"début"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Quitter l'application"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Quitter cette application et retourner à l'application parente"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", veuillez confirmer la connexion"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Connexion"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Utilisateur :"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Mot de passe :"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Langue :"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Choisir une application"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Déconnexion"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Quitter"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "connecté en tant que <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "échec de l'ajout d'une nouvelle session"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "déconnecté"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "connecté"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "session parente quittée"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"besoin de définir les entrées des utilisateurs ou des préférences "
+"utilisateur dans la configuration du serveur"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "utilisateur inexistant (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nom d'utilisateur et/ou mot de passe invalide"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "échec de confirmation de connexion"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Non"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Oui"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "supprimer"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(absence de pièce jointe)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "pièce jointe trop volumineuse"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "supprimer cette pièce jointe"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "restaurer"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "cette pièce jointe a été supprimée. Cliquer ici pour la restaurer"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "insérer une pièce jointe"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr ""
+#~ "besoin de définir les entrées utilisateur dans la configuration serveur"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/fr/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/fr/pootle.po
new file mode 100644
index 0000000..be577d1
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/fr/pootle.po
@@ -0,0 +1,1504 @@
+# POT file for Pootle, the online translation and translation management
+# software.
+# Copyright (C) 2006 Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as Pootle.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-27 19:05+0000\n"
+"Last-Translator: Christian Perrier <christian@perrier.eu.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Démonstration de Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Accueil"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Utilisateurs"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Langues"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projets"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Options générales"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Options"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Valeur actuelle"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Enregistrer les modifications"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titre"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Description"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL de base"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Page d'accueil"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Page Admin des languages Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Page principale d'administration"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Code ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nom complet"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(ajouter la langue ici)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Caractères spéciaux"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(caractères spéciaux)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Nombre de pluriels"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(nombre de pluriels)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Équation des pluriels"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(équation des pluriels)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Supprimer la langue"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Enlever %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Page Admin Projet Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Code du projet"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(ajouter le projet ici)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Description du projet"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(description du projet)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Vérificateur de style"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Type de fichier"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Créer les fichiers MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Supprimer le projet"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Page Admin d'utilisateur Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Utilisateur"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(ajouter le nom complet ici)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Adresse de courriel"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(ajouter l'adresse électronique ici)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Mot de passe"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(ajouter le mot de passe ici)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Activé"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Activer un nouveau compte utilisateur"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Supprimer un compte utilisateur"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Revenir à la page principale"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Langues existantes"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Mettre à jour les langues"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Administration de Pootle : %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Vous n'avez pas l'autorisation d'administrer ce projet."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Mise à jour depuis les modèles"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Ajouter une langue"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Gestion de Pootle : %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Page d'accueil du projet"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Impossible de donner des droits à %s - utilisateur inexistant"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Ceci est un projet dans le style GNU (un répertoire, fichiers nommés par "
+"langue)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ceci est un projet de type standard (un répertoire par langue)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Autorisations utilisateur"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(sélectionner pour ajouter un utilisateur)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Autorisations"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Supprimer"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Mise à jour des autorisations"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "À propos de Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> est un portail web simple qui devrait vous permettre "
+"de <strong>traduire</strong> ! Comme Pootle est un <strong>Logiciel "
+"Libre</strong>, vous pouvez le télécharger et exécuter votre propre copie si "
+"vous le souhaitez. Vous pouvez aussi participer à son développement de "
+"plusieurs façons (il n'est pas nécessaire de savoir programmer)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Le projet Pootle lui-même est hébergé à <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> où "
+"vous pourrez trouver des détails sur son code source, ses listes de "
+"diffusion, etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Le nom signifie <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine (moteur de traduction en ligne basé sur "
+"PO), mais vous pouvez avoir besoin de lire <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">ceci</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versions"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Ce site fonctionne avec :<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (sur %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Page utilisateur pour : %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Modifier les options"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Page de gestion"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrer"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Liens rapides"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Veuillez cliquer sur « Modifier les options » et sélectionner des langues et "
+"des projets"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projet, moyenne de traduction %d%%"
+msgstr[1] "%d projets, moyenne de traduction %d%%"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s : %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Gestion"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Code de langue"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nom de la langue"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d langue, moyenne de traduction %d%%"
+msgstr[1] "%d langues, moyenne de traduction %d%%"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Langue"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s : projet %s, langue %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Rechercher"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Recherche avancée"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Impossible de transférer le fichier, aucun fichier en pièce jointe"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+"Seuls des fichiers PO et des « zip » de fichiers PO peuvent être transférés"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Attribuer les chaînes"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Attribuer l'action"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Attribuer à l'utilisateur"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "Objectifs"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Saisir un nom d'objectif"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Ajouter un objectif"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Transférer un fichier"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Sélectionner le fichier à transférer"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Écraser"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Écraser le fichier actuel s'il existe"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Fusionner"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Fusionner le fichier avec le fichier déjà existant et convertir les "
+"éventuels conflits en suggestions"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "En dehors d'un objectif"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Ajouter un utilisateur"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Fichier PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Fichier XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Fichier Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Fichier CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Fichier MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Mise à jour"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Valider"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Toutes les chaînes"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Non-traduit"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Non-attribué"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ni attribué ni traduit"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Fixer un objectif"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Sélection multiple"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Attribuer à"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Afficher les fonctions d'édition"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Afficher les statistiques"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Afficher les pistes"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Cacher les pistes"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Afficher les contrôles"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Cacher les contrôles"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Afficher les objectifs"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Cacher les objectifs"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Afficher les attributions"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Cacher les attributions"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Tous les objectifs : %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Traduire mes chaînes"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Voir mes chaînes"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Aucune chaîne ne vous est attribuée"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Traduction rapide de mes chaînes"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Aucune chaîne non-traduite ne vous est attribuée"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Examiner les suggestions"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Voir les suggestions"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Traduction rapide"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Voir les chaînes non-traduites"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Aucune chaîne non-traduite"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Tout traduire"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP de l'objectif"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP du dossier"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Produire un SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d chaîne défectueuse (%d%%)"
+msgstr[1] "%d chaînes défectueuses (%d%%)"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d mots attribués (%d%%)"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d chaînes]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d mots traduits (%d%%)"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Tous les projets"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Toutes les langues"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mon compte"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Documentation et aide"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Déconnexion"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Connexion"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Inscription"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Activer"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo de Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "À propos de ce serveur Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Tous les objectifs"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d fichiers"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fichier"
+msgstr[1] "%d fichiers"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d chaînes"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nom"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Traduit"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Pourcentage de traduction"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Mots traduits"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Approximatif"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Pourcentage de traductions approximatives"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Mots traduits approximativement"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Pourcentage de non-traduit"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Mots non-traduits"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Total des mots"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graphique"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Texte source"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Texte cible"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Commentaires"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Emplacements"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Échec à la connexion"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Réorientation vers la page de connexion..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Connexion nécessaire pour accéder à la page d'accueil"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Détails personnels mis à jour"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Connexion nécessaire pour accéder à la page de gestion"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Redirection vers la page d'accueil..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Vous n'avez pas l'autorisation d'administrer pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Vue"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Suggérer"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Traduire"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Examiner"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archiver"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Compiler les fichiers PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Attribuer"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Vous ne pouvez pas supprimer les utilisateurs « nobody » et « default »"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Vous n'avez pas l'autorisation de modifier les objectifs ici"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Vous n'avez pas l'autorisation de transférer des fichiers ici"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Vous n'avez pas l'autorisation de remplacer des fichiers ici"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Vous n'avez pas l'autorisation de transférer de nouveaux fichiers ici"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Vous n'avez pas l'autorisation de mettre à jour des fichiers ici"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Vous n'avez pas l'autorisation d'entériner des fichiers ici"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Vous n'avez pas l'autorisation de modifier des attributions ici"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Vous n'avez pas l'autorisation de changer les traductions ici"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Vous n'avez pas l'autorisation de suggérer des modifications ici"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Vous n'avez pas l'autorisation d'examiner les suggestions ici"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d chaînes traduites\n"
+"(%d non-traduites, %d approximatives)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s : traduction de %s vers %s : %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Traduction"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Accepter la suggestion"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Rejeter la suggestion"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Commentaires du traducteur"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Commentaires du développeur"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Lié à"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Traitement..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Erreur : un problème est survenu."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fin du lot"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Cliquez ici pour revenir à l'index"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Début"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d précédents"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Éléments %d à %d parmi %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d suivants"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fin"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "vérification de %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Il n'y a aucun élément correspondant à cette recherche ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Vous avez fini de parcourir les éléments que vous avez sélectionnés"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singulier"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Pluriel"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Éditer"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Copier"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Ignorer"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Retour"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Envoyer"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Agrandir"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Diminuer"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Pluriel %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"La traduction n'est pas possible parce que les informations sur le pluriel "
+"de votre langue ne sont pas disponibles. Veuillez contacter l'administrateur "
+"du site."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Traduction actuelle :"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Suggestion %d par %s :"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Suggestion %d :"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Suggestion par %s :"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Suggestion :"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Vous devez créer un mot de passe valide avec au moins %d caractères."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Le mot de passe est différent de la confirmation."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Connexion à Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Utilisateur :"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Mot de passe :"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Langue :"
+
+#: users.py:71
+msgid "Login"
+msgstr "Connexion"
+
+#: users.py:77
+msgid "Default"
+msgstr "Par défaut"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Veuillez saisir les détails de votre inscription"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Inscription sur Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Nom d'utilisateur demandé"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Vous devez fournir une adresse électronique valide"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Votre nom complet"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Votre mot de passe désiré"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Confirmer le mot de passe"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Taper de nouveau votre mot de passe pour confirmer que vous l'avez saisi "
+"correctement"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Créer un compte"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Veuillez saisir les détails de votre activation"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Activation du compte Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Code d'activation"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Le code d'activation que vous avez reçu"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Activer le compte"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Options pour : %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Détails personnels"
+
+#: users.py:186
+msgid "Email"
+msgstr "Courriel"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Configuration de l'interface de traduction"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Langue de l'interface utilisateur"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mes projets"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mes langues"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Page d'accueil"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Langue d'origine alternative"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Aucune"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Saisissez la hauteur du champ de saisie (en lignes)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Nombre de lignes en mode visualisation"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Nombres de lignes en mode traduction"
+
+#: users.py:307
+msgid "Error"
+msgstr "Erreur"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+"Vous devez être un administrateur du site pour modifier les utilisateurs"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Le nom d'utiilsateur doit être alphanumérique, et commencer par une lettre"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+"Vous (ou une autre personne) avez essayé d'ouvrir un compte avec votre nom "
+"d'utilisateur."
+
+# cf. http://w3.granddictionnaire.com/
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Nous ne conservons pas votre mot de passe mais seulement une empreinte "
+"numérique de celui-ci.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Si vous avez un problème avec l'inscription, veuillez contacter %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Si vous avez un problème avec l'inscription, veuillez contacter "
+"l'administrateur.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Ce nom d'utilisateur existe déjà. Un courriel sera envoyé à l'adresse "
+"électronique enregistrée.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "<a href='%s'>Connexion</a> en cours\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Un compte d'utilisateur de Pootle a bien été crée pour vous avec cette "
+"adresse électronique.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Pour activer votre compte d'utilisateur, veuillez ouvrir ce lien :\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Code d'activation :\n"
+" %s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Si vous ne pouvez pas suivre le lien, veuillez saisir le code ci-dessus dans "
+"la page d'activation.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Ce message est envoyé pour vérifier votre adresse électronique. Si vous ne "
+"désirez pas créer un compte d'utilisateur, vous pouvez simplement ignorer ce "
+"message.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Compte d'utilisateur créé. Vous recevrez par courriel le nécessaire à la "
+"connexion et un code d'activation. Veuillez saisir votre code d'activation "
+"sur la <a href='%s'>page d'activation</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Ou cliquez simplement sur le lien d'activation dans le courriel)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Votre nom d'utilisateur est : %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Votre mot de passe est : %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Votre adresse électronique enregistrée est : %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Réorientation vers la page d'inscription..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Réorientation vers la page de connexion..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Votre compte a été activé ! Réorientation vers la page de connexion..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Les données d'activation n'étaient pas valides."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Échec de l'activation."
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "La hauteur du champ de saisie doit être numérique."
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "La largeur du champ de saisie doit être numérique."
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+"Le nombre de lignes affichées en mode visualisation doit être numérique."
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Le nombre de lignes affichées en mode traduction doit être numérique"
+
+#~ msgid "Accept"
+#~ msgstr "Accepter"
+
+#~ msgid "Reject"
+#~ msgstr "Rejeter"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Projet de traduction WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Élargir"
+
+#~ msgid "Narrow"
+#~ msgstr "Rétrécir"
+
+#~ msgid "Reset"
+#~ msgstr "Réinitialiser"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Doit être une adresse électronique valide"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Saisissez la largeur (en caractères)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle : %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> est un simple portail web qui vous permettra de "
+#~ "<strong>traduire</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "Répertoire parent"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projets</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d fichiers, %d/%d séquences (%d%%) traduites"
+
+#~ msgid "%s language"
+#~ msgstr "%s langue"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "Ceci est la démo d'installation de pootle"
+
+#~ msgid "current folder"
+#~ msgstr "répertoire courant"
+
+#~ msgid "Log In"
+#~ msgstr "Connexion"
+
+#~ msgid "login status"
+#~ msgstr "Statuts de connexion"
+
+#~ msgid "project root"
+#~ msgstr "racine du projet"
+
+#~ msgid "%s project"
+#~ msgstr "%s projet"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "Vous n'êtes pas autorisé à faire des changements ici"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "Vous n'avez pas le droit de changer la traduction ici"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d séquences (%d%%) traduites"
+
+#~ msgid "%d files, "
+#~ msgstr "%d fichiers,"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Langues</h3>"
+
+#~ msgid "current file"
+#~ msgstr "fichier actuel"
+
+#~ msgid "not logged in"
+#~ msgstr "pas connecté"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Page Admin de Pootle"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Vous n'avez pas le droit d'administrer Pootle."
+
+#~ msgid "suggest"
+#~ msgstr "suggérer"
+
+#~ msgid "Input Width"
+#~ msgstr "Entrez Largeur"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/fur/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/fur/jToolkit.po
new file mode 100644
index 0000000..de873bf
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/fur/jToolkit.po
@@ -0,0 +1,144 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-06-14 14:24+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Translate Toolkit 0.9rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Jentrade par %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Anule cheste azion e scomence une gnove session"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Invezit di confermâ cheste azion, jes e scomence dal inizi"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Va fûr de aplicazion"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Va fûr de aplicazion e torne ae aplicazion disore"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", conferme par plasê la jentrade"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Jentrade"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Non utent:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Peraule clâf:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Lenghe:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Selezione aplicazion"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Jessude"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Jes"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "jentrât sicu <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "no si pues zontâ une gnove session"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "jessût"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "conetût"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "lât fûr de session disore"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"si scugne definî i utents o lis preferencis dai utents te configurazion dal "
+"servidôr"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "l'utent nol esist (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "non utent e/o peraule clâf no valit"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "conferme jentrade falide"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "No"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Sì"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "gjave"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(nissun alegât)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "alegât masse bocon"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "gjave chest alegât"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "torne a meti"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "chest alegât al è stât gjavât. Frache ca par tornâ a metilu sù"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "aleghe un file"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/fur/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/fur/pootle.po
new file mode 100644
index 0000000..9d08a10
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/fur/pootle.po
@@ -0,0 +1,1447 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-04-24 18:25+0000\n"
+"Last-Translator: Andrea Decorte <adecorte@fastwebnet.it>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.1.0\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Dimostrazion di Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Cjase"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Utents"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Lenghis"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Progjets"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opzions gjenerâls"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opzion"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Valôr curint"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Salve cambiaments"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titul"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Descrizion"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL di base"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Pagjine principâl"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pagjine di aministrazion des lenghis di Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Pagjine principâl di aministrazion"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Codis ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Non complet"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(zonte lenghe ca)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Caratars speciâi"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(caratars speciâi)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Numar di plurâi"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(numar di plurâi)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Ecuazion pai plurâi"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(ecuazion pai plurâi)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Gjave lenghe"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Gjave %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pagjine di aministrazion dai progjets in Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Codis dal progjet"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(zonte progjet ca)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Descrizion dal progjet"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(descrizion dal progjet)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Stîl control"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Gjenar di file"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Cree files MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Gjave progjet"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pagjine di aministrazion dai utents di Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Non utent"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(zonte non complet ca)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Recapit pueste eletroniche"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(zonte recapit pueste eletroniche ca)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Peraule clâf"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(zonte peraule clâf ca)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Ativât"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Ative gnûf utent"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Gjave utent"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Torne ae pagjine principâl"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Lenghis che a esistin"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Atualize lenghis"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Aministradôr di Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "No tu âs i dirits par aministrâ chest progjet"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Inzorne dai modei"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Zonte une lenghe"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Aministradôr di Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Cjase dal progjet"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "No si pues impuestâ i dirits par %s - l'utent nol esist"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Chest al è un progjet tipo GNU (une cartele, files cul non de lenghe)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Chest al è un progjet standart (une cartele par lenghe)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Permissions utents"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(sielç par zontâ un utent)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Dirits"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Gjave"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Inzorne dirits"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Informazions su Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versions"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Chest sît al dopre:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (su %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Pagjine utent di %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Gambie lis opzions"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Pagjine di aministrazion"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Aministre"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Leams svelts "
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Frache par plasê su 'Gambie lis opzions' e sielç cualchi lenghe e progjet"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d progjet, tradusût in medie il %d%% "
+msgstr[1] "%d progjets, tradusût in medie il %d%% "
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Aministradôr"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Codis de lenghe"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Non de lenghe"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d lenghe, tradusût in medie il %d%%"
+msgstr[1] "%d lenghis, tradusût in medie il %d%%"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Lenghe"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Progjet %s, lenghe %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Cîr"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "No si pues cjamâ sù il file, nissun file alegât"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Si pues cjamâ sù dome files PO e files PO comprimûts"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Assegne stringhis"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Assegne azion"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Assegne a un utent"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "obietîfs"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Non dal obietîf"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Zonte obietîf"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Cjame sù un file"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Sielç un file di cjamâ sù"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "No intun obietîf"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Zonte utent"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "File PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "File XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "File .ts di Qt"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "File CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "File MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Inzorne"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Dutis lis stringhis"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "No tradusût"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "No assegnât"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "No assegnât e no tradusût"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Impueste obietîfs"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Selezion multiple"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Assegne a"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Mostre funzions di modifiche"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Mostre statistichis"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Mostre controi"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Plate controi"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Mostre obietîfs"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Plate obietîfs"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Mostre assegnaments"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Plate assegnaments"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Ducj i obietîfs: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Tradûs lis mês stringhis"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Cjale lis mês stringhis"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nissune stringhe assegnade a ti"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Traduzion veloç des mês stringhis"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nissune stringhe no tradusude assegnade a ti"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Torne a viodi i sugjeriments"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Cjale sugjeriments"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Traduzion veloç"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Viôt no tradusudis"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Nissun element no tradusût"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Tradûs dut"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP dal obietîf"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP de cartele"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Gjenere SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d stringhe (%d%%) falide"
+msgstr[1] "%d stringhis (%d%%) falidis"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d peraulis (%d%%) assegnadis"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d stringhis]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d peraulis, (%d%%) tradusudis"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Ducj i progjets"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Dutis lis lenghis"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Il gno account"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Documents & Jutori"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Jes"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Jentrade"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Regjistre"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Ative"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo di Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Informazions su chest servidôr Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Ducj i obietîfs"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "files %d/%d"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d file"
+msgstr[1] "%d files"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "[%d/%d stringhis]"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Non"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Tradusût"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Percentuâl tradusude"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Peraulis tradusudis"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Malsigûr"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Percentuâl malsigure"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Peraulis malsiguris"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Percentuâl no tradusude"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Peraulis no tradusudis"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Totâl"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Peraulis totâls"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafic"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Jentrade falide"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Daûr a tornâ a indreçâ a la pagjine pe jentrade..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Tu scugnis jentrâ par acedi ae tô pagjine iniziâl"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Detais personâi inzornâts"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Tu scugnis jentrâ par acedi ae pagjine di aministrazion"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Daûr a tornâ a indreçâ a la pagjine iniziâl..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "No tu âs i dirits par aministrâ Pootle"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Viôt"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Sugjerìs"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Tradûs"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Torne a viodi"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archivi"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Compile files PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Assegne"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+"No si pues gjavâ l'utent \"nobody\" (nissun) o \"default\" (predeterminât)"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "No tu âs i dirits par gambiâ i obietîfs ca"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "No tu âs i dirits par cjamâ sù files ca"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "No tu âs i dirits par sorescrivi i files ca"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "No tu âs i dirits par cjamâ sù gnûfs files ca"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "No tu âs i dirits par inzornâ i files ca"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "No tu âs i dirits par cjamâ sù files ca"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "No tu âs i dirits par editâ i assignaments ca"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "No tu âs i dirits par gambiâ lis traduzions ca"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "No tu âs i dirits par sugjerî cambiaments ca"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "No tu âs i dirits par tornâ a viodi i sugjeriments ca"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d tradusudis\n"
+"(%d vueidis, %d malsiguris)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: Traduzion di %s par %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "origjinâl"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "traduzion"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Coments tradutôr"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Coments disvilupadôr"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Robis leadis"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fin dal file batch"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Frache ca par tornâ al indis"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Inizi"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Precedents %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Element da %d a %d su %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Prossins %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fin"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "daûr a controlâ"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Nissun element al corispuint al test cirût"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Tu âs finût di viodi i elements selezionâts"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singolâr"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plurâl"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Modifiche"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "copie"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "salte"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "indaûr"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "salve"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Slungje"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Scurte"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forme plurâl %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"La traduzion no je pussibile parcè che lis informazions sui plurâi pe tô "
+"lenghe no son disponibilis. Contate par plasê l'aministradôr dal sît."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Traduzion corinte:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Sugjeriment %d fat di %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Sugjeriment %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Sugjeriment fat di %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Sugjeriment"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Tu scugnis inserî une peraule clâf di almancul %d caratars."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "La peraule clâf no je compagne a chê zontade prime."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Jentrade in Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Non utent:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Peraule clâf:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Lenghis:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Jentrade"
+
+#: users.py:77
+msgid "Default"
+msgstr "Predeterminât"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Zonte par plasê i detais pe regjistrazion"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Regjistrazion di Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Il non utent che tu vuelis"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Tu âs di zontâ un recapit di pueste valit"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Non complet"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Peraule clâf che tu vuelis"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Conferme de peraule clâf"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Inserìs di gnûf la tô peraule clâf par controlâ se e je juste"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Regjistre un account"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Inseris par plasê i detais pe ativazion"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Ativazion dal account Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Codis di ativazion"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Il codis di ativazion che tu âs ricevût"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Ative account"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opzions par: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Detais personâi"
+
+#: users.py:186
+msgid "Email"
+msgstr "Pueste eletroniche"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Configurazion dal barcon di traduzion"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Lenghe di mostrâ"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "I miei progjets"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Lis mês lenghis"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Pagjine principâl"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Altece dal spazi di inseriment (riis)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Numar di riis tal mût viodude"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Numar di riis tal mût traduzion"
+
+#: users.py:307
+msgid "Error"
+msgstr "Erôr"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Tu âs di jessi aministradôr dal sît par gambiâ i utents "
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Il non utent al à di jessi fat di numar e letaris, e al scuen scomençâ "
+"cuntun caratar alfabetic."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Tu (o cualchidun altri) al à provât a regjistrâ un account cul to non utent.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Nô no salvin la tô peraule clâf ma dome un hash di jê.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Se tu âs problemis cu la regjistrazion, contate par plasê %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Se tu âs problemis cu la regjistrazion, contate par plasê l'aministradôr dal "
+"sît.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Chest non utent al esist za. Un messaç di puest al vegnarà mandât ae "
+"direzion di pueste regjistrade.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Daûr a continuâ cu la <a href='%s'>jentrade</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Un account Pootle al è stât creât par te doprant cheste direzion di pueste.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Par ativâ il to account, va daûr di chest leam:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Il to codis di ativazion al è:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Se no tu puedis fracâ sul leam, inserìs par plasê il codis ca parsore inte "
+"pagjine di ativazion.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Chest messaç al è stât mandât par verificâ che la direzion di pueste e sedi "
+"juste. Se no tu vuelis regjistrâ un account, tu puedis ignorâ chest messaç e "
+"bon.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Account creât. Ti vignarà mandât un messaç di pueste eletroniche cui detais "
+"pe jentrade e un codis di ativazion. Inserìs par plasè il to codis di "
+"ativazion inte <a href='%s'>pagjine di ativazion</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(O frache dome sul leam pe ativazion intal messaç di pueste)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Il to non utent al è: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "La tô peraule clâf e je: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "La tô direzion di pueste regjistrade e je: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Daûr a tornâ a indreçâ ae pagjine de regjistrazion..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Daûr a tornâ a indreçâ ae pagjine pe jentrade..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Il to account al è stât ativât! Daûr a tornâ a indreçâ ae jentrade..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Lis informazion pe ativazion no son validis."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Ativazion falide"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "L'altece dal spazi di input e à di jessi un numar"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "La largjece dal spazi di input e à di jessi un numar"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+"Il numar di riis mostradis tal mût viodude al à di jessi un valôr numeric"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+"Il numar di riis mostradis tal mût traduzion al à di jessi un valôr numeric"
+
+#~ msgid "Accept"
+#~ msgstr "acete"
+
+#~ msgid "Reject"
+#~ msgstr "ricuse"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Progjet di traduzion di WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Slargje"
+
+#~ msgid "Narrow"
+#~ msgstr "Strenç"
+
+#~ msgid "Reset"
+#~ msgstr "Scancele"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Al à di jessi un recapit di pueste valit"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Largjece dal spazi di inseriment (caratars)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pagjine di aministrazion di Pootle"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "No tu âs i dirits par aministrâ Pootle"
+
+#~ msgid "%s project"
+#~ msgstr "Progjet %s"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d files, %d/%d stringhis (%d%%) tradusudis"
+
+#~ msgid "%s language"
+#~ msgstr "Lenghe %s"
+
+#~ msgid "%d files, "
+#~ msgstr "%d files, "
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d stringhis (%d%%) tradusudis"
+
+#~ msgid "%d strings (%d%%) assigned"
+#~ msgstr "%d stringhis (%d%%) assegnadis"
+
+#~ msgid "not logged in"
+#~ msgstr "no jentrât"
+
+#~ msgid "Log In"
+#~ msgstr "Jentre"
+
+#~ msgid "current folder"
+#~ msgstr "cartele curinte"
+
+#~ msgid "current file"
+#~ msgstr "file curint"
+
+#~ msgid "suggest"
+#~ msgstr "sugjerìs"
+
+#~ msgid "Input Width"
+#~ msgstr "Largjece dal spazi di input"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ga/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ga/jToolkit.po
new file mode 100644
index 0000000..4ee1903
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ga/jToolkit.po
@@ -0,0 +1,143 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-03-15 12:52+0000\n"
+"Last-Translator: Seanán Ó Coistín <seananoc@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.1.0rc2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Fág an feidhmchlár"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Sínigh Isteach"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Ainm Úsáideora"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Focal Faire"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Teanga:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Roghnaigh Feidhmchlár"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Scoir"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Scoir"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "sínithe isteach mar <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "sínithe amach"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "nasctha"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "níl an t-úsáideoir sin ann (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ainm úsáideora agus/nó focal faire neamhsheasmhach"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "deimhniú síniú isteach teipthe"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Níl"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Tá"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "Bain"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(gan ceangaltán)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "tá an ceangaltán ró-mhór"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "bain an ceangaltán seo"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "aischuir"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "baineadh an ceangaltán seo. brúigh anseo chun é a chur ar ais"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ceangail comhad"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ga/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ga/pootle.po
new file mode 100644
index 0000000..15d18ab
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ga/pootle.po
@@ -0,0 +1,1397 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-10-29 00:39+0000\n"
+"Last-Translator: Bo Peterburg <bopeterb@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Taispeánadh Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Clár Cinn"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Úsáideoirí"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Béarlaí"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Tionscadail"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Roghanna coiteann"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Rogha"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "An luach reatha"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Cuir i dtaisce na hathruithe"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Teideal"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Cur Síos"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Bun URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Clár Cinn"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Lch Riaracháin Béarlaí Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Príomhleathanach an riaracháin"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Tagairt ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Ainm Iomlán"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(cuir béarla isteach anseo)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Litreacha Sainiúla"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(litreacha sainiúla)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Líon na hIolraí"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(líon na hiolraí)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Cothromóid Iolrach"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(cothromóid iolrach)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Bain an Béarla"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Bain %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Gnáth"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Tagairt an Tionscadail"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(cuir tionscadal leis anseo)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Tuairisc ar an Tionscadail"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(tuairisc ar an tionscadail)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Nós an Dearbhála"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Cineál Comhad"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Cruthaigh Comhaid MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Bain Tionscadal"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Lch Riaracháin Úsáideoir Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Ainm Úsáideora"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(cuir isteach an t-ainm iomlán anseo)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Seoladh Ríomhphoist"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(cuir isteach seoladh ríomhphoist anseo)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Focal Faire"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(cuir isteach focal faire anseo)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Gníomhachtaithe"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Gníomhachtaigh Úsáideoir Nua"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Bain Úsáideoir"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Siar chuig an príomhleathanach"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Béarlaí atá ann cheana"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Nuashonraigh na Béarlaí"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Riarachán Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Níl na cearta agat chun an tionscadal seo a riar."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Nuashonraigh ó chláir gabhála"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Cuir Béarla Leis"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Riarachán Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Clár cinn an tionscadail"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Ní féidir cearta don t-ainm úsáideora %s a shocrú - níl an duine seo ann"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Is tionscadal de chineál GNU é seo (comhadlann amháin, comhaid ainmnithe de "
+"réir an béarla)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+"Is tionscadal chaighdeánach é seo (comhadlann amháin de réir an béarla)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Ceadanna an Úsáideora"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(roghnaigh chun úsáideoir a chur leis)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Cearta"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Bain"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Nuashonraigh Cearta"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Maidir le Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"Is tairseach gréasáin simplí é <strong>Pootle</strong> a ligeann duit "
+"<strong>aistriú</strong>! De bharr gur <strong>Oideasra Saor In "
+"Aisce</strong> é Pootle, is féidir leat é a íosluchtú agus do leagan féin de "
+"a rith más mian leat. Is féidir cabhrú leis an fhorbairt freisin ar mórán "
+"bealaí (ní gá duit bheith in ann ríomhoideas a chruthú)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Leaganacha"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Athraigh na roghanna"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Lch Riaracháin"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Riar"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Mear Naisc"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Riarachán"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Béarla"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Tionscadal %s, Béarla %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Cuardaigh"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Cuardach Casta"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Ní féidir an comhad a huasluchtú, níl comhad ceangailte leis"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Sann Teaghráin"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Sann Gníomh"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Sann go Úsáideoir"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "spriocanna"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Cuir isteach ainm na sprice"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Cuir sprioc leis"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Uasluchtaigh Comhad"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Roghnaigh comhad le uasluchtú"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Forscríobh"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Forscríobh an comhad reatha má tá sé ann cheana"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Cumaisc"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Níl sé i sprioc"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Cuir duine leis"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Comhad PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Comhad XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Comhad MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Nuashonraigh"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Tiomnaigh"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Gach Teaghrán"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Neamhaistrithe"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Neamhshannta"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Socraigh Sprioc"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Roghnaigh Iolrach"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Sann go"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Taispeáin Spriocanna"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Folaigh Spriocanna"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Taispeáin Sannaithe"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Folaigh Sannaithe"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Gach Sprioc: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Aistrigh Mo Chuid Teaghráin"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Féach Ar Mo Chuid Teaghráin"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Níl teaghráin sannta duit"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Mear Aistrigh Mo Chuid Teaghráin"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Níl aon teaghráin neamhaistrithe sannta duit"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Athbhreithnigh na Moltaí"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Féach ar na Moltaí"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Mear-aistriúchán"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Féach ar Neamhaistrithe"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Níl mhíreanna neamhaistrithe ann"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Aistrigh Uile"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Comhad ZIP den cúl"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Comhad ZIP den fillteán"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Cruthaigh SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d teaghráin (%d%%) teipthe"
+msgstr[1] "%d teaghráin (%d%%) teipthe"
+msgstr[2] "%d teaghráin (%d%%) teipthe"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d focail (%d%%) sannta"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d teaghráin]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d focail (%d%%) aistrithe"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Gach tionscadal"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Gach béarla"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mo chuntas"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Cáipéisí & Cabhair"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Scoir"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Sínigh isteach"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Cláraigh"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Gníomhachtaigh"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Suaitheantas Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Maidir leis an freastalaí Pootle seo"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Gach sprioc"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d comhaid"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d comhaid"
+msgstr[1] "%d comhaid"
+msgstr[2] "%d comhaid"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d teaghráin"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Ainm"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Aistrithe"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Céatadán aistrithe"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Focail aistrithe"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Doiléir"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Céatadán doiléir"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Focail doiléire"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Céatadán neamhaistrithe"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Focail neamhaistrithe"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Iomlán"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Líon iomlán focail"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Léiriú"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Theip ar an síniú isteach"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Ag atreorú go dtí síniú isteach..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Caithfear síniú isteach chun rochtain a fháil ar an clár cinn"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Nuashonraíodh na sonraí pearsanta"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+"Caithfear síniú isteach chun rochtain a fháil ar leathanach an riaracháin"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Ag atreorú go dtí an clár cinn..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Níl aon cearta agat pootle a riar."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Amharc"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Mol"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Aistrigh"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Aithbhreithnigh"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Cartlann"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Teaglamaigh comhaid PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Leithdháil"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Níl cearta agat spriocanna a athrú anseo"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Níl cearta agat comhaid a uasluchtú anseo"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Níl cearta agat comhaid a fhorscríobh anseo"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Níl cearta agat comhaid nua a uasluchtú anseo"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Níl cearta agat comhaid a nuashonrú anseo"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Níl cearta agat chun comhaid a chur anseo"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Níl cearta agat sannacháin a athrú anseo"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Níl cearta agat aistriúcháin a athrú anseo"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Níl cearta agat athruithe a mholadh anseo"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Níl cearta agat moltaí a athbhreithniú anseo"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d aistrithe\n"
+"(%d bán, %d doiléir)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: ag aistriú %s go %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Leagan Bunaidh"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Aistriúchán"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Tráchtanna an aistritheora"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Tráchtanna an forbróra"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Gaolmhar"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Deireadh an dola"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Brúigh anseo chun filleadh chuig an treorán"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "An Tús"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "An %d Roimhe"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Míreanna %d go dtí %d de %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "An %d Ar Aghaidh"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "An Deireadh"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "ag dearbhú %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Níl míreanna ar bith ag comhoiriúnú leis an cuardach ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Tá tú críochnaithe ag dul tríd na mhíreanna a roghnaigh tú"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Uatha"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Iolra"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Cuir in eagar"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Macasamhlaigh"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Léim"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Siar"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Ãitigh"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Méadaigh"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Laghdaigh"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Leagan Iolrach %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Ní féidir aistriú mar níl faisnéis iolraí do do theanga ar fáil. Déan "
+"teagmháil le riarthóir an láithreáin."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "An t-Aistriúchán Reatha:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Moladh %d ó %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Moladh %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Moladh ó %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Moladh"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+"Caithfear focal faire seasmhach ar a laghad %d litreacha ar fhad a "
+"sholáthar."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Ní ionann an focal faire seo agus an ceann sa dheimhniú."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Sínigh isteach go Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Ainm Úsáideora"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Focal Faire:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Béarla:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Sínigh isteach"
+
+#: users.py:77
+msgid "Default"
+msgstr "Réamhshocrú"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Cuir isteach do shonraí clárúcháin"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Clárú Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "An t-ainm úsáideora a d'iarr tú ar"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Caithfear seoladh ríomhphoist seasmhach a chur ar fáil"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "D'ainm iomlán"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Do rogha focal faire"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Deimhnigh an focal faire"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Clóscríobh d'fhocal faire arís chun cinntiú go bhfuil sé clóscríofa i gceart "
+"agat"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Cláraigh an Cuntas"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Cuir isteach do shonraí gníomhachtaíochta le do thoil"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Gníomhachtaíocht Cuntas Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Tagairt Gníomhachtaíochta"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "An tagairt gníomhachtaíochta a bhfuair tú"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Gníomhachtaigh an Cuntas"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Roghanna do: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Sonraí Pearsanta"
+
+#: users.py:186
+msgid "Email"
+msgstr "Seoladh Ríomhphoist"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Cumraíocht Comhéadan an Aistriúcháin"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Béarla Comhéadan an Úsáideora"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mo Chuid Tionscadail"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mo Bhéarlaí"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Clár Cinn"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Airde an Ionchuir (i línte)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Líon na sraitheanna i mhodh an amhairc"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Líon na sraitheanna i mhodh an aistriú"
+
+#: users.py:307
+msgid "Error"
+msgstr "Botún"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Caithfidh tú bheith i bhfeighil an láithréan chun daoine a athrú"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Ní mór litreacha agus uimhreacha amháin a bheith san ainm úsáideora, agus "
+"caithfidh sé tosú le litir."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Rinne tusa (nó duine eile) iarracht cuntas a chlárú le d'ainm úsáideora.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Ní chuirimid ach hais de d'fhocal faire i dtaisce.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Má tá fadhb agat leis an clárúchán, déan teagmháil le %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Má tá fadhb agat leis an clárúchán, déan teagmháil le riarthóir an "
+"láithreáin.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Tá an ainm úsáideora sin ann cheana. Seolfar ríomhphost chuig an seoladh "
+"ríomhphoist atá cláraithe.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Ag bualadh chun <a href='%s'>sínigh isteach</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Chruthaíodh cuntas Pootle duit ag baint feidhm as an seoladh ríomhphoist "
+"seo.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Chun do chuntas a ghníomhachtú, lean an nasc seo:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Do thagairt ghníomhachtú ná:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Mura bhféidir leat an nasc a leanúint, cuir isteach an tagairt thuas sa "
+"leathanach ghníomhachtú.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Seoltar an teachtaireacht seo chun deimhniú go bhfuil an seoladh ríomhphoist "
+"ceart. Mura theastaíonn uait cuntas a chlárú, ná bac leis an "
+"teachtaireacht.\n"
+
+#: users.py:465
+#, fuzzy, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Chruthaíodh an cuntas. Seolfar sonraí síniú isteach agus tagairt "
+"ghníomhachtú i ríomhphost. Cuir isteach do thagairt ghníomhachtú ar an "
+"href='%s'>leathanach gníomhachtú</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Nó brúigh ar an nasc gníomhachtú sa ríomhphost)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Sé d'ainm úsáideora ná: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Sé d'fhocal faire ná: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Sé do sheoladh ríomhphoist atá cláraithe ná: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Ag Atreorú chuig an Leathanach Clárúcháin..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Ag Atreorú chuig an Leathanach sínigh isteach..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Ghníomhachtaíodh do chuntas! Ag atreorú chuig síniú isteach..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Ní raibh an fhaisnéis ghníomhachtú seasmhach."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Theip ar an Gníomhachtú"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Ní mór don airde inchur bheith mar uimhir"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Ní mór don leithead inchur bheith mar uimhir"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Glac"
+
+#~ msgid "Reject"
+#~ msgstr "Diúltaigh"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Tionscadal an Aistriúchán WordForge"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/gl/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/gl/jToolkit.po
new file mode 100644
index 0000000..89e2f56
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/gl/jToolkit.po
@@ -0,0 +1,141 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-06-04 13:08+0000\n"
+"Last-Translator: Felipe Gil Castiñeira <xil@det.uvigo.es>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Conexión para %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Cancelar esta acción e comezar unha nova sesión"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "En vez de confirmar esta acción, saír e comezar dende cero"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Saír da aplicación"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Pechar esta aplicación e voltar á aplicación pai"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", confirme o usuario por favor"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Inicio"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Usuario:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Contrasinal:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Idioma:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Escolla aplicación"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Desconectar"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Saír"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "conectado coma <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "non se pode engadir unha nova sesión"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "desconectado"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "conectado"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "conexión pai abortada"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"necesita definir os usuarios ou as preferenzas na configuración do servidor"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "o usuario non existe (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "usuario ou contrasinal incorrectos"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "fallou a confirmación de conexión"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Non"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Si"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "borrar"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(sen anexos)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "o anexo é moi grande"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "quitar este anexo"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "restaurar"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "o anexo foi eliminado. prema aquí para restauralo"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "adxuntar un ficheiro"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/gl/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/gl/pootle.po
new file mode 100644
index 0000000..8b54a37
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/gl/pootle.po
@@ -0,0 +1,1422 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-27 21:48+0000\n"
+"Last-Translator: Felipe Gil Castiñeira <felipexil@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demostración de Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Inicio"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Usuarios"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Idiomas"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Proxectos"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opcións xerais"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opción"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Valor actual"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Gardar cambios"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Encabezamento"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Descrición"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL Orixe"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Páxina de Inicio"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Páxina de administración de lenguaxes de Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Páxina principal do administrador"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Código ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nome completo"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(engadir idioma aquí)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Caracteres especiais"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(caracteres especiais)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Número de plurais"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(número de plurais)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Ecuación do plural"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(ecuación do plural)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Eliminar idioma"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Eliminar %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Estandar"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Páxina de Administración de Proxectos de Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Código do Proxecto"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(engadir proxecto aquí)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Descripción do Proxecto"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(descripción do proxecto)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Estilo de control"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tipo de ficheiro"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Crear Ficheiros MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Eliminar proxecto"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Páxina de Administración de Usuarios de Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Usuario"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(engadir aquí o nome completo)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Enderezo de correo electrónico"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(engada aquí a conta de correo)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Contrasinal"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(engadir contrasinal)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Activado"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Activar Novo Usuario"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Eliminar usuario"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Voltar á páxina principal"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Linguas existentes"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Actualizar Linguas"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Administración de Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Vostede non ten os permisos necesarios para administrar este proxecto."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Actualizar a partir dos modelos"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Engadir Lingua"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Administración de Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Páxina principal do proxecto"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Non se poden asignar privilexios para o usuario %s - o usuario non existe"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Este e un proxecto con formato GNU (un directorio, ficheiros nomeados por "
+"idioma)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Este é un proxecto de formato estandar (un directorio por idioma)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Permisos do Usuario"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(escoller para engadir usuario)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Permisos"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Eliminar"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Actualizar Permisos"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Acerca de Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"¡<strong>Pootle</strong> é un portal web que lle permitirá "
+"<strong>traducir</strong>! Pootle é <strong>Software Libre</strong>, así que "
+"se o desexa pode obter a súa propia copia e executala. Tamén pode "
+"participar no desenvolvimento de moitos xeitos (non precisa ser un "
+"programador)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"O Proxecto Pootle está hospedado en <a "
+"href=\"http://translate.sourceforge.net/\"> translate.sourceforge.net</a>, "
+"onde pode atopar o código fonte, listas de correo, etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"O nome significa <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation/ "
+"<b>L</b>ocalization <b>E</b>ngine, pero vostede pode precisar ler <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">isto</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versións"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Este sitio está a executar:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (en %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Páxina de usuario para: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Cambiar opcións"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Páxina de administración"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrar"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Ligazóns rápidas"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Por favor, prema en 'Cambiar opcións' e escolla algúns idiomas e proxectos"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d proxecto, traducido nun %d%% de media"
+msgstr[1] "%d proxectos, traducidos nun %d%% de media"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administrador"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Código do idioma"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nome do idioma"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d idioma, traducido nun %d%% de media"
+msgstr[1] "%d idiomas, traducidos nun %d%% de media"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Idioma"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Proxecto %s, idioma %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Busca"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Busca avanzada"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Non se pode subir o ficheiro, non hai ficheiro anexado"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Só se poden subir ficheiros PO e arquivos zip de ficheiros PO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Asignar Cadeas"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Asignar Acción"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Asignar ao Usuario"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "obxectivos"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Introduza o nome do obxectivo"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Engadir obxectivo"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Subir ficheiro"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Escoller o ficheiro para subir"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Sobreescribir"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Sobreescribir o ficheiro actual se existe"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Combinar"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Combinar o ficheiro co actual e convertir os conflitos en suxestións"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Non está nun obxectivo"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Engadir usuario"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Ficheiro PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Ficheiro XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Ficheiro .ts de Qt"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Ficheiro CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Ficheiro MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Actualizar"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Facer permanente"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Todas as cadeas"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Sen traducir"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Sen asignar"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Sen traducir e sen asignar"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Establecer obxectivo"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Selección múltiple"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Asignar a"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Mostrar as funcións de edición"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Mostrar estatísticas"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Mostrar rastros"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Agochar rastros"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Mostrar controis"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Agochar controis"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Mostrar obxectivos"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Agochar obxectivos"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Mostrar asignacións"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Agochar asignacións"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Tódolos obxectivos: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Traducir as miñas cadeas"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Ver as miñas cadeas"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Non ten cadeas asignadas"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Traducir as miñas cadeas de contado"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Non ten cadeas sen traducir asignadas"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Revisar as suxestións"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Ver as suxestións"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Traducir de contado"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Ver sen tradución"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Non hai elementos sen traducir"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Traducilo todo"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP do obxectivo"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP da carpeta"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Xerar SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d cadea (%d%%) fallou"
+msgstr[1] "%d cadeas (%d%%) fallaron"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d palabras (%d%%) asignadas"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d cadeas]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d palabras (%d%%) traducidas"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Tódolos proxectos"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Tódolos idiomas"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "A miña conta"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Documentos e axuda"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Rematar a sesión"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Iniciar a sesión"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Rexistrarse"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Activar"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logotipo de Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Acerca deste servidor Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Tódolos obxectivos"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d ficheiros"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d ficheiro"
+msgstr[1] "%d ficheiros"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d cadeas"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nome"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Traducido"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Porcentaxe traducida"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Palabras traducidas"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Dubidoso"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Porcentaxe de dubidosas"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Palabras dubidosas"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Porcentaxe sen traducir"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Palabras sen traducir"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Palabras totais"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Gráfica"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Texto orixinal"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Texto traducido"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Comentarios"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Posicións"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Fallou a conexión"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Redireccionando á páxina de conexión..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "É necesario que se conecte para acceder á páxina de inicio"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "A información persoal foi actualizada"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "É necesario que se conecte para acceder á páxina de administración"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Redireccionando ao inicio..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Vostede non ten privilexios suficientes para administrar pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Ver"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Suxerir"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Traducir"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Revisar"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arquivar"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Compilar os ficheiros PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Asignar"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Non pode eliminar ao usuario \"nobody\" ou \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Non ten permisos para alterar os obxectivos aquí"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Non ten permisos para subir ficheiros aquí"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Non ten permisos para sobreescribir ficheiros aquí"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Non ten permisos para subir novos ficheiros aquí"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Non ten permisos para actualizar ficheiros aquí"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Non ten permisos para subir ficheiros aquí"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Non ten permisos aquí para modificar as asignacións"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Non ten permisos aquí para cambiar as traducións"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Non ten permisos aquí para suxerir cambios"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Non ten permisos aquí para revisar as suxestións"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d traducidas\n"
+"(%d sen traducir, %d dubidosas)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: traducindo %s ao %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Orixinal"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Tradución"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Aceptar suxestión"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Rexeitar suxestión"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Comentarios do tradutor"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Comentarios do desenvolvedor"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Relacionado"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Traballando..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Erro: algo foi mal."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fin do lote"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Premer aquí para volver ao índice"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Inicio"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d anteriores"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Elementos %d a %d de %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d seguintes"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fin"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "comprobando %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Non hai elementos que coincidan con esa busca ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Rematou de examinar os elementos que seleccionou"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singular"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plural"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Editar"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Copiar"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Saltar"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Volver"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Mandar"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Alongar"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Acurtar"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma plural %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"A tradución non é posible porque a información sobre os plurais do seu "
+"idioma non está dispoñible. Por favor, contacte co administrador do sitio."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Tradución actual:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Suxestión %d por %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Suxestión %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Suxestión por %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Suxestión:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Debe proporcionar un contrasinal válido de %d caracteres polo menos."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "O contrasinal non é o mesmo que a confirmación."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Conectarse a Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Nome de usuario:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Contrasinal:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Idioma:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Iniciar a sesión"
+
+#: users.py:77
+msgid "Default"
+msgstr "Por defecto"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Por favor, introduza a información do seu rexistro"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Rexistro en Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "O seu nome de usuario solicitado"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Debe proporcionar unha dirección de correo electrónico válida"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "O seu nome completo"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "O contrasinal que desexa"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Confirme o contrasinal"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Teclee o seu contrasinal de novo para asegurarse de que se introduce "
+"correctamente"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Rexistrar conta"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Por favor, introduza a súa información de activación"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Activación da conta Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Código de activación"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "O código de activación que recibiu"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Activar conta"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opcións para: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Información persoal"
+
+#: users.py:186
+msgid "Email"
+msgstr "Dirección de correo electrónico"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Configuración da interface de tradución"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Idioma da interface de usuario"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Os meus proxectos"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Os meus idiomas"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Páxina de inicio"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Idioma orixe alternativo"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Ningún"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Altura da caixa de entrada (en liñas)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Número de filas no modo vista"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Número de filas no modo tradución"
+
+#: users.py:307
+msgid "Error"
+msgstr "Erro"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Precisa ser administrador do sitio para cambiar usuarios"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"O nome de usuario debe ser alfanumérico, e debe comezar cun carácter "
+"alfabético."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Vostede (ou alguén) xa se intentou rexistrar co seu nome de usuario.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Non almacenamos o seu contrasinal, só un resumo criptográfico aleatorio.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Por favor, contacte con %s se ten problemas co rexistro.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Por favor, contacte co administrador do sitio se ten problemas co rexistro.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Ese nome de usuario xa existe. Vaise mandar un correo electrónico á "
+"dirección de correo rexistrada.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Indo a <a href='%s'>conexión</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Creouselle unha conta Pootle utilizando esta dirección de correo "
+"electrónico.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Para activar a súa conta, siga esta ligazón:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"O seu código de activación é:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Se non pode seguir a ligazón, por favor, utilice o código de máis arriba na "
+"páxina de activación.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Esta mensaxe mándase para verificar que a dirección de correo electrónico é "
+"realmente correcta. Se vostede non quere rexistrar unha conta, pode ignorar "
+"esta mensaxe.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"A conta foi creada. Vánselle mandar os detalles de conexión e un código de "
+"activación. Por favor, introduza o seu código de activación na <a "
+"href='%s'>páxina de activación</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Ou simplemente prema na ligazón de activación no correo electrónico)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "O seu nome é: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "O seu contasinal é: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "A súa dirección de correo electrónico rexistrada é: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Redireccionando á páxina de rexistro..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Redireccionando á páxina de conexión..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "¡A súa conta foi activada! Redireccionando á conexión..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "A información de activación non foi válida."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "A activación fallou"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "A altura do cadro de entrada debe ser numérica"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "A anchura do cadro de entrada debe ser numérica"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "O número de filas mostradas no modo vista debe ser numérico"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "O número de filas mostradas no modo tradución debe ser numérico"
+
+#~ msgid "Accept"
+#~ msgstr "Aceptar"
+
+#~ msgid "Reject"
+#~ msgstr "Rexeitar"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Proxecto de tradución WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Anchear"
+
+#~ msgid "Narrow"
+#~ msgstr "Estreitar"
+
+#~ msgid "Reset"
+#~ msgstr "Restaurar"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Debe ser unha dirección de correo electrónico válida"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Anchura da caixa de entrada (en caracteres)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Páxina de administración de Pootle"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Vostede non ten privilexios para administrar Pootle"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ha/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ha/jToolkit.po
new file mode 100644
index 0000000..5ff3c6f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ha/jToolkit.po
@@ -0,0 +1,144 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-12-18 11:39+0100\n"
+"Last-Translator: Mustapha Abubakar <mustymni@yahoo.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.10.1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Kashiga da%s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Katsaida wannan sannan ka soma sabon zango"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Amaimakon ka tabbatar da wannan aikin,ka fita sannan ka sake daga farko"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Fita daga abinda Kake nema"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Fita daga abinda Kake nema sannan ka koma ainihin abin neman"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "ka tabbatar da shiganka"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Shiga"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Sunan mai aiki dashi"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "MabuÉ—ina"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Yare"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Zaɓi abin da kake nema"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Ka fita"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Fita"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "Ka shiga a matsayin <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "Bazai iya ƙara wani zangon ba"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "Ka fita"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "Ya hada"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "An riga an fita daga jigon zango"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "Ana buƙatar Masu aiki dashi ko masu aikin da irinsu dasu yi ƙari a saba"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "Mai wannan aikin baya nan(%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "Wannan sunan da/ko harruffan sirri ba mai kyau bane"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "Yakasa tabbatar da shiga"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "AA"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ƙwarai"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "Cire"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(Babu abinda aka maƙala)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "abin da aka maƙala masa yayi girma"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "Cire abinda a maƙala"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "Maida shi"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "abinda aka maƙala masa ya cire.ka taɓa nan don a gyara shi"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ka maƙala fayil"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ha/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ha/pootle.po
new file mode 100644
index 0000000..6e6c819
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ha/pootle.po
@@ -0,0 +1,1387 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-01-20 12:05+0100\n"
+"Last-Translator: Mustapha Abubakar <mustymni@yahoo.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.11rc\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pottle na gwaji"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Gida"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Masu anfani dashi"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Yarurruka"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Ayyuka"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Zaɓi gaba ɗaya"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "zaɓi"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Adana chanje-chanje"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Kwatance"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Babban shafi"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Babban shafin mai bada hurumi"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Harrufan ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Cikkaken suna"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(Ka ƙara yare anan)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Harruffa na musamman"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(wasulla na musamman)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Yawan jam'i"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "yawan Jam'i"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Fidda yare"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Fitar %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Stayayye"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Lambobin aikin"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(ka kara aiki a nan)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Taƙaitaccen bayani akan aiki"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(Taƙaitaccen bayani akan aiki)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Ƙirƙiri MO fiyil"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Fidda aiki"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Sunan mai aiki"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(Ka sanya cikkakken suna anan)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Addreshin Email"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(ka sanya addreshin e-mail)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Harrufan sirri"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(Ka sanya haruffan sirri anan)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Sanya shi yayi aiki"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "ka baiwa sabon mai aiki hurumi"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Ka fitarda mai aiki "
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Koma babban shafinmu"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Yarurrukan da suke aiki"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Inganta yarurruka"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Mai bada hurumi a pootle"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Baka da hurumin jirkita wannan aikin"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Ƙara yare"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Mai zartarwa a pootle:%s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Babban shafin aiki"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Hurumin mai aiki dashi"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(Zaɓa don ka ƙara mai aiki)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Hurumi"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Cire"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Ka inganta hurumi"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Ka zama jagora"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "Yarurruka"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Nemi"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Ka baiwa mai amfani dashi"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Ka Kaddamar"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+#, fuzzy
+msgid "Untranslated"
+msgstr "Fassara"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+#, fuzzy
+msgid "Translate My Strings"
+msgstr "Igiyar fassara da sauri"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Dubi igiya ta"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Babu waɗansu igiyoyi da aka maƙala maka"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Igiyar fassara da sauri"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+#, fuzzy
+msgid "Review Suggestions"
+msgstr "Dubi Shawarwari"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Dubi Shawarwari"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Fassara da sauri"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Ka dubi waÉ—anda ba'a fassara ba"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Babu wani abinda ba'a fassara ba"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Duk ka fassara"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Mu Ƙirƙiri SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Dukkannin Ayyuka"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Dukkanin Yarurruka"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Ka fita"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Ka shiga"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Ragista"
+
+#: pagelayout.py:38
+#, fuzzy
+msgid "Activate"
+msgstr "Sanya shi yayi aiki"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Tambarin pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "Fassara"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+#, fuzzy
+msgid "You do not have the rights to administer pootle."
+msgstr "Baka da hurumin jirkita wannan aikin"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Ka dubi"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "bada shawara"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Fassara"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Kayi bita"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "matattaran bayanai"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Ka tattara PO fayil"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Kasanya ayi"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Bazaka iya cire \"nobody\"ko\"default\" ma'aikaci ba"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Baka da hurumin chanja manufa anan"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Baka da hurumin maƙala fayil anan"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "baka da hurumin zartar da fayil anan"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Baka da hurumin maƙala sabon fayil anan"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Baka da hurumin maƙala fayil anan"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "baka da hurumin zartar da fayil anan"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "baka da hurumin taɓa aikin jeka kayi anan"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "baka da hurumin chanja yare anan"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Baka da hurumin bada shawaran chanji anan"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Baka da hurumin gyaran shawarwari anan"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: fassara%s zuwa %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Na kwarai"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Fassara"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Alaka"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Karshen wannan kashi"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Ka tsokari nan don ka koma ainihin mafari"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Fara"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Na baya %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Gaba %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Ƙarshe"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "Dubawa %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Babu wani abu daya dace da abin da ka nema (%s)"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Ka kammala duba abubuwan da ka zaba"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "mufuraÉ—i"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Jam'i"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Chanja"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kwafi"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Stallake"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Baya"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Aika"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Girma"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Ramewa"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Jinsin jam'i"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Fassara ba zaiyuba saboda babu bayani akan jam'in yaranka,saboda haka ka "
+"tuntuɓi mai kula da wannan shafin"
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Wannan fassaran"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Shawara %d daga %s"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Shawara %d"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Shawara da %s"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Shawara"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "Sunan mai aiki"
+
+#: users.py:68
+#, fuzzy
+msgid "Password:"
+msgstr "Harrufan sirri"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "Yarurruka"
+
+#: users.py:71
+msgid "Login"
+msgstr "Shiga"
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "Yarurruka"
+
+#: users.py:196
+#, fuzzy
+msgid "Home page"
+msgstr "Babban shafi"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Ka yadda"
+
+#~ msgid "Reject"
+#~ msgstr "Maida"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Aikin Fassaran Wordforge"
+
+#~ msgid "Broaden"
+#~ msgstr "FaÉ—aÉ—a"
+
+#~ msgid "Narrow"
+#~ msgstr "tsukewa"
+
+#~ msgid "Reset"
+#~ msgstr "chanja"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/he/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/he/jToolkit.po
new file mode 100644
index 0000000..b322828
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/he/jToolkit.po
@@ -0,0 +1,141 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-10-24 07:06+0000\n"
+"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "כניסה ×ל %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ביטול פעולה זו והתחלת הפעלה חדשה"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "×‘×ž×§×•× ×œ×שר פעולה זו ×¦× ×•×”×ª×—×œ מחדש"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "יצי××” מהיישו×"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "יצי××” ×ž×™×™×©×•× ×–×” וחזרה ×ל ×”×™×™×©×•× ×”×”×•×¨×”"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", × × ×œ×שר כניסה"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "כניסה"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "×©× ×ž×©×ª×ž×©:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "סיסמה:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "שפה:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "בחירת יישו×"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "יצי××”"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "סגירה"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "×¨×™×©×•× ×›-<b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "×œ× × ×™×ª×Ÿ להוסיף הפעלה חדשה"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "מנותק"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "מחובר"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "×™×¦× ×ž×”×¤×¢×œ×ª ההורה"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "יש להגדיר ×ת הרשומות users ×ו userprefs בתצורת השרת"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "משתמש ×ינו ×§×™×™× (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "×©× ×ž×©×ª×ž×© ו/×ו סיסמה שגויי×"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "×ימות הכניסה נכשל"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "ל×"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "כן"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "הסר"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(×ין ×§×‘×¦×™× ×ž×¦×•×¨×¤×™×)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "הקובץ המצורף גדול מדי"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "הסר קובץ מצורף זה"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "שחזר"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "קובץ מצורף ×–×” הוסר. לחץ ×›×ן כדי לשחזר ×ותו"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "צרף קובץ"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/he/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/he/pootle.po
new file mode 100644
index 0000000..c3d7420
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/he/pootle.po
@@ -0,0 +1,1445 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-10-24 07:55+0000\n"
+"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "הדמית Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "בית"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "משתמשי×"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "שפות"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "פרויקטי×"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "×פשרויות כלליות"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "×פשרות"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "ערך נוכחי"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "שמירת שינויי×"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "כותרת"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "תי×ור"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "כתובת בסיס"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "דף הבית"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "דף ניהול שפות ה־Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "דף הניהול הר×שי"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "קוד ה-ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "×©× ×ž×œ×"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(×›×ן ×ž×•×¡×™×¤×™× ×©×¤×”)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "×ª×•×•×™× ×ž×™×•×—×“×™×"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(×ª×•×•×™× ×ž×™×•×—×“×™×)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "מספר צורות הרבי×"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(מספר צורות הרבי×)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "משוו×ת הרבי×"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(משוו×ת הרבי×)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "הסרת שפה"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "הסרת %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "רגיל"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "עמוד ניהול ×”×¤×¨×•×™×™×§×˜×™× ×‘Ö¾Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "קוד הפרויקט"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(×›×ן ×ž×•×¡×™×¤×™× ×¤×¨×•×™×§×˜)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "תי×ור הפרויקט"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(תי×ור הפרויקט)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "סגנון הבודק"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "סוג קובץ"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "יצירת קבצי MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "הסרת פרויקט"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "עמוד ניהול ×”×ž×©×ª×ž×©×™× ×‘Ö¾Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "×©× ×ž×©×ª×ž×©"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(×›×ן יש להוסיף ×©× ×ž×œ×)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "כתובת דו×\"ל"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(×›×ן יש להוסיף כתובת דו×\"ל)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "סיסמה"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(×›×ן יש להוסיף סיסמה)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "הופעל"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "הפעלת משתמש חדש"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "הסרת משתמש"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "חזרה לדף הר×שי"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "שפות קיימות"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "עידכון שפות"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "מנהל Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "××™ לך הרש×ות לניהול הפרויקט"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "עידכון מתבנית"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "הוספת שפה"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "מנהל Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "דף הבית של הפרויקט"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "×ין ×פשרות לתת הרש×ות ×œ×©× ×”×ž×©×ª×ž×© %s - המשתמש ×ינו קיי×"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "זהו פרויקט בתבנית GNU (תיקיה בודדת ×•×§×‘×¦×™× ×‘×¢×œ×™ ×©× ×”×©×¤×”)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "זהו פרויקט במבנה רגיל (תיקיה נפרדת לכל שפה)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "הרש×ות המשתמש"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(יש לבחור להוספת משתמש)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "הרש×ות"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "הסרה"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "עידכון הרש×ות"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "×ודות Pootle "
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> הינו פורטל רשת פשוט ×”×מור ל×פשר לך "
+"<strong>לתרג×</strong>! מ×חר ו־Pootle הינו <strong>תוכנה חופשית</strong>, "
+"תוכל להוריד ×ותו ולהריץ עותק ממנו משלך ×× ×ª×¨×¦×”. כמו כן תוכל לסייע על ידי "
+"השתתפות בפיתוח ×‘×“×¨×›×™× ×©×•× ×•×ª (×ינך דרוש לדעת לתכנת)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"הפרוייקט Pootle עצמו מת×רח בכתובת <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> ×©× "
+"תוכל ×œ×ž×¦×•× ×ת כל ×”×¤×¨×˜×™× ×ודות קוד המקור, רשימות הדיוור וכו'."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"×”×©× ×ž×™×™×¦×’ ×ת <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, ×ך יתכן שיש צורך ×œ×§×¨×•× ×ת<a "
+"href=\"http://www.thechestnut.com/flumps.htm\">הקטע הזה</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "גרס×ות"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"×תר ×–×” מריץ:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit %s<br "
+"/>Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "עמוד המשתמש עבור: %s "
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "שנה ×פשרויות"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "עמוד הניהול"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "ניהול"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "×§×™×©×•×¨×™× ×ž×”×™×¨×™×"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "× × ×œ×—×¥ על 'שנה ×פשרויות' ובחר בכמה שפות ופרוייקטי×"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "פרוייקט %d, ממוצע %d%% מתורגמי×"
+msgstr[1] "%d פרוייקטי×, ממוצע %d%% מתורגמי×"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "מנהל"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "קוד השפה"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "×©× ×”×©×¤×”"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "שפה %d, ממוצע %d%% מתורגמי×"
+msgstr[1] "%d שפות, ממוצע %d%% מתורגמי×"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "שפה"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: פרוייקט %s, שפה %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "חיפוש"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "חיפוש מתקד×"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "×œ× × ×™×ª×Ÿ להעלות קובץ, ×œ× ×¦×•×¨×£ קובץ"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "ניתן להעלות קבצי PO וקבצי zip של קבצי PO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "הקצה מחרוזות"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "פעולת הקצ××”"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "הקצה למשתמש"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "מטרות"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "הזן ×ת ×©× ×”×ž×˜×¨×”"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "הוסף מטרה"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "העלה קבצי×"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "בחר קובץ להעל××”"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "שכתב"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "שכתב על הקובץ הנוכחי במידה וקיי×"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "מיזוג"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "מזג ×ת הקובץ ×¢× ×”×§×•×‘×¥ הנוכחי והפוך ×ת הסתירות להצעות"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "×œ× ×‘×ª×•×š המטרה"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "הוסף משתמש"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "קובץ PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "קובץ XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "קובץ .ts של Qt "
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "קובץ CVS"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "קובץ MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "עדכון"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "מסירה"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "כל המחרוזות"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "×œ× ×ª×•×¨×’×ž×•"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "×œ× ×ž×•×§×¦×”"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "×œ× ×ž×•×§×¦×” ×•×œ× ×ž×ª×•×¨×’×"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "הגדר מטרה"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "בחר כמה"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "הקצה ×ל"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "הצג פונקציות לעריכה"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "הצג סטטיסטיקות"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "הצג מעקבי×"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "הסתר מעקבי×"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "הצג מסומני×"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "הסתר ×ת המסומני×"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "הצג מטרות"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "הסתר מטרות"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "הצג הקצ×ות"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "הסתר הקצ×ות"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "כל המטרות: %s "
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "×ª×¨×’× ×ת המחרוזות שלי"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "הצג ×ת המחרוזות שלי"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "×ין מחרוזות המוקצות לך"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "×ª×¨×’×•× ×ž×”×™×¨ של המחרוזות שלי"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "×ין מחרוזות ש×ינן מתורגמות המוקצות לך"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "סקור הצעות"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "צפיה בהצעות"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "×ª×¨×’×•× ×ž×”×™×¨"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "צפה במחרוזות ×©×œ× ×ª×•×¨×’×ž×•"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "×ין ×¤×¨×™×˜×™× ×©××™× × ×ž×ª×•×¨×’×ž×™×"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "×ª×¨×’× ×”×›×œ"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP של המטרה"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP של התיקייה"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "ייצר SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "מחרוזת %d (%d%%) כשלו"
+msgstr[1] "%d מחרוזות (%d%%) כשלו"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d ×ž×™×œ×™× (%d%%) הוקצו"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d מחרוזות]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d ×ž×™×œ×™× (%d%%) תורגמו"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "כל הפרויקטי×"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "כל השפות"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "החשבון שלי"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "תיעוד ועזרה"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "יצי××”"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "כניסה"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "הרשמה"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "הפעלה"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "סמל Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "×ודות שרת Pootle ×–×”"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "כל המטרות"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d קבצי×"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "קובץ %d"
+msgstr[1] "%d קבצי×"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d מחרוזות"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "ש×"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "תורג×"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "×חוזי תרגו×"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "×ž×™×œ×™× ×©×ª×•×¨×’×ž×•"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "בספק"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "××—×•×–×™× ×‘×¡×¤×§"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "×ž×™×œ×™× ×‘×¡×¤×§"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "××—×•×–×™× ×©×œ× ×ª×•×¨×’×ž×•"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "×ž×™×œ×™× ×©×œ× ×ª×•×¨×’×ž×•"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "סך הכל"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "סך כל המילי×"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "גרף"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "טקסט המקור"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "טקסט היעד"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "הערות"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "מיקומי×"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "ההתחברות נכשלה"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "מפנה ×ל ההתחברות..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "יש להתחבר כדי לגשת ×ל עמוד הבית"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "×”×¤×¨×˜×™× ×”××™×©×™×™× ×¢×•×“×›× ×•"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "יש להתחבר כדי לגשת לעמוד הניהול"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "מפנה ×ל עמוד הבית..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "××™ לך הרש×ות לניהול ×”Ö¾pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "הצג"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "הצע"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "תרג×"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "סקור"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "העבר ל×רכיון"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "הדר קבצי PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "הקצ××”"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "×ין ב×פשרותך להסיר ×ת ×”×ž×©×ª×ž×©×™× \"nobody\" ×ו \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "×ין לך הרש×ות לשנות ×ת המטרות ×›×ן"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "×ין לך הרש×ות להעלות ×§×‘×¦×™× ×›×ן"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "×ין לך הרש×ות לשכתב ×§×‘×¦×™× ×›×ן"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "×ין לך הרש×ות להעלות ×§×‘×¦×™× ×—×“×©×™× ×›×ן"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "×ין לך הרש×ות לעדכן ×§×‘×¦×™× ×›×ן"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "×ין לך הרש×ות להגיש ×§×‘×¦×™× ×›×ן"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "×ין לך הרש×ות לשנות הקצ×ות ×›×ן"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "×ין לך הרש×ות לשנות ×ª×¨×’×•×ž×™× ×›×ן"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "×ין לך הרש×ות להציע ×©×™× ×•×™×™× ×›×ן"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "×ין לך הרש×ות לסקור הצעות ×›×ן"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d תורגמו\n"
+"(%d ×œ× ×ž×ª×•×¨×’×ž×™×, %d בספק)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: ×ª×¨×’×•× %s ל-%s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "מקור"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "תרגו×"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "קבל ×ת ההצעה"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "דחה ×ת ההצעה"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "הערות המתרג×"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "הערות המפתח"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "קשורי×"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "עובד..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "שגי××”: משהו השתבש."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "סוף ×סופה"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "יש ללחוץ ×›×ן כדי לחזור לתוכן"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "התחלה"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d קודמי×"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "×¤×¨×™×˜×™× %d עד %d מ-%d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d הב××™×"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "סוף"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "בודק %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "×ין ×¤×¨×™×˜×™× ×”×ª×•××ž×™× ×ת החיפוש ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "סיימת לעבור על ×”×¤×¨×™×˜×™× ×©×‘×—×¨×ª"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "יחיד"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "רבי×"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "עריכה"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "העתקה"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "דילוג"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "חזרה"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "הגשה"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "הגדלה"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "הקטנה"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "%d צורות רבי×"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"×ª×¨×’×•× ×œ× ×פשרי בגלל שהמידע על צורת ×”×¨×‘×™× ×œ×©×¤×ª×š ×ינו זמין. × × ×œ×¤× ×•×ª ×ל מנהל "
+"×”×תר."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "×ª×¨×’×•× × ×•×›×—×™:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "הצעה %d על ידי %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "הצעה %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "הצעה על ידי %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "הצעה:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "עליך לבחור סיסמה תקפה בת %d ×ª×•×™× ×œ×›×œ הפחות"
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "הסיסמה ××™× ×” תו×מת ×ת ×”×ישור"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "כניסה לפוטל"
+
+#: users.py:66
+msgid "Username:"
+msgstr "×©× ×ž×©×ª×ž×©:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "סיסמה:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "שפה:"
+
+#: users.py:71
+msgid "Login"
+msgstr "כניסה"
+
+#: users.py:77
+msgid "Default"
+msgstr "ברירת מחדל"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "× × ×œ×”×–×™×Ÿ ×ת פרטי ההרשמה שלך"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "הרשמה לפוטל"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "×©× ×”×ž×©×ª×ž×© שבחרת"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "יש להזין כתובת דו×\"ל תקפה"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "שמך המל×"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "הסיסמה שבחרת"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "×ישור סיסמה"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "× × ×œ×”×§×œ×™×“ ×ת הסיסמה שנית כדי להבטיח ×ת נכונותה"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "×¨×™×©×•× ×—×©×‘×•×Ÿ"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "יש להזין ×ת פרטי ההפעלה שלך"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "הפעלת חשבון פוטל"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "קוד הפעלה"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "קוד ההפעלה שקבלת"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "הפעל חשבון"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "×פשרויות עבור: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "×¤×¨×˜×™× ×ישיי×"
+
+#: users.py:186
+msgid "Email"
+msgstr "דו×\"ל"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "תצורת מנשק התרגו×"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "שפת מנשק המשתמש"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "×”×¤×¨×•×™×§×˜×™× ×©×œ×™"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "השפות שלי"
+
+#: users.py:196
+msgid "Home page"
+msgstr "דף הבית"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "שפת מקור חלופית"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "לל×"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "גובה הקלט (בשורות)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "מספר השורות במצב צפיה"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "מספר השורות במצב תרגו×"
+
+#: users.py:307
+msgid "Error"
+msgstr "שגי××”"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "עליך להיות מנהל ×”×תר כדי לשנות משתמשי×"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "על ×©× ×”×ž×©×ª×ž×© להכיל ×ותיות ×•×ž×¡×¤×¨×™× ×‘×œ×‘×“."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "ניסית (×ו שמישהו ×חר ניסה) ×œ×¨×©×•× ×—×©×‘×•×Ÿ ×¢× ×©× ×”×ž×©×ª×ž×© שלך.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "×יננו ×©×•×ž×¨×™× ×ת סיסמתך ××œ× ×¨×§ ×ת חתימתה.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "×× ×תה נתקל בבעיות בהרשמה, צור קשר ×¢× %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "×× ×תה נתקל בבעיות בהרשמה, צור קשר ×¢× ×ž× ×”×œ ×”×תר.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "×©× ×ž×©×ª×ž×© ×–×” כבר קיי×. תשלח הודעת דו×ל ×ל כתובת הדו×ל הרשומה.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "ממשיך על עמוד ה<a href='%s'>התחברות</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "נוצר חשבון Pootle עבורך ב×מצעות כתובת דו×ל זו.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "על מנת להפעיל ×ת חשבונך, עקוב ×חר קישור ×–×”:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"קוד ההפעלה שלך הו×:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "×× ×ינך מצליח לעקוב ×חר הקישור, ×× × ×”×–×Ÿ ×ת הקוד שלהלן בעמוד ההפעלה.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "הודעה זו נשלחה כדי ×œ×•×•×“× ×©×›×ª×•×‘×ª הדו×ל שלך נכונה. ×× ×œ× ×¨×¦×™×ª ×œ×¨×©×•× ×—×©×‘×•×Ÿ, "
+"תוכל ×œ×”×ª×¢×œ× ×ž×”×•×“×¢×” זו.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"החשבון נוצר. הודעת דו×ל תשלח ×ליך בה יופיעו פרטי ההתחברות שלך וקוד ההפעלה. "
+"×× × ×”×–×Ÿ ×ת קוד ההפעלה ב<a href='%s'>עמוד ההפעלה</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(×ו פשוט לחץ על קישור ההפעלה בהודעת הדו×ל)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+"×©× ×”×ž×©×ª×ž×© שלך הינו: %s\n"
+" "
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "הסיסמה שבחרת ×”×™×: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "כתובת הדו×ל הרשומה עבורך ×”×™× ×”: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "מפנה ×ל עמוד ההרשמה..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "מפנה ×ל עמוד ההתחברות..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "החשבון שלך הופעל! מפנה ×ל ההתחברות..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "נתוני ההפעלה ×”×™× × ×©×’×•×™×™×."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "ההפעלה נכשלה"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "גובה הקלט חייב להיות מספרי"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "רוחב הקלט חייב להיות מספרי"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "מספר השורות שיוצגו במצב התצוגה חייב להיות מספרי"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "מספר השורות שיוצגו במצב ×”×ª×¨×’×•× ×—×™×™×‘ להיות מספרי"
+
+#~ msgid "Accept"
+#~ msgstr "קבלה"
+
+#~ msgid "Reject"
+#~ msgstr "דחיה"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "פרויקט ×”×ª×¨×’×•× ×©×œ WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "הרחבה"
+
+#~ msgid "Narrow"
+#~ msgstr "הצרה"
+
+#~ msgid "Reset"
+#~ msgstr "שחזור"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "יש להזין כתובת דו×\"ל תקפה"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "רוחב הקלט (בתווי×)"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>פוטל</strong>×”×•× ×¤×•×¨×˜×œ רשת פשוט המיועד ל×פשר לך <strong>לתרג×</"
+#~ "strong>!\t"
+
+#~ msgid "parent folder"
+#~ msgstr "תיקית ××"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">פרויקטי×</h3>\t"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "קבצי×, %d/%d מחרוזות (%d%%) תורגמו"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "זוהי התקנת הדגמה של פוטל"
+
+#~ msgid "current folder"
+#~ msgstr "תיקיה נוכחית"
+
+#~ msgid "login status"
+#~ msgstr "מצב חיבור"
+
+#~ msgid "project root"
+#~ msgstr "שורש הפרויקט"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "×ין לך הרש×ות לשנות ×ª×¨×’×•×ž×™× ×‘×ž×§×•× ×–×”"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d מחרוזות (%d%%) תורגמו"
+
+#~ msgid "%d files, "
+#~ msgstr "%d קבצי×,"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">שפות</h3>"
+
+#~ msgid "current file"
+#~ msgstr "קובץ נוכחי"
+
+#~ msgid "not logged in"
+#~ msgstr "×œ× ×ž×—×•×‘×¨"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/hi/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/hi/jToolkit.po
new file mode 100644
index 0000000..2ce5e42
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/hi/jToolkit.po
@@ -0,0 +1,145 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-06-14 14:26+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Translate Toolkit 0.9rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s हेतॠलॉगिन"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "इस कारà¥à¤¯ को रदà¥à¤¦ करके नया सतà¥à¤° पà¥à¤°à¤¾à¤°à¤‚भ करे"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "इस कारà¥à¤¯ का अनà¥à¤®à¥‹à¤¦à¤¨ करने के बजाय, लॉग ऑउट करे और दà¥à¤µà¤¾à¤°à¤¾ पà¥à¤°à¤¾à¤°à¤‚भ करे"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— से बाहर निकले"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "इस अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— से बाहर निकलकर मूल अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— मे वापस जाये"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", कृपा लॉगिन की पà¥à¤·à¥à¤Ÿà¤¿ करें"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "लॉगिन"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "पà¥à¤°à¤¯à¥‹à¤•à¥à¤¤à¤¾à¤¨à¤¾à¤®:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "गà¥à¤ªà¥à¤¤à¤¶à¤¬à¥à¤¦:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "भाषा:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— चयन"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "लॉग ऑउट"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "बाहर"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b> लॉग इन"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "नया सतà¥à¤° नहीं जोड़ सके"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "लॉग आउट हो गया"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "संयà¥à¤•à¥à¤¤"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "मूल सतà¥à¤° से बाहर"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "योकà¥à¤¤à¤¾ (%r) विदà¥à¤¯à¤®à¤¾à¤¨ नही हैं "
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "गलत योकà¥à¤¤à¤¾à¤¨à¤¾à¤® और/या गà¥à¤ªà¥à¤¤à¤¶à¤¬à¥à¤¦"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "असफल लॉग इन पà¥à¤·à¥à¤Ÿà¤¿"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "नहीं"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "हाà¤"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "हटायें"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(कोई संगà¥à¤²à¤¨ फाइल नहीं)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "संलगà¥à¤¨ फाइल बडी हैं"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "संलगà¥à¤¨ फाइल हटायें "
+
+#: attachments.py:350
+msgid "restore"
+msgstr "पà¥à¤¨à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ करे"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "संलगà¥à¤¨ फाइल हटाई गई हैं।पà¥à¤¨à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ करने के लिठयहाठकà¥à¤²à¤¿à¤• करें"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "फाइल संलगà¥à¤¨ करे"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "सरà¥à¤µà¤° संरूपण में योकà¥à¤¤à¤¾ पà¥à¤°à¤µà¤¿à¤·à¥à¤Ÿà¤¿ परिभाषित करना आवशà¥à¤¯à¤• हैं"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/hi/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/hi/pootle.po
new file mode 100644
index 0000000..9173446
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/hi/pootle.po
@@ -0,0 +1,1421 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2006-12-01 11:53+0100\n"
+"Last-Translator: G Karunakar <karunakar@freedomink.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.10.1\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+#, fuzzy
+msgid "Languages"
+msgstr "%s भाषा"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "पà¥à¤°à¤•à¤²à¥à¤ª"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr ""
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+#, fuzzy
+msgid "Remove Language"
+msgstr "%s भाषा"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+#, fuzzy
+msgid "Remove Project"
+msgstr "पà¥à¤°à¤•à¤²à¥à¤ª"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "पà¥à¤°à¤¯à¥‹à¤•à¥à¤¯à¤¤à¤¾à¤¨à¤¾à¤®"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "विपतà¥à¤° पता"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "गà¥à¤ªà¥à¤¤à¤¶à¤¬à¥à¤¦"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"नाम <b>पीओ </b> आधारित <b> ऑ </b>नलाइन <b>टà¥à¤°à¥‰ </b>सà¥à¤²à¥‡à¤¶à¤¨ य<b> "
+"लो</b>कलाईज़ेशन इंजन हैं, लेकिन आप <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">यह</a> पढ़ सकते हैं।"
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "%s भाषा"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "खोजें"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "पीओ फाइल"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV फाइल"
+
+#: indexpage.py:748
+#, fuzzy
+msgid "MO file"
+msgstr "पीओ फाइल"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+#, fuzzy
+msgid "Untranslated"
+msgstr "सारा अनà¥à¤µà¤¾à¤¦ करे"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "जाà¤à¤š दिखाय़ें"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "तवरितॠअनà¥à¤µà¤¾à¤¦"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "अ-अनà¥à¤µà¤¾à¤¦à¤¿à¤¤ दिखाये"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "सारा अनà¥à¤µà¤¾à¤¦ करे"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+#, fuzzy
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d रजà¥à¤œà¥ (%d%%) असफल"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+#, fuzzy
+msgid "All projects"
+msgstr "%s पà¥à¤°à¤•à¤²à¥à¤ª"
+
+#: pagelayout.py:29
+#, fuzzy
+msgid "All languages"
+msgstr "%s भाषा"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+#, fuzzy
+msgid "Log out"
+msgstr "लॉग आउट"
+
+#: pagelayout.py:35
+#, fuzzy
+msgid "Log in"
+msgstr "लॉग ईन"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "पंजीकरण"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+#, fuzzy
+msgid "Pootle Logo"
+msgstr "पूटल पंजीकरण"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "सारा अनà¥à¤µà¤¾à¤¦ करे"
+
+#: pagelayout.py:244
+#, fuzzy
+msgid "Translated percentage"
+msgstr "अ-अनà¥à¤µà¤¾à¤¦à¤¿à¤¤ दिखाये"
+
+#: pagelayout.py:245
+#, fuzzy
+msgid "Translated words"
+msgstr "सारा अनà¥à¤µà¤¾à¤¦ करे"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+#, fuzzy
+msgid "Untranslated percentage"
+msgstr "अ-अनà¥à¤µà¤¾à¤¦à¤¿à¤¤ दिखाये"
+
+#: pagelayout.py:251
+#, fuzzy
+msgid "Untranslated words"
+msgstr "अ-अनà¥à¤µà¤¾à¤¦à¤¿à¤¤ दिखाये"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "देखें"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr "अनà¥à¤µà¤¾à¤¦ करना"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "रिवà¥à¤¯à¥‚"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "अभिलेखागार"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "फ़ाइल"
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+#, fuzzy
+msgid "You do not have rights to alter goals here"
+msgstr "आपको यहाठसूà¤à¤¾à¤µ देने की अनà¥à¤®à¤¤à¤¿ नहीं हैं"
+
+#: projects.py:510
+#, fuzzy
+msgid "You do not have rights to upload files here"
+msgstr "आपको यहाठसूà¤à¤¾à¤µ देने की अनà¥à¤®à¤¤à¤¿ नहीं हैं"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "आपको यहाठसूà¤à¤¾à¤µ देने की अनà¥à¤®à¤¤à¤¿ नहीं हैं"
+
+#: projects.py:515
+#, fuzzy
+msgid "You do not have rights to upload new files here"
+msgstr "आपको यहाठसूà¤à¤¾à¤µ देने की अनà¥à¤®à¤¤à¤¿ नहीं हैं"
+
+#: projects.py:524
+#, fuzzy
+msgid "You do not have rights to update files here"
+msgstr "आपको यहाठसूà¤à¤¾à¤µ देने की अनà¥à¤®à¤¤à¤¿ नहीं हैं"
+
+#: projects.py:555
+#, fuzzy
+msgid "You do not have rights to commit files here"
+msgstr "आपको यहाठसूà¤à¤¾à¤µ देने की अनà¥à¤®à¤¤à¤¿ नहीं हैं"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+#, fuzzy
+msgid "You do not have rights to change translations here"
+msgstr "आपको यहाठअनà¥à¤µà¤¾à¤¦ बदलने की अनà¥à¤®à¤¤à¤¿ नहीं हैं"
+
+#: projects.py:1229
+#, fuzzy
+msgid "You do not have rights to suggest changes here"
+msgstr "आपको यहाठसूà¤à¤¾à¤µ देने की अनà¥à¤®à¤¤à¤¿ नहीं हैं"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d अनà¥à¤µà¤¾à¤¦à¤¿à¤¤\n"
+"(%d खाली ,%d गलत)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "पूटल: %s से %s में अनà¥à¤µà¤¾à¤¦ हो रहा हैं: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+#, fuzzy
+msgid "Translation"
+msgstr "सारा अनà¥à¤µà¤¾à¤¦ करे"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "शà¥à¤°à¥‚ िकजीये"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%d से %d मद %d का"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "अगला %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s की जाà¤à¤š हो रही हैं"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "खोज ('%s') से मिलने वाली मद नहीं हैं"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+#, fuzzy
+msgid "Current Translation:"
+msgstr "<b> वरà¥à¤¤à¤®à¤¾à¤¨ अनà¥à¤µà¤¾à¤¦ </b>"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "सà¥à¤à¤¾à¤µ %d %s दà¥à¤µà¤¾à¤°à¤¾ :"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "सà¥à¤à¤¾à¤µ %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s दà¥à¤µà¤¾à¤°à¤¾ सà¥à¤à¤¾à¤µ"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "सà¥à¤à¤¾à¤µ:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "पूटल मे लॉगिन"
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "पà¥à¤°à¤¯à¥‹à¤•à¥à¤¯à¤¤à¤¾à¤¨à¤¾à¤®"
+
+#: users.py:68
+#, fuzzy
+msgid "Password:"
+msgstr "गà¥à¤ªà¥à¤¤à¤¶à¤¬à¥à¤¦"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "%s भाषा"
+
+#: users.py:71
+#, fuzzy
+msgid "Login"
+msgstr "लॉग ईन"
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "कृपा अपना पंजीकरण विवरण पà¥à¤°à¤µà¤¿à¤·à¥à¤Ÿ करें"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "पूटल पंजीकरण"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "अनà¥à¤°à¥‹à¤§ किया हà¥à¤† योकà¥à¤¤à¤¾à¤¨à¤¾à¤®"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "आपकी पसंद का गà¥à¤ªà¥à¤¤à¤¶à¤¬à¥à¤¦"
+
+#: users.py:133 users.py:189
+#, fuzzy
+msgid "Confirm password"
+msgstr "आपकी पसंद का गà¥à¤ªà¥à¤¤à¤¶à¤¬à¥à¤¦"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+#, fuzzy
+msgid "Register Account"
+msgstr "पंजीकरण"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "कृपा अपना सकà¥à¤°à¤¿à¤¯à¤£ विवरण पà¥à¤°à¤µà¤¿à¤·à¥à¤Ÿ करें "
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "आपके दà¥à¤µà¤¾à¤°à¤¾ पà¥à¤°à¤¾à¤ªà¥à¤¤ सकà¥à¤°à¤¿à¤¯à¤£ कोड "
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+msgid "My Languages"
+msgstr ""
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+#, fuzzy
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "आपके दà¥à¤µà¤¾à¤°à¤¾ पà¥à¤°à¤¾à¤ªà¥à¤¤ सकà¥à¤°à¤¿à¤¯à¤£ कोड "
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+#, fuzzy
+msgid "Your password is: %s\n"
+msgstr "आपकी पसंद का गà¥à¤ªà¥à¤¤à¤¶à¤¬à¥à¤¦"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong> पूटल </strong> à¤à¤• सरल वेवसà¥à¤¥à¤² है जहाठआप <strong> अनà¥à¤µà¤¾à¤¦ </strong> कर "
+#~ "सकते हैं!"
+
+#~ msgid "parent folder"
+#~ msgstr "जनक फोलà¥à¤¡à¤°"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">पà¥à¤°à¤•à¤²à¥à¤ª </h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d फाइल, %d/%d रजà¥à¤œà¥ (%d%%) अनà¥à¤µà¤¾à¤¦à¤¿à¤¤"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "यह पूटल का पà¥à¤°à¤¦à¤°à¥à¤¶à¤¨ सà¥à¤¥à¤¾à¤ªà¤¨ हैं"
+
+#~ msgid "current folder"
+#~ msgstr "वरà¥à¤¤à¤®à¤¾à¤¨ फोलà¥à¤¡à¤°"
+
+#~ msgid "login status"
+#~ msgstr "लॉग इन सà¥à¤¥à¤¿à¤¤à¤¿"
+
+#~ msgid "project root"
+#~ msgstr "पà¥à¤°à¤•à¤²à¥à¤ª मूल"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/hr/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/hr/jToolkit.po
new file mode 100644
index 0000000..3d47fac
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/hr/jToolkit.po
@@ -0,0 +1,143 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-08-07 14:48+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"X-Generator: Pootle 0.6.3\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Prijava za %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Odustani od ove radnje i pokreni novu sesiju"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Umjesto potvrde ove radnje, odjavite se i zapoÄnite od poÄetka"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Zatvori aplikaciju"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Zatvori ovu aplikaciju i vrati se na aplikaciju koja je pokrenula istu"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", molim vas potvrdite prijavu"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Prijava"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "KorisniÄko ime:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Zaporka:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Jezik:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Odaberite aplikaciju"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Odjava"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Izlaz"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "prijavljen kao <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "nemogu dodati novu sesiju"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "odjavljen"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "povezano"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "izašao iz sesije koja je pokrenula ovu"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"morate definirati korisnike ili korisniÄke postavke u postavkama servera"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "korisnik ne postoji (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "neispravno korisniÄko ime i/ili zaporka"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "neuspješna potvrda prijave"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ne"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Da"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "ukloni"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(nema privitka)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "privitak je prevelik"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ukloni ovaj privitak"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "postaviti u prvotno stanje"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+"ovaj privitak je uklonjen. kliknite ovdje kako bi ga vratili u prvotno stanje"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "dodaj datoteku"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/hr/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/hr/pootle.po
new file mode 100644
index 0000000..12fd7c8
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/hr/pootle.po
@@ -0,0 +1,1450 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-11-16 23:13+0000\n"
+"Last-Translator: Ladislav <lkralj@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "PoÄetna stranica"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Korisnici"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Jezici"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekti"
+
+#: adminpages.py:49
+#, fuzzy
+msgid "General options"
+msgstr "Opće postavke"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Izbor"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Trenutna vrijednost"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Spremi promjene"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Naslov"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Opis"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Osnovni URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "PoÄetna stranica"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle administratorska stranica jezika"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+#, fuzzy
+msgid "Main admin page"
+msgstr "Glavna administratorska stranica"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO Å¡ifra"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Puno ime"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(dodaj jezik ovdje)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Posebni znakovi"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(posebni znakovi)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Broj rijeÄi u množini"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(broj rijeÄi u množini)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Jednadžba množine"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(jednadžba množine)"
+
+#: adminpages.py:98
+#, fuzzy
+msgid "Remove Language"
+msgstr "Ukloni jezik"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Ukloni %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standardno"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle administratorska stranica projekata"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Å ifra projekta"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(dodaj projekt ovdje)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Opis projekta"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(opis projekta)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Stil kontrole"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tip datoteke"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Stvori MO datoteke"
+
+#: adminpages.py:158
+#, fuzzy
+msgid "Remove Project"
+msgstr "Ukloni projekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle administratorska stranica korisnika"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "KorisniÄko ime"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(dodaj puno ime ovdje)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Email adresa"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(dodaj email ovdje)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Zaporka"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(dodaj zaporku ovdje)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktivirano"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktiviraj novog korisnika"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Ukloni korisnika"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Povratak na glavnu stranicu"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Postojeći jezici"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Ažuriraj jezike"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle administrator: %s %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Vi nemate prava administrirati ovaj projekt."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Ažuriraj iz predložaka"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Dodaj jezik"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle administrator: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "PoÄetna stranica projekta"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Nemogu postaviti prava za korisnika %s - korisnik ne postoji"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Ovo je projekt u GNU-stilu (jedan direktorij, datoteke imenovane po jeziku)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ovo je projekt u standardnom stilu (jedan direktorij po jeziku)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Prava korisnika"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Prava"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Ukloni"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Osvježi prava"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "O Pootle-u"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> je jednostavan web portal koji bi vam trebao "
+"omogućiti da <strong>prevodite</strong>! Kako je Pootle <strong>Free "
+"Software</strong>, možete ga preuzeti i pokrenuti vlastitu kopiju ako "
+"želite. TakoÄ‘er možete sudjelovati u razvoju na viÅ¡e naÄina (ne morate znati "
+"programirati)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle projekt se nalazi na <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> gdje "
+"možete pronaći detalje o izvornom kodu, dopisnim listama itd."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Naziv ima sljedeće znaÄenje <b>PO</b>-temeljen <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, ali možda bi bilo "
+"dobro proÄitati <a href=\"http://www.thechestnut.com/flumps.htm\">ovo</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Verzije"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+#, fuzzy
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Ova stranica pokreće:<br/>Pootle %s</br>jToolkit %s</br>Python %s (na %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "KorisniÄka stranica za: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Promjeni postavke"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Administratorska stranica"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administriraj"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Brzi linkovi"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Molim vas kliknite na 'Promjeni postavke' te odaberite neke jezike i "
+"projekte"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekt, prosjeÄno %d%% prevedeno"
+msgstr[1] "%d projekti, prosjeÄno %d%% prevedeno"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administrator"
+
+#: indexpage.py:221
+#, fuzzy
+msgid "Language Code"
+msgstr "Jezici"
+
+#: indexpage.py:222
+#, fuzzy
+msgid "Language Name"
+msgstr "Jezici"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d jezik, prosjeÄno %d%% prevedeno"
+msgstr[1] "%d jezici, prosjeÄno %d%% prevedeno"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Jezik"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "Pootle: projekt %s, jezik %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Pretraži"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Nemogu poslati datoteku, niti jedna datoteka nije u privitku"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Mogu se samo poslati PO datoteke i ZIP datoteke PO datoteka"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Dodijeli nizove znakova"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Dodijeli radnju"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Dodijeli korisniku"
+
+#: indexpage.py:543
+#, fuzzy
+msgid "goals"
+msgstr "Ciljevi"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Unesi naziv cilja"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Dodaj cilj"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Pošalji datoteku"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Odaberite datoteku za slanje"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+#, fuzzy
+msgid "Not in a goal"
+msgstr "Nema cilja"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Dodaj korisnika"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO datoteka"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF datoteka"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts datoteka"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV datoteka"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO datoteka"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Osvježi"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Svi nizovi znakova"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Ne prevedeno"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ne dodijeljeno"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "ne dodijeljeno i ne prevedeno"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Postavi cilj"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Višestruki odabir"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Dodijeli"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Prikaži statistiku"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Prikaži staze"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Sakrij staze"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Prikaži provjere"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Sakrij provjere"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Prikaži ciljeve"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Sakrij ciljeve"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Prikaži dodijele"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Sakrij dodijele"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Svi ciljevi: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Prevedi moje nizove znakova"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Pregledaj moje nizove znakova"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nemate dodijeljenih nizova znakova"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Brzo prevedi moje nizove znakova"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nemate dodijeljenih ne prevedenih nizova znakova"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Pregledaj prijedloge"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Pogledaj prijedloge"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Brzo prevedi"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Pregledaj ne prevedene"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Nema ne prevedeni stavki"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Prevedi sve"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP cilja"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP mape"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d niz znakova (%d%%) nije prihvatljiv"
+msgstr[1] "%d nizova znakova (%d%%) nije prihvatljivo"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d rijeÄi (%d%%) dodijeljeno"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d nizova znakova]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d rijeÄi (%d%%) prevedeno"
+
+#: pagelayout.py:28
+#, fuzzy
+msgid "All projects"
+msgstr "Svi projekti"
+
+#: pagelayout.py:29
+#, fuzzy
+msgid "All languages"
+msgstr "Svi jezici"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Moj korisniÄki raÄun"
+
+#: pagelayout.py:32
+#, fuzzy
+msgid "Docs & help"
+msgstr "Dokumentacija & Pomoć"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Odjava"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Prijava"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registriraj se"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktiviraj se"
+
+#: pagelayout.py:83
+#, fuzzy
+msgid "Pootle Logo"
+msgstr "Pootle Demo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "O ovom Pootle poslužitelju"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Svi ciljevi"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d datoteka"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d datoteka"
+msgstr[1] "%d datoteke"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "[%d/%d nizova znakova]"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Ime"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Prevedeno"
+
+#: pagelayout.py:244
+#, fuzzy
+msgid "Translated percentage"
+msgstr "Prevedi moje nizove znakova"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Prevedene rjeÄi"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+#, fuzzy
+msgid "Untranslated percentage"
+msgstr "Ne prevedeno"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Neprevedene rijeÄi"
+
+#: pagelayout.py:252
+#, fuzzy
+msgid "Total"
+msgstr "Ciljevi"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Ukupno rijeÄi"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Komentari"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Lokacije"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Neuspjela prijava"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+#, fuzzy
+msgid "Personal details updated"
+msgstr "Osobni detalji"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Vi nemate prava da administrirate pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Pogledaj"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Predloži"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Prevedi"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Pregledaj"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arhiva"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Saberi PO datoteke"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Dodijeli"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Nemožete maknuti korisnika \"nobody\" ili \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Nemate prava za izmjenu ciljeva"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Nemate prava za slanje datoteka"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "Nemate prava za slanje datoteka"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Nemate prava za slanje novih datoteka"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Nemate prava za osvježavanje datoteka"
+
+#: projects.py:555
+#, fuzzy
+msgid "You do not have rights to commit files here"
+msgstr "Nemate prava za slanje datoteka"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Nemate prava za izmjenu dodijela"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Nemate prava za promjenu prijevoda"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Nemate prava za predlaganje promjena"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Nemate prava za pregledavanje prijedloga"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d prevedeno\n"
+"(%d prazno, %d nejasno)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "Pootle: prevođenje %s u %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+#, fuzzy
+msgid "Original"
+msgstr "orginal"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Prijevod"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Komentari prevodioca"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Kraj posla"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Kliknite ovdje kako bi se vratili na poÄetak"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "PoÄetak"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Prethodnih %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Stavki %d do %d od %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Sljedećih %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Kraj"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "provjeravam %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Nema stavki koje odgovaraju pretraživanju ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Završili ste sa stavkama koje ste odabrali"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Jednina"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Množina"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Uredi"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopiraj"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Preskoći"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+#, fuzzy
+msgid "Submit"
+msgstr "podnesi"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Povećaj"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Smanji"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Oblik u množini %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+#, fuzzy
+msgid "Current Translation:"
+msgstr "<b>Trenutni prijevod:</b>"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Prijedlog %d sa %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Prijedlog %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Prijedlog sa %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Prijedlog:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Prijavi se na Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "KorisniÄko ime:"
+
+#: users.py:68
+#, fuzzy
+msgid "Password:"
+msgstr "Zaporka"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "Jezici"
+
+#: users.py:71
+msgid "Login"
+msgstr "Prijava"
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Molim vas unesite vaše registracijske detalje"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle registracija"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "VaÅ¡e željeno korisniÄko ime"
+
+#: users.py:125 users.py:429
+#, fuzzy
+msgid "You must supply a valid email address"
+msgstr "Mora biti valjana email adresa"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Vaše ime i prezime"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Vaša željena zaporka"
+
+#: users.py:133 users.py:189
+#, fuzzy
+msgid "Confirm password"
+msgstr "Vaša željena zaporka"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+#, fuzzy
+msgid "Register Account"
+msgstr "Aktiviraj korisniÄki raÄun"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Molim vas unesite vaše detalje o aktivaciji"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle aktivacija korisniÄkog raÄuna"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktivacijska Å¡ifra"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Aktivacijska Å¡ifra koju ste dobili"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktiviraj korisniÄki raÄun"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Postavke za: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Osobni detalji"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Konfiguracija suÄelja za prevoÄ‘enje"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Jezik korisniÄkog suÄelja"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Moji projekti"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Moji jezici"
+
+#: users.py:196
+msgid "Home page"
+msgstr "PoÄetna stranica"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+#, fuzzy
+msgid "Input Height (in lines)"
+msgstr "Visina polja za unos"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Broj redova u naÄinu rada za pregled"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Broj redova u naÄinu rada za prevoÄ‘enje"
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Morate biti administrator stranica kako bi promjenili korisnike"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "Aktivacijska Å¡ifra"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Vaše puno ime"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Vaša željena zaporka"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivacija nije uspjela"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Visina polja za unos mora biti brojÄanog oblika"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Å irina polja za unos mora biti brojÄanog oblika"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+"Broj prikazanih redova u naÄinu rada za pregled mora biti u brojÄanom obliku"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+"Broj prikazanih redova u naÄinu rada za prevoÄ‘enje mora biti u brojÄanom "
+"obliku"
+
+#, fuzzy
+#~ msgid "Accept"
+#~ msgstr "prihvati"
+
+#, fuzzy
+#~ msgid "Reject"
+#~ msgstr "odbaciti"
+
+#, fuzzy
+#~ msgid "WordForge Translation Project"
+#~ msgstr "<b>Trenutni prijevod:</b>"
+
+#~ msgid "Broaden"
+#~ msgstr "Proširi"
+
+#~ msgid "Narrow"
+#~ msgstr "Suzi"
+
+#~ msgid "Reset"
+#~ msgstr "Reset"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Mora biti valjana email adresa"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pootle administratorska stranica"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Vi nemate prava za administriranje Pootle-a."
+
+#~ msgid "not logged in"
+#~ msgstr "Niste prijavljeni"
+
+#~ msgid "Log In"
+#~ msgstr "Prijavi se"
+
+#~ msgid "suggest"
+#~ msgstr "predloži"
+
+#~ msgid "Input Width"
+#~ msgstr "Å irina polja za unos"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/hu/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/hu/jToolkit.po
new file mode 100644
index 0000000..a42b2eb
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/hu/jToolkit.po
@@ -0,0 +1,149 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-07-10 18:49+0200\n"
+"Last-Translator: Dani Zsolt <dzsolt@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.9\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Bejelentkezés ide %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "A művelet megszakítása és új menet nyitása"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "A művelet megerősítése helyett kijelentkezik és újrakezdi"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Kilépés az alkalmazásból"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Kilép ebből az alkalmazásból és visszatér a szülő alkalmazáshoz"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", erősítse meg a bejelentkezést"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Bejelentkezés"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Felhasználónév:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Jelszó:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Nyelv:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Alkalmazás kiválasztása"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Kijelentkezés"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Kilépés"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "bejelentkezve mint <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "nem lehetett új menetet létrehozni"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "kijelentkezve"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "kapcsolódva"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "szülő menetből kilépve"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"pontosan meg kell határozni a felhasználók vagy userprefs feljegyzéseit a "
+"szerver konfigurációban"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "felhasználó nem létezik (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "érvénytelen felhasználónév és/vagy jelszó"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "hibás bejelentkezés megerősítés"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nem"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Igen"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "eltávolít"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(nincs csatolás)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "a csatolás túl nagy"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "eltávolítja ezt a csatolást"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "visszaállít"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+"ez a csatolást eltávolításra került. kattintson ide a visszaállításához"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "fájl csatolása"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr ""
+#~ "a kiszolgáló konfigurációs beállításaiban létre kell hozni a felhasználó "
+#~ "bejegyzését"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/hu/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/hu/pootle.po
new file mode 100644
index 0000000..177f7bc
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/hu/pootle.po
@@ -0,0 +1,1461 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-29 00:40+0000\n"
+"Last-Translator: Miklos Vajna <vmiklos@frugalware.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Bemutató"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Kezdőlap"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Felhasználók"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Nyelvek"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projektek"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Ãltalános opciók"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opció"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Érvényes érték"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Változások mentése"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Cím"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Megjegyzés"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Alap URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Honlap"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle Nyelvek Adminisztrációs Oldal"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Adminisztráció"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO kód"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Teljes név"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(nyelv hozzáadása)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Egyedi jelek"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(egyedi jelek, karakterek)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Többesszám száma"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(többes számúak száma)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Többszörös kiegyenlítés"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(többszörös kiegyenlítés)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Nyelv eltávolítása"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s eltávolítása"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Szabvány"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle Projektek Adminisztrációs Oldal"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projekt kód"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(projekt hozzáadása)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projekt megjegyzés"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(projekt megjegyzés)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Ellenőrzés stílusa"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Fájl típusa"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO fájl létrehozása"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Projekt eltávolítása"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle felhasználókat adminisztráló oldal"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Felhasználónév"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(teljes név hozzáadása)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "E-mail cím"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(e-mail cím hozzáadása)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Jelszó"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(jelszó hozzáadása)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktiválva"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Új felhasználó aktiválása"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Felhasználó eltávolítása"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Vissza a főoldalra"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Létező nyelvek"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Nyelvek aktualizálása"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle adminisztrátor: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Önnek nincs joga e projektet adminisztrálni."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Aktualizálás sablonból"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Nyelv hozzáadása"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle adminisztrátor: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Projekt honlap"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Nem tudom beállítani %s jogait - felhasználó nem létezik"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Ez egy GNU stílusú projekt (egy könyvtár, fájlok elnevezve nyelvenként)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ez egy sztenderd stílusú projekt (egy könyvtár nyelvenként)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Felhasználói engedélyek"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(kiválasztott felhasználó hozzáadása)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Jogok"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Eltávolít"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Jogok aktualizálása"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Pootle névjegye"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> egy egyszerű WebPortál, ami hozzájárul az Ön "
+"<strong>fordításaihoz</strong>! Mivel a Pootle <strong>Szabad "
+"Szoftver</strong>, töltse le és használja sajátjaként, ha szeretné. A "
+"fejlesztésben több féle módon is részt vehet (nincs szükség programozói "
+"tudásra)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"A Pootle projekt honlapja <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"helyen található, ahol részletek találhatók a forráskódról, "
+"levelezőlistákról, egyebekről."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"A név jelentése <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, /PO bázisú, Web alapú Fordító / Honosító "
+"Motor/, de elolvashatja még <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">ezt</a> is."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Verziók"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Ezen a weboldalon: <br />Pootle %s<br />fordító eszközkészlet %s<br "
+"/>jToolkit %s<br />Kid %s <br />ElemenTree %s<br />Python %s (%s/%s) fut"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "%s felhasználó oldala"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Opciók változtatása"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Admin oldal"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Adminisztráció"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Gyors linkek"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Kattintson az 'Opciók változtatása' gombra és válasszon valamilyen nyelvet "
+"és projektet"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekt, átlag %d%% lefordítva"
+msgstr[1] "%d projekt, átlag %d%% lefordítva"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Adminisztáció"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Nyelv kódja"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nyelv neve"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d nyelv, átlag %d%% lefordítva"
+msgstr[1] "%d nyelv, átlag %d%% lefordítva"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Nyelv"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekt %s, Nyelv %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Keresés"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Haladó keresés"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Nem tudom feltölteni a fájlt, nincs fájl csatolva"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Csak PO és PO-t tartalmazó zip fájlt tudok feltölteni"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Kiosztott mondatok"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Kiosztott feladatok"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Felhasználónak kiosztva"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "cél"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Cél neve"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Cél hozzáadása"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Fájl feltöltése"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Feltöltendő fájl kiválasztása"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Felülírás"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Létező fájl felüírása"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Egyesítés"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Egyesítse az új fájlt a régivel"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Nincs célban"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Felhasználó hozzáadása"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO fájl"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF fájl"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts fájl"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV fájl"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO fájl"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Aktualizál"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Beküldés"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Minden mondat"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Fordítatlan"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Kiosztatlan"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Kiosztatlan és fordítatlan"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Cél beállítás"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Töbszörös kijelölés"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Kioszt"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Szerkesztési funkciót mutatása"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Statisztika mutatása"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Nyomkövetés mutatása"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Nyomkövetés elrejtése"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Ellenőrzések megjelenítése"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Ellenőrzések elrejtése"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Cél megjelenítése"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Cél elrejtése"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Megbízások mutatása"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Megbízások elrejtése"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Összes cél: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Mondataim fordítása"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Mondataim megtekintése"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nincsenek mondatok Önnek kiosztva"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Mondataim gyorsfordítása"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nincsenek fordítatlan mondatok Önnek kiosztva"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Javaslatok áttekintése"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Javaslatok megjelenítése"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Gyorsfordítás"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Fordítás nélküliek megjelenítése"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Nincs fordítatlan tétel"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Mindet lefordít"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Célból ZIP"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Könyvtárból ZIP"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF generálás"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d mondat (%d%%) hiányzik"
+msgstr[1] "%d mondat (%d%%) hiányzik"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d szó (%d%%) kiosztva"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d mondat]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d szó (%d%%) lefordítva"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Minden projekt"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Minden nyelv"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Saját adatok"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Doksi és súgó"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Kijelentkezés"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Bejelentkezés"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Regisztráció"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktivál"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle Logó"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Erről a Pootle szerverről"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Minden cél"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d fájl"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fájl"
+msgstr[1] "%d fájl"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d mondat"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Név"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Lefordítva"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Elkészült fordítás"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Lefordított szavak"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Bizonytalan"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Bizonytalan fordítás"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Bizonytalan szavak"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Fordítatlan"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Fordítatlan szavak"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Összes"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Összes szó"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafikon"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Forrás szöveg"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Cél szöveg"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Hozzászólások"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Helyek"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Sikertelen bejelentkezés"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Ãtirányítás a bejelentkezéshez..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "A honlap hozzáfáféréséhez szükség van bejelentkezésre"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Személyes adatok fríssitve"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Az adminisztrációs lap hozzáfáféréséhez szükség van bejelentkezésre"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Ãtirányítás a kezdÅ‘lapra..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Önnek nincs joga adminisztrálni a pootle-t."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Nézet"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Javaslat"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Fordítás"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Ãttekintés"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arhívum"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO fájlok szerkesztése"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Hozzárendelés"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Ön nem tudja eltávolítani a \"nobody\" vagy \"default\" felhasználót"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Ön itt nem rendelkezik jogokkal a cél módosításához"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Ön itt nem rendelkezik jogokkal fájl feltöltéshez"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Ön itt nem rendelkezik jogokkal fájl felülírásához"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Ön itt nem rendelkezik jogokkal új fájl feltöltéshez"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Ön itt nem rendelkezik jogokkal fájl aktualizáláshoz"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Ön itt nem rendelkezik jogokkal fájl beküldéséhez"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Ön itt nem rendelkezik jogokkal kijelölt feladat megváltoztatásához"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Ön itt nem rendelkezik jogokkal fordítás megváltoztatásához"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Ön itt nem rendelkezik jogokkal javaslat megváltoztatásához"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Ön itt nem rendelkezik jogokkal javaslatok bírálatához"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d lefordítva\n"
+"(%d nincs lefordítva, %d bizonytalan)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: %s fordítása %s-ba: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Eredeti"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Mindet lefordít"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Javaslat elfogadása"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Javaslat elutasítása"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Fordítói megjegyzések"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Fejlesztői megjegyzések"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Hasonló"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Dolgozom..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Hiba: valami rosszul ment."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Köteg vége"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Visszatérés a tartalomjegyzékhez"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Kezd"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Előző %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%d-%d elem a %d-ból/ből"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Következő %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Vége"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s ellenőrzése"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Nincs a ('%s') feltételnek megfelelő találat"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Végigért a kiválasztott elemeken"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Páratlan"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Többszörös"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Szerkeszt"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Másol"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Ãtugrás"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Visszamegy"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Ãllít"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Növel"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Zsugorít"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Többszörös forma %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Fordítás nem lehetséges, mert az Ön nyelvében nincsenek többesszámok. Kérem, "
+"lépjen kapcsolatba az oldal üzemeltetőjével."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Jelenlegi fordítás:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "%d. javaslat %s által:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "%d. javaslat:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s javaslata:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Javaslat:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Legalább %d karakter hosszúságú érvényes jelszót kell megadnia."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "A jelszavak nem egyeznek."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Pootle bejelentkezés"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Felhasználónév:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Jelszó:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Nyelv:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Bejelentkezés"
+
+#: users.py:77
+msgid "Default"
+msgstr "Alapértelmezés"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Adja meg regisztrációs adatait"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle regisztráció"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "A kért felhasználónév"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Valós e-mail cím szükséges"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Az Ön teljes neve"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Kért jelszó"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Jelszó megerősítése"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Ellenőrzésképpen írja be újra a jelszavát"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Hozzáférés regisztrálása"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Adja meg aktiválási adatait"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle hozzáférés aktiválása"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktiválási kód"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "A kapott aktiválási kód"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Hozzáférés aktiválása"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "%s opciói"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Személyes részletek"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-mail"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Fordító felület konfiguráció"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Felhasználói felület nyelve"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Saját projektek"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Saját nyelvek"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Honlap"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternatív forrás nyelv"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Nincs"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Beviteli magasság (sorokban)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Sorok száma áttekintés módban"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Sorok száma fordítás módban"
+
+#: users.py:307
+msgid "Error"
+msgstr "Hiba"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Önnek szüksége lesz a rendszergazdára a felhasználó váltáshoz"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"A felhasználónév számot és betűt tartalmazhat, és betűvel kell kezdődnie."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Ön (vagy valaki más) megkisérelt regisztrálni az ön felhasználónevével.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Nem tároljuk el az ön jelenlegi jelszavát csak annak egy ellenőrzőösszegét.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Ha gondja van a regisztrációval, itt kérhet segítséget: %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Ha gondja van a regisztrációval, kérem lépjen kapcsolatba az oldal "
+"üzemeltetőjével.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Ez a felhasználónév már létezik. Egy email-t küldünk a regisztrált címre.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "A <a href='%s'>bejelentkezés</a> folyamatban\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Létrejött a Pootle hozzáférés ezzel az email címmel.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "A hozzáférés aktiválásához kattintson erre a linkre:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Aktiválási kód:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Ha nem működik a link, kérjük írja be az alábbi kódot az aktiváló oldalon.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Ezt az üzenetet az email-cím ellenőrzése céljából küldtük. Ha nem akar "
+"regisztrálni, törölheti ezt a levelet.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"A hozzáférés létrejött. Hamarosan email-t kap a bejelentkezési adatokkal, és "
+"az aktiváló kóddal. Kérjük írja be az aktiváló kódját az <a "
+"href='%s'>aktiváló oldalon</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Vagy kattintson az aktiváló linkre a levélben)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Az Ön teljes neve: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Az ön jelszava: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Regisztrált email-címe: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Ãtirányítás a regisztrációs lapra..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Ãtirányítás a bejelentkezÅ‘ lapra..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Az Ön hozzáférése aktiválva! Ãtirányítás bejelentkezéshez..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Az aktiválás adatai nem érvényesek."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktiválás sikertelen"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Beviteli magasságot számokkal kell megadni"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Beviteli szélességet számokkal kell megadni"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "A sorok számát az áttekintés módhoz számokkal kell megadni"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "A sorok számát a fordító módhoz számokkal kell megadni"
+
+#~ msgid "Accept"
+#~ msgstr "Elfogad"
+
+#~ msgid "Reject"
+#~ msgstr "Elvet"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge Fordítási Projekt"
+
+#~ msgid "Broaden"
+#~ msgstr "Szélesít"
+
+#~ msgid "Narrow"
+#~ msgstr "Keskeny"
+
+#~ msgid "Reset"
+#~ msgstr "Alaphelyzet"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Valós e-mail cím szükséges"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Beviteli szélesség (karakterekben)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "A <strong>Pootle</strong> egy egyszerű portál, aminek segítségével "
+#~ "<strong>fordítani</strong> lehet!"
+
+#~ msgid "parent folder"
+#~ msgstr "szülő mappa"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projektek</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d fájl, %d/%d bejegyzés (%d%%) lefordítva"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "ez a pootle bemutató célú telepítése"
+
+#~ msgid "current folder"
+#~ msgstr "jelenlegi mappa"
+
+#~ msgid "login status"
+#~ msgstr "bejelentkezési állapot"
+
+#~ msgid "project root"
+#~ msgstr "projekt kezdete"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "nincs joga változtatást javasolni itt"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "nincs joga a fordítást megváltoztatni itt"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d bejegyzés (%d%%) lefordítva"
+
+#~ msgid "%d files, "
+#~ msgstr "%d fájl,"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Nyelvek</h3>"
+
+#~ msgid "current file"
+#~ msgstr "jelenlegi fájl"
+
+#~ msgid "not logged in"
+#~ msgstr "nincs bejelentkezve"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/hy/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/hy/jToolkit.po
new file mode 100644
index 0000000..27e321f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/hy/jToolkit.po
@@ -0,0 +1,144 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-09-19 09:59+0200\n"
+"Last-Translator: Suren Karapetyan <surenkarapetyan@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 0.10\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s-Õ« Õ´Õ¸Ö‚Õ¿Ö„"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Ô´Õ¡Õ¤Õ¡Ö€Õ¥ÖÕ¶Õ¥Õ¬ Õ¡ÕµÕ½ Õ£Õ¸Ö€Õ®Õ¸Õ²Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Ö‡ Õ¶Õ¸Ö€ Õ·Ö€Õ»Õ¡Õ¶ Õ½Õ¯Õ½Õ¥Õ¬"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Ô±ÕµÕ½ Õ£Õ¸Ö€Õ®Õ¸Õ²Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ°Õ¡Õ½Õ¿Õ¡Õ¿Õ¥Õ¬Õ¸Ö‚ ÖƒÕ¸Õ­Õ¡Ö€Õ¥Õ¶ Õ¤Õ¸Ö‚Ö€Õ½ Õ£Õ¡Õ¬ Ö‡ Õ¶Õ¸Ö€Õ«Ö Õ½Õ¯Õ½Õ¥Õ¬"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Ô¾Ö€Õ¡Õ£Õ«Ö€Õ¨ Õ¬Ö„Õ¥Õ¬"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Ô¼Ö„Õ¥Õ¬ Õ¡ÕµÕ½ Õ®Ö€Õ¡Õ£Õ«Ö€Õ¨ Ö‡ Õ¾Õ¥Ö€Õ¡Õ¤Õ¡Õ¼Õ¶Õ¡Õ¬ Õ®Õ¶Õ¸Õ² Õ®Ö€Õ¡Õ£Ö€Õ«Õ¶"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "Õ­Õ¶Õ¤Ö€Õ¥Õ´Õ Õ°Õ¡Õ½Õ¿Õ¡Õ¿Õ¥Ö„ Õ´Õ¸Ö‚Õ¿Ö„Õ¨"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Õ„Õ¸Ö‚Õ¿Ö„"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Ô¿Õ¸Õ¹Õ¡Õ¯Õ¡Õ¶Õ"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Ô¾Õ¡Õ®Õ¯Õ¡Õ£Õ«Ö€Õ"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Ô¼Õ¥Õ¦Õ¸Ö‚Õ"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Ô¸Õ¶Õ¿Ö€Õ¥Õ¬ Õ®Ö€Õ¡Õ£Õ«Ö€"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "ÔµÕ¬Ö„"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Ô¼Ö„Õ¥Õ¬"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "Õ£Ö€Õ¡Õ¶ÖÕ¾Õ¡Õ® Õ¸Ö€ÕºÕ¥Õ½Õ <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "Õ·Ö€Õ»Õ¡Õ¶ Õ¡Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ¹Õ« Õ°Õ¡Õ»Õ¸Õ²Õ¾Õ¸Ö‚Õ´"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "Õ¤Õ¸Ö‚Ö€Õ½ Õ¥Õ¯Õ¡Õ¶Ö„"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "Õ´Õ«Õ¡ÖÕ¡Õ®"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "Õ¬Ö„Õ¥ÖÕ«Õ¶Ö„ Õ®Õ¶Õ¸Õ² Õ·Ö€Õ»Õ¡Õ¶Õ¨"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "Õ¡Õ¶Õ°Ö€Õ¡ÕªÕ¥Õ·Õ¿ Õ§ Õ½Õ¥Ö€Õ¾Õ¥Ö€Õ« Ö„Õ¸Õ¶Ö†Õ«Õ£Õ¸Ö‚Õ´ users Õ¯Õ¡Õ´ userprefs Õ£Ö€Õ¡Õ¼Õ¸Ö‚Õ´ Õ¶Õ·Õ¥Õ¬"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "ÕµÕ¸Ö‚Õ¦Õ¥Ö€Õ¨ Õ£Õ¸ÕµÕ¥Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ¹Õ¸Ö‚Õ¶Õ« (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "Õ½Õ­Õ¡Õ¬ Õ¯Õ¸Õ¹Õ¡Õ¯Õ¡Õ¶ Ö‡/Õ¯Õ¡Õ´ Õ®Õ¡Õ®Õ¯Õ¡Õ£Õ«Ö€"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "Õ´Õ¸Ö‚Õ¿Ö„Õ« Õ°Õ¡Õ½Õ¿Õ¡Õ¿Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥Ö"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "ÕˆÕ¹"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ô±ÕµÕ¸"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "Õ°Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(Õ°Õ¡Õ¾Õ¥Õ¬Õ¾Õ¡Õ® Õ¹Õ¯Õ¡)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "Õ°Õ¡Õ¾Õ¥Õ¬Õ¾Õ¡Õ®Õ¨ Õ·Õ¡Õ¿ Õ´Õ¥Õ® Õ§"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "Õ°Õ¡Õ¾Õ¥Õ¬Õ¾Õ¡Õ®Õ¨ Õ°Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "Õ¾Õ¥Ö€Õ¡Õ¯Õ¡Õ¶Õ£Õ¶Õ¥Õ¬"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "Õ°Õ¡Õ¾Õ¥Õ¬Õ¾Õ¡Õ®Õ¨ Õ°Õ¥Õ¼Õ¡ÖÕ¾Õ¥Õ¬ Õ§Ö‰ ÕÕ¥Õ²Õ´Õ¥Õ›Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Õ¡ÕµÕ¶ Õ¾Õ¥Ö€Õ¡Õ¯Õ¡Õ¶Õ£Õ¶Õ¥Õ¬Õ¸Ö‚ Õ°Õ¡Õ´Õ¡Ö€"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "Ö†Õ¡ÕµÕ¬ Õ°Õ¡Õ¾Õ¥Õ¬Õ¥Õ¬"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/hy/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/hy/pootle.po
new file mode 100644
index 0000000..957165a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/hy/pootle.po
@@ -0,0 +1,1381 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Suren Karapetyan <surenkarapetyan@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 0.10.1rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Õ“Õ¸Ö‚Õ©Õ¬Õ« Ö…Ö€Õ«Õ¶Õ¡Õ¯"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "ÕÕ¸Ö‚Õ¶"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Õ•Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¸Õ²Õ¶Õ¥Ö€"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Ô¼Õ¥Õ¦Õ¸Ö‚Õ¶Õ¥Ö€"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "ÕŠÖ€Õ¸ÕµÕ¥Õ¯Õ¿Õ¶Õ¥Ö€"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Õ€Õ«Õ´Õ¶Õ¡Õ¯Õ¡Õ¶ Ö…ÕºÖÕ«Õ¡Õ¶Õ¥Ö€"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Õ•ÕºÖÕ«Õ¡Õ¶Õ¥Ö€"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Õ†Õ¥Ö€Õ¯Õ¡ Õ¡Ö€ÕªÕ¥Ö„"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Õ€Õ«Õ·Õ¥Õ¬ ÖƒÕ¸ÖƒÕ¸Õ­Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "ÕŽÕ¥Ö€Õ¶Õ¡Õ£Õ«Ö€"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Õ†Õ¯Õ¡Ö€Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Õ€Õ«Õ´Õ¶Õ¡Õ¯Õ¡Õ¶ URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "ÕŽÕ¥Õ¢ Õ§Õ»"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Ô³Õ¬Õ­Õ¡Õ¾Õ¸Ö€ Õ¡Õ¤Õ´Õ«Õ¶ Õ§Õ»"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO Õ¯Õ¸Õ¤"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Ô¼Ö€Õ«Õ¾ Õ¡Õ¶Õ¸Ö‚Õ¶"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(Õ¬Õ¥Õ¦Õ¸Ö‚Õ¶ Õ¡ÕµÕ½Õ¿Õ¥Õ² Õ¶Õ·Õ¥Õ¬)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Õ€Õ¡Õ¿Õ¸Ö‚Õ¯ Õ¶Õ«Õ·Õ¥Ö€"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(Õ°Õ¡Õ¿Õ¸Ö‚Õ¯ Õ¶Õ«Õ·Õ¥Ö€)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Õ€Õ¸Õ£Õ¶Õ¡Õ¯Õ«Õ¶Õ¥Ö€Õ« Õ©Õ«Õ¾"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(Õ°Õ¸Õ£Õ¶Õ¡Õ¯Õ«Õ¶Õ¥Ö€Õ« Õ©Õ«Õ¾)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Õ€Õ¸Õ£Õ¶Õ¡Õ¯Õ«Õ« Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€Õ¸Ö‚Õ´"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(Õ°Õ¸Õ£Õ¶Õ¡Õ¯Õ«Õ« Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€Õ¸Ö‚Õ´)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Ô¼Õ¥Õ¦Õ¸Ö‚Õ¶ Õ°Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Õ€Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬ %sÕ¨"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "ÕÕ¿Õ¡Õ¶Õ¤Õ¡Ö€Õ¿"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "ÕŠÖ€Õ¸ÕµÕ¥Õ¯Õ¿Õ« Õ¯Õ¸Õ¤"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(ÕºÖ€Õ¸ÕµÕ¥Õ¯Õ¿Õ¨ Õ¡ÕµÕ½Õ¿Õ¥Õ² Õ¶Õ·Õ¥Õ¬)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "ÕŠÖ€Õ¸ÕµÕ¥Õ¯Õ¿Õ« Õ¶Õ¯Õ¡Ö€Õ¡Õ£Õ«Ö€"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(ÕºÖ€Õ¸ÕµÕ¥Õ¯Õ¿Õ« Õ¶Õ¯Õ¡Ö€Õ¡Õ£Õ«Ö€)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "ÕÕ¿Õ¸Ö‚Õ£Õ«Õ¹Õ« Õ¿Õ¥Õ½Õ¡Õ¯"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬ MO Ö†Õ¡ÕµÕ¬Õ¥Ö€"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "ÕŠÖ€Õ¸ÕµÕ¥Õ¯Õ¿Õ¨ Õ°Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+#, fuzzy
+msgid "Username"
+msgstr "Ô±Õ¶Õ¸Ö‚Õ¶Õ"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(Õ¬Ö€Õ«Õ¾ Õ¡Õ¶Õ¸Ö‚Õ¶Õ¨)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Ô·Õ¬-ÖƒÕ¸Õ½Õ¿ Õ°Õ¡Õ½ÖÕ¥"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(Õ§Õ¬-ÖƒÕ¸Õ½Õ¿ Õ°Õ¡Õ½ÖÕ¥)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Ô¾Õ¡Õ®Õ¯Õ¡Õ£Õ«Ö€"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(Õ®Õ¡Õ®Õ¯Õ¡Õ£Õ«Ö€)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Ô±Õ¯Õ¿Õ«Õ¾"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Ô±Õ¯Õ¿Õ«Õ¾Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ¸Ö€ Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¸Õ²Õ«Õ¶"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Õ€Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬ Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¸Õ²Õ«Õ¶"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "ÔµÕ¿Õ Õ£Õ¬Õ­Õ¡Õ¾Õ¸Ö€ Õ§Õ»"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Ô±Õ¼Õ¯Õ¡ Õ¬Õ¥Õ¦Õ¸Ö‚Õ¶Õ¥Ö€"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Ô¹Õ¡Ö€Õ´Õ¥ÖÕ¶Õ¥Õ¬ Õ¬Õ¥Õ¦Õ¸Ö‚Õ¶Õ¥Ö€Õ¨"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Õ“Õ¸Ö‚Õ©Õ¬Õ« Õ¡Õ¤Õ´Õ«Õ¶Õ %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½ ÕºÖ€Õ¸ÕµÕ¥Õ¯Õ¿Õ« Õ¯Õ¡Õ¼Õ¡Õ¾Õ¡Ö€Õ´Õ¡Õ¶ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„Ö‰"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Ô¹Õ¡Ö€Õ´Õ¥ÖÕ¶Õ¥Õ¬ Õ¶Õ´Õ¸Ö‚Õ·Õ¶Õ¥Ö€Õ«Ö"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Ô¼Õ¥Õ¦Õ¸Ö‚ Õ¡Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Õ“Õ¸Ö‚Õ©Õ¬Õ« Õ¡Õ¤Õ´Õ«Õ¶Õ %s «%s»"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "ÕŠÖ€Õ¸ÕµÕ¥Õ¯Õ¿Õ« Õ§Õ»"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+#, fuzzy
+msgid "Rights"
+msgstr "Ô±Õ»"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Õ€Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+#, fuzzy
+msgid "Versions"
+msgstr "ÕÕ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Õ‚Õ¥Õ¯Õ¡Õ¾Õ¡Ö€Õ¥Õ¬"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s․ %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Ô±Õ¤Õ´Õ«Õ¶"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "Ô¼Õ¥Õ¦Õ¸Ö‚Õ¶Õ¥Ö€"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Õ“Õ¶Õ¿Ö€Õ¥Õ¬"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Õ†Õ·Õ¡Õ¶Õ¡Õ¯Õ¥Õ¬ Õ¿Õ¸Õ²Õ¥Ö€"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Õ†Õ·Õ¡Õ¶Õ¡Õ¯Õ¥Õ¬ Õ£Õ¸Ö€Õ®Õ¸Õ²Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Õ†Õ·Õ¡Õ¶Õ¡Õ¯Õ¥Õ¬ Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¸Õ²Õ«"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Ô¿Ö€Õ¯Õ«Õ¶ Õ£Ö€Õ¥Õ¬"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Õ†Õ¸Ö€Õ¡ÖÕ¸Ö‚Õ´"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Ô³Ö€Õ¡Õ¶ÖÕ¥Õ¬"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+#, fuzzy
+msgid "Untranslated"
+msgstr "Ô¹Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¥Õ¬"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Ô¹Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¥Õ¬ Õ«Õ´ Õ¿Õ¸Õ²Õ¥Ö€Õ¨"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Ô´Õ«Õ¿Õ¥Õ¬ Õ«Õ´ Õ¿Õ¸Õ²Õ¥Ö€Õ¨"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "ÕÕ¥Õ¦ Õ¶Õ·Õ¡Õ¶Õ¡Õ¯Õ¾Õ¡Õ® Õ¿Õ¸Õ²Õ¥Ö€ Õ¹Õ¯Õ¡Õ¶"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Ô±Ö€Õ¡Õ£ Õ©Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¥Õ¬ Õ«Õ´ Õ¿Õ¸Õ²Õ¥Ö€Õ¨"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Ô´Õ«Õ¿Õ¥Õ¬ Õ¹Õ©Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¾Õ¡Õ®Õ¶Õ¥Ö€Õ¨"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Õ‰Õ©Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¾Õ¡Õ®Õ¶Õ¥Ö€ Õ¹Õ¯Õ¡Õ¶"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Ô¹Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€Õ¨"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Ô²Õ¸Õ¬Õ¸Ö€ ÕºÖ€Õ¸ÕµÕ¥Õ¯Õ¿Õ¶Õ¥Ö€Õ¨"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Ô²Õ¸Õ¬Õ¸Ö€ Õ¬Õ¥Õ¦Õ¸Ö‚Õ¶Õ¥Ö€Õ¨"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Ô»Õ´ Õ°Õ¡Õ·Õ«Õ¾Õ¨"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Õ•Õ£Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Ô´Õ¸Ö‚Ö€Õ½ Õ£Õ¡Õ¬"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Õ†Õ¥Ö€Õ½ Õ£Õ¡Õ¬"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Ô³Ö€Õ¡Õ¶ÖÕ¾Õ¥Õ¬"
+
+#: pagelayout.py:38
+#, fuzzy
+msgid "Activate"
+msgstr "Ô±Õ¯Õ¿Õ«Õ¾Õ¡ÖÕ¶Õ¥Õ¬"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+#, fuzzy
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%u Ö†Õ¡ÕµÕ¬"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Ô±Õ¶Õ¸Ö‚Õ¶"
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "Ô¹Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¥Õ¬"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+#, fuzzy
+msgid "You do not have the rights to administer pootle."
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½ ÕºÖ€Õ¸ÕµÕ¥Õ¯Õ¿Õ« Õ¯Õ¡Õ¼Õ¡Õ¾Õ¡Ö€Õ´Õ¡Õ¶ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„Ö‰"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Õ†Õ¡ÕµÕ¥Õ¬"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Ô±Õ¼Õ¡Õ»Õ¡Ö€Õ¯Õ¥Õ¬"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Ô¹Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¥Õ¬"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Ô´Õ«Õ¿Õ¡Ö€Õ¯Õ¥Õ¬"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Ô±Ö€Õ­Õ«Õ¾"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Õ€Õ¡Õ¾Õ¡Ö„Õ¥Õ¬ PO Ö†Õ¡ÕµÕ¬Õ¥Ö€Õ¨"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Õ†Õ·Õ¡Õ¶Õ¡Õ¯Õ¥Õ¬"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Դուք չեք կարող ջնջել «nobody» և «default» օգտագործողներին"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Õ¶ÕºÕ¡Õ¿Õ¡Õ¯Õ¶Õ¥Ö€Õ¨ ÖƒÕ¸Õ­Õ¥Õ¬Õ¸Ö‚ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Ö†Õ¡ÕµÕ¬Õ¥Ö€ Õ¾Õ¥Ö€Õ¢Õ¥Õ¼Õ¶Õ¥Õ¬Õ¸Ö‚ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Ö†Õ¡ÕµÕ¬Õ¥Ö€ Õ©Õ¡Ö€Õ´Õ¡ÖÕ¶Õ¥Õ¬Õ¸Ö‚ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Õ¶Õ¸Ö€ Ö†Õ¡ÕµÕ¬Õ¥Ö€ Õ¾Õ¥Ö€Õ¢Õ¥Õ¼Õ¶Õ¥Õ¬Õ¸Ö‚ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Ö†Õ¡ÕµÕ¬Õ¥Ö€ Õ©Õ¡Ö€Õ´Õ¡ÖÕ¶Õ¥Õ¬Õ¸Ö‚ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Ö†Õ¡ÕµÕ¬Õ¥Ö€ ÖƒÕ¸ÖƒÕ¸Õ­Õ¥Õ¬Õ¸Ö‚ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Õ¶Õ·Õ¡Õ¶Õ¡Õ¯Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ¨ ÖƒÕ¸ÖƒÕ¸Õ­Õ¥Õ¬Õ¸Ö‚ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Õ©Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ ÖƒÕ¸Õ­Õ¥Õ¬Õ¸Ö‚ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Õ©Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€ Õ¡Õ¼Õ¡Õ»Õ¡Ö€Õ¯Õ¥Õ¬Õ¸Ö‚ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Õ¡Õ¼Õ¡Õ»Õ¡Ö€Õ¯Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ¤Õ«Õ¿Õ¥Õ¬Õ¸Ö‚ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ¸Ö‚Õ¶Õ¥Ö„"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d Õ©Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¾Õ¡Õ®\n"
+"(%d Õ¤Õ¡Õ¿Õ¡Ö€Õ¯, %d Õ©Õ¥Ö€Õ«)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: թարգմանում ենք «%s» %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Ô²Õ¶Ö…Ö€Õ«Õ¶Õ¡Õ¯"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Ô¹Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Õ†Õ´Õ¡Õ¶Õ¡Õ¿Õ«Õº"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Õ“Õ¡Õ©Õ¥Õ©Õ« Õ¾Õ¥Ö€Õ»"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "ÕÕ¥Õ²Õ´Õ¥Ö„ Õ¡ÕµÕ½Õ¿Õ¥Õ² Õ«Õ¶Õ¤Õ¥Ö„Õ½Õ«Õ¶ Õ¾Õ¥Ö€Õ¡Õ¤Õ¡Ö€Õ¶Õ¡Õ¬Õ¸Ö‚ Õ°Õ¡Õ´Õ¡Ö€"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "ÕÕ¯Õ«Õ¦Õ¢"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Õ†Õ¡Õ­Õ¸Ö€Õ¤ %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%d-Õ«Ö %dÕ %d-Õ«Ö"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Õ€Õ¡Õ»Õ¸Ö€Õ¤ %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "ÕŽÕ¥Ö€Õ»"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "Õ½Õ¿Õ¸Ö‚Õ£Õ¸Ö‚Õ´ Õ¥Õ¶Ö„Õ %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Այդ փնտրմանը համապատասխան նյութեր չկան («%s»)"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Ô´Õ¸Ö‚Ö„ Õ¡Õ¾Õ¡Ö€Õ¿Õ¥ÖÕ«Ö„ Õ±Õ¥Ö€ Õ¶Õ·Õ¡Õ® Õ§Õ¬Õ¥Õ´Õ¥Õ¶Õ¿Õ¶Õ¥Ö€Õ¸Õ¾ Õ¡Õ¶ÖÕ¶Õ¥Õ¬Õ¨"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "ÔµÕ¦Õ¡Õ¯Õ«"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Õ€Õ¸Õ£Õ¶Õ¡Õ¯Õ«"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Õ“Õ¸ÖƒÕ¸Õ­Õ¥Õ¬"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Ô±Ö€Õ¿Õ¡Õ£Ö€Õ¥Õ¬"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Ô²Õ¡Ö Õ©Õ¸Õ²Õ¶Õ¥Õ¬"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "ÔµÕ¿"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Ô³Ö€Õ¡Õ¶ÖÕ¥Õ¬"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "ÔµÖ€Õ¯Õ¡Ö€Õ¥ÖÕ¶Õ¥Õ¬"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Ô¿Õ¡Ö€Õ³Õ¥ÖÕ¶Õ¥Õ¬"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Õ€Õ¸Õ£Õ¶Õ¡Õ¯Õ« Õ±Ö‡ %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Ô¹Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ°Õ¶Õ¡Ö€Õ¡Õ¾Õ¸Ö€ Õ¹Õ§, Ö„Õ¡Õ¶Õ¦Õ« Õ¿Ö€Õ¾Õ¡Õ® Õ¬Õ¥Õ¦Õ¾Õ¸Ö‚Õ´ Õ°Õ¸Õ£Õ¶Õ¡Õ¯Õ« Õ©Õ¾Õ« Õ´Õ¡Õ½Õ«Õ¶ Õ¡Õ¶Õ°Ö€Õ¡ÕªÕ¥Õ·Õ¿ "
+"Õ¿Õ¾ÕµÕ¡Õ¬Õ¶Õ¥Ö€ Õ¹Õ¯Õ¡Õ¶Ö‰ Ô´Õ«Õ´Õ¥Õ›Ö„ Õ¡Õ¤Õ´Õ«Õ¶Õ«Õ½Õ¿Ö€Õ¡Õ¿Õ¸Ö€Õ«Ö‰"
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Õ†Õ¥Ö€Õ¯Õ¡ Õ©Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Ô±Õ¼Õ¡Õ»Õ¡Ö€Õ¯Õ %d %sÕ« Õ¯Õ¸Õ²Õ´Õ«Ö"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Ô±Õ¼Õ¡Õ»Õ¡Ö€Õ¯ %dÕ"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Ô±Õ¼Õ¡Õ»Õ¡Ö€Õ¯Õ %sÕ«ÖÕ"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Ô±Õ¼Õ¡Õ»Õ¡Ö€Õ¯Õ"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr "Ô±Õ¶Õ¸Ö‚Õ¶Õ"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Ô¾Õ¡Õ®Õ¯Õ¡Õ£Õ«Ö€"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "Ô¼Õ¥Õ¦Õ¸Ö‚Õ¶Õ¥Ö€"
+
+#: users.py:71
+msgid "Login"
+msgstr "Ô¿Õ¸Õ¹Õ¡Õ¯Õ¡Õ¶"
+
+#: users.py:77
+msgid "Default"
+msgstr "Ô´Õ¥Ö†Õ¸Õ¬Õ¿"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "Ô¼Õ¥Õ¦Õ¸Ö‚Õ¶Õ¥Ö€"
+
+#: users.py:196
+#, fuzzy
+msgid "Home page"
+msgstr "ÕŽÕ¥Õ¢ Õ§Õ»"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr "ÕÕ­Õ¡Õ¬"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Ô¸Õ¶Õ¤Õ¸Ö‚Õ¶Õ¥Õ¬"
+
+#~ msgid "Reject"
+#~ msgstr "Õ„Õ¥Ö€ÕªÕ¥Õ¬"
+
+#~ msgid "Broaden"
+#~ msgstr "Ô¼Õ¡ÕµÕ¶Õ¥ÖÕ¶Õ¥Õ¬"
+
+#~ msgid "Narrow"
+#~ msgstr "Õ†Õ¥Õ²Õ¡ÖÕ¶Õ¥Õ¬"
+
+#~ msgid "Reset"
+#~ msgstr "ÕŽÕ¥Ö€Õ¡Õ¯Õ¡Õ¶Õ£Õ¶Õ¥Õ¬"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/id/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/id/jToolkit.po
new file mode 100644
index 0000000..07f5cb7
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/id/jToolkit.po
@@ -0,0 +1,145 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-12-07 16:11+0100\n"
+"Last-Translator: stwn <stwn@kuliax.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Login untuk %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Batalkan aksi ini dan mulai sesi baru"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Daripada mengkonfirmasi aksi ini, log out dan mulai dari awal"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Keluar dari aplikasi"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Keluar dari aplikasi ini dan kembali ke aplikasi induk"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", silakan konfirmasi login"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Login"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Nama pengguna:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Kata kunci"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Bahasa:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Pilih Aplikasi"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Keluar"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Keluar"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "logged in sebagai <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "tidak dapat menambahkan sesi baru"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "keluar"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "terhubung"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "sesi induk keluar"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "butuh pendefinisian entri pengguna atau userprefs di konfigurasi server"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "pengguna tidak ada (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "username dan/atau kata kunci tidak valid"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "konfirmasi login gagal"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Tidak"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ya"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "hapus"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(tidak ada attachment)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "attachment terlalu besar"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "hapus attachment ini"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "mengembalikan kembali"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+"attachment ini telah dihapus. klik di sini untuk mengembalikannya kembali"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "attach berkas"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/id/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/id/pootle.po
new file mode 100644
index 0000000..fa2286c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/id/pootle.po
@@ -0,0 +1,1397 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-12-12 07:07+0100\n"
+"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demo Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Rumah"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Pengguna"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Bahasa"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Proyek"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opsi umum"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opsi"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Nilai sekarang"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Simpan perubahan"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Judul"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Gambaran"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL utama"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Situs"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Halaman admin utama"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Kode ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nama Lengkap"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(tambahkan bahasa di sini)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Karakter Khusus"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(karakter khusus)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Jumlah Jamak"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(jumlah jamak)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Persamaan Jamak"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(persamaan jamak)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Hapus Bahasa"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Hapus %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standar"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Kode Proyek"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(tambahkan proyek di sini)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Gambaran Proyek"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(gambaran proyek)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Pemeriksa Style"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tipe Berkas"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Buat Berkas MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Hapus Proyek"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Nama pengguna"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(tambahkan nama lengkap di sini)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Alamat Email"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(tambahkan email di sini)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Kata kunci"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(tambahkan kata kunci di sini)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Diaktifkan"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktifkan Pengguna Baru"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Hapus Pengguna"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Kembali ke halaman utama"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Bahasa yang telah ada"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Update bahasa"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Admin Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Anda tidak mempunyai hak untuk mengadministrasi proyek ini."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Update dari template"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Tambah Bahasa"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Admin Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Home page proyek"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Tidak dapat mengeset hak untuk username %s - pengguna tidak ada"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Ini adalah proyek bergaya GNU (satu direktori, berkas-berkas dinamai "
+"berdasarkan bahasa)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ini adalah proyek bergaya standar (satu direktori setiap bahasa)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Ijin Pengguna"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(pilih untuk menambahkan pengguna)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Hak-hak"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Hapus"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Update Hak"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Tentang Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> adalah sebuah portal web sederhana yang mengijinkan "
+"Anda untuk <strong>menerjemahkan</strong>! Karena Pootle adalah "
+"<strong>Perangkat Lunak Bebas</strong>, Anda bebas mengunduh dan menjalankan "
+"salinannya. Anda dapat pula membantu berpartisipasi membantu dalam "
+"pengembangan dengan banyak cara (Anda tidak harus dapat memprogram)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Proyek Pootle sendiri di-hosting di <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"dimana Anda dapat menemukan detail tentang kode sumber, mailing list, dan "
+"lain-lain."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Nama tersebut singkatan dari <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, tetapi Anda perlu "
+"membaca <a href=\"http://www.thechestnut.com/flumps.htm\">ini</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versi"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Situs ini menjalankan<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (di %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Halaman Pengguna untuk: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Pengubahan opsi"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Halaman admin"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrasi"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Link Cepat"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Silakan klik di 'Pengubahan opsi' dan pilih bahasa dan proyek"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d proyek, rata-rata %d%% telah diterjemahkan"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Kode Bahasa"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nama Bahasa"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "l%d bahasa, rata-rata %d%% telah diterjemahkan"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Bahasa"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Proyek %s, Bahasa %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Cari"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Tidak dapat meng-upload berkas, tidak ada berkas yang di-attach"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Hanya dapat meng-upload berkas PO dan zip dari berkas PO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Berikan String"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Berikan Aksi"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Berikan ke Pengguna"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "goal-goal"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Masukan nama goal"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Tambahkan Goal"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Upload Berkas"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Pilih berkas yang akan di-upload"
+
+# Timpa
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Timpa"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Timpa berkas sekarang jika sudah ada"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Gabungkan"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Gabungkan berkas dengan berkas sekarang dan ubah konflik ke saran"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Tidak di dalam goal"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Tambahkan Pengguna"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Berkas PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Berkas XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Berkas qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Berkas CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Berkas MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Update"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Commit"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Semua String"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Belum diterjemahkan"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Belum didelegasikan"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Belum Didelegasikan dan Diterjemahkan"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Set Goal"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Pilih Multiple"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Didelegasikan ke"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Perlihatkan Fungsi-Fungsi Sunting"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Perlihatkan Statistik"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Perlihatkan Trek"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Sembunyikan Trek"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Perlihatkan Pemeriksaan"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Sembunyikan Pemeriksaan"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Perlihatkan Goal"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Sembunyikan Goal"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Perlihatkan Delegasi"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Sembunyikan Delegasi"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Semua Goal: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Terjemahkan String Saya"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Lihat String Saya"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Tidak ada string yang didelegasikan kepadamu"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Terjemahkan Cepat String Saya"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Tidak ada string yang belum diterjemahkan didelegasikan kepadamu"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Review Saran"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Lihat Saran"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Terjemahan Cepat"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Lihat yang Belum Diterjemahkan"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Tidak ada item yang belum diterjemahkan"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Terjemahkan Semua"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP goal"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP direktori"
+
+#: indexpage.py:923
+#, fuzzy
+msgid "Generate SDF"
+msgstr "Men-generate SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d string (%d%%) gagal"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d kata (%d%%) didelegasikan"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d string]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d kata (%d%%) diterjemahkan"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Semua proyek"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Semua bahasa"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Akun saya"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dok & bantuan"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Keluar"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Masuk"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Daftar"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktifkan"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Tentang server Pootle ini"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Semua goal"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d berkas"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "Tunggal%d berkasJamak%d berkas"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d string"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nama"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Diterjemahkan"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Persentase terjemahan"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Kata-kata yang diterjemahkan"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Samar"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Persentase samar"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Kata-kata samar"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Persentase belum diterjemahkan"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Kata-kata yang belum diterjemahkan"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Total kata"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafik"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Login gagal"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Mengarahkan kembali ke login..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Memerlukan login untuk mengakses home page"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Detail personal di-update"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Perlu log in untuk mengakses halaman admin"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Mengarahkan kembali ke home..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Anda tidak mempunyai hak untuk mengadministrasi pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Tampilan"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Saran"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Terjemahkan"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Review"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arsip"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompilasi berkas PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Berikan"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Anda tidak dapat menghapus pengguna \"nobody\" dan \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Anda tidak mempunyai hak untuk mengubah goal di sini"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Anda tidak mempunyai hak untuk meng-upload berkas di sini"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Anda tidak mempunyai hak untuk menimpa berkas di sini"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Anda tidak mempunyai hak untuk meng-upload berkas baru di sini"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Anda tidak mempunyai hak untuk meng-update berkas di sini"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Anda tidak mempunyai hak untuk melakukan commit berkas di sini"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Anda tidak mempunyai hak untuk mengubah tugas di sini"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Anda tidak mempunyai hak untuk mengubah terjemahan di sini"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Anda tidak mempunyai hak untuk memberikan saran perubahan di sini"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Anda tidak mempunyai hak untuk me-review saran di sini"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d diterjemahkan\n"
+"(%d kosong, %d samar)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: menerjemahkan %s ke %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Asli"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Terjemahan"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Catatan penerjemah"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Catatan pengembang"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Berhubungan"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Akhir dari kerjaan"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klik di sini untuk kembali ke indeks"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Awal"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Sebelumnya %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Item %d ke %d dari %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Selanjutnya %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Akhir"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "memeriksa %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Tidak ada item yang sesuai dengan pencarian ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Anda telah selesai melalui item yang dipilih"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Tunggal"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Jamak"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Sunting"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Salin"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Lewati"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Kembali"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Kirim"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Kembangkan"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Kecilkan"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Bentuk Jamak %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Terjemahan tidak memungkinkan karena informasi jamak untuk bahasa Anda tidak "
+"tersedia. Silahkan kontak administrator situs."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Terjemahan Saat Ini:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Saran %d oleh %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Saran %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Saran oleh %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Saran:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Anda harus memberikan kata kunci valid paling tidak %d karakter."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Kata kunci tidak sama dengan konfirmasi."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Masuk ke Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Username:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Kata kunci:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Bahasa"
+
+#: users.py:71
+msgid "Login"
+msgstr "Login"
+
+#: users.py:77
+msgid "Default"
+msgstr "Default"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Silakan masukan detail pendaftaran anda"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pendaftaran Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Username yang anda inginkan"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Anda harus memberikan alamat email valid"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Nama lengkap anda"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Kata kunci anda"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Kata kunci konfirmasi"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Ketik kata kunci anda sekali lagi untuk memastikannya dimasukkan dengan "
+"benar"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Daftar Akun"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Silakan masukan detail aktivasi anda"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Aktivasi Akun Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Kode Aktivasi"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Kode aktivasi yang anda terima"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktifkan Akun"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Pilihan untuk: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Detail Personal"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Konfigurasi Antarmuka Terjemahan"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Bahasa antarmuka pengguna"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Proyek-Proyek Saya"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Bahasa Saya"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Situs"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Masukan Tinggi (dalam baris)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Jumlah baris di dalam mode view"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Jumlah baris di dalam mode terjemah"
+
+#: users.py:307
+msgid "Error"
+msgstr "Kesalahan"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Anda perlu menjadi siteadmin untuk mengubah pengguna-pengguna"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Username harus terdiri dari alphanumeric, dan dimulai dengan karakter "
+"alfabet."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Anda (atau seseorang) berusaha untuk mendaftar akun dengan username anda.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Kita tidak menyimpan kata kunci aktual anda tetapi hanya hash-nya saja.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Jika anda bermasalah dengan pendaftaran, silakan kontak %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Jika anda bermasalah dengan pendaftaran, silakan kontak administrator situs.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Username telah dipakai. Sebuah email akan dikirim ke alamat email yang telah "
+"terdaftar.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Menuju ke <a href='%s'>login</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Sebuah akun Pootle telah dibuat untuk Anda dengan menggunakan alamat email "
+"ini.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Untuk mengaktifkan akun anda, ikuti link ini:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Kode aktivasi anda adalah:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Jika anda tidak dapat mengikuti link tersebut, silakan masukan kode di atas "
+"pada halaman aktivasi.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Pesan ini dikirimkan untuk memverifikasi bahwa alamat email Anda adalah "
+"benar. Jika Anda tidak ingin mendaftar akun, Anda dapat mengabaikan pesan "
+"ini.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Akun telah dibuat. Anda akan dikirimkan email tentang detail login dan kode "
+"aktivasi. Silakan masukan kode aktivasi Anda pada <a href='%s'>halaman "
+"aktivasi</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Atau klik pada link aktivasi di e-mail)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Nama pengguna anda adalah: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Kata kunci anda: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Alamat email yang anda daftarkan: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Mengarahkan ke Halaman Pendaftaran..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Mengarahkan kembali ke Halaman login..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Akun Anda telah diaktifkan! Mengarahkan kembali ke login..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Informasi aktivasi tidak valid."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivasi gagal"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Input tinggi harus numerik"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Input lebar harus numerik"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Jumlah baris yang ditampilkan di dalam mode view harus numerik"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Jumlah baris yang ditampilkan di mode terjemah harus numerik"
+
+#~ msgid "Accept"
+#~ msgstr "Terima"
+
+#~ msgid "Reject"
+#~ msgstr "Tolak"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Proyek Terjemahan WordForge"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/is/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/is/jToolkit.po
new file mode 100644
index 0000000..8969a7f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/is/jToolkit.po
@@ -0,0 +1,142 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2005-08-15 20:33-0500\n"
+"Last-Translator: Sverrir Fannar <sverrirfannar@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Innskráning fyrir %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Hætta við þessa aðgerð og hefja nýja setu"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"à stað þess að staðfesta þessa aðgerð, skráðu þig út og byrjaðu frá grunni"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Hætta í forriti"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Hætta í þessu forriti og fara aftur í fyrra forrit"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", vinsamlega staðfestu innskráningu"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Innskráning"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Notendanafn:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Lykilorð:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Tungumál:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Veldu forrit"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Útskráning"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Hætta"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "innskráður sem <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "gat ekki bætt við nýrri setu"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "útskráður"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "tengdur"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "hætti í fyrri setu"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "þarf að skilgreina notanda eða notandastillingar á stillingasíðu þjóns"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "notandi er ekki til (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "rangt notendanafn og/eða lykilorð"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "skráning tókst ekki"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nei"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Já"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "fjarlægja"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ekkert viðhengi)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "viðhengi er of stórt"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "fjarlægja þetta viðhengi"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "endurheimta"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+"þetta viðhengi hefur verið fjarlægt. smelltu hér til að endurheimta það"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "bæta við viðhengi"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/is/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/is/pootle.po
new file mode 100644
index 0000000..f9a103f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/is/pootle.po
@@ -0,0 +1,1459 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-11-20 15:07+0000\n"
+"Last-Translator: Kristján Bjarni Guðmundsson <kristjanbjarni@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle sýnishorn"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Heim"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Notendur"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Tungumál"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Verkefni"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Almennar stillingar"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Stillingar"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Gildi"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Vista breytingar"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titill"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Lýsing"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Grunn slóð"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Heimasíða"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle stjórnsíða fyrir tungumál"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Aðal stjórnsíða"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO kóði"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Fullt nafn"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(bæta við tungumáli hér)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Sérstakir stafir"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(sérstakir stafir)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Fjöldi fleirtala"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(fjöldi fleirtala)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Fleirtölu jafna"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(fleirtölu jafna)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Fjarlægja tungumál"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Fjarlægja %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Staðall"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle stjórnsíða fyrir verkefni"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Verkefniskóði"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(bæta við verkefni hér)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Verkefnislýsing"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(verkefnislýsing)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Stíll athugara"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Skráar tegund"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Gera MO skrár"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Fjarlægja verkefni"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Stjórnunarsíða Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Notandi"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(skrifaðu fullt nafn hér)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Netfang"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(skrifaðu netfang hér)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Lykilorð"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(skrifaðu lykilorð hér)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Virkt"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Gera nýjan notanda virkann"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Fjarlægja notanda"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Aftur á aðalsíðu"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Virk tungumál"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Uppfæra tungumál"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle stjórnandi: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Þú hefur ekki heimild til að stjórna þessu verkefni."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Uppfæra af skrá"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Bæta við tungumáli"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle Stjórnandi: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Heimasíða verkefnisins"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Get ekki sett réttindi fyrir notanda %s - notandi er ekki til"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Þetta er GNU-legt verkefni (ein mappa, skrár nefndar eftir tungumálum)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Þetta er hefðbundið verkefni (ein mappa fyrir hvert tungumál)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Notendaréttindi"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(veldu til að bæta við notenda)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Réttindi"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Fjarlægja"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Uppfæra réttindi"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Um Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> er einfalt vefkerfi sem ætti að gera þér kleyft að "
+"<strong>þýða ýmis forrit</strong>! Þar sem Pootle er <strong>frjáls "
+"hugbúnaður</strong> getur þú hlaðið því niður og keyrt þitt eigið eintak ef "
+"þú vilt. Þú getur líka hjálpað til við þróunina á margan hátt "
+"(forritunarkunnátta er ekki nauðsynleg)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle verkefnið sjálft er vistað á <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> en "
+"þar getur þú fundið upplýsingar varðandi frumkóða, póstlista ofl."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr "Nafnið stendur fyrir <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, en þú gætir þurft að lesa <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">þetta</a>.\n"
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Útgáfur"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Þessi vefur keyrir:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (á %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Notendasíða fyrir: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Breyta stillingum"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Stjórnsíða"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Stjórna"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Flýtileiðir"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Vinsamlegast smelltu á 'Breyta stillingum' og veldu tungumál og verkefni"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d verkefni, meðaltal %d%% þýtt"
+msgstr[1] "%d verkefni, meðaltal %d%% þýdd"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Stjórnandi"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Tungumálakóði"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Tungumál"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d tungumál, meðaltal %d%% þýdd"
+msgstr[1] "%d tungumál, meðaltal %d%% þýtt"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Tungumál"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Verkefni %s, Tungumál %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Leit"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Ãtarleg leit"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Get ekki sent skrá, engin skrá valin"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Get aðeins sent PO skrár og þjappaðar Po skrár"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Úthluta textastrengjum"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Úthluta aðgerð"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Úthluta til notenda"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "Markmið"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Nefna markmið"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Bæta við markmiði"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Hlaða inn skrá"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Veldu skrá til að hlaða inn"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Yfirskrifa"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Yfirskrifa núverandi skrá ef hún er til"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Fella saman"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Fella saman skrá við núverandi skrá og breyta því sem stangast á í "
+"uppástungu"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ekkert hluti af markmiði"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Bæta við notanda"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO skrá"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF skrá"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts skrá"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV skrá"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO skrá"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Uppfæra"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Senda(Commit)"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Alla strengi"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Óþýtt"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Óúthlutað"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Óúthlutað og óþýtt"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Setja markmið"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Velja nokkra"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Skráð á"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Sýna breytingaraðgerðir"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Sýna tölfræði"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Sýna rásir"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Fela rásir"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Sýna athuganir"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Fela athuganir"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Sýna markmið"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Fela markmið"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Sýna úthlutanir"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Fela úthlutanir"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Öll takmörk: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Þýða mína strengi"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Skoða mína strengi"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Engir strengir skráðir á þig"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Snarþýða mína strengi"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Engir óþýddir strengir skráðir á þig"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Skoða uppástungur"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Skoða uppástungur"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Snarþýða"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Sjá óþýtt"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ekkert óþýtt"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Þýða allt"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP skrá af markmiði"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP skrá af möppu"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Búa til SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d strengur (%d%%) mistókst"
+msgstr[1] "%d strengir (%d%%) mistókust"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d orð (%d%%) úthlutuð"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d strengir]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d orð (%d%%) þýdd"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Öll verkefni"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Öll tungumál"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Minn aðgangur"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Skjöl & hjálp"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Skrá út"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Innskráning"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Nýr notandi"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Virkja"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle nafnmerki(logo)"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Um þennan Pootle þjón"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Öll takmörk"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d skrár"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d skrá"
+msgstr[1] "%d skrár"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "[%d/%d strengir]"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nafn"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Búið að þýða"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "% búið að þýða"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Þýdd orð"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "óskýr"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "% óskýr"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Óskýr orð"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "% óþýtt"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Orð óþýdd"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Samtals"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Samtals orð"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graf"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Athugasemdir"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Innskráning mistókst"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Ãframsendi að innskráningu..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Þarft að skrá þig inn til að fá aðgang að heimasíðu"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Persónulegar upplýsingar uppfærðar"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Þarft að skrá þig inn til að fá aðgang að stjórnendasíðu"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Ãframsendi heim..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Þú hefur ekki réttindi til að stjórna pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Sýn"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Stinga uppá"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Þýða"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Endurskoða"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Skjalasafn"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Vistþýða PO skrár"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Úthluta"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Þú getur ekki fjarlægt \"nobody\" eða \"default\" notendurna"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Þú hefur ekki réttindi til að breyta takmarkinu hér"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Þú hefur ekki réttindi til að hlaða inn skrám hér"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Þú hefur ekki réttindi til að yfirskrifa skrár hér"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Þú hefur ekki réttindi til að hlaða inn nýjum skrám hér"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Þú hefur ekki rétt til þess að uppfæra skrár hérna"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Þú hefur ekki réttindi til að senda inn skrár hér"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Þú hefur ekki réttindi til að breyta úthlutunum hérna"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Þú hefur ekki réttindi til að breyta þýðingum hérna "
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Þú hefur ekki réttindi til að stinga uppá breytingum hérna"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Þú hefur ekki réttindi til að skoða uppástungur hérna"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d þýddir\n"
+"(%d tómir, %d óljósir)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: er að þýða %s í %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Upphaflegt"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Þýðing"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Athugasemdir þýðanda"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Athugasemdir forritara"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Tengt"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Runa endar"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Smelltu hér til að fara á upphafssíðu"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Byrja"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Fyrri %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Hlutir %d til %d af %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Næstu %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Hætta"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "athuga %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Engir hlutir passa við leitina ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Þú hefur lokið við að fara í gegnum hlutina sem þú valdir"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Eintala"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Fleirtala"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Breyta"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Afrita"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Sleppa"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Bakka"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Staðfesta"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Stækka"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Minnka"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Fleirtala %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Ekki hægt að þýða þar sem upplýsingar um fleirtölu fyrir þitt tungumál er "
+"ekki til staðar. Hafðu samband við umsjónamann."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Núverandi þýðing:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Uppástunga %d af %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Uppástunga %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Uppástunga af %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Uppástunga:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Þú verður að skrá gilt lykilorð með að minnsta kosti %d stöfum"
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Lykilorðið er ekki eins og staðfestingin"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Innskrá í Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Notandi:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Lykilorð:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Tungumál"
+
+#: users.py:71
+msgid "Login"
+msgstr "Innskráning"
+
+#: users.py:77
+msgid "Default"
+msgstr "Frumgildi"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Vinsamlega sláðu inn skráningaratriði"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Skráning í Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Notendanafnið sem þú óskar"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Þú verður að gefa upp virkt netfang"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Fullt nafn"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Lykilorðið sem þú óskar"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Staðfestu lykilorðið"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Sláðu inn lykilorðið aftur til að tryggja að það hafi verið slegið inn rétt"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Virkja aðgang"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Vinsamlega sláðu inn virkjunarupplýsingar"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Virkjun Pootle aðgangs"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Virkjunarkóði"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Virkjunarkóðinn sem þú fékkst sendann"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Virkja aðgang"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Stillingar fyrir: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Persónulegar upplýsingar"
+
+#: users.py:186
+msgid "Email"
+msgstr "Netfang"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Stilling þýðingarviðmóts"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Tungumál notanda viðmóts"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Verkefnin mín"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Tungumálin mín"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Heimasíða"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Hæð innsláttar (í línum)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Fjöldi lína í skoðunarham"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Fjöldi lína í þýðingarham"
+
+#: users.py:307
+msgid "Error"
+msgstr "Villa"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Þú þarft að vera vef-ofurpaur til að breyta notendum"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Notanda nafnið verður að vera staftöluorð og verður að byrja á bókstaf"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Þú (eða einhver annar) reyndi að búa til aðgang með þínu notandanafni.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Við vistum ekki lykilorðið þitt heldur einungis reiknuðum kóða(hash) út frá "
+"því.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Ef þú átt í vandræðum með skráningu, hafðu samband við %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Ef þú átt í vandræðum með skráningu, hafðu samband við umsjónarmann "
+"síðunnar.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Þetta notandanafn er nú þegar til. Tölvupóstur hefur verið sendur á skráð "
+"netfang.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Fer yfir á <a href='%s'>innskráning</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Pottle aðgangur hefur verið búinn til fyrir þig á þetta netfang.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Til að virkja þennan aðgang, fylgdu þessari slóð:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Virkjunarkóðinn er:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Ef þú getur ekki fylgt hlekknum, vinsamlegast sláðu inn kóðann hér að ofan á "
+"virkjunarsíðunni.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Þessi skilaboð eru send til að staðfesta að póstfang þitt sé rétt. Ef þú "
+"vildir ekki skrá aðgang, getur þú hunsað þessi skilaboð.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Aðgangur hefur verið búinn til. Þú færð innskráningarupplýsingar ásamt "
+"virkjunarkóða sendar í pósti. Vinsamlegast sláðu virkjanakóðann á <a "
+"href='%s'>virjunarsíðunni</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Eða einfaldlega smelltu á virkjunarhlekkinn í póstinum)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Notanda nafn þitt er: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Lykilorðið þitt er: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Skráð póstfang er: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Ãframsendi að skráningarsíðu..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Ãframsendi að innskráningarsíðu..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"Reikningur þinn hefur verið virkjaður! Ãframsendi að innskráningarsíðu..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Upplýsingarnar til að virkja eru ekki gildar."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Virkjun mistókst"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Hæð innsláttar verður að vera tölugildi"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Breidd innsláttar verður að vera tölugildi"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Fjöldi lína birtar í skoðunarham verður að vera tölugildi"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Fjöldi lína birtar í þýðingarham verður að vera tölugildi"
+
+#~ msgid "Accept"
+#~ msgstr "Samþykkja"
+
+#~ msgid "Reject"
+#~ msgstr "Hafna"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge þýðingar verkefni"
+
+#~ msgid "Broaden"
+#~ msgstr "Breikka"
+
+#~ msgid "Narrow"
+#~ msgstr "Þrengja"
+
+#~ msgid "Reset"
+#~ msgstr "Frumstilla"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Verður að vera gilt netfang"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Breidd insláttar (í fjölda stafa)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pootle stjórnunarsíða"
+
+#~ msgid "(checker style)"
+#~ msgstr "(stíll athugara)"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Þú hefur ekki réttindi til að stjórna Pootle."
+
+#~ msgid "%s project"
+#~ msgstr "%s verkefni"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d skrár, %d/%d textastrengir (%d%%) þýdd"
+
+#~ msgid "%s language"
+#~ msgstr "%s tungumál"
+
+#~ msgid "%d files, "
+#~ msgstr "%d skrár, "
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d textastrengir (%d%%) þýddir"
+
+#~ msgid "%d strings (%d%%) assigned"
+#~ msgstr "%d textastrengjum (%d%%) úthlutað"
+
+#~ msgid "not logged in"
+#~ msgstr "ekki innskráður"
+
+#~ msgid "Log In"
+#~ msgstr "Skrá inn"
+
+#~ msgid "current folder"
+#~ msgstr "núverandi mappa"
+
+#~ msgid "current file"
+#~ msgstr "núverandi skrá"
+
+#~ msgid "suggest"
+#~ msgstr "stinga uppá"
+
+#~ msgid "Input Width"
+#~ msgstr "Breidd innsláttar"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/it/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/it/jToolkit.po
new file mode 100644
index 0000000..b4c790d
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/it/jToolkit.po
@@ -0,0 +1,147 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-08-07 14:58+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.9rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Login per %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Cancella questa azione e inizia una nuova sessione"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Invece di confermare questa azione, esci e ricomincia dall'inizio"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Esci dall'applicazione"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Esci da questa applicazione e ritorna all'applicazione principale"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", si prega di confermare il login"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Login"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Nome utente:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Password:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Lingua:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Seleziona applicazione"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Logout"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Esci"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "autenticato come <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "impossibile aggiungere una nuova sessione"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "uscito"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "connesso"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "uscito dalla sessione principale"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"è necessario definire gli utenti o la voce userprefs nella configurazione "
+"del server"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "l'utente non esiste (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nome utente e/o password invalido"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "conferma del login fallita"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "No"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Si"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "rimuovi"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(nessun allegato)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "l'allegato è troppo grande"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "rimuovi questo allegato"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "ripristina"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "questo allegato è stato rimosso. clicca qui per ripristinarlo"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "allega un file"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "è necessario definire l'utente sul server di config"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/it/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/it/pootle.po
new file mode 100644
index 0000000..31a8684
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/it/pootle.po
@@ -0,0 +1,1556 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-05 09:15+0000\n"
+"Last-Translator: Cecilia Saltori <csaltori@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Dimostrazione di Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Home"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Utenti"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Lingue"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Progetti"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opzioni generali"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opzione"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Valore corrente"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Salva le modifiche"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titolo"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Descrizione"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL Base"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Home Page"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pagina Amministrazione Lingue di Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Pagina principale di amministrazione"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Codice ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nome Completo"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(aggiungi una lingua qui)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Caratteri Speciali"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(caratteri speciali)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Numero di Plurali"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(numero di plurali)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Equazione dei Plurali"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(equazione dei plurali)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Rimuovi lingua"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Rimuovi %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pagina Amministrazione Progetti Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Codice Progetto"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(aggiungi progetto qui)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Descrizione Progetto"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(descrizione progetto)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Stile Controllo"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tipo di File"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Crea Files MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Rimuovi Progetto"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pagina Amministrazione Utenti Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Nome utente"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(aggiungi nome completo qui)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Indirizzo Email"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(aggiungi email qui)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Password"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(aggiungi password qui)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Attivato"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Attiva Nuovo Utente"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Rimuovi Utente"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Torna alla pagina principale"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Lingue esistenti"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Aggiorna Lingue"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Amministratore Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Non si possiedono i diritti per amministrare questo progetto."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Aggiorna dai templates"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Aggiungi lingua"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle Amministratore: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Home page del progetto"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Impossibile impostare i diritti per lo username %s - l'utente non esiste"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Questo è un progetto nello stile GNU (una directory, files identificati per "
+"lingua)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Questo è un progetto nello stile standard (una directory per lingua)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Permessi Utenti"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(seleziona per aggiungere l'utente)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Diritti"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Rimuovi"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Aggiorna Diritti"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Info su Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> è un semplice portale web che dovrebbe permettervi "
+"di <strong>tradurre</strong>! Poiché Pootle è <strong>Free "
+"Software</strong>, è possibile scaricarlo ed eseguire la vostra copia se "
+"volete. È anche possibile aiutare partecipando allo sviluppo in molti modi "
+"(non è necessario saper programmare)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Lo stesso progetto Pootle è ospitato su <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> dove "
+"è possibile trovare i dettagli su codice sorgente, mailing lists ecc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Il nome sta per<b>PO</b>-based<b>O</b>nline <b>T</b>ranslation "
+"/<b>L</b>ocalization <b>E</b>ngine (motore di traduzione e localizzazione "
+"basato su PO), ma forse potreste aver bisogno di leggere <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">questo</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versioni"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Questo sito sta eseguendo:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Pagina utente per: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Modifica opzioni"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Pagina amministratore"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Amministra"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Collegamenti Veloci"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Si prega di cliccare su 'Modifica opzioni' e selezionare alcune lingue e "
+"progetti"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d progetto, media %d%% tradotto"
+msgstr[1] "%d progetti, media %d%% tradotti"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Amministra"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Codice Lingua"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nome Lingua"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d lingua, media %d%% tradotto"
+msgstr[1] "%d lingue, media %d%% tradotti"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Lingua"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Progetto %s, Lingua %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Cerca"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Ricerca avanzata"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Impossibile caricare il file, nessun file allegato"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "È possibile caricare solo files PO e zips di files PO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Assegna Stringhe"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Assegna Azione"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Assegna all'Utente"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "obiettivi"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Inserire nome dell'obiettivo"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Aggiungere obiettivo"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Carica File"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Seleziona file da caricare"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Sovrascrivi"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Sovrascrivi il file corrente se esiste"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Unisci"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Unisci il file con quello corrente e trasforma i conflitti in suggerimenti"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Nessun obiettivo"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Aggiungi Utente"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "File PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF file"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts file"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "File CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "File MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Aggiorna"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Accetta"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Tutte le Stringhe"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Non tradotte"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Non assegnate"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Non assegnate e Non tradotte"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Imposta Obiettivo"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Selezione Multipla"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Assegna A"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Mostra Funzioni di Modifica"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Mostra Statistiche"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Mostra Tracce"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Nascondi Tracce"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Mostra i controlli"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Nascondi controlli"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Mostra Obiettivi"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Nascondi Obiettivi"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Mostra Assegnazioni"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Nascondi Assegnazioni"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Tutti i Goals: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Traduci le Mie Stringhe"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Vedi le Mie Stringhe"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nessuna stringa assegnata a te"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Traduzione Veloce delle Mie Stringhe"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nessuna stringa non tradotta assegnata a te"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Rivedi i suggerimenti"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Vedi i suggerimenti"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Traduzione veloce"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Vedi le voci non tradotte"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Non ci sono voci da tradurre"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Traduci Tutto"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP dell'obiettivo"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP della cartella"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Genera SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d stringa (%d%%) fallita"
+msgstr[1] "%d stringhe (%d%%) fallite"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d parole(%d%%) assegnate"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d stringhe]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d parole (%d%%) tradotte"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Tutti i progetti"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Tutte le lingue"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Il mio account"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Documenti & aiuto"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Esci"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Entra"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registra"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Attiva"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo di Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Info su questo server Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Tutti gli obiettivi"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d files"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d file "
+msgstr[1] "%d files"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d stringhe"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nome"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Tradotto"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Percentuale tradotte"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Parole tradotte"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Intelligente"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Percentuale intelligenti"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Parole intelligenti"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Percentuale non tradotte"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Parole non tradotte"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Totale"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Parole totali"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafico"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Testo sorgente"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Testo destinazione"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Commenti"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Posizioni"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Login fallito"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Stai per essere reindirizzato al login..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "È necessario autenticarsi per accedere alla home page"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Dettagli personali aggiornati"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "È necessario autenticarsi per accedere alla pagina di amministrazione"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Stai per essere reindirizzato alla home..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Non si possiedono i diritti per amministrare pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Visualizza"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Suggerisci"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Traduci"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Rivedi"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archivia"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Compila i files PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Assegna"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Non è possibile rimuovere gli utenti \"nobody\" o \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Non si dispone dei diritti per alterare gli obiettivi qui"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Non si dispone dei diritti per caricare files qui"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Non si dispone dei diritti per sovrascrivere i files qui"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Non si dispone dei diritti per caricare nuovi files qui"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Non si dispone dei diritti per caricare files qui"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Non si dispone dei diritti per caricare files qui"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Non si possiedono i diritti per alterare gli assegnamenti qui"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Non si possiedono i diritti per modificare le traduzioni qui"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Non si possiedono i diritti per suggerire modifiche qui"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Non si possiedono i diritti per rivedere i suggerimenti qui"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d tradotti\n"
+"(%d non tradotti, %d fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: traduce %s in %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Originale"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Traduzione"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Accetta suggerimento"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Rifiuta suggerimento"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Note del Traduttore"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Note dello Sviluppatore"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Associato"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Sto lavorando..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Errore: qualcosa non ha funzionato"
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fine del batch"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Clicca qui per ritornare all'indice"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Inizio"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d Precedenti"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Voce da %d a %d di %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Prossimi %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fine"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "sto controllando %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Non ci sono voci corrispondenti a quella cercata('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Hai concluso il percorso fra le voci selezionate"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singolare"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plurale"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Modifica"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Copia"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Prossimo"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Precedente"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Accetta"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Aumenta"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Riduci"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma Plurale %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Traduzione impossibile poichè le informazioni sul plurale per la tua lingua "
+"non sono disponibili. Si prega di contattare l'amministratore del sito."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Traduzione Corrente:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Suggerimento %d da %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Suggerimento %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Suggerimento da %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Suggerimento:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Devi inserire una password valida di almeno %d caratteri."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "La password è diversa da quella di conferma"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Accedi a Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Nome utente:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Password:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Lingua:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Login"
+
+#: users.py:77
+msgid "Default"
+msgstr "Default"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Si prega di inserire i dettagli della propria registrazione"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Registrazione a Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Il tuo nome utente richiesto"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Devi fornire un indirizzo email valido"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Il tuo nome completo"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "La tua password"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Conferma password"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Digita nuovamente la tua password per essere sicuro che sia corretta"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registra l'Account"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Inserire i dettagli della propria attivazione"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Attivazione dell'account Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Codice di attivazione"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Il codice di attivazione che hai ricevuto"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Attiva account"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opzioni per: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Dettagli Personali"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Configurazione Interfaccia Traduzione"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Lingua dell'interfaccia utente"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Miei Progetti"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mie Lingue"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Pagina principale"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Linguaggio sorgente alternativo"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Nessuno"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Altezza Input (in linee)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Numero di righe in modalità vista"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Numero di righe in modalità traduzione"
+
+#: users.py:307
+msgid "Error"
+msgstr "Errore"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "È necessario essere amministratore del sito pr modificare gli utenti"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Il nome utente deve essere alfanumerico e deve iniziare con un carattere "
+"alfabetico."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+"Tu (o qualcun altro) ha tentato di registrare an account con il tuo nome "
+"utente."
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Non memorizziamo la tua password attuale ma solo una sua codifica."
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "In caso di problemi con la registrazione, si prega di contattare %s."
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "In caso di problemi con la registrazione, si prega di contattare "
+"l'amministratore del sito.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Questo nome utente esiste già. Verrà inviata una email all'indirizzo email "
+"registrato.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Sto effettuando <a href='%s'>login</a>"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "E' stato creato un account Pootle utilizzando questo indirizzo email.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Per attivare il tuo account, segui questo link:"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "Il tuo codice di attivazione è:%s"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+"Se non riesci a seguire il link, inserisci il codice alla pagina di "
+"attivazione."
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+"Questo messagio viene inviato per verificare che l'indirizzo email sia "
+"corretto. Se non vuoi registrare un account, puoi semplicemente ignorare il "
+"messaggio."
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Account creato. Ti saranno inviati per email i dettagli del login e un "
+"codice di attivazione. Per favore inserisci il tuo codice di attivazione "
+"nella <a href='%s'>pagina di attivazione</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(O sempliecemente clicca sul link nella email)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Il tuo nome completo è: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "La tua password è: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Il tuo indirizzo email registrato è: %s"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Stai per essere reindirizzato alla Pagina di Registrazione..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Stai per essere reindirizzato alla Pagina di login..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"Il tuo account è stato attivato! Stai per essere reindirizzato al login..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "L'informazione di attivazione che hai inserito non era valida."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Attivazione fallita"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "L'altezza dell'input deve essere un numero"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "La larghezza dell'input deve essere un numero"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Il numero di righe visualizzate in modalità vista deve essere numerico"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+"Il numero di righe visualizzate in modalità traduzione deve essere numerico"
+
+#~ msgid "Accept"
+#~ msgstr "Accetta"
+
+#~ msgid "Reject"
+#~ msgstr "Rifiuta"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Progetto Traduzioni WordForge:"
+
+#~ msgid "Broaden"
+#~ msgstr "Allarga"
+
+#~ msgid "Narrow"
+#~ msgstr "Restringi"
+
+#~ msgid "Reset"
+#~ msgstr "Reset"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Deve essere un indirizzo email valido"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Larghezza Input (in caratteri)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> è un semplice portale web che dovrebbe "
+#~ "permetterti di <strong>tradurre</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "directory superiore"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Progetti</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d files, %d/%d stringhe (%d%%) tradotte"
+
+#~ msgid "%s language"
+#~ msgstr "%s lingua"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "questa è una installazione demo di pootle"
+
+#~ msgid "current folder"
+#~ msgstr "directory corrente"
+
+#~ msgid "Log In"
+#~ msgstr "Log In"
+
+#~ msgid "login status"
+#~ msgstr "stato del login"
+
+#~ msgid "project root"
+#~ msgstr "root del progetto"
+
+#~ msgid "%s project"
+#~ msgstr "%s progetto"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "non hai diritti per suggerire modifiche qui"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "non hai diritti per modificare le traduzioni qui"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d stringhe (%d%%) tradotte"
+
+#~ msgid "%d files, "
+#~ msgstr "%d files, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Lingue</h3>"
+
+#~ msgid "current file"
+#~ msgstr "file corrente"
+
+#~ msgid "not logged in"
+#~ msgstr "non autenticato"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pagina Amministrazione Pootle"
+
+#~ msgid "(checker style)"
+#~ msgstr "(stile controllo)"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Nom si possiedono i diritti per amministrare Poolte."
+
+#~ msgid "%d strings (%d%%) assigned"
+#~ msgstr "%d stringhe (%d%%) assegnate"
+
+#~ msgid "suggest"
+#~ msgstr "suggerisci"
+
+#~ msgid "Input Width"
+#~ msgstr "Input Larghezza"
+
+#~ msgid "skip"
+#~ msgstr "salta"
+
+#~ msgid "Log Out"
+#~ msgstr "Log Out"
+
+#~ msgid "<b>Current Translation:</b>"
+#~ msgstr "<b>Traduzione corrente:</b>"
+
+#~ msgid "General Options"
+#~ msgstr "Opzioni Generali"
+
+#~ msgid "Main Admin page"
+#~ msgstr "Pagina Principale Amministrazione"
+
+#~ msgid "Remove language"
+#~ msgstr "Rimuovi lingua"
+
+#~ msgid "Remove project"
+#~ msgstr "Rimuovi progetto"
+
+#~ msgid "No goal"
+#~ msgstr "Nessun obiettivo"
+
+#~ msgid "Docs & Help"
+#~ msgstr "Documenti & Aiuto"
+
+#~ msgid "translation"
+#~ msgstr "traduzione"
+
+#~ msgid ""
+#~ "This site is running:<br/>Pootle %s</br>jToolkit %s</br>Python %s (on %s/%"
+#~ "s)"
+#~ msgstr ""
+#~ "Questo sito fa girare:<br/>Pootle %s</br>jToolkit %s</br>Python %s (su %s/"
+#~ "%s)"
+
+#~ msgid "All Projects"
+#~ msgstr "Tutti i Progetti"
+
+#~ msgid "All Languages"
+#~ msgstr "Tutte le Lingue"
+
+#~ msgid "copy"
+#~ msgstr "copia"
+
+#~ msgid "submit"
+#~ msgstr "Invia"
+
+#~ msgid "accept"
+#~ msgstr "accetta"
+
+#~ msgid "reject"
+#~ msgstr "rifiuta"
+
+#~ msgid "Input Height"
+#~ msgstr "Input Altezza"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ja/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ja/jToolkit.po
new file mode 100644
index 0000000..80ceab9
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ja/jToolkit.po
@@ -0,0 +1,145 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-08-07 14:59+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.9\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s ã§ãƒ­ã‚°ã‚¤ãƒ³"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ã“ã®æ“作をå–り消ã—ã¦æ–°ã—ã„セッションを開始"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ã“ã®å‹•ä½œã‚’確èªã›ãšã€ãƒ­ã‚°ã‚¢ã‚¦ãƒˆã—ã¦æœ€åˆã‹ã‚‰ã‹ã‚‰æ“作ã—ã¦ãã ã•ã„"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "アプリケーション終了"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "アプリケーションを終了ã—ã€ä¸Šä½ã‚¢ãƒ—リケーションã«æˆ»ã‚Šã¾ã™"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", ログインを確èªã—ã¦ãã ã•ã„"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ログイン"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "ユーザå:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "パスワード:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "言語:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "アプリケーションé¸æŠž"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "ログアウト"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "終了"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b>ã§ãƒ­ã‚°ã‚¤ãƒ³ä¸­"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "æ–°ã—ã„セッションを追加ã§ãã¾ã›ã‚“"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "ログアウト"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "接続完了"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "上ä½ã‚»ãƒƒã‚·ãƒ§ãƒ³ã‚’終了ã—ã¾ã—ãŸ"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "サーãƒã®è¨­å®šã« userprefs エントリを定義ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "ユーザãŒå­˜åœ¨ã—ã¾ã›ã‚“ (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ユーザå・パスワードãŒé–“é•ã£ã¦ã„ã¾ã™"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "ログインã«å¤±æ•—ã—ã¾ã—ãŸ"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "ã„ã„ãˆ"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "ã¯ã„"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "削除"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(添付ãªã—)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "添付ファイルãŒå¤§ãã™ãŽã¾ã™"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "添付ファイルã®å‰Šé™¤"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "復元"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "添付ファイルを削除ã—ã¾ã—ãŸã€‚復元ã™ã‚‹ã«ã¯ã‚¯ãƒªãƒƒã‚¯ã—ã¦ãã ã•ã„"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ファイルを添付"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "サーãƒã®è¨­å®šã« users エントリを定義ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ja/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ja/pootle.po
new file mode 100644
index 0000000..175fa0e
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ja/pootle.po
@@ -0,0 +1,1396 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-29 03:36+0000\n"
+"Last-Translator: Kenshi Muto <kmuto@debian.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle デモ"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "ホーム"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "ユーザ"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "言語"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "プロジェクト"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "一般設定"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "オプション"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "ç¾åœ¨ã®å€¤"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "変更ã®ä¿å­˜"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "タイトル"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "説明"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "元㮠URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "ホームページ"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle 言語管ç†ãƒšãƒ¼ã‚¸"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "メイン管ç†ãƒšãƒ¼ã‚¸"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO コード"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "フルãƒãƒ¼ãƒ "
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(ã“ã“ã«è¨€èªžã‚’追加ã—ã¦ãã ã•ã„)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "特殊文字"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(特殊文字)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "複数形ã®æ•°"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(複数形ã®æ•°)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "複数形ã®åŒä¸€è¦–"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(複数形ã®åŒä¸€è¦–)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "言語ã®å‰Šé™¤"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s を削除"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "標準"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle プロジェクト管ç†ãƒšãƒ¼ã‚¸"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "プロジェクトコード"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(ã“ã“ã«ãƒ—ロジェクトを追加ã—ã¦ãã ã•ã„)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "プロジェクトã®èª¬æ˜Ž"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(プロジェクトã®èª¬æ˜Ž)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "ãƒã‚§ãƒƒã‚¯å½¢å¼"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "ファイル形å¼"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO ファイル作æˆ"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "プロジェクトã®å‰Šé™¤"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle ユーザ管ç†ãƒšãƒ¼ã‚¸"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "ユーザå"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(ã“ã“ã«ãƒ•ãƒ«ãƒãƒ¼ãƒ ã‚’追加ã—ã¦ãã ã•ã„)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "email アドレス"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(ã“ã“ã« email を追加ã—ã¦ãã ã•ã„)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "パスワード"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(ã“ã“ã«ãƒ‘スワードを追加ã—ã¦ãã ã•ã„)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "有効"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "æ–°ã—ã„ユーザを有効ã«ã™ã‚‹"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "ユーザã®å‰Šé™¤"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "メインページã«æˆ»ã‚‹"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "既存言語"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "言語ã®æ›´æ–°"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle 管ç†è€…: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "ã“ã®ãƒ—ロジェクトã®ç®¡ç†æ¨©ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "テンプレートã‹ã‚‰æ›´æ–°"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "言語ã®è¿½åŠ "
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle 管ç†è€…: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "プロジェクトホームページ"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "ユーザå %s ã«æ¨©é™ã‚’設定ã§ãã¾ã›ã‚“。- ユーザãŒã‚ã‚Šã¾ã›ã‚“。"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "GNU スタイルプロジェクト (1 ディレクトリã«è¨€èªžã”ã¨ã®åå‰ã®ã¤ã„ãŸãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚‹) ã§ã™ã€‚"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "標準スタイルプロジェクト (言語ã”ã¨ã« 1 ディレクトリãŒã‚ã‚‹) ã§ã™ã€‚"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "ユーザ権é™"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(追加ã™ã‚‹ãƒ¦ãƒ¼ã‚¶ã‚’é¸æŠžã—ã¦ãã ã•ã„)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "権é™"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "削除"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "権é™æ›´æ–°"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Pootle ã«ã¤ã„ã¦"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> ã¯ã€<strong>翻訳</strong> ã‚’è¡Œã†ã‚·ãƒ³ãƒ—ル㪠web ãƒãƒ¼ã‚¿ãƒ«ã§ã™! Pootle 㯠"
+"<strong>フリーソフトウェア</strong> ã§ã™ã‹ã‚‰ã€ãŠå¥½ã¿ã«å¿œã˜ã¦ã€ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã—実行ã§ãã¾ã™ã€‚ "
+"ã¾ãŸã€ãŸãã•ã‚“ã®æ–¹æ³•ã§é–‹ç™ºã«å‚加ã§ãã¾ã™ã€‚(プログラムãŒã§ãã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“)"
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"The Pootle project 自身㯠<a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"ã§ãƒ›ã‚¹ãƒ†ã‚£ãƒ³ã‚°ã•ã‚Œã¦ãŠã‚Šã€ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã‚„メーリングリストãªã©ã®è©³ç´°ã¯ãã“ã«ã‚ã‚Šã¾ã™ã€‚"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"åå‰ã®æ„味㯠<b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine ã§ã™ãŒã€ <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">ã“ã“</a> を読んã§ãŠãã¨ã„ã„ã§ã—ょã†ã€‚"
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"本サイトã¯ä»¥ä¸‹ã®ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã§ç¨¼åƒã—ã¦ã„ã¾ã™ã€‚<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (%s/%s 上)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "%s ã®ãƒ¦ãƒ¼ã‚¶ãƒšãƒ¼ã‚¸"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "オプション変更"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "管ç†ãƒšãƒ¼ã‚¸"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "管ç†"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "クイックリンク"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "「オプション変更ã€ã‚’クリックã—ã€è¨€èªžã¨ãƒ—ロジェクトをé¸æŠžã—ã¦ãã ã•ã„"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d プロジェクト, å¹³å‡ %d%% 翻訳済"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "管ç†è€…"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "言語コード"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "言語å"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d 言語, å¹³å‡ %d%% 翻訳済"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "言語"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: プロジェクト %s, 言語 %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "検索"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "高度ãªæ¤œç´¢"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "ファイルをアップロードã§ãã¾ã›ã‚“。ファイルãŒã‚ã‚Šã¾ã›ã‚“。"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "PO ファイル㋠PO ファイル㮠zip アーカイブã®ã¿ã‚¢ãƒƒãƒ—ロードã§ãã¾ã™"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "割当文字列"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "割当アクション"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "ユーザã«å‰²å½“"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "目標"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "目標åを入力ã—ã¦ãã ã•ã„"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "目標ã®è¿½åŠ "
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "ファイルã®ã‚¢ãƒƒãƒ—ロード"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "アップロードã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠžã—ã¦ãã ã•ã„"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "上書ã"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "既存ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒå­˜åœ¨ã™ã‚‹ã¨ãã«ä¸Šæ›¸ãã™ã‚‹"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "çµåˆ"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "ç¾åœ¨ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’çµåˆã—ã€ç«¶åˆã‚’æ案ã«å¤‰ãˆã‚‹"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "目標ã«ã‚ã‚Šã¾ã›ã‚“"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "ユーザã®è¿½åŠ "
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO ファイル"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF ファイル"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts ファイル"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV ファイル"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO ファイル"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "æ›´æ–°"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "コミット"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "全文字列"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "未訳"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "未割当"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "未割当ã§æœªè¨³"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "目標を設定"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "複数をé¸æŠž"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "割当"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "編集機能を表示"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "統計表示"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "トラック表示"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "トラックéžè¡¨ç¤º"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "ãƒã‚§ãƒƒã‚¯è¡¨ç¤º"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "ãƒã‚§ãƒƒã‚¯éžè¡¨ç¤º"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "目標表示"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "目標éžè¡¨ç¤º"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "割当表示"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "割当éžè¡¨ç¤º"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "全目標: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "自分ã®æ–‡å­—列を翻訳"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "自分ã®æ–‡å­—列を表示"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "割り当ã¦ã‚‰ã‚ŒãŸæ–‡å­—列ã¯ã‚ã‚Šã¾ã›ã‚“"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "自分ã®æ–‡å­—列をクイック翻訳"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "割り当ã¦ã‚‰ã‚ŒãŸæœªè¨³æ–‡å­—列ã¯ã‚ã‚Šã¾ã›ã‚“"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "æ案ã®ãƒ¬ãƒ“ュー"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "æ案ã®å‚ç…§"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "クイック翻訳"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "未訳を表示"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "未訳項目ã¯ã‚ã‚Šã¾ã›ã‚“"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "å…¨ã¦ç¿»è¨³"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "目標㮠ZIP"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "フォルダ㮠ZIP"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF ã®ç”Ÿæˆ"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d 文字列 (%d%%) 失敗"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d å˜èªž (%d%%) 割当済"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d 文字列]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d 語 (%d%%) 翻訳済"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "全プロジェクト"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "全言語"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "マイアカウント"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "マニュアル・ヘルプ"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "ログアウト"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "ログイン"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "登録"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "有効化"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle ロゴ"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "ã“ã® Pootle サーãƒã«ã¤ã„ã¦"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "全目標"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d ファイル"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d ファイル"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d 文字列"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "æ°å"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "翻訳済"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "翻訳率"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "翻訳済å˜èªž"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "ファジー"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "ファジー率"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "ファジーå˜èªž"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "未訳率"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "未訳å˜èªž"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "åˆè¨ˆ"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "å˜èªžè¨ˆ"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "グラフ"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "ソーステキスト"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "ターゲットテキスト"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "コメント"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "ä½ç½®"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "ログイン失敗"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "ログイン画é¢ã«è»¢é€ä¸­..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "ホームページã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ãƒ­ã‚°ã‚¤ãƒ³ã—ã¦ãã ã•ã„"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "個人情報詳細更新"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "管ç†ãƒšãƒ¼ã‚¸ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ãƒ­ã‚°ã‚¤ãƒ³ã—ã¦ãã ã•ã„"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "ホームã«è»¢é€ä¸­..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "pootle ã®ç®¡ç†æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“。"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "表示"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "æ案"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "翻訳"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "査読"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "アーカイブ"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO ファイルã®ã‚³ãƒ³ãƒ‘イル"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "割当"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "\"nobody\" ã‚„ \"default\"ユーザを削除ã§ãã¾ã›ã‚“"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "ã“ã®ç›®æ¨™ã‚’変更ã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’アップロードã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’上書ãã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "ã“ã®æ–°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’アップロードã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ›´æ–°ã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’コミットã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "ã“ã®å‰²å½“を変更ã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "ã“ã®è¨³ã‚’変更ã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "ã“ã®å¤‰æ›´ã‚’æ案ã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "ã“ã®æ案をレビューã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr "%d/%d 翻訳済(未訳 %d, ファジー %d)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "Pootle: %s ã‚’ %s ã«ç¿»è¨³ä¸­: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "原文"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "翻訳"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "æ案をå—諾"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "æ案を拒å¦"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "翻訳者ã®ã‚³ãƒ¡ãƒ³ãƒˆ"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "開発者ã®ã‚³ãƒ¡ãƒ³ãƒˆ"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "関連"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "作業中..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "エラー: 何ã‹å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚"
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "処ç†ã®æœ€å¾Œ"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "インデックスã«æˆ»ã‚‹ã«ã¯ã“ã“をクリックã—ã¦ãã ã•ã„"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "先頭"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "å‰ã® %d 件"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%d 件ã‹ã‚‰ %d 件 (å…¨ %d 件)"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "次㮠%d 件"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "最後"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s ã‚’ãƒã‚§ãƒƒã‚¯ä¸­"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "検索文字列 ('%s') ã«ä¸€è‡´ã™ã‚‹é …ç›®ãŒã‚ã‚Šã¾ã›ã‚“"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "é¸æŠžã—ãŸé …ç›®ã«ã¤ã„ã¦ã€ä¸€é€šã‚Šå®Œäº†ã—ã¾ã—ãŸã€‚"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "å˜æ•°å½¢"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "複数形"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "編集"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "コピー"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "スキップ"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "戻る"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "é€ä¿¡"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "縦拡大"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "縦縮å°"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "複数形 %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr "ã“ã®è¨€èªžã«å¿…è¦ãªè¤‡æ•°å½¢ã®æƒ…å ±ãŒãªã„ãŸã‚ã€ç¿»è¨³ã§ãã¾ã›ã‚“。サイト管ç†è€…ã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。"
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "ç¾åœ¨ã®ç¿»è¨³"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "æ案 %d (%s ã«ã‚ˆã‚‹):"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "æ案 %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s ã«ã‚ˆã‚‹æ案:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "æ案:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "パスワード㯠%d 文字以上ã«ã—ã¦ãã ã•ã„。"
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "パスワードãŒãƒ‘スワード確èªã¨ä¸€è‡´ã—ã¾ã›ã‚“ã§ã—ãŸã€‚"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Pootle ã«ãƒ­ã‚°ã‚¤ãƒ³"
+
+#: users.py:66
+msgid "Username:"
+msgstr "ユーザå:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "パスワード:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "言語:"
+
+#: users.py:71
+msgid "Login"
+msgstr "ログイン"
+
+#: users.py:77
+msgid "Default"
+msgstr "デフォルト"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "登録ã™ã‚‹è©³ç´°ã‚’入力ã—ã¦ãã ã•ã„"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle 登録"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "希望ã™ã‚‹ãƒ¦ãƒ¼ã‚¶å"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "有効㪠email アドレスを入力ã—ã¦ãã ã•ã„"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "フルãƒãƒ¼ãƒ "
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "希望ã™ã‚‹ãƒ‘スワード"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "パスワード確èª"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "確èªã®ãŸã‚ã«ã€ã‚‚ã†ä¸€åº¦ãƒ‘スワードを入力ã—ã¦ãã ã•ã„"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "アカウントを登録"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "有効ã«ã™ã‚‹è©³ç´°ã‚’入力ã—ã¦ãã ã•ã„"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle アカウント有効化"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "有効化コード"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "å—ã‘å–ã£ãŸæœ‰åŠ¹åŒ–コード"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "アカウントを有効化"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "%s 用オプション"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "個人情報詳細"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "翻訳インターフェース設定"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "ユーザインターフェース言語"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "自分ã®ãƒ—ロジェクト"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "自分ã®è¨€èªž"
+
+#: users.py:196
+msgid "Home page"
+msgstr "ホームページ"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "別ã®ã‚½ãƒ¼ã‚¹è¨€èªž"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "ãªã—"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "入力欄ã®é«˜ã• (è¡Œ)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "表示モードã®è¡Œæ•°"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "翻訳モードã®è¡Œæ•°"
+
+#: users.py:307
+msgid "Error"
+msgstr "エラー"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "ユーザを変更ã™ã‚‹ã«ã¯ siteadmin ã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "ユーザåã¯åŠè§’英数ã®ã¿ã§ã€ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆã§å§‹ã‚ã¦ãã ã•ã„"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶åã¯æ—¢ã«ç™»éŒ²ã•ã‚Œã¦ã„ã¾ã™ã€‚\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "実際ã®ãƒ‘スワードã§ã¯ãªãã€ãƒ‘スワードã®ãƒãƒƒã‚·ãƒ¥ã ã‘ã‚’ä¿å­˜ã—ã¾ã™ã€‚"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "登録中ã«å•é¡ŒãŒç™ºç”Ÿã—ãŸã‚‰ã€%s ã«ã”連絡ãã ã•ã„。\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "登録中ã«å•é¡ŒãŒç™ºç”Ÿã—ãŸã‚‰ã€ã‚µã‚¤ãƒˆç®¡ç†è€…ã«ã”連絡ãã ã•ã„。\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "ユーザåãŒæ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚登録済ã¿ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã« e-mail ã‚’é€ä¿¡ã—ã¾ã™ã€‚"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "<a href='%s'>ログイン</a>ã«é€²ã¿ã¾ã™\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Pootle ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’ã“ã® e-mail アドレスã§ä½œæˆã—ã¾ã—ãŸã€‚\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "アカウントを有効ã«ã™ã‚‹ã«ã¯ã€ä»¥ä¸‹ã®ãƒªãƒ³ã‚¯ã‚’クリックã—ã¦ãã ã•ã„。\n"
+
+# \n ã®æ”¹è¡Œã‚³ãƒ¼ãƒ‰ã¯è‹±æ–‡ã©ãŠã‚Šã«å…¥ã‚Œã¦ãŠã„ãŸæ–¹ãŒã„ã„ã¨æ€ã„ã¾ã—ãŸã€‚
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"ã‚ãªãŸã®æœ‰åŠ¹åŒ–コード:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "リンクをãŸã©ã‚Œãªã„å ´åˆã¯ã€æœ‰åŠ¹åŒ–ã®ãƒšãƒ¼ã‚¸ã«ä¸Šè¨˜ã®ã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„。\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+"ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯ã€E-mail アドレスãŒæ­£ã—ã„ã‹ã©ã†ã‹ã‚’確èªã™ã‚‹ãŸã‚ã®ã‚‚ã®ã§ã™ã€‚アカウントを登録ã—ãŸããªã„å ´åˆã¯ã€ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯ç„¡è¦–ã—ã¦ãã ã•ã„。"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"アカウントを作æˆã—ã¾ã—ãŸã€‚ログイン情報ã®è©³ç´°ã¨ã‚¢ã‚¯ãƒ†ã‚£ãƒ™ãƒ¼ã‚·ãƒ§ãƒ³ã‚³ãƒ¼ãƒ‰ãŒãƒ¡ãƒ¼ãƒ«ã•ã‚Œã¾ã™ã€‚ã‚ãªãŸã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ™ãƒ¼ã‚·ãƒ§ãƒ³ã‚³ãƒ¼ãƒ‰ã‚’ <a "
+"href='%s'>アクティベーションページ</a> ã«å…¥åŠ›ã—ã¦ãã ã•ã„。"
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(ã‚ã‚‹ã„ã¯ãƒ¡ãƒ¼ãƒ«ä¸­ã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ™ãƒ¼ã‚·ãƒ§ãƒ³ãƒªãƒ³ã‚¯ã‚’å˜ã«ã‚¯ãƒªãƒƒã‚¯ã—ã¦ãã ã•ã„)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "フルãƒãƒ¼ãƒ "
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "希望ã™ã‚‹ãƒ‘スワード"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "登録済㿠email アドレス"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "登録ページã«è»¢é€ä¸­..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "ログインページã«è»¢é€ä¸­..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "アカウントを有効ã«ã—ã¾ã—ãŸ! ログインページã«è»¢é€ä¸­..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "入力ã—ãŸæœ‰åŠ¹åŒ–情報ãŒé–“é•ã£ã¦ã„ã¾ã™ã€‚"
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "有効化失敗"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "高ã•ã¯æ•°å€¤ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "å¹…ã¯æ•°å€¤ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "表示モードã®è¡¨ç¤ºè¡Œæ•°ã¯æ•°å€¤ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "翻訳モードã®è¡¨ç¤ºè¡Œæ•°ã¯æ•°å€¤ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“"
+
+#~ msgid "Accept"
+#~ msgstr "å—諾"
+
+#~ msgid "Reject"
+#~ msgstr "拒絶"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge 翻訳プロジェクト"
+
+#~ msgid "Broaden"
+#~ msgstr "横拡大"
+
+#~ msgid "Narrow"
+#~ msgstr "横縮å°"
+
+#~ msgid "Reset"
+#~ msgstr "リセット"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "妥当㪠email アドレスãŒå¿…è¦ã§ã™"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "入力欄ã®å¹… (文字)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ka/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ka/jToolkit.po
new file mode 100644
index 0000000..d5ad45e
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ka/jToolkit.po
@@ -0,0 +1,149 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-10-28 00:23+0300\n"
+"Last-Translator: Giasher <giasher@gmail.com>\n"
+"Language-Team: Georgian <www.gia.ge>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 0.10.1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "შესვლრ- %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "áƒáƒ› ქმედების გáƒáƒ£áƒ¥áƒ›áƒ”ბრდრáƒáƒ®áƒáƒšáƒ˜ სეáƒáƒœáƒ¡áƒ˜áƒ¡ დáƒáƒ¬áƒ§áƒ”ბáƒ"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ქმედების დáƒáƒ¡áƒ¢áƒ£áƒ áƒ˜áƒ¡ ნáƒáƒªáƒ•áƒšáƒáƒ“ გáƒáƒ¡áƒ•áƒšáƒ დრსუფთრდáƒáƒ¤áƒ˜áƒ“áƒáƒœ დáƒáƒ¬áƒ§áƒ”ბáƒ"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "პრáƒáƒ’რáƒáƒ›áƒ˜áƒ“áƒáƒœ გáƒáƒ¡áƒ•áƒšáƒ"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "პრáƒáƒ’რáƒáƒ›áƒ˜áƒ“áƒáƒœ გáƒáƒ¡áƒ•áƒšáƒ დრძირეულ პრáƒáƒ’რáƒáƒ›áƒáƒ¨áƒ˜ დáƒáƒ‘რუნებáƒ"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", გთხáƒáƒ•áƒ— შესვლის დáƒáƒ¡áƒ¢áƒ£áƒ áƒ¡"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "შესვლáƒ"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ”:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "პáƒáƒ áƒáƒšáƒ˜:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "ენáƒ:"
+
+#: web/server.py:551
+#: web/server.py:642
+msgid "Select Application"
+msgstr "პრáƒáƒ’რáƒáƒ›áƒ˜áƒ¡ áƒáƒ áƒ©áƒ”ვáƒ"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "გáƒáƒ¡áƒ•áƒšáƒ"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "გáƒáƒ¡áƒ•áƒšáƒ"
+
+#: web/session.py:191
+#: web/session.py:344
+#: web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "შემáƒáƒ¡áƒ£áƒšáƒ˜ ხáƒáƒ áƒ— რáƒáƒ’áƒáƒ áƒª <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "áƒáƒ®áƒáƒšáƒ˜ სეáƒáƒœáƒ¡áƒ˜áƒ¡ დáƒáƒ›áƒáƒ¢áƒ”ბრვერ ხერხდებáƒ"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "გáƒáƒ¡áƒ•áƒšáƒ"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "დáƒáƒ™áƒáƒ•áƒ¨áƒ˜áƒ áƒ”ბულიáƒ"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "გáƒáƒ¡áƒ•áƒšáƒ ძირეული სეáƒáƒœáƒ¡áƒ˜áƒ“áƒáƒœ"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "სáƒáƒ­áƒ˜áƒ áƒáƒ მáƒáƒ›áƒ®áƒ›áƒáƒ áƒ”ბლის áƒáƒœ პáƒáƒ áƒáƒ›áƒ”ტრების მითითებრსერვერის კáƒáƒœáƒ¤áƒ˜áƒ’ურáƒáƒªáƒ˜áƒáƒ¨áƒ˜"
+
+#: web/session.py:321
+#: web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "მáƒáƒ›áƒ®áƒ›áƒáƒ áƒ”ბელი áƒáƒ  áƒáƒ áƒ¡áƒ”ბáƒáƒ‘ს (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "მცდáƒáƒ áƒ˜ სáƒáƒ®áƒ”ლი დáƒ/áƒáƒœ პáƒáƒ áƒáƒšáƒ˜"
+
+#: web/session.py:433
+#: web/session.py:437
+msgid "failed login confirmation"
+msgstr "შეცდáƒáƒ›áƒ რეგისტრáƒáƒªáƒ˜áƒ˜áƒ¡ დáƒáƒ“áƒáƒ¡áƒ¢áƒ£áƒ áƒ”ბისáƒáƒ¡"
+
+#: widgets/form.py:79
+#: widgets/thumbgallery.py:292
+msgid "No"
+msgstr "áƒáƒ áƒ"
+
+#: widgets/form.py:80
+#: widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "დიáƒáƒ®"
+
+#: widgets/thumbgallery.py:233
+#: attachments.py:348
+msgid "remove"
+msgstr "áƒáƒ›áƒáƒ¦áƒ”ბáƒ"
+
+#: widgets/thumbgallery.py:289
+#: attachments.py:322
+msgid "(no attachment)"
+msgstr "(დáƒáƒœáƒáƒ áƒ—ის გáƒáƒ áƒ”შე)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "დáƒáƒœáƒáƒ áƒ—ი მეტისმეტáƒáƒ“ დიდიáƒ"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "áƒáƒ› დáƒáƒœáƒáƒ áƒ—ის áƒáƒ›áƒáƒ¦áƒ”ბáƒ"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "áƒáƒ¦áƒ“გენáƒ"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ეს დáƒáƒœáƒáƒ áƒ—ი áƒáƒ›áƒáƒ¦áƒ”ბულიáƒ. შეგიძლიáƒáƒ— áƒáƒ¦áƒáƒ“გინáƒáƒ—"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "დáƒáƒœáƒáƒ áƒ—ი ფáƒáƒ˜áƒšáƒ˜áƒ¡ მიმáƒáƒ’რებáƒ"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ka/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ka/pootle.po
new file mode 100644
index 0000000..f8efc12
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ka/pootle.po
@@ -0,0 +1,1491 @@
+# Something went wrong here - my translation (word by word) with very minor (and wrong) changes
+# was published by other translator, is it possible to avoid such things?
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-10-28 18:16+0300\n"
+"Last-Translator: Giasher <giasher@gmail.com>\n"
+"Language-Team: Georgian <www.gia.ge>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37
+#: adminpages.py:76
+#: adminpages.py:135
+#: adminpages.py:201
+#: adminpages.py:292
+#: adminpages.py:359
+#: indexpage.py:70
+#: indexpage.py:95
+#: indexpage.py:139
+#: indexpage.py:201
+#: indexpage.py:264
+#: indexpage.py:352
+#: pagelayout.py:74
+#: translatepage.py:108
+#: users.py:63
+#: users.py:118
+#: users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle დემáƒ"
+
+#: adminpages.py:45
+#: adminpages.py:85
+#: adminpages.py:144
+#: adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "თáƒáƒ•áƒ¤áƒ£áƒ áƒªáƒ”ლი"
+
+#: adminpages.py:46
+#: adminpages.py:212
+msgid "Users"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ”ები"
+
+#: adminpages.py:47
+#: adminpages.py:87
+#: indexpage.py:93
+msgid "Languages"
+msgstr "ენები"
+
+#: adminpages.py:48
+#: adminpages.py:146
+#: indexpage.py:94
+msgid "Projects"
+msgstr "პრáƒáƒ”ქტები"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "ძირითáƒáƒ“ი პáƒáƒ áƒáƒ›áƒ”ტრები"
+
+#: adminpages.py:50
+#: users.py:182
+msgid "Option"
+msgstr "პáƒáƒ áƒáƒ›áƒ”ტრები"
+
+#: adminpages.py:51
+#: users.py:183
+msgid "Current value"
+msgstr "მიმდინáƒáƒ áƒ” მნიშვნელáƒáƒ‘áƒ"
+
+#: adminpages.py:52
+#: adminpages.py:88
+#: adminpages.py:147
+#: adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "ცვლილებáƒáƒ—რშენáƒáƒ®áƒ•áƒ"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "სáƒáƒ—áƒáƒ£áƒ áƒ˜"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "áƒáƒ¦áƒ¬áƒ”რილáƒáƒ‘áƒ"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "ძირითáƒáƒ“ი მისáƒáƒ›áƒáƒ áƒ—ი (URL)"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "სáƒáƒ—áƒáƒ გვერდი"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle-ს ენáƒáƒ—რმáƒáƒ áƒ—ვის გვერდი"
+
+#: adminpages.py:86
+#: adminpages.py:145
+#: adminpages.py:211
+msgid "Main admin page"
+msgstr "áƒáƒ“მინისტრáƒáƒ¢áƒáƒ áƒ˜áƒ¡ გვერდი"
+
+#: adminpages.py:92
+#: adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO კáƒáƒ“ი"
+
+#: adminpages.py:93
+#: adminpages.py:152
+#: adminpages.py:218
+#: adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "სრული სáƒáƒ®áƒ”ლი"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(დáƒáƒáƒ›áƒáƒ¢áƒ”თ áƒáƒ¥ ენáƒ)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "სპეცსიმბáƒáƒšáƒáƒ”ბი"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(სპეციáƒáƒšáƒ£áƒ áƒ˜ სიმბáƒáƒšáƒáƒ”ბი)"
+
+#: adminpages.py:96
+#: indexpage.py:224
+msgid "Number of Plurals"
+msgstr "მრáƒáƒ•áƒšáƒáƒ‘ითები"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(მრáƒáƒ•áƒšáƒáƒ‘ითების რáƒáƒáƒ“ენáƒáƒ‘áƒ)"
+
+#: adminpages.py:97
+#: indexpage.py:225
+msgid "Plural Equation"
+msgstr "მრáƒáƒ•áƒšáƒáƒ‘ითი გáƒáƒœáƒ¢áƒáƒšáƒ”ბáƒ"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(მრáƒáƒ•áƒšáƒáƒ‘ითი გáƒáƒœáƒ¢áƒáƒšáƒ”ბáƒ)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "ენის წáƒáƒ¨áƒšáƒ"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113
+#: adminpages.py:181
+#: adminpages.py:245
+#: adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s-ს წáƒáƒ¨áƒšáƒ"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "სტáƒáƒœáƒ“áƒáƒ áƒ¢áƒ£áƒšáƒ˜"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle-ს პრáƒáƒ”ქტთრსáƒáƒ›áƒáƒ áƒ—áƒáƒ•áƒ˜ გვერდი"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "პრáƒáƒ”ქტის კáƒáƒ“ი"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "( დáƒáƒáƒ›áƒáƒ¢áƒ”თ áƒáƒ¥ პრáƒáƒ”ქტი )"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "პრáƒáƒ”ქტის áƒáƒ¦áƒ¬áƒ”რილáƒáƒ‘áƒ"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "( პრáƒáƒ”ქტის áƒáƒ¦áƒ¬áƒ”რილáƒáƒ‘რ)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "შემáƒáƒ¬áƒ›áƒ”ბის სტილი"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "ფáƒáƒ˜áƒšáƒ˜áƒ¡ ტიპი"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO ფáƒáƒ˜áƒšáƒ”ბის შექმნáƒ"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "პრáƒáƒ”ქტის წáƒáƒ¨áƒšáƒ"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle-ს მáƒáƒ›áƒ®áƒ›áƒáƒ áƒ”ბელთრმáƒáƒ áƒ—ვის გვერდი"
+
+#: adminpages.py:217
+#: adminpages.py:376
+#: users.py:121
+#: users.py:157
+msgid "Username"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ”"
+
+#: adminpages.py:219
+#: users.py:403
+msgid "(add full name here)"
+msgstr "( დáƒáƒáƒ›áƒáƒ¢áƒ”თ áƒáƒ¥ სრული სáƒáƒ®áƒ”ლი )"
+
+#: adminpages.py:220
+#: users.py:124
+msgid "Email Address"
+msgstr "ელფáƒáƒ¡áƒ¢áƒ˜áƒ¡ მისáƒáƒ›áƒáƒ áƒ—ი"
+
+#: adminpages.py:220
+#: users.py:406
+msgid "(add email here)"
+msgstr "( დáƒáƒáƒ›áƒáƒ¢áƒ”თ áƒáƒ¥ ელფáƒáƒ¡áƒ¢áƒ )"
+
+#: adminpages.py:221
+#: users.py:130
+#: users.py:188
+msgid "Password"
+msgstr "პáƒáƒ áƒáƒšáƒ˜"
+
+#: adminpages.py:221
+#: users.py:400
+msgid "(add password here)"
+msgstr "(დáƒáƒáƒ›áƒáƒ¢áƒ”თ áƒáƒ¥ პáƒáƒ áƒáƒšáƒ˜)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბული"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "áƒáƒ®áƒáƒšáƒ˜ მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ˜áƒ¡ გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბáƒ"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ˜áƒ¡ áƒáƒ›áƒáƒ¦áƒ”ბáƒ"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "დáƒáƒ‘რუნებრმთáƒáƒ•áƒáƒ  გვერდზე"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "áƒáƒ áƒ¡áƒ”ბული ენები"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "ენების გáƒáƒœáƒáƒ®áƒšáƒ”ბáƒ"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle-ს áƒáƒ“მინისტრირების გვერდი"
+
+#: adminpages.py:285
+#: adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "áƒáƒ  გáƒáƒ¥áƒ•áƒ— áƒáƒ› პრáƒáƒ”ქტის áƒáƒ“მინისტრირების უფლებáƒ."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "გáƒáƒœáƒáƒ®áƒšáƒ”ბრთáƒáƒ áƒ’ებიდáƒáƒœ"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "ენის დáƒáƒ›áƒáƒ¢áƒ”ბáƒ"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle áƒáƒ“მინი: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "პრáƒáƒ”ქტის სáƒáƒ—áƒáƒ გვერდი"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "ვერ ხერხდებრუფლებების მითითებრმáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ˜áƒ¡áƒ—ვის %s - მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ” áƒáƒ  áƒáƒ áƒ¡áƒ”ბáƒáƒ‘ს"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "ეს GNU სტილის პრáƒáƒ”ქტირ(ერთი დáƒáƒ¡áƒ¢áƒ, ფáƒáƒ˜áƒšáƒ”ბი თითáƒáƒ”ული ენისთვის)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "ეს სტáƒáƒœáƒ“áƒáƒ áƒ¢áƒ£áƒšáƒ˜ სტილის პრáƒáƒ”ქტირ(ერთი დáƒáƒ¡áƒ¢áƒ ერთი ენისთვის)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ˜áƒ¡ უფლებები"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(áƒáƒ˜áƒ áƒ©áƒ˜áƒ”თ მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ” დáƒáƒ¡áƒáƒ›áƒáƒ¢áƒ”ბლáƒáƒ“)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "უფლებები"
+
+#: adminpages.py:379
+#: indexpage.py:1008
+msgid "Remove"
+msgstr "áƒáƒ›áƒáƒ¦áƒ”ბáƒ"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "უფლებების გáƒáƒœáƒáƒ®áƒšáƒ”ბáƒ"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Pootle-ს შესáƒáƒ®áƒ”ბ"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> მáƒáƒ áƒ¢áƒ˜áƒ•áƒ˜ ვებ პáƒáƒ áƒ¢áƒáƒšáƒ˜áƒ, რáƒáƒ›áƒ”ლიც "
+"<strong>თáƒáƒ áƒ’მნის</strong> სáƒáƒ¨áƒ£áƒáƒšáƒ”ბáƒáƒ¡ გáƒáƒ«áƒšáƒ”ვთ! ვინáƒáƒ˜áƒ“áƒáƒœ Pootle "
+"<strong>თáƒáƒ•áƒ˜áƒ¡áƒ£áƒ¤áƒáƒšáƒ˜ პრáƒáƒ’რáƒáƒ›áƒáƒ</strong>, შეგიძლიáƒáƒ— მისი ჩáƒáƒ›áƒáƒ¢áƒ•áƒ˜áƒ áƒ—ვრდრ"
+"სáƒáƒ™áƒ£áƒ—რივ მáƒáƒ®áƒ›áƒáƒ áƒ”ბáƒ. áƒáƒ¡áƒ”ვე, ბევრგვáƒáƒ áƒáƒ“ შეგიძლიáƒáƒ— წვლილი შეიტáƒáƒœáƒáƒ— მის "
+"გáƒáƒœáƒ•áƒ˜áƒ—áƒáƒ áƒ”ბáƒáƒ¨áƒ˜ (áƒáƒ áƒáƒ áƒáƒ£áƒªáƒ˜áƒšáƒ”ბელი პრáƒáƒ’რáƒáƒ›áƒ˜áƒ¡áƒ¢áƒ˜ იყáƒáƒ—)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle პრáƒáƒ”ქტს მáƒáƒ¡áƒžáƒ˜áƒœáƒ«áƒšáƒáƒ‘ს <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> სáƒáƒ“áƒáƒª "
+"შეგიძლიáƒáƒ— ინფáƒáƒ áƒ›áƒáƒªáƒ˜áƒ˜áƒ¡ მიღებრპირველწყáƒáƒ áƒ კáƒáƒ“ების, სáƒáƒ¤áƒáƒ¡áƒ¢áƒ ჯგუფების დრáƒ.შ. "
+"შესáƒáƒ®áƒ”ბ."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"სáƒáƒ®áƒ”ლის წáƒáƒ áƒ›áƒáƒ¨áƒáƒ‘რáƒáƒ¡áƒ”თირ- <b>PO</b> <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, თუმცრშესáƒáƒ«áƒšáƒáƒ დáƒáƒ’ჭირდეთ გáƒáƒ”ცნáƒáƒ— <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">áƒáƒ› გვერდსáƒáƒª</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "ვერსიები"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"სáƒáƒ˜áƒ¢áƒ–ე გáƒáƒ›áƒáƒ˜áƒ§áƒ”ნებáƒ:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ˜áƒ¡ გვერდი: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "პáƒáƒ áƒáƒ›áƒ”ტრების შეცვლáƒ"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "áƒáƒ“მინის გვერდი"
+
+#: indexpage.py:137
+#: projects.py:149
+msgid "Administrate"
+msgstr "áƒáƒ“მინისტრირებáƒ"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "სწრáƒáƒ¤áƒ˜ ბმულები"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"გთხáƒáƒ•áƒ— დáƒáƒ¬áƒ™áƒáƒžáƒáƒ— 'პáƒáƒ áƒáƒ›áƒ”ტრების შეცვლáƒ' დრáƒáƒ˜áƒ áƒ©áƒ˜áƒáƒ— რáƒáƒ›áƒ“ენიმე ენრდრპრáƒáƒ”ქტი"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d პრáƒáƒ”ქტი, სáƒáƒ¨áƒ£áƒáƒšáƒáƒ“ თáƒáƒ áƒ’მნილირ%d%%"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205
+#: indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207
+#: indexpage.py:270
+#: pagelayout.py:31
+#: pagelayout.py:171
+msgid "Admin"
+msgstr "áƒáƒ“მინი"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "ენის კáƒáƒ“ი"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "ენის დáƒáƒ¡áƒáƒ®áƒ”ლებáƒ"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d ენáƒ, სáƒáƒ¨áƒ£áƒáƒšáƒáƒ“ თáƒáƒ áƒ’მნილირ%d%%"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "ენáƒ"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: პრáƒáƒ”ქტი - %s, ენრ- %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362
+#: translatepage.py:145
+msgid "Search"
+msgstr "ძიებáƒ"
+
+#: indexpage.py:363
+#: translatepage.py:146
+msgid "Advanced Search"
+msgstr "გáƒáƒ¤áƒáƒ áƒ—áƒáƒ”ბული ძიებáƒ"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "ფáƒáƒ˜áƒšáƒ˜ ვერ áƒáƒ˜áƒ¢áƒ•áƒ˜áƒ áƒ—ებáƒ, ფáƒáƒ˜áƒšáƒ˜ áƒáƒ  მიმáƒáƒ’რებულáƒ"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "შესáƒáƒ«áƒšáƒáƒ მხáƒáƒšáƒáƒ“ PO ფáƒáƒ˜áƒšáƒ”ბის áƒáƒœ მáƒáƒ—ი zip áƒáƒ áƒ¥áƒ˜áƒ•áƒ˜áƒ¡ áƒáƒ¢áƒ•áƒ˜áƒ áƒ—ვáƒ"
+
+#: indexpage.py:535
+#: indexpage.py:538
+#: translatepage.py:237
+#: translatepage.py:240
+msgid "Assign Strings"
+msgstr "სტრიქáƒáƒœáƒ”ბის გáƒáƒœáƒžáƒ˜áƒ áƒáƒ‘ებáƒ"
+
+#: indexpage.py:536
+#: translatepage.py:239
+msgid "Assign Action"
+msgstr "ქმედების გáƒáƒœáƒžáƒ˜áƒ áƒáƒ‘ებáƒ"
+
+#: indexpage.py:537
+#: translatepage.py:238
+msgid "Assign to User"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ”ზე გáƒáƒœáƒžáƒ˜áƒ áƒáƒ‘ებáƒ"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "მიზნები"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "მიზნის სáƒáƒ®áƒ”ლის მითითებáƒ"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "მიზნის დáƒáƒ›áƒáƒ¢áƒ”ბáƒ"
+
+#: indexpage.py:550
+#: indexpage.py:552
+msgid "Upload File"
+msgstr "ფáƒáƒ˜áƒšáƒ˜áƒ¡ áƒáƒ¢áƒ•áƒ˜áƒ áƒ—ვáƒ"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "áƒáƒ¡áƒáƒ¢áƒ•áƒ˜áƒ áƒ—ი ფáƒáƒ˜áƒšáƒ˜áƒ¡ áƒáƒ áƒ©áƒ”ვáƒ"
+
+#. l10n: radio button text
+#: indexpage.py:557
+#: projects.py:141
+msgid "Overwrite"
+msgstr "თáƒáƒ•áƒ–ე გáƒáƒ“áƒáƒ¬áƒ”რáƒ"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "თáƒáƒ•áƒ–ე გáƒáƒ“áƒáƒ¬áƒ”რáƒ, თუ იგივე სáƒáƒ®áƒ”ლის ფáƒáƒ˜áƒšáƒ˜ áƒáƒ áƒ¡áƒ”ბáƒáƒ‘ს"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "გáƒáƒ”რთიáƒáƒœáƒ”ბáƒ"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"áƒáƒ› ფáƒáƒ˜áƒšáƒ˜áƒ¡ მიმდინáƒáƒ áƒ” ფáƒáƒ˜áƒšáƒ—áƒáƒœ შერწყმრდრკáƒáƒœáƒ¤áƒšáƒ˜áƒ¥áƒ¢áƒ”ბის შემáƒáƒ—áƒáƒ•áƒáƒ–ებáƒáƒ“ გáƒáƒ áƒ“áƒáƒ¥áƒ›áƒœáƒ"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "áƒáƒ áƒáƒ მიზáƒáƒœáƒ¨áƒ˜"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ˜áƒ¡ დáƒáƒ›áƒáƒ¢áƒ”ბáƒ"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO ფáƒáƒ˜áƒšáƒ˜"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF ფáƒáƒ˜áƒšáƒ˜"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts ფáƒáƒ˜áƒšáƒ˜"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV ფáƒáƒ˜áƒšáƒ˜"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO ფáƒáƒ˜áƒšáƒ˜"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "გáƒáƒœáƒáƒ®áƒšáƒ”ბáƒ"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760
+#: projects.py:150
+msgid "Commit"
+msgstr "გáƒáƒ’ზáƒáƒ•áƒœáƒ"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "ყველრსტრიქáƒáƒœáƒ˜"
+
+#: indexpage.py:799
+#: pagelayout.py:249
+msgid "Untranslated"
+msgstr "სáƒáƒ—áƒáƒ áƒ’მნი"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "გáƒáƒ£áƒžáƒ˜áƒ áƒáƒ•áƒœáƒ”ბელი"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "გáƒáƒ£áƒžáƒ˜áƒ áƒáƒ•áƒœáƒ”ბელი დრსáƒáƒ—áƒáƒ áƒ’მნი"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "მიზნის დáƒáƒ¡áƒáƒ®áƒ•áƒ"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "მრáƒáƒ•áƒšáƒáƒ‘ითი მáƒáƒœáƒ˜áƒ¨áƒ•áƒœáƒ"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "გáƒáƒžáƒ˜áƒ áƒáƒ•áƒœáƒ”ბრ-"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "რედáƒáƒ¥áƒ¢áƒ˜áƒ áƒ”ბის ფუნქციების ჩვენებáƒ"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "სტáƒáƒ¢áƒ˜áƒ¡áƒ¢áƒ˜áƒ™áƒ˜áƒ¡ ჩვენებáƒ"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "კვáƒáƒšáƒ˜áƒ¡ ჩვენებáƒ"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "კვáƒáƒšáƒ˜áƒ¡ დáƒáƒ›áƒáƒšáƒ•áƒ"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "შემáƒáƒ¬áƒ›áƒ”ბის ჩვენებáƒ"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "შემáƒáƒ¬áƒ›áƒ”ბის დáƒáƒ›áƒáƒšáƒ•áƒ"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "მიზნების ჩვენებáƒ"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "მიზნების დáƒáƒ›áƒáƒšáƒ•áƒ"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "გáƒáƒœáƒžáƒ˜áƒ áƒáƒ‘ების ჩვენებáƒ"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "გáƒáƒœáƒžáƒ˜áƒ áƒáƒ‘ების დáƒáƒ›áƒáƒšáƒ•áƒ"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "ყველრმიზáƒáƒœáƒ˜: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "ჩემი სტრიქáƒáƒœáƒ”ბის თáƒáƒ áƒ’მნáƒ"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "ჩემი სტრიქáƒáƒœáƒ”ბის ჩვენებáƒ"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "თქვენზე სáƒáƒ—áƒáƒ áƒ’მნი áƒáƒ  გáƒáƒœáƒžáƒ˜áƒ áƒáƒ‘ებულáƒ"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "ჩემი სტრიქáƒáƒœáƒ”ბის სწრáƒáƒ¤áƒ˜ თáƒáƒ áƒ’მნáƒ"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "სáƒáƒ—რáƒáƒ’მნი სტრიქáƒáƒœáƒ”ბი თქვენზე áƒáƒ  გáƒáƒœáƒžáƒ˜áƒ áƒáƒ‘ებულáƒ"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "შემáƒáƒ—áƒáƒ•áƒáƒ–ებების დáƒáƒ—ვáƒáƒšáƒ˜áƒ”რებáƒ"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "შემáƒáƒ—áƒáƒ•áƒáƒ–ებების ჩვენებáƒ"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "სწრáƒáƒ¤áƒ˜ თáƒáƒ áƒ’მნáƒ"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "სáƒáƒ—áƒáƒ áƒ’მნის ჩვენებáƒ"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "სáƒáƒ—áƒáƒ áƒ’მნი ელემენტები áƒáƒ áƒáƒ"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "ყველáƒáƒ¡ თáƒáƒ áƒ’მნáƒ"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "მიზნის ZIP ფáƒáƒ˜áƒšáƒ˜"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "დáƒáƒ¡áƒ¢áƒ˜áƒ¡ ZIP ფáƒáƒ˜áƒšáƒ˜"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF-ის შექმნáƒ"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d სტრიქáƒáƒœáƒ˜, (%d%%) წáƒáƒ áƒ£áƒ›áƒáƒ¢áƒ”ბელი"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d სიტყვáƒ, (%d%%) გáƒáƒœáƒžáƒ˜áƒ áƒáƒ‘ებული"
+
+#: indexpage.py:1004
+#: indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d სტრიქáƒáƒœáƒ˜]"
+
+#: indexpage.py:1005
+#: pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d სიტყვáƒ, (%d%%) თáƒáƒ áƒ’მნილი"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "ყველრპრáƒáƒ”ქტი"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "ყველრენáƒ"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "ჩემი áƒáƒœáƒ’áƒáƒ áƒ˜áƒ¨áƒ˜"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "დáƒáƒ™áƒ£áƒ›áƒ”ნტáƒáƒªáƒ˜áƒ დრდáƒáƒ®áƒ›áƒáƒ áƒ”ბáƒ"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "გáƒáƒ¡áƒ•áƒšáƒ"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "შესვლáƒ"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "რეგისტრáƒáƒªáƒ˜áƒ"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბáƒ"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle ლáƒáƒ’áƒ"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Pootle-ს áƒáƒ› სერვერის შესáƒáƒ®áƒ”ბ"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "ყველრმიზáƒáƒœáƒ˜"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d ფáƒáƒ˜áƒšáƒ˜"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d ფáƒáƒ˜áƒšáƒ˜"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d სტრიქáƒáƒœáƒ˜"
+
+#: pagelayout.py:242
+#: users.py:184
+msgid "Name"
+msgstr "სáƒáƒ®áƒ”ლი"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "თáƒáƒ áƒ’მნილი"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "თáƒáƒ áƒ’მნილიáƒ, პრáƒáƒªáƒ”ნტი"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "თáƒáƒ áƒ’მნილი სიტყვები"
+
+#: pagelayout.py:246
+#: translatepage.py:135
+msgid "Fuzzy"
+msgstr "სáƒáƒ”ჭვáƒ"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "სáƒáƒ”ჭვáƒáƒ, პრáƒáƒªáƒ”ნტი"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "სáƒáƒ”ჭვრსიტყვები"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "სáƒáƒ—áƒáƒ áƒ’მნიáƒ, პრáƒáƒªáƒ”ნტი"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "სáƒáƒ—áƒáƒ áƒ’მნი სიტყვები"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "სულ"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "სიტყვები სულ"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "დიáƒáƒ’რáƒáƒ›áƒ"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "პირველწყáƒáƒ áƒ ტექსტი"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "სáƒáƒ›áƒ˜áƒ–ნე ტექსტი"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "შენიშვნები"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "მდებáƒáƒ áƒ”áƒáƒ‘ები"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "შესვლრáƒáƒ  შედგáƒ"
+
+#: pootle.py:349
+#: pootle.py:380
+msgid "Redirecting to login..."
+msgstr "გáƒáƒ“áƒáƒ›áƒ˜áƒ¡áƒáƒ›áƒáƒ áƒ—ებრშესვლáƒáƒ–ე..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "თáƒáƒ•áƒ¤áƒ£áƒ áƒªáƒ”ლზე გáƒáƒ“áƒáƒ¡áƒáƒ¡áƒ•áƒšáƒ”ლáƒáƒ“ შესვლáƒáƒ სáƒáƒ­áƒ˜áƒ áƒ"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "პირáƒáƒ“ი დეტáƒáƒšáƒ”ბი გáƒáƒœáƒáƒ®áƒšáƒ“áƒ"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "áƒáƒ“მინის გვერდზე გáƒáƒ“áƒáƒ¡áƒáƒ¡áƒ•áƒšáƒ”ლáƒáƒ“ შესვლáƒáƒ სáƒáƒ­áƒ˜áƒ áƒ"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "გáƒáƒ“áƒáƒ›áƒ˜áƒ¡áƒáƒ›áƒáƒ áƒ—ებრთáƒáƒ•áƒ¤áƒ£áƒ áƒªáƒ”ლზე..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "თქვენ áƒáƒ  გáƒáƒ’áƒáƒ©áƒœáƒ˜áƒáƒ— pootle-ს áƒáƒ“მინისტრირების უფლებáƒ."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "ჩვენებáƒ"
+
+#: projects.py:139
+#: translatepage.py:678
+msgid "Suggest"
+msgstr "შემáƒáƒ—áƒáƒ•áƒáƒ–ებáƒ"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "თáƒáƒ áƒ’მნáƒ"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "გáƒáƒ“áƒáƒ®áƒ”დვáƒ"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "áƒáƒ áƒ¥áƒ˜áƒ•áƒ˜"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO ფáƒáƒ˜áƒšáƒ”ბის კáƒáƒ›áƒžáƒ˜áƒšáƒ˜áƒ áƒ”ბáƒ"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "მინიჭებáƒ"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "თქვენ áƒáƒ áƒ გáƒáƒ¥áƒ•áƒ— უფლებრáƒáƒ›áƒáƒ˜áƒ¦áƒáƒ— \"nobody\" áƒáƒœ \"default\" მáƒáƒ›áƒ®áƒ›áƒáƒ áƒ”ბელი"
+
+#: projects.py:382
+#: projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "მიზნების შეცვლის უფლებრáƒáƒ¥ áƒáƒ  გáƒáƒ¥áƒ•áƒ—"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "ფáƒáƒ˜áƒšáƒ”ბის áƒáƒ¢áƒ•áƒ˜áƒ áƒ—ვის უფლებრáƒáƒ¥ áƒáƒ  გáƒáƒ¥áƒ•áƒ—"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "ფáƒáƒ˜áƒšáƒ”ბის თáƒáƒ•áƒ–ე გáƒáƒ“áƒáƒ¬áƒ”რის უფლებრáƒáƒ¥ áƒáƒ  გáƒáƒ¥áƒ•áƒ—"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "áƒáƒ®áƒáƒšáƒ˜ ფáƒáƒ˜áƒšáƒ”ბის áƒáƒ¢áƒ•áƒ˜áƒ áƒ—ვის უფლებრáƒáƒ¥ áƒáƒ  გáƒáƒ¥áƒ•áƒ—"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "ფáƒáƒ˜áƒšáƒ”ბის გáƒáƒœáƒáƒ®áƒšáƒ”ბის უფლებრáƒáƒ¥ áƒáƒ  გáƒáƒ¥áƒ•áƒ—"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "ფáƒáƒ˜áƒšáƒ”ბის გáƒáƒ’ზáƒáƒ•áƒœáƒ˜áƒ¡ უფლებრáƒáƒ¥ áƒáƒ  გáƒáƒ¥áƒ•áƒ—"
+
+#: projects.py:977
+#: projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "მინიჭების შეცვლის უფლებრáƒáƒ¥ áƒáƒ  გáƒáƒ¥áƒ•áƒ—"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "თáƒáƒ áƒ’მáƒáƒœáƒ˜áƒ¡ შეცვლის უფლებრáƒáƒ¥ áƒáƒ  გáƒáƒ¥áƒ•áƒ—"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "თáƒáƒ áƒ’მáƒáƒœáƒ˜áƒ¡ შემáƒáƒ—áƒáƒ•áƒáƒ–ების უფლებრáƒáƒ¥ áƒáƒ  გáƒáƒ¥áƒ•áƒ—"
+
+#: projects.py:1245
+#: projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "შემáƒáƒ—áƒáƒ•áƒáƒ–ებების გáƒáƒ“áƒáƒ®áƒ”დვის უფლებრáƒáƒ¥ áƒáƒ  გáƒáƒ¥áƒ•áƒ—"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d ნáƒáƒ—áƒáƒ áƒ’მნი\n"
+"(%d ცáƒáƒ áƒ˜áƒ”ლი, %d სáƒáƒ”ჭვáƒ)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: თáƒáƒ áƒ’მნრ%s - %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "დედáƒáƒœáƒ˜"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "თáƒáƒ áƒ’მáƒáƒœáƒ˜"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "შემáƒáƒ—áƒáƒ•áƒáƒ–ების მიღებáƒ"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "შემáƒáƒ—áƒáƒ•áƒáƒ–ების უáƒáƒ áƒ§áƒáƒ¤áƒ"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "მთáƒáƒ áƒ’მნელის შენიშვნები"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "დეველáƒáƒžáƒ”რის შენიშვნები"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "დáƒáƒ™áƒáƒ•áƒ¨áƒ˜áƒ áƒ”ბული თáƒáƒ áƒ’მáƒáƒœáƒ˜"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "მუშáƒáƒ•áƒ“ებáƒ..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "შეცდáƒáƒ›áƒ: რáƒáƒ¦áƒáƒª áƒáƒ áƒáƒ¡áƒ¬áƒáƒ áƒ˜áƒ."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "პáƒáƒ™áƒ”ტის ბáƒáƒšáƒ"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "დáƒáƒáƒ¬áƒ™áƒáƒžáƒ£áƒœáƒ”თ ინდექსზე დáƒáƒ¡áƒáƒ‘რუნებლáƒáƒ“"
+
+#. l10n: noun (the start)
+#: translatepage.py:187
+#: translatepage.py:190
+msgid "Start"
+msgstr "დáƒáƒ¬áƒ§áƒ”ბáƒ"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194
+#: translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "წინრ%d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "ელემენტები %d - %d, სულ %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204
+#: translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "შემდეგი %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210
+#: translatepage.py:213
+msgid "End"
+msgstr "ბáƒáƒšáƒ"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "შემáƒáƒ¬áƒ›áƒ”ბრ%s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "სáƒáƒ«áƒ˜áƒ”ბრკáƒáƒœáƒ¢áƒ”ქსტის შესáƒáƒ‘áƒáƒ›áƒ˜áƒ¡áƒ˜ ელემენტები ვერ მáƒáƒ˜áƒ«áƒ”ბნრ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "თქვენ ჩáƒáƒ˜áƒáƒ áƒ”თ ყველრშერჩეული ელემენტი"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "მხáƒáƒšáƒáƒ‘ითი"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "მრáƒáƒ•áƒšáƒáƒ‘ითი"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "რედáƒáƒ¥áƒ¢áƒ˜áƒ áƒ”ბáƒ"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "áƒáƒ¡áƒšáƒ˜"
+
+#: translatepage.py:675
+#: translatepage.py:849
+msgid "Skip"
+msgstr "გáƒáƒ›áƒáƒ¢áƒáƒ•áƒ”ბáƒ"
+
+#. l10n: verb
+#: translatepage.py:677
+#: translatepage.py:848
+#: users.py:312
+msgid "Back"
+msgstr "უკáƒáƒœ"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "გáƒáƒ’ზáƒáƒ•áƒœáƒ"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "გáƒáƒ–რდáƒ"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "შეკუმშვáƒ"
+
+#: translatepage.py:706
+#: translatepage.py:800
+#: translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "მრáƒáƒ•áƒšáƒáƒ‘ითი ფáƒáƒ áƒ›áƒ %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"თáƒáƒ áƒ’მნრშეუძლებელიáƒ, რáƒáƒ“გáƒáƒœ ინფáƒáƒ áƒ›áƒáƒªáƒ˜áƒ მრáƒáƒ•áƒšáƒáƒ‘ითის შესáƒáƒ®áƒ”ბ თქვენი ენისთვის "
+"áƒáƒ  გáƒáƒ’ვáƒáƒ©áƒœáƒ˜áƒ. გთხáƒáƒ•áƒ— დáƒáƒ£áƒ™áƒáƒ•áƒ¨áƒ˜áƒ áƒ“ეთ სáƒáƒ˜áƒ¢áƒ˜áƒ¡ áƒáƒ“მინისტრáƒáƒ¢áƒáƒ áƒ¡."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "მიმდინáƒáƒ áƒ” თáƒáƒ áƒ’მáƒáƒœáƒ˜:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "შემáƒáƒ—áƒáƒ•áƒáƒ–ებრ%d - %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "შემáƒáƒ—áƒáƒ•áƒáƒ–ებრ%d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "áƒáƒ•áƒ¢áƒáƒ áƒ˜ %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "შემáƒáƒ—áƒáƒ•áƒáƒ–ებáƒ:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "უნდრმიუთითáƒáƒ— მáƒáƒ áƒ—ებული პáƒáƒ áƒáƒšáƒ˜ áƒáƒ áƒáƒœáƒáƒ™áƒšáƒ”ბ %d სიმბáƒáƒšáƒáƒ—ი."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "პáƒáƒ áƒáƒšáƒ˜ დáƒáƒ¡áƒ¢áƒ£áƒ áƒ¡ áƒáƒ  ემთხვევáƒ."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "შესვლრPootle-ში"
+
+#: users.py:66
+msgid "Username:"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ”:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "პáƒáƒ áƒáƒšáƒ˜:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "ენáƒ:"
+
+#: users.py:71
+msgid "Login"
+msgstr "შესვლáƒ"
+
+#: users.py:77
+msgid "Default"
+msgstr "ნáƒáƒ’ულისხმები"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "გთხáƒáƒ•áƒ— მიუთითáƒáƒ— რეგისტრáƒáƒªáƒ˜áƒ˜áƒ¡ მáƒáƒœáƒáƒªáƒ”მები"
+
+#: users.py:115
+#: users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle რეგისტრáƒáƒªáƒ˜áƒ"
+
+#: users.py:122
+#: users.py:158
+msgid "Your requested username"
+msgstr "თქვენი მáƒáƒ—ხáƒáƒ•áƒœáƒ˜áƒšáƒ˜ მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ˜áƒ¡ სáƒáƒ®áƒ”ლი"
+
+#: users.py:125
+#: users.py:429
+msgid "You must supply a valid email address"
+msgstr "უნდრმიუთითáƒáƒ— მáƒáƒ áƒ—ებული ელფáƒáƒ¡áƒ¢áƒ"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "თქვენი სრული სáƒáƒ®áƒ”ლი"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "თქვენი სáƒáƒ¡áƒ£áƒ áƒ•áƒ”ლი პáƒáƒ áƒáƒšáƒ˜"
+
+#: users.py:133
+#: users.py:189
+msgid "Confirm password"
+msgstr "პáƒáƒ áƒáƒšáƒ˜áƒ¡ დáƒáƒ¡áƒ¢áƒ£áƒ áƒ˜"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "ხელáƒáƒ®áƒšáƒ áƒáƒ™áƒ áƒ˜áƒ¤áƒ”თ პáƒáƒ áƒáƒšáƒ˜ შეცდáƒáƒ›áƒ˜áƒ¡áƒáƒ’áƒáƒœ დáƒáƒ¡áƒáƒ–ღვევáƒáƒ“"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "áƒáƒœáƒ’áƒáƒ áƒ˜áƒ¨áƒ˜áƒ¡ რეგისტრáƒáƒªáƒ˜áƒ"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "გთხáƒáƒ•áƒ— მიუთითáƒáƒ— თქვენი გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბის კáƒáƒ“ი"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle-ს áƒáƒœáƒ’áƒáƒ áƒ˜áƒ¨áƒ˜áƒ¡ გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბáƒ"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბის კáƒáƒ“ი"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "თქვენს მიერ მიღებული გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბის კáƒáƒ“ი"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "áƒáƒœáƒ’áƒáƒ áƒ˜áƒ¨áƒ˜áƒ¡ გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბáƒ"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "პáƒáƒ áƒáƒ›áƒ”ტრები: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "პირáƒáƒ“ი მáƒáƒœáƒáƒªáƒ”მები"
+
+#: users.py:186
+msgid "Email"
+msgstr "ელფáƒáƒ¡áƒ¢áƒ"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "თáƒáƒ áƒ’მნის გáƒáƒ áƒ”მáƒáƒ¡ გáƒáƒ›áƒáƒ áƒ—ვáƒ"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ˜áƒ¡ სáƒáƒ›áƒáƒ›áƒ®áƒ›áƒáƒ áƒ”ბლრგáƒáƒ áƒ¡áƒ˜áƒ¡ ენáƒ"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "ჩემი პრáƒáƒ”ქტები"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "ჩემი ენები"
+
+#: users.py:196
+msgid "Home page"
+msgstr "სáƒáƒ¬áƒ§áƒ˜áƒ¡áƒ˜ გვერდი"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "áƒáƒšáƒ¢áƒ”რნáƒáƒ¢áƒ£áƒšáƒ˜ პირველწყáƒáƒ áƒ ენáƒ"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "áƒáƒ áƒ"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "შეტáƒáƒœáƒ˜áƒ¡ ველის სიმáƒáƒ¦áƒšáƒ” (სტრიქáƒáƒœáƒ”ბი)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "სტრიქáƒáƒœáƒ”ბის რáƒáƒáƒ“ენáƒáƒ‘რჩვენების რეჟიმში"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "სტრიქáƒáƒœáƒ”ბის რáƒáƒáƒ“ენáƒáƒ‘რთáƒáƒ áƒ’მნის რეჟიმში"
+
+#: users.py:307
+msgid "Error"
+msgstr "შეცდáƒáƒ›áƒ"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ”თრშესáƒáƒªáƒ•áƒšáƒ”ლáƒáƒ“ სáƒáƒ˜áƒ¢áƒ˜áƒ¡ áƒáƒ“მინი უნდრიყáƒáƒ—"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ˜áƒ¡ სáƒáƒ®áƒ”ლი უნდრიწყებáƒáƒ“ეს áƒáƒ¡áƒáƒ—ი დრშედგებáƒáƒ“ეს მხáƒáƒšáƒáƒ“ áƒáƒ¡áƒáƒ”ბისრდრ"
+"ციფრებისáƒáƒ’áƒáƒœ."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "თქვენ (áƒáƒœ ვინმე სხვáƒ) ცდილáƒáƒ‘დრრეგისტრáƒáƒªáƒ˜áƒáƒ¡ áƒáƒ› სáƒáƒ®áƒ”ლით.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "ჩვენ ვინáƒáƒ®áƒáƒ•áƒ— áƒáƒ áƒ პáƒáƒ áƒáƒšáƒ¡ áƒáƒ áƒáƒ›áƒ”დ მის ნáƒáƒ™áƒ£áƒ¬áƒ”ბს.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "რეგისტრáƒáƒªáƒ˜áƒ˜áƒ¡ პრáƒáƒ‘ლემების შემთხვევáƒáƒ¨áƒ˜ დáƒáƒ’ვიკáƒáƒ•áƒ¨áƒ˜áƒ áƒ“ით - %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "რეგისტრáƒáƒªáƒ˜áƒ˜áƒ¡ პრáƒáƒ‘ლემების შემთხვევáƒáƒ¨áƒ˜ დáƒáƒ£áƒ™áƒáƒ•áƒ¨áƒ˜áƒ áƒ“ით სáƒáƒ˜áƒ¢áƒ˜áƒ¡ áƒáƒ“მინისტრáƒáƒ¢áƒáƒ áƒ¡ - "
+"%s.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "მáƒáƒœáƒáƒ¬áƒ˜áƒšáƒ˜áƒ¡ სáƒáƒ®áƒ”ლი უკვე áƒáƒ áƒ¡áƒ”ბáƒáƒ‘ს. რეგისტრáƒáƒªáƒ˜áƒ˜áƒ¡ ელფáƒáƒ¡áƒ¢áƒ˜áƒ¡ მისáƒáƒ›áƒáƒ áƒ—ზე გáƒáƒ˜áƒ’ზáƒáƒ•áƒœáƒ”ბრ"
+"წერილი.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "გáƒáƒ“áƒáƒ¡áƒ•áƒšáƒ გვერდზე <a href='%s'>შესვლáƒ</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "შეიქმნრPootle-ს áƒáƒœáƒ’áƒáƒ áƒ˜áƒ¨áƒ˜ ელფáƒáƒ¡áƒ¢áƒ˜áƒ¡ áƒáƒ› მისáƒáƒ›áƒáƒ áƒ—ის გáƒáƒ›áƒáƒ§áƒ”ნებით.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "თქვენი áƒáƒœáƒ’áƒáƒ áƒ˜áƒ¨áƒ˜áƒ¡ გáƒáƒ¡áƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბლáƒáƒ“ მიჰყევით áƒáƒ› ბმულს:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"თქვენი გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბის კáƒáƒ“იáƒ:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "თუ áƒáƒ› ბმულზე გáƒáƒ“áƒáƒ¡áƒ•áƒšáƒáƒ¡ ვერ áƒáƒ®áƒ”რხებთ, მიუთითეთ ზემáƒáƒ—მáƒáƒ§áƒ•áƒáƒœáƒ˜áƒšáƒ˜ კáƒáƒ“ი "
+"გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბის გვერდზე.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "გáƒáƒ›áƒáƒ’ზáƒáƒ•áƒœáƒ˜áƒšáƒ˜áƒ წერილი თქვენი ელფáƒáƒ¡áƒ¢áƒ˜áƒ¡ მისáƒáƒ›áƒáƒ áƒ—ის გáƒáƒ“áƒáƒ¡áƒáƒ›áƒáƒ¬áƒ›áƒ”ბლáƒáƒ“. თუ "
+"áƒáƒœáƒ’áƒáƒ áƒ˜áƒ¨áƒ˜áƒ¡ რეგისტრáƒáƒªáƒ˜áƒ áƒáƒ  გსურთ, უბრáƒáƒšáƒáƒ“ ნუ უპáƒáƒ¡áƒ£áƒ®áƒ”ბთ წერილს.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"áƒáƒœáƒ’áƒáƒ áƒ˜áƒ¨áƒ˜ შეიქმნáƒ. გáƒáƒ›áƒáƒ’ეგზáƒáƒ•áƒœáƒ”ბáƒáƒ— შესვლისთვის სáƒáƒ­áƒ˜áƒ áƒ მáƒáƒœáƒáƒªáƒ”მები დრ"
+"გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბის კáƒáƒ“ი. გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბის კáƒáƒ“ი მიუთითეთ <a href='%s'>გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბის "
+"გვერდზე</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(áƒáƒœ უბრáƒáƒšáƒáƒ“ დáƒáƒ¬áƒ™áƒáƒžáƒ”თ გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბის ბმულზე წერილში)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "თქვენი სáƒáƒ®áƒ”ლიáƒ: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "თქვენი პáƒáƒ áƒáƒšáƒ˜áƒ: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "თქვენი რეგისტრáƒáƒªáƒ˜áƒ˜áƒ¡ ელფáƒáƒ¡áƒ¢áƒ˜áƒ¡ მისáƒáƒ›áƒáƒ áƒ—იáƒ: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "გáƒáƒ“áƒáƒ¡áƒ•áƒšáƒ რეგისტრáƒáƒªáƒ˜áƒ˜áƒ¡ გვერდზე..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "გáƒáƒ“áƒáƒ¡áƒ•áƒšáƒ შესვლის გვერდზე..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "თქვენი áƒáƒœáƒ’áƒáƒ áƒ˜áƒ¨áƒ˜ გáƒáƒáƒ¥áƒ¢áƒ˜áƒ£áƒ áƒ“áƒ! გáƒáƒ“áƒáƒ›áƒ˜áƒ¡áƒáƒ›áƒáƒ áƒ—ებრშესვლáƒáƒ–ე..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბის მáƒáƒœáƒáƒªáƒ”მები მცდáƒáƒ áƒ˜áƒ."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "გáƒáƒáƒ¥áƒ¢áƒ˜áƒ•áƒ”ბრáƒáƒ  შედგáƒ"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "შეტáƒáƒœáƒ˜áƒ¡ ველის სიმáƒáƒ¦áƒšáƒ” რიცხვი უნდრიყáƒáƒ¡"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "შეტáƒáƒœáƒ˜áƒ¡ ველის სიმáƒáƒ¦áƒšáƒ” რიცხვი უნდრიყáƒáƒ¡"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "სტრიქáƒáƒœáƒ”ბის რáƒáƒáƒ“ენáƒáƒ‘რჩვენების რეჟიმში რიცხვი უნდრიყáƒáƒ¡"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "სტრიქáƒáƒœáƒ”ბის რáƒáƒáƒ“ენáƒáƒ‘რთáƒáƒ áƒ’მნის რეჟიმში რიცხვი უნდრიყáƒáƒ¡"
+
+#~ msgid "Accept"
+#~ msgstr "მიღებáƒ"
+
+#~ msgid "Reject"
+#~ msgstr "უáƒáƒ áƒ§áƒáƒ¤áƒ"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge თრáƒáƒ’მნის პრáƒáƒ”ქტი"
+
+#~ msgid "Broaden"
+#~ msgstr "ფáƒáƒ áƒ—áƒ"
+
+#~ msgid "Narrow"
+#~ msgstr "ვიწრáƒ"
+
+#~ msgid "Reset"
+#~ msgstr "áƒáƒ¦áƒ“გენáƒ"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "ელფáƒáƒ¡áƒ¢áƒ˜áƒ¡ მისáƒáƒ›áƒáƒ áƒ—ი რეáƒáƒšáƒ£áƒ áƒ˜ უნდრიყáƒáƒ¡"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "შეტáƒáƒœáƒ˜áƒ¡ ველის სიგáƒáƒœáƒ” (სიმბáƒáƒšáƒáƒ”ბი)"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/kg/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/kg/jToolkit.po
new file mode 100644
index 0000000..8e6ab42
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/kg/jToolkit.po
@@ -0,0 +1,140 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-11-20 23:58+0100\n"
+"Last-Translator: Nsiangani Kusimbiko <kibavuidi.nsiangani@free.fr>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.10.1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "wizidi tuka mu %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "yambula salu kiokio ye kota mu velumbu kia mpa"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ku tambula salu kiokio ko, kansi vayika ye yantika diaka"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "sisa lusalulu"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "sisa lusalulu yoyo ye vutuka kua mbuta lusalulu"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "kotele kua ku e?"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Nkotolo"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "zina"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "mvovo nsabi:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "ndinga"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "sola lusalulu"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "vayika"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Manisa"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "Kotele, nkumbu: <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "n'a pas pu ajouter une nouvelle session"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "vayikidi"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "kotele"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "mbuta velumbu sisidi yo"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "fueti sola basadi ovo venkadilu zau ku nsingik'a vesadi."
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "(%r) kenani ko"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "zina/mvovo nsabi kena ya mbote ko"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "Échec de la confirmation du Login"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "nkatu"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "inga"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "katula"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ka kima ko)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "kima kia kinene kibeni"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "katula kima kiokio"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "yantika diaka"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "kima kiokio vunzamene, fina fulu kiku mu vutukila kio"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "kotesa konso kima"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/kg/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/kg/pootle.po
new file mode 100644
index 0000000..a06d17c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/kg/pootle.po
@@ -0,0 +1,1387 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2006-11-21 00:12+0100\n"
+"Last-Translator: Nsiangani Kusimbiko <kibavuidi.nsiangani@free.fr>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.10.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "bisadi"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "ndinga"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "ngindu"
+
+#: adminpages.py:49
+#, fuzzy
+msgid "General options"
+msgstr "minsolo"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "nsola"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "ntalu bubu"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "lunda nsobolo"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "mbiekolo"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "mafiuma"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "kunduve"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "nzove"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "vuse ki nsadia ndinga muu potele"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+#, fuzzy
+msgid "Main admin page"
+msgstr "mbuta vusea ntadi"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "zina mu iso"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "nkumbu ya mvimba"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(kotesa ndinga kuku)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "ma sono mia nsisi"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(ma sono ma nsisi)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+#, fuzzy
+msgid "Remove Language"
+msgstr "katula ndinga"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "katula %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "mpamba"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "vuse va potele mu lunda zingindu"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "zilua ngindu"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(yikila ngindu kuku)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "nsongolo a ngindu"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(nsongolo za ngindu)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "mvuatua luludiki"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "tunga zivekaya za mo"
+
+#: adminpages.py:158
+#, fuzzy
+msgid "Remove Project"
+msgstr "katula ngindu"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "vuse kia lunda basadi mu potele"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(yikila nkumbu a mvimba kuku)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "nkuve"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(yikila nkuve kuku)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "mvoki"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(yikila mvoki kuku)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+#, fuzzy
+msgid "Remove User"
+msgstr "katula %s"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "vutuka mu mbuta nsove"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "zindinga za zayakana"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+#, fuzzy
+msgid "Pootle Admin: %s"
+msgstr "ntadi a potele:%s %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "kuena ye luve mu soba ngindu yoyo ko."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "soba landila konso fuani"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "yikila konso ndinga"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "ntadi a potele:%s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "nzovea ngindu"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"ka mpuasika mu vana luve kua %s ko, kadi mu potele kienina ka sadi ye nkumbu "
+"%s ko."
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "vusea ntadi"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Lunda"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+#, fuzzy
+msgid "Language Code"
+msgstr "ndinga"
+
+#: indexpage.py:222
+#, fuzzy
+msgid "Language Name"
+msgstr "ndinga"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "ndinga"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "zoka"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Tambula"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+#, fuzzy
+msgid "Untranslated"
+msgstr "Bungula"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+#, fuzzy
+msgid "All projects"
+msgstr "ngindu"
+
+#: pagelayout.py:29
+#, fuzzy
+msgid "All languages"
+msgstr "ndinga"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr ""
+
+#: pagelayout.py:35
+#, fuzzy
+msgid "Log in"
+msgstr "nkotololo"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "Bungula"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+#, fuzzy
+msgid "Total"
+msgstr "mbiekolo"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "kuena ye luve mu lunda potele ko"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Mbonokono"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Longa"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Bungula"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Songika"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Suekolo"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Ku lendi katula \"nobody\" ye \"default\" ko"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "ukondolo luve mu soba mambu ma fulu eki"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Eku ukondolo luve mu nata vekaya za ku"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "Eku ukondolo luve mu tambula nsobolo"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Eku ukondolo luve mu nata vekaya za mpa za ku "
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Eku ukondolo luve mu soba vekaya "
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Eku ukondolo luve mu tambula nsobolo"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Eku ukondolo luve mu soba bifuanisu"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Eku ukondolo luve mu soba nsekoki"
+
+#: projects.py:1229
+#, fuzzy
+msgid "You do not have rights to suggest changes here"
+msgstr "ukondolo luve mu soba mambu ma fulu eki"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "za nkulu"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "mu nding'a ku"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "mfoko"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "fina fulu eki mu vutuka mu ngiantukulu"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "ngiantukulu"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "yilutidi"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "meti landa"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "mfoko"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+#, fuzzy
+msgid "Current Translation:"
+msgstr "ntalu bubu"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+#, fuzzy
+msgid "Password:"
+msgstr "mvoki"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "ndinga"
+
+#: users.py:71
+msgid "Login"
+msgstr "nkotololo"
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "ndinga"
+
+#: users.py:196
+msgid "Home page"
+msgstr "vuse diantete"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "tambula"
+
+#~ msgid "Reject"
+#~ msgstr "katula"
+
+#, fuzzy
+#~ msgid "WordForge Translation Project"
+#~ msgstr "ntalu bubu"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "vuse kia ntadia potele"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/km/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/km/jToolkit.po
new file mode 100644
index 0000000..0a0787d
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/km/jToolkit.po
@@ -0,0 +1,144 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-11-26 02:47+0000\n"
+"Last-Translator: Sou Sovichea <chhit@chhit.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "ចូល​ដើម្បី  %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ចូល"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "ឈ្មោះអ្នកប្រើ"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "ពាក្យ​សម្ងាážáŸ‹"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "ភាសា"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "ជ្រើសកម្មវិធី"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "បោះបង់"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "ចាកចáŸáž‰"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "មិនអាចបន្ážáŸ‚មសមáŸáž™ážáŸ’មី"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "បានបោះបង់"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "បានភ្ជាប់"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "បានចáŸáž‰áž–ីមáŸážŸáž˜áŸáž™"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ឈ្មោះ​អ្នក​ប្រើរឹពាក្យ​សម្ងាážáŸ‹áž˜áž·áž“​ážáŸ’រឹមážáŸ’រូវ"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr ""
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr ""
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr ""
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+msgid "restore"
+msgstr ""
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/km/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/km/pootle.po
new file mode 100644
index 0000000..4401715
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/km/pootle.po
@@ -0,0 +1,1360 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-07-30 04:33+0200\n"
+"Last-Translator: hok kakada <hokkakada@khmeros.info>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr ""
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr ""
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr ""
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr ""
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr ""
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr ""
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "សរសáŸážšáž‡áž¶áž“់លើ"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+#, fuzzy
+msgid "Untranslated"
+msgstr "បកប្រែ"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d ពាក្យ (%d%%) ážáŸ’រូវ​បាន​ផ្ដល់​ážáž˜áŸ’លៃ"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d ពាក្យ (%d%%) ážáŸ’រូវ​បាន​ផ្ដល់​ážáž˜áŸ’លៃ"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr ""
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "បកប្រែ"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "មើល"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "ផ្ដល់​យោបល់"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "បកប្រែ"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "រំលឹក​ឡើងវិញ"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "ទុក​ក្នុង​បáŸážŽáŸ’ណសារ"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "ចងក្រង​ឯកសារ PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "ផ្ទáŸážšâ€‹ážáž˜áŸ’លៃ"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "អ្នក​មិន​អាច​យក​អ្នក​ប្រើ​ \"nobody\" ឬ \"default\" áž…áŸáž‰â€‹áž”ាន​ទáŸ"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "អ្នក​មិន​មាន​សិទ្ធ​ផ្លាស់​ប្ដូរ​គោលដៅ​នៅ​ទី​នáŸáŸ‡â€‹áž‘áŸ"
+
+#: projects.py:510
+#, fuzzy
+msgid "You do not have rights to upload files here"
+msgstr "អ្នក​មិន​មាន​សិទ្ធ​ដាក់​ស្នើ​ឯកសារ​នៅ​ទី​នáŸáŸ‡â€‹áž‘áŸ"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "អ្នក​មិន​មាន​សិទ្ធ​ដាក់​ស្នើ​ឯកសារ​នៅ​ទី​នáŸáŸ‡â€‹áž‘áŸ"
+
+#: projects.py:515
+#, fuzzy
+msgid "You do not have rights to upload new files here"
+msgstr "អ្នក​មិន​មាន​សិទ្ធ​ដាក់​ស្នើ​ឯកសារ​នៅ​ទី​នáŸáŸ‡â€‹áž‘áŸ"
+
+#: projects.py:524
+#, fuzzy
+msgid "You do not have rights to update files here"
+msgstr "អ្នក​មិន​មាន​សិទ្ធ​ដាក់​ស្នើ​ឯកសារ​នៅ​ទី​នáŸáŸ‡â€‹áž‘áŸ"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "អ្នក​មិន​មាន​សិទ្ធ​ដាក់​ស្នើ​ឯកសារ​នៅ​ទី​នáŸáŸ‡â€‹áž‘áŸ"
+
+#: projects.py:977 projects.py:1019
+#, fuzzy
+msgid "You do not have rights to alter assignments here"
+msgstr "អ្នក​មិន​មាន​សិទ្ធ​ផ្លាស់​ប្ដូរ​គោលដៅ​នៅ​ទី​នáŸáŸ‡â€‹áž‘áŸ"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+#, fuzzy
+msgid "You do not have rights to suggest changes here"
+msgstr "អ្នក​មិន​មាន​សិទ្ធ​ផ្លាស់​ប្ដូរ​គោលដៅ​នៅ​ទី​នáŸáŸ‡â€‹áž‘áŸ"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+msgid "Password:"
+msgstr ""
+
+#: users.py:69
+msgid "Language:"
+msgstr ""
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+msgid "My Languages"
+msgstr ""
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/kn/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/kn/jToolkit.po
new file mode 100644
index 0000000..f3c374f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/kn/jToolkit.po
@@ -0,0 +1,146 @@
+# translation of jToolkit.po to Shankar Gowda MBN
+# Shankar <Shankar.Gowda@Sun.COM>, 2008.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+msgid ""
+msgstr ""
+"Project-Id-Version: jToolkit\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-11-12 15:26+0000\n"
+"Last-Translator: Shankar Gowda MBN <Shankar.Gowda@Sun.COM>\n"
+"Language-Team: Shankar Gowda MBN <kn@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "ಸಂಪರà³à²• ಪಡೆ %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ಈ ಕಾರà³à²¯à²µà²¨à³à²¨à³ ರದà³à²¦à³à²®à²¾à²¡à²¿ ಮತà³à²¤à³ ಹೊಸ ಸಮಾವೇಶವನà³à²¨à³ ಲಾಗೠಇನೠಮೂಲಕ ಪಡೆಯಿರಿ"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"ನಿಮà³à²® ಕಾರà³à²¯à²µà²¨à³à²¨à³ ನಿರà³à²¦à²¿à²·à³à²Ÿà²ªà²¡à²¿à²¸à³à²µ ಬದಲà³, ಲಾಗೠಔಟೠಹಾಗಿ ಮತà³à²¤à³Šà²‚ಮೆ ಲಾಗೠಇನೠಹಾಗಿ "
+"ಪà³à²¨à²ƒ ಕಾರà³à²¯à²¾à²°à²‚ಭಮಾಡà³"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "ಅನà³à²µà²¯à²µà²¨à³à²¨à³ ನಿರà³à²—ಮಿಸà³"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "ಈ ಅನà³à²µà²¯à²¦à²¿à²‚ದ ನಿರà³à²—ಮಿಸಿ ಮತà³à²¤à³ ಪà³à²¨à²ƒ ಪಿತೃಅನà³à²µà²¯à²•à³à²•à³† ಹಿಂತಿರà³à²—à³"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", ಸಂಪರà³à²• ಪಡೆಯನà³à²¨à³ ದೃಢಪಡಿಸà³"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ಸಂಪರà³à²• ಪಡೆ"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "ಬಳಕೆದಾರನ ಹೆಸರೠ:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "ಪà³à²°à²µà³‡à²¶ ಪದ :"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "ಭಾಷೆ :"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "ಅನà³à²µà²¯à²µà²¨à³à²¨à³ ಆಯà³à²•à³†à²®à²¾à²¡à³"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "ಸಂಪರà³à²• ತೊರೆ"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "ನಿರà³à²—ಮಿಸà³"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "ನೀವೠ<b>%s</b>ನಾಗಿ ಲಾಗೠಇನೠಆಗಿದà³à²¦à³€à²°à²¿"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "ನಿಮà³à²® ಸಮಾವೇಶವನà³à²¨à³ ಸೇರಿಸಲಾಗಲà³à²²à²¿à²²"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "ಲಾಗೠಔಟà³"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "ಸಂಪರà³à²•à²¦à²²à³à²²à²¿à²¦à³†"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "ಕಂಪà³à²¯à³‚ಟರೠಕà³à²°à²®à²µà²¿à²§à²¿à²¯à²¿à²‚ದ ನಿರà³à²—ಮಿಸಿದೆ"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"ಅಗತà³à²¯ ಬಲಕೆದರನ ಸೂತà³à²°à²—ಳನà³à²¨à³‚ ನಿರà³à²®à²¾à²£à²®à²¾à²¡à³ ಗಣಕಯಂತà³à²°à²¦ ಗà³à²°à²¾à²¹à²• ಸಮಗà³à²°à²¾à²•à³ƒà²¤à²¿à²¯à²¨à³à²¨à³ ನೋಡà³"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "ಬಲಕೆದರನ ಅಸà³à²¤à²¿à²¤à³à²µà²¦à²²à³à²²à²¿ ಇಲà³à²² (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ನಿಶà³à²¶à²•à³à²¤ ಬಲಕೆದರನ ಹೆಸರೠಮತà³à²¤à³/ಅತವ ಸಂಕೇತಪದ"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "ಲಾಗೠಇನೠನಿರà³à²¦à²¿à²·à³à²Ÿà²ªà²¦à²¿à²¸à²²à²¾à²—ಲà³à²²à²¿à²²"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "ಇಲà³à²²"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "ಹೌದà³"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "ತೆಗೆ"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ಲಗತà³à²¤à²¿à²¸à²¿à²²à³à²² )"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "ಲಗತà³à²¤à²¿à²¸à²²à³ ತà³à²‚ಬ ದೊಡà³à²¡à²¦à³"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ಲಗತà³à²¤à²¿à²¸à²¿à²¦ ಕಡಿತವನà³à²¨à³ ತೆಗೆದೠಹಾಕà³"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "ಪà³à²¨à²ƒà²¸à³à²¥à²¾à²ªà²¨à³†"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ಈ ಲಗತà³à²¤à²¿à²¸à²¿à²¦ ಕಡಿತವೠತೆಗೆದೠಹಾಕಿದೆ, ಪà³à²¨à²ƒà²¸à³à²¥à²¾à²ªà²¨à³† ಮಾಡಲೠಇಲà³à²²à²¿ ಕà³à²²à²¿à²•à³ ಮಾಡಿ"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ಕಡಿತವನà³à²¨à³ ಲಗತà³à²¤à²¿à²¸à³"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/kn/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/kn/pootle.po
new file mode 100644
index 0000000..c770e2e
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/kn/pootle.po
@@ -0,0 +1,1392 @@
+# translation of pootle.po to Shankar Gowda MBN
+# Shankar <Shankar.Gowda@Sun.COM>, 2008.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+msgid ""
+msgstr ""
+"Project-Id-Version: pootle\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-11-12 15:41+0000\n"
+"Last-Translator: Shankar Gowda MBN <Shankar.Gowda@Sun.COM>\n"
+"Language-Team: Shankar Gowda MBN <kn@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "ಪà³à²Ÿà²²à³ ನ ಡೆಮೋ"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "ನೆಲೆ"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "ಬಳಕೆದಾರರà³"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "ಭಾಷೆಗಳà³"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "ಯೇಜನೆಗಳà³"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "ಸಾಮಾನà³à²¯ ಆಯಿಕೆಗಳà³"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "ಆಯಿಕೆ"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "ಚಾಲà³à²¤à²¿ ಮೌಲà³à²¯"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "ಬದಲಾವಣೆಯನà³à²¨à³ ಉಳಿಸà³"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "ಶೀರà³à²·à²¿à²•à³†"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "ವರà³à²£à²¨à³†"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "ಆಧಾರದ ಯೠಆರೠಎಲೠ'URL'"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "ನೆಲೆಯ ಪà³à²Ÿ"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "ಭಾಷೆಗಳà³"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "ಮà³à²–à³à²¯ ನಿರà³à²µà²¾à²¹à²•à²¨ ಪà³à²Ÿ"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ಮಾಹಿತಿ ವಿನಿಮಯಕà³à²•à²¾à²—ಿ ಅಮೆರಿಕದ ಶಿಷà³à²Ÿ ಸಂಕೇತ ಸಂಹಿತೆ"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "ಪೂರà³à²£ ಹೆಸರà³"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(ಇಲà³à²²à²¿ ನಮà³à²® ಭಾಷೆಯನà³à²¨à³ ಸೇರಿಸಿ)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "ವಿಶೇಷ ಅಕà³à²·à²°à²—ಳà³"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(ವಿಶೇಷ ಅಕà³à²·à²°à²—ಳà³)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "ಬಹà³à²µà²šà²¨à²—ಳ ಸಂಖà³à²¯à³†,"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(ಬಹà³à²µà²šà²¨à²—ಳ ಸಂಖà³à²¯à³†,)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "ಬಹà³à²µà²šà²¨à²¦ ಸಮೀಕರಣ"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(ಬಹà³à²µà²šà²¨à²¦ ಸಮೀಕರಣ)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "ಭಾಷೆಯನà³à²¨à³ ತೆಗೆದà³à²¹à²¾à²•à³"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "ತೆಗೆದà³à²¹à²¾à²•à³ %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "ಗà³à²°à²¾à²‚ಥಿಕ"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "ನಿರà³à²µà²¾à²¹à²•à²¨ ಪà³à²Ÿà²²à³ ಪà³à²Ÿ"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "ಯೇಜನೆಯ ಸಂಖೆ"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(ಇಲà³à²²à²¿ ನಮà³à²® ಯೇಜನೆಯನೆನà³à²¨à³ ಸೇರಿಸಿ)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "ಯೇಜನೆಯ ವರà³à²£à²¨à³†"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(ಯೇಜನೆಯ ವರà³à²£à²¨à³†)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr " ಶೈಲಿಯ ತಪಾಸಣೆ"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "ಕಡಿತದ ವರà³à²—"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "à²à²‚ ಓ 'MO' ಕಡಿತಗಳನà³à²¨à³ ರಚಿಸà³"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "ತೆಗೆದà³à²¹à²¾à²•à³"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "ನಿರà³à²µà²¾à²¹à²•à²¨ ಪà³à²Ÿà²²à³ ಪà³à²Ÿ"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "ಬಳಕೆದಾರನ ಹೆಸರà³"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(ಇಲà³à²²à²¿ ನಮà³à²® ಪೂರà³à²£ ಹೆಸರà³à²¨à³à²¨à³ ಸೇರಿಸಿ)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "ವಿದà³à²¯à³à²¨à³à²®à²¾à²® ಅಂಚೆಯ ವಿಳಾಸ"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(ಇಲà³à²²à²¿ ನಮà³à²® ವಿದà³à²¯à³à²¨à³à²®à²¾à²® ಅಂಚೆಯನà³à²¨à³ ಸೇರಿಸಿ)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "ಸಂಕೇತ ಪದ"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(ಇಲà³à²²à²¿ ನಮà³à²® ಸಂಕೇತ ಪದವನà³à²¨à³ ಸೇರಿಸಿ)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "ಸಕà³à²°à²¿à²¯à²µà²¾à²—ಿದೆ"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "ಹೂಸ ಬಳಕೆದಾರನà³à²¨à³ ಸಕà³à²°à²¿à²¯à²—ೊಳಿಸà³"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "ಬಳಕೆದಾರನà³à²¨à³ ತೆಗೆದà³à²¹à²¾à²•à³"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr " ಮà³à²–à³à²¯ ಪà³à²Ÿ"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "ಅಸà³à²¤à²¿à²¤à³à²µà²¦à²²à³à²²à²¿à²°à³à²µ ಭಾಷೆಗಳà³"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "ಭಾಷೆಗಳà³"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "ನಿರà³à²µà²¾à²¹à²•à²¨ ಪà³à²Ÿà²²à³ : %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "ನಮà³à²®à²²à³à²²à²¿ ಪà³à²Ÿà²²à³ ನ ನಿರà³à²µà²¹à²£à³†à²—ೆ ಹಕà³à²•à³à²—ಿಲà³à²²."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "ಭಾಷೆಯನà³à²¨à³ ಸೇರಿಸà³"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "ನಿರà³à²µà²¾à²¹à²•à²¨ ಪà³à²Ÿà²²à³: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "ಯೇಜನೆಗೆ ಸಭಂದಪಟà³à²Ÿ ನೆಲೆಯ ಪà³à²Ÿ"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "ಬಲಕೆದರ %s ನ ಹಕà³à²•à²¨à³à²¨à³"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"ಇದೠಜಿ à²à²¨à³ ಯೠ'GNU' ಯೇಜನೆಯ ಪದà³à²§à²¤à²¿ (ಒಂದೠಕಡತಕೋಶದಲà³à²²à²¿ ಭಾಷೆಗೆ ಸಂಭಾಪಟà³à²Ÿ "
+"ದಸà³à²¤à²¾à²µà³‡à²œà³à²—ಳà³)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "ಇದೠಪà³à²°à²®à²¾à²£ ಯೇಜನೆಯ ಪದà³à²§à²¤à²¿ (ಒಂದೠಕಡತಕೋಶದಲà³à²²à²¿ ತಲಾ ಒಂದೠಭಾಷೆ)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "ಬಲಕೆದರನ ಅನà³à²®à²¤à²¿à²—ಳà³"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(ಬಲಕೆದರನನà³à²¨à³ ಸೇರಿಸà³à²²à³ ಆಯà³à²•à³†à²®à²¾à²¡à²¿)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "ಹಕà³à²•à³à²—ಳà³"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "ತೆಗೆ"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "ಹಕà³à²•à³à²—ಳ ಬದಲಾವಣೆ"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "ಪೂಟಲೠಬಗà³à²—ೆ"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>ಪೂಟಲà³</strong>ಪೋರà³à²Ÿà²²à³ ಜಾಲವà³<strong>ಭಾಷಾಂತರಿಸಲà³</strong>ಸಹಾಯ "
+"ಮಾಡà³à²¤à³à²¤à²¦à³†! <strong>ಪೂಟಲà³</strong><strong>ಸà³à²µà²¤à²‚ತà³à²° "
+"ತಂತà³à²°à²¾à²‚ಶವಾದà³à²¦à²°à²¿à²‚ದ</strong>, ನೀವೠಸà³à²µà²¤à²‚ತà³à²°à²µà²¾à²—ಿ ದೌನೠಲೋಡೠ'download' ಮಾಡಬà³à²¦à³ "
+"ಮತà³à²¤à³ ನಿಮà³à²® ಇಷà³à²Ÿà²¦à²‚ತೆ ಪà³à²°à²¤à²¿à²®à²¡à²¿ ರಚಿಸಬಹà³à²¦à³. ನೀವೠನಮಗೆ ಯಲà³à²²à²¾à²¤à²°à²¦ ಸಹಾಯವೂ "
+"ಮಾಡಬಹà³à²¦à²¾à²—ಿದೆ."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"ಪà³à²Ÿà²²à³ ಯೋಜನೆಯೠರಚಿಸà³à²²à²¾à²—ಿರà³à²µ ಸೈಟà³<a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>ಇಲà³à²²à²¿ "
+"ನೇವೠಈ ಯೊಜನೆಯ ಆಕರ ಸಂಕೇತ, ಅಂಚೆಯ ಪಟà³à²Ÿà²¿,ಇತà³à²¯à²¾à²¦à²¿à²—ಳನà³à²¨à³‚ ಸೂಕà³à²·à³à²® ವಾಗಿ "
+"ಪಡೆಯಬà³à²¦à²¾à²—ಿದೆ."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"ಈ ಹೆಸರà³<b>PO</b>ಕಡಿತಗಳ<b>ಆ</b>ನೠಲೈನà³<b>ಭಾ</b>ಷಾಂತರಮಾಡವ / <b>ಲೋ</b>ಕಲಯà³à²¯à²¿ "
+"ಜೆಶನà³<b>ಇಂ</b>ಜಿನà³, ಆದರೆ ನೀವೠಇದರ ಬಗà³à²—ೆ ಒದà³à²²à³<a "
+"href=\"http://www.thechestnut.com/flumps.htm\">ಇಲà³à²²à²¿ ಕà³à²²à²¿à²•à³ ಮಾಡಿ</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "ಹೇಳಿಕೆಗಳà³"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"ಈ ಸೈಟೠಚಾಲನೆಯಲà³à²²à²¿à²¦à³† :<br/>ಪà³à²Ÿà²²à³ ನ %s<br/>ಭಾಷಾಂತರ ಮಾಡಲೠಸಿದà³à²§à²®à²¾à²¡à²¿à²•à³Šà²³à³à²³à³ ವ "
+"ಉಪಕರಣ %s<br/>ಜೆ ಟೂಲೠಕಿಟೠ'jToolkit' %s<br/>'Kid' %s<br/>ಧಾತೠವೃಕà³à²·à²¦ "
+"'ElementTree' %s<br/>ಪಯೠಥಾಂನೠ'Python' %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "ಬಲಕೆದರನ ಪà³à²Ÿ : %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "ಅಯà³à²•à³†à²—ಳ ಬದಲಾವಣೆ"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "ನಿರà³à²µà²¾à²¹à²•à²¨ ಪೂಟ"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "ನಿರà³à²µà²¹à²£à³†"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "ಚಟà³à²µà²Ÿà²¿à²•à³†à²¯à³à²³à³à²³ ಜೊತೆಗೂಡಿದ ಕಡತಗಳà³"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"ದಯವಿಟà³à²Ÿà³ 'ಅಯà³à²•à³†à²—ಳ ಬದಲಾವಣೆ' ಯನà³à²¨à³ ಕà³à²²à²¿à²•à³ ಮಡಿ ಮತà³à²¤à³ ನಮà³à²® ಭಾಷೆ ಹಾಗೠಯೇಜನೆಯನà³à²¨à³ "
+"ಆಯà³à²•à³†à²®à²¾à²¡à²¿"
+
+#: indexpage.py:199
+#, python-format
+#, fuzzy
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d ಯೇಜನೆಯ,ಭಾಷಾಂತರವಾದ ಸರಾಸರಿ ಶೇಕಡ %d%%"
+msgstr[1] "%d ಯೇಜನೆಗಳà³,ಭಾಷಾಂತರವಾದ ಸರಾಸರಿ ಶೇಕಡ %d%%"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "ನಿರà³à²µà²¾à²¹à²•"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "ಭಾಷೆಯ ಸಂಕೇತ"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "ಭಾಷೆಯ ಹೆಸರà³"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d ಭಾಷೆ, ಭಾಷಾಂತರವಾದ ಸರಾಸರಿ ಶೇಕಡ %d%% "
+msgstr[1] "%d ಭಾಷೆಗಳà³, ಭಾಷಾಂತರವಾದ ಸರಾಸರಿ ಶೇಕಡ %d%%"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "ಭಾಷೆ"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: ಯೇಜನೆಯ %s, ಭಾಷೆ %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "ಅಂತರಜಾಲ"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "ಪà³à²°à³Œà²¢ ಅಂತರಜಾಲ"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "ಕಡತಗಳà³"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "ನೇಮಿಸಿದ ಪದಗಳà³"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "ಕಾರà³à²¯ ರೂಪಕà³à²•à³† ಪರಿವರà³à²¤à²¿à²¸à³"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "ಬಲಕೆದರನಿಗೆ ನೇಮಿಸà³"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "ಗೋಲೠಗಳೠ'Goals'"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "ನಮà³à²® ಗೋಲೠನ 'Goal' ಹೆಸರನà³à²¨à³ ಇಲà³à²²à²¿ ಬರೆಯಿರಿ"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "ಗೋಲೠನà³à²¨à³ ಸೇರಿಸಿ"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "ಕಡಿತವನà³à²¨à³ ಅಪà³à²²à³‹à²¡à³ 'Upload' ಮಾಡಿರಿ"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "ನಮà³à²® ಕಡಿತವನà³à²¨à³ ಅಪà³à²²à³‹à²¡à³ -Upload ಮಾಡಲೠಆಯà³à²•à³† ಮಾಡಿರಿ"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "ತಿದà³à²¦à²¿à²¬à²°à³†"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "ಚಾಲà³à²¤à²¿ ಕಡಿತವೠಅಸà³à²¤à²¿à²¤à³à²µà²¦à²²à³à²²à²¿à²°à³† ಅದನà³à²¨à³à²¨à³ ತಿದà³à²¦à²¿à²¬à²°à³†"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "ವಿಲೀನಗೊಳಿಸà³"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"ಚಾಲà³à²¤à²¿ ಕಡಿತವನà³à²¨à³ ವಿಲೀನಗೊಳಿಸಿ ಮತà³à²¤à³ ತಿಕà³à²•à²¾à²Ÿ ರಚನೆಗಳನà³à²¨à³‚ ಸೂಚನೆಯಾಗಿ ಪರಿವರà³à²¤à²¿à²¸à³"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "ನಮà³à²® ಗೋಲೠನಲà³à²²à²¿ 'Goal' ಇಲà³à²²"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "ಬಳಕೆದಾರನà³à²¨à³ ಸೇರಿಸà³"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO ಕಡಿತ"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF ಕಡಿತ"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts ಕಡಿತ"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV ಕಡಿತ"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO ಕಡಿತ"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "ಪರಿವರà³à²¤à²¿à²¸à³"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "ಒಪà³à²ªà²¿à²¸à³"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "ಎಲà³à²²à²¾ ಪದಗಳà³"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "ಭಾಷಾಂತರವಾಗಿರà³à²µ"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "ನೆಮಿಸಲಾಗದ"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "ನೆಮಿಸಲಾಗದ ಮತà³à²¤à³ ಭಾಷಾಂತರವಾಗಿರà³à²µ"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "ಗೋಲೠನà³à²¨à³ 'Goal' ಸೇರಿಸಿ"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "ವಿವಿದ ಆಯà³à²•à³†à²¯à²¨à³à²¨à³ ಮಡಿ"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "ನೇಮಿಸಿದ"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "ಸಂಪಾದಿಸà³à²¤à³à²¤à²¿à²°à³à²µ ಕà³à²°à²¿à²¯à³†à²¯à²¨à³à²¨à³ ತೋರಿಸà³"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "ಅಂಕಿಅಂಶಗಳನà³à²¨à³ ತೋರಿಸà³"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "ಹಾದಿಗಳನà³à²¨à³ ತೋರಿಸà³"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "ಹಾದಿಗಳನà³à²¨à³ ಮà³à²šà³à²šà³"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "ತಾಳೆಗಳನà³à²¨à³ ತೋರಿಸà³"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "ತಾಳೆಗಳನà³à²¨à³ ಮà³à²šà³à²šà³"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "ಗೋಲೠನà³à²¨à³ 'Goal' ತೋರಿಸà³"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "ಗೋಲೠನà³à²¨à³ 'Goal' ಮà³à²šà³à²šà³"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "ನೇಮಿಸಿದà³à²¦ ಪಟà³à²Ÿà²¿ ಯನà³à²¨à³ ತೋರಿಸà³"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "ನೇಮಿಸಿದà³à²¦ ಪಟà³à²Ÿà²¿ ಯನà³à²¨à³ ಮà³à²šà³à²šà³"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "ಎಲà³à²²à²¾ ಗೋಲೠಗಳೠ'Goal': %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "ಭಾಷಾಂತರವಾದ ನನà³à²¨ ಪದಗಳà³"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "ನನà³à²¨ ಪದಗಳೠದೃಶà³à²¯"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "ನಮಗೆ ನೇಮಿಸಿದà³à²¦ ಪದಗಳಿಲà³à²²"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr " ನಮà³à²® ಶೀಘà³à²° ಭಾಷಾಂತರಮಾಡà³à²µ ಪದಗಳà³"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "ನಮಗೆ ನೇಮಿಸಿದà³à²¦ ಭಾಷಾಂತರವಾಗಿರà³à²µ ಪದಗಳಿಲà³à²²"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "ಪರಿಶೀಲನೆ ಸೂಚನೆಗಳà³"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "ಪರಿಶೀಲನೆಗಳನà³à²¨à³ ತೋರಿಸà³"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "ಶೀಘà³à²° ಭಾಷಾಂತರಮಾಡಿ"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "ಭಾಷಾಂತರವಾಗಿರà³à²µ ಪದಗಳನà³à²¨à³ ತೋರಿಸà³"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "ಭಾಷಾಂತರವಾಗಿರà³à²µ ಪದಗಳಿಲà³à²²"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "ಎಲà³à²²à²¾à²µà²¨à³à²¨à³ ಭಾಷಾಂತರಮಾಡಿ"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ಜಿಪೠ-ZIP ಮಾಡà³"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ಕಡತಕೋಶವನà³à²¨à³ ಜಿಪೠ-ZIP ಮಾಡà³"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "ಸ ಡಿ ಫ ನà³à²¨à³ 'SDF' ಉತà³à²ªà²¾à²¦à²¿à²¸à³"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d ಪದ (%d%%) ವಿಫಲವಾಗಿದೆ "
+msgstr[1] "%d ಪದಗಳೠ(%d%%) ವಿಫಲವಾಗಿವೆ"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d ಪದಗಳನà³à²¨à³ (%d%%) ನೇಮಿಸಿದೆ"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d ಪದಗಳೠ]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d ಪದಗಳೠ(%d%%) ಭಾಷಾಂತರವಾಗಿದೆ"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "ಎಲà³à²²à²¾ ಯೇಜನೆಗಳà³"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "ಎಲà³à²²à²¾ ಭಾಷೆಗಳà³"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "ನನà³à²¨ ಖಾತೆ"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "ವಿಷಯಗಳೠಮತà³à²¤à³ ನೆರವà³"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "ಸಂಪರà³à²• ತೊರೆ"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "ಸಂಪರà³à²• ಪಡೆ"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "ನೋಂದಣಿ ಮಾಡà³"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "ಸಕà³à²°à²¿à²¯à²®à²¡à³"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "ಪà³à²Ÿà²²à³ ನ ಚಿಹà³à²¨à³†"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "ಈ ಪೂಟಲೠಪರಿಚಾರಕದ ಬಗà³à²—ೆ"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "ಎಲà³à²²à²¾ ಗೋಲೠಗಳೠ-Goal"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d ಕಡತಗಳà³"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d ಕಡತ"
+msgstr[1] "%d ಕಡತಗಳೠ"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d ಪದಗಳà³"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "ಹೆಸರà³"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "ಭಾಷಾಂತರಮಾಡಿದ"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "ಭಾಷಾಂತರಮಾಡಿದ ಶೇಕಡ"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "ಭಾಷಾಂತರಮಾಡಿದ ಪದಗಳà³"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "ಫà³à²œà³à²œà²¿ 'Fuzzy'"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "ಫà³à²œà³à²œà²¿ ಯ 'Fuzzy' ಶೇಕಡ"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "ಫà³à²œà³à²œà²¿ 'Fuzzy' ಪದಗಳà³"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "ಭಾಷಾಂತರವಾಗಿರà³à²µ ಶೇಕಡ"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "ಭಾಷಾಂತರವಾಗಿರà³à²µ ಪದಗಳà³"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "ಒಟà³à²Ÿà³"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "ಒಟà³à²Ÿà³ ಪದಗಳà³"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "ರೇಖಾಚಿತà³à²° -Graph"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "ಆಧಾರ ಪಠà³à²¯"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "ಲಕà³à²·à³à²¯ ಪಠà³à²¯"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "ಟಿಪà³à²ªà²£à²¿ ವಾಖà³à²¯à³† ಟೀಕಿಸೠವà³à²¯à²¾à²–à³à²¯à²¨à²¿à²¸à³"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "ಸà³à²¥à²³ ನಿರà³à²¦à³‡à²¶à²¨à²—ಳà³"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "ಸಂಪರà³à²• ವಿಫಲವಾಗಿದೆ"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "ನೇರ ಸಂಪರà³à²•à²•à³à²•à³† ಹೋಗà³à²¤à³à²¤à²¿à²¦à³†..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "ನೆಲೆಯ ಪà³à²Ÿà²•à³à²•à³† ಹೋಗಲೠಸಂಪರà³à²• ಅಗತà³à²¯"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "ವà³à²¯à²•à³à²¤à²¿à²—ತ ವಿಸà³à²¤à²°à²£à³†à²¯à²¨à³à²¨à³ ಬದಲಾಯಿಸಿದೆ"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "ನಿರà³à²µà²¾à²¹à²• ಪà³à²Ÿ"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "ನೆಲೆಗೆ ಹೋಗà³à²¤à³à²¤à²¿à²¦à³†..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "ನಮà³à²®à²²à³à²²à²¿ ಪà³à²Ÿà²²à³ ನ ನಿರà³à²µà²¹à²£à³†à²—ೆ ಹಕà³à²•à³à²—ಿಲà³à²²."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "ನೋಟ"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "ಸೂಚನೆ"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "ಭಾಷಾಂತರಿಸಿ"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "ಪರಿಶೀಲನೆ"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "ಪತà³à²°à²¾à²—ಾರ -Archive"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO ಕಡತಗಳನà³à²¨à³ ಸಂಕಲನೆ ಮಾಡà³"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "ನೇಮಿಸà³"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "ಬಲಕೆದರ \"nobody\" ಅತವ ಬಲಕೆದರ \"default\" ನನà³à²¨à³ ತೆಗೆದà³à²¹à²¾à²• ಬಾರದà³"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "ಇಲà³à²²à²¿ ನಮà³à²® ಗೋಲೠನà³à²¨à³ 'Goal'ಬದಲಾವಣೆಮಾಡಲೠಅನà³à²®à²¤à²¿à²¯à²¿à²²à³à²²"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "ಇಲà³à²²à²¿ ನಮà³à²® ಕಡತಗಳನà³à²¨à³ ಅಪà³à²²à³‹à²¡à³ 'Upload' ಮಾಡಲೠಅನà³à²®à²¤à²¿à²¯à²¿à²²à³à²²"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "ಇಲà³à²²à²¿ ನಮà³à²® ಕಡತಗಳನà³à²¨à³ ತಿದà³à²¦à³à²ªà²¡à²¿ ಮಾಡಲೠಅನà³à²®à²¤à²¿à²¯à²¿à²²à³à²²"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "ಇಲà³à²²à²¿ ನಮà³à²® ಹೊಸ ಕಡತಗಳನà³à²¨à³ ಅಪà³à²²à³‹à²¡à³ 'Upload' ಮಾಡಲೠಅನà³à²®à²¤à²¿à²¯à²¿à²²à³à²²"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "ಇಲà³à²²à²¿ ನಮà³à²® ಬದಲಾವನೆಮಡಿದ ಕಡತಗಳನà³à²¨à³ ಮಾಡಲೠಅನà³à²®à²¤à²¿à²¯à²¿à²²à³à²²"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "ಇಲà³à²²à²¿ ನಮà³à²® ಕಡತಗಳನà³à²¨à³ ಒಪà³à²ªà²¿à²¸à²²à³ 'Commit' ಅನà³à²®à²¤à²¿à²¯à²¿à²²à³à²²"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "ಇಲà³à²²à²¿ ನಮà³à²® ನಿಯಮಿತ ಕಾರà³à²¯ ಬದಲಾಯಿಸೠಅನà³à²®à²¤à²¿à²¯à²¿à²²à³à²²"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "ಇಲà³à²²à²¿ ನಮà³à²® ಭಾಷಾಂತರಿಸಿದ ಪದಗಳನà³à²¨à³ ಬದಲಾವಣೆಮಾಡಲೠಅನà³à²®à²¤à²¿à²¯à²¿à²²à³à²²"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "ಇಲà³à²²à²¿ ನಮà³à²® ಪದಗಳಿಗೆ ಸೂಚನೆ ಕೊಡಲೠಅನà³à²®à²¤à²¿à²¯à²¿à²²à³à²²"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "ಇಲà³à²²à²¿ ನಮà³à²® ಪದಗಳಿಗೆ ಪರಿಶೀಲನ ಸೂಚನೆಯನà³à²¨à³ ಕೊಡಲೠಅನà³à²®à²¤à²¿à²¯à²¿à²²à³à²²"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"ಭಾಷಾಂತರವಾಗಿದ %d/%d\n"
+"(ಭಾಷಾಂತರವಾಗದಿರà³à²µ %d, ಫà³à²œà³à²œà²¿ Fuzzy %d)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s ನ: %s ಯೋಜನೆಯನà³à²¨à³ %s ಭಾಷೆಗೆ: %s ಕಡಿತವನà³à²¨à³ ಭಾಷಾಂತರಮಾಡà³à²¤à³à²¤à²¿à²¦à³à²¦à³‡à²µà³†"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "ಓರಿಜಿನಲà³"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "ಭಾಷಾಂತರ"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "ಸೂಚನೆಯನà³à²¨à³ ಸà³à²µà³€à²•à²°à²¿à²¸à³"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "ಸೂಚನೆಯನà³à²¨à³ ನಿರಾಕರಿಸà³"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "ಭಾಷà³à²¯à²•à²¾à²° ವà³à²¯à²¾à²–à³à²¯à²¾à²¨à²•à²¾à²° ವೀಕà³à²·à²• ವಿವರಣೆಕಾರ"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Developerನ ಟಿಪà³à²ªà²£à²¿ ವಾಖà³à²¯à³† ಟೀಕಿಸೠವà³à²¯à²¾à²–à³à²¯à²¨à²¿à²¸à³"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "ಸಂಬಂಧಪಟà³à²Ÿ"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "ಕಾರà³à²¯à²¶à³€à²²..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "ದೋಷ : ತಪà³à²ªà³."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "ತಂಡದ ಮà³à²•à³à²¤à²¾à²¯"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "ಸೂಚà³à²¯à²‚ಕಕà³à²•à³† ಹೋಗà³à²³à³ ಕà³à²²à²¿à²•à³ ಮಡಿ"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "ಪà³à²°à²¾à²°à²‚ಭ"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "ಹಿಂದಿನ %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "ಅಂಶಗಳೠ%d ಇಂದ %d ಗೆ %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "ಮà³à²‚ದಿನ %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "ಮà³à²•à³à²¤à²¾à²¯"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "ತನಿಖೆಮಾಡà³à²¤à³à²¤à²¿à²¦à³† %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "ನಮà³à²® ಅನà³à²µà³‡à²·à²£à³†à²—ೆ ('%s') ಅಂಶಗಳೠಯಾವà³à²¦à³ ಸರಿಜೋಡಿಯಗಲಿಲà³à²²"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "ನಮà³à²® ಆಯà³à²•à³† ಅಂಶಗಳೠಮà³à²—ಿದಿದೆ"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "à²à²•à²µà²šà²¨"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "ಬಹà³à²µà²šà²¨"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "ಸಂಸà³à²•à²°à²¿à²¸à³"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "ನಕಲಿಸà³"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "ಸಂಧಿಸದೆ ಹೋಗà³"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "ಹಿಂದೆ"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "ಒಪà³à²ªà²¿à²¸à³"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "ಬೆಳೆ"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "ಕà³à²—à³à²—à³"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "ಬಹà³à²µà²šà²¨ ಬರà³à²µ"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"ನಮà³à²® ಭಾಷೆಯಲà³à²²à²¿ ಬಹà³à²µà²šà²¨à²—ಳೠಇಲà³à²²à²¦ ಕಾರಣ, ಪದಗಳನà³à²¨à³ ಭಾಷಾಂತರಿಸಲೠಸಾದà³à²¯à²µà²¾à²—à³à²¤à³à²¤à²¿à²²à³à²². "
+"ದಯವಿಟà³à²Ÿà³ ಸೈಟೆ ನಿರà³à²µà²¾à²¹à²•à²¨à³à²¨à³ ಸಂಪರà³à²•à²¿à²¸à²¿."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "ಚಾಲà³à²¤à²¿ ಭಾಷಾಂತರ:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "ಸೂಚನೆಕೊಟà³à²Ÿ %d ನ %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "ಸೂಚನೆ %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "ಸೂಚನೆಕೊಟà³à²Ÿ %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "ಸೂಚನೆ :"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "ನಮà³à²® ಸಂಕೇತ ಪದವೠಕನಿಷà³à²  %d ಅಕà³à²·à²°à²—ಳà³à²¯à²¿à²°à²¬à³‡à²•à³."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "ನಮà³à²® ಸಂಕೇತ ಪದವೠಕಾಯಂಗೊಳಿಸಿದ ಪದವಾಗಿಲà³à²²."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "ಪà³à²Ÿà²²à³ ನಲà³à²²à²¿ ಲಾಗೠಇನೠಮಾಡಿ"
+
+#: users.py:66
+msgid "Username:"
+msgstr "ಬಳಕೆದಾರನ ಹೆಸರà³:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "ಸಂಕೇತ ಪದ:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "ಭಾಷೆ :"
+
+#: users.py:71
+msgid "Login"
+msgstr "ಲಾಗೠಇನà³"
+
+#: users.py:77
+msgid "Default"
+msgstr "ಗೈರà³à²¹à²¾à²œà²°à²¿"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "ದಯವಿಟà³à²Ÿà³ ನಮà³à²® ನೊಂದಾವಣೆಯ ವಿವರವನà³à²¨à³ ಕೊಡಿ"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "ಪà³à²Ÿà²²à³ ನ ನೊಂದಾವಣೆ"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "ನಮà³à²® ಬೇಡಿಕೆಯ ಬಳಕೆದಾರನ ಹೆಸರà³"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "ಸರಿಯಾದ ನಮà³à²® ವಿದà³à²¯à³à²¨à³à²®à²¾à²® ಅಂಚೆಯ ವಿಳಾಸವನà³à²¨à³ ಕೊಡಿ"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "ನಮà³à²® ಪೂರà³à²£ ಹೆಸರà³"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "ನಮà³à²® ಸಂಕೇತ ಪದ"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "ಸಂಕೇತ ಪದವನà³à²¨à³ ಕಾಯಂಗೊಳಿಸಿ"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "ನಮà³à²® ಸಂಕೇತ ಪದವನà³à²¨à³ ಕಾಯಂಗೊಳಿಸಳೠಮತà³à²¤à³à²‚ಮೆ ಟೈಪೠಮಾಡಿ"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "ಖಾತೆಯ ನೊಂದಾವಣೆ"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "ದಯವಿಟà³à²Ÿà³ ನಮà³à²® ಸಕà³à²°à²¿à²¯ ವಿವರವನà³à²¨à³ ಕೊಡಿ"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "ಪà³à²Ÿà²²à³ ನ ಸಕà³à²°à²¿à²¯ ಖಾತೆ"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "ಸಕà³à²°à²¿à²¯à²®à²¡à³à²µ ಸಂಕೇತ"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "ಸಕà³à²°à²¿à²¯à²®à²¡à³à²µ ಸಂಕೇತವನà³à²¨à³ ನಮಗೆ ಕಳà³à²¹à²¿à²¸à²²à²¾à²—ಿದೆ"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "ಖಾತೆಯನà³à²¨à³ ಸಕà³à²°à²¿à²¯à²®à²¡à³"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "ಅಯà³à²•à³†à²—ಳಿಗಾಗಿ: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "ವà³à²¯à²•à³à²¤à²¿à²—ತ ವಿಸà³à²¤à²°à²£à³†à²—ಳà³"
+
+#: users.py:186
+msgid "Email"
+msgstr "ವಿದà³à²¯à³à²¨à³à²®à²¾à²® ಅಂಚೆ"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "ಭಾಷಾಂತರಿಸà³à²µ ಗಣಕಯಂತà³à²°à²¦ ಸಮಗà³à²°à²¾à²•à³ƒà²¤à²¿"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "ಬಲಕೆದರನ ಗಣಕಯಂತà³à²°à²¦ ಭಾಷೆ"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "ನನà³à²¨ ಯೇಜನೆಗಳà³"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "ನನà³à²¨ ಭಾಷೆಗಳà³"
+
+#: users.py:196
+msgid "Home page"
+msgstr "ನೆಲೆಯ ಪà³à²Ÿ"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "ಮತà³à²¤à³à²‚ದೠಮೂಲ ಭಾಷೆ"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "ಅಸà³à²¤à²¿à²¤à³à²µà²µà²¿à²²à³à²²"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "ಒಳ ಎತà³à²¤à²° (ಸಾಲà³à²—ಳà³)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "ನೋಟ ವಿಧಾನದ ಸಾಲೠಸಂಖà³à²¯à³† ಗಳà³"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "ಭಾಷಂತರಮಡà³à²¤à³à²¤à²¿à²°à³à²µ ವಿಧಾನದ ಸಾಲೠಸಂಖà³à²¯à³† ಗಳà³"
+
+#: users.py:307
+msgid "Error"
+msgstr "ದೋಷ"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "ಬಲಕೆದರನನà³à²¨à³ ಬದಲಾವಣೆಮಾಡಲೠನೀವೠಸೈಟೆ ನಿರà³à²µà²¾à²¹à²•à²¨à²¾à²—ಿರಬೇಕà³"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "ಬಲಕೆದರನ ಹೆಸರೠಇಂಗà³à²²à²¿à²·à³ ಅಕà³à²·à²°à²—ಳಿರಬೇಕà³."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "ನೀವà³(ಅತವ ಮತà³à²¤à³Šà²­à²°à³)ನಿಮà³à²® ಖಾತೆಯ ಬಲಕೆದರನ ಹೆಸರà³à²¨à³à²¨à³ ನೋಂದಾವಣಿ ಮಾಡà³à²²à³ "
+"ಯತà³à²¨à²¿à²¸à²¿à²¦à³à²¦à²¾à²°à³†.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "ನಾವೠನಿಮà³à²® ಪà³à²°à²µà³‡à²¶à²ªà²¦à²µà²¨à³à²¨à³ ಪà³à²°à²¤à³à²¯à²•à³à²·à²µà²¾à²—ಿ ನವಿಕೃತಗೊಳಿಸà³à²µà³à²¦à²¿à²²à³à²², ಆದರೆ ಅದನà³à²¨à³à²¨à³ "
+"ಹೆಷಮಡಿ 'Hash' ನವಿಕೃತಗೊಳಿಸà³à²¤à³à²¤à³‡à²µà³†.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "ನಿಮಗೆ ನೋಂದಾವಣಿ ಮಾಡà³à²µà²¾à²— ತೊಂದರೆಗಳೠಇದà³à²¦à²°à³†, ದಯವಿಟà³à²Ÿà³ %sನನà³à²¨à³ ಸಂಪರà³à²•à²¿à²¸à²¿.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "ನಿಮಗೆ ನೋಂದಾವಣಿ ಮಾಡà³à²µà²¾à²— ತೊಂದರೆಗಳೠಇದà³à²¦à²°à³†, ದಯವಿಟà³à²Ÿà³ ಸೈಟೆ ನಿರà³à²µà²¾à²¹à²•à²¨à³à²¨à³ "
+"ಸಂಪರà³à²•à²¿à²¸à²¿.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "ಬಲಕೆದರನ ಹೆಸರೠಈಗಾಗಲೇ ಅಸà³à²¤à²¿à²¤à³à²µà²¦à²²à³à²²à²¿à²¦à³†. ಈ ಅಂಚೆಯನà³à²¨à³ ನೋಂದಾವಣಿಯಾದ ವಿದà³à²¯à³à²¨à³à²®à²¾à²® "
+"ಅಂಚೆಗೆ ಕಳà³à²¹à²¿à²¸à²²à²¾à²—ಿದೆ.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "ಮà³à²‚ದà³à²µà²°à²¿à²¸à³à²¤à³à²¤à²¿à²°à³à²µ <a href='%s'>ಲಾಗೠಇನà³</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "ಪೂಟಲೠನಲà³à²²à²¿ ನಮà³à²® ವಿದà³à²¯à³à²¨à³à²®à²¾à²® ಅಂಚೆಯ ವಿಳಾಸವನà³à²¨à³ ಸೇಪಡೀಸಲಾಗಿದೆ.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "ನಿಮà³à²® ಖಾತೆಯನà³à²¨à³ ಸಕà³à²°à²¿à²¯à²—ೊಳಿಸಲà³, ಈ ಸಂಬಂಧ ಕೊಂಡಿಯನà³à²¨à³ ಕà³à²²à²¿à²•à³ ಮಾಡಿ:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"ನಿಮà³à²® ಸಕà³à²°à²¿à²¯ ಪದ :\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "ಈ ಸಂಬಂಧ ಕೊಂಡಿಯ ಅನà³à²¸à²°à²¿à²¸à²²à²¾à²—ದà³à²¦à²¿à²¦à²²à³à²²à²¿, ದಯವಿಟà³à²Ÿà³ ನಿಮà³à²® ಸಕà³à²°à²¿à²¯ ಪದವನà³à²¨à³ ಸಕà³à²°à²¿à²¯ "
+"ಪà³à²Ÿà²¦à²²à³à²²à²¿ ಬರೆಯಿರಿ.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "ಈ ಸಂದೇಶವೠಸತà³à²¯à²¶à³Šà²§à²¨à³†à²—ೆ ಪà³à²°à²®à²¾à²¨à²¿à²¸à²²à³ ನಿಮà³à²® ವಿದà³à²¯à³à²¨à³à²®à²¾à²® ಅಂಚೆಗೆ ಕಳà³à²¹à²¿à²¸à²²à²¾à²—ಿದೆ. "
+"ನಿಮà³à²® ಖಾತೆಯನà³à²¨à³ ನೋಂದಾವಣಿ ಮಾಡà³à²¤à³à²¤à²¿à²¦à³à²¦à²°à³†, ಈ ಸಂದೇಶವನà³à²¨à³ ಅಲಕà³à²·à²¿à²¯ ಮಾಡಬಹà³à²¦à³.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"ನಿಮà³à²® ಖಾತೆಯನà³à²¨à³ ರಚಿಸಲಾಗಿದೆ. ನಿಮà³à²® ಲಾಗೠಇನೠಸೂಕà³à²·à³à²® ವಿವರಣೆ ಮತà³à²¤à³ ಸಕà³à²°à²¿à²¯ "
+"ಪದವನà³à²¨à³ ವಿದà³à²¯à³à²¨à³à²®à²¾à²® ಅಂಚೆಗೆ ಕಳà³à²¹à²¿à²¸à²²à²¾à²—ಿದೆ. ದಯವಿಟà³à²Ÿà³ ನಿಮà³à²® ಸಕà³à²°à²¿à²¯ ಪದವನà³à²¨à³<a "
+"href='%s'>ಸಕà³à²°à²¿à²¯ ಪà³à²Ÿ</a>ದಲà³à²²à²¿ ಬರೆಯಿರಿ."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(ಅತವ ಈ ಸಂಬಂಧಪಟà³à²Ÿ ಸಕà³à²°à²¿à²¯ ಕೊಂಡಿಯನà³à²¨à³ ವಿದà³à²¯à³à²¨à³à²®à²¾à²® ಅಂಚೆಯಲà³à²²à²¿ ಕà³à²²à²¿à²•à³ ಮಾಡಿ)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "ನಿಮà³à²® ಬಳಕೆಯ ಹೆಸರೠ: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "ನಿಮà³à²® ಪà³à²°à²µà³‡à²¶à²ªà²¦: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "ನಿಮà³à²® ನೋಂದಾವಣಿಯಾದ ವಿದà³à²¯à³à²¨à³à²®à²¾à²® ಅಂಚೆ: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "ನೋಂದಾವಣಿ ಪà³à²Ÿà²•à³à²•à³† ರವಾನಿಸà³à²¤à³à²¤à²¿à²¦à³†..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "ಲಾಗೠಇನೠಪà³à²Ÿà²•à³à²•à³† ರವಾನಿಸà³à²¤à³à²¤à²¿à²¦à³†..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "ನಿಮà³à²® ಖಾತೆಯನà³à²¨à³ ಸಕà³à²°à²¿à²¯à²—ೊಳಿಸಿದೆ! ಲಾಗೠಇನೠಪà³à²Ÿà²•à³à²•à³† ರವಾನೆಯಾಗà³à²¤à³à²¤à²¿à²¦à³†..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "ನಿಮà³à²® ಸಕà³à²°à²¿à²¯ ಮಾಹಿತಿ ಸರಿಯಾಗಿಲà³à²²."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "ಸಕà³à²°à²¿à²¯ ವಿಫಲಗೊಂಡಿದೆ"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "ಒಳ ಎತà³à²¤à²° ಅಂಕಿಗಳಾಗಿರಬೇಕà³"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "ಒಳ ಅಗಲ ಅಂಕಿಗಳಾಗಿರಬೇಕà³"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "ಸಾಲೠಸಂಖà³à²¯à³† ಯನà³à²¨à³ ತೋರಿಸಲೠನೋಟ ಬಳಕೆಯಲà³à²²à²¿ 'View mode' ಅಂಕಿಗಳಾಗಿರಬೇಕà³"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+"ಸಾಲೠಸಂಖà³à²¯à³† ಯನà³à²¨à³ ತೋರಿಸಲೠಭಾಷಾಂತರಿಸà³à²µ ಬಳಕೆಯಲà³à²²à²¿ 'Translate mode' "
+"ಅಂಕಿಗಳಾಗಿರಬೇಕà³"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ko/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ko/jToolkit.po
new file mode 100644
index 0000000..f56d465
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ko/jToolkit.po
@@ -0,0 +1,141 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-05-07 09:11+0200\n"
+"Last-Translator: Seo Hyun Tae <acrab001@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.0rc1\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s 로그ì¸"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ì´ ì•¡ì…˜ì„ ì·¨ì†Œí•˜ê³  새 ì„¹ì…˜ì„ ì‹œìž‘"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ì´ ì•¡ì…˜ì„ í™•ì¸í•˜ì§€ ë§ê³ , 로그아웃 후 재시작 할것"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "나가기"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "ì´ í”„ë¡œê·¸ëž¨ì„ ë‚˜ê°€ì„œ ìƒìœ„ 프로그램으로 ëŒì•„ê°"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", 로그ì¸ì„ 확ì¸í•˜ì„¸ìš”"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "로그ì¸"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "ì•„ì´ë””:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "ì‚¬ìš©ìž ì•”í˜¸:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "언어:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "ì‘ìš© 프로그램 ì„ íƒ"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "로그아웃"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "나가기"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b>(으)ë¡œ ë¡œê·¸ì¸ ì¤‘"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "새로운 ì„¹ì…˜ì„ ì¶”ê°€í•˜ì§€ 못함"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "로그아웃ë¨"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "ì—°ê²°ë¨"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "ì¢…ë£Œëœ ìƒìœ„ 섹션"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "서버 설정ì—ì„œ ì‚¬ìš©ìž í˜¹ì€ ì‚¬ìš©ìž ì„¤ì • í•­ëª©ì„ ì •ì˜í•´ì•¼ 합니다"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "사용ìžê°€ 존재하지 않습니다 (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ì•„ì´ë”” í˜¹ì€ ë¹„ë°€ë²ˆí˜¸ê°€ 틀림"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "ë¡œê·¸ì¸ í™•ì¸ì´ 실패함"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "아니오"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "네"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "제거"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(첨부없ìŒ)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "첨부가 너무 í¼"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ì´ ì²¨ë¶€ë¥¼ 제거"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "복구"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ì´ ì²¨ë¶€ëŠ” 제거ë¨. 복구하려면 여길 누르세요"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "íŒŒì¼ ì²¨ë¶€"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ko/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ko/pootle.po
new file mode 100644
index 0000000..1fedd4c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ko/pootle.po
@@ -0,0 +1,1398 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-28 04:07+0000\n"
+"Last-Translator: Aijin Kim <aijin.kim@sun.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle ë°ëª¨"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "홈"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "사용ìž"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "언어"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "프로ì íŠ¸"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "ì¼ë°˜ì ì¸ ì„ íƒì‚¬í•­"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "ì„ íƒì‚¬í•­"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "현재 값"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "변경 사항 저장"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "제목"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "설명"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "기본 URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "홈페ì´ì§€"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle 언어 ê´€ë¦¬ìž íŽ˜ì´ì§€"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "ë©”ì¸ ê´€ë¦¬ìž íŽ˜ì´ì§€"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO 코드"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "ì´ë¦„(성명)"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(ì—¬ê¸°ì— ë‹¤ë¥¸ 언어 추가)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "특수 문ìž"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(특수 문ìž)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "ë³µìˆ˜í˜•ì˜ ìˆ˜"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(ë³µìˆ˜í˜•ì˜ ìˆ˜)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "복수형 계산ì‹"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(복수형 계산ì‹)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "언어 지우기"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s 지우기"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "표준"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle 프로ì íŠ¸ ê´€ë¦¬ìž íŽ˜ì´ì§€"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "프로ì íŠ¸ 코드"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(ì—¬ê¸°ì— í”„ë¡œì íŠ¸ 추가)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "프로ì íŠ¸ 설명"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(프로ì íŠ¸ 설명)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "검사 스타ì¼"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "íŒŒì¼ ìœ í˜•"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO íŒŒì¼ ë§Œë“¤ê¸°"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "프로ì íŠ¸ 지우기"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle ì‚¬ìš©ìž ê´€ë¦¬ìž íŽ˜ì´ì§€"
+
+# ì‹¤ëª…ì„ ì ëŠ” Full Name 항목과 혼ë™ì„ 피하기 위해 'ì‚¬ìš©ìž ì´ë¦„' 대신 'ì‚¬ìš©ìž ì•„ì´ë””'를 추천
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "ì•„ì´ë””"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(ì—¬ê¸°ì— ì´ë¦„ 추가)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "ì „ìžë©”ì¼ ì£¼ì†Œ"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(ì—¬ê¸°ì— ì „ìžë©”ì¼ ì¶”ê°€)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "비밀번호"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(ì—¬ê¸°ì— ë¹„ë°€ë²ˆí˜¸ 추가)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "활성화ë¨"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "새 ì‚¬ìš©ìž í™œì„±í™”"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "ì‚¬ìš©ìž ì§€ìš°ê¸°"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "ë©”ì¸ íŽ˜ì´ì§€ë¡œ ëŒì•„가기"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "기존 언어"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "언어 ì—…ë°ì´íŠ¸"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle 관리: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "ì´ í”„ë¡œì íŠ¸ë¥¼ 관리할 ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "템플리트ì—ì„œ ì—…ë°ì´íŠ¸"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "언어 추가"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle 관리: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "프로ì íŠ¸ 홈페ì´ì§€"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "ì•„ì´ë”” %sì— ëŒ€í•´ ê¶Œí•œì„ ì„¤ì •í•  수 없습니다 - 사용ìžê°€ 존재하지 않습니다"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "GNU ìŠ¤íƒ€ì¼ í”„ë¡œì íŠ¸ìž…니다. (디렉토리 1ê°œ, ê° ì–¸ì–´ë§ˆë‹¤ 파ì¼)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "표준 ìŠ¤íƒ€ì¼ í”„ë¡œì íŠ¸ìž…니다. (ê° ì–¸ì–´ë§ˆë‹¤ 디렉토리 1개씩)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "ì‚¬ìš©ìž ê¶Œí•œ"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(사용ìžë¥¼ 추가하려면 ì„ íƒí•˜ì‹­ì‹œì˜¤)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "권한"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "지우기"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "권한 ì—…ë°ì´íŠ¸"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Pootle ì •ë³´"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong>ì€ ê°„ë‹¨í•œ 웹 í¬íƒˆë¡œ 여기ì—ì„œ <strong>번역</strong>ì„ í•  수 있습니다! "
+"Pootleì€ <strong>ìžìœ  소프트웨어</strong>ì´ë¯€ë¡œ, 얼마든지 Pootleì„ ë‚´ë ¤ë°›ì•„ì„œ ìžê¸°ë§Œì˜ Pootleì„ ì‹¤í–‰í•  수 "
+"있습니다. ë˜ ì—¬ëŸ¬ê°€ì§€ 방법으로 ê°œë°œì— ì°¸ì—¬í•˜ì‹¤ 수 있습니다. (프로그래ë°ì„ 몰ë¼ë„ 참여할 수 있습니다.)"
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"ì´ Pootle 프로ì íŠ¸ëŠ” <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>ì—ì„œ "
+"호스팅하고 여기ì—ì„œ 소스코드와 ë©”ì¼ë§ 리스트 ë“±ì˜ ì •ë³´ë¥¼ ì–»ì„ ìˆ˜ 있습니다."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Pootleì´ë¼ëŠ” ì´ë¦„ì€ <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngineì„ ëœ»í•©ë‹ˆë‹¤. 하지만 <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">ì´ íŽ˜ì´ì§€</a>를 ì½ì–´ 보십시오."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "버전"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"ì´ ì‚¬ì´íŠ¸ì—ì„œ ì‹¤í–‰ì¤‘ì¸ í”„ë¡œê·¸ëž¨: <br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "ë‹¤ìŒ ì‚¬ìš©ìžì˜ 페ì´ì§€: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "설정 바꾸기"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "관리 페ì´ì§€"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "관리"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "빠른 ë§í¬"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "'설정 바꾸기'를 눌러 언어와 프로ì íŠ¸ë¥¼ ì„ íƒí•˜ì‹­ì‹œì˜¤"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%dê°œì˜ í”„ë¡œì íŠ¸, í‰ê·  %d%% 번역ë¨"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "관리"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "언어 코드"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "언어 ì´ë¦„"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%dê°œ 언어, í‰ê·  %d%% 번역ë¨"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "언어"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: 프로ì íŠ¸ %s, 언어 %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "찾기"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "고급 검색"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "파ì¼ì„ 올릴 수 없습니다. 파ì¼ì„ 첨부하지 않았습니다"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "PO 파ì¼ê³¼ PO 파ì¼ì˜ ZIP 압축만 올릴 수 있습니다"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "문ìžì—´ 할당"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "작업 유형 할당"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "사용ìžì—게 할당"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "목표"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "목표 ì´ë¦„ì„ ìž…ë ¥í•˜ì‹­ì‹œì˜¤"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "목표 추가"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "íŒŒì¼ ì˜¬ë¦¬ê¸°"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "올릴 파ì¼ì„ ì„ íƒí•˜ì‹­ì‹œì˜¤"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "ë®ì–´ì“°ê¸°"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "파ì¼ì´ 있으면 ë®ì–´ì“°ê¸°"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "합치기"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "파ì¼ì„ 현재 파ì¼ê³¼ 합치고 충ëŒì´ 있는 í•­ëª©ì€ ì œì•ˆ 사항으로 만듭니다"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "ëª©í‘œì— ì§€ì •ë˜ì§€ ì•Šì€ í•­ëª©"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "ì‚¬ìš©ìž ì¶”ê°€"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO 파ì¼"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF 파ì¼"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts 파ì¼"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV 파ì¼"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO 파ì¼"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "ì—…ë°ì´íŠ¸"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "제출"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "모든 문ìžì—´"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "번역 안 ë¨"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "할당ë˜ì§€ ì•ŠìŒ"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "할당ë˜ì§€ ì•Šì€ ë¯¸ë²ˆì—­"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "목표 설정"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "여러 ê°œ ì„ íƒ"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "할당할 사람"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "편집 기능 표시"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "통계 표시"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "트랙 표시"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "트랙 ê°ì¶”기"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "검사 결과 표시"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "검사 ê²°ê³¼ ê°ì¶”기"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "목표 표시"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "목표 ê°ì¶”기"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "할당 표시"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "할당 ê°ì¶”기"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "모든 목표: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "ë‚´ 문ìžì—´ 번역"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "ë‚´ 문ìžì—´ 보기"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "당신ì—게 í• ë‹¹ëœ ë¬¸ìžì—´ì´ 없습니다"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "ë‚´ 문ìžì—´ 빠른 번역"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "당신ì—게 í• ë‹¹ëœ ë¯¸ë²ˆì—­ 문ìžì—´ì´ 없습니다"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "제안 검토"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "제안 보기"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "빠른 번역"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "번역ë˜ì§€ ì•Šì€ í•­ëª© 보기"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "번역ë˜ì§€ ì•Šì€ í•­ëª©ì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "ëª¨ë‘ ë²ˆì—­"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ëª©í‘œì˜ ZIP 압축 받기"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "í´ë”ì˜ ZIP 압축 받기"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF ìƒì„±"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%dê°œì˜ ë¬¸ìžì—´ (%d%%) 걸림"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%dê°œ 단어 (%d%%) 할당ë¨"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%dê°œ 문ìžì—´]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%dê°œ 단어 (%d%%) 번역ë¨"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "모든 프로ì íŠ¸"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "모든 언어"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "내 계정"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "문서 ë° ë„움ë§"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "로그아웃"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "로그ì¸"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "등ë¡"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "활성화"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle 로고"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "ì´ Pootle ì„œë²„ì˜ ì •ë³´"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "모든 목표"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%dê°œ 파ì¼"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%dê°œì˜ íŒŒì¼"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%dê°œ 문ìžì—´"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "ì´ë¦„"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "번역ë¨"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "ë²ˆì—­ëœ ë¶€ë¶„ (%)"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "ë²ˆì—­ëœ ë‹¨ì–´"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "모호함"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "모호한 항목 (%)"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "모호한 단어"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "번역 안 ëœ ë¶€ë¶„ (%)"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "번역 안 ëœ ë‹¨ì–´"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "ì „ì²´"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "전체 단어"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "그래프"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "소스 í…스트"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "타겟 í…스트"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "주ì„"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "위치"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "로그ì¸ì´ 실패했습니다"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "로그ì¸ìœ¼ë¡œ ì´ë™í•©ë‹ˆë‹¤..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "홈페ì´ì§€ë¥¼ 보려면 로그ì¸í•´ì•¼ 합니다"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "ê°œì¸ ì •ë³´ê°€ ì—…ë°ì´íŠ¸ ë˜ì—ˆìŠµë‹ˆë‹¤"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "관리 페ì´ì§€ë¥¼ 보려면 로그ì¸í•´ì•¼ 합니다"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "홈으로 ì´ë™í•©ë‹ˆë‹¤..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Pootleì„ ê´€ë¦¬í•  ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "보기"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "제안"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "번역"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "검토"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "파ì¼ë¡œ 받기"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO íŒŒì¼ ì»´íŒŒì¼"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "할당"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "\"nobody\" í˜¹ì€ \"default\" 사용ìžëŠ” 지울 수 없습니다"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "여기 있는 ëª©í‘œë“¤ì„ ë³€ê²½í•  ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "ì—¬ê¸°ì— íŒŒì¼ì„ 올릴 ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "여기 있는 파ì¼ì„ ë®ì–´ 쓸 ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "ì—¬ê¸°ì— ìƒˆë¡œìš´ 파ì¼ì„ 올릴 ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "여기 있는 파ì¼ì„ ì—…ë°ì´íŠ¸í•  ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "ì—¬ê¸°ì— íŒŒì¼ì„ 제출할 ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "여기 있는 í• ë‹¹ëœ ìž„ë¬´ë¥¼ 변경할 ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "여기 있는 ë²ˆì—­ì„ ë³€ê²½í•  ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "ì—¬ê¸°ì— ë³€ê²½ì„ ì œì•ˆí•  ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "여기 있는 ì œì•ˆì„ ê²€í† í•  ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%dê°œ 번역ë¨\n"
+"(번역 안 ë¨ %dê°œ, 모호한 항목 %dê°œ)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: %sì„(를) %s(으)ë¡œ 번역: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "ì›ë¬¸"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "번역"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "제안 사항 수ë½"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "제안 사항 거부"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "ë²ˆì—­ìž ì£¼ì„"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "ê°œë°œìž ì£¼ì„"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "관련ëœ"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "ìž‘ì—…..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "오류: ìž˜ëª»ëœ ê²ƒì´ ìžˆìŠµë‹ˆë‹¤."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "ì„ íƒëœ ìž‘ì—… 완료"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "색ì¸ìœ¼ë¡œ 가려면 여기를 누르세요"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "처ìŒ"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "ì´ì „ %dê°œ"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%dì—ì„œ %d번째 항목 (ì „ì²´ %dê°œ)"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "ë‹¤ìŒ %dê°œ"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "ë"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s 검사하는 중"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "('%s') 해당하는 í•­ëª©ì„ ì°¾ì„ ìˆ˜ 없습니다"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "ì„ íƒí•œ í•­ëª©ì— ëŒ€í•´ ë까지 ëª¨ë‘ ìž‘ì—…ì„ ë§ˆì³¤ìŠµë‹ˆë‹¤."
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "단수형"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "복수형"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "편집"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "복사"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "건너 뛰기"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "ì´ì „"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "제출"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "늘ì´ê¸°"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "줄ì´ê¸°"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "복수 형태 %d개"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr "ì´ ì–¸ì–´ì— ëŒ€í•œ 복수형 ì •ë³´ê°€ 없기 ë•Œë¬¸ì— ë²ˆì—­í•  수 없습니다. 사ì´íŠ¸ 관리ìžì—게 문ì˜í•˜ì‹­ì‹œì˜¤."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "현재 번역:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "%sì˜ ì œì•ˆ %d"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "제안 %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%sì˜ ì œì•ˆ"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "제안:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "최소한 길ì´ê°€ %d 문ìžì¸ 올바른 비밀번호를 입력해야 합니다."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "비밀번호가 재확ì¸ëž€ê³¼ 다릅니다."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Pootle 로그ì¸"
+
+#: users.py:66
+msgid "Username:"
+msgstr "ì•„ì´ë””:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "비밀번호:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "언어:"
+
+#: users.py:71
+msgid "Login"
+msgstr "로그ì¸"
+
+#: users.py:77
+msgid "Default"
+msgstr "기본값"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "ë“±ë¡ ì„¸ë¶€ ì‚¬í•­ì„ ìž…ë ¥í•˜ì‹­ì‹œì˜¤"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle 등ë¡"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "요청한 ì•„ì´ë””"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "올바른 ì „ìžë©”ì¼ ì£¼ì†Œë¥¼ 입력해야 합니다."
+
+#: users.py:128
+msgid "Your full name"
+msgstr "ë‹¹ì‹ ì˜ ì´ë¦„(성명)"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "사용하고 ì‹¶ì€ ë¹„ë°€ë²ˆí˜¸"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "비밀번호 재확ì¸"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "제대로 입력했는지 확ì¸ì„ 위해 비밀번호를 다시 입력하십시오"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "계정 등ë¡"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "활성화 정보를 입력하십시오"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle 계정 활성화"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "활성화 코드"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "ë°›ì€ í™œì„±í™” 코드"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "계정 활성화"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "설정: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "ê°œì¸ ì •ë³´"
+
+#: users.py:186
+msgid "Email"
+msgstr "ì „ìžë©”ì¼"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "번역 ì¸í„°íŽ˜ì´ìŠ¤ 설정"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "ì‚¬ìš©ìž ì¸í„°íŽ˜ì´ìŠ¤ 언어"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "ë‚´ 프로ì íŠ¸"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "내 언어"
+
+#: users.py:196
+msgid "Home page"
+msgstr "홈페ì´ì§€"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "얼터너티브 소스 언어"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "ì—†ìŒ"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "ìž…ë ¥ ë†’ì´ (줄 단위)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "보기 모드ì—ì„œ 줄 수"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "번역 모드ì—ì„œ 줄 수"
+
+#: users.py:307
+msgid "Error"
+msgstr "오류"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "사용ìžë¥¼ 바꾸려면 사ì´íŠ¸ 관리ìžì—¬ì•¼ 합니다"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "ì•„ì´ë””는 알파벳과 숫ìžì—¬ì•¼ 하고, 알파벳으로 시작해야 합니다."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "ë‹¹ì‹ ì˜ ì•„ì´ë””ë¡œ (ë³¸ì¸ ì•„ë‹ˆë©´ 다른 누군가가) 계정 등ë¡ì„ ì‹œë„했습니다.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "ì´ ì‚¬ì´íŠ¸ëŠ” ë¹„ë°€ë²ˆí˜¸ì˜ ì‹¤ì œ ê°’ì„ ì €ìž¥í•˜ì§€ ì•Šê³  í•´ì‹œëœ ê°’ë§Œì„ ì €ìž¥í•©ë‹ˆë‹¤.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "등ë¡ì— 문제가 있으면 %sì—게 ì—°ë½í•˜ì‹­ì‹œì˜¤.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "등ë¡ì— 문제가 있으면 사ì´íŠ¸ 관리ìžì—게 ì—°ë½í•˜ì‹­ì‹œì˜¤.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "ê·¸ ì•„ì´ë””는 ì´ë¯¸ 사용중입니다. 등ë¡ëœ ì „ìžë©”ì¼ ì£¼ì†Œë¡œ ë©”ì¼ì„ 보냈습니다.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "<a href='%s'>로그ì¸</a>으로 계ì†\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "ì´ ì „ìžë©”ì¼ ì£¼ì†Œë¥¼ 사용해 Pootle ê³„ì •ì´ ë§Œë“¤ì–´ì¡ŒìŠµë‹ˆë‹¤.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "ê³„ì •ì„ í™œì„±í™”í•˜ë ¤ë©´ ë‹¤ìŒ ë§í¬ë¡œ 가십시오:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"계정 활성화 코드는 다ìŒê³¼ 같습니다:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "ì´ ë§í¬ë¥¼ ì—´ 수 없다면, 활성화 페ì´ì§€ì—ì„œ ìœ„ì˜ ì½”ë“œë¥¼ 입력하십시오.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "ì´ ë©”ì‹œì§€ëŠ” ì „ìžë©”ì¼ ì£¼ì†Œê°€ ì •ë§ë¡œ 맞는지 ê²€ì¦í•˜ê¸° 위하여 보내졌습니다. ê³„ì •ì„ ë“±ë¡í•˜ê³  싶지 않다면, 그냥 ì´ ë©”ì‹œì§€ë¥¼ 무시해 "
+"주십시오.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"ê³„ì •ì´ ë§Œë“¤ì–´ì¡ŒìŠµë‹ˆë‹¤. ë¡œê·¸ì¸ ì •ë³´ì™€ 활성화 코드를 ì „ìžë©”ì¼ë¡œ 받게 ë  ê²ƒìž…ë‹ˆë‹¤. ë°›ì€ í•´ë‹¹ 활성화 코드를 <a href='%s'>활성화 "
+"페ì´ì§€</a>ì—ì„œ 입력하십시오."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(아니면 ì „ìžë©”ì¼ì— 들어 있는 활성화 ë§í¬ë¥¼ 누르십시오.)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "ë‹¹ì‹ ì˜ ì•„ì´ë””는: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "ë‹¹ì‹ ì˜ ë¹„ë°€ë²ˆí˜¸ëŠ”: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "등ë¡í•œ ì „ìžë©”ì¼ ì£¼ì†ŒëŠ”: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "ë“±ë¡ íŽ˜ì´ì§€ë¡œ ì´ë™í•©ë‹ˆë‹¤..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "ë¡œê·¸ì¸ íŽ˜ì´ì§€ë¡œ ì´ë™í•©ë‹ˆë‹¤..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "ê³„ì •ì´ í™œì„±í™” ë˜ì—ˆìŠµë‹ˆë‹¤! 로그ì¸ìœ¼ë¡œ ì´ë™í•©ë‹ˆë‹¤..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "활성화 정보가 올바르지 않습니다."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "활성화가 실패했습니다"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "ìž…ë ¥ 높ì´ëŠ” 숫ìžë¡œ ì¨ì•¼ 합니다"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "ìž…ë ¥ 너비는 숫ìžë¡œ ì¨ì•¼ 합니다"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "보기 모드ì—ì„œì˜ ì¤„ 수는 숫ìžë¡œ ì¨ì•¼ 합니다"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "번역 모드ì—ì„œì˜ ì¤„ 수는 숫ìžë¡œ ì¨ì•¼ 합니다"
+
+#~ msgid "Accept"
+#~ msgstr "수ë½"
+
+#~ msgid "Reject"
+#~ msgstr "거부"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge 번역 프로ì íŠ¸"
+
+#~ msgid "Broaden"
+#~ msgstr "넓게"
+
+#~ msgid "Narrow"
+#~ msgstr "ì¢ê²Œ"
+
+#~ msgid "Reset"
+#~ msgstr "초기화"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "올바른 ì „ìžë©”ì¼ ì£¼ì†Œë¥¼ ì¨ì•¼ 합니다"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "ìž…ë ¥ 너비 (ë¬¸ìž ë‹¨ìœ„)"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong>ì€ ë‹¹ì‹ ì´ <strong>번역</strong>ì„ í•  수 있게 해주"
+#~ "는 간단한 웹 í¬íƒˆìž…니다!"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ku/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ku/jToolkit.po
new file mode 100644
index 0000000..50ad4e9
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ku/jToolkit.po
@@ -0,0 +1,141 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-09-04 21:32+0000\n"
+"Last-Translator: Erdal Ronahi <erdal.ronahi@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n!= 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Têketina %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Vê çalakê betal bike û dest bi rûniştineke nû bike"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Vê çalakê erê neke, şuna vê ji sifirê dest pê bike"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Ji bernameyê derkeve"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Ji vê bernameyê derkeve û bizivirê bernameya dayîkî"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", ji kerema xwe têketinê erê bike"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Têkeve"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Navê bikarhêner:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Şîfre:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Ziman:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Bername hilbijêre"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Derkeve"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Bigre"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "bi navê <b>%s</b> têketî"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "zêdekirina rûniştinê serneket"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "derket"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "girêdayî"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "ji rûnistina dayîkî derket"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "eyarên bikarhêneran di server config pêwîst in"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "ev bikarhêner tune (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "şîfre an nav derbas nabe"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "erêkirina têketinê serneket"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Na"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Erê"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "rake"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(îlawe tune)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "îlawe zêde mezin e"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "îlaweyê rake"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "bizivirê paş"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ev îlawe hat rakirin. ji bo anîna paş bitikîne"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "dosyayekê îlawe bike"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ku/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ku/pootle.po
new file mode 100644
index 0000000..1afc06a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ku/pootle.po
@@ -0,0 +1,1413 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-04 22:09+0000\n"
+"Last-Translator: Erdal Ronahi <erdal.ronahi@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n!= 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Destpêk"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Bikarhêner"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Ziman"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Proje"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Vebijêrkên giştî"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Tercîh"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Nirxa aniha"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Guherandinan tomar bike"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Sernivîs"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Daxûyanî"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL ya bingehîn"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Malper"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Rûpela Rêvebirina Zimanan a Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Rûpela admînan a serekî"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Koda ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Tam nav"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(zimanî lê zêde bike)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Tîpên taybet"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(tîpên taybet)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Hejmara Pirjimaran"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(hejmara pirjimaran)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Hevkêşeya Pirjimaran"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(hevkêşeya pirjimaran)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Ziman rake"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s rake"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Rûpela Rêvebirina Projeyan a Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Koda projeyê"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(li vir projeyê zêde bike)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Tarîfa projeyê"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(daxûyaniya projeyê)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Stîla checker"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Cureyê Pelî"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Pelên MO çêke"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Proje rake"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Rûpela Rêvebirina Bikarhêneran a Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Navê bikarhêner"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(li vir nav û Paşnav binivîse)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Navnîşana e-peyam"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(li vir e-peyamê binvîse)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Şîfre"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(li vir şifreyê binvîse)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Çalakkirî"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Bikarhênereke nû çalak bike"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Bikarhênerê/î rake"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Vegere rûpela bingehîn"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Zimanên heyî"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Zimanan rojane bike"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Admin a Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Mafên tê yên admin ên vê projeyê tune."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Ji ÅŸablonan rojane bike"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Zimanê lê zêde bike"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Admin a Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Malpera projeyê"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Nikare maf bide bikarhêner %s - bikarhêner ne derbasbare"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Ev awayê projeya GNU ye (peldankek, pelên bi navê zimanan)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ev awayê standart ê projeyê ye (peldankeke ji bo her zimanî)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Destûrên bikarhêner"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(bikarhênerekî/ê hilbijêre)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Maf"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Rake"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Mafan Rojane bike"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Di der barê Pootleyê de"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> portaleke biçûk a înternetê ji bo "
+"<strong>wergerandinê</strong>! Ji ber ku Pootle <strong>nivîsbariya "
+"azad</strong> e, tu dikarî vê daxê û bi xwe bi kar bînî. Tu dikarî ji "
+"alîkariya pêşxistina Pootle bikî."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Projeya Pootle bi xwe di <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> ye, "
+"tu dikarî li vê derê zêdetir agahî bibînî."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Navê Pootle tê wateyê <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, lê belkî xwendina <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">vê</a> pêwîst be."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Guherto"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Di vê sîteyê dixebitin:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Rûpela Bikarhêner ji bo: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Tercîhan biguherîne"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Rûpela admînan"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Rê ve bibe"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Girêdanên bilêz"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Ji kerema xwe ser 'Tercîhan biguherîne' bitike û çend ziman û projê "
+"hilbijêre"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d proje, li derdora %d%% hatin wergerandin"
+msgstr[1] "%d proje, li derdora %d%% hatin wergerandin"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Koda Zimên"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Navê Zimên"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "Zimanê %d, li derdora %d%% hate wergerandin"
+msgstr[1] "Zimanên %d, li derdora %d%% hatin wergerandin"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Ziman"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projeya %s, Zimanê %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Lêgerîn"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Lêgerîna pêşketî"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Hevokan girêbide"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Çalakî girê bide"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Ji bikarhênerê/î re girê bide"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "armanc"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Navê armancê binivîse"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Armancê lê zêde bike"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Pelî hilkişîne"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Pelê ji bo hilkişandinê hilbijêre"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Li ser binivîse"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Yekkirin"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Di armancê de tune"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Bikarhêner lê zêde bike"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Pelê PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Pelê XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Pelê Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Pelê CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Pelê MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Rojanekirin"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Commit"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Hemû Hevok"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Newergerandî"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Armancê Bixe"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Fonksiyonên Sererastkirinê Nîşan bide"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Statîstîkan Nîşan Bide"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Kontrolan nîşan bide"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Kontrolan veşêre"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Armancan Nîşan bide"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Armancan veşêre"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Têkiliyan nîşan bide"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Têkiliyan veşêre"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Hemû Armanc: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Hevokên Min Wergerîne"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Hevokên Min Bibîne"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Hevokên Min Bilêz Wergerîne"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Pêşniyaran li ber çavan derbas bike"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Pêşniyaran temaşe bike"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Wergerandina bilez"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Newergerandîyan bibîne"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Bendin newergerandî tune ye"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Hemû biwergerîne"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP a armancê"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIPa peldankê"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF'ê çêke"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d hevok (%d%%) naxebite"
+msgstr[1] "%d hevok (%d%%) naxebitin"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d peyv (%d%%) hatin assign kirin"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d hevok]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d peyv (%d%%) hatin wergerandin"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Hemû proje"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Hemû ziman"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Hesaba min"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Belge û alîkarî"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Derkeve"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Têkeve"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Xwê tomar bike"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktîf bike"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo ya Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Di der barê vê pêşkêşkera Pootleyê de"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Hemû armanc"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d pel"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d pel"
+msgstr[1] "%d pel"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d hevok"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nav"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Hatin wergerandin"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Rêjeya wergerandinê"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Peyvên hatin wergerandin"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Nediyar"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Rêjeya ne diyar"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Gotinên ne diyar"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Rêjeya Newergerandiyan"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Peyvên newergerandî"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Tevî"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Hemû gotin"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafîk"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Şîrove"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Cih"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Têketin biserneket"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Tê şandin têketinê..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Jibo gihiştina malperê têketin gereke"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Şayesandinê kesayetî hate rojankirin"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Ji bo gihiştina rûpela admin têketin pêwist e"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Tê şandin malê..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Mafên tê yên admin ên Pootle tune."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Bibîne"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Pêşniyazkirin"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Wergerîne"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Review"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Li arşîvê zêde bike"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Pelên PO compile bike"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Assign"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Tu nikarî bikarhênerên \"nobody\" an \"default\" rakî"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Mafên te tuneye ku li vir tu armancan biguherînî"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Mafê te tuneye ku li vir tu pelan bar bikî"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Mafê nivîsandina ser pelan ê te li vir tune"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Mafê te tuneye ku li vir tu pelên nû bar bikî"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Mafê te tuneye ku li vir tu pelan rojane bikî"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Mafê şandina pelan ê te li vir tune"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Mafê te tuneye ku li vir tu assignments biguherînî"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Mafê guherandina wergerên a te li vir tune"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Li vir mafê te yê pêşinyarkirina guhertinan tuneye"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Li vir mafê te tuneye tu pêşinyaran di ber çavan re derbas bikî"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d hatin wergerandin\n"
+"(%d newergerandî, %d fuzî)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: %s bi %s tê wergerandin: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Orijînal"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Werger"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Pêşniyazê bipejirîne"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Pêşniyazê nepejirîne"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Şîroveyên Wergêran"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Şîroveyên Pêşdebiran"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Girêdayî"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Dixebite..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Çewtî: Tiştek têk çu."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Dawiya pakêtê"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Ji bo tu li naverokê vegerî, vir tikîne"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Destpêk"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d yên berê"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Tiştên %d heta %d ji %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Pêş %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Dawî"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s tê kontrolkirin"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Encama vê lêgerandinê tune ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Te berçav derbaskirina hemû hevokên hilbijartî bi dawî kir"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Yekjimar"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Pirjimar"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Sererast bike"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Jibergirtin"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Derbas be"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "PaÅŸve"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Åžandin"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Bilindtir"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Nizmtir"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma pirhejmar ya %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Wegerandin ne gengaz e ji ber ku ji bo zimanê te agahî der barê pirjimaran "
+"de ne amade ye. Ji kerema xwe bi rêveberiya sîteyê re biaxeve."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Wergera aniha:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Pêşniyara %d a %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Pêşniyara %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Pêşniyar a %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Pêşniyar:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Pêwist e tu ji bo şîfreyê bi kêmanî %d tîpan bi kar bînî."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Şîfre û piştrastkirin hevdu nagirin."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Têkeve Pootleyê"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Navê bikarhêner:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Şîfre:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Ziman:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Têkeve"
+
+#: users.py:77
+msgid "Default"
+msgstr "Standard"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Detayên xwe tomarkirinê binivîse"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Tomara Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Navê bikarhêner ku te xwest"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Divê navnîşana email a derbasdar be"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Nav û paşnavê te"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Şîfreya te xwest"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Şîfreyê piştrast bike"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Ji bo piştrastkirinê şifreya xwe dîsa binivîse"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Hesabê biqeydîne"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Ji kerema xwe detayên aktîfkirinê binivîse"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Aktîfkirina hesaba Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Koda aktîfkirinê"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Koda aktîfkirina ku te stand"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Hesabê aktîf bike"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Tercîhên %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Hûragahiyên kesayetî"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-Peyam"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Mîhengên Navruya Wergerê"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Zimanê Navruya Bikarhêneran"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Projeyên min"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Zimanên min"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Serûpel"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Zimanê Çavkaniya Alternatîf"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Ne yek"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Bilindahiya Têketinê (rêzik)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Hejmara rêzikan di mode ya dîtinê de"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Hejmara rêzikan di moda wergerê de"
+
+#: users.py:307
+msgid "Error"
+msgstr "Çewtî"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Pêwist e tu bibî adminê malperê da tu bikaribî bikarhêneran biguherînî"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Pêwist e navê bikarhêner tenê herf û hejmar bihundirîne, divê tîpa destpêkê "
+"herfek be."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Debasa <a href='%s'>têketinê</a> dibe\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Hesabekî Pootle ji bo te bi vê navnîşana e-peyamê hat afirandin.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Ji bo çalakkirina hesabê xwe, vê lînkê bişopîne:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Koda aktîfkirinê ya te:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Yanjî li ser linka çalakkirinê ya di email de bitikîne)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Navê te yê bikarhêner ev e: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Şîfreya te: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Navnîşan email a te ev e: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Rêberî tê nuhkirin ji bo qeyîdkirna rûpêl..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Tê şandin rûpela têketinê..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Konto ya te hate çalakkirin ! Ji bo têketine rêberî tê nuhkirin..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Agahîyên çalakkirinê ne dirust bûn."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Çalakkirin biserneket"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Bipejirîne"
+
+#~ msgid "Reject"
+#~ msgstr "Nepejirîne"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Projeya Wergerandina WordForge"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Divê navnîşana derbasdar be"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d dosya, %d/%d hevok (%d%%) hatin wergerandin"
+
+#~ msgid "project root"
+#~ msgstr "Koka projeyê"
+
+#~ msgid "current folder"
+#~ msgstr "Klasora aniha"
+
+#~ msgid "parent folder"
+#~ msgstr "Klasora jor"
+
+#~ msgid "%d files, "
+#~ msgstr "%d dosya, "
+
+#~ msgid "%d strings (%d%%) assigned"
+#~ msgstr "%d hevok (%d%%) hatin dayîn"
+
+#~ msgid "not logged in"
+#~ msgstr "Ne têketî"
+
+#~ msgid "current file"
+#~ msgstr "Dosyaya aniha"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ky/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ky/jToolkit.po
new file mode 100644
index 0000000..3754429
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ky/jToolkit.po
@@ -0,0 +1,147 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-09-11 08:18+0000\n"
+"Last-Translator: Timur Jamakeev <ztimur@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s үчүн логин"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Бул операциÑны аÑктап, жаңы ÑеÑÑÐ¸Ñ Ð°Ñ‡ÑƒÑƒ"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"Бул операциÑны жаÑагындын ордуна, ÑиÑтемадан чыгып кайра башынан баштаңыз"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "СиÑтемадан чыгуу"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+"Бул программадан чыгып, мындын бир деңгÑÑл жогору турган программага кайтуу"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", логинди тактаңыз"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Логин"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "ЫÑым:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "СырÑөз:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Тил:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Программа тандоо"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "СеÑÑиÑны аÑктоо"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Чыгуу"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "Ñиз <b>%s</b> катары кирдиңиз"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "жаңы ÑеÑÑиÑны кошууга болбойт"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "ÑеÑÑÐ¸Ñ Ð°Ñктаган"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "туташылган"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "башкаруучу ÑеÑÑÐ¸Ñ Ð°Ñктады"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"Ñервердин конфигинен колдонуучуларды же \"колдонуучунун параметрлерин\" "
+"аныктаңыз"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "колдонуучу жок (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "туура ÑÐ¼ÐµÑ Ñ‹Ñым жана/же ÑÑ‹Ñ€Ñөз"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "тактоодо логин түп нуÑкаÑына дал келбейт"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Жок"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ооба"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "жоготуу"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(тиркеме жок)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "тиркеме Ó©Ñ‚Ó© Ñле чоң"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "бул тиркемени жоготуу"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "калыбына келтирүү"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "бул тиркеме жоготулган. аны калыбына келтирүү үчүн бул жерди баÑыңыз"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "файл тиркөө"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ky/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ky/pootle.po
new file mode 100644
index 0000000..e98e037
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ky/pootle.po
@@ -0,0 +1,1386 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-15 09:39+0000\n"
+"Last-Translator: Timur Jamakeev <ztimur@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle демонÑтрациÑÑÑ‹"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Башбарак"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Колоднуучулар"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Тилдер"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Проектер"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Ðегизги ыраÑтоолор"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "ЫраÑтоо"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Учурдагы маани"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Өзгөрүүлөрдү Ñактоо"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "БашÑап"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "БаÑн"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Ðегизги URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Башкы барак"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle тилдерин башкаруу барагы"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Ðегизги башкаруу барагы"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO код"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Толук Ñ‹Ñым"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(тилди бул жерге кошуу)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Ðтайын Ñимволдор"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(атайын Ñимволдор)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Көптүк түрдүн Ñаны"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(көптүк түрдүн Ñаны)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Көптүк түрдүн туюнтмаÑÑ‹"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(көптүк түрдүн туюнтмаÑÑ‹)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Тилди жоготуу"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s жок кылуу"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Стандарттык"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle проектерин башкаруу барагы"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Проектин коду"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(проекти бул жерге кошуу)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Проектин баÑны"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(проектин баÑны)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Текшерүү модулунун Ñтили"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Файлдын тиби"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO файлдарын жаратуу"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Проекти жок кылуу"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle колдонуучуларын башкаруу барагы"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Колдонуучунун Ñ‹Ñымы"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(бул жерге толук Ñ‹Ñымды киргизиңиз)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Электрондук дарек"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(бул жерге Ñлектрондук даректи киргизиңиз)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "СырÑөз"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(бул жерге ÑÑ‹Ñ€Ñөздү киргизиңиз)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Ðктивдештирилген"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Жаңы колдонуучуну жандандыруу"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Колдонуучуну жок кылуу"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Ðегизги баракка кайтуу"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Учурдагы тилдер"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Тилдерди жаңылоо"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle админи: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Бул проекти башкарууга укугуңуз жетишÑиз."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Калыптардан жаңылоо"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Тил кошуу"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle админи: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Проектин башкы барагы"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "%s колдонуучуÑу үчүн укуктар орнотулбады - мындай колдонуучу жок"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Бул GNU Ñтилиндеги проект (бир каталогдуу, ар-бир тилге тийиштүү файл бар)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Бул Ñтандарттык Ñтилдеги проект (ар-бир тилге өзүнчө каталог)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Уолдонуучунун укуктары"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(колдонуучу кошуу үчүн аны тандаңыз)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Укукттар"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Жоготуу"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Укуктарды жаңылоо"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Pootle жөнүндө"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> бул жөнөкөй веб портал, ал Ñизге компьютердик "
+"программаларды <strong>которууга</strong> мүмкүнчүлүк берет! Pootle - "
+"<strong>Эркин программалык жабдык</strong>, Ñгер каалаÑаңыз аны жүктөп алып "
+"өзүңүз иштетÑеңиз болот. Ошондой Ñле, аны түзүү ишине Ñизге ылайыктуу "
+"жолдору менен катышÑаңыз болот (бул үчүн программа түзүүнү билүүнүн кажети "
+"деле жок)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle проекти <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"дарегинде жайгашкан. Ðл жерде проектин башат коду, Ñлектрондук кабар "
+"таркатуу ÑиÑтемаÑÑ‹ ж.б. жайгашкан."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Проектин аталышы төмөнкүчө чечмеленет <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine (PO файлына "
+"негизделген которуу жана локализациÑлоо онлайн ÑиÑтемаÑÑ‹). Ошондой Ñле <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">бул маалымат</a> менен "
+"таанышууну Ñунуштайбыз."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "ВерÑиÑлар"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Сайтта аткарылууда:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (на %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Колдонуучунун барагы: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "ЫраÑтоолорду өзгөртүү"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Ðдмин барагы"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Башкаруу"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Ыкчам шилтемелер"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "'ЫраÑтоолорду өзгөртүү' шилтемеÑин баÑып тил жана проект тандаңыз"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d проект, орточо %d%% которулган"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Ðдмин"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Тилдин коду"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Тилдин аты"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d тил, орточо %d%% которулган"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Тил"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Проект %s, тил %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Издөө"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Кеңейтилген издөө"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Файлды артууга болбоду, файл тиркелген ÑмеÑ"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "PO файлдарды жана архивделген PO файлдарын гана артууга болот"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Саптарды аныктоо"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Ðракеттерди аныктоо"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Колдонуучуга байланыштыруу"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "маÑелелер"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "МаÑеленин атын киргииңиз"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "МаÑеле кошуу"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Файл артуу"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Ðртуу үчүн файл тандаңыз"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Ò®Ñтүнө жазуу"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Эгер файл бар болÑо, анын Ò¯Ñтүнө жазуу"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Бириктирүү"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Файлды учурдагы файл менен бириктирип, конфликтүү Ñаптарды Ñунуш катары "
+"белгилөө"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "МаÑеледе ÑмеÑ"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Колдонуучу кошуу"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO файл"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF файл"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts файл"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV файл"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO файл"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Жаңылоо"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Бекитүү"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Бардык Ñаптар"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Которулбаган"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Байланышпаган"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Байланышпаган жана которулбаган"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "МаÑеле коюу"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Бир-нечени тандоо"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Байланыштыруу"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Оңдоо функциÑларын көргөзүү"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "СтатиÑтиканы көргөзүү"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Тарыхты көргөзүү"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Тарыхты жашыруу"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Текшерүүнү көргөзүү"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Текшерүүнү жашыруу"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "МаÑелелерди көргөзүү"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "МаÑелелерди жашыруу"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Байланыштарды көргөзүү"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Байланыштарды жашыруу"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Бардык маÑелелер: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Менин Ñаптарымды которуу"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Менин Ñаптарымды көргөзүү"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Сиз менен Ñаптар байланыштырылган ÑмеÑ"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Менин Ñаптарымды ыкчам которуу"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Сиз менен которулбаган Ñаптар байланышкан ÑмеÑ"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Сунуштарды байкоо"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Сунуштарды кароо"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Ыкчам которуу"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Которулбагандарды кароо"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Которулбаган Ñаптар жок"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Бардыгын которуу"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "МаÑелелердин ZIP архиви"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Каталогдордун ZIP архиви"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF жаратуу"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d Ñап (%d%%) ишке ашпады"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d Ñөз (%d%%) байланышкан"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d Ñап]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d Ñөз (%d%%) которулган"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Бардык проектер"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Бардык тилдер"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Менин каттоом"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ Ð¶Ð°Ð½Ð° жардам"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "СеÑÑиÑны аÑктоо"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Кирүү"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Каттоо"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Жандандыруу"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle логоÑу"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Бул Pootle Ñервери жөнүндө"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Бардык маÑелелер"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d файл"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d файл"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d Ñап"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "ÐÑ‚Ñ‹"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Которулган"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Которуу проценти"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Которулган Ñөздөр"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Так ÑмеÑ"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Так ÑмеÑинин проенти"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Так ÑÐ¼ÐµÑ Ñөздөр"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Которулбаганынын проценти"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Которулбаган Ñөздөр"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Бардыгы"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Бардык Ñөздөр"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Графика"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Баштапкы текÑÑ‚"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "МакÑаттык текÑÑ‚"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Комментарийлер"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Жайгашкан жери"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "ÐÑƒÑ‚ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ Ð¸ÑˆÐºÐµ ашкан жок"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Кирүү барагына багыттоо..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Өздүк баракка жетүү үчүн ÑиÑтемага кирүү керек"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Өздүк маалымат жаңыланды"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Ðдин барагына жетүү үчүн ÑиÑтемага кирүү керек"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Өздүк баракка багыттоо..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Pootle башкарууга Ñиздин укугуңуз жок"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Кароо"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Сунуштоо"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Которуу"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Байкоо"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Ðрхивдөө"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO файлдарын компилÑциÑлоо"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Байланыштыруу"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Сиз \"nobody\" же \"default\" колдонуучуÑун жок кыла албайÑыз"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Бул жердин маÑелелерин өзгөртүүгө Ñиздин укугуңуз жок"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Бул жерге файлдарды артууга Ñиздин укугуңуз жок"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Бул жердин файлдарынын Ò¯Ñтүнө жазууга Ñиздин укугуңуз жок"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Бул жерге жаңы файлдарды артууга Ñиздин укугуңуз жок"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Бул жердин файлдарын жаңылоого Ñиздин укугуңуз жок"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Бул жердин файлдарды Ñактоого Ñиздин укугуңуз жок"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Бул жердин байланыштарын өзгөртүүгө Ñиздин укугуңуз жок"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Бул жердин котормолорун өзгөртүүгө Ñиздин укугуңуз жок"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Бул жердин Ñунуштарын өзгөртүүгө Ñиздин укугуңуз жок"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Бул жердин Ñунуштарын байкоого Ñиздин укугуңуз жок"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d которулган\n"
+"(%d которулбаган, %d так ÑмеÑ)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: %s дан %s га которуу: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Түп нуÑкаÑÑ‹"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "КотормоÑу"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Сунуштарды кабылдоо"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Сунуштарды четке кагуу"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Котормочунун комментарийи"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Түзүүчүнүн комментарийи"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Байланышкандар"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Ðткарылууда..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Ката: Бир нерÑеÑи туура ÑмеÑ."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Пакеттин аÑгы"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Файлдар тизмеÑине кайтуу үчүн муну баÑыңыз"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Башы"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Мурунку %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%d ден %d чейинки Ñлементтер, бардыгы %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Кийинки %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "ÐÑгы"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "текшерүү %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Издөөгө туура келген Ñлементтер табылбады ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Тандалган бардык Ñлементтерди карап чыктыңыз"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Жекелик түрү"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Көптүк түрү"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Оңдоо"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Көчүрүү"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Өткөрүү"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Ðртка"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Сактоо"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Кеңейтүү"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Кичирейтүү"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Көптүк түрүнүн Ñаны %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Сиздин тилдин көптүк түрү жөнүндө маалымат жок, ошондуктан которуу мүмкүн "
+"ÑмеÑ. Сайттын башкаруучуÑуна кайрылыңыз."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Учурдагы которомо:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "%2s %1d Ñунуш берди:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "%s Ñунуштары :"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s Ñунуштары:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Сунуш:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Кеминде %d Ñимволдон турган ÑÑ‹Ñ€Ñөз киргизүүңүз керек."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Киргизген ÑÑ‹Ñ€Ñөзүңүз тактоо үчүн киргизген ÑÑ‹Ñ€Ñөзгө дал келбейт."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Pootle ÑиÑтемаÑына кирүү"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Колдонуучу Ñ‹Ñымы:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "СырÑөз:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Тил:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Логин"
+
+#: users.py:77
+msgid "Default"
+msgstr "Ðлдыналынган"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Катто үчүн маалымат киргизиңиз"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle каттооÑу"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Сиз талап кылган колдонуучу аты"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Туура Ñлектрондук дарек киргизиңиз"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Сиздин толук Ñ‹Ñымыңыз"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Сиз каалаган ÑÑ‹Ñ€Ñөз"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "СырÑөздү тактоо"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Тууралыгын текшерүү үчүн ÑÑ‹Ñ€Ñөзүңүздү дагы бир жолу киргизиңиз"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Каттоо"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Жандандыруу үчүн өзүңүздүн маалыматыңызды киргизиңиз"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle каттооÑун жандандыруу"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Жандандыруу коду"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Сиз алган жандандыруу коду"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Каттоону жандандыруу"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "ЫраÑтоолору: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Өздүк маалымат"
+
+#: users.py:186
+msgid "Email"
+msgstr "Электрондук дарек"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Котормо интерфейÑин ыраÑтоо"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Колдонуучу интерфейÑинин тили"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Менин проектерим"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Менин тилдерим"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Башкы барак"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Ðльтернативдик башат тили"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Жок"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Киргизүү талааÑынын бийиктиги (Ñап менен)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Кароо режиминдеги Ñаптардын Ñаны"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Которуу режиминдеги Ñаптардын Ñаны"
+
+#: users.py:307
+msgid "Error"
+msgstr "Ката"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Колдонуучуларды өзгөртүү үчүн Ñиз Ñайттын админи болушуңуз керек"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Колдонуучу Ñ‹Ñымы тамга жана цифралардан туруп, Ñөз жок тамгадан башталышы "
+"керек."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Сиз (же кимдир бирөө), Ñиздин атыңыз менен каттоо жүргүзүүгө аракеттенүүдө.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Биз Ñиздин ÑÑ‹Ñ€Ñөзүңүздү өзүн Ñактабайбыз, анын ордуна биз анын Ñ…Ñш мааниÑин "
+"алабыз.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Сизди катоо учурунда проблема пайда болду. Чечүү үчүн %s кайрылыңыз.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Сизди катоо учурунда проблема пайда болду. Чечүү үчүн Ñайттын башкаруучуÑуна "
+"кайрылыңыз.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Мындай колдонуучу аты алдагачан түзүлгөн. Катталган Ñлектрондук дарекке "
+"Ñлектрондук кат жөнөтүлөт.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "<a href='%s'>Кирүү</a> барагына өтүү\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Бул Ñлектрондук даректи колдонуу менен Pootle катооÑу түзүлдү.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Каттоону жандандыруу үчүн, төмөнкү шилтемени караңыз:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Сиздин жандандыруу кодуңуз:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Эгер Ñиз шилтемени карай албаÑаңыз, жогорудагы кодду жандандыруу барагында "
+"киргизиңиз.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Бул кабар Ñлектрондук даректин бар Ñкендигин текшерүү макÑатында жөнөтүлдү. "
+"Эгер Ñиз катталууну каалабаÑаңыз, анда бул кабарды карабай койÑоңуз деле "
+"болот.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Каттоо түзүлдү. Сизге каттоо маалыматтары жана жандандыруу коду жиберилет. "
+"Жандандыруу кодун <a href='%s'>жандандыруу барагына</a> киргизиңиз."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(же жөн гана Ñлектрондук кабардагы жандандыруу шилтемеÑин чертиңиз)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Сиздин колдонуучу Ñ‹Ñымыңыз: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Сиздин ÑÑ‹Ñ€Ñөзүңүз: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Сиздин катталган Ñлектрондук дарегиңиз: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Катоо барагына багыттоо..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Кирүү барагына багыттоо..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Сиздин каттоо жандандырылды! Кирүү барагына багыттоо..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Сиздин жандандыруу маалыматыңыз туура ÑмеÑ."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Жандандыруу ишке ашпады"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Киргизүү талааÑынын бийиктиги Ñан болушу керек"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Киргизүү талааÑынын жазылыгы Ñан болушу керек"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Көргөзүү режиминдеги көрÑөтүлүүчү Ñаптардын Ñаны Ñан болушу керек"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Которуу режиминдеги көрÑөтүлүүчү Ñаптардын Ñаны Ñан болушу керек"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ln/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ln/jToolkit.po
new file mode 100644
index 0000000..19cefcb
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ln/jToolkit.po
@@ -0,0 +1,146 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-04-02 08:41+0000\n"
+"Last-Translator: Destin Pierre-Yves <pydestin@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.1.0rc2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Komikitola mpo na %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Kolimwisa musala oyo mpe kobanda sÉ›sÃ­É”Ì ya sika"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Na esika ya kondima musala oyo, kombémboa mpe kobanda lisusu"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Kobima na aplikasíɔÌ"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Kobima na aplikasÃ­É”Ì mpe kozonga na oyo ya monene"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", kondima ekitoli na yo"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Komikitola"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Ekitoli:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Banda:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Munoko:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Kopona aplikasíɔÌ"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Kombémboa"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Kobima"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "Bayebi yo na nkombo <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "Kobakisa ya sÉ›sÃ­É”Ì ekoki kosalama te"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "Ozombémboa"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "Osi Otingisami"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "kobima ya sÉ›sÃ­É”Ì ya monene"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"mposa ezali ya kolimbola mosaleli to malúli na ye oyo eza na kati ya "
+"mbandisa ya mbÉ›Ìki (sÉ›rvÉ›ÌrÉ›) "
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "Mosaleli ayebani te (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "Ekitoli to banda eza malamu te"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "Ekitoli endimami malamu te"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Te"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ee"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "Kolongola"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(Kásá ibakísámí eza te)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "Kásá ibakísámí eza monene koleka ndelo"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "Longola kásá ibakísámí oyo"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "kozongisa"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "Kásá ibakísámí oyo elongolami, fina awa mpo na kozongisa ye"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "Kabakisa kásá moko"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ln/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ln/pootle.po
new file mode 100644
index 0000000..98c7a07
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ln/pootle.po
@@ -0,0 +1,1403 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-04-03 09:11+0000\n"
+"Last-Translator: Destin Pierre-Yves <pydestin@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.1.0rc2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Elakiseli ya Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Ndako"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Basaleli"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Minoko"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Myango"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Maponi nyonso"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Liponi"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Oyo ezali sikoyo"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Kobombísa mbongwana"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Motó"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Bolimboli"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Ekanganeli (URL) ya moboko (base)"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Lokasa ya ndako"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Lokasa ya Esika ya mikonzi"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "KÉ”ÌÌde ya ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nkombo mobimba"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(kobakisa munoko awa)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Mikomá-gudi"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(mikomá-gudi)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Kolongola munoko"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Kolongola %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Momeseno (Standard)"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Kɔdɛ ya mwango"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(Kobakisa mwango awa)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Bolimboli ya mwango"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(bolimboli ya mwango)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Bomekimeki ya loléngé (stílɛ)"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Loléngé (típɛ) ya Kásá"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Kokela kásá MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Kolongola mwango"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Nkombo"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(kobakisa nkombo na yo mobimba awa)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Adresi ya mikanda"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(kobakisa adresi ya mikanda awa)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Banda"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(kobakisa banda awa)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Kolamwisa, kobandisa"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Kolamwisa Mosaleli ya sika"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Kolongola Mosaleli"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Kozonga na lokasa ya motema (principale)"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Minoko oyo ezali"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Kotia minoko ya sika"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Mokonzi ya Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Oza na lotomo ya koyangela mwango oyo te"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Kotia na emekoli mpe bandakisa ya sika"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Kobakisa munoko"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Moyangeli ya Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Lokasa ya ndako ya mwango"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Kotyama ya lotomo mpo na mosaleli %s ekoki kosalama te - Mosaleli oyo "
+"ayebani te"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Oyo eza mwango ya GNU-style (mokÉ›ÌlÉ›Ì moko, Nkombo ya kásá na munoko moko na "
+"moko)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Oyo eza mwango ya loléngé ya ndakisa (mokÉ›ÌlÉ›Ì moko mpo na munoko moko)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Ntomo ya Basaleli"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(Kopona mpo na kobakisa mosaleli moko)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Ntomo"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Kolongola"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Kotia ntomoya sika"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Oyo etali Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> ezali esika ya wÉ›ÌbÉ› oyo epesi yo nzela mpo na "
+"<strong>kobongola</strong>! Kobanda Pootle ezali <strong>Litambwisi ya "
+"ofele</strong>, okoki kokÉ”ÌngÉ”lÉ” yango kosalela yango na ndenge olingi. "
+"Okoki kosalisa mpo Pootle ekola malamu (Osengeli kozala na mayele na "
+"ɛfɔrmatíki mingi te)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Mwango ya Pootle ye moko ezali kuna <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"Okokoka kokuta kuna nyonso oyo okozala na mposa na yango mpo na kobongisa "
+"yango (Ba-kÉ”ÌÌde, ba-adresi ya mikanda nyonso...)"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Nkombo \"Pootle\" elingi koloba na Anglais : <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, kasi okoki kotanga "
+"mpe oyo eza <a href=\"http://www.thechestnut.com/flumps.htm\">kuna</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Mitindo mikeseni (versió)"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Oyo esika oyo esalelaka:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Lokasa ya Mosaleli ya: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Kobalola baponi"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Lokasa ya Mokonzi"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Koyángela"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Mpo na kokende na mbangu"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Okoki konyata na 'Kobalola baponi' mpo okoka kopona minoko mpe myango"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d mwango, average %d%% oyo esi ebongolami"
+msgstr[1] "%d mwango, average %d%% oyo esi ebongolami"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Mokonzi"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Elembo (KÉ”ÌÌde) ya munoko"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nkombo ya munoko"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d munoko, average %d%% oyo esi ebongolami"
+msgstr[1] "%d munoko, average %d%% oyo esi ebongolami"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Munoko"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Mwango %s, Munoko %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Koluka"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Okoki kokɔngɔ kásá oyo te mpamba te kásá ekangami te"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Okoki kokɔngɔ kaka kásá ya PO mpe PO oyo eminiolami (PO ya zip)"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Kopesa likomikomi"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Kopesa Musala"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Kopesa na Mosaleli"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "mikano"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Koma nkombo ya mokano"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Kobakisa mokano"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "kokɔngɔ kásá moko"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Kopona kásá ya kokɔngɔ"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Kokoma likolo na"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Kokoma likolo na kásá oyo ezali sikoyo soki ezali"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Kosangisa"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Kosangisa kásá oyo na oyo ezali sikoyo mpe kokoma oyo ekeseni na batoli"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Eza na kati ya mikano te"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Kobakisa mosaleli"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Kásá ya PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Kásá ya XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Kásá ya Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Kásá ya CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Kásá ya MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Kotya ya sika"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Kopesa na"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Makomikomi nyonso"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Oyo ebongolami nanu te"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Oyo epesami te"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Oyo epesami te mpe Oyo esi ebongolami te"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Kotya Mokano"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Kopona mingi"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Kopesa na"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Komonisa ndenge oyo okoki kobalola"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Komonisa Mituya ya ntina (ba-statistique)"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Komonisa oyo emekimeki (Check)"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Kobómba oyo emekimeki (Check)"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Komonisa mikano"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Kobómba mikano"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Komonisa oyo epesami"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Kobómba oyo epesami"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Mikano nyonso: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Kobongola makomikomi na ngai"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Kotala makomikomi na ngai"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Likomikomi moko te eza ya yo"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Kobongola na mbangu makomikomi na ngai"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Likomikomi moko te oyo ebongolami te eza ya yo"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Komona batoli lisusu"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Komona batoli"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Kobongola na mbangu"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Komona oyo ebongolami te"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Oyo ebongolami te eza te"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Kobongola nyonso"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP ya mokano"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP ya ebómbi"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Kokela SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d likomikomi (%d%%) ekoti na mai"
+msgstr[1] "%d likomikomi (%d%%) ekoti na mai"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d maloba (%d%%) oyo epesami"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d makomikomi]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d maloba (%d%%) Oyo esi ebongolami"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Myango nyonso"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Minoko nyonso"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Eteni ya ngai"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Mikanda ya koyebisaka (dokimá) mpe lisálisi"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Kombémboa"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Komíkitola"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Komíkomisa"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Kolamwisa"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Elilingi ya Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Oyo etali mbÉ›Ìki ya Pootle oyo"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Mikano nyonso"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d kásá"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d makomikomi"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nkombo"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Oyo esi ebongolami"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Oyo ebongolami na mokámá (%)"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Maloba oyo ebongolami"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Oyo eza sikisiki mpenza te"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Oyo eza sikisiki mpenza te na mokámá (%)"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Maloba oyo eza sikisiki mpenza te"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Oyo ebongolami nanu te na mokámá (%)"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Maloba oyo ebongolami nanu te na mokámá (%)"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Nyonso Mobimba"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Maloba nyonso"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Boyemi"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Kombémbana na yo ekoti na mai"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Tozotinda yo tii kombémbana..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Mposa ya kombémbana na lokasa ya ndako ezali"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Oyo etali yo esi etyami ya sika"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Mposa ya kombémbana na lokasa ya mokonzi ezali"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Tozotinda yo tii ndako..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Oza na lotomo mpo na koyangela Pootle te."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "LimÉ”Ìniseli"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Ntoli"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Kobongola"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Likundoli"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Libómbí"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kobóngwisa kásá ya PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Kokangela"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Okoki kolongola mosaleli \"Oyo eza te\" to \"Oyo ya lipɔneli\" te"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Oza na lotomo ya kobongwanisa mikano awa te"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Oza na lotomo ya kokɔngɔ kásá awa te"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Oza na lotomo ya kokoma likolo ya kásá awa te"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Oza na lotomo ya kokɔngɔ kásá ya sika awa te"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Oza na lotomo ya kokɔngɔ kásá awa te"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Oza na lotomo ya kopesa kásá awa te"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Oza na lotomo ya kobongwana oyo epesamaki awa te"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Oza na lotomo ya kobongola mabongoli awa te"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Oza na lotomo ya kopesa ntoli mpo na mabongoli awa te"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Oza na lotomo ya kokundola batoli awa te"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d Oyo esi ebongolami\n"
+"(%d pÉ›ÌmbÉ›Ì, %d oyo eza ya sikisiki mpenza te)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: kobongolama %s na %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Oyo esengeli kobongolama"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Libongoli"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Linanoli ya mobongoli"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Linanoli ya Mozalisi ya litambwisi"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Oyo ekanganeli"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Nsuka ya Mabongoli oyo olingaki komona lisusu"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Fina awa mpo na kozonga na index"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Kobanda"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Oyo eleki %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Biloko %d tii %d na %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Oyo elandi %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Nsuka"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "Komekaka %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Oyo oluki eza te ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Okoki kotambola lisusu te na kati ya biloko oyo oponaki"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Kobalola"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Koákisa"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Kopimboa"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Nsima"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Kotinda"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Kokomisa monene"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Kokomisa muke"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Libongoli ekoki kosalama te mpambe te plural information mpo na munoko na yo "
+"eza te. Benga mokonzi ya esika wÉ›ÌbÉ› oyo"
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Libongoli oyo ezali sikoyo:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Ntoli %d ya %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Ntoli %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Ntoli ya %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Ntoli:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Osengeli kokoma banda oyo eleki mikomá %d."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Banda oyo okomaki ekokani na oyo ya kondima te."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Komíkitola na Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Nkombo:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Banda:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Munoko:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Ekitoli"
+
+#: users.py:77
+msgid "Default"
+msgstr "Oyo ya lipɔneli"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Kokotisa oyo etali bokomisi na yo"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Bokomisi ya Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Nkombo oyo osengaki"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Osengeli kokoma adresi ya mikanda oyo ebongi"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Nkombo na yo mobimba"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Banda oyo olingi"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Kondima ya banda na yo"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Koma banda na yo lisusu mpo na komona soki okomaki yango malamu ya liboso"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Kokomisa eteni (compte)"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Kokotisa oyo etali bolamwisi na yo"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Bolamwisi ya eteni ya Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "KÉ”ÌÌde ya Bolamwisi"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "KÉ”ÌÌde ya Bolamwisi oyo ozwaki"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Kolamwisa eteni"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Maponi mpo na: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Oyo etali yo"
+
+#: users.py:186
+msgid "Email"
+msgstr "Mikanda"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Esika ya mbandisa ya libongoli"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Munoko ya litákanelo lia bosáleli na bokuli (Munoko ya GUI)"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Myango na ngai"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Minoko na ngai"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Lokasa ya ndako"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Motúya ya mokÉ”lÉ”ÌtÉ” oyo ezali na motindo(móde) ya limÉ”Ìniseli"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Motúya ya mokÉ”lÉ”ÌtÉ” oyo ezali na motindo(móde) ya libongoli"
+
+#: users.py:307
+msgid "Error"
+msgstr "Zíko (libunga)"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Osengeli kozala Mokonzi mpo okoka kobalola basaleli"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Nkombo esengeli kozala afánimeríki, mpe esengeli kobanda na mokomá ya "
+"afabÉ›Ì."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Yo (to moto mosusu) amekaki komikomisa na eteni oyo eza na nkombo na yo. \n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Tobómbisaka banda na yo na ndenge ete basusu bakoki kotanga yango te.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Soki likambo ezali mpo omikomisa, benga %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Soki likambo ezali mpo omikomisa, benga Mokonzi ya esika oyo.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Mosaleli mosusu asalelaka nkombo oyo. Mokanda moko ekotindamela yo na adresi "
+"oyo ekomisamaki. \n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Tozali <a href='%s'>kombémbanisa (kokotisa) yo</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+"Eteni ya Pootle, oyo eza na adresi ya mikanda oyo, esi ekelami. \n"
+" "
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Mpo okamwisa eteni oyo, fina awa:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"KÉ”ÌÌde ya kolamwisa na yo ezali: \n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Soki okoki te kokende na ekanganeli (lien), okoki kobeta kÉ”ÌÌde oyo na kati "
+"ya lokasa ya kolamwisa. \n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Mokanda oyo etindamelaki yo kaka mpo na koyeba soki adresi ya mikanda na yo "
+"ezali ya solo. Soki olingi komikomisa te mpo na kozwa eteni moko, okoki kaka "
+"kokipe na mokanda oyo te. \n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Eteni esi ekelami. Okozwa mokanda moko, nyonso oyo oza na mposa na yango "
+"ekozala na kati, elingi koloba ekitoli mpe banda na yo. Koma kÉ”ÌÌde ya "
+"kolamwisa na yo na <a href='%s'>lokasa ya kolamwisa</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+"(To okoki kaka kofina na ekanganeli (lien) oyo ekozala na kati ya mokanda)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Nkombo na yo ezali: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Banda na yo ezali: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Adresi ya mikanda na yo ezali: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Tozotinda yo tii Lokasa ya komikotisa..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Tozotinda yo tii Lokasa ya kombémbana..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"Eteni na yo esi elamwisami! Tozotinda yo sikoyo tii Lokasa ya kombémbana..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Oyo okomaki mpo na kolamwisa na yo ebongi te."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Kolamwisa na yo ekoti na mai"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Kondima"
+
+#~ msgid "Reject"
+#~ msgstr "Koboya"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Mwango ya Kobongola WordForge (WordForge Translation Project)"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/lt/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/lt/jToolkit.po
new file mode 100644
index 0000000..4b64834
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/lt/jToolkit.po
@@ -0,0 +1,147 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-07-27 19:40+0200\n"
+"Last-Translator: Edmondas Girkantas <eg@bsd.lt>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"(n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 1.0.2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Prisijungti %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Atšaukti šį veiksmą ir pradėti naują sesiją"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Vietoj patvirtinę šį veiksmą, atsijunkite ir pradėkite iš naujo"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Išeiti iš programos"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Išeiti iš šios programos ir sugrįžti į pradinę programą"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", prašau patvirtinkite prisijungimą"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Prisijungimas"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Vartotojo vardas:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Slaptažodis:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Kalba:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Pasirinkire programÄ…"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Atsijungti"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "IÅ¡eiti"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "prisijungęs <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "negalima pridÄ—ti naujos sesijos"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "atsijungęs"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "prisijungęs"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "išėjęs iš pagrindinės sesijos"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"reikia nurodyti vartotojo ar vartotojo nustatymų prieigą serverio "
+"konfigūracijoje"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "vartotojas neegzistuoja (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "neteisingas vartotojo vardas ir/arba slaptažodis"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "neįvykęs prisijungimo patvirtinimas"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ne"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Taip"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "Å¡alinti"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(nÄ—ra priedo)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "priedas per didelis"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "Å¡alinti priedÄ…"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "atkurti"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "Å¡is priedas yra paÅ¡alintas. spustelÄ—kite Äia, norÄ—dami atkurti"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "pridÄ—ti rinkmenÄ…"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "reikia nurodyti vartotojo prieigą serverio konfigūracijoje"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/lt/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/lt/pootle.po
new file mode 100644
index 0000000..c749d00
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/lt/pootle.po
@@ -0,0 +1,1436 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-07-28 08:35+0200\n"
+"Last-Translator: Edmondas Girkantas <eg@bsd.lt>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"(n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 1.0.2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle demonstracija"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Į pradžią"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Vartotojai"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Kalbos"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projektai"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Bendrosios parinktys"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Parinktis"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Dabartinė reikšmė"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Įrašyti pakeitimus"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Pavadinimas"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Apibūdinimas"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Bazinis URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Pradinis puslapis"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Pagrindinis administravimo puslapis"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO kodas"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Vardas, PavardÄ—"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(pridÄ—kite kalbas...)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Specialieji simboliai"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(specialieji simboliai)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Daugiskaitų skaiÄius"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(daugiskaitų skaiÄius)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Daugiskaitos lygtis"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(daugiskaitos lygtis)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Å alinti kalbÄ…"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Å alinti %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standartinis"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projekto kodas"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(pridÄ—ti projektÄ…...)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projekto apibūdinimas"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(projekto apibūdinimas)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Tikrintuvo stilius"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Rinkmenos tipas"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Sukurti MO rinkmenas"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Å alinti projektÄ…"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Vartotojo vardas"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(nurodykite pilnÄ… vardÄ…...)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "El. pašto adresas"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(el. paštas...)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Slaptažodis"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(nurodykite slaptažodį...)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktyvuota"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktyvuoti naująjį vartotoją"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Å alinti vartotojÄ…"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Grįžti į pagrindinį puslapį"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Esamos kalbos"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Naujinti kalbas"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle administratorius: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Jums nesuteiktos teisės administuoti šį projektą."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Naujinti naudojant Å¡ablonus"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "PridÄ—ti kalbÄ…"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle Administravimas: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Pradinis projekto puslapis"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Negali suteikti teisių vartotojui %s - tokio vartotojo nėra"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Tai GNU-tipo projektas (vienas katalogas; rinkmenoms pavadinimai suteikiami "
+"pagal kalbÄ…)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Tai - standartinio tipo projektas (vienas katalogas vienai kalbai)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Vartotojo prieigos teisÄ—s"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(pasirinkite, norÄ—dami pridÄ—ti vartotojÄ…)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "TeisÄ—s"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Å alinti"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Naujinti teises"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Apie Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> yra nesudėtingas internetinis portalas leidžiantis "
+"jums <strong>versti</strong>! Pootle programinė įranga yra "
+"<strong>nemokama</strong>, todėl jūs galite ją parsisiųsti ir įdiegti savo "
+"asmeniniame kompiuteryje. Jūs taip pat įvairiais būdais galite prisidėti "
+"prie mūsų tobulėjimo (ir visai nebūtina mokėti programuoti)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle projektas yra globojamas <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> ÄŒia "
+"jūs surasite daugiau informacijos programinį kodą, kontaktus."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Pavadinimas yra žodžių <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine santrumpa, Jei reikia papildomos "
+"informacijos skaitykite <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">tai</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versijos"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Å ioje svetainÄ—je veikia:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Vartotojo puslapis: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Keisti parinktis"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Administratoriaus puslapis"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administruoti"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Greitosios nuorodos"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "SpustelÄ—kite 'Keisti parinktis' ir pasirinkite kalbas bei projektus"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projektas, vidutiniškai %d%% išversta"
+msgstr[1] "%d projektai, vidutiniškai %d%% išversta"
+msgstr[2] "% projektų, vidutiniškai %d% išverstų"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administratorius"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Kalbos kodas"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Kalbos pavadinimas"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d kalba, vidutiniškai %d%% išversta"
+msgstr[1] "%d kalbos, vidutiniškai %d%% išversta"
+msgstr[2] "%d kalbų, vidutiniškai %d%% išverstų"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Kalba"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projektas %s, Kalba %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Ieškoti"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Negali nusiųsti rinkmenos - nepridėta rinkmena"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Negali siųsti PO rinkmenų bei suspaustų PO rinkmenų"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Priskirti sekÄ…"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Priskirti veiksmÄ…"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Priskirti vartotojui"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "tikslai"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Įveskite tikslo pavadinimą"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Pridėkite užduotį"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Siųsti rinkmeną"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Pasirinkite siunÄiamÄ… rinkmenÄ…"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Pakeisti"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Pakeisti esamÄ… failÄ…, jei jis egzistuoja"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Sujungti"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Sujungti failą su einamuoju failu, o nesutapimus paversti pasiūlymais"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Nėra tarp uždavinių"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "PridÄ—ti vartotojÄ…"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO rinkmena"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF rinkmena"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts rinkmena"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV rinkmena"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO rinkmena"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Naujinti"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Pateikti"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Visos eilutÄ—s"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Neišversta"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Nepriskirta"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Nepriskirta ir neišversta"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Nustatyti uždavinį"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Pažymėti keletą"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Priskirti:"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Rodyti redagavimo funkcijas"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Rodyti statistikÄ…"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Rodyti taisinius"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "SlÄ—pti taisinius"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Rodyti tikrinimus"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "SlÄ—pti tikrinimus"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Rodyti užduotis"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Slėpti užduotis"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Rodyti priskyrimus"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "SlÄ—pti prirskyrimus"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Visos užduotys: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Versti mano eilutes"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Rodyti mano eilutes"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "NÄ—ra jums paskirtų eiluÄių"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "IÅ¡versti greitai mano eilutes"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Jums nÄ—ra paskirta jokių neiÅ¡verstų eiluÄių"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Siūlymų peržiūra"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Žiūrėti siūlymus"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Greitasis vertimas"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Peržiūrėti tai, kas neišversta"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Nėra neišverstų elementų"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Versti viskÄ…"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP archyvas su uždaviniais"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP archyvas"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Generuoti SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d eilutÄ— (%d%%) nepavyko"
+msgstr[1] "%d eiluÄių (%d%%) nepavyko"
+msgstr[2] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d žodžių (%d%%) priskirta"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d eiluÄių]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d žodžių (%d%%) išversta"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Visi projektai"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Visos kalbos"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mano paskyra"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumentacija ir pagalba"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Atsijungti"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Registruotis į sistemą"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registruotis"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktyvuoti"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle Logotipas"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Apie Pootle serverį"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Visi uždaviniai"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d rinkmenų"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d rinkmena"
+msgstr[1] "%d rinkmenos"
+msgstr[2] "% rinkmenų"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d eiluÄių"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Pavadinimas"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "IÅ¡versta"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "IÅ¡versta procentais"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Išversti žodžiai"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Neaiškus"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Neaiškūs procentais"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Neaiškūs žodžiai"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Neišversta procentais"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Neišversti žodžiai"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Viso"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Viso žodžių"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafikas"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Prisijungimas nepavyko"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Nukreipiama į prisijungimo puslapį..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Norint patekti į pagrindinį puslapį, būtina registruotis"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "AsmeninÄ— informacija buvo atnaujinta"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Norint patekti į administratoriaus puslapį, būtina registruotis"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Nukreipiama į pagrindinį puslapį..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Neturite teisių administruoti pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Rodinys"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Siūlyti"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Versti"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Peržiūra"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archyvas"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompiliuoti PO rinkmenas"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Priskirti"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Negalite pašalinti \"nobody\" arba \"default\" vartotojo"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Neturite teisių keisti užduotis"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Neturite teisių įkelti rinkmenas"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Neturite teisių keisti rinkmenas"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Neturite teisių įkelti naujas rinkmenas"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Neturite teisių atnaujinti rinkmenas"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Neturite teisių pateikti failus"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Neturite teisių keisti paskyras"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Neturite teisių keisti vertimus"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Neturite teisių siūlyti pakeitimus"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Neturite teisių peržiūrėti pasiūlymus"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d išversta\n"
+"(%d blank, %d fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: verÄia %s į %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Originalas"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Greitas vertimas"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "VertÄ—jo komentarai"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "KÅ«rÄ—jo komentarai"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "SusijÄ™"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Paketo pabaiga"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "SpustelÄ—kite Äia, norÄ—dami sugrįžti į rodyklÄ™"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Pradžia"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Ankstesnis %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Elementų nuo %d iki %d iš %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Kitas %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Pabaiga"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "tikrinama %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "NÄ—ra užklausÄ… atitinkanÄių elementų ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Jūs baigėte peržiūrėti pasirinktus elementus"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Vienaskaita"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Daugiskaita"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Taisyti"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopijuoti"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Praleisti"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Atgal"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Pateikti"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Didinti"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Mažinti"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Daugiskaitos forma %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Vertimas neįmanomas, nes nėra pakankamai informacijos apie jūsų kalbą. "
+"Prašome susisiekti su tinklapio administratoriumi."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Esamas vertimas:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Pasiūlymą %d pasiūlė %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Pasiūlymas %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Pasiūlymą pasiūlė %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Pasiūlymas:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Jūs turite įvesti slaptažodį sudarytą bent iš %d simbolių."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Nesutampa įvestas bei patvirtinimo slaptažodžiai."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Prisijungti prie Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Vartotojo vardas:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Slaptažodis:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Kalba:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Registruotis į seansą"
+
+#: users.py:77
+msgid "Default"
+msgstr "Numatytasis"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Prašau, įveskite registracijos duomenis"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle registracija"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Jūsų norimas vartotojo vardas"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Būtina įvesti galiojantį el. pašto adresą"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Jūsų vardas ir pavardė"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Jūsų pageidaujamas slaptažodis"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Pakartokite slaptažodį"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Pakartokite dar kartą savo slaptažodį, kad patvirtinti jog jis įvestas "
+"teisingai"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registruoti paskyrÄ…"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Prašau, įrašykite aktyvavimo duomenis"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle paskyros aktyvacija"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktyvavimo kodas"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Jūsų gautas aktyvavimo kodas"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktyvuoti paskyrÄ…"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Parinktys skirti: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "AsmeninÄ— informacija"
+
+#: users.py:186
+msgid "Email"
+msgstr "El. paštas"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Vertimo sąsajos konfigūracija"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Naudotojo sÄ…sajos kalba"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mano projektai"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mano kalbos"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Pradžios tinklapis"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Įvedimo lauko aukštis (eilutėmis)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "EiluÄių skaiÄius peržiÅ«ros bÅ«senoje"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "EiluÄių skaiÄius vertimo bÅ«senoje"
+
+#: users.py:307
+msgid "Error"
+msgstr "Klaida"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Turite būti tinklapio administratorius, kad pakeisti vartotojus"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Vartotojų vardai turi bÅ«ti sudaryti iÅ¡ raidžių bei skaiÄių, o pirmoji raidÄ— "
+"prasidÄ—ti abÄ—cÄ—lÄ—s raide."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Jūs (arba kažkas kitas) bandė užregistruoti paskyrą su šiuo vartotojo vardu.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Mes nesaugome jūsų slaptažodžio tik jo maišos reikšmę.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Jei turite registracijos problemų susisiekite su %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Jei turite registracijos problemų, tai prašome susisiekti su tinklapio "
+"administratoriumi.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Toks vartotojo vardas jau yra. Elektroninis laiškas bus išsiųstas "
+"registruotam el. pašto adresui.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Pereiti į <a href='%s'>prisijungimo puslapį</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Pootle paskyra buvo sukurta naudojant šį el. pašto adresą.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Kad aktyvuoti Å¡iÄ… paskyrÄ… sekite Å¡ia nuoroda:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Jūsų aktyvavimo kodas yra:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Jei jums nepavyko atverti nuorodos, tai įveskite aukÅ¡Äiau nurodytÄ… kodÄ… "
+"aktyvavimo puslapyje.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Šis pranešimas yra išsiųstas tam, kad patikrinti ar el. pašto adresas yra "
+"korektiškas. Jei jūs nenorite sukurti paskyros, tai tiesiog ignoruokite šią "
+"žinutę.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Paskyra sukurta. Jums bus išsiusti prisijungimo duomenys bei aktyvavimo "
+"kodas. Prašome įvesti savo aktyvavimo kodą <a href='%s'>aktyvavimo "
+"puslapyje</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Arba tiesiog spragtelkite ant aktyvavimo nuorodos el. laiške)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Jūsų vartotojo vardas yra: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Jūsų slaptažodis yra: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Jūsų registruotas el. pašto adresas yra: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Peradresuojama į registracijos puslapį..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Peradresuojama į prisijungimo puslapį..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Jūsų paskyra aktyvuota! Peradresuojama į prisijungimo puslapį..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Å i aktyvacijos informacija buvo neteisinga."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktyvacija nesÄ—kminga"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Ä®vesties aukÅ¡tis turi bÅ«ti sudarytas iÅ¡ skaiÄių"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Ä®vesties plotis turi bÅ«ti sudarytas iÅ¡ skaiÄių"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+"Rodomų eiluÄių skaiÄius peržiÅ«ros bÅ«senoje turi bÅ«ti sudarytas iÅ¡ skaiÄių"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Rodomų eiluÄių skaiÄius vertimo bÅ«senoje turi bÅ«ti sudarytas iÅ¡ skaiÄių"
+
+#~ msgid "Accept"
+#~ msgstr "Patvirtinti"
+
+#~ msgid "Reject"
+#~ msgstr "Atmesti"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge vertimo projektas"
+
+#~ msgid "Broaden"
+#~ msgstr "PlÄ—sti"
+
+#~ msgid "Narrow"
+#~ msgstr "Siaurinti"
+
+#~ msgid "Reset"
+#~ msgstr "Nustatyti iš naujo"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Būtinas galiojantis el. pašto adresas"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> yra internetinė tinklavietė, leidžianti jums "
+#~ "<strong>versti</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "pirminis aplankas"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projektai</h3>"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "tai yra demonstracinÄ— pootle versija"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/lv/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/lv/jToolkit.po
new file mode 100644
index 0000000..cc44b81
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/lv/jToolkit.po
@@ -0,0 +1,143 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-09-01 12:29+0000\n"
+"Last-Translator: Imants <imantsgi@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : "
+"2);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Pieslēgties %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Beigt Å¡o darbÄ«bu un sÄkt jaunu sesiju"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "NepastiprinÄt Å¡o darbÄ«bu, atslÄ“gties un sÄkt no sÄkuma"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Iziet no programmas"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Iziet no programmas un atgriezties vecÄka programmÄ"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", lūdzu, apstipriniet pieslēgšanos"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "PieteikÅ¡anÄs"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "LietotÄjvÄrds:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Parole:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Valoda:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "IzvÄ“lÄ“ties aplikÄciju"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Beigt darbu"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Iziet"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "PieslÄ“dzies lietotÄjs <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "nevar pievienot jaunu sesiju"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "atslēdzies"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "savienojies"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "pirmavota sesija pabeigta"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"nepiecieÅ¡ams noteikt lietotÄju vai lietotÄja iestatÄ«jumus servera "
+"iestatījumu datnē config"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "lietotÄjs neeksistÄ“ (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nepareizs lietotÄjvÄrds un/vai parole"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "pieslÄ“gÅ¡anÄs apstiprinÄjums neizdevÄs"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "NÄ“"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "JÄ"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "novÄkt"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(nav piesaistnes)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "Piesaistne ir par lielu"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "noņemt šo piesaistni"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "atjaunot"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "šis pielikums tika izdzēsts. nospiediet šeit lai viņu atjaunotu"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "pievienot failu"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/lv/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/lv/pootle.po
new file mode 100644
index 0000000..d3fd533
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/lv/pootle.po
@@ -0,0 +1,1403 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-01 07:41+0000\n"
+"Last-Translator: Imants <imantsgi@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : "
+"2);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle demonstrÄcija"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "SÄkums"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "LietotÄji"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Valodas:"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekti:"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "VispÄrÄ“jie iestatÄ«jumi"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Iestatījums"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "PaÅ¡reizÄ“jÄ vÄ“rtÄ«ba"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "SaglabÄt izmaiņas"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Nosaukums"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Apraksts"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "BÄzes URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "SÄkumlapa"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle valodu administrēšanas lapa"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "GalvenÄ administrÄ“Å¡anas lapa"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO kods"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "VÄrds, uzvÄrds"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(pievienot valodu)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "SpeciÄlie simboli"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(speciÄlie simboli)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Daudzskaitļu formu skaits"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(daudzskaitļu formu skaits)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Daudzskaitļu formula"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(daudzskaitļu formula)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Dzēst valodu"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Dzēst %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standarts"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle projektu administrēšanas lapa"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projekta kods"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(Å¡eit pievienot projektu)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projekta apraksts"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(projekta apraksts)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "PÄrbaudes stils"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Faila tips"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Izveidot MO failus"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Dzēst projektu"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle lietotÄju administrÄ“Å¡anas lapa"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "LietotÄjvÄrds"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(pievienot Å¡eit pilnu vÄrdu)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "E-pasta adrese"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(šeit ievadīt e-pastu)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Parole"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(Å¡eit pievienot paroli)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktivizēts"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "AktivizÄ“t jaunu lietotÄju"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "DzÄ“st lietotÄju"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Atgriezties galvenajÄ lapÄ"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "PaÅ¡laik pieejamÄs valodas"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Atjaunot valodas"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle administrēšana: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Tev nav tiesības administrēt šo projektu."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Atjaunot no sagatavēm"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Pievienot valodu"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle administrēšana: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Projekta sÄkumlapa"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Nevar uzstÄdÄ«t tiesÄ«bas lietotÄjam %s - lietotÄjs neeksistÄ“"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Å is ir GNU-stila projekts (viena mape, datnes nosauktas un sakÄrtotas pÄ“c "
+"valodas)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Å is ir standarta tipa projekts (viena mape vienai valodai)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "LietotÄju tiesÄ«bas"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(izvÄ“lies lietotÄju)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Tiesības"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Dzēst"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "AtjauninÄt lietotÄju tiesÄ«bas"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Par Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> ir vienkÄrÅ¡s interneta portÄls, kurÅ¡ sniedz iespÄ“ju "
+"<strong>tulkot</strong>! Kopš Pootle ir <strong>Bezmaksas "
+"ProgrammatÅ«ra</strong>, JÅ«s to drÄ«kstat lejupielÄdÄ“t un izmantot savu Pootle "
+"kopiju. JÅ«s arÄ« varat dažÄdos veidots(nav obligÄti jÄprot programmÄ“t) "
+"piedalÄ«ties un palÄ«dzÄ“t Å¡Ä«s sistÄ“mas veidoÅ¡anÄ."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle projekts atrodams interneta adresē <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>, kur "
+"ir pieejama sÄ«kÄka informÄciju par programmas pirmskodu, e-pasta sarakste, "
+"u.c. lietas."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Nosaukums <b>PO</b>- veidots no vÄrdiem <b>O</b>nline (TieÅ¡saiste) "
+"<b>T</b>ranslation (Tulkošana) / <b>L</b>ocalization (Lokalizēšana) "
+"<b>E</b>ngine (DzinÄ“js), bet sÄ«kÄk par to variet izlasÄ«t <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">Å¡eit</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versijas"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Å Ä« interneta vietne darbojas pateicoties:<br />Pootle %s<br />Translate "
+"Toolkit %s<br />jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s "
+"(on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "User Page priekš: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Mainīt iestatījumus"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Administrēšanas lapa"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrēt"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Ä€trÄ piekļuve:"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Nospiediet 'Mainīt iestatījumus' un izvēlieties valodu un projektus."
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekts, vidēji iztulkoti %d%%"
+msgstr[1] "%d projekti, vidēji iztulkoti %d%%"
+msgstr[2] "%d projekti, vidēji iztulkoti %d%%"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administrēt"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Valodas kods"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Valodas nosaukums"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d valoda, vidēji iztulkoti %d%%"
+msgstr[1] "%d valodas, vidēji iztulkoti %d%%"
+msgstr[2] "%d valodas, vidēji iztulkoti %d%%"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Valoda"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekts %s, Valoda %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Meklēt"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "IzvÄ“rstÄ meklÄ“Å¡ana"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Nav iespÄ“jams augÅ¡upielÄdÄ“t datni, datne netika pievienota"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "AugÅ¡upielÄdÄ“t iespÄ“jams tikai PO datnes un PO datņu arhÄ«vus"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Nodot virknes"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Piešķirt darbības"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Nodot lietotÄjam"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "uzdevumi"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Ievadiet uzdevuma nosaukumu"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Pievienot uzdevumu"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "AugÅ¡upielÄdÄ“t datni"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "IzvÄ“lÄ“ties augÅ¡upielÄdÄ“jamo datni"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "PÄrrakstÄ«t"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "PÄrrakstÄ«t jau izmantojamo datni, ja tÄda eksistÄ“"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Apvienot"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Apvienot Å¡o datni ar jau izmantojamo datni un konfliktus saglabÄt kÄ "
+"ieteikumus"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ä€rpus uzdevuma"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Pievienot lietotÄju"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO datne"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF datne"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts datne"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV datne"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO datne"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "AtjauninÄt"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Iesniegt"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Visas rindas"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Neiztulkots"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Nepiešķirtie"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Nepiešķirtie un neiztulkotie"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "UzstÄdÄ«t uzdevumu"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "IzvÄ“lÄ“ties vairÄkus"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Piešķirt"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "RÄdÄ«t rediģēšanas darbÄ«bas"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "RÄdÄ«t statistiku"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "RÄdÄ«t vÄ“sturi"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "NerÄdÄ«t vÄ“sturi"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "RÄdÄ«t pÄrbaudes"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "NerÄdÄ«t pÄrbaudes"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "RÄdÄ«t uzdevumus"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "NerÄdÄ«t uzdevumus"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "RÄdÄ«t pieÅ¡Ä·irtos"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "NerÄdÄ«t pieÅ¡Ä·irtos"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Visi uzdevumi: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Tulkot savas rindas"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Skatīties savas rindas"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Jums nav piešķirta neviena rinda"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Tulkot savas rindas ar \"Ātro tulkošanu'"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Jums nav piešķirta neviena neiztulkota rinda"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "PÄrskatÄ«t ieteiktos"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Skatīties ieteiktos"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Ä€trÄ tulkoÅ¡ana"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Skatīt neiztulkotos"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Nav neiztulkoto"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Tulkot visu"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Uzdevuma ZIP arhīvs"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Mapes ZIP arhīvs"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Izveidot SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d rinda (%d%%) iztulkota kļūdaini"
+msgstr[1] "%d rindas (%d%%) iztulkotas kļūdaini"
+msgstr[2] "%d rindas (%d%%) iztulkotas kļūdaini"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d vÄrdi (%d%%) pieÅ¡Ä·irti"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d rindas]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d iztulkoti vÄrdi (%d%%)"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Visi projekti"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Visas valodas"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mans konts"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "DokumentÄcija un palÄ«dzÄ«ba"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Iziet"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Pieslēgties"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Reģistrēties"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Konta aktivizēšana"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Par Å¡o Pootle serveri"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Visi uzdevumi"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d faili"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d datne"
+msgstr[1] "%d datnes"
+msgstr[2] "%d datnes"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d rindas"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nosaukums"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Iztulkots"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Iztulkots procentuÄli"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Iztulkotie vÄrdi"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Nepilnīgi iztulkots"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "NepilnÄ«gi iztulkots procentuÄli"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "NepilnÄ«gi iztulkotie vÄrdi"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Neiztulkots procentuÄli"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Neiztulkotie vÄrdi"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "KopÄ"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "KopÄ“jais vÄrdu skaits"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafiks"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Tulkojamais teksts"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Iztulkotais teksts"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "KomentÄri"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "AtraÅ¡anÄs vieta"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "PieslÄ“gÅ¡anÄs neizdevÄs"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "PÄrejam uz PieslÄ“gÅ¡anÄs lapu..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Lai piekļūtu sÄkumlapai, nepiecieÅ¡ams pieslÄ“gties sistÄ“mai"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "InformÄcija par personu tika atjaunota"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Lai piekļūtu administrēšanas lapai, nepieciešams pieslēgties sistēmai"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "PÄrejam uz SÄkumlapu..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Jums nav tiesību, lai administrētu pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Skatīt"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Ieteikt"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Tulkot"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "PÄrskatÄ«t"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arhivēt"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompilēt PO failus"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Piešķirt"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "NedrÄ«kst dzÄ“st lietotÄju \"nobody\" vai \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Jums nav tiesību, lai mainītu uzdevumus"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Jums nav tiesÄ«bu, lai augÅ¡upielÄdÄ“tu datnes"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Jums nav tiesÄ«bu, lai pÄrrakstÄ«tu datnes"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Jums nav tiesÄ«bu, lai augÅ¡upielÄdÄ“tu jaunas datnes"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Jums nav tiesÄ«bu, lai jauninÄtu datnes"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Jums nav tiesību, lai iesniegtu datnes"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Jums nav tiesību, lai mainītu piešķirtos"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Jums nav tiesību, lai mainītu tulkojumu"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Jums nav tiesību, lai pievienot ieteikumus"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Jums nav tiesÄ«bu, lai pÄrskatÄ«tu ieteikumus"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d iztulkoti vÄrdi\n"
+"(%d neiztulkoti, %d nepilnīgi iztulkoti)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: tulko projektu %s uz %s valodu: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "OriÄ£inÄls"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Tulkojums"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "ApstiprinÄt ieteikto"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Noraidīt ieteikto"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "TulkotÄja komentÄri"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "IzstrÄdÄtÄja komentÄri"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Saistīts"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Notiek apstrÄde..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Kļūda: Kaut kas nogÄja greizi."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "PÄ“dÄ“jais rindÄ"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Spied Å¡eit, lai atgrieztos pie satura"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "SÄkums"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Iepriekšējie %d"
+
+# What about LV plural-forms?
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Ieraksti %d līdz %d no %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "NÄkamie %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Beigas"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "pÄrbauda %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Nav ierakstu, kas atbilst Å¡im vaicÄjumam ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Jūs esat pabeidzis iet cauri izvēlētajiem ierakstiem"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Vienskaitlis"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Daudzskaitlis"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Rediģēt"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopēt"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Izlaist"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Atpakaļ"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Iesniegt"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "PalielinÄt"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "SamazinÄt"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Daudzskaitļa forma %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"TulkoÅ¡ana nav iespÄ“jama, jo nav pieejama daudzskaitļu formu informÄcija "
+"priekš tavas valodas. Lūdzu sazinies ar vietnes administratoru."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Aktīvais tulkojums:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "LietotÄjam %s %d ieteikumi:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Ieteikums %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Ieteica lietotÄjs %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Ieteikums:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Parolei nepieciešams ievadīt vismaz %d simbolus."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "IevadÄ«tÄ parole nav vienÄda ar paroles apstiprinÄjumu."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Pieslēgties"
+
+#: users.py:66
+msgid "Username:"
+msgstr "LietotÄjvÄrds:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Parole:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Valodas:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Pieslēgties"
+
+#: users.py:77
+msgid "Default"
+msgstr "Noklusējums"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "LÅ«dzu ievadiet arÄ« pÄrÄ“jo reÄ£istrÄcijai nepiecieÅ¡amo informÄciju"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle reÄ£istrÄcija"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "LietotÄjvÄrds"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "NepiecieÅ¡ams ievadÄ«t reÄlu e-pasta adresi"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "VÄrds, uzvÄrds"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Parole"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "ApstipinÄt paroli"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Ievadiet savu paroli vÄ“lreiz, lai pÄrliecinÄtos, ka parole ievadÄ«ta pareizi."
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Reģistrēt kontu"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "LÅ«dzu ievadiet aktivizÄcijas informÄciju"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle konta aktivizēšana"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "AktivizÄcijas kods"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "AktivizÄcijas kods, kuru jÅ«s saņēmÄt uz e-pastu."
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktivizēt kontu"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "%s iestatījumi."
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "InformÄcija par personu"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-pasts"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "TulkoÅ¡anas saskarnes konfigurÄcija"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Saskarnes valoda"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mani projekti"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Manas valodas"
+
+#: users.py:196
+msgid "Home page"
+msgstr "SÄkumlapa"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "AlternatÄ«va tulkojamÄ teksta valoda"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Nav"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Ievades lauka augstums (līniju skaits)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Rindu skaits skatÄ«Å¡anÄs režīmÄ"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Rindu skaits tulkoÅ¡anas režīmÄ"
+
+#: users.py:307
+msgid "Error"
+msgstr "Kļūda"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Jums ir jÄbÅ«t sistÄ“mas administratoram, lai spÄ“tu mainÄ«t lietotÄjus"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"LietotÄjvÄrdam ir jÄsastÄv no burtiem vai burtiem un cipariem un tam ir "
+"jÄsÄkas ar burtu. "
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "JÅ«s (vai kÄds cits) mÄ“Ä£inÄja reÄ£istrÄ“ties ar jÅ«su lietotÄjvÄrdu.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "PatiesÄ«bÄ paroles mÄ“s pie sevis nesaglabÄjam. TÄ vietÄ mÄ“s saglabÄjam paroļu "
+"hash atslēgas.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Ja rodas kÄdas problÄ“mas ar reÄ£istrÄ“Å¡anos, lÅ«dzu ziņojiet %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Ja rodas kÄdas problÄ“mas ar reÄ£istrÄ“Å¡anos, lÅ«dzu ziņojiet vietnes "
+"administratoram.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Å Äds lietotÄjvÄrds jau eksistÄ“. Tiks nosÅ«tÄ«ta e-pasta vÄ“stule, lai "
+"reģistrētu e-pasta adresi.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "TurpinÄt, lai <a href='%s'>pieslÄ“gtos</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "JÅ«su Pootle konts tika izveidots, izmantojot Å¡o e-pasta adresi.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Lai veiktu sava konta aktivizēšanu, spiediet uz šī saites:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Jūsu konta aktivizēšanas kods ir:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Ja nav iespÄ“jams atvÄ“rt norÄdÄ«to saiti, lÅ«dzu, ievadiet augstÄkminÄ“to kodu "
+"aktivizÄ“Å¡anas lapÄ.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Å Ä« vÄ“stule tika nosÅ«tÄ«t, lai pÄrbaudÄ«tu JÅ«su e-pasta adreses patiesumu. Ja "
+"nevÄ“laties reÄ£istrÄ“ties, varat vienkÄrÅ¡i ignorÄ“t Å¡o vÄ“stuli.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Konts tika izveidots. Jums tiks nosÅ«tÄ«ta e-pasta vÄ“stule ar sÄ«kÄku "
+"informÄciju un konta aktivizÄ“Å¡anas kodu. LÅ«dzu, ievadiet savu kodu <a "
+"href='%s'>konta aktivizÄ“Å¡anas lapÄ</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Vai vienkÄrÅ¡i nospiediet uz konta atvizÄ“Å¡anas saites e-pasta vÄ“stulÄ“l)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "JÅ«su lietotÄjvÄrds ir: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "JÅ«su parole ir: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "JÅ«su reÄ£istrÄ“tÄ e-pasta adrese ir: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "PÄrejam uz ReÄ£istrÄcijas lapu..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "PÄrejam uz PieslÄ“gÅ¡anÄs lapu..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "JÅ«su konts tika veiksmÄ«gi aktivizÄ“ts! PÄrejam uz PieslÄ“gÅ¡anos..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "IevadÄ«tÄ konta aktivizÄ“Å¡anas informÄcija ir neprecÄ«za."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Konta aktivizÄ“Å¡ana neizdevÄs"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Ievades lauka augstums jÄnorÄda ar cipariem"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Ievades lauka platums jÄnorÄda ar cipariem"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Redzamo rindu skaitu skatÄ«Å¡anÄs režīmam jÄnorÄda ar cipariem"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Redzamo rindu skaitu tulkoÅ¡anas režīmam jÄnorÄda ar cipariem"
+
+#~ msgid "Accept"
+#~ msgstr "ApstiprinÄt"
+
+#~ msgid "Reject"
+#~ msgstr "Noraidīt"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge Tulkošanas Projekts"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ml/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ml/jToolkit.po
new file mode 100644
index 0000000..932021d
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ml/jToolkit.po
@@ -0,0 +1,151 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-08-31 10:14+0000\n"
+"Last-Translator: à´ªàµà´°à´¤àµ€à´·àµ à´ªàµà´°à´•à´¾à´¶àµ <royal.mexian@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s à´¨àµà´±àµ† ലോഗിനàµâ€"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "à´ˆ à´ªàµà´°à´µà´°àµâ€à´¤àµà´¤à´¿ നിരàµâ€à´¤àµà´¤à´¿à´¯à´¿à´Ÿàµà´Ÿàµ ഒരൠപàµà´¤à´¿à´¯ സെഷനàµâ€ à´¤àµà´Ÿà´™àµà´™àµ‚"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"à´ˆ à´ªàµà´°à´µà´°àµâ€à´¤àµà´¤à´¿ ഉറപàµà´ªà´¿à´•àµà´•àµà´¨àµà´¨à´¤à´¿à´¨àµ à´®àµà´®àµà´ªàµ, à´ªàµà´±à´¤àµà´¤àµ പോയിടàµà´Ÿàµ, ആദàµà´¯à´®àµ‡ à´¤àµà´Ÿà´™àµà´™àµà´•"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "à´…à´ªàµà´²à´¿à´•àµà´•àµ‡à´·à´¨à´¿à´²àµâ€ നിനàµà´¨àµà´‚ à´ªàµà´±à´¤àµà´¤àµ à´•à´Ÿà´•àµà´•àµà´•"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+"à´…à´ªàµà´²à´¿à´•àµà´•àµ‡à´·à´¨à´¿à´²àµâ€ നിനàµà´¨àµà´‚ à´ªàµà´±à´¤àµà´¤àµ à´•à´Ÿà´¨àµà´¨ ശേഷം, പാരനàµà´±àµ ആപàµà´²à´¿à´•àµà´•àµ‡à´·à´¨à´¿à´²àµ‡à´•àµà´•àµ "
+"തിരികെ പോകàµà´•"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", ലോഗിനàµâ€ ദയവായി ഉറപàµà´ªà´¿à´•àµà´•àµà´•"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ലോഗിനàµâ€"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "ഉപയോകàµà´¤àµƒà´¨à´¾à´®à´‚:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "പാസàµà´¸àµâ€à´µàµ‡à´¡àµ:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "ഭാഷ:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "à´…à´ªàµà´²à´¿à´•àµ‡à´·à´¨àµâ€ തിരഞàµà´žàµ†à´Ÿàµà´•àµà´•àµà´•"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "à´ªàµà´±à´¤àµà´¤àµ à´•à´Ÿà´•àµà´•àµà´•"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "à´ªàµà´±à´¤àµà´¤àµ‡à´•àµà´•àµ"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b> ആയി à´…à´•à´¤àµà´¤àµ കയറി"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "à´ªàµà´¤à´¿à´¯àµŠà´°àµ സെഷനàµâ€ à´¤àµà´Ÿà´™àµà´™à´¨à´¾à´¯à´¿à´²àµà´²"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "à´ªàµà´±à´¤àµà´¤àµ à´•à´Ÿà´¨àµà´¨àµ"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "ബനàµà´§à´‚ à´¸àµà´¥à´¾à´ªà´¿à´šàµà´šà´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "പാരനàµà´±àµ സെഷനിലàµâ€ നിനàµà´¨àµà´‚ à´ªàµà´±à´¤àµà´¤àµ à´•à´Ÿà´¨àµà´¨à´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"ഉപയോകàµà´¤à´¾à´•àµà´•à´³àµ‡à´¯àµ‹ à´…à´²àµà´²àµ†à´™àµà´•à´¿à´²àµâ€ userprefs entry, server config-à´²àµâ€ "
+"രേഖപàµà´ªàµ†à´Ÿàµà´¤àµà´¤àµ‡à´£àµà´Ÿà´¤à´¾à´¯à´¿à´Ÿàµà´Ÿàµà´£àµà´Ÿàµ"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "ഇങàµà´™à´¨àµ†à´¯àµŠà´°àµ ഉപയോകàµà´¤à´¾à´µàµ നിലനിലàµà´•àµà´•àµà´¨àµà´¨à´¿à´²àµà´² (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "അസാധàµà´µà´¾à´¯ ഉപയോകàµà´¤àµƒà´¨à´¾à´®à´‚ à´…à´²àµà´²àµ†à´™àµà´•à´¿à´²àµâ€ പാസàµà´¸àµâ€à´µàµ‡à´¡àµ"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "ലോഗിനàµâ€ ഉറപàµà´ªà´¿à´•àµà´•à´²àµâ€ പരാജയപàµà´ªàµ†à´Ÿàµà´Ÿàµ"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "à´…à´²àµà´²"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "ശരി"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "നീകàµà´•à´‚ ചെയàµà´¯àµà´•"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(à´…à´±àµà´±à´¾à´šàµà´šàµà´®àµ†à´¨àµà´±àµ ഇലàµà´²)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "à´…à´±àµà´±à´¾à´šàµà´šàµà´®àµ†à´¨àµà´±àµà´•à´³àµâ€à´•àµà´•àµ വനàµâ€ വലിപàµà´ªà´‚"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "à´ˆ à´…à´±àµà´±à´¾à´šàµà´šàµà´®àµ†à´¨àµà´±àµ നീകàµà´•à´‚ ചെയàµà´¯àµà´•"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "à´ªàµà´¨à´ƒà´¸àµà´¥à´¾à´ªà´¿à´•àµà´•àµà´•"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+"à´ˆ à´…à´±àµà´±à´¾à´šàµà´šàµà´®àµ†à´¨àµà´±àµ നീകàµà´•à´‚ ചെയിരികàµà´•àµà´¨àµà´¨àµ. ഇവിടെ അമരàµâ€à´¤àµà´¤à´¿à´¯à´¾à´²àµâ€ അതൠ"
+"à´ªàµà´¨à´ƒà´¸àµà´¥à´¾à´ªà´¿à´•àµà´•àµà´µà´¾à´¨àµâ€ à´•à´´à´¿à´¯àµà´‚"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ഒരൠഫയലàµâ€ à´…à´±àµà´±à´¾à´šàµà´šàµ ചെയàµà´¯àµà´•"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ml/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ml/pootle.po
new file mode 100644
index 0000000..d3d0c2a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ml/pootle.po
@@ -0,0 +1,1408 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-21 07:51+0000\n"
+"Last-Translator: Praveen Arimbrathodiyil <pravi.a@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "പൂടàµà´Ÿà´¿à´²àµâ€ à´ªàµà´°à´µà´°àµâ€à´¤àµà´¤à´¨à´®à´¾à´¤àµƒà´•"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "പൂമàµà´–à´‚"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "ഉപയോകàµà´¤à´¾à´•àµà´•à´³àµâ€"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "ഭാഷകളàµâ€"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "പദàµà´§à´¤à´¿à´•à´³àµâ€"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "പൊതàµà´µà´¾à´¯ à´à´šàµà´›à´¿à´•à´™àµà´™à´³àµâ€"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "à´à´šàµà´›à´¿à´•à´‚"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "ഇപàµà´ªàµ‹à´´à´¤àµà´¤àµ† വില"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "മാറàµà´±à´™àµà´™à´³àµâ€ സൂകàµà´·à´¿à´•àµà´•àµà´•"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "തലകàµà´•àµ†à´Ÿàµà´Ÿàµ"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "വിവരണം"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "à´…à´Ÿà´¿à´¸àµà´¥à´¾à´¨ URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "പൂമàµà´– താളàµâ€"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "പൂടàµà´Ÿà´¿à´²àµâ€ ഭാഷകളàµà´Ÿàµ† മേലàµâ€à´¨àµ‹à´Ÿàµà´Ÿ താളàµâ€"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "à´ªàµà´°à´§à´¾à´¨ കൈകാരàµà´¯ താളàµâ€"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO കോഡàµ"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "പൂരàµâ€à´£àµà´£ നാമം"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(ഭാഷ ഇവിടെ നിനàµà´¨àµà´‚ ചേരàµâ€à´•àµà´•àµà´•)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "à´ªàµà´°à´¤àµà´¯àµ‡à´• à´…à´•àµà´·à´°à´™àµà´™à´³àµâ€"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(à´ªàµà´°à´¤àµà´¯àµ‡à´• à´…à´•àµà´·à´°à´™àµà´™à´³àµâ€)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "ബഹàµà´µà´šà´¨à´™àµà´™à´³àµà´Ÿàµ† à´Žà´£àµà´£à´‚"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(ബഹàµà´µà´šà´¨à´™àµà´™à´³àµà´Ÿàµ† à´Žà´£àµà´£à´‚)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "ബഹàµà´µà´šà´¨ സമവാകàµà´¯à´‚"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(ബഹàµà´µà´šà´¨ സമവാകàµà´¯à´‚)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "ഭാഷ നീകàµà´•à´‚ ചെയàµà´¯àµà´•"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s നീകàµà´•à´‚ ചെയàµà´¯àµà´•"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "à´¸àµà´±àµà´±à´¾à´¨àµâ€à´¡àµ‡à´¡àµ"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "പൂടàµà´Ÿà´¿à´²àµâ€ à´ªàµà´°àµ‹à´œà´•àµà´Ÿàµà´•à´³àµà´Ÿàµ† മേലàµâ€à´¨àµ‹à´Ÿàµà´Ÿ താളàµâ€"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "പദàµà´§à´¤à´¿ കോഡàµ"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(പദàµà´§à´¤à´¿ ഇവിടെ നിനàµà´¨àµà´‚ ചേരàµâ€à´•àµà´•àµà´•)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "പദàµà´§à´¤à´¿ വിവരണം"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(പദàµà´§à´¤à´¿ വിവരണം)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "പരിശോധക രീതി"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "ഫയലàµâ€ തരം"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO Files നിരàµâ€à´®àµà´®à´¿à´•àµà´•àµà´•"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "പദàµà´§à´¤à´¿ നീകàµà´•à´‚ ചെയàµà´¯àµà´•"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "പൂടàµà´Ÿà´¿à´²àµâ€ ഉപയോകàµà´¤à´¾à´µà´¿à´¨àµà´±àµ† മേലàµâ€à´¨àµ‹à´Ÿàµà´Ÿ താളàµâ€"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "ഉപയോകàµà´¤àµƒà´¨à´¾à´®à´‚"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(പൂരàµâ€à´£àµà´£ നാമം ഇവിടെ ചേരàµâ€à´•àµà´•àµà´•)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "à´ˆ-മെയàµâ€à´²àµâ€ വിലാസം"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(à´ˆ-മെയàµâ€à´²àµâ€ ഇവിടെ ചേരàµâ€à´•àµà´•àµà´•)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "പാസàµà´¸àµâ€à´µàµ‡à´¡àµ"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(പാസàµà´¸àµâ€à´µàµ‡à´¡àµ ഇവിടെ ചേരàµâ€à´•àµà´•àµà´•)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "സജീവമാകàµà´•àµà´•"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "à´ªàµà´¤à´¿à´¯ ഉപയോകàµà´¤à´¾à´µà´¿à´¨àµ† സജീവമാകàµà´•àµà´•"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "ഉപയോകàµà´¤à´¾à´µà´¿à´¨àµ† നീകàµà´•à´‚ ചെയàµà´¯àµà´•"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "തിരികെ പൂമàµà´–à´¤àµà´¤à´¿à´²àµ‡à´•àµà´•àµ"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "ഇപàµà´ªàµ‹à´´àµà´³àµà´³ ഭാഷകളàµâ€"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "ഭാഷകളàµâ€ à´ªàµà´¤àµà´•àµà´•àµà´•"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "പൂടàµà´Ÿà´¿à´²àµâ€ കാരàµà´¯à´•àµà´•à´¾à´°à´¨àµâ€: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "à´ˆ പദàµà´§à´¤à´¿ കൈകാരàµà´¯à´‚ ചെയàµà´¯àµà´µà´¾à´¨àµà´³àµà´³ അവകാശം നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "ടെംപàµà´²àµ‡à´±àµà´±à´¿à´²àµâ€ നിനàµà´¨àµà´‚ à´ªàµà´¤àµà´•àµà´•àµà´•"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "ഭാഷ ചേരàµâ€à´•àµà´•àµà´•"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "പൂടàµà´Ÿà´¿à´²àµâ€ കാരàµà´¯à´•àµà´•à´¾à´°à´¨àµâ€:: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "പദàµà´§à´¤à´¿ പൂമàµà´– താളàµâ€"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"%s à´Žà´¨àµà´¨ ഉപഭോകàµà´¤à´¾à´µà´¿à´¨àµ അധികാരങàµà´™à´³àµâ€ നലàµâ€à´•àµà´µà´¨à´¾à´¯à´¿à´²àµà´² - à´…à´™àµà´™à´¨àµ† ഒരൠഉപയോകàµà´¤à´¾à´µàµ "
+"നിലനിലàµà´•àµà´•àµà´¨àµà´¨à´¿à´²àµà´²"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"ഇതൊരൠGNU-style പദàµà´§à´¤à´¿ (ഒരൠdirectory, ഫയലàµà´•à´³àµâ€ ഓരോ ഭാഷയàµà´•àµà´•à´¨àµà´¸àµƒà´¤à´®à´¾à´¯à´¿ "
+"നാമകരണം ചെയàµà´¯à´ªàµà´ªàµ†à´Ÿàµà´¨àµà´¨àµ)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "ഇതൊരൠstandard style പദàµà´§à´¤à´¿ (ഒരൠdirectory ഒരൠഭാഷയàµà´•àµà´•àµ)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "ഉപയൊകàµà´¤à´¾à´µà´¿à´¨àµà´³àµà´³ à´…à´¨àµà´µà´¾à´¦à´™àµà´™à´³àµâ€"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(ഉപയോകàµà´¤à´¾à´µà´¿à´¨àµ† തിരഞàµà´žàµ ചേരàµâ€à´•àµà´•àµ‚)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "അവകാശങàµà´™à´³àµâ€"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "നീകàµà´•à´‚ ചെയàµà´¯àµà´•"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "അവകാശങàµà´™à´³àµâ€ à´ªàµà´¤àµà´•àµà´•àµà´•"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "പൂടàµà´Ÿàµâ€à´²à´¿à´¨àµ† പറàµà´±à´¿"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>പൂടàµà´Ÿà´¿à´²àµâ€</strong> à´Žà´¨àµà´¨à´¤àµ <strong>വിവരàµâ€à´¤àµà´¤à´™àµà´™à´³àµâ€ "
+"നടതàµà´¤àµà´µà´¾à´¨àµà´³àµà´³</strong> വളരെ ലഘàµà´µà´¾à´¯à´¿à´Ÿàµà´Ÿàµà´³àµà´³ ഒരൠവെബàµà´¬àµ പോരàµâ€à´Ÿàµà´Ÿà´²à´¾à´£àµ. "
+"പൂടàµà´Ÿà´¿à´²àµâ€ ഒരൠ<strong>à´¸àµà´µà´¤à´¨àµà´¤àµà´° സോഫàµà´±àµà´±àµâ€Œà´µàµ†à´¯à´±à´¾à´£àµ†à´¨àµà´¨à´¤à´¿à´¨à´¾à´²àµâ€</strong>, "
+"നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´¤àµ ഡൗണàµâ€à´²àµ‹à´¡àµ ചെയàµà´¤àµ ഇഷàµà´Ÿà´¾à´¨àµà´¸à´°à´£à´‚‌ ഉപയോഗികàµà´•à´¾à´µàµà´¨àµà´¨à´¤à´¾à´£àµ. പൂടàµà´Ÿà´¿à´²àµâ€ "
+"വികസന പരിപാടികളിലàµà´‚ നിങàµà´™à´³àµâ€à´•àµà´•àµ പങàµà´•àµ ചേരാവàµà´¨àµà´¨à´¤à´¾à´£àµ (à´ªàµà´°àµ‹à´—àµà´°à´¾à´‚ ചെയàµà´¯à´£à´®àµ†à´¨àµà´¨àµ "
+"നിരàµâ€à´¬à´¨àµà´§à´®à´¿à´²àµà´²)"
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"പൂടàµà´Ÿà´¿à´²àµâ€ പദàµà´§à´¤à´¿ ഹോസàµà´±àµà´±àµ ചെയàµà´¤à´¿à´Ÿàµà´Ÿàµà´³àµà´³à´¤àµ <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> ലാണàµ. "
+"സോഴàµà´¸àµ കോഡിനെ പറàµà´±à´¿à´¯àµà´‚, മെയàµâ€Œà´²à´¿à´™àµà´™àµ ലിസàµà´±àµà´±àµà´•à´³àµ† പറàµà´±à´¿à´¯àµà´®àµŠà´•àµà´•àµ† അവിടെ നിനàµà´¨àµà´‚ "
+"വിവരങàµà´™à´³àµâ€ ലഭികàµà´•àµà´¨àµà´¨à´¤à´¾à´£àµ."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"പൂടàµà´Ÿà´¿à´²àµâ€, ഇംഗàµà´²àµ€à´·à´¿à´²àµâ€ POOTLE, à´Žà´¨àµà´¨ നാമം ഇപàµà´°à´•à´¾à´°à´®à´¾à´£àµ വനàµà´¨à´¤àµ. <b>PO</b>-based "
+"<b>O</b>nline <b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, "
+"à´Žà´¨àµà´¨à´¾à´²àµà´‚ നിങàµà´™à´³àµâ€ <a href=\"http://www.thechestnut.com/flumps.htm\">ഇതàµ</a> "
+"കൂടി വായിചàµà´šà´¿à´°à´¿à´•àµà´•àµ‡à´£àµà´Ÿ ആവശàµà´¯à´®àµà´£àµà´Ÿà´¾à´•àµà´‚."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "പതിപàµà´ªàµà´•à´³àµâ€"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"à´ˆ സൈറàµà´±àµ à´“à´Ÿà´¿à´•àµà´•àµà´¨àµà´¨à´¤àµ: <br />പൂടàµà´Ÿà´¿à´²àµâ€ %s<br /> Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "ഉപയോകàµà´¤àµƒ താളàµâ€: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "സജàµà´œàµ€à´•à´°à´£à´™àµà´™à´³àµâ€ മാറàµà´±àµà´•"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "മേലàµâ€à´¨àµ‹à´Ÿàµà´Ÿ താളàµâ€"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "മേലàµâ€à´¨àµ‹à´Ÿàµà´Ÿà´‚ വഹികàµà´•àµà´•"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "ശീഘàµà´° à´•à´£àµà´£à´¿à´•à´³àµâ€"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"ദയവായി 'ഉപാധികളàµâ€ മാറàµà´±àµà´•' à´Žà´¨àµà´¨à´¤à´¿à´²àµâ€ അമരàµâ€à´¤àµà´¤à´¿ ഭാഷകളàµà´‚ à´ªàµà´°àµ‹à´œà´•àµà´Ÿàµà´•à´³àµà´‚ "
+"തിരഞàµà´žàµ†à´Ÿàµà´•àµà´•àµ‚"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d പദàµà´§à´¤à´¿, ശരാശരി %d%% പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿à´¯à´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ"
+msgstr[1] "%d പദàµà´§à´¤à´¿à´•à´³àµâ€, ശരാശരി %d%% പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿à´¯à´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "കാരàµà´¯à´•àµà´•à´¾à´°à´¨àµâ€"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "ഭാഷാ കോഡàµ"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "ഭാഷാ നാമം"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d ഭാഷ, ശരാശരി %d%% പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤àµà´¯à´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ"
+msgstr[1] "%d ഭാഷകളàµâ€, ശരാശരി %d%% പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿à´¯à´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "ഭാഷ"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: പദàµà´§à´¤à´¿ %s, ഭാഷ %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "തിരയàµà´•"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "വിദഗàµà´§ തിരചàµà´šà´¿à´²àµâ€"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+"ഫയലàµâ€ à´…à´ªàµâ€Œà´²àµ‹à´¡àµ ചെയàµà´¯àµà´µà´¾à´¨àµâ€ സാധികàµà´•àµà´¨àµà´¨à´¿à´²àµà´², ഒരൠഫയലàµà´‚ à´…à´±àµà´±à´¾à´šàµà´šàµ "
+"ചെയàµà´¤à´¿à´Ÿàµà´Ÿà´¿à´²àµà´²"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "PO ഫയലàµà´•à´³àµ‹ അവയàµà´Ÿàµ† ZIP-ഉകളോ മാതàµà´°à´®àµ‡ à´…à´ªàµâ€Œà´²àµ‹à´¡àµ ചെയàµà´¯àµà´µà´¾à´¨àµâ€ പറàµà´±àµ‚"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "à´¸àµà´Ÿàµà´°à´¿à´™àµà´™àµà´¸àµ à´à´°àµâ€à´ªàµà´ªà´¾à´Ÿà´¾à´•àµà´•àµà´•"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "à´ªàµà´°à´µàµƒà´¤àµà´¤à´¿ à´à´°àµâ€à´ªàµà´ªà´¾à´Ÿà´¾à´•àµà´•àµà´•"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "ഉപയോകàµà´¤à´¾à´µà´¿à´¨àµ à´à´°àµâ€à´ªàµà´ªà´Ÿà´¾à´•àµà´•àµà´•"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "ലകàµà´·àµà´¯à´™àµà´™à´³àµâ€"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "പദàµà´§à´¤à´¿ നാമം കൊടàµà´•àµà´•àµà´•"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "പദàµà´§à´¤à´¿ ചേരàµâ€à´•àµà´•àµà´•"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "ഫയലàµâ€ à´…à´ªàµâ€à´²àµ‹à´¡àµ ചെയàµà´¯àµà´•"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "à´…à´ªàµâ€à´²àµ‹à´¡àµ ചെയàµà´¯àµà´µà´¾à´¨àµâ€ ഉളàµà´³ ഫയലàµâ€ തിരഞàµà´žàµ†à´Ÿàµà´•àµà´•àµà´•"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "മേലെഴàµà´¤àµà´•"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "ഇപàµà´ªàµ‹à´´à´¤àµà´¤àµ† ഫയലàµâ€ നിലനിലàµà´•àµà´•àµà´¨àµà´¨àµ‚വെങàµà´•à´¿à´²àµ â€à´®àµ‡à´²àµ†à´´àµà´¤àµà´•"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "ലയിപàµà´ªà´¿à´•àµà´•àµà´•"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "ഇപàµà´ªàµ‹à´´à´¤àµà´¤àµ† ഫയലàµà´®à´¾à´¯à´¿ ലയിപàµà´ªà´¿à´šàµà´š ശേഷം à´­à´¿à´¨àµà´¨à´¤à´•à´³àµâ€ നിരàµâ€à´¦àµà´¦àµ‡à´¶à´™àµà´™à´³à´¾à´•àµà´•àµà´•"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "ലകàµà´·àµà´¯à´¤àµà´¤à´¿à´²à´¿à´²àµà´²"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "ഉപയോകàµà´¤à´¾à´µà´¿à´¨àµ† ചേരàµâ€à´•àµà´•àµà´•"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO ഫയലàµâ€"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF ഫയലàµâ€"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts ഫയലàµâ€"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV ഫയലàµâ€"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO ഫയലàµâ€"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "à´ªàµà´¤àµà´•àµà´•àµà´•"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "സമരàµâ€à´ªàµà´ªà´¿à´•àµà´•àµà´•"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "à´Žà´²àµà´²à´¾ à´¸àµà´Ÿàµà´°à´¿à´™àµà´™àµà´•à´³àµà´‚"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿à´¯à´¿à´Ÿàµà´Ÿà´¿à´²àµà´²à´¾à´¤àµà´¤à´¤àµ"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "à´à´°àµâ€à´ªàµà´ªà´¾à´Ÿà´•àµà´•à´¾à´¤àµà´¤à´µ"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "à´à´°àµâ€à´ªàµà´ªà´¾à´Ÿà´¾à´•àµà´•à´¤àµà´¤à´µà´¯àµà´‚ പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¾à´¤àµà´¤à´µà´¯àµà´‚"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "ലകàµà´·àµà´¯à´‚ ഉറപàµà´ªà´¿à´•àµà´•àµà´•"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "à´’à´¨àµà´¨à´¿à´²àµâ€ കൂടàµà´¤à´²àµâ€ തിരഞàµà´žàµ†à´Ÿàµà´•àµà´•àµà´•"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "à´à´°àµâ€à´ªàµà´ªàµ†à´Ÿàµà´¤àµà´¤àµ‚"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "തിരàµà´¤àµà´¤à´¿à´¯àµ†à´´àµà´¤à´²àµâ€ à´ªàµà´°à´µàµƒà´¤àµà´¤à´¿à´•à´³àµâ€ കാണികàµà´•àµà´•"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "à´¸àµà´¥à´¿à´¤à´¿à´µà´¿à´µà´°à´•àµà´•à´£à´•àµà´•àµà´•à´³àµâ€ കാണികàµà´•àµà´•"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "പിനàµà´¨à´¿à´Ÿàµà´Ÿ വഴികളàµâ€ കാണികàµà´•àµà´•"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "പിനàµà´¨à´¿à´Ÿàµà´Ÿ വഴികളàµâ€ ഒളിപàµà´ªà´¿à´•àµà´•àµà´•"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "പരിശോധനകളàµâ€ കാണികàµà´•àµà´•"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "പരിശോധനകളàµâ€ ഒളിപàµà´ªà´¿à´•àµà´•àµà´•"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "ലകàµà´·àµà´¯à´™àµà´™à´³àµâ€ കാണികàµà´•àµà´•"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "ലകàµà´·àµà´¯à´™àµà´™à´³àµâ€ ഒളിപàµà´ªà´¿à´•àµà´•àµà´•"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "à´à´°àµâ€à´ªàµà´ªà´¾à´Ÿàµà´•à´³àµâ€ കാണികàµà´•àµà´•"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "à´à´°àµâ€à´ªàµà´ªà´¾à´Ÿàµà´•à´³àµâ€ ഒളിപàµà´ªà´¿à´•àµà´•àµà´•"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "à´Žà´²àµà´²à´¾ ലകàµà´·àµà´¯à´™àµà´™à´³àµà´‚: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "à´Žà´¨àµà´±àµ† à´¸àµà´Ÿàµà´°à´¿à´™àµà´™àµà´•à´³àµâ€ പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤àµà´•"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "à´Žà´¨àµà´±àµ† à´¸àµà´Ÿàµà´°à´¿à´™àµà´™àµà´•à´³àµâ€ കാണികàµà´•àµà´•"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "നിങàµà´™à´³àµà´•àµà´•àµ ഒരൠസàµà´Ÿàµà´°à´¿à´™àµà´™à´¿à´¨àµà´±àµ†à´¯àµà´‚ à´šàµà´®à´¤à´²à´¯à´¿à´²àµà´²"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "à´Žà´¨àµà´±àµ† à´¸àµà´Ÿàµà´°à´¿à´™àµà´™àµà´•à´³àµâ€ ശീഘàµà´°-വിവരàµâ€à´¤àµà´¤à´¨à´‚ ചെയàµà´¯àµà´•"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "നിങàµà´™à´³àµâ€à´•àµà´•àµ വിവരàµâ€à´¤àµà´¤à´¨à´‚ ചെയàµà´¯à´¾à´¤àµà´¤ à´¸àµà´Ÿàµà´°à´¿à´™àµà´™àµà´•à´³àµà´Ÿàµ† à´šàµà´®à´¤à´²à´¯àµŠà´¨àµà´¨àµà´®à´¿à´²àµà´²"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "നിരàµâ€à´¦àµà´¦àµ‡à´¶à´™àµà´™à´³àµâ€ അവലോകനം ചെയàµà´¯àµà´•"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "നിരàµâ€à´¦àµà´¦àµ‡à´¶à´™àµà´™à´³àµâ€ കാണികàµà´•àµà´•"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "ശീഘàµà´° പരിഭാഷ"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¾à´¤àµà´¤à´µ കാണികàµà´•àµà´•"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¾à´¤àµà´¤à´µ à´’à´¨àµà´¨àµà´®à´¿à´²àµà´²"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "à´Žà´²àµà´²à´¾à´‚ പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤àµà´•"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ലകàµà´·àµà´¯à´¤àµà´¤à´¿à´¨àµà´±àµ† ZIP"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ഫോളàµâ€à´¡à´±à´¿à´¨àµà´±àµ† ZIP"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF നിരàµâ€à´®àµà´®à´¿à´•àµà´•àµà´•"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d à´¸àµà´Ÿàµà´°à´¿à´™àµà´™àµ (%d%%) പരാജയപàµà´ªàµ†à´Ÿàµà´Ÿàµ"
+msgstr[1] "%d വാകàµà´•àµà´•à´³àµâ€ (%d%%) പരാജയപàµà´ªàµ†à´Ÿàµà´Ÿàµ"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d വാകàµà´•àµà´•à´³àµâ€ (%d%%) à´à´°àµâ€à´ªàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d à´¸àµà´¤àµà´°à´¿à´™àµà´™àµà´•à´³àµâ€]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d വാകàµà´•àµà´•à´³àµâ€ (%d%%) പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "à´Žà´²àµà´²à´¾ പദàµà´§à´¤à´¿à´•à´³àµà´‚"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "à´Žà´²àµà´²à´¾ ഭാഷകളàµà´‚"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "à´Žà´¨àµà´±àµ† à´…à´•àµà´•àµŒà´£àµà´Ÿàµ"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "രേഖകളàµà´‚ സഹായവàµà´‚"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "à´ªàµà´±à´¤àµà´¤àµ à´•à´Ÿà´•àµà´•àµà´•"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "à´…à´•à´¤àµà´¤àµ à´•à´Ÿà´•àµà´•àµà´•"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "രജിസàµà´±àµà´±à´°àµâ€"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "സജീവമാകàµà´•àµà´•"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "പൂടàµà´Ÿà´¿à´²àµâ€ ലോഗോ"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "à´ˆ പൂടàµà´Ÿà´¿à´²àµâ€ സെരàµâ€à´µà´±à´¿à´¨àµ† പറàµà´±à´¿"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "à´Žà´²àµà´²à´¾ ലകàµà´·àµà´¯à´™àµà´™à´³àµà´‚"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d ഫയലàµà´•à´³àµâ€"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d ഫയലàµâ€"
+msgstr[1] "%d ഫയലàµà´•à´³àµâ€"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d à´¸àµà´Ÿàµà´°à´¿à´™àµà´™àµà´•à´³àµâ€"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "നാമം"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "പരിഭാഷാ ശതമാനം"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿à´¯ വാകàµà´•àµà´•à´³àµâ€"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "à´«à´¸àµà´¸à´¿"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "à´«à´¸àµà´¸à´¿ ശതമാനം"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "à´«à´¸àµà´¸à´¿ വാകàµà´•àµà´•à´³àµâ€"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿à´¯à´¿à´Ÿàµà´Ÿà´¿à´²àµà´²à´¾à´¤àµà´¤ ശതമാനം"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿à´¯à´¿à´Ÿàµà´Ÿà´¿à´²àµà´²à´¾à´¤àµà´¤ വാകàµà´•àµà´•à´³àµâ€"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "à´®àµà´´àµà´µà´¨àµà´‚"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "à´®àµà´´àµà´µà´¨àµâ€ വാകàµà´•àµà´•à´³àµà´‚"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "à´—àµà´°à´¾à´«àµ"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "മൂലാധാരം"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "ലകàµà´·àµà´¯à´¾à´§à´¾à´°à´‚"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "à´…à´­à´¿à´ªàµà´°à´¾à´¯à´™àµà´™à´³àµâ€"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "à´¸àµà´¥à´¾à´¨à´™àµà´™à´³àµâ€"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "ലോഗിനàµâ€ പരാജയപàµà´ªàµ†à´Ÿàµà´Ÿà´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "ലോഗിനിലേകàµà´•àµ വഴിതിതിരിചàµà´šàµ വിടàµà´¨àµà´¨àµ..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "പൂമàµà´– താളിലàµâ€ കയറàµà´µà´¾à´¨àµâ€ ലോഗിനàµâ€ ചെയàµà´¯à´£à´‚"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "à´µàµà´¯à´•àµà´¤à´¿ വിവരണങàµà´™à´³àµâ€ à´ªàµà´¤àµà´•àµà´•à´¿"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "മേലàµâ€à´¨àµ‹à´Ÿàµà´Ÿ താളിലàµâ€ കയറàµà´µà´¾à´¨àµâ€ ലോഗിനàµâ€ ചെയàµà´¯à´£à´‚"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "പൂമàµà´–à´¤àµà´¤àµ‡à´•àµà´•àµ വഴിതിരിചàµà´šàµ വിടàµà´¨àµà´¨àµ..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "പൂടàµà´Ÿà´¿à´²àµâ€ മേലàµâ€à´¨àµ‹à´Ÿàµà´Ÿà´‚ വഹികàµà´•àµà´µà´¾à´¨àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´§à´¿à´•à´¾à´°à´®à´¿à´²àµà´²."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "കാണàµà´•"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "നിരàµâ€à´¦àµà´¦àµ‡à´¶à´¿à´•àµà´•àµà´•"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤àµà´•"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "അവലോകനം നടതàµà´¤àµà´•"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "ശേഖരം"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO ഫയലàµà´•à´³àµâ€ കംപൈലàµâ€ ചെയàµà´¯àµà´•"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "à´à´°àµâ€à´ªàµà´ªà´¾à´Ÿà´¾à´•àµà´•àµà´•"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "\"nobody\" à´…à´²àµà´²àµ†à´™àµà´•à´¿à´²àµâ€ \"default\" ഉപയോകàµà´¤à´¾à´µà´¿à´¨àµ† നീകàµà´•à´‚ ചെയàµà´¯àµà´µà´¾à´¨à´¾à´•à´¿à´²àµà´²"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "ലകàµà´·àµà´¯à´™àµà´™à´³àµâ€ മാറàµà´±àµà´µà´¾à´¨àµà´³àµà´³ അധികാരങàµà´™à´³àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "ഫയലàµà´•à´³àµâ€ à´…à´ªàµâ€à´²àµ‹à´¡àµ ചെയàµà´¯àµà´µà´¾à´¨àµà´³àµà´³ അധികാരങàµà´™à´³àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "ഫയലàµà´•à´³àµâ€ മേലെഴàµà´¤à´¾à´¨àµà´³àµà´³ അധികാരങàµà´™à´³àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "à´ªàµà´¤à´¿à´¯ ഫയലàµà´•à´³àµâ€ à´…à´ªàµâ€à´²àµ‹à´¡àµ ചെയàµà´¯àµà´µà´¾à´¨àµà´³àµà´³ അധികാരങàµà´™à´³àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "ഫയലàµà´•à´³àµâ€ à´ªàµà´¤àµà´•àµà´•àµà´µà´¾à´¨àµà´³àµà´³ അധികാരങàµà´™à´³àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "ഫയലàµà´•à´³àµâ€ സമരàµâ€à´ªàµà´ªà´¿à´•àµà´•àµà´µà´¾à´¨àµà´³àµà´³ അധികാരങàµà´™à´³àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "à´à´°àµâ€à´ªàµà´ªàµ‡à´Ÿàµà´¤àµà´¤à´²àµà´•à´³àµâ€ മാറàµà´±àµà´µà´¾à´¨àµà´³àµà´³ അധികാരങàµà´™à´³àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "പരിഭാഷകളàµâ€ മാറàµà´±àµà´µà´¾à´¨àµà´³àµà´³ അധികാരങàµà´™à´³àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "മാറàµà´±à´™àµà´™à´³àµâ€ നിരàµâ€à´¦àµà´¦àµ‡à´¶à´¿à´•àµà´•àµà´µà´¾à´¨àµà´³àµà´³ അധികാരങàµà´™à´³àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "മാറàµà´±à´™àµà´™à´³àµâ€ അവലോകനം ചെയàµà´¯àµà´µà´¾à´¨àµà´³àµà´³ അധികാരങàµà´™à´³àµâ€ നിങàµà´™à´³àµâ€à´•àµà´•à´¿à´²àµà´²"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´¿\n"
+"(%d ബാകàµà´•à´¿, %d à´«à´¸àµà´¸à´¿)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: %s, %s-ലേകàµà´•àµ പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤àµà´¨àµà´¨àµ: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "യഥാരàµâ€à´¤àµà´¥à´‚"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "പരിഭാഷപàµà´ªàµ†à´Ÿàµà´¤àµà´¤à´²àµâ€"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "നിരàµâ€à´¦àµà´¦àµ‡à´¶à´‚ അംഗീകരികàµà´•àµà´•"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "നിരàµâ€à´¦àµà´¦àµ‡à´¶à´‚ തളàµà´³à´¿à´•àµà´•à´³à´¯àµà´•"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "പരിഭാഷകനàµà´±àµ† സനàµà´¦àµ‡à´¶à´™àµà´™à´³àµâ€"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "വികസിതാവിനàµà´±àµ† സനàµà´¦àµ‡à´¶à´™àµà´™à´³àµâ€"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "ബനàµà´§à´ªàµà´ªàµ†à´Ÿàµà´Ÿ"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "ജോലി ചെയàµà´¤àµ കൊണàµà´Ÿà´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ...."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "പിഴവàµàµ: എവിടെയോ à´Žà´¨àµà´¤àµ‹ പിശകൠസംഭവിചàµà´šàµ"
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "ബാചàµà´šà´¿à´¨àµà´±àµ† അവസാനം"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "ഇവിടെ ഞെകàµà´•à´¿à´¯à´¾à´²àµâ€ പൂമàµà´–à´¤àµà´¤àµ‡à´•àµà´•àµ തിരികെ പോകാം"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "à´¤àµà´Ÿà´™àµà´™àµà´•"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "à´®àµà´¨àµà´ªà´¤àµà´¤àµ† %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%d - à´¨àµà´±àµ† %d à´®àµà´¤à´²àµâ€ %d വരെയàµà´³àµà´³à´µ"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "à´…à´Ÿàµà´¤àµà´¤ %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "അവസാനം"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s പരിശോധികàµà´•àµà´¨àµà´¨àµ"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "('%s') ആയി സാമàµà´¯à´®àµà´³àµà´³ à´’à´¨àµà´¨àµà´®à´¿à´²àµà´²"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "നിങàµà´™à´³àµâ€ തിരഞàµà´žàµ†à´Ÿàµà´¤àµà´¤à´µà´¯àµ†à´²àµà´²à´¾à´‚ à´•à´£àµà´Ÿàµ‚à´•à´´à´¿à´žàµà´žà´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "à´’à´±àµà´±"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "ബഹàµ"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "തിരàµà´¤àµà´¤à´¿à´¯àµ†à´´àµà´¤àµà´•"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "പകരàµâ€à´¤àµà´¤à´¿à´¯àµ†à´´àµà´¤àµà´•"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "ഒഴിവാകàµà´•àµà´•"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "പിനàµà´¨à´¿à´²àµ‡à´•àµà´•àµ"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "സമരàµâ€à´ªàµà´ªà´¿à´•àµà´•àµà´•"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "വലàµà´¤à´¾à´•àµà´•àµà´•"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "ചെറàµà´¤à´¾à´•àµà´•àµà´•"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "%d à´¨àµà´±àµ† ബഹàµà´µà´šà´¨à´‚"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"ബഹàµà´µà´šà´¨ വിവരങàµà´™à´³àµâ€ ലഭàµà´¯à´®à´²àµà´²à´¾à´¤àµà´¤à´¤à´¿à´¨à´¾à´²àµâ€ പരിഭാഷ നടതàµà´¤àµà´µà´¾à´¨àµâ€ സാധàµà´¯à´®à´²àµà´². ദയവായി "
+"സൈറàµà´±àµ കാരàµà´¯à´•àµà´•à´¾à´°à´¨àµ† കാണàµà´•."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "ഇപàµà´ªàµ‹à´´à´¤àµà´¤àµ† പരിഭാഷ:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "നിരàµâ€à´¦àµà´¦àµ‡à´¶à´‚ %d , %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "നിരàµâ€à´¦àµà´¦àµ‡à´¶à´‚ %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s à´¨àµà´±àµ† നിരàµâ€à´¦àµà´¦àµ‡à´¶à´‚:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "നിരàµâ€à´¦àµà´¦àµ‡à´¶à´‚:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "%d à´…à´•àµà´·à´°à´™àµà´™à´³àµ†à´™àµà´•à´¿à´²àµà´‚ ഉളàµà´³ ഒരൠസാധàµà´µà´¾à´¯ പാസàµà´¸àµâ€à´µàµ‡à´¡àµ കൊടàµà´•àµà´•àµ‡à´£àµà´Ÿà´¤à´¾à´£àµ."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "പാസàµà´¸àµâ€à´µàµ‡à´¡àµà´•à´³àµâ€ à´°à´£àµà´Ÿàµà´‚ പൊരàµà´¤àµà´¤à´ªàµà´ªàµ†à´Ÿàµà´¨àµà´¨à´¿à´²àµà´²."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "പൂടàµà´Ÿà´¿à´²à´¿à´¨àµà´±àµ† à´…à´•à´¤àµà´¤àµ à´•à´Ÿà´•àµà´•àµà´•"
+
+#: users.py:66
+msgid "Username:"
+msgstr "ഉപയോകàµà´¤àµƒà´¨à´¾à´®à´‚:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "പാസàµà´¸àµâ€à´µàµ‡à´¡àµ:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "ഭാഷ:"
+
+#: users.py:71
+msgid "Login"
+msgstr "à´…à´•à´¤àµà´¤àµ à´•à´Ÿà´•àµà´•àµà´•"
+
+#: users.py:77
+msgid "Default"
+msgstr "ഡിഫോളàµâ€à´Ÿàµà´Ÿàµ"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "രജിസàµà´Ÿàµà´°àµ‡à´·à´¨àµâ€ വിവരങàµà´™à´³àµâ€ ചേരàµâ€à´•àµà´•àµà´•"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "പൂടàµà´Ÿà´¿à´²àµâ€ രജിസàµà´Ÿàµà´°àµ‡à´·à´¨àµâ€"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "നിങàµà´™à´³àµâ€ ഉപയോകàµà´¤àµƒà´¨à´¾à´®à´‚ ആവശàµà´¯à´ªàµà´ªàµ†à´Ÿàµà´Ÿàµ"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "സാധàµà´¤à´¯àµà´³àµà´³ ഒരൠഈ-മെയàµâ€à´²àµâ€ വിലാസം നലàµâ€à´•àµ‡à´£àµà´Ÿà´¤à´¾à´£àµ"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "നിങàµà´™à´³àµà´Ÿàµ† പൂരàµâ€à´£àµà´£ നാമം"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "നിങàµà´™à´³àµâ€à´•àµà´•àµ വേണàµà´Ÿ പാസàµà´¸àµâ€à´µàµ‡à´¡àµ"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "പാസàµà´¸àµâ€à´µàµ‡à´¡àµ ഉറപàµà´ªà´¿à´•àµà´•àµà´•"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "à´Žà´´àµà´¤à´¿à´¯à´¤àµ ശരിയെനàµà´¨àµà´±à´ªàµà´ªà´¿à´•àµà´•àµà´µà´¾à´¨àµâ€ പാസàµà´¸àµâ€à´µàµ‡à´¡àµ വീണàµà´Ÿàµà´‚ à´Žà´´àµà´¤àµà´•"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "à´…à´•àµà´•àµŒà´£àµà´Ÿàµ രജിസàµà´±àµà´±à´°àµâ€ ചെയàµà´¯àµà´•"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "സജീവമാകàµà´•à´²àµâ€ വിവരങàµà´™à´³àµâ€ നലàµâ€à´•àµà´•"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "പൂടàµà´Ÿàµâ€à´²àµâ€ à´…à´•àµà´•àµŒà´£àµà´Ÿàµ സജീവമാകàµà´•à´²àµâ€"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "സജീവമാകàµà´•à´²àµâ€ കോഡàµ"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "നിങàµà´™à´³àµâ€à´•àµà´•àµ ലഭിചàµà´š സജീവമാകàµà´•à´²àµâ€ കോഡàµ"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "à´…à´•àµà´•àµŒà´£àµà´Ÿàµ സജീവമാകàµà´•àµà´•"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "à´“à´ªàµà´·à´¨àµà´•à´³àµâ€: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "à´µàµà´¯à´•àµà´¤à´¿ വിവരണം"
+
+#: users.py:186
+msgid "Email"
+msgstr "à´ˆ-മെയàµâ€à´²àµâ€"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "പരിഭാഷാ à´®àµà´–രൂപ à´•àµà´°à´®àµ€à´•à´°à´£à´™àµà´™à´³àµâ€"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "ഉപയോകàµà´¤àµƒ à´®àµà´–രൂപ ഭാഷ"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "à´Žà´¨àµà´±àµ† പദàµà´§à´¤à´¿à´•à´³àµâ€"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "à´Žà´¨àµà´±àµ† ഭാഷകളàµâ€"
+
+#: users.py:196
+msgid "Home page"
+msgstr "പൂമàµà´– താളàµâ€"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "ബദലàµâ€ മൂല ഭാഷ"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "à´’à´¨àµà´¨àµà´®à´¿à´²àµà´²"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "പൊകàµà´•à´‚ (വരികളിലàµâ€)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "view mode-à´²àµâ€ ഉളàµà´³ വരികളàµà´Ÿàµ† à´Žà´£àµà´£à´‚"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "വിവരàµâ€à´¤àµà´¤à´¨ mode-à´²àµâ€ ഉളàµà´³ വരികളàµà´Ÿàµ† à´Žà´£àµà´£à´‚"
+
+#: users.py:307
+msgid "Error"
+msgstr "പിശകàµ"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "സൈറàµà´±àµ കാരàµà´¯à´•àµà´•à´°à´¨àµâ€ ആയാലേ ഉപയോകàµà´¤à´¾à´•àµà´•à´³àµ† മാറàµà´±àµà´µà´¾à´¨àµâ€ സാധികàµà´•àµ‚"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"ഉപയോകàµà´¤àµƒà´¨à´¾à´®à´‚ alphanumberic ആയിരികàµà´•à´£à´‚, മാതàµà´°à´µàµà´®à´²àµà´², ഒരൠആലàµâ€à´«à´¬àµ†à´±àµà´±àµ കൊണàµà´Ÿàµ "
+"à´¤àµà´Ÿà´™àµà´™àµà´•à´¯àµà´‚ വേണം."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "നിങàµà´™à´³àµ‹ (മറàµà´±à´¾à´°àµ†à´™àµà´•à´¿à´²àµà´®àµ‹) നിങàµà´™à´³àµà´Ÿàµ† ഉപയോകàµà´¤àµƒà´¨à´¾à´®à´‚ കൊണàµà´Ÿàµ രജിസàµà´±àµà´±à´°àµâ€ "
+"ചെയàµà´¯àµà´µà´¾à´¨àµâ€ à´¶àµà´°à´®à´¿à´šàµà´šàµ.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "നിങàµà´™à´³àµà´Ÿàµ† പാസàµà´¸àµâ€à´µàµ‡à´¡àµ à´žà´™àµà´™à´³àµâ€ സൂകàµà´·à´¿à´•àµà´•à´¿à´²àµà´², പകരം അതിനàµà´±àµ† ഒരൠhash മാതàµà´°à´®àµ† "
+"സൂകàµà´·à´¿à´•àµà´•àµà´¨àµà´¨àµà´³àµà´³àµ‚.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "രജിസàµà´Ÿàµà´°àµ‡à´·à´¨àµà´®à´¾à´¯à´¿ ബനàµà´§à´ªàµà´ªàµ†à´Ÿàµà´Ÿàµ à´ªàµà´°à´¶àµà´¨à´™àµà´™à´³àµà´£àµà´Ÿàµ†à´™àµà´•à´¿à´²àµâ€ %s അറിയികàµà´•àµà´•.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "രജിസàµà´Ÿàµà´°àµ‡à´·à´¨àµà´®à´¾à´¯à´¿ ബനàµà´§à´ªàµà´ªàµ†à´Ÿàµà´Ÿàµ à´ªàµà´°à´¶àµà´¨à´™àµà´™à´³àµà´£àµà´Ÿàµ†à´™àµà´•à´¿à´²àµâ€ സൈറàµà´±àµ കാരàµà´¯à´•àµà´•à´¾à´°à´¨àµ† "
+"അറിയികàµà´•àµà´•.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "à´ˆ ഉപയോകàµà´¤àµƒà´¨à´¾à´®à´‚ ഇപàµà´ªàµ‹à´³àµâ€ നിലനിലàµà´•àµà´•àµà´¨àµà´¨àµ. രജിസàµà´±àµà´±à´°àµâ€ ചെയàµà´¤ à´ˆ-മെയàµâ€à´²à´¿à´²àµ‡à´•àµà´•àµ "
+"ഇപàµà´ªàµ‹à´³àµâ€ ഒരൠസനàµà´¦àµ‡à´¶à´‚ പോകàµà´¨àµà´¨à´¤à´¾à´£àµ.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "<a href='%s'>à´…à´•à´¤àµà´¤àµ‡à´•àµà´•àµ</a> à´•à´Ÿà´•àµà´•àµà´¨àµà´¨àµ കൊണàµà´Ÿà´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "à´ˆ à´ˆ-മെയàµâ€à´²àµâ€ വിലാസതàµà´¤à´¿à´²àµ‡à´•àµà´•à´¾à´¯à´¿ ഒരൠപൂടàµà´Ÿà´¿à´²àµâ€ à´…à´•àµà´•àµŒà´£àµà´Ÿàµ "
+"ഉണàµà´Ÿà´¾à´•àµà´•à´¿à´¯à´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "നിങàµà´™à´³àµà´Ÿàµ† à´…à´•àµà´•àµŒà´£àµà´Ÿàµ സജീവമാകàµà´•àµà´µà´¾à´¨àµâ€ à´ˆ à´•à´£àµà´£à´¿à´¯à´¿à´²àµâ€ പോകàµà´•:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"നിങàµà´™à´³àµà´Ÿàµ† സജീവമാകàµà´•à´²àµâ€ കോഡàµ:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "à´•à´£àµà´£à´¿à´¯à´¿à´²àµâ€ പോകàµà´µà´¾à´¨àµâ€ à´•à´´à´¿à´žàµà´žà´¿à´²àµà´²àµ†à´™àµà´•à´¿à´²àµâ€ à´®àµà´•à´³à´¿à´²àµâ€ പറഞàµà´žà´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨ കോഡൠ"
+"സജീവമാകàµà´•à´²àµâ€ താളിലàµâ€ കൊടàµà´•àµà´•àµà´•.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "à´ˆ-മെയിലàµâ€ വിലാസം ശരികàµà´•àµà´³àµà´³à´¤à´¾à´£àµ‹ à´Žà´¨àµà´¨àµ†à´±à´¿à´¯à´¾à´¨àµâ€ അയചàµà´š സനàµà´¦àµ‡à´¶à´‚ ആണിതàµ. "
+"രജിസàµà´±àµà´±à´°àµâ€ ചെയàµà´¯àµà´µà´¾à´¨àµâ€ ആഗàµà´°à´¹à´‚ ഇലàµà´² à´Žà´™àµà´•à´¿à´²àµâ€, ഇതിനെ പറàµà´±à´¿ മറനàµà´¨àµ‡à´•àµà´•àµ‚. \n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"à´…à´•àµà´•àµŒà´£àµà´Ÿàµ സൃഷàµà´Ÿà´¿à´•àµà´•à´ªàµà´ªàµ†à´Ÿàµà´Ÿà´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ. ലോഗിനàµâ€ വിവരങàµà´™à´³àµà´‚ ആകàµà´Ÿà´¿à´µàµ‡à´·à´¨àµâ€ "
+"കോഡàµà´®à´¾à´¯à´¿ à´ˆ-മെയàµâ€à´²àµâ€ വരàµà´¨àµà´¨à´¤à´¾à´£àµ. ദയവായി <a href='%s'>ആകàµà´Ÿà´¿à´µàµ‡à´·à´¨àµâ€ താളിലàµâ€</a> "
+"കോഡൠനലàµâ€à´•àµ‡à´£àµà´Ÿà´¤à´¾à´£àµ."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(à´…à´²àµà´²àµ†à´™àµà´•à´¿à´²àµâ€ ഈമെയàµâ€à´²à´¿à´²àµ† സജീവമാകàµà´•à´²àµâ€ à´•à´£àµà´£à´¿à´¯à´¿à´²àµâ€ à´šàµà´®àµà´®à´¾ ഞെകàµà´•àµà´•)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "ഇതാണൠനിങàµà´™à´³àµà´Ÿàµ† ഉപയോകàµà´¤àµƒà´¨à´¾à´®à´‚: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "ഇതാണൠനിങàµà´™à´³àµà´Ÿàµ† പാസàµà´¸àµâ€à´µàµ‡à´¡àµ : %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "ഇതാണൠരജിസàµà´±àµà´±àµ‡à´¡àµ à´ˆ-മെയàµâ€à´²àµâ€ വിലാസം : %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "രജിസàµà´Ÿàµà´°àµ‡à´·à´¨àµâ€ താളിലേകàµà´•àµ വഴിതിരികàµà´•àµà´¨àµà´¨àµ..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "ലോഗിനàµâ€ താളിലേകàµà´•àµ വഴിതിരികàµà´•àµà´¨àµà´¨àµ..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"നിങàµà´™à´³àµà´Ÿàµ† à´…à´•àµà´•àµŒà´£àµà´Ÿàµ ആകàµà´Ÿà´¿à´µàµ‡à´±àµà´±àµ ചെയàµà´¤à´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨àµ! ലോഗിനàµâ€ താളിലേകàµà´•àµ "
+"വഴിതിരികàµà´•àµà´¨àµà´¨àµ..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "ആകàµà´Ÿà´¿à´µàµ‡à´·à´¨àµâ€ വിവരം അസാധàµà´µà´¾à´£àµ."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "ആകàµà´Ÿà´¿à´µàµ‡à´·à´¨àµâ€ പരാജയപàµà´ªàµ†à´Ÿàµà´Ÿàµ"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "പൊകàµà´•à´‚ à´…à´•àµà´•à´¤àµà´¤à´¿à´²à´¾à´¯à´¿à´°à´¿à´•àµà´•à´£à´‚"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "വീതി à´…à´•àµà´•à´¤àµà´¤à´¿à´²à´¾à´¯à´¿à´°à´¿à´•àµà´•à´£à´‚"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "വരികളàµà´Ÿàµ† à´Žà´£àµà´£à´‚ à´…à´•àµà´•à´¤àµà´¤à´¿à´²à´¾à´¯à´¿à´°à´¿à´•àµà´•à´£à´‚"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "വരികളàµà´Ÿàµ† à´Žà´£àµà´£à´‚ à´…à´•àµà´•à´¤àµà´¤à´¿à´²à´¾à´¯à´¿à´°à´¿à´•àµà´•à´£à´‚"
+
+#~ msgid "Accept"
+#~ msgstr "സമàµà´®à´¤à´¿à´•àµà´•àµà´•"
+
+#~ msgid "Reject"
+#~ msgstr "à´ªàµà´±à´¨àµà´¤à´³àµà´³àµà´•"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "വേഡàµâ€à´«àµ‹à´°àµâ€à´œàµ പരിഭാഷാ പദàµà´§à´¤à´¿"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/mn/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/mn/jToolkit.po
new file mode 100644
index 0000000..c905c16
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/mn/jToolkit.po
@@ -0,0 +1,145 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-08-26 04:43+0000\n"
+"Last-Translator: cris anderson <anderson861@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s-н нÑвтрÑÑ…"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Ð­Ð½Ñ Ò¯Ð¹Ð»Ð´Ð»Ð¸Ð¹Ð³ цуцлаад ÑˆÐ¸Ð½Ñ Ñуулт ÑхлÑÑ…"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Ð­Ð½Ñ Ò¯Ð¹Ð»Ð´Ð»Ð¸Ð¹Ð³ батлахын оронд, гараад ÑхнÑÑÑ Ð½ÑŒ ÑхлÑÑ…"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "ÐŸÑ€Ð¾Ð³Ñ€Ð°Ð¼Ð°Ð°Ñ Ð³Ð°Ñ€Ð°Ñ…"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Ð­Ð½Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð°Ð°Ñ Ð³Ð°Ñ€Ð°Ð°Ð´ ÑÑ… програм руу буцах"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", нÑвтÑÑ€Ñнийг батлана уу"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ÐÑвтрÑÑ…"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Ð¥ÑÑ€ÑглÑгчийн нÑÑ€:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Ðууц үг:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Ð¥Ñл:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Програм Ñонгох"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Гарах"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Гарах"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b> нÑÑ€ÑÑÑ€ нÑвтÑÑ€ÑÑн"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "ÑˆÐ¸Ð½Ñ Ñуулт нÑмÑж чадаагүй"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "гарÑан"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "холбогдÑон"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "ÑÑ… ÑÑƒÑƒÐ»Ñ‚Ð°Ð°Ñ Ð³Ð°Ñ€Ñан"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"ÑÑрвÑÑ€ тохируулга дÑÑÑ€ users ÑÑвÑл userprefs бичлÑг тодорхойлох Ñ…ÑÑ€ÑгтÑй"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "Ñ…ÑÑ€ÑглÑгч байхгүй (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "хүчингүй Ñ…ÑÑ€ÑглÑгчийн нÑÑ€ ба/ÑÑвÑл нууц үг"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "нÑвтрÑхийн батлахыг бүтÑлгүйтÑÑн"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Үгүй"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Тийм"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "уÑтгах"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(хавÑралт байхгүй)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "хавÑралт дÑндүү том байна"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ÑÐ½Ñ Ñ…Ð°Ð²Ñралт уÑтгах"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "ÑÑргÑÑÑ…"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ÑÐ½Ñ Ñ…Ð°Ð²Ñралт уÑтгагдÑан байна. ÑÑргÑÑхийн тулд Ñнд дарна уу"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "файл хавÑаргах"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/mn/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/mn/pootle.po
new file mode 100644
index 0000000..cff8f3f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/mn/pootle.po
@@ -0,0 +1,1368 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-10-18 19:07+0000\n"
+"Last-Translator: Bolorerdene Bundgaa <bolor@ariunbolor.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Пүүтл ДÑмо"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Ðүүр хуудаÑ"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Ð¥ÑÑ€ÑглÑгчид"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Ð¥Ñл"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "ТөÑлүүд"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Ерөнхий тохиргоонууд"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Тохиргоо"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Одоогийн байдал"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Өөрчилтууд хадгалах"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Гарчиг"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Тайлбарлалт"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "ҮндÑÑн URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Ðүүр хуудаÑ"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Пүүтл Ñ…Ñлний зохион байгуулагчын хуудаÑ"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Гол зохион байгуулагчын хуудаÑ"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO код"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "БүтÑн нÑÑ€"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(Ñнд Ñ…Ñл нÑмÑÑ…)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Онцгой Ò¯Ñгүүд"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(онцгой Ò¯Ñгүүд)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Олонтоо Ñ…ÑлбÑрийн тоо"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(олонтоо Ñ…ÑлбÑрийн тоо)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Олонтоо Ñ…ÑлбÑрийн Ñ‚ÑгшитгÑл"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(олонтоо Ñ…ÑлбÑрийн Ñ‚ÑгшитгÑл)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Ð¥Ñл хаÑах"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s хаÑах"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Стандарт"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Пүүтл Зохиогчийн ТөÑлийн ХуудаÑ"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "ТөÑлийн код"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(Ñнд Ñ‚Ó©Ñөл нÑмÑÑ…)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "ТөÑлийн тайлбарлал"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(Ñ‚Ó©Ñлийн тайлбарлал)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Шалгагч Ñ…ÑлбÑÑ€"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Файлын төрөл"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO файл Ò¯Ò¯ÑгÑÑ…"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "ТөÑөл хаÑах"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Пүүтл Ñ…ÑÑ€ÑглÑгчдийн хуудаÑ"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Ð¥ÑÑ€ÑглÑгчийн нÑÑ€"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(Ñнд бүтÑн нÑÑ€ нÑмÑÑ…)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Э-майл хаÑг"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(Ñнд Ñ-майл нÑмÑÑ…)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Ðууц үг"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(Ñнд нууц үг нÑмÑÑ…)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "ИдÑвхжүүлÑÑн"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Ð¨Ð¸Ð½Ñ Ñ…ÑÑ€ÑглÑгч идÑвхжүүлÑÑ…"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Ð¥ÑÑ€ÑглÑгч хаÑах"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Ðүүр Ñ…ÑƒÑƒÐ´Ð°Ñ Ñ€ÑƒÑƒ буцах"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Одоо байгаа Ñ…Ñл"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Ð¥Ñл шинÑчлÑÑ…"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Пүүтл зохион байгуулагч: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Та ÑÐ½Ñ Ñ‚Ó©Ñөл зохион байгуулах Ñрхгүй."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Эх Ñ…ÑвÑÑÑ ÑˆÐ¸Ð½ÑчлÑÑ…"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Ð¥Ñл нÑмÑÑ…"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Пүүтл зохион байгуулагч: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "ТөÑлийн нүүр хуудаÑ"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "%s Ñ…ÑÑ€ÑглÑгчийн Ñрх тодорхойлох боломжгүй-тийм нÑртÑй Ñ…ÑÑ€ÑглÑгч байхгүй"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Ð­Ð½Ñ Ð±Ð¾Ð» GNU-Ñ…ÑлбÑртÑй Ñ‚Ó©Ñөл (ганц хавтаÑ, файлууд Ñ…ÑлÑÑÑ€ нÑрлÑгдÑÑн)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ð­Ð½Ñ Ð±Ð¾Ð» Ñтандарт Ñ…ÑлбÑртÑй Ñ‚Ó©Ñөл (Ñ…Ñл болгон хавтаÑтай)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Ð¥ÑÑ€ÑглÑгчдийн зөвшөөрөлүүд"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(Ñ…ÑÑ€ÑглÑгч нÑмÑхийн тулд Ñонгох)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Эрх"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "ХаÑах"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Эрхийг шинÑчлÑÑ…"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Пүүтлийн тухай"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Хувилбар"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "%s-н Ð¥ÑÑ€ÑглÑгчийн ХуудаÑ"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Тохируулга өөрчлөх"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Зохиогчын хуудаÑ"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Зохион байгуулах"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "ТүргÑн ХолбооÑ"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Зохион байгуулагч"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Ð¥Ñлний Код"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Ð¥Ñлний ÐÑÑ€"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d Ñ…Ñл, дундаж %d%% орчуулÑан"
+msgstr[1] "%d Ñ…Ñл, дундаж %d%% орчуулÑан"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Ð¥Ñл"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: ТөÑөл %s, Ð¥Ñл %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Хайх"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "ÐарийвчилÑан Хайлт"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Файл дамжуулж чадаагүй, Ñмар ч файл нÑмÑÑгүй байна"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "ҮйлдÑл үүрÑг болгох"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Ð¥ÑÑ€ÑглÑгчид үүрÑг болгох"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "зорилго"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Зорилгын нÑÑ€ оруулах"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Зорилго ÐÑмÑÑ…"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Файл шилжүүлÑÑ…"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "ШилжүүлÑÑ… файл Ñонгох"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Оронд нь бичих"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "ÐийлүүлÑÑ…"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Ð¥ÑÑ€ÑглÑгч ÐÑмÑÑ…"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO файл"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF файл"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts файл"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV файл"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO файл"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "ШинÑчлÑл хийх"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Хадгалж оруулах"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Орчуулаагүй"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Зорилго Тавих"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Олон Сонгох"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "ЗаÑварлах Функцүүд ҮзүүлÑÑ…"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "СтатиÑтик ҮзүүлÑÑ…"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Зорилго ҮзүүлÑÑ…"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Зорилго Далдлах"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Санлууд шалгах"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Санлууд үзÑÑ…"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "ТүргÑн орчуулах"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Орчуулагдаагүй нь үзÑÑ…"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Орчуулагдаагүй зүйл алга"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Бүгдийг нь орчуулах"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Зорилгоны зип файл"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ХавтаÑны зип файл"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF Ò®Ò¯ÑгÑÑ…"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Бүх Ñ‚Ó©Ñлүүд"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Бүх Ñ…Ñл"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Миний данÑ"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Гарах"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "ÐÑвтрÑÑ…"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "БүртгүүлÑÑ…"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "ИдÑвхжүүлÑÑ…"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Пүүтл лого"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Ð­Ð½Ñ ÐŸÒ¯Ò¯Ñ‚Ð» ÑÑрвÑрийн тухай"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d файлууд"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d файл"
+msgstr[1] "%d файлууд"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "ÐÑÑ€"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "ОрчуулÑан"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "ОрчуулÑан хувь"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "ОрчуулÑан үгÑ"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Яг л биш"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Яг л биш хувь"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Яг л биш үгÑ"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Орчуулаагүй хувь"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Орчуулаагүй үгÑ"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Ðийт"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Ðийт үгÑ"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Диаграмм"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Тайлбарууд"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Та Пүүтл зохион байгуулах Ñрхгүй."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "ҮзÑÑ…"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Санал Болгох"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Орчуулах"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Шалгаж үзÑÑ…"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Ðрхив"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO файлууд цуглуулах"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "ҮүрÑг болгох"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Эх хувь"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Орчуулга"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Орчуулагчын тайлбар"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "БоловÑруулагчын тайлбар"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Холбоотой"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Боодол дууÑлаа"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Ð˜Ð½Ð´ÐµÐºÑ Ñ€ÑƒÑƒ буцахаар Ñнд дарна уу"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "ЭхлÑл"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Өмнөх"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%d-Ñ %d хүртÑл %d зүйлÑ"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Дараах %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "ЭцÑÑ"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s шалгаж байна"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Та ÑонгоÑон зүйлÑийн ÑцÑÑÑ‚ хүрлÑÑ"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Ганцтоо"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Олонтоо"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "ЗаÑварлах"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Хуулж авах"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Өнгөрөх"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Өмнөх"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Батлаж оруулах"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Том болгох"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Жижиг болгох"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Олонтоо Ñ…ÑлбÑÑ€"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Таны Ñ…Ñл олонтоо Ñ…ÑлбÑргүй болохоор орчуулах боломжгүй. Та ÑÐ½Ñ Ñайтын зохион "
+"байгуулагч руу хандана уу."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Одоогийн орчуулга:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "%d-Ñ€ %s-н Ñанал:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "%d-Ñ€ Ñанал:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s-н Ñанал:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Санал:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Пүүтл нÑвтÑрч орох"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Ð¥ÑÑ€ÑглÑгчийн нÑÑ€:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Ðууц үг:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Ð¥Ñл:"
+
+#: users.py:71
+msgid "Login"
+msgstr "ÐÑвтрÑÑ…"
+
+#: users.py:77
+msgid "Default"
+msgstr "Өгөгдмөл"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Пүүтл бүртгүүлÑл"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Таны Ñ…Ò¯ÑÑÑн Ñ…ÑÑ€ÑглÑгчийн нÑÑ€"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Та хүчинтÑй Ñ-майл хаÑг оруулах Ñ…ÑÑ€ÑгтÑй"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Таны бүтÑн нÑÑ€"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Таны Ñ…Ò¯ÑÑÑн нууц үг"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Ðууц үг дахиад"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Зөв шалгахын тулд та дахиад нууц үг оруулна уу"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Ð”Ð°Ð½Ñ Ð±Ò¯Ñ€Ñ‚Ð³Ò¯Ò¯Ð»ÑÑ…"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Пүүтл Ð´Ð°Ð½Ñ Ð¸Ð´ÑвхжүүлÑлт"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "ИдÑвхжүүлÑлтийн код"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Таны хүлÑÑн авÑан идÑвхжүүлÑлтийн код"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Ð”Ð°Ð½Ñ Ð¸Ð´ÑвхÑүүлÑÑ…"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr "Э-майл"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Ð¥ÑÑ€ÑглÑгчийн интерфейÑийн Ñ…Ñл"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Миний Ñ‚Ó©Ñлүүд"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Миний Ñ…Ñл"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Ðүүр хуудаÑ"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr "Ðлдаа"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Таны нÑвтрÑÑ… нÑÑ€ : %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Таны нууц үг : %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+"Та %s\n"
+" Ñ-шуудангын хаÑгаар бүртгүүлÑÑн"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Зөвшөөрөх"
+
+#~ msgid "Reject"
+#~ msgstr "Үл Зөвшөөрөх"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge орчуулгын Ñ‚Ó©Ñөл"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/mr/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/mr/jToolkit.po
new file mode 100644
index 0000000..9135f0b
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/mr/jToolkit.po
@@ -0,0 +1,140 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2005-10-23 13:42-0500\n"
+"Last-Translator: Swapnil K Hajare <Swapnil K Hajare>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"X-Generator: Pootle 0.6.3\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s साठी पà¥à¤°à¤µà¥‡à¤¶"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ही कृती रदà¥à¤¦ करà¥à¤¨ नवे सतà¥à¤° सà¥à¤°à¥ करा"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "कारà¥à¤¯à¤•à¥à¤°à¤® बंद करा"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", कृपया पà¥à¤¨à¥à¤¹à¤¾ लॉगीन करा"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "लॉगीन"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "आपले नाव"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "कà¥à¤Ÿà¤¶à¤¬à¥à¤¦"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "भाषा"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "कारà¥à¤¯à¤•à¥à¤°à¤® निवडा"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "बाहेर पडा"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "बाहेर"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "नवे सतà¥à¤° जोडता आले नाही"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+msgid "connected"
+msgstr ""
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "नाही"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "होय"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "काढà¥à¤¨ टाका"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+msgid "restore"
+msgstr ""
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/mr/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/mr/pootle.po
new file mode 100644
index 0000000..4037919
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/mr/pootle.po
@@ -0,0 +1,1371 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2005-10-30 11:22-0600\n"
+"Last-Translator: Swapnil K Hajare <dreamil@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"X-Generator: Pootle 0.6.3\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "वापरकरà¥à¤¤à¤¾"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "भाषा"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "पà¥à¤°à¤•à¤²à¥à¤ª"
+
+#: adminpages.py:49
+#, fuzzy
+msgid "General options"
+msgstr "सरà¥à¤µà¤¸à¤¾à¤§à¤¾à¤°à¤£ परà¥à¤¯à¤¾à¤¯"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "परà¥à¤¯à¤¾à¤¯"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "सधà¥à¤¯à¤¾à¤šà¥‡ मà¥à¤²à¥à¤¯"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "बदल संचित करा"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "शिरà¥à¤·à¤•"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "तपशील"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "मà¥à¤–à¥à¤¯ पान"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "पà¥à¤Ÿà¤² भाषा पà¥à¤°à¤¶à¤¾à¤¸à¤¨ पान"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+#, fuzzy
+msgid "Main admin page"
+msgstr "मà¥à¤–à¥à¤¯ पà¥à¤°à¤¶à¤¾à¤¸à¤¨ पान"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "आयà¤à¤¸à¤“ संकेतांक"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "पूरà¥à¤£ नाव"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(भाषा येथे जोडा)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "काही खास अकà¥à¤·à¤°à¥‡"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(विशिषà¥à¤Ÿ अकà¥à¤·à¤°à¥‡)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+#, fuzzy
+msgid "Remove Language"
+msgstr "भाषा काढà¥à¤¨ टाका"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s काढून टाका"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+#, fuzzy
+msgid "Remove Project"
+msgstr "पà¥à¤°à¤•à¤²à¥à¤ª"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr ""
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+#, fuzzy
+msgid "Remove User"
+msgstr "%s काढून टाका"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+#, fuzzy
+msgid "Pootle Admin: %s"
+msgstr "पà¥à¤Ÿà¤²"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+#, fuzzy
+msgid "Pootle Admin: %s %s"
+msgstr "पà¥à¤Ÿà¤²"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+#, fuzzy
+msgid "Language Code"
+msgstr "भाषा"
+
+#: indexpage.py:222
+#, fuzzy
+msgid "Language Name"
+msgstr "भाषा"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "भाषा"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr ""
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+#, fuzzy
+msgid "All projects"
+msgstr "पà¥à¤°à¤•à¤²à¥à¤ª"
+
+#: pagelayout.py:29
+#, fuzzy
+msgid "All languages"
+msgstr "भाषा"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr ""
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr ""
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+#, fuzzy
+msgid "Total"
+msgstr "शिरà¥à¤·à¤•"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr ""
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+#, fuzzy
+msgid "Current Translation:"
+msgstr "सधà¥à¤¯à¤¾à¤šà¥‡ मà¥à¤²à¥à¤¯"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+msgid "Password:"
+msgstr ""
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "भाषा"
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "भाषा"
+
+#: users.py:196
+msgid "Home page"
+msgstr "मà¥à¤–à¥à¤¯ पान"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#, fuzzy
+#~ msgid "WordForge Translation Project"
+#~ msgstr "सधà¥à¤¯à¤¾à¤šà¥‡ मà¥à¤²à¥à¤¯"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ms/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ms/jToolkit.po
new file mode 100644
index 0000000..4e13b41
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ms/jToolkit.po
@@ -0,0 +1,145 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2005-07-08 04:28-0500\n"
+"Last-Translator: Sharuzzaman Ahmat Raslan <sharuzzaman@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Log masuk untuk %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Batalkan aksi dan mulakan sesi baru"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Selain dari mengesahkan tindakan ini, log keluar dan mulakan semula"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Keluar dari aplikasi"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Keluar aplikasi ini dan kembali ke aplikasi induk"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", sila sahkan log masuk"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Log masuk"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Nama pengguna:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Kata laluan:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Bahasa:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Pilih Aplikasi"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Log Keluar"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Keluar"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "log masuk sebagai <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "tidak boleh menambah sesi baru"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "log keluar"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "terhubung"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "terkeluar sesi induk"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"perlu menyatakan masukan pengguna atau keutamaan pengguna pada tetapan "
+"pelayan"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "pengguna tidak wujud (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nama pengguna dan/atau kata kunci tidak sah"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "pengesahan log masuk gagal"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Tidak"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ya"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "buang"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(tiada lampiran)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "lampiran terlalu besar"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "buang lampiran ini"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "kembalikan"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "lampiran ini telah dibuang. Klik di sini untuk mengembalikannya"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "lampir fail"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "entri pengguna perlu ditakrifkan ke dalam tetapan pelayan"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ms/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ms/pootle.po
new file mode 100644
index 0000000..c22a8ed
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ms/pootle.po
@@ -0,0 +1,1476 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-04-16 10:13+0000\n"
+"Last-Translator: amran abdullah <am@uum.edu.my>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.1.0\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demo Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+#, fuzzy
+msgid "Home"
+msgstr "Muka Depan"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Pengguna"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Bahasa"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projek"
+
+#: adminpages.py:49
+#, fuzzy
+msgid "General options"
+msgstr "Pilihan Umum"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Pilihan"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Nilai semasa"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Simpan perubahan"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Tajuk"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Penerangan"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL Asas"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Halaman Utama"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Halaman Pengurus Bahasa Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+#, fuzzy
+msgid "Main admin page"
+msgstr "Halaman Pentadbir utama"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Kod ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nama Penuh"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(tambah bahasa di sini)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Special Chars"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(aksara khas)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Jumlah Plural"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(jumlah plural)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Persamaan Plural"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(persamaan plural)"
+
+#: adminpages.py:98
+#, fuzzy
+msgid "Remove Language"
+msgstr "Buang bahasa"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Buang %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Piawai"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Halaman Pengurus Projek Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Kod Projek"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(tambah projek di sini)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Keterangan Projek"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(keterangan projek)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Gaya Penyemak"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Jenis Fail"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Bina Fail MO"
+
+#: adminpages.py:158
+#, fuzzy
+msgid "Remove Project"
+msgstr "Buang projek"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Halaman Pengurus Pengguna Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Nama pengguna"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(tambah nama penuh di sini)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Alamat Emel"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(tambah emel di sini)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Kata laluan"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(tambah kata laluan di sini)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktifkan"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Mengaktifkan Pengguna Baru"
+
+#: adminpages.py:223
+#, fuzzy
+msgid "Remove User"
+msgstr "Buang %s"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Kembali ke halaman utama"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Bahasa tersedia ada"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Kemaskini Bahasa"
+
+#: adminpages.py:284
+#, python-format
+#, fuzzy
+msgid "Pootle Admin: %s"
+msgstr "Pengurus Pootle: %s %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Anda tidak mempunyai kebenaran untuk mengurus projek ini."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Kemaskini daripada templat"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Tambah Bahasa"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pengurus Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Halaman Projek"
+
+#: adminpages.py:355
+#, python-format
+#, fuzzy
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Tidak dapat mengeset hak bagi pengguna %s - pengguna tidak wujud"
+
+#: adminpages.py:372
+#, fuzzy
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Ini adalah projek GNU ( satu direktori, nama fail bagi setiap bahasa)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ini adalah projek standard (satu direktori bagi setiap bahasa)"
+
+#: adminpages.py:375
+#, fuzzy
+msgid "User Permissions"
+msgstr "Hak Pengguna"
+
+#: adminpages.py:377
+#, fuzzy
+msgid "(select to add user)"
+msgstr "(pilih untuk tambah pengguna)"
+
+#: adminpages.py:378
+#, fuzzy
+msgid "Rights"
+msgstr "Hak"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Buang"
+
+#: adminpages.py:406
+#, fuzzy
+msgid "Update Rights"
+msgstr "Kemaskini Hak"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Nama ini melambangkan <b>E</b>njin <b>T</b>erjemahan / <b>L</b>okalisasi "
+"<b>D</b>alam Talian berdasarkan <b>PO</b>, anda boleh membacanya di <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">sini</a>. "
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Halaman pengurus"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Tadbir"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+#, fuzzy
+msgid "Language Code"
+msgstr "Bahasa"
+
+#: indexpage.py:222
+#, fuzzy
+msgid "Language Name"
+msgstr "Bahasa"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "Bahasa"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Cari"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Peruntuk Aksi"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Peruntukan kepada Pengguna"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Tulis Semula"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "fail PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "fail CSV"
+
+#: indexpage.py:748
+#, fuzzy
+msgid "MO file"
+msgstr "fail PO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Lakukan"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Belum diterjemah"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Tunjukkan Tanda"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Sorokkan Tanda"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Mengkaji Saranan"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Lihat Saranan"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Terjemahan Pantas"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Lihat Belum Diterjemah"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Terjemah Semua"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+#, fuzzy
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d perkataan (%d%%) gagal"
+
+#: indexpage.py:1003
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d perkataan (%d%%) diterjemah"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d perkataan (%d%%) diterjemah"
+
+#: pagelayout.py:28
+#, fuzzy
+msgid "All projects"
+msgstr "Projek %s"
+
+#: pagelayout.py:29
+#, fuzzy
+msgid "All languages"
+msgstr "Bahasa %s"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Akaun Saya"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+#, fuzzy
+msgid "Log out"
+msgstr "Log Keluar"
+
+#: pagelayout.py:35
+#, fuzzy
+msgid "Log in"
+msgstr "Log Masuk"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Daftar"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktifkan"
+
+#: pagelayout.py:83
+#, fuzzy
+msgid "Pootle Logo"
+msgstr "Logo Pootle"
+
+#: pagelayout.py:84
+#, fuzzy
+msgid "About this Pootle server"
+msgstr "Mengenai server Pootle "
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "semua matlamat"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "fail %d/%d"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nama"
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "Terjemah Semua"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Peratus diterjemah"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Perkataan diterjemah "
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Samar"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Peratus samar"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Perkataan samar"
+
+#: pagelayout.py:250
+#, fuzzy
+msgid "Untranslated percentage"
+msgstr "Peratus Belum Diterjemah"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Perkataan Belum Diterjemah"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Jumlah"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Jumlah perkataan"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graf"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Anda tidak mempunyai hak untuk mentadbir pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Lihat"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Cadang"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Terjemah"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Semak"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arkib"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompil fail PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "peruntuk"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Ahli \"nobody\" atau \"default\" tidak boleh di buang"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Anda tidak mempunyai hak untuk mengubah objektif di sini"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Anda tidak mempunyai hak memuatkan fail ke sini"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "Anda tidak mempunyai hak menulis semula fail di sini"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Anda tidak mempunyai hak memuatkan fail baru ke sini"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Anda tidak mempunyai hak mengemaskini fail di sini"
+
+#: projects.py:555
+#, fuzzy
+msgid "You do not have rights to commit files here"
+msgstr "Anda tidak berhak menyaran perubahan di sini"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Anda tidak mempunyai hak mengubah peruntukan di sini"
+
+#: projects.py:1219
+#, fuzzy
+msgid "You do not have rights to change translations here"
+msgstr "Anda tidak mempunyai hak mengubah terjemahan di sini"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Anda tidak mempunyai hak untuk mencadangkan perubahan di sini"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Anda tidak mempunyai hak untuk menyemak cadangan di sini"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d diterjemah\n"
+" (%d kosong, %d samar)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: menterjemah %s ke %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Asal"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+#, fuzzy
+msgid "Translation"
+msgstr "Terjemahan"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Komen penterjemah"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Komen pembangun"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Berkait"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Kelompok akhir"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klik di sini untuk ke indeks"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Mula"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+#, fuzzy
+msgid "Previous %d"
+msgstr "Sebelum %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Butiran %d ke %d daripada %d "
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Berikutnya %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+#, fuzzy
+msgid "End"
+msgstr "Tamat"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "menyemak %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Tiada pemadanan bagi butiran yang dicari ('%s') "
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Anda telah selesai menyemak butiran yang telah dipilih"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Satu"
+
+#: translatepage.py:644
+#, fuzzy
+msgid "Plural"
+msgstr "Jamak"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Edit"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Salin"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Langkau"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Balik"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Hantar"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+#, fuzzy
+msgid "Grow"
+msgstr "Besarkan"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Kecilkan"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+#, fuzzy
+msgid "Plural Form %d"
+msgstr "Bentuk Jamak %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+#, fuzzy
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Terjemah tidak boleh di buat kerana bentuk jamak bagi bahasa anda tiada. "
+"Sila hubungi pentadbir."
+
+#: translatepage.py:804
+#, fuzzy
+msgid "Current Translation:"
+msgstr "<b>Terjemahan Semasa:</b>"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Saranan %d oleh %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Saranan %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Saranan oleh %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Saranan:"
+
+#: users.py:43
+#, python-format
+#, fuzzy
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Anda mesti memberi kata laluan yang sekurang-kurang %d aksara."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Kata laluan tidak sama dengan yang disahkan."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Log masuk ke Pootle"
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "Nama pengguna"
+
+#: users.py:68
+#, fuzzy
+msgid "Password:"
+msgstr "Kata laluan"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "Bahasa"
+
+#: users.py:71
+msgid "Login"
+msgstr "Log Masuk"
+
+#: users.py:77
+#, fuzzy
+msgid "Default"
+msgstr "Lalai"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Sila masukkan butiran pendaftaran anda"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pendaftaran Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Nama pengguna yang dipohon"
+
+#: users.py:125 users.py:429
+#, fuzzy
+msgid "You must supply a valid email address"
+msgstr "Alamat emel yang sah"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Nama penuh anda"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Kata laluan yang diingini"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "muktamadkan kata laluan"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Taip semula kata laluan anda untuk memastikan ianya betul"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Daftar Akaun"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Sila isi butiran pengaktifan anda"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pengaktifan Akaun Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Kod Pengaktifan"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Kod pengaktifan yang anda terima"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktifkan Akaun"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Pilihan untuk: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Maklumat peribadi"
+
+#: users.py:186
+msgid "Email"
+msgstr "Emel"
+
+#: users.py:190
+#, fuzzy
+msgid "Translation Interface Configuration"
+msgstr "Konfigurasi Antaramuka Terjemahan"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Bahasa Antaramuka pengguna"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Projek Saya"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Bahasa Saya"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Halaman utama"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+#, fuzzy
+msgid "Input Height (in lines)"
+msgstr "Ketinggian input (dalam baris)"
+
+#: users.py:258
+#, fuzzy
+msgid "Number of rows in view mode"
+msgstr "bilangan baris dalam mod view"
+
+#: users.py:259
+#, fuzzy
+msgid "Number of rows in translate mode"
+msgstr "bilangan baris dalam mod translate"
+
+#: users.py:307
+msgid "Error"
+msgstr "ralat"
+
+#: users.py:359
+#, fuzzy
+msgid "You need to be siteadmin to change users"
+msgstr "untuk mengubah pengguna anda mestilah siteadmin"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "nama pengguna mestilah alpanumerik, dan mesti bermula dengan huruf"
+
+#: users.py:438
+#, fuzzy
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "anda (atau pengguna lain) cuba mendaftar dengan mengguna username anda"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "sebarang masalah berkaitan pendaftaran, sila hubungi %s.\n"
+
+#: users.py:443
+#, fuzzy
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "sebaran masalah berkaitan pendaftaran, sila hubungi site administrator.\n"
+
+#: users.py:444
+#, fuzzy
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "username sudah wujud. Emel akan dihantar ke alamat email yang didaftarkan.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Akaun Pootle telah dicipta menggunakan emel ini.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+#, fuzzy
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "Kod Pengaktifan"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+#, fuzzy
+msgid "Your password is: %s\n"
+msgstr "Kata laluan yang diingini"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+#, fuzzy
+msgid "Activation Failed"
+msgstr "Kod Pengaktifan"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Terima"
+
+#, fuzzy
+#~ msgid "Reject"
+#~ msgstr "Buang projek"
+
+#, fuzzy
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Projek Terjemahan WordForge"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Alamat emel yang sah"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> adalah sebuah web portal mudah yang membolehkan "
+#~ "anda untuk <strong>menterjemah</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "direktori induk"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projek</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d fail, %d/%d perkataan (%d%%) diterjemah"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "ini adalah demo pemasangan pootle"
+
+#~ msgid "current folder"
+#~ msgstr "direktori semasa"
+
+#~ msgid "Log In"
+#~ msgstr "Log Masuk"
+
+#~ msgid "login status"
+#~ msgstr "status log masuk"
+
+#~ msgid "project root"
+#~ msgstr "asas projek"
+
+#~ msgid "%d files, "
+#~ msgstr "fail %d,"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Bahasa</h3>"
+
+#~ msgid "current file"
+#~ msgstr "fail semasa"
+
+#~ msgid "not logged in"
+#~ msgstr "tidak log masuk"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Halaman Pentadbir Pootle"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Anda tidak mempunyai kebenaran untuk mengurus Pootle."
diff --git a/Pootle-1.2.1/Pootle/po/pootle/mt/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/mt/jToolkit.po
new file mode 100644
index 0000000..c3e305a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/mt/jToolkit.po
@@ -0,0 +1,142 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-08-07 14:59+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : n==0 || ( n%100>1 && n%"
+"100<11) ? 1 : (n%100>10 && n%100<20 ) ? 2 : 3);\n"
+"X-Generator: Pootle 0.9\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Login għal %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Ikkanċella din l-azzjoni u ibda sessjoni ġdida"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Minflok tikkonferma din l-azzjoni, illoggja 'l barra u ibda mil-bidu"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Oħroġ mil-programm"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Oħroġ mil-programm u erġa' lura għall-programm ta' fuqu"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", jekk jogħġbok ikkonferma l-login"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Login"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Isem ta' l-utent:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Password:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Lingwa:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Agħżel programm"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Illoggja 'l barra"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Oħroġ"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "illoggjat bħala <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "ma stajtx inżid sessjoni ġdida"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "illoggjat 'il barra"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "imqabbad"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "oħroġ mis-sessjoni ta' fuq"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "trid tiddefinixxi l-utenti jew l-element userprefs fuq is-server"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "utent ma jeżistix (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "isem l-utent u/jew password ħażina"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "falliet il-konferma tal-login"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Le"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Iva"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "neħħi"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ebda fajl mehmuż)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "fajl mehmuż kbir wisq"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "neħħi dal-fajl mehmuż"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "irrestawra"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "dan il-fajl mehmuż tneħħa. klikkja hawn biex tirrestawrah"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ehmeż fajl"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/mt/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/mt/pootle.po
new file mode 100644
index 0000000..15ba62f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/mt/pootle.po
@@ -0,0 +1,1424 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : n==0 || ( n%100>1 && n%100<11) "
+"? 1 : (n%100>10 && n%100<20 ) ? 2 : 3);\n"
+"X-Generator: Pootle 0.10rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Dimostrazzjoni ta' Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Paġna ewlenija"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Utenti"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Lingwi"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Proġetti"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Għażliet ġenerali"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Għażliet"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Valur attwali"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Issejvja l-bidliet"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titlu"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Deskrizzjoni"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL bażi"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Paġna tal-bidu"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Paġna amministrattiva ewlenija"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Kodiċi ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Isem sħiħ"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(żid lingwa hawn)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Karattri speċjali"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(karattri speċjali)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Numru ta' plurali"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(numru ta' plurali)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Formola tal-plurali"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(formola tal-plurali)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Neħħi lingwa"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Neħħi %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Kodiċi tal-proġett"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(żid proġett hawn)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Deskrizzjoni tal-proġett"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(deskrizzjoni tal-proġett)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Stil tal-iċċekkjar"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Oħloq fajls MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Neħħi proġett"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Isem l-utent"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(daħħal ismek sħiħ hawn)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Indirizz tal-imejl"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(daħħal l-imejl hawn)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Password"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(daħħal il-password hawn)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Attivat"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Attiva utent Ä¡did"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Neħħi utent"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Lura għall-paġna ewlenija"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Lingwi eżistenti"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "AÄ¡Ä¡orna lingwi"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Amministratur Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "M'għandekx jedd tamministra dan il-proġett."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "AÄ¡Ä¡orna minn mudelli"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Żid lingwa"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Amministratur Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Paġna ewlenija tal-proġett"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Ma nistax nissettja d-drittijiet għall-utent %s - utent ma jeżistix"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Dan huwa proġett stil GNU (direttorju wieħed u fajls imsemmija skond il-"
+"lingwa)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Dan huwa proġett stil standard (direttorju għal kull lingwa)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Permessi ta' l-utent"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(agħżel biex iżżid utent)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Drittijiet"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Neħħi"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "AÄ¡Ä¡orna drittijiet"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Dwar Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> huwa portal tal-web sempliċi li jħallik "
+"<strong>tittraduċi</strong>! Peress li Pootle huwa <strong>softwer "
+"ħieles</strong>, tista' tniżżel kopja u tħaddem il-kopja tiegħek jekk trid. "
+"Tista' wkoll tipparteċipa fl-iżviluppar f'diversi modi (mhux bilfors tkun "
+"kapaċi tipprogramma)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Il-proġett Pootle innifsu huwa miżmum fuq <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>, fejn "
+"tista' ssib iżjed dettalji dwar is-sors, listi postali eċċ."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"L-isem bl-Ingliż huwa mqassar minn <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, imma tista' wkoll "
+"taqra <a href=\"http://www.thechestnut.com/flumps.htm\">dan</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Verżjonijiet"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Dan is-sit qed juża :<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (fuq %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Paġna personali għal: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Ibdel l-għażliet"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Paġna amministrattiva"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Amministra"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Links ta' malajr"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Jekk jogħġbok agħżel \"Ibdel l-għażliet\" u agħżel xi lingwi u proġetti"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "Proġett %d, medja ta' %d%% tradotti"
+msgstr[1] "%d proġetti, medja ta' %d%% tradotti"
+msgstr[2] "%d-il proġett, medja ta' %d%% tradotti"
+msgstr[3] "%d proġett, medja ta' %d%% tradotti"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Amministrazzjoni"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Kodiċi tal-lingwa"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Isem il-lingwa"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "Lingwa %d, medja ta' %d%% tradotti"
+msgstr[1] "%d lingwi, medja ta' %d%% tradotti"
+msgstr[2] "%d-il lingwa, medja ta' %d%% tradotti"
+msgstr[3] "%d lingwa, medja ta' %d%% tradotti"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Lingwa"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Proġett: %s, Lingwa: %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Fittex"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Ma jistax jittella' fajl - ebda fajl mehmuż"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Jistgħu jittellgħu biss fajls PO jew zips ta' fajls PO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Assenja elementi"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Assenja azzjoni"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Assenja lil utent"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "miri"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Daħħal isem il-mira"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Żid mira"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Tella' fajl"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Agħżel fajl biex ittella'"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Mhux f'mira"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Żid utent"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Fajl PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Fajl XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Fajl .ts tal-Qt"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Fajl CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Fajl MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "AÄ¡Ä¡orna"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Ikkommetti"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "L-istrings kollha"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Mhux tradotti"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Mhux assenjati"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Mhux assenjati u mhux tradotti"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Issettja l-mira"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Assenja lil"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Uri funzjonijiet ta' editjar"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Uri l-istatistika"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Uri l-passi"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Aħbi l-passi"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Uri l-iċċekkjar"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Aħbi l-iċċekkjar"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Uri l-miri"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Aħbi l-miri"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Uri l-assenjazzjonijiet"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Aħbi l-assenjazzjonijiet"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Miri kollha: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Ittraduċi l-istrings tiegħi"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Uri l-istrings tiegħi"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "M'hemmx strings assenjati lilek"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Traduzzjoni malajr ta' l-istrings tiegħek"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "M'hemmx strings mhux tradotti assenjati lilek"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Irrevedi suġġerimenti"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Ara suġġerimenti"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Traduzzjoni malajr"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Uri mhux tradotti"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "M'hemmx elementi mhux tradotti"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Ittraduċi kollox"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP tal-mira"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP tal-fowlder"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "IÄ¡Ä¡enera SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "String %d (%d%%) falliet"
+msgstr[1] "%d strings (%d%%) fallew"
+msgstr[2] "%d-il string (%d%%) fallew"
+msgstr[3] "%d string (%d%%) fallew"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d kliem (%d%%) assenjati"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d versi]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d kliem (%d%%) tradotti"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Proġetti kollha"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Lingwi kollha"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Kont tiegħi"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumenti u għajnuna"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Illoggja 'l barra"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Illoggja"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Irreġistra"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Attiva"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo ta' Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Dwar dan is-server Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Miri kollha"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d fajls"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "Fajl %d"
+msgstr[1] "%d fajls"
+msgstr[2] "%d-il fajl"
+msgstr[3] "%d fajl"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d strings"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Isem"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Tradotti"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Perċentaġġ tradott"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Kliem tradotti"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Approssimazzjoni"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Perċentaġġ approssimattiv"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Kliem approssimattivi"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Perċentaġġ mhux tradott"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Kliem mhux tradott"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Total ta' kliem"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graff"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Login falliet"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Qed nittrasferixxi għal-login..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Trid tagħmel login biex taċċessa l-paġna ewlenija"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Trid tagħmel login biex taċċessa l-paġna amministrattiva"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Qed nittrasferixxi għall-paġna ewlenija..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "M'għandekx jedd tamministra lil pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Ara"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Issuġġerixxi"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Ittraduċi"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Irrevedi"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arkivja"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Ikkompila fajls PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Assenja"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Ma tistax tneħħi l-utenti \"nobody\" jew \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "M'għandekx jedd tibdel il-miri hawn"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "M'għandekx jedd ittella' fajls hawn"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "M'għandekx jedd taġġorna fajls hawn"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "M'għandekx jedd ittella' fajls ġodda hawn"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "M'għandekx jedd taġġorna fajls hawn"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "M'għandekx jedd ittella' fajls hawn"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "M'għandekx jedd tibdel l-assenjazzjonijiet hawn"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "M'għandekx jedd tibdel traduzzjonijiet hawn"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "M'għandekx jedd tissuġġerixxi tibdiliet hawn"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "M'għandekx jedd tirrevedi suġġerimenti hawn"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d tradotti\n"
+"(%d vojta, %d approssimattivi)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: qed nittraduċi %s għall-%s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Oriġinali"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Traduzzjoni"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Relatat"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Tmiem il-grupp"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klikkja hawn biex terġa' lura fl-indiċi"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Bidu"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d ta' qabel"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Elementi %d sa' %d minn %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d li jmiss"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Tmiem"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "qed niċċekkja %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "M'hemmx elementi li jaqblu ma' dik it-tfittxija (\"%s\")"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Int għaddejt mill-elementi li għażilt kollha"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singular"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plural"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Ibdel"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Ikkopja"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Aqbeż"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Lura"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Ibgħat"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Kabbar"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "ÄŠekken"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma %d ta' plural"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"It-traduzzjoni mhux possibbli għax l-informazzjoni dwar il-plurali għal-"
+"lingwa tiegħek ma ddaħħlitx. Ikkuntattja lill-amministratur tas-sit."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Traduzzjoni attwali:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Suġġeriment %d ta' %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Suġġeriment %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Suġġeriment ta' %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Suġġeriment:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Trid tipprovdi password valida ta' mill-inqas %d karattri."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Illoggja fuq pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Isem l-utent:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Password:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Lingwa:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Illoggja"
+
+#: users.py:77
+msgid "Default"
+msgstr "Impliċitu"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Jekk jogħġbok daħħal id-dettalji tar-reġistrazzjoni"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Reġistrazzjoni fuq Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "L-isem ta' utent li tixtieq"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Isem sħiħ"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Il-password li tixtieq"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Irreġistra kont"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Jekk jogħġbok daħħal id-dettalji ta' attivazzjoni"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Attivazzjoni tal-kont ta' Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Kodiċi ta' attivazzjoni"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Il-kodiċi ta' attivazzjoni li rċevejt"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Attiva kont"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Għażliet għal: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Dettalji personali"
+
+#: users.py:186
+msgid "Email"
+msgstr "Imejl"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Konfigurazzjoni tal-interfaċċja tat-traduzzjoni"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Lingwa tal-interfaċċja"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Proġetti tiegħi"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Lingwi tiegħi"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Paġna ewlenija"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Għoli ta' l-input (linji)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Numru ta' linji fil-modalità tal-wiri"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Numru ta' linji fil-modalità tat-traduzzjoni"
+
+#: users.py:307
+msgid "Error"
+msgstr "Zball"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Trid tkun amministratur tas-sit biex tibdel utenti"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Int (jew xi ħadd ieħor) ipprovajt tirreġistra kont b'dan l-isem ta' utent.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Aħna ma nżommux il-password tiegħek imma biss somma (hash) tagħha.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Jekk tiltaqa' ma' problema fir-reġistrazzjoni, jekk jogħġbok ikkuntattja lil "
+"%s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Jekk tiltaqa' ma' problema fir-reġistrazzjoni, jekk jogħġbok ikkuntattja "
+"lill-amministratur tas-sit.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Dan l-isem ta' utent diġà jeżisti. Se jintbagħat messaġġ lill-indirizz ta' "
+"l-imejl reġistrat.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Sejjer fuq il-<a href='%s'>login</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Inħoloqlok kont tal-Pootle b'dan l-indirizz ta' l-imejl.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Biex tattiva l-kont tiegħek, sewgi dan il-link:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Il-kodiċi ta' attivazzjoni tiegħek huwa:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Jekk ma tistax issegwi l-link, jekk jogħġbok daħħal il-kodiċi mogħti fuq "
+"fil-paġna ta' attivazzjoni.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Dan il-messaġġ intbagħat biex jivverifika li l-indirizz ta' l-imejl huwa "
+"korrett. Jekk ma xtaqtx tirreġistra kont, tista' tinjora dan il-messaġġ.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Kont maħluq. Int tirċievi d-dettalji tal-login u kodiċi ta' attivazzjoni "
+"permezz ta' imejl. Jekk jogħġbok daħħal il-kodiċi ta' attivazzjoni fil-<a "
+"href='%s'>paġna ta' attivazzjoni</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(inkella sempliċiment klikkja fuq il-link ta' attivazzjoni fl-imejl)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "L-isem ta' utent huwa: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Il-password hija: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "L-indirizz ta' l-imejl reġistrat huwa: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Qed nittrasferixxi għall-paġna ta' reġistrazzjoni..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Qed nittrasferixxi għall-paġna tal-login..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"Il-kont tiegħek ġie attivat. Qed nittrasferixxi għall-paġna ta' "
+"reġistrazzjoni..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "L-informazzjoni ta' attivazzjoni li daħħalt mhux valida."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Attivazzjoni falliet"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "L-għoli ta' l-input irid ikun numru"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Il-wisgħa ta' l-input irid ikun numru"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "In-numru ta' ringieli fil-modalità tal-wiri irid ikun numeriku"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "In-numru ta' ringieli fil-modalità tat-traduzzjoni irid ikun numeriku"
+
+#~ msgid "Accept"
+#~ msgstr "AÄ‹Ä‹etta"
+
+#~ msgid "Reject"
+#~ msgstr "Armi"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Proġett ta' traduzzjoni WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Wessa'"
+
+#~ msgid "Narrow"
+#~ msgstr "Dejjaq"
+
+#~ msgid "Reset"
+#~ msgstr "Irrisettja"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Irid ikun indirizz tal-imejl validu"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Wisgħa ta' l-input (karattri)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/nap/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/nap/jToolkit.po
new file mode 100644
index 0000000..f84f7a3
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/nap/jToolkit.po
@@ -0,0 +1,146 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# Sabine Cretella <s.cretella@voxhumanitatis.org>, Carmine Colacino <carmine@duesicilie.org>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-04-25 17:08+0000\n"
+"Last-Translator: Sabine Cretella <sabine_cretella@yahoo.it>\n"
+"Language-Team: Napulitano <napulitano@nap.i-iter.mobi>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Trase pe %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Canciella chesta azzione e accummencia na nova sessione"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Mmece 'e cunfermà chesta azzione, jesce e accummencia n’ata vota"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Jesce d''o prugramma"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Jesce d''o prugramma e tuorna ô prugramma 'e primma"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr " , pe ppiacere cunferma 'e date pe ttrasí"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Trase"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Nomme ’e ll’utente:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Parola chiave:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Lengua:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Selezziona ô prugramma ca vuò"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Jèsce d''o prugramma"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Jèsce"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "sî reggistrato comme a<b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "nun fuje possibbele 'e jognere n'ata sessione"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "asciuto"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "cunnettato"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "jesce 'a ll'ata sessione"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"s'hann’’a definí 'e vvoce 'e ll'utente o d''e preferenze ‚e ll’utente 'int'â "
+"configurazzione d''o server"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "chest’ utente nun asiste (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nomme utente e/o parola chiave nun curretto"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "’a cunfirmazzione d''o login nun è gghiuta bbuono"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "No"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Sí"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "leva"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(nun ce sta nisciun allegato)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "'o allegato è troppo gruosso"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "canciella a ll'allegato"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "repristina"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "chestu allegato è stato levato. clicca ccà p''o mettere a ppuosto n'ata vota"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "allega nu documiento"
+
diff --git a/Pootle-1.2.1/Pootle/po/pootle/nap/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/nap/pootle.po
new file mode 100644
index 0000000..5954e25
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/nap/pootle.po
@@ -0,0 +1,1412 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# Sabine Cretella <s.cretella@voxhumanitatis.org>, Carmine Colacino, <carmine@duesicilie.org>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-11 18:05+0000\n"
+"Last-Translator: Sabine Cretella <sabine_cretella@yahoo.it>\n"
+"Language-Team: Napulitano <napulitano@nap.i-iter.mobi>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demostrazzione 'e Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Paggena prencepale"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Utente"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Lengue"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Prugette"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opzione generale"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opzione"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Valòre 'e mmo"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Sarva ê cagne"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Título"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Descrizzione"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL 'e base"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Paggena prencepale"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Paggena 'e ammenestrazzione p''e lengue 'e Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Pagggena prencepale 'e ll'ammenestrazzione"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Codece ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nomme cumpleto"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(nzerí â llengua ccà)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Carattere speciale"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(carattere speciale)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Númmero 'e plurale"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(númmere 'e plurale)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Equazzione plurale"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(equazzione plurale)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Canciella â lengua"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Canciella a%s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Paggena 'e ammenestrazzione 'e Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Codede d’’o pruggetto"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(nzerisce ô pruggetto ccà)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Descrizzione d''o pruggetto"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(descrizzione d''o pruggetto)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Stile pe cuntrullà"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tipo 'e documiento"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Cria ô documiento MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Canciella ô pruggetto"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Paggena 'e ammmenestrazzione 'e ll'utente Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Nomme 'e ll'utente"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(nzerisce ôo nomme cumpleto ccà)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Nnerizzo 'e posta elettronica"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(nzerisce ô nnerizzo 'e posta elettronica ccà)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Parola cchiave"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(nzerisce âa pparola cchiave ccà)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Attivato"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Attivazzione Nuovo Utente"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Canciella a ll’Utente"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Tuorna â paggena prencepale"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Lengue c'asistono"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Attualizzazione d''e llengue"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Ammenestratòre Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Nun tiene ê diritte pe ammenestrà chistu pruggetto."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Attualizzazione cu ati documente"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Nzerisce na lengua"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Ammenestrazzione Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Paggena prencepale d''o pruggetto"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Nun se ponno mpustà ê diritte pe ll'utente %s - nun ce sta n’utente ca tene "
+"stu nomme"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Chisto è nu pruggetto íe tipo GNU (na sezzione p''e documiente ca pe cchesto "
+"teneno 'o nomme d''a lengua)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Chistu è nu pruggetto standard (na sezzione pe ogne lengua)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Autorizzazzione pe ll'utente"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(s'ha dda selezzionà pe nzerì a ll'utente)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Autorizzazzione"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Lèva"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Attualizzazzione 'e ll'autorizzazzione"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Nfromma ncopp'a Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> è nu purtale nternet semprece e cu isso può fà 'e "
+"<strong>traduzzione</strong>! Pootle è nu <strong>Pugramma libbero</strong>, "
+"e 'o po' quinni scaricà e 'o ausa pe nu purtale 'e traduzzione tuoje, se te "
+"ppiace. Puoi pure aiutà e partecepa a 'o sviluppà in tante mode (nun tieni "
+"pe forza essere na perzona ca sape prugrammà)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"'O prugietto Pootle vene tenuto ncopp'a <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> addò "
+"se ponno trovà nfrumma dettagliate ncopp'o codice d''o prugramma, e liste 'e "
+"discussione etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"'O nomme tene cchesto segneficato: <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine (motore p''a "
+"traduzzione e localizzazione ncopp'a nternet ca è basato ncopp'o fomato "
+".po), putisse pure essere ca tenesse 'a leggere <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">cchesto</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Verzione"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Ncopp'a chesto sitio vene ausato:<br />Pootle %s<br />Translate Toolkit "
+"%s<br />jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on "
+"%s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Paggena 'e utente pe: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Cagna 'e opzione"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Paggena pe ll'ammenestratore"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Ammenestra"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Jonte dirette"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Pe' piacere clicca ncopp'a \"Cagna opzione\" pe selezziona quacche lengua e "
+"prugietto"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d prugietto, media %d%% tradutto"
+msgstr[1] "%d prugiette, media %d%% tradutte"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Ammenestrazzione"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Codece 'e lengua"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nomme d''a lengua"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d lengua, media %d%% tradutto"
+msgstr[1] "%d lengue, media %d%% tradutte"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Lengua"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Prugietto %s, Lengua %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Truova"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Truova cu cciù dettaglie"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "'O documiento non po' essere careccato, nun ce sta nisciun documiento"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Se ponno careccà solamiente documiente 'int'ô frummato .po"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Assegna frase"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Assegna azzione"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Assegna a ll’utente"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "mete"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Scrive nu nomme 'e na meta"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Cria na meta nnova"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Careca documiento"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Selezziona nu documiento pe careccà"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Scrive ncoppa"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Sovrascrive 'o documiento ca mo sta llà, se nce sta nu documiento"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Miette nzieme"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Miette 'o documiento nzieme cu 'o documiento 'e mmo e si nce stanno "
+"cunflitte ffa 'e deventà pruposte"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Nun è cuntenuto 'int'â na meta"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Agghionje n'utente nuovo"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Documiento .po"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Documiento XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Documiento Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Documiento CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Documiento MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Attualizza"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Cunzegna"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Tutte 'e segmente"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Nun tradotto"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Nun assegnato"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Nun assegnato e nun tradutto"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Mpusta na meta"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Selezzione cchiù ccose"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Trasmiette â"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Mustra funzione 'e modefeca"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Mustra 'e statisteche"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Mustra percurse"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Nascunne percurse"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Mustra 'e ccose ca s'hanno â cuntrollà"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Nascunne 'e ccose ca s'hanno â cuntrollà"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Mustra 'e mete"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Nascunne 'e mete"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Mustra ccose assegnate"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Nascunne ccose assegnate"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Tutte 'e mete: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Traduce 'e segmiente d''e mie"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Mustra 'e segmiente d''e mie"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nun ce stanno segmiente assegnate a tte"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Traduce velocemmente 'e segmente d''e mie"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nun ce stanno segmiente assegnate a tte ca nun so tradutte"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Reveziona suggerimiente"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Mustra suggerimiente"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Traduce velocemente"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Mustra 'e ccose nun tradutte"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Nun ce stanno ccose nun tradutte"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Traduce tutto"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP d''a meta"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP d''a cartella"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Cria SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d frase (%d%%) nun riuscito"
+msgstr[1] "%d frase (%d%%) nun riuscite"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d parole (%d%%) assegnate"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d frase]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d parole (%d%%) so’ tradotte"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Tutte 'e pruggette"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Tutte 'e llengue"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Acciesso d''o mio"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Documiente & aiuto"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Jèsce"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Tràse"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Crià a nu acciesso"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Attivazzione"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo 'e Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Nfromma ncopp' ô server Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Tutte 'e quatene"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d %d documiente"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d documiento"
+msgstr[1] "%d documiente"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d frase"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nomme"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Tradotte"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Percentuale 'e cose tradotte"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Parole tradotte"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Traduzzione simmele"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Percentuale 'e simmeletudene"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Parole simmele"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Percentuale 'e cose nun tradotte"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Parole nun tradotte"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Tutto nzieme"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Tutte 'e pparole"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafeco"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Testo 'int'â lengua origgenale"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Testo 'int'â lengua 'e arrivo"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Cummiente"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Luoche"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "'O acciesso nun è juto bbuono"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "'A paggena mo te porta ncopp'â paggena pe trasere..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Tiene a trasere pe accedere â paggena prencepale"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "'E ddate personale so' state aggiornate"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Tiene 'a trasere pe accedere â paggena 'e ammenestrazzione"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Mo viene spustato ncopp'â paggena prencepale ..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Nun tiene ê diritte pe' ammenestrà pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Vide"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Suggerisce"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Traduce"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Revesiona"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Sarva"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Cria ô documiento PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Assegna"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Nun se pô cancellà a ll’utente \"nobody\" o \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Nun tiene ê diritte pe cagnà ê quatene ccà"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Nun tiene ê diritte pe ccarrecà ê documiente ccà"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Nun tiene ê diritte pe cagnà ê documiente ccà"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Nun tiene ê diritte pe ccarrecà nuove documiente ccà"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Nun tiene ê diritte pe aggiurnà ê documiente ccà"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Nun tiene ê diritte pe ccunzegnà ê documiente ccà"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Nun tiene ê diritte pe cagnà a ll’attribuzzione ccà"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Nun tiene ê diritte pe ccagnà ê traduzzione ccà"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Nun tiene 'e diritte pe suggerì modefeche cca"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Nun tiene ê diritte pe revesionà ê suggerimiente ccà"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d tradotte\n"
+"(%d nun tradotte, %d simmele)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: traducenno %s 'int'ô %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Riggenale"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Traduzzione"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Accietta 'a propuosta"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Nun accietta 'a propuosta"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Annotazzione d''o traduttòre"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Annotazzione d''o programmatòre"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Tene relazzione cu"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Esecuzzione..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Errure: quacche ccosa nun jeva."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fine d''e ccose ca s'hann’ 'a fà"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Clicca ccà pe turnà a ll’innece"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Punto 'e partenza"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d messaggio ncopp'"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Segmente ‚a %d a %d 'e %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d messagge ca veneno"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fine"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "revesione %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+"Nun ce stanno frase ca correspunnono â spressione ca se vuleva truvà ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Hai fernuto 'e lavorà ncopp'ê ccose ca so’ state scegljute"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singulare"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plurale"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Modefeca"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Copia"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Zompa"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Areto"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Cunferma"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Fà cchiú gruosso"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Fà cchiú piccirillo"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma plurale %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Nun se pô ffà 'a traduzzione pecché 'a nfromma p’ 'a llengua d''a toja nun è "
+"disponibbele. Cuntatta ô mmenestratore d''o sito."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Traduzzione 'e mmo:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Suggerimento: %d 'e %s"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Suggerimento %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Suggerimento 'e %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Suggerimento:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "He 'a nzerì na parola chiave valeda e ca tene %d carattere o 'e cchiú."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "'A parola chiave e chella d''a cunfermazzione nun so’ 'e stesse"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Tràse 'int'a Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Nomme utente:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Parola cchiave:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Lengua:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Tràse"
+
+#: users.py:77
+msgid "Default"
+msgstr "Lengua 'e base"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Pe piacere nzerisce ê dettaglie d''e toje p''a registrazzione"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Reggistrazzione Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "'O nomme utente ca vuò"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "He 'a nzerì nu nnerizzo 'e posta elettronica valeta"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Nomme cumpleto d''o tuojo"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Parola chiave ca vuò ausà"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Cunferma â parola chiave"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Scrive n'ata vota â parola chiave toja pe cunfermà ca è curretta"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Allegistra ô cunto d''o tuojo"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Nzerisce ê dettaglie toje pe l'attevazzione"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Attevazzione d''o cunto pe Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Codece 'e attevazzione"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "'O codece 'e attavazzione ca haje pigliato"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Attevazzione d''o cunto"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opzione pe: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Dettaglie perzonale"
+
+#: users.py:186
+msgid "Email"
+msgstr "Nnerizzo 'e posta elettronica"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Cunfegurazzione d''a nterfaccia 'e cunfegurazzione"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Lengua d''a nterfacca 'e ll’utente"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Pruggette d’’e mmie"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Lengue d’’e mmie"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Paggena prencepale"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Ata lengua 'e origgene"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Nisciuno"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Quanto ha dda essere àveto 'o campo pe scrivere (nummero 'e righe)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Nummero 'e righe 'int'â modaletà 'e visualizzazzione"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Nummero 'e righe 'int'â modaletà 'e traduzzione"
+
+#: users.py:307
+msgid "Error"
+msgstr "Errore"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "He 'a essere ammenestratore d''o sito pe cagnà a ll’utente"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"'O nomme utente ha dda essere alfanummereco e ha dda accummencià cu na "
+"lettera"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Tu (o quacchedduno ato) vuleva criá nu cunto cu 'o nomme utente d''o tuojo.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Nun cunservammo â vera parola chiave d''a tuoja, ma na verzione codefecata.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Si tiene nu prubblema cu ll’alleggistrazzione, pe piacere scrive â %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Si tiene nu prubblema cu ll'alleggistrazzione, pe piacere cuntatta "
+"all'ammenestrattore d''o sito.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Chesto nomme utente nce sta ggià. Nu messaggio 'e posta elettronica vene "
+"mannata ô nnerizzo e-mail alleggistrato.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "E mmo se <a href='%s'>trase</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Cu chestu nnerizzo 'e posta elettronica è stato criato n' acciesso pe tte.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Pe attivà ll'acciesso d''o tujo clicca ncopp'a cchesta jonta:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"'O Codece pe ll'attevazzione è: \n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Si nun può ausà chesta jonta, nzerisce ô codece 'int'â paggena pe "
+"ll'attevazzione.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Chistu messaggio vene mmiato pe cuntrollà ca 'o nnerizzo 'e posta "
+"elettronica è curretto. Si non vuò crià nu acciesso nun cunziderà a chistu "
+"messaggio.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Ll'acciesso è stato criato. Mo vene nviata nu messaggio 'e posta elettronica "
+"cu nu codece 'e attivazzione. Chistu codece ll’hê 'a nzerì ncopp'â <a "
+"href='%s'>paggena pe ll'attivazzione</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+"(O fa nu clic ncopp'â jonta pe ll'attivazzione ca nce sta 'int'ô messaggio)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "'O nomme utente d''o tuojo è: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "'A parola chiave d''a tuja è: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "'O nnerizzo 'e posta elettronica tuja è: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Mo viene spustato ncopp'â paggena p''a reggistrazzione ..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Mo viene spustato ncopp'â paggena pe trasere ..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"Ll'acciesso d''o tuojo è stato criato! Mmo vene spustato ncopp'â paggena pe "
+"trasere ..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "'A nfromma pe ll'attivazione nun è bbona."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Nun è stato possibbele 'e fà ll'attivazzione"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "'A nnicazzione pe quanto è aveta 'a nzerzione ha dda essere nummereca"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "'A nnecazzione pe quanto è larga 'a nzerzione ha dda essere nummereca"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+"'O nummero d''e righe ca veneno fatte visibbele 'int'â modaletà 'e "
+"visualizzazzione ha dda essere nummereco."
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+"'O nummero d''e righe ca veneno fatte visibbele 'int'â modaletà 'e "
+"visualizzazione ha dda essere nummereco."
+
+#~ msgid "Accept"
+#~ msgstr "Cunferma"
+
+#~ msgid "Reject"
+#~ msgstr "Refuta"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Pruggetto 'e traduzzione WordForge"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/nb/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/nb/jToolkit.po
new file mode 100644
index 0000000..3c65162
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/nb/jToolkit.po
@@ -0,0 +1,144 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-09-11 01:00+0200\n"
+"Last-Translator: Geir Pedersen <geir.pedersen@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.0.2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Login for %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Avbryt denne handlingen og start en ny session."
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "I stedet for å bekrefte denne handling, logg ut og start pånytt"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Avbryt programmet"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Avbryt dette programmet og gå tilbake til hovedprogrammet"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", vennligst bekreft pålogging"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "PÃ¥logging"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Brukernavn:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Passord:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Språk:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Velg program"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Avslutt"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Avslutt"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "Logget inn som <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "kunne ikke legge til ny session"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "logget ut"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "tilkoblet"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "avbrutt hovedsesjon"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "må definere bruker eller brukerpreferanse i tjenerens konfigurasjon"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "bruker eksisterer ikke (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ugyldig brukernavn og/eller passord"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "misslykket login bekreftelse"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nei"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ja"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "fjern"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(intet vedlegg)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "vedlegget er for stort"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "fjern dette vedlegget"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "gjenopprett"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "dette vedlegget er fjernet. klikk her for å gjenopprette det"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "legg ved en fil"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "behov for å definere brukers adgang på serverens config"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/nb/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/nb/pootle.po
new file mode 100644
index 0000000..d739a9c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/nb/pootle.po
@@ -0,0 +1,1392 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-31 09:08+0000\n"
+"Last-Translator: Einar Helland Berger <einar@hellandberger.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootledemo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Hjem"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Brukere"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Språk"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Prosjekter"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Generelle alternativer"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Alternativ"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Gjeldende verdi"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Lagre endringer"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Tittel"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Beskrivelse"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Base-URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Hjemmeside"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle språkadministrasjonsside"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Hovedside for administrasjon"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO-kode"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Fullt navn"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(legg til språk her)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Spesielle tegn"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(spesielle tegn)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Antall flertallsformer"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(antall flertallsformer)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Flertallsformel"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(flertallsformel)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Fjern språk"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Fjern %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle prosjektadministrasjon"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Prosjektkode"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(legg til prosjekt her)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Prosjektbeskrivelse"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(prosjektbeskrivelse)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Checker-stil"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Filtype"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Lag MO-filer"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Fjern prosjekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle brukeradministrasjonsside"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Brukernavn"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(legg til fullt navn her)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Epostadresse"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(legg til epostadresse her)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Passord"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(legg til passord her)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktivert"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktiver ny bruker"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Fjern bruker"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Tilbake til hovedsiden"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Eksisterende språk"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Oppdater språk"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle-administrator: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Du har ikke rettigheter til å administrere dette prosjektet."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Oppdater fra maler"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Legg til språk"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle-administrator: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Prosjekt-hjemmeside"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Kan ikke sette rettigheter for brukernavn %s - brukeren eksisterer ikke"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Dette er et GNU-type prosjekt (en katalog, filer navngitt per språk)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Dette er et standard-type prosjekt (en katalog per språk)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Brukertilganger"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(velg for å legge til bruker)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Rettigheter"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Fjern"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Oppdater rettigheter"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Om Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> er en enkel webportal som lar deg "
+"<strong>oversette</strong>! Siden Pootle er <strong>Fri "
+"programvare</strong>, kan du laste det ned og kjøre din egen kopi om du vil. "
+" Du kan også hjelpe til med utviklingen på mange måter (du må ikke kunne å "
+"programmere)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle-prosjektet drives på <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> hvor "
+"du kan finne detaljene om kildekode, e-postlister osv."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Navnet står for «<b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine», men du må kanskje lese <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">dette</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versjoner"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Dette nettstedet kjører:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (på %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Brukerside for: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Endre valg"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Administrasjonsside"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrer"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Hurtiglinker"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Klikk «Endre valg» og velg noen språk og prosjekter"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d prosjekt, i gjennomsnitt %d%% oversatt"
+msgstr[1] "%d prosjekter, i gjennomsnitt %d%% oversatt"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Språkkode"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Språknavn"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d språk, i gjennomsnitt %d%% oversatt"
+msgstr[1] "%d språk, i gjennomsnitt %d%% oversatt"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Språk"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Prosjekt %s, språk %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Søk"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Avansert søk"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Kan ikke laste opp fil, ingen fil lagt ved"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Kan bare laste opp PO-filer og zip-filer med PO-filer"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Tilordne strenger"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Tildel Handling"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Tildel til bruker"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "mål"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Skriv inn navn på mål"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Legg til mål"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Last opp fil"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Velg fil å laste opp"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Overskriv"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Overskriv gjeldende fil om den eksisterer"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Flett"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Flett filen med gjeldende fil og gjør om konflikter til forslag"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ikke i et mål"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Legg til bruker"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO-fil"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF-fil"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "QT .ts-fil"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV-fil"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO-fil"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Oppdater"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Bekreft"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Alle strenger"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Uoversatt"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ikke tildelt"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ikke tildelt og ikke oversatt"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Sett mål"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Velg flere"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Tildel til"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Vis redigeringsfunksjoner"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Vis statistikk"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Vis spor"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Skjul spor"
+
+# "Checks" er kvalitetstester utført av Pootle på oversettelser for å teste for vanlige feil.
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Vis feilsjekking"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Skjul feilsjekking"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Vis mål"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Skjul mål"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Vis tildelinger"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Skjul tildelinger"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Alle mål: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Oversett mine strenger"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Vis mine strenger"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Ingen strenger er tildelt til deg"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Hurtigoversetting av mine strenger"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Ingen uoversatte strenger er tildelt til deg"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Se over forslag"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Vis forslag"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Hurtigoversetting"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Vis uoversatte"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ingen uoversatte elementer"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Oversett alle"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "MÃ¥lfil"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP-fil av mappe"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Generer SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d streng (%d%%) feilet"
+msgstr[1] "%d strenger (%d%%) feilet"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d ord (%d%%) tildelt"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d strenger]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d ord (%d%%) oversatt"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Alle prosjekter"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Alle språk"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Min konto"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dok. & hjelp"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Logg ut"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Logg inn"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registrer"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktiver"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle-logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Om denne Pootle-tjeneren"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Alle mål"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d filer"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fil"
+msgstr[1] "%d filer"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d strenger"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Navn"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Oversatt"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Oversettelsesprosent"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Oversatte ord"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Uklar"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Uklar-prosent"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Uklare ord"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Prosent ikke oversatt"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Ikke-oversatte ord"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Totalt"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Totalt antall ord"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graf"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Kildetekst"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "MÃ¥ltekst"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Kommentarer"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Plasseringer"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Innlogging feilet"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Videresender til innlogging..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Må logge inn for å aksessere hjemmeside"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Personlige detaljer oppdatert"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Må logge inn for å aksessere administrasjonsside"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Videresender til hjemmeside..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Du har ikke rettigheter til å administrere pootle"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Vis"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Foreslå"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Oversett"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Se igjennom"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arkiver"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompiler PO-filer"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Tildel"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Du kan ikke fjerne brukerene \"nobody\" og \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Du har ikke rettigheter til å endre målene her"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Du har ikke rettigheter til å laste opp filer her"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Du har ikke rettigheter til å overskrive filer her"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Du har ikke rettigheter til å laste opp nye filer her"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Du har ikke rettigheter til å oppdatere filer her"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Du har ikke rettigheter til å lagre filer her"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Du har ikke rettigheter til å endre tildelinger her"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Du har ikke rettigheter til å endre oversettelser her"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Du har ikke rettigheter til å foreslå endringer her"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Du har ikke rettigheter til å se over forslag her"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d oversatt\n"
+"(%d blanke, %d uklare)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: oversetter %s til %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Oversettelse"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Godkjenn forslag"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Avslå forslag"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Oversetterkommentarer"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Utviklerkommentarer"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Relatert"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Arbeider..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Feil: Noe gikk galt"
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Slutten av bolk"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klikk her for å returnere til indeksen"
+
+# Bruker Første og Siste i steden for Start/slutt, det høres bedre ut i mine ører.
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Første"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Forrige %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Element %d til %d av %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Neste %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Siste"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "sjekker %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Det finnes ingen elementer for søkekriteriet («%s»)"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Du har gått gjennom alle de valgte elementene"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Entall"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Flertall"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Rediger"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopier"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Hopp over"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Tilbake"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Send inn"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Voks"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Krymp"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Flertallsform %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Oversettelse er ikke mulig fordi flertallsinformasjon for ditt språk ikke er "
+"tilgjengelig. Vennligst ta kontakt med webstedets administrator."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Nåværende oversettelse:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Forslag %d av %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Forslag %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Forslag av %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Forslag:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Du må oppgi et gyldig passord på minst %d tegn."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Passordet er ikke det samme som bekreftelsen."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Logg inn i Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Brukernavn:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Passord:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Språk:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Brukernavn"
+
+#: users.py:77
+msgid "Default"
+msgstr "Forvalgt"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Skriv inn dine registreringsdetaljer"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle-registrering"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Ditt ønskede brukernavn"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Du må oppgi en gyldig epostadresse"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Ditt fulle navn"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Ditt ønskede passord"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Bekreft passord"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Skriv inn passordet ditt på nytt for å passe på at det er skrevet riktig"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registrer konto"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Skriv inn dine aktiveringsdetaljer"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle kontoaktivering"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktiveringskode"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Den aktiveringskoden du mottok"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktiver konto"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Valg for: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Personlige detaljer"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-post"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Innstillinger for oversettelsesgrensesnittet"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Språk for brukergrensesnitt"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mine prosjekter"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mine språk"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Hjemmeside"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternativt kildespråk"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Ingen"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Innskrivingshøyde (i linjer)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Antall rader i visningsmodus"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Antall rader i oversettelsesmodus"
+
+#: users.py:307
+msgid "Error"
+msgstr "Feil"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Du må være nettstedsadministrator for å endre brukere"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Brukernavn må være alfanumerisk og må starte med et alfabetisk tegn."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Du (eller noen andre) prøvde å registrere en konto med ditt brukernavn.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Vi lagrer ikke ditt faktiske passord, men bare en enveis-kryptert versjon av "
+"det.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Hvis du har problemer med registreringen, ta kontakt med %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Hvis du har problemer med registreringen, ta kontakt med "
+"nettstedsadministratoren.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Brukernavnet eksisterer fra før. En e-post vil bli sendt til den "
+"registrerte e-postadressen.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Fortsetter til <a href='%s'>innlogging</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "En Pootle-konto har blitt opprettet for deg med denne e-postadressen.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "For å aktivere kontoen din, følg denne linken:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Din aktiveringskode er:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Hvis du ikke er i stand til å følge denne linken, vennligst skriv inn koden "
+"over på aktiveringssiden.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Denne meldingen er sendt for å verifisere at e-postadressen faktisk er "
+"korrekt. Hvis du ikke ønsker å registrere en konto, kan du ganske enkelt "
+"overse denne meldingen.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Konto opprettet. Du vil motta en e-post med innloggingsdetaljer og en "
+"aktiveringskode. Vennligst skriv inn aktiveringskoden på <a "
+"href='%s'>aktiveringssiden</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(eller klikk ganske enkelt på aktiveringslinken i e-posten)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Ditt brukernavn er: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Ditt passord er: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Din registrerte e-postadresse er: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Overfører til registreringssiden..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Overfører til innloggingssiden..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Din konto har blitt aktivert! Overfører til innlogging..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Aktiveringsinformasjonen er ikke gyldig."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivering feilet"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Innskrivningshøyde må være et tall"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Innskrivningsbredde må være et tall"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Antall rader vist i visningsmodus må være numerisk"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Antall rader vist i oversettelsesmodus må være numerisk"
+
+#~ msgid "Accept"
+#~ msgstr "Akseptér"
+
+#~ msgid "Reject"
+#~ msgstr "Avvis"
+
+#, fuzzy
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge oversettelsesprosjekt"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ne/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ne/jToolkit.po
new file mode 100644
index 0000000..bac9e67
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ne/jToolkit.po
@@ -0,0 +1,140 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-03-31 16:52+0200\n"
+"Last-Translator: Deepak <buddy132@yahoo.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.11\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%sलाई लग-इन"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "यो कà¥à¤°à¤¿à¤¯à¤¾ रदà¥à¤¦ गरà¥à¤¨à¥à¤¹à¥‹à¤¸ र à¤à¤‰à¤Ÿà¤¾ नयाठसतà¥à¤° शà¥à¤°à¥‚ गरà¥à¤¨à¥à¤¹à¥‹à¤¸"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "यो कà¥à¤°à¤¿à¤¯à¤¾ यकिन गरà¥à¤¨à¥à¤•à¥‹ सटà¥à¤Ÿà¤¾à¤®à¤¾, लग आउट गरà¥à¤¨à¥à¤¹à¥‹à¤¸ र सà¥à¤•à¥à¤°à¥à¤¯à¤¾à¤š बाट सà¥à¤°à¥ गरà¥à¤¨à¥à¤¹à¥‹à¤¸"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— निकास गरà¥à¤¨à¥à¤¹à¥‹à¤¸"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "यो अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— निकास गरà¥à¤¨à¥à¤¹à¥‹à¤¸ र पà¥à¤°à¤®à¥‚ल अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤—मा फरà¥à¤•à¤¨à¥à¤¹à¥‹à¤¸"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "कृपया लग-ईन यकिन गरà¥à¤¨à¥à¤¹à¥‹à¤¸"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "लग-ईन"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ नाम:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "पासवरà¥à¤¡:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "भाषा:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— चयन गरà¥à¤¨à¥à¤¹à¥‹à¤¸"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "लाग-आउट"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "निकास"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b> को रà¥à¤ªà¤®à¤¾ लग-ईन गरियो"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "नयाठसतà¥à¤° थप गरà¥à¤¨ सकिà¤à¤¨"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "लग-आउट गरियो"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "जडित"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "निकास भà¤à¤•à¥‹ पà¥à¤°à¤®à¥‚ल सतà¥à¤° "
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "सरà¥à¤­à¤° कनà¥à¤«à¤¿à¤—रेसनमा पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾à¤¹à¤°à¥ वा पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ पà¥à¤°à¤µà¤¿à¤·à¥à¤Ÿà¥€ परिभाषित गरà¥à¤¨ आवशà¥à¤¯à¤• छ"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ अवसà¥à¤¥à¤¿à¤¤ छैन (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "अवैध पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ नाम/वा पासवरà¥à¤¡"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "लग-ईन यकिन असफल भयो"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "होइन"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "हो"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "हटाउनà¥à¤¹à¥‹à¤¸"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(कà¥à¤¨à¥ˆ संलगà¥à¤¨ छैन)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "समà¥à¤²à¤—à¥à¤¨ निकै ठà¥à¤²à¥‹ छ"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "यो समà¥à¤²à¤—à¥à¤¨ हटाउनà¥à¤¹à¥‹à¤¸ "
+
+#: attachments.py:350
+msgid "restore"
+msgstr "पà¥à¤¨:संगà¥à¤°à¤¹ गरà¥à¤¨à¥à¤¹à¥‹à¤¸"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "यो संलगà¥à¤¨ हटाईयो। यसलाई पà¥à¤¨:संगà¥à¤°à¤¹ गरà¥à¤¨à¤²à¤¾à¤ˆ यहाठकà¥à¤²à¤¿à¤• गरà¥à¤¨à¥à¤¹à¥‹à¤¸"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "à¤à¤‰à¤Ÿà¤¾ फाइल संलगà¥à¤¨ गरà¥à¤¨à¥à¤¹à¥‹à¤¸"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ne/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ne/pootle.po
new file mode 100644
index 0000000..d5fe827
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ne/pootle.po
@@ -0,0 +1,1423 @@
+# translation of pootle.po to Nepali
+# Pawan Chitrakar <pawan@mpp.org.np>, 2005.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-01-16 21:53+0100\n"
+"Last-Translator: Jwalanta Shrestha <jwala_deep@yahoo.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "पूतल पà¥à¤°à¤¦à¤°à¥à¤¶à¤¨"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "मà¥à¤–à¥à¤¯ पृषà¥à¤ "
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾à¤¹à¤°à¥"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "भाषाहरà¥"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "परियोजनाहरू"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "सामानà¥à¤¯ विकलà¥à¤ªà¤¹à¤°à¥‚"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "विकलà¥à¤ª"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "चालॠमान"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "परिवरà¥à¤¤à¤¨à¤¹à¤°à¥ वचत गरà¥à¤¨à¥à¤¹à¥‹à¤¸"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "शीरà¥à¤·à¤•"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "बरà¥à¤£à¤¨"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "आधार यà¥à¤†à¤°à¤à¤²"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "गृह पृषà¥à¤ à¥’"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "पोटल भाषा पà¥à¤°à¤¶à¤¾à¤¸à¤¨ पृषà¥à¤ "
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+#, fuzzy
+msgid "Main admin page"
+msgstr "मà¥à¤–à¥à¤¯ पà¥à¤°à¤¶à¤¾à¤¸à¤¨ पृषà¥à¤ "
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO कोड"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "पूरा नाम"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(यहाठभाषा थपà¥à¤¨à¥à¤¹à¥‹à¤¸à¥)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "विषेश कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤¹à¤°à¥‚"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(बिशेष कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤¹à¤°à¥)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "बहà¥à¤µà¤šà¤¨à¤¹à¤°à¥à¤•à¥‹ संखà¥à¤¯à¤¾"
+
+#: adminpages.py:96
+#, fuzzy
+msgid "(number of plurals)"
+msgstr "बहà¥à¤µà¤šà¤¨à¤¹à¤°à¥à¤•à¥‹ संखà¥à¤¯à¤¾"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "अनेक समिकरण"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "अनेक समिकरण"
+
+#: adminpages.py:98
+#, fuzzy
+msgid "Remove Language"
+msgstr "भाषा हटाउनà¥à¤¹à¥‹à¤¸à¥"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s हटाउनà¥à¤¹à¥‹à¤¸à¥"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "मानक"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "पोटल परियोजना पà¥à¤°à¤¶à¤¾à¤¸à¤¨ पृषà¥à¤ "
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "परियोजना कोड"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(परियोजना यहाठथपà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ )"
+
+#: adminpages.py:154
+#, fuzzy
+msgid "Project Description"
+msgstr "(परियोजना बरà¥à¤£à¤¨)"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(परियोजना बरà¥à¤£à¤¨)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "जाà¤à¤šà¤• शैलि"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO फाईलहरू सृजना गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: adminpages.py:158
+#, fuzzy
+msgid "Remove Project"
+msgstr "परियोजना हटाउनà¥à¤¹à¥‹à¤¸à¥"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "पोटल पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ पृषà¥à¤ "
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+#, fuzzy
+msgid "Username"
+msgstr "पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾à¤•à¥‹ नाम"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(यहाठपूरा नाम थपà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ )"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "इमेल ठेगाना"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(इमेल यहाठथपà¥à¤¨à¥à¤¹à¥‹à¤¸à¥)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "पासवरà¥à¤¡"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(पासवरà¥à¤¡ यहाठथपà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ )"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "कृयाशील"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "नयाठपà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ सकà¥à¤°à¤¿à¤¯ पारà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: adminpages.py:223
+#, fuzzy
+msgid "Remove User"
+msgstr "%s हटाउनà¥à¤¹à¥‹à¤¸à¥"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "मà¥à¤–à¥à¤¯ पृषà¥à¤ à¤®à¤¾ फरà¥à¤•à¤¿à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "भैरहेका भाषाहरू"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+#, fuzzy
+msgid "Update Languages"
+msgstr "अपडेट भाषाहरà¥"
+
+#: adminpages.py:284
+#, python-format
+#, fuzzy
+msgid "Pootle Admin: %s"
+msgstr "à¤à¤¸ à¤à¤¸"
+
+#: adminpages.py:285 adminpages.py:356
+#, fuzzy
+msgid "You do not have the rights to administer this project."
+msgstr "तपाइठहोइन लाई परियोजना."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+#, fuzzy
+msgid "Update from templates"
+msgstr "अपडेट"
+
+#: adminpages.py:298
+#, fuzzy
+msgid "Add Language"
+msgstr "भाषा थपà¥à¤¨à¥"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+#, fuzzy
+msgid "Pootle Admin: %s %s"
+msgstr "à¤à¤¸ à¤à¤¸"
+
+#: adminpages.py:337
+#, fuzzy
+msgid "Project home page"
+msgstr "परियोजना घर पृषà¥à¤ "
+
+#: adminpages.py:355
+#, python-format
+#, fuzzy
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "सेट लागि पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ को नाम à¤à¤¸ पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ होइन"
+
+#: adminpages.py:372
+#, fuzzy
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "छ/हो ठजिà¤à¤¨à¤¯à¥ परियोजना फाइलहरà¥."
+
+#: adminpages.py:374
+#, fuzzy
+msgid "This is a standard style project (one directory per language)."
+msgstr "छ/हो ठपरियोजना."
+
+#: adminpages.py:375
+#, fuzzy
+msgid "User Permissions"
+msgstr "पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ अनà¥à¤®à¤¤à¤¿"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+#, fuzzy
+msgid "Remove"
+msgstr "हटाऊ"
+
+#: adminpages.py:406
+#, fuzzy
+msgid "Update Rights"
+msgstr "अपडेट"
+
+#: indexpage.py:58
+#, fuzzy
+msgid "About Pootle"
+msgstr "बारेमा"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+#, fuzzy
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong></strong> छ/हो ठतपाई लाई<strong></strong> छ/हो<strong> मà¥à¤•à¥à¤¤ "
+"सफà¥à¤Ÿà¤µà¥‡à¤¯à¤°</strong> तपाई र पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ तपाई तपाइठसहयोग भितà¥à¤° भितà¥à¤° तपाई लाई "
+"लाई."
+
+#: indexpage.py:61
+#, fuzzy
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"परियोजना आफैंले छ/हो मा<a href=\"http://translate.sourceforge.net/\"></a> तपाई "
+"पतà¥à¤¤à¤¾ लगाउनॠबारेमा संकेत."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+#, fuzzy
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"नाम लागि<b></b><b> O</b><b> टि</b><b> L</b><b> ई</b> तपाई लाई<a "
+"href=\"http://www.thechestnut.com/flumps.htm\"></a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+#, fuzzy
+msgid "User Page for: %s"
+msgstr "पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ पृषà¥à¤  लागि à¤à¤¸"
+
+#: indexpage.py:135
+#, fuzzy
+msgid "Change options"
+msgstr "परिवरà¥à¤¤à¤¨ गरà¥à¤¨à¥à¤¹à¥‹à¤¸"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "पà¥à¤°à¤¶à¤¾à¤¸à¤¨ पृषà¥à¤ "
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "पà¥à¤°à¤¶à¤¾à¤¸à¤¨"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "छिटो समà¥à¤ªà¤°à¥à¤•à¤¹à¤°à¥"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"'रोजाई फेरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥' मा कà¥à¤²à¤¿à¤• गरà¥à¤¨à¥à¤¹à¥‹à¤¸ र केही भाषा तथा परियोजनाहरू छानà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d परियोजना, औसत %d%% उलà¥à¤¥à¤¾ गरिà¤à¤•à¥‹"
+msgstr[1] "%d परियोजनाहरू, औसत %d%% उलà¥à¤¥à¤¾ गरिà¤à¤•à¥‹"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "पà¥à¤°à¤¶à¤¾à¤¸à¤¨"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "भाषाको कोड"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "भाषाको नाम"
+
+#: indexpage.py:260
+#, python-format
+#, fuzzy
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d परियोजना, औसत %d%% उलà¥à¤¥à¤¾ गरिà¤à¤•à¥‹"
+msgstr[1] "%d परियोजनाहरू, औसत %d%% उलà¥à¤¥à¤¾ गरिà¤à¤•à¥‹"
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "भाषाहरà¥"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: परियोजनाहरू %s, भाषाहरू %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "खोजी"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "फाईल अपलोड गरà¥à¤¨ सकिà¤à¤¨, कà¥à¤¨à¥ˆ फाईल संलगà¥à¤¨ गरिà¤à¤•à¥‹ छैन"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "PO फाईल तथा तिनका जिप फाईल मातà¥à¤° अपलोड गरà¥à¤¨ सकिनà¥à¤›"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "उदà¥à¤¦à¥‡à¤¶à¥à¤¯à¤¹à¤°à¥‚"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "उदà¥à¤¦à¥‡à¤¶à¥à¤¯à¤•à¤¾ नाम लेखà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "उदà¥à¤¦à¥‡à¤¶à¥à¤¯ थपà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "फाईल अपलोड"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "अपलोड गरà¥à¤¨ फाईल छानà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "हाल भैरहेको फाईल बिसà¥à¤¥à¤¾à¤ªà¤¿à¤¤ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "संबनà¥à¤§ जोडà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ थपà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO फाईल"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF फाईल"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts फाईल"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV फाईल"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO फाईल"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "अपडेट"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "निधो गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "उलà¥à¤¥à¤¾ नगरिà¤à¤•à¤¾"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "आफà¥à¤¨à¥‹ शबà¥à¤¦ हेरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "छिटो उलà¥à¤¥à¤¾"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "उलà¥à¤¥à¤¾ नभà¤à¤•à¤¾ हेरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "उलà¥à¤¥à¤¾ नभà¤à¤•à¤¾ कà¥à¤¨à¥ˆ छैननà¥"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "सबै उलà¥à¤¥à¤¾ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d शबà¥à¤¦à¤¹à¤°à¥‚ (%d%%) उलà¥à¤¥à¤¾ गरिà¤à¤•à¥‹"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d शबà¥à¤¦à¤¹à¤°à¥‚ (%d%%) उलà¥à¤¥à¤¾ गरिà¤à¤•à¥‹"
+
+#: pagelayout.py:28
+#, fuzzy
+msgid "All projects"
+msgstr "परियोजनाहरू"
+
+#: pagelayout.py:29
+#, fuzzy
+msgid "All languages"
+msgstr "भाषाहरà¥"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "मेरो खाता"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "कागजात तथा सहयोग"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "लग-आउट"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "लग-इन"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "दरà¥à¤¤à¤¾ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "चालà¥"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "पूतल लोगो"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Pootle सरà¥à¤­à¤°à¤•à¤¾ बारेमा"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "सबै उदà¥à¤¦à¤¶à¥à¤¯à¤¹à¤°à¥‚"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d फाईलहरू"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d फाईल"
+msgstr[1] "%d फाईलहरू"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "नाम"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "उलà¥à¤¥à¤¾"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "उलà¥à¤¥à¤¾ गरिà¤à¤•à¥‹ पà¥à¤°à¤¤à¤¿à¤¶à¤¤"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "उलà¥à¤¥à¤¾ गरिà¤à¤•à¤¾ शबà¥à¤¦à¤¹à¤°à¥‚"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "असà¥à¤ªà¤¸à¥à¤Ÿ"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "असà¥à¤ªà¤¸à¥à¤Ÿ पà¥à¤°à¤¤à¤¿à¤¶à¤¤"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "असà¥à¤ªà¤¸à¥à¤Ÿ शबà¥à¤¦à¤¹à¤°à¥‚"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "उलà¥à¤¥à¤¾ नगरिà¤à¤•à¥‹ पà¥à¤°à¤¤à¤¿à¤¶à¤¤"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "उलà¥à¤¥à¤¾ नगरिà¤à¤•à¤¾ शबà¥à¤¦à¤¹à¤°à¥‚"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "जमà¥à¤®à¤¾"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "जमà¥à¤®à¤¾ शबà¥à¤¦à¤¹à¤°à¥‚"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "गà¥à¤°à¤¾à¤«"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "लग-ईन असफल भयो"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "लग-ईन तरà¥à¤« लैजाà¤à¤¦à¥ˆ..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "मà¥à¤–à¥à¤¯ पृषà¥à¤ à¤®à¤¾ पहà¥à¤à¤šà¤•à¥‹ लागि लग-ईन गरà¥à¤¨à¥ परà¥à¤›"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "वà¥à¤¯à¤•à¥à¤¤à¤¿à¤—त जानकारीहरू अधà¥à¤¯à¤¾à¤µà¤§à¤¿à¤• गरियो"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "पà¥à¤°à¤¸à¤¾à¤¶à¤¨à¤¿à¤• पृषà¥à¤ à¤®à¤¾ पहà¥à¤à¤šà¤•à¥‹ लागि लग-ईन गरà¥à¤¨à¥ परà¥à¤›"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "मà¥à¤–à¥à¤¯ पृषà¥à¤ à¤¤à¤°à¥à¤« लैजादै..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "तपाईठसंग पोटललाई पà¥à¤°à¤¶à¤¾à¤¸à¤¿à¤¤ गरà¥à¤¨à¥‡ अधिकार छैन ।"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "हेरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "सà¥à¤à¤¾à¤µ"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "उलà¥à¤¥à¤¾"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "पà¥à¤¨à¤°à¤¾à¤µà¤²à¥‹à¤•à¤¨"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "संगà¥à¤°à¤¹"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr "खटाउनà¥à¤¹à¥‹à¤¸à¥"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "तपाईंले \"nobody\" अथवा \"default\" पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾à¤²à¤¾à¤ˆ हटाउन सकà¥à¤¨à¥à¤¹à¥à¤à¤¦à¥ˆà¤¨ ।"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "तपाईलाई यहाठउदà¥à¤¦à¥‡à¤¶à¥à¤¯ परिवरà¥à¤¤à¤¨ गरà¥à¤¨à¥‡ अनà¥à¤®à¤¤à¤¿ छैन"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "तपाईलाई फाईल अपलोड गरà¥à¤¨à¥‡ अनà¥à¤¤à¤¿ छैन"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "तपाइठलाई पोटल पà¥à¤°à¤¶à¤¾à¤¸à¤¿à¤¤ गरà¥à¤¨à¥‡ अधिकार छैन ।"
+
+#: projects.py:515
+#, fuzzy
+msgid "You do not have rights to upload new files here"
+msgstr "तपाईलाई फाईल अपलोड गरà¥à¤¨à¥‡ अनà¥à¤¤à¤¿ छैन"
+
+#: projects.py:524
+#, fuzzy
+msgid "You do not have rights to update files here"
+msgstr "तपाईलाई फाईल अपलोड गरà¥à¤¨à¥‡ अनà¥à¤¤à¤¿ छैन"
+
+#: projects.py:555
+#, fuzzy
+msgid "You do not have rights to commit files here"
+msgstr "तपाइठलाई पोटल पà¥à¤°à¤¶à¤¾à¤¸à¤¿à¤¤ गरà¥à¤¨à¥‡ अधिकार छैन ।"
+
+#: projects.py:977 projects.py:1019
+#, fuzzy
+msgid "You do not have rights to alter assignments here"
+msgstr "तपाईलाई यहाठउदà¥à¤¦à¥‡à¤¶à¥à¤¯ परिवरà¥à¤¤à¤¨ गरà¥à¤¨à¥‡ अनà¥à¤®à¤¤à¤¿ छैन"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "तपाईलाई उलà¥à¤¥à¤¾ परिवरà¥à¤¤à¤¨ गरà¥à¤¨à¥‡ अनà¥à¤®à¤¤à¤¿ छैन"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "तपाईंलाई सà¥à¤à¤¾à¤µ परिवरà¥à¤¤à¤¨ गरà¥à¤¨à¥‡ अनà¥à¤®à¤¤à¤¿ छैन"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "तपाईंलाई सà¥à¤à¤¾à¤µ पà¥à¤¨à¤°à¤¾à¤µà¤²à¥‹à¤•à¤¨ गरà¥à¤¨à¥‡ अनà¥à¤®à¤¤à¤¿ छैन"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d अनà¥à¤¬à¤¾à¤¦ भयो\n"
+"(%d खाली, %d असà¥à¤ªà¤·à¥à¤Ÿ)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: %s लाई %s: %s मा उलà¥à¤¥à¤¾ गरà¥à¤¦à¥ˆ"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "सकà¥à¤•à¤²"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "उलà¥à¤¥à¤¾"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "अनà¥à¤µà¤¾à¤¦à¤•à¤•à¥‹ पà¥à¤°à¤¤à¤¿à¤•à¥à¤°à¤¿à¤¯à¤¾"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "विकासकरà¥à¤¤à¤¾à¤•à¥‹ पà¥à¤°à¤¤à¤¿à¤•à¥à¤°à¤¿à¤¯à¤¾"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "समà¥à¤¬à¤¨à¥à¤§à¤¿à¤¤"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "index मा फरà¥à¤•à¤¨ यहाठकà¥à¤²à¤¿à¤• गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "सà¥à¤°à¥‚"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "पहिलेका"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "जमà¥à¤® %d मधà¥à¤¯à¥‡ %d देखि %d समà¥à¤®"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "अरà¥à¤•à¥‹ %d वटा"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "अनà¥à¤¤à¥à¤¯"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s जाà¤à¤š गरà¥à¤¦à¥ˆ"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "('%s') खोजीसà¤à¤— मिलà¥à¤¨à¥‡ कà¥à¤¨à¥ˆ बसà¥à¤¤à¥ भेटिà¤à¤¨ "
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "तपाईं आफूले छानेका बसà¥à¤¤à¥à¤¹à¤°à¥‚ सबै हेरी सकà¥à¤¨à¥à¤­à¤¯à¥‹"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "à¤à¤•à¤¬à¤šà¤¨"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "बहà¥à¤¬à¤šà¤¨"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "समà¥à¤ªà¤¾à¤¦à¤¨ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "कपी गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "छोडà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "फरà¥à¤•à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "बढाउनà¥à¤¹à¥‹à¤¸à¥"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "घटाउनà¥à¤¹à¥‹à¤¸à¥"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "%d बहà¥à¤¬à¤šà¤¨"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "हालको उलà¥à¤¥à¤¾"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "%s: बाट %d सà¥à¤à¤¾à¤µ"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "सà¥à¤à¤¾à¤µ %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s: बाट सà¥à¤à¤¾à¤µ"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "सà¥à¤à¤¾à¤µ:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "कमà¥à¤¤à¤¿à¤®à¤¾ %d अकà¥à¤·à¤° भà¤à¤•à¥‹ बैधानिक पासवरà¥à¤¡ उपलबà¥à¤§ गराउनॠपरà¥à¤› ।"
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "confirmation अनà¥à¤¸à¤¾à¤° पासवरà¥à¤¡ मिलेन"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "पूतलमा लग-ईन गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾à¤•à¥‹ नाम"
+
+#: users.py:68
+#, fuzzy
+msgid "Password:"
+msgstr "पासवरà¥à¤¡"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "भाषाहरà¥"
+
+#: users.py:71
+msgid "Login"
+msgstr "लगइन"
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "भाषाहरà¥"
+
+#: users.py:196
+msgid "Home page"
+msgstr "मà¥à¤–à¥à¤¯ पृषà¥à¤  "
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+#, fuzzy
+msgid "Redirecting to login Page..."
+msgstr "लग-ईन तरà¥à¤« लैजाà¤à¤¦à¥ˆ..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+#, fuzzy
+msgid "Activation Failed"
+msgstr "कृयाशील"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "सहमत"
+
+#~ msgid "Reject"
+#~ msgstr "असहमत"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge उलà¥à¤¥à¤¾ परियोजना"
+
+#~ msgid "Broaden"
+#~ msgstr "फराकिलो बनाउनà¥à¤¹à¥‹à¤¸à¥"
+
+#~ msgid "Narrow"
+#~ msgstr "साà¤à¤˜à¥à¤°à¥‹ बनाउनà¥à¤¹à¥‹à¤¸à¥"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "पोटल पà¥à¤°à¤¶à¤¾à¤¸à¤¨ पृषà¥à¤ "
diff --git a/Pootle-1.2.1/Pootle/po/pootle/nl/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/nl/jToolkit.po
new file mode 100644
index 0000000..dd6b21b
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/nl/jToolkit.po
@@ -0,0 +1,147 @@
+# Tom Verlinden<verlinden.tom@gmail.com>,2008-10-07 22:18+0800
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-10-17 23:41+0800\n"
+"Last-Translator: Tom Verlinden <verlinden.tom@gmail.com>\n"
+"Language-Team: TT(Tom's Team)<verlinden.tom@gmail.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Virtaal 0.2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Aanmelding voor %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Deze actie annuleren en een nieuwe sessie beginnen"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Bevestig deze actie niet, maar meld u af en begin opnieuw"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Applicatie afsluiten"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Sluit deze applicatie af en ga terug naar de hoofdapplicatie"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", bevestig de aanmelding, a.u.b."
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Aanmelden"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Gebruikersnaam:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Wachtwoord:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Taal:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Applicatie selecteren"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Afmelden"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Afsluiten"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "aangemeld als <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "kon geen nieuwe sessie toevoegen"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "afgemeld"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "verbonden"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "hoofdsessie afgesloten"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"moet de ingang 'users' of 'userprefs' in de serverconfiguratie definiëren"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "gebruiker bestaat niet (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ongeldige gebruikersnaam en/of wachtwoord"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "bevestiging aanmelding mislukt"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nee"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ja"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "verwijderen"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(geen bijlage)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "bijlage is te groot"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "verwijder deze bijlage"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "herstellen"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "Deze bijlage is verwijderd. Klik hier om ze te herstellen."
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "bestand bijvoegen"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr ""
+#~ "Moet de ingang voor de gebruiker in de serverconfiguratie definiëren"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/nl/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/nl/pootle.po
new file mode 100644
index 0000000..2164d8f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/nl/pootle.po
@@ -0,0 +1,1480 @@
+# Jan <dejong.jh@gmail.com>, 2007
+# Tom Verlinden<verlinden.tom@gmail.com>,2008-10-06 21:18+0800
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-10-17 23:39+0800\n"
+"Last-Translator: Tom Verlinden <verlinden.tom@gmail.com>\n"
+"Language-Team: TT(Tom's Team)<verlinden.tom@gmail.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Virtaal 0.2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Startpagina"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Gebruikers"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Talen"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projecten"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Algemene opties"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Optie"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Huidige waarde"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Veranderingen opslaan"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titel"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Beschrijving"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Basis-URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Startpagina"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle beheerpagina: talen"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Beheerpagina"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO-code"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Volledige naam"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(voeg hier een taal toe)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Speciale tekens"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(speciale tekens)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Aantal meervouden"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(aantal meervouden)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Meervoudsvergelijking"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(meervoudsvergelijking)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Taal verwijderen"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%s verwijderen"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standaard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle beheerpagina: projecten"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projectcode"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(project hier toevoegen)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projectbeschrijving"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(projectbeschrijving)"
+
+# Not sure what the Checker Style is or does.
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Controlestijl"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Bestandstype"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO-bestanden aanmaken"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Project verwijderen"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle beheerpagina: gebruikers"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Gebruikersnaam"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(volledige naam hier toevoegen)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "E-mailadres"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(e-mailadres hier toevoegen)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Wachtwoord"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(wachtwoord hier toevoegen)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Geactiveerd"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Nieuwe gebruiker activeren"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Gebruiker verwijderen"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Terug naar de hoofdpagina"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Bestaande talen"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Talen bijwerken"
+
+# Does 'admin' stand for 'administrator' or 'administration' in this case? I translated it as 'aministrator'
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle beheerder: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "U hebt niet de rechten om dit project te beheren."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Bijwerken m.b.v. sjablonen"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Taal toevoegen"
+
+# Pretty sure it's 'administration' in this case, so 'beheer' and not 'beheerder'
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle beheer: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Project startpagina"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Kan de rechten voor gebruikersnaam %s niet instellen - gebruiker bestaat "
+"niet"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Dit is een project in de GNU-stijl (één map, bestanden genoemd naar de "
+"taal)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Dit is een project in de standaardstijl (één map per taal)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Gebruikerstoestemmingen"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(selecteer om gebruiker toe te voegen)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Rechten"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Verwijderen"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Rechten bijwerken"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Over Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> is een simpel webportaal dat u in staat zou moeten "
+"stellen om te <strong>vertalen</strong>! Aangezien Pootle <strong>Vrije "
+"Software</strong> is, kunt u het downloaden en uw eigen kopie draaien als u "
+"dat wenst. U kunt ook op verschillende manieren bijdragen aan de "
+"ontwikkeling (hiervoor hoeft u niet te kunnen programmeren)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Het Pootle project zelf wordt gehost op <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> waar "
+"u details kunt vinden over de broncode, maillijsten, enzovoorts."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"De naam staat voor <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine (PO-gebaseerde Online Vertaal-/Lokaliseer-"
+"Machine), maar misschien kunt u ook <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">dit</a> eens lezen."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versies"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Op deze site draaien:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Gebruikerspagina voor: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Opties veranderen"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Beheerpagina"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Beheren"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Snellinks"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Klik op 'Opties veranderen' en selecteer enkele talen en projecten, a.u.b."
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d project, gemiddeld %d%% vertaald"
+msgstr[1] "%d projecten, gemiddeld %d%% vertaald"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+# again: person or action?
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Beheerder"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Taalcode"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Taalnaam"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d taal, gemiddeld %d%% vertaald"
+msgstr[1] "%d talen, gemiddeld %d%% vertaald"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Taal"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Project %s, Taal %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Zoeken"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Uitgebreid zoeken"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Kan bestand niet uploaden, geen bestand bijgevoegd"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Kan alleen PO-bestanden en ZIP-bestanden met PO-bestanden erin uploaden"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Tekenreeksen toewijzen"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Actie toewijzen"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Toewijzen aan gebruiker"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "doelen"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Doelnaam invoeren"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Doel toevoegen"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Bestand uploaden"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Selecteer een bestand om te uploaden"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Overschrijven"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Overschrijf het bestaande bestand indien het bestaat"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Samenvoegen"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Voeg het bestand samen met het huidige bestand en zet conflicten om in "
+"suggesties"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Niet in een doel"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Gebruiker toevoegen"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO-bestand"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF-bestand"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts-bestand"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV-bestand"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO-bestand"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Bijwerken"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Inleveren"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Alle tekenreeksen"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Onvertaald"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ontoegewezen"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ontoegewezen en onvertaald"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Doel instellen"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Meerdere selecteren"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Toewijzen aan"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Bewerkingsfuncties tonen"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Statistieken tonen"
+
+# 'Tracks' not translated, because deemed unimportant by Friedel Wolff
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Tracks tonen"
+
+# 'Tracks' not translated, because deemed unimportant by Friedel Wolff
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Tracks verbergen"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Controles tonen"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Controles verbergen"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Doelen tonen"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Doelen verbergen"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Toewijzingen tonen"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Toewijzingen verbergen"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Alle doelen: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Mijn tekenreeksen vertalen"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Mijn tekenreeksen tonen"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Geen tekenreeksen aan u toegewezen"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Mijn tekenreeksen snel vertalen"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Geen onvertaalde tekenreeksen aan u toegewezen"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Suggesties nakijken"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Suggesties bekijken"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Snel vertalen"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Onvertaalde bekijken"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Geen onvertaalde items"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Alles vertalen"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP van doel"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP van map"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF genereren"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d tekenreeks (%d%%) mislukt"
+msgstr[1] "%d tekenreeksen (%d%%) mislukt"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d woorden (%d%%) toegewezen"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d tekenreeksen]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d woorden (%d%%) vertaald"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Alle projecten"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Alle talen"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mijn account"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Documentatie & hulp"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Afmelden"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Aanmelden"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registreren"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Activeren"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Over deze Pootle server"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Alle doelen"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d bestanden"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d bestand"
+msgstr[1] "%d bestanden"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d tekenreeksen"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Naam"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Vertaald"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Percentage vertaald"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Vertaalde woorden"
+
+# I am aware that 'fuzzy' is usually translated to 'fuzzy', 'onzeker' or 'vaag'.
+# I opted for 'wazig', because I think it best expresses the word's true meaning and could also be used in the case of 'fuzzy match', for example.
+# I don't like 'onzeker', because 'fuzzy' does not always imply that the translator is uncertain of his translation. It might also mean that one of the strings has changed somehow.
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Wazig"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Percentage wazig"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Wazige woorden"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Percentage onvertaald"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Onvertaalde woorden"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Totaal"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Totaal aantal woorden"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafiek"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Brontekst"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Doeltekst"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Opmerkingen"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Locaties"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Aanmelding mislukt"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "U wordt doorverwezen naar aanmelding..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "U moet zich aanmelden voor toegang tot de startpagina"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Persoonlijke gegevens bijgewerkt"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "U moet zich aanmelden voor toegang tot de beheerderspagina"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "U wordt doorverwezen naar de startpagina..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "U hebt niet de rechten om Pootle te beheren."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Bekijken"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Suggereren"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Vertalen"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Nakijken"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archiveren"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO-bestanden compileren"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Toewijzen"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "U kunt de \"nobody\" of \"default\" gebruiker niet verwijderen"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "U hebt niet de rechten om hier doelen te wijzigen"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "U hebt niet de rechten om hier bestanden te uploaden"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "U hebt niet de rechten om hier bestanden te overschijven"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "U hebt niet de rechten om hier nieuwe bestanden te uploaden"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "U hebt niet de rechten om hier bestanden bij te werken"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "U hebt niet de rechten om hier bestanden in te leveren"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "U hebt niet de rechten om hier toewijzingen te wijzigen"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "U hebt niet de rechten om hier vertalingen te veranderen"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "U hebt niet de rechten om hier veranderingen te suggereren"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "U hebt niet de rechten om hier suggesties na te kijken"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d vertaald\n"
+"(%d blanco, %d wazig)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: %s vertalen naar %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Origineel"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Vertaling"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Suggestie aanvaarden"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Suggestie verwerpen"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Opmerkingen van de vertaler"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Opmerkingen van de ontwikkelaar"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Verwant"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Bezig..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Fout: Er is iets misgelopen."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Einde van de set"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klik hier om terug te keren naar de index"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Begin"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Vorige %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Items %d tot %d van %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Volgende %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Einde"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "Bezig met controleren van %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Er zijn geen items die voldoen aan die zoekactie ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "U bent klaar met de door u geselecteerde items"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Enkelvoud"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Meervoud"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Bewerken"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopiëren"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Overslaan"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Terug"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Opslaan"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Groter"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Kleiner"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Meervoudsvorm %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Vertaling niet mogelijk omdat informatie over het meervoud voor uw taal "
+"ontbreekt. Neem contact op met de site-beheerder, a.u.b."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Huidige vertaling:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Suggestie %d door %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Suggestie %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Suggestie door %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Suggestie:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "U moet een geldig wachtwoord met minstens %d tekens opgeven."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Het wachtwoord is niet hetzelfde als de bevestiging."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Aanmelden bij Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Gebruikersnaam:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Wachtwoord:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Taal:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Aanmelding"
+
+#: users.py:77
+msgid "Default"
+msgstr "Standaard"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Voer uw registratiegegevens in, a.u.b."
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle registratie"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Uw gewenste gebruikersnaam"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "U moet een geldig e-mailadres opgeven"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Uw volledige naam"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Uw gewenst wachtwoord"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Wachtwoord bevestigen"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Typ uw wachtwoord nogmaals in om te verzekeren dat het correct ingevoerd is"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Account registreren"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Voer uw activeringsgegevens in, a.u.b."
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle account-activering"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Activeringscode"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "De activeringscode die u ontvangen hebt"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Account activeren"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opties voor: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Persoonlijke gegevens"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-mail"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Configuratie vertaalinterface"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Taal gebruikersinterface"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mijn projecten"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mijn talen"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Startpagina"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternatieve brontaal"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Geen"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Invoerhoogte (in regels)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Aantal rijen in weergavemodus"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Aantal rijen in vertaalmodus"
+
+#: users.py:307
+msgid "Error"
+msgstr "Fout"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Je moet site-beheerder zijn om gebruikers te veranderen"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Gebruikersnaam moet alfanumeriek zijn, en moet beginnen met een alfabetisch "
+"teken."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "U (of iemand anders) heeft geprobeerd een account te registeren met uw "
+"gebruikersnaam.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "We slaan uw wachtwoord zelf niet op, enkel een hash ervan.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Neem bij problemen met de registratie contact op met %s, a.u.b.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Neem bij problemen met de registratie contact op met de site-beheerder, "
+"a.u.b.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Die gebruikersnaam bestaat al. Er wordt een e-mail naar het geregistreerde "
+"e-mailadres gestuurd.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Overgang naar <a href='%s'>aanmelding</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Er werd een Pootle account voor u aangemaakt met dit e-mailadres.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Volg de volgende link om uw account te activeren:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Uw activeringscode is:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Als u de link niet kunt volgen, voer dan de bovenstaande code in op de "
+"activeringspagina, a.u.b.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Dit bericht werd gestuurd om na te gaan of het e-mailadres wel klopt. Als u "
+"geen account wenst te registreren, kunt u dit bericht gewoon negeren.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Account aangemaakt. U ontvangt een e-mail met de aanmeldingsgegevens en een "
+"activeringscode. Voer uw activeringscode in op de <a "
+"href='%s'>activeringspagina</a>, a.u.b."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Of klik gewoon op de activeringslink in de e-mail)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Uw gebruikersnaam is: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Uw wachtwoord is: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Uw geregistreerd e-mailadres is: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "U wordt doorverwezen naar de registratiepagina..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "U wordt doorverwezen naar de aanmeldingspagina..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Uw account is geactiveerd! U wordt doorverwezen naar aanmelding..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "De activeringsinformatie was ongeldig."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Activering mislukt"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Invoerhoogte moet een getal zijn"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Invoerbreedte moet een getal zijn"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Het aantal weer te geven rijen in de weergavemodus moet een getal zijn"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Het aantal weer te geven rijen in de vertaalmodus moet een getal zijn"
+
+#~ msgid "Accept"
+#~ msgstr "Accepteren"
+
+#~ msgid "Reject"
+#~ msgstr "Afwijzen"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge vertaalproject"
+
+#~ msgid "Broaden"
+#~ msgstr "Breder"
+
+#~ msgid "Narrow"
+#~ msgstr "Smaller"
+
+#~ msgid "Reset"
+#~ msgstr "Herstellen"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Moet een geldig e-mailadres zijn"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Invoerbreedte (in tekens)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> is een eenvoudige website waarmee je zou moeten "
+#~ "kunnen <strong>vertalen</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "bovenliggende map"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projecten</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d bestanden, %d/%d strings (%d%%) vertaald"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "dit is een demo installatie van pootle"
+
+#~ msgid "current folder"
+#~ msgstr "huidige map"
+
+#~ msgid "login status"
+#~ msgstr "Login Status"
+
+#~ msgid "project root"
+#~ msgstr "projectstart"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "je hebt geen recht hier wijzigingen voor te stellen"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "je hebt geen recht hier vertalingen te wijzigen"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d strings (%d%%) vertaald"
+
+#~ msgid "%d files, "
+#~ msgstr "%d bestanden,"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Talen</h3>"
+
+#~ msgid "current file"
+#~ msgstr "huidig bestand"
+
+#~ msgid "not logged in"
+#~ msgstr "Niet ingelogd"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/nn/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/nn/jToolkit.po
new file mode 100644
index 0000000..cf08442
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/nn/jToolkit.po
@@ -0,0 +1,144 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-09-18 00:19+0000\n"
+"Last-Translator: Simon Hansen <simonboba@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Logg inn for %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Bryt den her handlinga og start ein ny sesjon"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Logg ut og start på nytt i staden for å godkjenne den her handlinga"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Lukk programmet"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Lukk det her programmet å gå tilbake til moderprogrammet"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", stadfest innlogginga"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Logg inn"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Kallenamn:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Passord:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Språk:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Vel program"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Logg ut"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Lukk"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "logga inn som <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "kunne ikkje leggje til ny sesjon"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "logga ut"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "kopla til"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "lukka modersesjonen"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "må definere brukar eller brukarinnstillingar i tenarkonfigurasjonen"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "kallenamnet finnes ikkje (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ugyldig kallenamn og/eller passord"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "fekk ikkje stadfesta innlogginga"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nei"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ja"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "fjern"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ingen vedlegg)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "vedlegget er for stort"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "fjern det her vedlegget"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "gjenopprett"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "det her vedlegget har vorte fjerna. Trykk her for å gjenopprette det"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "legg ved ei fil"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "brukeroppføring i serverkonfigurasjonen mangler"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/nn/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/nn/pootle.po
new file mode 100644
index 0000000..cf1f91b
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/nn/pootle.po
@@ -0,0 +1,1386 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-11-13 06:03+0000\n"
+"Last-Translator: Simon Hansen <simonboba@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle-demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Heim"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Brukarar"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Språk"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Prosjekt"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Ã…lmenne val"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Val"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Gjeldande verdi"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Lagre endringar"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Tittel"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Skildring"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Base-URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Heimeside"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle spr&aring;kstyringsside"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Hovudside for administrering"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO-kode"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Fullt namn"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(legg til språk her)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Spesialteikn"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(spesialteikn)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Tal på fleirtalsformer"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(tal på fleirtalsformer)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Fleirtalslikning"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(fleirtalslikning)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Fjern språk"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Fjern %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle prosjektstyring"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Prosjektkode"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(legg til prosjekt her)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Prosjektskildring"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(prosjektskildring)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Checker-stil"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Filtype"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Lag MO-filar"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Fjern prosjekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle brukarstyring"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Brukarnamn"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(skriv inn heile namnet her)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "E-posttilskrift"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(skriv inn e-post her)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Passord"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(skriv inn passord her)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktivert"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktiver ny brukar"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Fjern brukar"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Attende til hovudsida"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Eksisterande språk"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Oppdater språk"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle-administrator: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Du har ikkje løyve til å administrere dette prosjektet."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Oppdater frå malar"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Legg til språk"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle-administrator: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Prosjektheimeside"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Kan ikkje setje løyve for brukarnamn %s - brukaren finst ikkje"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Dette er eit GNU-aktig prosjekt (ein katalog, filer gjeve namn etter språk)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Dette er eit standardstil-prosjekt (ein katalog per språk)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Brukarløyve"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(vel for å leggje til brukar)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Løyve"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Fjern"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Oppdater løyve"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Om Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> er ein enkel vevportal som let deg "
+"<strong>omsetje</strong>! Av di Pootle er <strong>Fri programvare</strong>, "
+"kan du laste det ned og køyre din eigen kopi om du ynskjer. Du kan òg hjelpe "
+"til med utviklinga på mange vis (du treng ikkje å kjenne til "
+"programmering)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle-prosjektet held til hjå <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>, kor "
+"du kan finne ut meir om kjeldekode, e-postlister og så bortetter."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Namnet står for «<b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine», men du lyt kanskje lese <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">dette</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versjonar"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Denne vevstaden køyrer:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (på %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Brukarside for: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Endre val"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Administreringsside"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrer"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Snarvegar"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Klikk 'Endre val' og vel nokre språk og prosjekt"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d prosjekt, i snitt %d%% omsett"
+msgstr[1] "%d prosjekt, i snitt %d%% omsett"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Språkkode"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Språknamn"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d språk, i snitt %d%% omsett"
+msgstr[1] "%d språk, i snitt %d%% omsett"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Språk"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Prosjekt %s, språk %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Søk"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Avansert søk"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Kan ikkje laste opp fil, det er inga fil lagt ved"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Kan berre laste opp PO-filer og zip-filer med PO-filer i"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Tildel strenger"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Tildel handling"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Tildel til brukar"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "mål"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Skriv inn namn på mål"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Legg til mål"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Last opp fil"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Vel fil å laste opp"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Skriv over"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Skriv over gjeldande fil om ho finst"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Flett"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Flett fila med gjeldande fil og gjer om konfliktar til framlegg"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ikkje i eit mål"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Legg til brukar"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO-fil"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF-fil"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "QT .ts-fil"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV-fil"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO-fil"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Oppdater"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Stadfest"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Alle strengene"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Ikkje omset"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ikkje tildelt"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ikkje tildelt og ikkje omsatt"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Set mål"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Vel fleire"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Tildel til"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Vis redigeringsfunksjonar"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Vis statistikk"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Vis spor"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Gøym spor"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Syn feilsjekking"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Gøym feilsjekking"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Vis mål"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Gøym mål"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Vis tildelingar"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Gøym tildelingar"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Alle måla: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Omset strengene mine"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Vis strengene mine"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Ingen strenger er tildelt til deg"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Snøggomsett strengene mine"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Ingen uomsette strenger er tildelt til deg"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Sjå over framlegg"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Vis framlegg"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Snøggomsetjing"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Vis uomsette"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ingen uomsette element"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Omset alle"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP-fil av mål"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP-fil av mappe"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Generer SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d streng (%d%%) feila"
+msgstr[1] "%d strenger (%d%%) feila"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d ord (%d%%) tildelt"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d strenger]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d ord (%d%%) omsett"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Prosjekt"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Språk"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Konto"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dok. og hjelp"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Logg ut"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Logg inn"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registrer"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktiver"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle-bumerke"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Om denne Pootle-tenaren"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "MÃ¥l"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d filer"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fil"
+msgstr[1] "%d filer"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d strenger"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Namn"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Omsett"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Prosent omsett"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Omsette ord"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Uklår"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Prosent uklår"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Uklåre ord"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Prosent ikkje omsett"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Uomsette ord"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Totalt"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Totalt tal på ord"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graf"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Kjeldetekst"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "MÃ¥ltekst"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Merknader"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Plasseringar"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Innlogging feila"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Sender vidare til innlogging..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Må logge inn for å ha tilgang til heimeside"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Personlege detaljar vart oppdatert"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Må logge inn for å ha tilgang til administrasjonsside"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Vidaresendar til heimeside..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Du har ikkje løyve til å administrere Pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Syn"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Gje framlegg"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Omset"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Sjå over"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arkiver"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Bygg PO-filer"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Tildel"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Du kan ikkje fjerna brukarane \"nobody\" og \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Du har ikkje lov til å endre mål her"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Du har ikkje lov til å laste opp filer her"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Du har ikkje lov til å skrive over filer her"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Du har ikkje lov til å laste opp nye filer her"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Du har ikkje lov til å oppdatere filer her"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Du har ikkje lov til å stadfeste filer her"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Du har ikkje lov til å endre tildelingar her"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Du har ikkje lov til å endre omsetjingar her"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Du har ikkje lov til å gje framlegg til endringar her"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Du har ikkje lov til å sjå framlegg her"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d omsett\n"
+"(%d ikkje omsett, %d uklåre)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: omset %s til %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Omsetjing"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Godkjenn framlegg"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Avvis framlegg"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Merknad frå omsetjar"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Merknad frå utviklar"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Nærskyldt"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Arbeider..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Feil: Noko gjekk gale."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Slutten av bolk"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klikk her for å gå attende til indeksen"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Fyrste"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Førre %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Element %d til %d av %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Neste %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Siste"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "sjekker %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Det finst ingen treff på dette søket ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Du har gått gjennom dei valde elementa"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Eintal"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Fleirtal"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Endre"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopier"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Hopp over"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Attende"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Send inn"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Større"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Mindre"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Fleirtalsform %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Omsetjing er ikkje mogleg av di fleirtalsinformasjon for språket ditt ikkje "
+"er tilgjengeleg. Kontakt vevmeisteren."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Noverande omsetjing:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Framlegg %d av %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Framlegg %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Framlegg av %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Framlegg:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Du må skrive inn eit gyldig passord på minst %d teikn."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Passordet er ikkje det same som stadfestinga."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Logg inn i Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Brukarnamn:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Passord:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Språk:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Brukarnamn"
+
+#: users.py:77
+msgid "Default"
+msgstr "Forvald"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Skriv inn dine registreringsdetaljar"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle-registrering"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Brukarnamnet du bad om"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Du må oppgje ei gyldig e-postadresse"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Heile namnet ditt"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Passordet du ynskjer"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Stadfest passord"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Skriv inn passordet om att for å sjå til at det er rett skriven"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registrer konto"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Skriv inn aktiveringsdetaljane dine"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle kontoaktivering"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktiveringskode"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Aktiveringskoden du mottok"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktiver konto"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Val for: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Persondetaljar"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-post"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Innstillingar for omsetjingsgrensesnittet"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Grensesnittspråk"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Prosjekta mine"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Språka mine"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Heimeside"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternativt kjeldespråk"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Ingen"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Innskrivingshøgde (i liner)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Tal på rader i visningsmodus"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Tal på rader i omsetjingsmodus"
+
+#: users.py:307
+msgid "Error"
+msgstr "Feil"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Du må vere vevmeister for å endre brukarar"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Brukarnamnet må vere alfanumerisk og starte med ein bokstav."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Du (eller nokon andre) prøvde å registrere ein konto med brukarnamnet ditt.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Me lagrar ikkje det faktiske passordet ditt, berre ein kryptert utgåve av "
+"det.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Om du har problem med registreringa, ta kontakt med %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Om du har problem med registreringa, ta kontakt med vevmeisteren.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Dette brukarnamnet finst allereie. Ein e-post vil verte sendt til den "
+"registrerte e-postadressa.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Held fram til <a href='%s'>innlogging</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Ein Pootle-konto vart oppretta for deg med denne e-postadressa.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "For å aktivere kontoen din, følg til denne lenkja:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Aktiveringskoden din er:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Om du ikkje kan følgje lenkja, skriv koden inn på aktiveringssida.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Denne meldinga er sendt for å kontrollere at e-postadressa faktisk er "
+"korrekt. Om du ikkje ynskjer å registrere ein konto, kan du ganske enkelt "
+"sjå vekk frå meldinga.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Kontoen er oppretta. Du vil få tilsendt ei e-postmelding med "
+"innloggingsdetaljar og aktiveringskode. Skriv inn aktiveringskoden på <a "
+"href='%s'>aktiveringssida</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Eller berre klikke på aktiveringslenkja i e-postmeldinga)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Brukarnamnet ditt er: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Passordet ditt er: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Den registrerte e-postadressa di er: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "GÃ¥r til registreringssida..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "GÃ¥r til innloggingssida..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Kontoen din er aktivert! GÃ¥r til innlogging..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Aktiveringsinformasjonen var ikkje gyldig."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktiveringa feila"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Innskrivingshøgd må vere eit tal"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Innskrivingsbreidd må vere eit tal"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Tal på rader i visningsmodus må vere eit tal"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Tal på rader i omsetjingsmodus må vere eit tal"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> er en web-portal som lar deg <strong>oversette</"
+#~ "strong>"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/nso/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/nso/jToolkit.po
new file mode 100644
index 0000000..c60f286
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/nso/jToolkit.po
@@ -0,0 +1,146 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-09-21 11:23+0200\n"
+"Last-Translator: Pheledi <pheledi@telkomsa.net>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Tsena bakeng sa %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Khansela tiro ye gomme o thome karolo e mpsha"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Go e nale go tiišetša tiro ye, etšwa gomme o thome ka leswa"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "E-tšwa tirišong"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "E-tšwa tirišong ye gomme o boele tirišong e kgolo"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", hle tiišetša tseno"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Tsena"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Leina la modiriši:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Lentšuphetišo:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Leleme:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Kgetha Tirišo"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "E-tšwa"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Etšwa"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format, fuzzy
+msgid "logged in as <b>%s</b>"
+msgstr "tsene bjalo ka <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "e be e ka se oketše karolo e mpsha"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "tšwile"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "kgokagantšwe"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "e tšwile karolong e kgolo"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"e hloka go hlalosa tseno ya badiriši goba badiriši bao ba ratwago go kopanyo "
+"ya sebara"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "modiriši ga a gona (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "leina la modiriši le/goba lentšuphetišo leo le sa šomego"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "tiišetšo ya go tsena e paletšwe"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Aowa"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ee"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "tloša"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ga go na sekgokaganywa)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "sekgokaganywa ke se segolo kudu"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "tloša sekgokaganywa se"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "bušetša"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "sekgokaganywa se se tlošitšwe. kgotla mo gore o se bušetše"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "kgokaganya faele"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/nso/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/nso/pootle.po
new file mode 100644
index 0000000..a84299c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/nso/pootle.po
@@ -0,0 +1,1382 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-09-25 15:02+0200\n"
+"Last-Translator: Pheledi <pheledi@telkomsa.net>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pontšho ya Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Gae"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Badiriši"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Maleme"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Diprojeke"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Dikgetho tša kakaretšo"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Kgetho"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Boleng bja gona bjale"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Boloka diphetošo"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Leina"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Tlhaloso"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL ya Motheo"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Letlakala la Gae"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Letlakala la taolo e kgolo"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Khoutu ya ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Leina ka Botlalo"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(oketša leleme mo)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Ditlhaka tše Kgethegilego"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(ditlhaka tše kgethegilego)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Palo ya Bontši"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(palo ya bontši)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Tekanyetšo ya Bontši"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(tekanyetšo ya bontši)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Tloša Leleme"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Tloša %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Motheo"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Khoutu ya Projeke"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(oketša projeke mo)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Tlhaloso ya Projeke"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(tlhaloso ya projeke)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Setaele sa Molekodi"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Mohuta wa Faele"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Hlama Difaele tša MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Tloša Projeke"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Leina la modiriši"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(oketša leina ka botlalo mo)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Aterese ya Emeile"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(oketša emeile mo)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Lentšuphetišo"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(oketša lentšuphetišo mo)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Diragaditšwe"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Diragatša Modiriši yo Moswa"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Tloša Modiriši"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Morago letlakaleng le legolo"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Maleme ao a lego gona"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Mpshafatša Maleme"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Bolaodi bja Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Ga o na ditokelo tša go laola projeke ye."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Mpshafatša go tšwa dithempoleiting"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Oketša Leleme"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Bolaodi bja Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Letlakala la gae la projeke"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"E ka se beakanye ditokelo tša leina la modiriši la %s - modiriši ga a gona"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Ye ke projeke ya setaele sa GNU (tšhupetšo e tee, difaele tšeo di "
+"reeletšwego go ya ka leleme)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ye ke projeke ya setaele sa motheo (tšhupetšo e tee go ya ka leleme)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Ditumelelo tša Modiriši"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(kgetha gore o oketše modiriši)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Ditokelo"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Tloša"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Mpshafatša Ditokelo"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Laola"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Bolaodi"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "Maleme"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Nyaka"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Aba Methaladi"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Aba Tiro"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Abela Modiriši"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Ngwala godimo"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Itlame"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "TÅ¡e sa fetolelwago"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) assigned"
+msgstr "mantšu a %d/%d (%d%%) ao a fetoletšwego"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+#, fuzzy
+msgid "[%d/%d strings]"
+msgstr "methaladi e %d/%d"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "mantšu a %d/%d (%d%%) ao a fetoletšwego"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Diprojeke ka Moka"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Maleme ka moka"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Akhaonto ya ka"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Ditokumente le thušo"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "E-tšwa"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Tsena"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Ingwadiše"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Diragatša"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Leswao la Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Mabapi le sebara ye ya Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Dipakane ka moka"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "difaele tše %d/%d"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "faele e %d"
+msgstr[1] "difaele tše %d"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "methaladi e %d/%d"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Leina"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Fetoletšwego"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Diphesente tšeo di fetoletšwego"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Mantšu ao a fetoletšwego"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "E sa hlakago"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Diphesente tša tšeo di sa hlakago"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Mantšu ao a sa hlakago"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Diphesente tšeo di sa fetolelwago"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Mantšu ao a sa fetolelwago"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Palomoka"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Palomoka ya mantšu"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Krafo"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+#, fuzzy
+msgid "You do not have the rights to administer pootle."
+msgstr "Ga o na ditokelo tša go laola projeke ye."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Lebelela"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Šišinya"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Fetolela"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Boeletša"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Polokelo"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kgoboketša difaele tša PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Abela"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "O ka se tloše modiriši wa \"nobody\" goba \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Ga o na ditokelo tša go lokiša dipakane mo"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Ga o na ditokelo tša go laolla difaele mo"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Ga o na ditokelo tša go ngwala godimo ga difaele mo"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Ga o na ditokelo tša go laolla difaele tše mpsha mo"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Ga o na ditokelo tša go mpshafatša difaele mo"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Ga o na ditokelo tša go neela difaele mo"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Ga o na ditokelo tša go lokiša dikabelo mo"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Ga o na ditokelo tša go fetoša diphetolelo mo"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Ga o na ditokelo tša go šišinya diphetošo mo"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Ga o na ditokelo tša go boeletša ditšhišinyo mo"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d e fetoletšwe\n"
+"(%d ga di na selo, %d ga di a hlaka)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: e fetolela %s go %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Ya mathomo"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Phetolelo"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+#, fuzzy
+msgid "Translator comments"
+msgstr "Ditlhaloso tša mofetoledi"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Ditlhaloso tša motšweletši"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Tswalanego"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Sehlopha sa mafelelo"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Kgotla mo gore o boele go tšhupaditeng"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Mathomo"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d e fetilego"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Dilo tše %d go ya go %d tša %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d e latelago"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Bofelo"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "go lekola %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Ga go na dilo tšeo di swanago le nyako yeo ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "O feditše go lebelela dilo tšeo o di kgethilego"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Botee"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Bontši"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Lokiša"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopiša"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Taboga"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Morago"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "IÅ¡a"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Godiša"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Hunyetša"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Sebopego sa Bontši %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Phetolelo ga e kgonege ka gobane tshedimošo ya bontši ga e hwetšagale ka "
+"leleme la gago. Hle ikgokaganye le molaodi wa saete."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Phetolelo ya Gona bjale:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Tšhišinyo ya bo-%d ka %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Tšhišinyo ya bo-%d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Tšhišinyo ka %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Tšhišinyo:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "O swanetše go fana ka lentšuphetišo la bonyenyane ditlhaka tše %d."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Lentšuphetišo ga le swane le tiišetšo."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "Leina la modiriši"
+
+#: users.py:68
+#, fuzzy
+msgid "Password:"
+msgstr "Lentšuphetišo"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "Maleme"
+
+#: users.py:71
+msgid "Login"
+msgstr "Tsena"
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "Maleme"
+
+#: users.py:196
+#, fuzzy
+msgid "Home page"
+msgstr "Letlakala la Gae"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Amogela"
+
+#~ msgid "Reject"
+#~ msgstr "Gana"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Projeke ya Phetolelo ya WordForge"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/pa/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/pa/jToolkit.po
new file mode 100644
index 0000000..614bd6e
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/pa/jToolkit.po
@@ -0,0 +1,144 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-04-12 14:01+0200\n"
+"Last-Translator: A S Alam <apbrar@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.11\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s ਲਈ ਦਾਖਲਾ"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ਇਹ ਕਾਰਵਾਈ ਰੱਦ ਕਰਕੇ ਨਵਾਂ ਅਜਲਾਸ ਆਰੰਭੋ"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ਇਸ ਕਾਰਵਾਈ ਪà©à¨¶à¨Ÿà©€ ਕਰਨ ਦੀ ਬਜਾਠਬਾਹਰ ਜਾਓ ਅਤੇ ਸ਼à©à¨°à©‚ ਤੋਂ ਸ਼à©à¨°à©‚ ਕਰੋ"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "ਕਾਰਜ ਬੰਦ ਕਰੋ"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "ਇਸ ਕਾਰਜ ਨੂੰ ਬੰਦ ਕਰੋ ਅਤੇ ਮà©à©±à¨¢à¨²à¨¾ ਕਾਰਜ ਵਰਤੋਂ"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", ਕਿਰਪਾ ਕਰਕੇ ਦਾਖਲੀ ਦੀ ਪà©à¨¶à¨Ÿà©€ ਕਰੋ"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ਦਾਖਲਾ"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "ਉਪਭੋਗੀ ਨਾਂ:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "ਗà©à¨ªà¨¤-ਕੋਡ:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "ਬੋਲੀ:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "ਕਾਰਜ ਚà©à¨£à©‹"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "ਬਾਹਰੀ ਦਰ"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "ਬਾਹਰ"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b> ਦੇ ਤੌਰ ਤੇ ਲਾਗਿੰਨ"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "ਨਵਾਂ ਅਜਲਾਸ ਸ਼ਾਮਲ ਨਹੀਂ ਹੋ ਸਕਿਆ"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "ਬਾਹਰ ਹੋ"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "ਜà©à©œà¨¿à¨†"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "ਖਤਮ ਮà©à©±à¨¢à¨²à¨¾ ਅਜਲਾਸ"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "ਸਰਵਰ ਸੰਰਚਨਾ ਉੱਤੇ ਉਪਭੋਗੀ ਜਾਂ ਉਪਭੋਗੀ ਪਸੰਦ ਦੇਣ ਦੀ ਲੋੜ ਹੈ।"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "ਉਪਭੋਗੀ ਮੌਜੂਦ ਨਹੀਂ ਹੈ (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ਗਲਤ ਉਪਭੋਗੀ ਨਾਂ ਅਤੇ/ਜਾਂ ਗà©à¨ªà¨¤-ਕੋਡ"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "ਦਾਖਲਾ ਪà©à¨¶à¨Ÿà©€ ਅਸਫਲ"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "ਨਹੀਂ"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "ਹਾਂ"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "ਹਟਾਓ"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ਕੋਈ ਨੱਥੀ ਨਹੀ)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "ਨੱਥੀ ਬਹà©à¨¤ ਵੱਡਾ ਹੈ"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ਇਹ ਨੱਥੀ ਹਟਾਓ"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "ਮà©à©œ ਪà©à¨°à¨¾à¨ªà¨¤"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ਇਸ ਨੱਥੀ ਨੂੰ ਹਟਾ ਦਿੱਤਾ ਗਿਆ ਹੈ। ਮà©à©œ-ਪà©à¨°à¨¾à¨ªà¨¤ ਕਰਨ ਲਈ ਦਬਾਓ।"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ਫਾਇਲ ਨੱਥੀ ਕਰੋ"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "ਸਰਵਰ ਸੰਰਚਨਾ ਤੇ ਉਪਭੋਗੀ ਦੇਣ ਦੀ ਲੋੜ ਹੈ"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/pa/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/pa/pootle.po
new file mode 100644
index 0000000..e8bb497
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/pa/pootle.po
@@ -0,0 +1,1443 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-04-12 14:15+0200\n"
+"Last-Translator: A S Alam <apbrar@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.11\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "ਪੌਟਲੀ ਡੈਮੋ"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "ਘਰ"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "ਉਪਭੋਗੀ"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "ਭਾਸ਼ਾਵਾਂ"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "ਪà©à¨°à©‹à¨œà©ˆà¨•à¨Ÿ"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "ਆਮ ਚੋਣਾਂ"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "ਚੋਣਾਂ"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "ਮà©à©±à¨– ਸਫ਼ਾ"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "ਪੂਰਾ ਨਾਂ"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+#, fuzzy
+msgid "Remove Language"
+msgstr "%s ਬੋਲੀ"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+#, fuzzy
+msgid "Remove Project"
+msgstr "ਪà©à¨°à©‹à¨œà©ˆà¨•à¨Ÿ"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "ਉਪਭੋਗੀ ਨਾਂ"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "ਈ-ਮੇਲ ਸਿਰਨਾਵਾਂ"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "ਈਮੇਲ ਇੱਥੇ ਜੋੜੋ"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "ਗà©à¨ªà¨¤-ਕੋਡ"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+#, fuzzy
+msgid "Activated"
+msgstr "ਸਰਗਰਮ"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"ਨਾਂ ਇਸਤਰਾਂ ਹੈ<b>PO</b>-ਆਧਾਰਤ<b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, ਪਰ ਤà©à¨¸à©€à¨‚ <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">ਇਹ</a> ਵੀ ਵੇਖ ਸਕਦੇ ਹੋ।\t"
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "ਪਰਸ਼ਾਸ਼ਨ"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "%s ਬੋਲੀ"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "ਖੋਜ"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "ਉੱਤੇ ਲਿਖੋ"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO ਫਾਇਲ"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts ਫਾਇਲ"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV ਫਾਇਲ"
+
+#: indexpage.py:748
+#, fuzzy
+msgid "MO file"
+msgstr "PO ਫਾਇਲ"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "ਕਮਿਟ"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+#, fuzzy
+msgid "Untranslated"
+msgstr "ਅਨà©à¨µà¨¾à¨¦"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "ਚੈਕ ਵੇਖਾਓ"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "ਚੈਕ ਓਹਲੇ"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "ਸਮੀਖਿਆ ਸà©à¨à¨¾à¨…"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "ਸà©à¨à¨¾à¨… ਵੇਖੋ"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "ਤੇਜ਼ ਅਨà©à¨µà¨¾à¨¦"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "ਨਾ-ਅਨà©à¨µà¨¾à¨¦à¨¿à¨¤ à¨à¨¾à¨¤à©€"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "ਸਭ ਅਨà©à¨µà¨¾à¨¦à¨¿à¨¤"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+#, fuzzy
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d ਸਤਰਾਂ (%d%%) ਅਸਫਲ"
+
+#: indexpage.py:1003
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d ਸਤਰਾਂ (%d%%) ਅਨà©à¨µà¨¾à¨¦à¨¤"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+#, fuzzy
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d ਸਤਰਾਂ (%d%%) ਅਨà©à¨µà¨¾à¨¦à¨¤"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "ਸਭ ਪà©à¨°à©‹à¨œà©ˆà¨•à¨Ÿ"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "ਸਭ ਭਾਸ਼ਾਵਾਂ"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "ਮੇਰਾ ਖਾਤਾ"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "ਦਸਤਾਵੇਜ਼ ਅਤੇ ਮੱਦਦ"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "ਲਾਗਆਉਟ"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "ਲਾਗਇਨ"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "ਰਜਿਸਟਰ"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "ਸਰਗਰਮ"
+
+#: pagelayout.py:83
+#, fuzzy
+msgid "Pootle Logo"
+msgstr "ਪੌਟਲੀ ਡੈਮੋ"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "ਨਾਂਂ"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "ਅਨà©à¨µà¨¾à¨¦"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "ਫੀ-ਸਦੀ ਅਨà©à¨µà¨¾à¨¦"
+
+#: pagelayout.py:245
+#, fuzzy
+msgid "Translated words"
+msgstr "ਸਭ ਅਨà©à¨µà¨¾à¨¦à¨¿à¨¤"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+#, fuzzy
+msgid "Untranslated percentage"
+msgstr "ਨਾ-ਅਨà©à¨µà¨¾à¨¦à¨¿à¨¤ à¨à¨¾à¨¤à©€"
+
+#: pagelayout.py:251
+#, fuzzy
+msgid "Untranslated words"
+msgstr "ਨਾ-ਅਨà©à¨µà¨¾à¨¦à¨¿à¨¤ à¨à¨¾à¨¤à©€"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "ਕà©à©±à¨²"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "ਕà©à©±à¨² ਸ਼ਬਦ"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "ਗਰਾਫ਼"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "ਵੇਖੋ"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "ਸà©à¨à¨¾à¨…"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "ਅਨà©à¨µà¨¾à¨¦"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "ਰੀਵਿਊ"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "ਅਕਾਇਵ"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO ਫਾਇਲ ਕੰਪਾਇਲ ਕਰੋ"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "ਜਾਰੀ"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+#, fuzzy
+msgid "You do not have rights to alter goals here"
+msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਇੱਥੇ ਤਬਦੀਲੀਆਂ ਦੇਣ ਲਈ ਅਧਿਕਾਰ ਨਹੀਂ ਹਨ"
+
+#: projects.py:510
+#, fuzzy
+msgid "You do not have rights to upload files here"
+msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਇੱਥੇ ਤਬਦੀਲੀਆਂ ਦੇਣ ਲਈ ਅਧਿਕਾਰ ਨਹੀਂ ਹਨ"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਇੱਥੇ ਤਬਦੀਲੀਆਂ ਦੇਣ ਲਈ ਅਧਿਕਾਰ ਨਹੀਂ ਹਨ"
+
+#: projects.py:515
+#, fuzzy
+msgid "You do not have rights to upload new files here"
+msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਇੱਥੇ ਤਬਦੀਲੀਆਂ ਦੇਣ ਲਈ ਅਧਿਕਾਰ ਨਹੀਂ ਹਨ"
+
+#: projects.py:524
+#, fuzzy
+msgid "You do not have rights to update files here"
+msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਇੱਥੇ ਤਬਦੀਲੀਆਂ ਦੇਣ ਲਈ ਅਧਿਕਾਰ ਨਹੀਂ ਹਨ"
+
+#: projects.py:555
+#, fuzzy
+msgid "You do not have rights to commit files here"
+msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਇੱਥੇ ਤਬਦੀਲੀਆਂ ਦੇਣ ਲਈ ਅਧਿਕਾਰ ਨਹੀਂ ਹਨ"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+#, fuzzy
+msgid "You do not have rights to change translations here"
+msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਅਨà©à©à¨µà¨¾à¨¦ ਤਬਦੀਲ ਕਰਨ ਲਈ ਅਧਿਕਾਰ ਨਹੀਂ ਹੈ"
+
+#: projects.py:1229
+#, fuzzy
+msgid "You do not have rights to suggest changes here"
+msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਇੱਥੇ ਤਬਦੀਲੀਆਂ ਦੇਣ ਲਈ ਅਧਿਕਾਰ ਨਹੀਂ ਹਨ"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d ਅਨà©à¨µà¨¾à¨¦ ਹੋਈਆਂ\n"
+"(%d ਖਾਲੀ, %d ਅਸਪਸ਼ਟ)\t"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "ਪੌਟਲੀ: %s ਨੂੰ %s ਵਿੱਚੋਂ ਅਨà©à¨µà¨¾à¨¦: %s\t"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "ਅਸਲੀ"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "ਅਨà©à¨µà¨¾à¨¦"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "ਬੈਂਚ ਖਤਮ"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "ਸ਼à©à¨°à©‚"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d ਪਿੱਛੇ"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "ਇਕਾਈਆਂ %d , %d, %d ਵਿੱਚੋਂ"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "ਅੱਗੇ %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "ਅੰਤ"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s ਪੜਤਾਲ ਜਾਰੀ"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "ਖੋਜ ('%s') ਨਾਲ ਮੇਲ ਖਾਦੀ ਕੋਈ ਇਕਾਈ ਨਹੀਂ ਹੈ"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "ਤà©à¨¸à©€à¨‚ ਚà©à¨£à©€à¨†à¨‚ ਇਕਾਈਆਂ ਦੀ ਪੜਤਾਲ ਮà©à¨•à©°à¨®à¨² ਕਰ ਲਈ ਹੈ"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "ਸੋਧ"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "ਨਕਲ"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "ਛੱਡੋ"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "ਪਿੱਛੇ"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "ਭੇਜੋ"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "ਫੈਲਾਓ"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "ਮੌਜੂਦਾ ਅਨà©à¨µà¨¾à¨¦"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "ਸà©à¨à¨¾à¨… %d %s ਨੇ ਦਿੱਤਾ ਹੈ:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "%d ਸà©à¨à¨¾à¨…:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s ਰਾਹੀਂ ਸà©à¨à¨¾à¨…:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "ਸà©à¨à¨¾à¨…:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "ਪੌਟਲੀ ਲਈ ਲਾਗਇਨ"
+
+#: users.py:66
+msgid "Username:"
+msgstr "ਉਪਭੋਗੀ ਨਾਂ:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "ਗà©à¨ªà¨¤-ਕੋਡ:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "ਭਾਸ਼ਾ"
+
+#: users.py:71
+msgid "Login"
+msgstr "ਲਾਗਇਨ"
+
+#: users.py:77
+msgid "Default"
+msgstr "ਭਾਸ਼ਾ"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "ਕਿਰਪਾ ਕਰਕੇ ਆਪਣੀ ਰਜਿਸਟà©à¨°à©‡à¨¸à¨¨ ਵੇਰਵਾ ਦਿਓ"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "ਪੌਟਲੀ ਰਜਿਸਟà©à¨°à©‡à¨¶à¨¨"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "ਤà©à¨¹à¨¾à¨¡à¨¾ ਲੋੜੀਦਾ ਨਾਂ"
+
+#: users.py:125 users.py:429
+#, fuzzy
+msgid "You must supply a valid email address"
+msgstr "ਇੱਕ ਠੀਕ ਈ-ਪੱਤਰ ਸਿਰਨਾਵਾਂ ਚਾਹੀਦਾ ਹੈ"
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "ਤà©à¨¹à¨¾à¨¡à¨¾ ਮੰਗਿਆ ਗà©à¨ªà¨¤-ਕੋਡ"
+
+#: users.py:133 users.py:189
+#, fuzzy
+msgid "Confirm password"
+msgstr "ਤà©à¨¹à¨¾à¨¡à¨¾ ਮੰਗਿਆ ਗà©à¨ªà¨¤-ਕੋਡ"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+#, fuzzy
+msgid "Register Account"
+msgstr "ਖਾਤਾ ਸਰਗਰਮ"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "ਕਿਰਪਾ ਕਰਕੇ ਆਪਣਾ ਸਰਗਰਮ ਵੇਰਵਾ ਦਿਓ"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "ਪੌਟਲੀ ਸਰਗਰਮ ਕੋਡ"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "ਸਰਗਰਮ ਕੋਡ"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "ਸਰਗਰਮ ਕੋਡ, ਜੋ ਤà©à¨¸à©€à¨‚ ਪà©à¨°à¨¾à¨ªà¨¤ ਕੀਤਾ"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "ਖਾਤਾ ਸਰਗਰਮ"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "ਭਾਸ਼ਾਵਾਂ"
+
+#: users.py:196
+#, fuzzy
+msgid "Home page"
+msgstr "ਮà©à©±à¨– ਸਫ਼ਾ"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+#, fuzzy
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "ਸਰਗਰਮ ਕੋਡ"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+#, fuzzy
+msgid "Your password is: %s\n"
+msgstr "ਤà©à¨¹à¨¾à¨¡à¨¾ ਮੰਗਿਆ ਗà©à¨ªà¨¤-ਕੋਡ"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+#, fuzzy
+msgid "Activation Failed"
+msgstr "ਸਰਗਰਮ ਕੋਡ"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "ਮਨਜ਼ੂਰ"
+
+#~ msgid "Reject"
+#~ msgstr "ਨਾ-ਮਨਜ਼ੂਰ"
+
+#, fuzzy
+#~ msgid "WordForge Translation Project"
+#~ msgstr "<b>ਮੌਜੂਦਾ ਅਨà©à¨µà¨¾à¨¦:</b>"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "ਇੱਕ ਠੀਕ ਈ-ਪੱਤਰ ਸਿਰਨਾਵਾਂ ਚਾਹੀਦਾ ਹੈ"
+
+#~ msgid "Pootle"
+#~ msgstr "ਪੌਟਲੀ"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>ਪੌਟਲੀ</strong> ਇੱਕ ਸਧਾਰਨ ਵੈਬ ਆਧਾਰਤ ਪੋਰਟਲ ਹੈ, ਜੋ ਕਿ ਤà©à¨¹à¨¾à¨¨à©‚à©° <strong>ਅਨà©à¨µà¨¾à¨¦</"
+#~ "strong> ਕਰਨ ਲਈ ਸਹਾਇਕ ਹੈ!"
+
+#~ msgid "parent folder"
+#~ msgstr "ਮੋਢੀ ਫੋਲਡਰ"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">ਪà©à¨°à©‹à¨œà©ˆà¨•à¨Ÿ</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d ਫਾਇਲਾਂ, %d/%d ਸਤਰਾਂ (%d%%) ਅਨਵਾਦ ਹੋਈਆਂ"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "ਇਹ ਪੌਟਲੀ ਦਾ ਆਰਜ਼ੀ ਸਥਾਪਨ ਹੈ"
+
+#~ msgid "current folder"
+#~ msgstr "ਮੌਜੂਦਾ ਫੋਲਡਰ"
+
+#~ msgid "login status"
+#~ msgstr "ਲਾਗਿੰਨ ਸਥਿਤੀ"
+
+#~ msgid "project root"
+#~ msgstr "ਪà©à¨°à©‹à¨œà©ˆà¨•à¨Ÿ ਮà©à©±à¨¢(root)"
+
+#~ msgid "%d files, "
+#~ msgstr "%d ਫਾਇਲਾਂ,"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">ਭਾਸ਼ਾ</h3>"
+
+#~ msgid "current file"
+#~ msgstr "ਮੌਜੂਦਾ ਫਾਇਲ"
+
+#~ msgid "not logged in"
+#~ msgstr "ਦਾਖਲ ਨਹੀਂ"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/pap/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/pap/jToolkit.po
new file mode 100644
index 0000000..cf26939
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/pap/jToolkit.po
@@ -0,0 +1,148 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-09-16 20:26+0000\n"
+"Last-Translator: Urso Wieske <uwieske@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Login pa %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Kansela e akshon aki i start un seshon nobo"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Embes di konfirmá e akshón aki, log out i kuminsá fo'i kuminsamentu"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Sali fo'i aplikashón"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Sali for di e aplikashon aki i bai bek na e aplikashon mayo"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", porfabor konfirma login"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Login"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Nomber usuario:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Kódigo Sekreto"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Idioma"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Selekta Aplikashón"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Logout"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Salida"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "logged in komo <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "no por a agrega seshon nobo"
+
+# log out tambe por (?)
+#: web/session.py:214
+msgid "logged out"
+msgstr "logged out"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "konektá"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "a sali for di seshon koriente"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"mester defini a usuarionan o entry preferensha di usarios riba e "
+"konfigurashon di server"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "usuario no ta eksisti (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nomber usuario i/o password no ta eksisti"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "konfirmashon di login a faya"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "No"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Si"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "kita"
+
+# No proper translation found for attachement
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ningun attachment)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "attachment ta demasiado grandi"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "kita e attachment aki"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "reestablese"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "e attachment aki a wordu kita. klik aki pa reestables'é"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "aggrega un file"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/pap/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/pap/pootle.po
new file mode 100644
index 0000000..32a428f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/pap/pootle.po
@@ -0,0 +1,1401 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-16 20:41+0000\n"
+"Last-Translator: Urso Wieske <uwieske@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Home"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Usuarionan"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Idiomanan"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Proyektonan"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opshonnan General"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opshon"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Balor koriente"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Save kambionan"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Título"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Deskripshon"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Base URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Home Page"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pagina di Administrashon di Idiomanan di Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Pagina prinsipal di admin"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Kodigo di ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nomber kompleto"
+
+# doorgevoerd
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(agregá idioma aki)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Karakter speshal"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(karakternan speshal)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Konteo di Pluralnan"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(konteo di pluralnan)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Komparashon plural"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(komparashon plural)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Kita Idioma"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Kita %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle Proyectonan Admin Pagina"
+
+# doorgevoerd
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Kódigo di proyekto"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(aggrega proyekto aki)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Deskripshon di proyekto"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(deskripshon di proyekto)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Checker Style"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tipo di File"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Krea MO Filenan"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Kita Proyekto"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle Admin Page pa Usuario"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Username"
+
+# doorgevoerd
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(agregá nòmber kompletu aki)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Email Adres"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(agrega email aki)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Password"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(agrega password aki)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktivá"
+
+# doorgevoerd
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktivá Usuario Nobo"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Kita Usuario"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Bek pa pagina prinsipal"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Idiomanan eksistente"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Update Idiomanan"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle Admin: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Bo no tin derecho pa administra e proyekto aki."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Update for di template nan"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Agrega Idioma"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle Admin: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Home page di proyekto"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "No por a set derechonan di username %s- usuario no ta eksisti"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Esaki ta un GNU-style proyekto (un directory, filenan nombrá pa idioma)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Esaki ta un standard style proyekto (un directory pa idioma)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Permiso di Usuario"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(selekta pa agrega usuario)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Derechonan"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Kita"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Update derechonan"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Over Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Poole</strong> ta un simpel web portal ku mester permiti abo "
+"<strong>tradusí</strong>! Ya ku Pootle ta <strong>Free Software</strong>, bo "
+"mester por download e i draai bo mes kopia si bo ta prefera. Bo por yuda "
+"partisipa den desaroyo den diferente manera (bo no mester programa "
+"nesesariamente)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"E Pootle proyekto mes ta wordu di host na <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"kaminda bo por hanja e detayenan di source code, mailing listnan etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"E nomber ta para pa <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, pero bo por tin nesesidad pa lesa <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">esaki</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Vershonnan"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"E site aki ta draai:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />Element Tree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Pagina di Usuario pa: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Kambia opshonnan"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Pagina di Admin"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrá"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Quick Links"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Por fabor klik riba 'Kambia opshonnan' i selekta algun idioma i proyekto"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d proyekto, average %d%% tradusí"
+msgstr[1] "%d proyektonan, average %d%% tradusí"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Kodigo di Idioma"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nomber di Idioma"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d idioma, average %d%% tradusí"
+msgstr[1] "%d idiomanan, average %d%% tradusí"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Idioma"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Proyekto %s, Idioma %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Buska"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Buskeda avansa"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "E file no por wordu di upload, ningun file agregá"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Solamente PO files por wordu di upload i zips di PO files"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Designa Strings"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Designa Akshon"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Designa na Usuario"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "obgetivonan"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Fill in nomber di obgetivo"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Agrega Obgetivo"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Upload File"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Selekta file pa upload"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Remplasá"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Overwrite e file koriente si e ta eksisti"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Kombina"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Kombina e file ku e file koriente i hasi konfliktonan den sugerensianan"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "No ta den obgetivo"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Agrega Usuario"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO file"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF file"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts file"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV file"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO file"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Update"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Komprometé"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Tur Stringnan"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "No tradusí"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "No designá"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "N-designá i no-tradusí"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Set Obgetivo"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Selekta Mutilple"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Designa na"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Mustra Funshon di Editing"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Mustra Statistikanan"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Mustra Tracks"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Skonde Tracks"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Mustra Checks"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Skonde Checks"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Mustra Obgetivonan"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Skonde Obgetivonan"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Mustra Designashonnan"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Skonde Designashonnan"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Tur Obgetivonan: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Tradusi Mi Stringnan"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Mustra Mi Stringnan"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "No stringnan designa pa abo"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Tradusi Liher My Stringnan"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "No tin ningn string no tradusí designá na abo"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Revisa Sugerensianan"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Mustra Sugerensianan"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Quick Translate"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Mustra no tradusí"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "No tin puntonan no tradusí"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Tradusi tur"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP di obgetivo"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP di folder"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Genera SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d string (%d%%) a faya"
+msgstr[1] "%d stringnan (%d%%) a faya"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d palabranan (%d%%) designa"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d%d strings]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d palabranan (%d%%) tradusí"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Tur proyektonan"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Tur idiomanan"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mi account"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Docs i ayudo"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Log out"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Log in"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registra"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktiva"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle Logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Over di Pootle server"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Tur goals"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d filenan"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d file"
+msgstr[1] "%d filenan"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d strings"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nomber"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Tradusí"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Persentage tardusí"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Palabranan tradusí"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Fuzzy"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Persentage di Fuzzy"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Palabranan Fuzzy"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Persentage no-tradusí"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Palabranan no-tradusí"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Palabranan total"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafiko"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Kodigo fuente"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Kodigo destino"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Komentarionan"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Luganan"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Login a faya"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Redirecting pa login..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Mester login pa por hanja akseso na home page"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Detayenan personal a wordu updated"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Mester login pa por hanja akseso na admin page"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Redirecting pa home..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Bo no tin derechos pa administra pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Bista"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Suggerí"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Tradusí"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Revisá"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archívo"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompilá filenan PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Assigná"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "No por kita e \"nobody\" of e usadó \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Bo no tin derecho pa alterá metanan aki"
+
+# upload needs to be translated.
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Bo no tin derecho pa upload filenan aki"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Bo no tin derecho pa remplasa filenan aki"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Bo no tin derecho pa upload filenan nobo aki"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Bo no tin derecho pa update filenan aki"
+
+# komete ta tradukshon di e proverbio na ingles "to commit" ku ta koresponde ku e konteksto aki.
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Bo no tin derecho pa komete files nan aki"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Bo no tin derecho pa altera opdrachtnan aki"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Bo no tin derecho pa kambia tradukshonnan aki"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Bo no tin derecho pa sugeri kambionan aki"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Bo no tin derecho pa revisa sugerensianan aki"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d tradusí\n"
+"(%d blanku, %d fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: tradusiendo %s na %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Tradukshon"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Aksepta sugerensia"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Rechasa sugerensia"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Komentario di traduktor"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Komentarionan di developer"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Relatá"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Trahando..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Error: algu a bai robes."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Final di batch"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klik aki pa bai bek na e index"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Start"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Anterior %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Itemnan %d te %d di %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Sigiente %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fin"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "bezig ta check %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "No tin ningun itemnan mas ku ta match e buskeda ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Bo a kaba di repasa door di e itemnan ku bo a selekta"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singular"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plural"
+
+# Kambia tambe por ta un alternativa
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Edita"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopia"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Salta"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Bèk"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Sometí"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Krese"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Hasi chikí"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma plural %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Tradukshon no ta posibel pasombra informashon plural pa bo idioma no ta "
+"disponibel. Por fabor tuma kontakto ku e administrador di e site."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Tradukshon koriente:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Sugerensia: %d door di %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Sugerensia: %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Sugerensia door %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Sugerensia:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Bo mester suministra un password valido di pro lo menos %d karakternan."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "E password no ta e mesun kos ku e konfirmashon."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Login den Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Username:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Password:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Idioma:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Login"
+
+#: users.py:77
+msgid "Default"
+msgstr "Default"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Por fabor fill in detayenan di registrashon"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle Regsitrashon"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Bo a pdi username"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Bo mester suminstra n email adres valido"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Bo nomber kompleto"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Bo password deseá"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Konfirma password"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Type bo password atrobe pa sigura ku e ta filled in korekto"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registra Account"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Por fabor fill in bo detayenan di aktivashon"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle Aktivashon di Account"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Kodigo di Aktivashon"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "E kodigo di aktivashon ku bo a resibi"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktiva Account"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opshonnan pa: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Detayenan Personal"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Konfigurashon di Interface di Tradukshon"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Idioma di User Interface"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mi Proyektonan"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mi Idiomanan"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Home page"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Idioma alternativa di fuente"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Ningun"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Altura di Input(den linea)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Konteo di rei den view mode"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Konteo di rei den modo di tradukshon"
+
+#: users.py:307
+msgid "Error"
+msgstr "Eror"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Bo mester ta siteadmin pa kambia usuarionan"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Username mester ta alfanumériko, i mester kuminda ku un karakter di alfabet."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Bo (o otro hende) a purba di registra un account ku bo username.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Nos no ta warda bo password aktual pero solamente e hash version di djé.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Si bo tin un problema ku registrashon, por fabor tuma kontakto ku %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Si bo tin un problema ku registrashon, por fabor tuma kontakto ku e "
+"administrador di e site.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "E username ey ta eksisti kaba. Un email lo wordu mandá na e email adres "
+"regsitrá.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Avanzando pa <a href='%s'>login</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Un Pootle account a wordu kreá pa abo usando e email adres aki.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Pa aktiva bo account, usa e link aki:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Bo kodigo di aktivashon ta:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Si bo no por sigui e link aki, for fabor fill e kodigo eyriba den e pgina di "
+"aktivashon.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "E mensage aki ta wordu enviá pa verifika ku e email adres ta enberdad "
+"korekto. Si bo no ke registra un account, bo por simpelmente ignora e "
+"mensage aki.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Account kreá. Lo bo hanja via di un email detayenan di login i un kodigo "
+"aktivashon. Por fabor fill in obo kodigo di aktivashon den e <a "
+"href='%s'>pagina de aktvashon</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(O simpelmente klik riba e link di aktivashon den e email)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Bo username ta: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Bo password ta: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Bo email adres registrá ta: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Redirecting pa Pagina di Registrashon..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Redirecting pa Pagina di Login..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Bo account a wordu aktivá! Refirecting pa login..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "E informashon di aktivashon no tabata valido."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivashon a Faya"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Altura di Input mester ta numériko"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Hanchura di Input mester ta numériko"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "E kantidad di rei presenta den view mode mester ta numériko"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "E kantidad di rei presenta den translate mode mester ta numériko"
+
+#~ msgid "Accept"
+#~ msgstr "Aksepta"
+
+#~ msgid "Reject"
+#~ msgstr "Rechasa"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge Proyekto di Tradukshon "
diff --git a/Pootle-1.2.1/Pootle/po/pootle/pl/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/pl/jToolkit.po
new file mode 100644
index 0000000..37d14b3
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/pl/jToolkit.po
@@ -0,0 +1,153 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-01-31 23:48+0100\n"
+"Last-Translator: jo no soi marinero <SaimBaldOd4@tlen.pl>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.11rc\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Login dla %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Anuluj tÄ™ akcjÄ™ i rozpocznij nowÄ… sesjÄ™"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Zamiast potwierdzać tę akcję, wyloguj się i rozpocznij od początku"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Wyjdź z aplikacji"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Wyjdź z aplikacji i powróć do aplikacji macierzystej"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", potwierdź logowanie"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Logowanie"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Nazwa użytkownika:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Hasło:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Język:"
+
+#: web/server.py:551
+#: web/server.py:642
+msgid "Select Application"
+msgstr "Wybierz aplikacjÄ™"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Wyloguj siÄ™"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Wyjdź"
+
+#: web/session.py:191
+#: web/session.py:344
+#: web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "zalogowany jako <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "nie można dodać nowej sesji"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "wylogowany"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "połączony"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "zakończ macierzystą sesję"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "trzeba dopisać w konfiguracji serwera wpis dla użytkowników lub preferencji"
+
+#: web/session.py:321
+#: web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "użytkownik nie istnieje (%s)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nieprawidłowa nazwa użytkownika i/lub hasło"
+
+#: web/session.py:433
+#: web/session.py:437
+msgid "failed login confirmation"
+msgstr "potwierdzenie logowania nie powiodło się"
+
+#: widgets/form.py:79
+#: widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nie"
+
+#: widgets/form.py:80
+#: widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Tak"
+
+#: widgets/thumbgallery.py:233
+#: attachments.py:348
+msgid "remove"
+msgstr "usuń"
+
+#: widgets/thumbgallery.py:289
+#: attachments.py:322
+msgid "(no attachment)"
+msgstr "(brak załączników)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "załącznik jest zbyt duży"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "usuń ten załącznik"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "odtwórz"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ten załącznik został usunięty. kliknij tutaj aby go odtworzyć"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "załącz plik"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "należy zdefiniować pozycję users w konfiguracji serwera"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/pl/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/pl/pootle.po
new file mode 100644
index 0000000..e4dc760
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/pl/pootle.po
@@ -0,0 +1,1486 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-17 14:17+0000\n"
+"Last-Translator: M.T <hippie_1968@hotmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demonstracja Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Strona główna"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Użytkownicy"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Języki"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekty"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opcje ogólne"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opcja"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Wartość Obecna"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Zapisz zmiany"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Tytuł"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Opis"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Bazowy URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Strona główna"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Strona administracji jezyków"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Główna strona administracji"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Kod ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nazwa pełna"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(dodaj język)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Znaki specjalne"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(znaki specjalne)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Ilość form liczby mnogej"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(ilość form liczby mnogiej)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Równanie dla liczby mnogiej"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(równanie dla form liczby mnogiej)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Usuń język"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Usuń %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "strona amintracii projektów"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Kod projektu"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(dodaj projekt)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Opis projektu"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(opis projektu)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Sprawdzanie stylu"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Typ pliku"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Stwórz pliki .mo"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Usuń projekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "strona administracii użytkowników"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Nazwa użytkownika"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(w tym miejscu podaj pełne nazwisko)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Adres e-mail"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(w tym miejscu podaj e-mail)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Hasło"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(w tym miejscu podaj hasło)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktywowano"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktywacja nowego użytkownika"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Usuń użytkownika"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Wróć do strony głównej"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Istniejące języki"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Uaktualnij języki"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Administrator Pootle: %s %S"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Nie masz praw do administrowania tym projektem."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Aktualizacja z wzorów"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Dodaj język"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Administrator Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Strona główna projektu"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Nie można ustalić praw dla użytkownika %s - nie ma takiego użytkownika"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"To jest projekt w stylu GNU (tylko jeden folder, nazwy plików według nazw "
+"języka)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+"To jest projekt w stylu standardowym (oddzielny folder dla każdego języka)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Prawa użytkownika"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(wybierz aby dodać użytkownika)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Prawa"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Usuń"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Uaktualnij prawa"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "O Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> to prosty portal internetowy, który pozwoli Ci "
+"<strong>tłumaczyć</strong>! Pootle jest<strong>oprogramowaniem "
+"wolnodostępnym</strong>, i dlatego możesz go pobrać i zainstalować w swoim "
+"systemie. Możesz także na różne sposoby pomagać w jego rozwijaniu (nie "
+"musisz do tego umieć programować)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Projekt Pootle znajdziesz na <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> wraz "
+"ze szczegółami kodu źródłowego, listami dyskusyjnymi itd."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Nazwa tej aplikacji pochodzi od angielskiego rozszerzenia: <b>PO</b>-based "
+"<b>O</b>nline <b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine. Więcej "
+"informacji znajdziesz na <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">to</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Wersje"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Ta strona używa:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Python %s (na %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Strona Użytkownika dla: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Zmień opcje"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Strona administracji"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "ZarzÄ…dzaj"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Skróty:"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Kliknij na 'Zmień opcje' i wybierz języki oraz projekty"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekt, średnio %d%% przetłumaczono"
+msgstr[1] "%d projekty, średnio %d%% przetłumaczono"
+msgstr[2] "%d projektów, średnio %d%% przetłumaczono"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administracja"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Kod języka"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nazwa języka"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d język, średnio %d%% przetłumaczono"
+msgstr[1] "%d języki, średnio %d%% przetłumaczono"
+msgstr[2] "%d języków, średnio %d%% przetłumaczono"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Język"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "Pootle: projekt %s, język %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Szukaj"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Wyszukiwanie zaawansowane"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Nie można przesłać pliku - nie ma załącznika"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Możesz przesłać jedynie pliki .po albo pliki .zip zawierające pliki .po"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "przydzielenie stringów"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "przydzielenie akcji"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "przydzielenie dla użytkownika"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "cele"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Wpisz nazwÄ™ celu"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Dodaj cel"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Prześlij plik"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Wybierz plik do przesłania"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "ZastÄ…p"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Zastąp bieżący plik, jeśli istnieje"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "ZÅ‚Ä…cz"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "ZÅ‚Ä…cz plik z obecnym plikiem i przedstaw konflikty jako propozycje"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Poza celami"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Dodaj użytkownika"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Plik PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Plik .XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Plik .ts dla QT"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "plik CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "plik .mo"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Aktualizuj"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Wyślij"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Wszystkie napisy"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Nieprzetłumaczone"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Nieprzydzielone"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Nieprzydzielone i nieprzetłumaczone"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Ustaw cel"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Wybór wielokrotny"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Przydziel do"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Wyświetl funkcje edytorskie"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Pokaż statystyki"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Pokaż ślady"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Ukryj ślady"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Pokaż testy"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Ukryj testy"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Pokaż cele"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Ukryj cele"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Pokaż przydziały"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Ukryj przydziały"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Wszystkie cele: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "TÅ‚umacz Moje Napisy"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Pokaż Moje Napisy"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nie przydzielono Ci żadnych napisów"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Szybkie tłumaczenie moich napisów"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nie przydzielono Ci nieprzetłumaczonych napisów"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Oceń sugestie"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Zobacz sugestie"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Szybkie TÅ‚umaczenie"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Zobacz Nieprzetłumaczone"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Brak nieprzetłumaczonych pozycji"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Przetłumacz wszystko"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP celu"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP folderu"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Wygeneruj SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d napis (%d%%) błędny"
+msgstr[1] "%d napisy (%d%%) błędne"
+msgstr[2] "%d napisów (%d%%) błędnych"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d słów (%d%%) przydzielone"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d napisów]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d słów (%d%%) przetłumaczono"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Wszystkie projekty"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Wszystkie języki"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Moje konto"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumenty i Pomoc"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Wyloguj"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Zaloguj"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Zarejestruj siÄ™"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktywuj"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "O tym serwerze Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Wszystkie cele"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d pliki"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d plik"
+msgstr[1] "%d pliki"
+msgstr[2] "%d plików"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "[%d/%d napisów]"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nazwa"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Przetłumaczone"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Procent przetłumaczonych"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Słowa przetłumaczone"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Niepewne"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Procent niepewnych"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "SÅ‚owa niepewne"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Procent nieprzetłumaczonych"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Słowa nieprzetłumaczone"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Razem"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "SÅ‚owa razem"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Wykres"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Tekst źródłowy"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Tekst docelowy"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Komentarze"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Miejsca"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Logowanie nie powiodło się"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Przekierowanie do logowania..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Musisz się zalogować aby mieć dostęp do swojej strony startowej"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Dane osobiste zostały aktualizowane"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Musisz się zalogować aby mieć dostęp do strony administracyjnej"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Przekierowanie do strony startowej..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Nie masz praw administratora serwera pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Zobacz"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Proponuj"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "TÅ‚umacz"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Przejrzyj"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archiwuj"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompiluj pliki .po"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Przydziel"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Nie możesz usunąć użytkownika \"nikt\" albo \"domyślny\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Nie masz praw do zmian celów"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Nie masz praw do wgrywania plików"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Nie masz praw do zastępowania plików"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Nie masz praw do wgrywania nowych plików"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Nie masz praw do aktualizowania plików"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Nie masz praw do przesłania plików"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Nie masz praw do zmian przydziałów"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Nie masz praw do zmian tłumaczeń"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Nie masz praw do proponowania zmian"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Nie masz praw do przeglÄ…du propozycji"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d przetłumaczonych\n"
+"(%d nie przetłumaczonych, %d niepewnych)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: tłumaczenie %s na %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Oryginał"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "TÅ‚umaczenie"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Zaakceptuj sugestiÄ™"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Odrzuć sugestię"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Komentarz tłumacza"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Komentarz dewelopera"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "PowiÄ…zane"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "PracujÄ™..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Błąd: Coś poszło źle."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Koniec pliku zadań"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Kliknij tu aby wrócić do indeksu"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Start"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Poprzednie %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Pozycje od %d do %d z %d ogółem"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Następne %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Koniec"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "sprawdzanie %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Brak jest pozycji dla warunków wyszukiwania: ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Zakończono przechodzenie przez listę zaznaczonych pozycji"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "liczba pojedyncza"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "liczba mnoga"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Edytuj"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopiuj"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Pomiń"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Wróć"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Zatwierdź"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Zwiększ"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Zminiejsz"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma %d liczby mnogiej"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Tłumaczenie nie możliwe ponieważ definicja liczby mnogiej dla Twojego języka "
+"jest niedostępna. Skontaktuj się z administratorem."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "TÅ‚umaczenie obecne:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Sugestie %d od %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Sugestia %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Sugestia od %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Sugestia:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Musisz podać poprawne hasło nie krótsze niż %d znaków."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Hasło jest inne niż potwierdzenie."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Zaloguj siÄ™ do Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Nazwa użytkownika"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Hasło:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Język:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Zaloguj"
+
+#: users.py:77
+msgid "Default"
+msgstr "Domyślnie"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Wprowadź swoje dane"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Rejestracja Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Twoja nazwa użytkownika"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Musisz podać działający adres e-mail"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "ImiÄ™ i nazwisko"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Twoje hasło"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Powtórz hasło"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Wpisz hasło jeszcze raz aby upewnić się, że wprowadziłeś je poprawnie."
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Rejestruj Konto"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Wprowadź dane aktywacyjne"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Aktywacja konta Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Kod Aktywacyjny"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Otrzymany kod aktywacyjny"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktywuj Konto"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opcje dla: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Dane osobiste"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-mail"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Konfiguracja interfejsu tłumaczeń"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Język interfejsu"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Moje projekty"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Moje języki"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Strona główna"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternatywne źródło języka"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Żaden"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Ilość wierszy pola wprowadzania"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Ilość rzędów w trybie oglądania"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Ilość rzędów w trybie tłumaczenia"
+
+#: users.py:307
+msgid "Error"
+msgstr "BÅ‚Ä…d"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Muszisz być administratorem strony, aby zmienić użytkownika"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Nazwa użytkownika może zawierać tylko litery i cyfry oraz musi zaczynać się "
+"od litery."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Ty (lub ktoś inny) próbował zarejestrować konto z Twoją nazwą użytkownika.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Nie zapisujemy Twojego hasła w całości, a jedynie jego skrót.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Jeśli masz problem z rejestracją skontaktuj się z %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Jeśli masz problem z rejestracją skontaktuj się z administratorem serwisu.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Ta nazwa użytkownika już istnieje. E-mail zostanie wysłany na zarejestrowany "
+"adres.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Przejście do <a href='%s'>logowania</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Twoje Konto Pootle zostało utworzone używając tego adresu e-mail.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Aby aktywować swoje konto kliknij następujący link:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "Kod aktywacyjny"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Jeśli nie możesz kliknąć linka wpisz powyższy kod na stronie aktywacyjnej.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+"Ta wiadomość została wysłana aby sprawdzić czy podany adres e-mail jest "
+"poprawny. Jeśli nie chcesz rejestrować konta zignoruj tę wiadomość."
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Konto zostało utworzone. Otrzymasz e-mail ze szczegółami logowania i kodem "
+"aktywacyjnym. Wpisz swój kod aktywacyjny na <a href='%s'>stronie "
+"aktywacyjnej</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(lub kliknij w link aktywacyjny w e-mailu)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Twoja nazwa użytkownika: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Twoje hasło: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Twój zarejestrowany adres e-mail to: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Przekierowanie na StronÄ™ Rejestracji..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Przekierowanie na StronÄ™ Logowania..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Twoje konto zostało aktywowane! Przekierowuję do logowania..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Informacje do aktywowania były niepoprawne."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktywacja nie powiodła się"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Wysokość pola wprowadzania musi być liczbą"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Szerokość pola wprowadzania musi być liczbą"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Ilość wierszy wyświetlana w trybie przeglądania musi być liczbą"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Ilość wierszy wyświetlana w trybie tłumaczenia musi być liczbą"
+
+#~ msgid "Accept"
+#~ msgstr "Akceptuj"
+
+#~ msgid "Reject"
+#~ msgstr "Odrzuć"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Projekt tłumaczeń WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Poszerz"
+
+#~ msgid "Narrow"
+#~ msgstr "Zwęź"
+
+#~ msgid "Reset"
+#~ msgstr "Resetuj"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Pole powinno zawierać prawidłowy adres email"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Szerokość pola wprowadzania (w znakach)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> to prosty portal pozwalajÄ…cy na "
+#~ "<strong>tłumaczenie aplikacji</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "folder macierzysty"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projekty</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d plików, %d/%d ciągów znaków (%d%%) przetłumaczono"
+
+#~ msgid "%s language"
+#~ msgstr "język %s"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "to jest instalacja demonstracyjna pootle"
+
+#~ msgid "current folder"
+#~ msgstr "bieżący katalog"
+
+#~ msgid "Log In"
+#~ msgstr "Logowanie"
+
+#~ msgid "login status"
+#~ msgstr "status logowania"
+
+#~ msgid "project root"
+#~ msgstr "punkt startowy projektu"
+
+#~ msgid "%s project"
+#~ msgstr "%s projekt"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "nie masz odpowiednich praw, aby sugerować zmiany w tym miejscu"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "nie masz odpowiednich praw, aby zmienić tłumaczenie w tym miejscu"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d ciągów znaków (%d%%) przetłumaczonych"
+
+#~ msgid "%d files, "
+#~ msgstr "%d plików, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Języki</h3>"
+
+#~ msgid "current file"
+#~ msgstr "bieżący plik"
+
+#~ msgid "not logged in"
+#~ msgstr "nie zalogowany"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pootle - strona administratora"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Nie masz praw administracii pottla"
+
+#~ msgid "suggest"
+#~ msgstr "proponuj"
+
+#~ msgid "Input Width"
+#~ msgstr "Szerokość wkładu"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/pt/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/pt/jToolkit.po
new file mode 100644
index 0000000..ef93d25
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/pt/jToolkit.po
@@ -0,0 +1,146 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-04-20 01:36+0200\n"
+"Last-Translator: Pedro Bragança Tender <ptender@portasecreta.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.11\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Entrar para %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Cancelar esta acção e iniciar nova sessão"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Ao invés de confirmar esta acção, saia e comece de novo"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Sair da aplicação"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Sair desta aplicação e voltar para a aplicação de origem"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", por favor confirmar identificação"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Identificação"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Nome de utilizador:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Senha:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Idioma:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Selecione a aplicação"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Terminar sessão"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Sair"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "identificado como <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "não foi possível adicionar nova sessão"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "desligado"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "ligado"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "saiu da sessão de origem"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"precisa definir a entrada ou preferência de entrada de usuários na "
+"configuração do servidor"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "utilizador não existe (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nome de utilizador e/ou senha inválidos"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "falha na confirmação de identificação"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Não"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Sim"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "remover"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(nenhum anexo)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "anexo é muito grande"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "remover este anexo"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "restaurar"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "este anexo foi removido. clique aqui para restaurá-lo"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "anexar um ficheiro"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "precisa definir a entrada de usuários na configuração do seridor"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/pt/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/pt/pootle.po
new file mode 100644
index 0000000..08a9f1c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/pt/pootle.po
@@ -0,0 +1,1487 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-10-03 18:06+0000\n"
+"Last-Translator: Alexander Dupuy <alex.dupuy@mac.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demonstração do Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Início"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Utilizadores"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Idiomas"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projectos"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opções gerais"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opção"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Valor actual"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Guardar alterações"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Título"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Descrição"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL Base"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Página inicial"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Página de idiomas do Administrador do Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Página principal de administração"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Código ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nome Completo"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(adicionar idioma aqui)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Caracteres Especiais"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(caracteres especiais)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Número de Plurais"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(número de plurais)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Formação de Plural"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(formação de equação)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Remover Idioma"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Remover %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Padrão"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Página de Projetos do Administrador do Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Código do Projecto"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(adicionar projecto aqui)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Descrição do Projecto"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(descrição do projecto)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Estilo do Verificador"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tipo de ficheiro"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Criar Ficheiros MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Remover Projecto"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Página de Usuário do Administrador do Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Nome de utilizador"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(adicionar nome completo aqui)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Endereço de email"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(adicionar email aqui)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Senha"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(adicionar senha aqui)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Activado"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Activar Novo Utilizador"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Remover Utilizador"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Voltar à página principal"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Idiomas existentes"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Actualizar idiomas"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Administrador do Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Você não tem o direito de administrar este projeto."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Actualizar pelos modelos"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Adicionar idioma"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Administrador do Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Página inicial do projecto"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Não pode configurar permissões para o utilizador %s - o utilizador não "
+"existe"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Este é um projecto ao estilo GNU (uma pasta com ficheiros denominados tendo "
+"em conta o idioma)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Este é um projecto de estilo padrão (uma pasta por idioma)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Permissões do Utilizador"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(seleccionar para adicionar utilizador)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Permissões"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Remover"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Actualizar Permissões"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Sobre o Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> é um portal da internet simples que permite a você "
+"<strong>traduzir</strong>! Como o Pootle é um <strong>Programa "
+"Livre</strong>, você pode fazer download e correr a sua própria cópia se "
+"você quiser. Poderá também ajudar participando no seu desenvolvimento de "
+"muitas maneiras (você não precisa de saber programar)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"O projeto Pootle em si está alojado em <a "
+"href=\"http://translate.sourceforge.net/\">translate.souceforge.net</a> onde "
+"poderá encontrar detalhes sobre o código fonte, lista de correspondência "
+"etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"O nome significa <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, mas poderá precisar de ler <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">isto</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versões"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Este site está a correr:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kld %s<br />ElementTree %s<br />Python %s (em %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Página do Utilizador para: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Alterar opções"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Página do Administrador"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrar"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Links Rápidos"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Por favor clicar em 'Alterar opções' e selecione alguns idiomas e projetos"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d Projecto, média de %d%% traduzido"
+msgstr[1] "%d Projectos, média de %d%% traduzido"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administrador"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Código de Idioma"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nome do Idioma"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "Idioma %d, média de %d%% traduzido"
+msgstr[1] "Idiomas %d, média de %d%% traduzido"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Idioma"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projecto %s, Idioma %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Procurar"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Procura Avançada"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Não pode enviar arquivo, nenhum arquivo anexado"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Pode-se somente enviar arquivos PO e zips de ficheiros PO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Atribuir Strings"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Atribuir Acção"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Atribuir ao Utilizador"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "metas"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Introduza o nome da meta"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Adicionar meta"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Enviar Ficheiro"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Selecione o ficheiro para enviar"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Sobreescrever"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Sobreescrever o ficheiro actual se este existir"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Juntar"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Juntar o ficheiro com o ficheiro actual e tornar os conflitos em sugestões"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Não numa meta"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Adicionar utilizador"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Ficheiro PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Ficheiro XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Ficheiro QT .ts "
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Ficheiro CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Ficheiro MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Actualizar"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Submeter"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Todas as Frases"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Por traduzir"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Sem Designação"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Sem Designação e Tradução"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Configurar Meta"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Escolha Múltipla"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Designar a"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Mostrar Funções de Edição"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Mostrar Estatísticas"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Mostrar Caminhos"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Esconder Caminhos"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Mostrar Verificações"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Esconder Verificações"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Mostrar Metas"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Esconder Metas"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Mostrar Designações"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Esconder Designações"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Todas as Metas: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Traduzir as Minhas Frases"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Ver as Minhas Frases"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nenhuma frase lhe foi designada"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Traduzir Rápido as Minhas Frases"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nenhuma frase sem tradução lhe foi designada"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Rever Sugestões"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Ver Sugestões"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Tradução Rápida"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Ver Não Traduzidas"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Nenhum item sem tradução"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Traduzir tudo"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP da meta"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP do directório"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Gerar SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d frase (%d%%) falhou"
+msgstr[1] "%d frases (%d%%) falharam"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d palavras (%d%%) designadas"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d frases]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d palavras (%d%%) traduzidas"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Todos os Projectos"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Todos os idiomas"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "A minha conta"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Docs & ajuda"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Sair"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Identificação"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registar"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Activar"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logótipo do Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Sobre este servidor Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Todas as metas"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d ficheiros"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "ficheiro %d"
+msgstr[1] "ficheiros %d"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d frases"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nome"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Traduzido"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Percentagem traduzida"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Palavras traduzidas"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Tradução aproximada (fuzzy)"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Percentagem de traduções aproximadas (fuzzys)"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Palavras aproximadas (fuzzy)"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Percentagem não traduzida"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Palavras não traduzidas"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Total de palavras"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Gráfico"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Texto de Origem"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Texto de Destino"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Comentários"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Localizações"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Login falhou"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "A redireccionar para o login..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Precisa de fazer login para aceder á home page"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Foram actualizados os seus detalhes pessoais"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Precisa de fazer login para aceder à página de administração"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "A redireccionar para a home..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Você não tem permissões para gerir o pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Ver"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Sugerir"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Traduzir"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Rever"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arquivar"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Compilar ficheiros PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Atribuir"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Você não pode remover os utilizadores \"nobody\" ou \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Você não tem permissões para alterar metas aqui"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Você não tem permissões para enviar ficheiros aqui"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Você não tem permissões para sobreescrever ficheiros aqui"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Você não tem permissões para enviar novos ficheiros aqui"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Você não tem permissões para actualizar ficheiros aqui"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Você não tem permissões para submeter ficheiros aqui"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Você não tem permissões para alterar designações aqui"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Você não tem permissões para mudar traduções aqui"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Você não tem permissões para sugerir mudanças aqui"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Você não tem permissões para rever sugestões aqui"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d traduzidas\n"
+"(%d em branco, %d duvidosas)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: a traduzir %s para %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Tradução"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Aceitar sugestão"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Rejeitar sugestão"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Comentários do tradutor"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Comentários do programador"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Relacionado"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "A processar..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Erro: Algo correu mal"
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fim do lote de traduções"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Clique aqui para voltar para o índice"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Início"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d anteriores"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Itens %d para %d de %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Próximos %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fim"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "a verificar %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Nenhum item coincide com a busca ('%s') "
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Acabou de verificar todos os itens que seleccionou"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singular"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plural"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Editar"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Copiar"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Saltar"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Atrás"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Submeter"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Aumentar"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Encolher"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma Plural %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"A tradução não é possível porque não está disponível a informação de plural "
+"para o seu idioma. Por favor contacte o admnistrador do site."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Tradução Actual:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Sugestão %d por %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Sugestão %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Sugerido por %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Sugestão:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Tem de indicar uma senha válida com pelo menos %d caracteres."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "A senha não coincide com a confirmação"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Identificar-se no Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Nome de utilizador:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Senha:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Idioma:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Identificação"
+
+#: users.py:77
+msgid "Default"
+msgstr "Por omissão"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Por favor introduza os detalhes do seu registo"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Registo no Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "O seu nome de utilizador pretendido"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Tem de fornecer um endereço de email válido"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "O seu nome completo"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "A sua senha desejada"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Confirme a sua senha"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Introduza novamente a sua senha para verificação"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registar conta"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Por favor introduza os detalhes da sua activação"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Activação da conta Pootle "
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Código de activação"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "O código de activação que recebeu"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Activar Conta"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opções para: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Detalhes Pessoais"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Configuração da Interface de Tradução"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Idioma do Interface de Utilizador"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Meus Projectos"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Meus Idiomas"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Página inicial"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Idioma alternativo de origem"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Nenhum"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Altura da zona de escrita (em linhas)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Número de linhas no modo de visualização"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Número de linhas no modo de tradução"
+
+#: users.py:307
+msgid "Error"
+msgstr "Erro"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Você precisa de ser administrador do site para alterar utilizadores"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "O nome do utilizador é alfanumérico e tem que começar com uma letra."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Você (ou outra pessoa) tentou registar uma conta com o seu nome de "
+"utilizador.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Não guardamos a password mas apenas uma hash da mesma.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Se tiver algum problema com o registo, por favor contacte %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Se tiver algum problema com o registo, por favor contacte o administrador do "
+"site.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+"O nome de utilizador já existe. Será enviado um email para o endereço de "
+"email registado."
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "A prosseguir para o <a href='%s'>login</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Foi criada uma conta Pootle para si utilizando este endereço de email.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Para activar a sua conta, siga este link:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "O seu código de activação é:\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Se não poder seguir o link, por favor introduza o código acima na página de "
+"activação.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Esta mensagem é enviada para verificar que o endereço de email é de facto "
+"correcto. Se não queria registar uma conta, pode simplesmente ignorar a "
+"mensagem.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Conta criada. Ser-lhe-á enviado por email os detalhes de login e um código "
+"de activação. Por favor introduza o seu código de activação na <a "
+"href='%s'>página de activação</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Ou simplesmente clique no link de activação no email)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "O seu nome de utilizador é: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "A sua senha é: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "O seu endereço de email registado é: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "A Redireccionar para a Página de Registo..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "A redireccionar para a página de login..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "A sua conta foi activada! A redireccionar para o login..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "A informação de activação não era válida."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "A activação Falhou"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "A altura tem de ser um número"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "A largura tem de ser um número"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+"O número de linhas mostradas no modo de visualização tem de ser numérico"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "O número de linhas mostradas no modo de tradução tem de ser numérico"
+
+#~ msgid "Accept"
+#~ msgstr "Aceitar"
+
+#~ msgid "Reject"
+#~ msgstr "Rejeitar"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Projecto de Traduções WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Alargar"
+
+#~ msgid "Narrow"
+#~ msgstr "Estreitar"
+
+#~ msgid "Reset"
+#~ msgstr "Restaurar"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Tem de ser um endereço de email válido"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Largura da zona de escrita (em caracteres)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> é um simples portal internet que lhe "
+#~ "permite<strong>traduzir</strong>"
+
+#~ msgid "parent folder"
+#~ msgstr "pasta de origem"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projetos</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d arquivos, %d/%d frases (%d%%) traduzidos"
+
+#~ msgid "%s language"
+#~ msgstr "idioma %s "
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "esta é uma instalação demo do pootle"
+
+#~ msgid "current folder"
+#~ msgstr "diretório atual"
+
+#~ msgid "Log In"
+#~ msgstr "Identificação"
+
+#~ msgid "login status"
+#~ msgstr "status do login"
+
+#~ msgid "project root"
+#~ msgstr "Raíz do projeto"
+
+#~ msgid "%s project"
+#~ msgstr "projecto %s "
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "você não tem o direito de sugerir mudanças aqui"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "você não tem o direito de alterar traduções aqui"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d frases(%d%%) traduzidas"
+
+#~ msgid "%d files, "
+#~ msgstr "%d arquivos,"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Idiomas</h3>"
+
+#~ msgid "current file"
+#~ msgstr "arquivo atual"
+
+#~ msgid "not logged in"
+#~ msgstr "não identificado"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Página do Administrador do Pootle"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Você não tem o direito de administrar o Pootle."
+
+#~ msgid "suggest"
+#~ msgstr "sugerir"
+
+#~ msgid "Input Width"
+#~ msgstr "Digite a Largura"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/pt_BR/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/pt_BR/jToolkit.po
new file mode 100644
index 0000000..a920454
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/pt_BR/jToolkit.po
@@ -0,0 +1,147 @@
+# Brazilian Portuguese translation of jToolkit
+# Leonardo Ferreira Fontenelle <leo.fontenelle@gmail.com>, 2006-7.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: jToolkit\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-11-22 13:08+0000\n"
+"Last-Translator: Leonardo Ferreira Fontenelle <leonardof@gnome.org>\n"
+"Language-Team: Brazilian Portuguese <ldp-br@bazar.conectiva.com.br>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Efetuar login para %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Cancelar esta ação e iniciar nova sessão"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Ao invés de confirmar esta ação, efetuar logout e começar do zero"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Sair do aplicativo"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Sair do aplicativo e retornar para o aplicativo pai"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", favor confirmar login"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Efetuar login"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Nome de usuário:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Senha:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Idioma:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Selecione o aplicativo"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Efetuar logout"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Sair"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "Sessão de <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "não foi possível adicionar nova sessão"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "sessão encerrada"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "conectado"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "saiu da sessão pai"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "precisa definir a entrada de usuários ou preferências de usuários na configuração do servidor"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "usuário não existe (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nome de usuário e/ou senha inválido"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "falha em confirmar o login"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Não"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Sim"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "remover"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(nenhum anexo)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "anexo é muito grande"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "remover este anexo"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "restaurar"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "este anexo foi removido. clique aqui para restaurá-lo"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "anexar um arquivo"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "precisa definir a entrada de usuários na configuração do seridor"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/pt_BR/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/pt_BR/pootle.po
new file mode 100644
index 0000000..1d57f1f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/pt_BR/pootle.po
@@ -0,0 +1,1497 @@
+# Brazilian Portuguese translation of Pootle
+# Leonardo Ferreira Fontenelle <leonardof@gnome.org>, 2006-2008
+# Alexander Dupuy <alex.dupuy@mac.com>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: pootle 0.11\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-11-22 13:05+0000\n"
+"Last-Translator: Leonardo Ferreira Fontenelle <leonardof@gnome.org>\n"
+"Language-Team: Brazilian Portuguese <ldp-br@bazar.conectiva.com.br>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demonstração do Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Início"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Usuários"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Idiomas"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projetos"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opções gerais"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opção"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Valor atual"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Salvar alterações"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Título"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Descrição"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL de base"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Página inicial"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Página de idiomas do Administrador do Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Página principal de administração"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Código ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nome Completo"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(adicionar idioma aqui)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Caracteres especiais"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(caracteres especiais)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Número de plurais"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(número de plurais)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Regra de plural"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(regra de plural)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Remover idioma"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Remover %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Padrão"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Página administração de projetos do Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Código do projeto"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(adicionar projeto aqui)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Descrição do projeto"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(descrição do projeto)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Estilo do verificador"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tipo de arquivo"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Criar arquivos MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Remover projeto"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Página de administração de usuários do Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Nome de usuário"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(adicionar nome completo aqui)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Endereço de e-mail"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(adicionar e-mail aqui)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Senha"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(adicionar senha aqui)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Ativado"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Ativar novo usuário"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Remover usuário"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Voltar à página principal"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Idiomas existentes"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Atualizar idiomas"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Administrador do Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Você não tem autorização para administrar este projeto."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Atualizar pelos modelos"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Adicionar idioma"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Administrador do Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Página inicial do projeto"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Não foi possível definir direitos para o nome de usuário %s — o usuário não "
+"existe"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Este é um projeto no estilo GNU (um diretório, arquivos nomeados pelo "
+"idioma)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Este é um projeto no estilo padrão (um diretório por idioma)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Permissões do usuário"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(selecione para adicionar usuário)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Permissões"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Remover"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Atualizar permissões"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Sobre o Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> é um portal web simples que lhe permite fazer "
+"<strong>tradução</strong>! Pootle é <strong>Software Livre</strong>: você "
+"pode baixá-lo e rodar sua própria cópia, se quiser. Você também pode ajudar "
+"no desenvolvimento de várias formas (não é necessário saber programar)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"O projeto do Pootle é hospedado em <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>, onde "
+"você pode encontrar detalhes sobre código-fonte, listas de discussão etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"O nome significa <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine (Mecanismo de Tradução/Localização On-line "
+"Basedo em PO), mas a idéia teve <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">origem em um seriado</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versões"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Este site usa:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit %s<br "
+"/>Kid %s<br />ElementTree %s<br />Python %s (para %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Página do usuário: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Alterar opções"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Página do administrador"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrar"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Links rápidos"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Favor clicar em 'Alterar opções' e selecionar alguns idiomas e projetos"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projeto, %d%% de tradução"
+msgstr[1] "%d projetos, %d%% de tradução"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administrador"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Código do idioma"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Nome do idioma"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d idioma, %d%% de tradução"
+msgstr[1] "%d idiomas, %d%% de tradução"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Idioma"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: projeto %s, idioma %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Pesquisar"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Pesquisa avançada"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Não foi possível enviar arquivo, nenhum arquivo anexado"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Só é possível enviar arquivos PO simples ou compactados"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Atribuir mensagens"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Atribuir ação"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Atribuir para usuário"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "metas"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Digite o nome da meta"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Adicionar meta"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Enviar arquivo"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Seleciona o arquivo a ser enviado"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Sobrescrever"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Sobrescreve o arquivo atual se existir"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Mesclar"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Mescla o arquivo com o arquivo atual, e transforma conflitos em sugestões"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Não numa meta"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Adicionar usuário"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Arquivo PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Arquivo XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Arquivo .ts QT"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Arquivo CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Arquivo MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Atualizar"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Submeter"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Todas as mensagens"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Não traduzidas"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Não atribuídas"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Nem traduzidas nem atribuídas"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Definir meta"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Selecionar múltiplos"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Atribuir para"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Mostrar funções de edição"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Mostrar estatísticas"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Mostrar caminhos"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Ocultar caminhos"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Mostrar verificações"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Ocultar verificações"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Mostrar metas"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Ocultar metas"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Mostrar atribuições"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Ocultar atribuições"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Todas as metas: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Traduzir minhas mensagens"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Ver minhas mensagens"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nenhuma mensagem atribuída a você"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Traduzir rápido minhas mensagens"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nenhuma mensagem não traduzida atribuída a você"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Revisar sugestões"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Ver sugestões"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Tradução rápida"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Ver não traduzidas"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Nenhum item sem tradução"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Traduzir tudo"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP da meta"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP do diretório"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Gerar SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d mensagem (%d%%) falhou"
+msgstr[1] "%d mensagens (%d%%) falharam"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d palavras (%d%%) atribuídas"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d mensagens]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d palavras (%d%%) traduzidas"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Todos os projetos"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Todos os idiomas"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Minha conta"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Documentação e ajuda"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Encerrar sessão"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Iniciar sessão"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registrar-se"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Ativar"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logomarca do Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Sobre este servidor Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Todas as metas"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d arquivos"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d arquivo"
+msgstr[1] "%d arquivos"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d mensagens"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nome"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Traduzidas"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Porcentagem de tradução"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Palavras traduzidas"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Tradução aproximada"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Porcentagem de tradução aproximada"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Palavras aproximadas"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Porcentagem sem tradução"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Palavras sem tradução"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Total de palavras"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Gráfico"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Texto de origem"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Texto de destino"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Comentários"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Localizações"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Falha ao iniciar sessão"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Redirecionando para tela de início de sessão..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "É necessário iniciar uma sessão para acessar a página inicial"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Detalhes pessoais atualizados"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "É necessário iniciar uma sessão para acessar a página de administração"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Redirecionando para a página inicial..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Você não tem permissão para administrar o Pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Visualizar"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Sugerir"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Traduzir"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Revisar"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arquivar"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Compilar arquivos PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Atribuir"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Você não pode remover os usuários \"nobody\" e \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Você não tem permissão para alterar metas aqui"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Você não tem permissão para enviar arquivos aqui"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Você não tem permissão para sobrescrever arquivos aqui"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Você não tem permissão para enviar novos arquivos aqui"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Você não tem permissão para atualizar arquivos aqui"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Você não tem permissão para submeter arquivos aqui"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Você não tem permissão para alterar atribuições aqui"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Você não tem permissão para alterar traduções aqui"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Você não tem permissão para sugerir alterações aqui"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Você não tem permissão para revisar sugestões aqui"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d traduzidas\n"
+"(%d em branco, %d aproximadas)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: traduzindo %s para %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Tradução"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Aceita a sugestão"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Rejeita a sugestão"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Comentários do tradutor"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Comentários do desenvolvedor"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Relacionado"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Processando..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Aconteceu algum erro."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fim do lote"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Clique aqui para voltar para o índice"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Início"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d anteriores"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Itens %d até %d de %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Próximos %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fim"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "verificando %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Nenhum item coincide com a pesquisa (\"%s\")"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Você acabou de verificar todos os itens que tinha selecionado"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singular"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plural"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Editar"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Copiar"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Pular"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Voltar"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Submeter"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Aumentar"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Diminuir"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma plural %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Não foi possível traduzir porque a informação sobre o plural em seu idioma "
+"não está disponível. Favor contatar o administrador do site."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Tradução atual:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Sugestão %d por %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Sugestão %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Sugerido por %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Sugestão:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "É necessário indicar uma senha válida de ao menos %d caracteres."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "A senha não é a mesma da confirmação."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Iniciar sessão no Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Nome de usuário:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Senha:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Idioma:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Iniciar sessão"
+
+#: users.py:77
+msgid "Default"
+msgstr "Padrão"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Favor digitar seus detalhes de registro"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Registo no Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Nome de usuário que está sendo solicitado"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Você deve fornecer um endereço de e-mail válido"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Seu nome completo"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Senha desejada"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Confirme a senha"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Digite sua senha novamente para garantir que tenha sido digitada "
+"corretamente"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registar conta"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Favor digitar seus detalhes de ativação"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Ativação da conta Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Código de ativação"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "O código de ativação que você recebeu"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Ativar conta"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opções para: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Detalhes pessoais"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-mail"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Configuração da interface de tradução"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Idioma da interface de usuário"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Meus projetos"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Meus idiomas"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Página inicial"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Idioma alternativo de origem"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Nenhum"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Altura do Campo de Texto (em linhas)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Número de linhas no modo de visualização"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Número de linhas no modo de tradução"
+
+#: users.py:307
+msgid "Error"
+msgstr "Erro"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Você precisa ser o administrador do site para alterar usuários"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"O nome de usuário deve ser alfanumérico, e deve começar com um caractere "
+"alfabético."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Você (ou outra pessoa) tentou registar uma conta com o seu nome de usuário.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Não armazenamos a senha, apenas um hash da mesma.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Se tiver algum problema com o registo, por favor contate %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Se tiver algum problema com o registo, por favor contate o administrador do "
+"site.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "O nome de usuário já existe. Será enviado um e-mail para o endereço de "
+"e-mail registrado.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Iniciando <a href='%s'>sessão</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Foi criada uma conta Pootle para si utilizando este endereço de e-mail.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Para ativar a sua conta, siga este link:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"O seu código de ativação é:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Se não puder seguir o link, favor digitar o código acima na página de "
+"ativação.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Esta mensagem é enviada para verificar que o endereço de e-mail seja de fato "
+"correto. Se não quiser registar uma conta, pode simplesmente ignorar a "
+"mensagem.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Conta criada. Os detalhes da conta e um código de ativação serão enviados "
+"para seu endereço de e-mail. Favor introduzir o seu código de ativação na <a "
+"href='%s'>página de ativação</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Ou simplesmente clique no link de ativação no e-mail)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Seu nome de usuário é: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Sua senha é: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Seu endereço de e-mail registado é: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Redirecionando para a página de registo..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Redirecionando para a página de início de sessão..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"Sua conta foi ativada! Redirecionando para a página de início de sessão..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "A informação de ativação não era válida."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Falha na ativação"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "A altura do campo de texto deve ser um número"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "A largura do campo de texto deve ser um número"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+"O número de linhas exibidas no modo de visualização deve conter apenas "
+"algarismos"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+"O número de linhas exibidas no modo de tradução deve conter apenas "
+"algarismos"
+
+#~ msgid "Accept"
+#~ msgstr "Aceitar"
+
+#~ msgid "Reject"
+#~ msgstr "Rejeitar"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Projeto de Tradução WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Alargar"
+
+#~ msgid "Narrow"
+#~ msgstr "Estreitar"
+
+#~ msgid "Reset"
+#~ msgstr "Restaurar"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "É necessário que o endereço de e-mail seja válido"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Largura do Campo de Texto (em caracteres)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> é um simples portal internet que lhe "
+#~ "permite<strong>traduzir</strong>"
+
+#~ msgid "parent folder"
+#~ msgstr "pasta de origem"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projetos</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d arquivos, %d/%d frases (%d%%) traduzidos"
+
+#~ msgid "%s language"
+#~ msgstr "idioma %s "
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "esta é uma instalação demo do pootle"
+
+#~ msgid "current folder"
+#~ msgstr "diretório atual"
+
+#~ msgid "Log In"
+#~ msgstr "Identificação"
+
+#~ msgid "login status"
+#~ msgstr "status do login"
+
+#~ msgid "project root"
+#~ msgstr "Raíz do projeto"
+
+#~ msgid "%s project"
+#~ msgstr "projecto %s "
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "você não tem o direito de sugerir mudanças aqui"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "você não tem o direito de alterar traduções aqui"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d frases(%d%%) traduzidas"
+
+#~ msgid "%d files, "
+#~ msgstr "%d arquivos,"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Idiomas</h3>"
+
+#~ msgid "current file"
+#~ msgstr "arquivo atual"
+
+#~ msgid "not logged in"
+#~ msgstr "não identificado"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Página do Administrador do Pootle"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Você não tem o direito de administrar o Pootle."
+
+#~ msgid "suggest"
+#~ msgstr "sugerir"
+
+#~ msgid "Input Width"
+#~ msgstr "Digite a Largura"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ro/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ro/jToolkit.po
new file mode 100644
index 0000000..a9e1f7e
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ro/jToolkit.po
@@ -0,0 +1,145 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-09-04 20:36+0200\n"
+"Last-Translator: Alexandru Szasz <alexxed@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
+"20)) ? 1 : 2);\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Autentificare pentru %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Anulează această acţiune şi porneşte o nouă sesiune"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "În loc de confirmarea acestei acţiuni, ieşi şi porneşte de la început"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Părăsire aplicaţie"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Părăsiţi această aplicaţie şi întoarceţi-vă la aplicaţia părinte"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", vă rugăm confirmaţi autentificarea"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Autentificare"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Utilizator:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Parolă:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Limbă:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Selecţie aplicaţie"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "IeÅŸire"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "IeÅŸire"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "autentificat ca <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "nu se poate adăuga o nouă sesiune"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "deautentificat"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "conectat"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "s-a părăsit sesiunea părinte"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "trebuie definiţi utilizatorii sau preferinţele lor în configuraţia serverului"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "utilizatorul nu există (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "utilizator şi/sau parolă invalidă"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "eşuare la confirmarea autentificării"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nu"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Da"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "elimină"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(niciun ataÅŸament)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "ataÅŸamentul este prea mare"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "elimină acest ataşament"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "restaurează"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "acest ataşament a fost eliminat. clicaţi aici pentru a-l restaura"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ataşează un fişier"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ro/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ro/pootle.po
new file mode 100644
index 0000000..3675892
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ro/pootle.po
@@ -0,0 +1,1420 @@
+# Romanian translation of pootle.
+# Copyright (C) 2007 Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the Pootle package.
+# Alexandru Szasz <alexxed@gmail.com>, 2007.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Pootle 0.11\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-09-04 20:43+0200\n"
+"Last-Translator: Alexandru Szasz <alexxed@gmail.com>\n"
+"Language-Team: Romanian\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
+"20)) ? 1 : 2);\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demo Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Acasă"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Utilizatori"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Limbi"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Proiecte"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opţiuni generale"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opţiune"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Valoare curentă"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Salvează schimbările"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titlu"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Descriere"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL de bază"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Pagina de acasă"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Pagina principală de admin"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Cod ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Nume întreg"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(adaugă limbă aici)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Caractere speciale"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(caractere speciale)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Număr de plurale"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(numărul pluralelor)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Ecuaţie plural"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(ecuaţia pluralului)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Eliminare limbă"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Eliminare %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Cod proiect"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(adaugă proiect aici)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Descriere proiect"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(descrierea proiectului)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Verficator de stil"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tip fiÅŸier"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Creează fişiere MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Elimină proiect"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Utilizator"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(adaugă numele complet aici)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Adresă e-mail"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(adaugă adresa e-mail aici)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Parolă"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(adaugă parola aici)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Activat"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Activare utilizator nou"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Eliminare utilizator"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Înapoi la pagina principală"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Limbi existente"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Actualizează limbi"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Adminul Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Nu aveţi drepturi de administrare asupra acestui proiect."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Actualizează din modele"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Adaugă limbă"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Admin Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Pagina de acasă a proiectului"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Nu se pot seta drepturile pentru utilizatorul %s - utilizatorul nu există"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Acesta este un proiect în stil GNU (un director, fişiere numite per limbă)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Acesta este un proiect în stil standard (un director per limbă)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Permisiuni utilizator"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(selectaţi pentru adăugare utilizator)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Drepturi"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Eliminare"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Actualizare drepturi"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Despre Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> este un simplu portal web care ar trebui să vă "
+"permită să <strong>traduceţi</strong>! Pentru că Pootle este "
+"<strong>Software Liber</strong>, puteţi să-l descărcaţi şi să rulaţi propria "
+"copie dacă doriţi. Puteţi de asemenea să ajutaţi participând la dezvoltarea "
+"lui în multe feluri (nu trebuie să ştiţi programare)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Proiectul Pootle este găzduit la <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> unde "
+"puteţi găsi detalii despre codul sursă, listele de mail etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Numele provine de la „<b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngineâ€, dar aÅ£i putea citi <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">asta</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versiuni"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Acest sait rulează:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (pe %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Pagina utilizatorului pentru: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Schimbare opţiuni"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Pagină admin"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrează"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Legături rapide"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Vă rugăm clicaţi pe 'Schimbare opţiuni' şi alegeţi nişte limbi şi proiecte"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d proiect, tradus aproximativ %d%%"
+msgstr[1] "%d proiecte, tradus aproximativ %d%%"
+msgstr[2] "%d proiecte, tradus aproximativ %d%%"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Codul limbii"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Numele limbii"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d limbă, tradus în medie %d%%"
+msgstr[1] "%d limbi, traduse în medie %d%%"
+msgstr[2] "%d limbi, traduse în medie %d%%"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Limba"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Proiectul %s, Limba %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Căutare"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Nu se poate încărca fişierul, niciun fişier ataşat"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Se pot încărca doar fişiere PO şi arhive zip cu fişiere PO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Atribuie texte"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Atribuie acţiune"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Atribuie utilizatorului"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "obiective"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Introduceţi numele obiectivului"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Adăugare obiectiv"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Încarcă fişier"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Alegeţi fişierul de încărcat"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Suprascrie"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Suprascrie fişierul curent dacă există"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "UneÅŸte"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Uneşte fişierul cu fişierul curent şi transformă conflictele în sugestii"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Nu într-un obiectiv"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Adaugă utilizator"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "FiÅŸier PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "FiÅŸier XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "FiÅŸier Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "FiÅŸier CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "FiÅŸier MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Actualizează"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Comite"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Toate textele"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Netradus"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Neatribuite"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Neatribuite ÅŸi netraduse"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Setare Obiectiv"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Selecţie multiplă"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Atribuie către"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Arată funcţiile de editare"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Arată statistici"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Arată urmele"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Ascunde urmele"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Arată verificările"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Ascunde verificările"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Arată obiectivele"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Ascunde obiectivele"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Arată atribuirile"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Ascunde atribuirile"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Toate obiectivele: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Tradu textele mele"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Arată textele mele"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Niciun text atribuit dvs"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Tradu rapid textele mele"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Niciun text netradus atribuit dvs"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Recenzie sugestii"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Arată sugestiile"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Traducere rapidă"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Vezi netradus"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Niciun obiect netradus"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Tradu tot"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP obiectiv"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP dosar"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Generează SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d text (%d%%) a eÅŸuat"
+msgstr[1] "%d texte (%d%%) au eÅŸuat"
+msgstr[2] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d cuvinte (%d%%) atribuite"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d texte]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d cuvinte din %d (%d%%) traduse"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Toate proiectele"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Toate limbile"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Contul meu"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Ajutor"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "IeÅŸire"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Autentificare"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "ÃŽnregistrare"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Activare"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Sigla Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Despre acest server Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Toate scopurile"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d fiÅŸiere din %d"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fiÅŸier"
+msgstr[1] "%d fiÅŸiere"
+msgstr[2] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d texte din %d"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Nume"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Tradus"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Tradus în procente"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Cuvinte traduse"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Fuzzy"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Procentaj fuzzy"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Cuvinte fuzzy"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Netradus în procente"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Cuvinte netraduse"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Total"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Total cuvinte"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafic"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Autentificare eşuată"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Redirectare către login..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Este necesară autentificarea pentru a accesa pagina de acasă"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "S-au actualizat detaliile personale"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Este necesară autentificarea pentru a accesa pagina de admin"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Mergem acasă..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Nu aveţi dreptul de a administra pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Vedere"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Sugerează"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Tradu"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Recenzie"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arhivează"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Compilează fişiere PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Atribuie"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Nu puteţi elimina utilizatorul \"nobody\" sau \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Nu aveţi drepturi să alteraţi ţelurile aici"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Nu aveţi dreptul de a încărca fişiere aici"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Nu aveţi dreptul să comiteţi fişiere aici"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Nu aveţi dreptul să încărcaţi fişiere noi aici"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Nu aveţi dreptul să actualizaţi fişiere aici"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Nu aveţi dreptul să comiteţi fişiere aici"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Nu aveţi dreptul să alteraţi atribuţii aici"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Nu aveţi dreptul să modificaţi traduceri aici"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Nu aveţi dreptul să sugeraţi schimbări aici"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Nu aveţi dreptul să recenziaţi sugestii aici"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"tradus %d din %d\n"
+"(%d goale, %d fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: traducere %s în %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Traducere"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Comentariile traducătorului"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Comentariile dezvoltatorului"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Asociate"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Sfârşitul seriei"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Clicaţi aici pentru a vă întoarce la index"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Start"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Precedentele %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Obiecte de la %d la %d din %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Următoarele %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Capăt"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "se verifică %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Nu există rezultate pentru această căutare ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Aţi terminat de parcurs obiectele pe care le-aţi selectat"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singular"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Plural"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Editare"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Copiază"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Sari"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "ÃŽnapoi"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Postează"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Mărire"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "MicÅŸorare"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Formă plural %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Traducerea nu este posibilă deoarece informaţia despre pluralul folosit în "
+"limba dvs nu este disponibilă. Vă rugăm contactaţi administratorul saitului."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Traducerea curentă:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Sugestia %d de %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Sugestia %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Sugestie de %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Sugestie:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Trebuie să furnizaţi o parolă validă de cel puţin %d caractere."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Parola nu este aceeaÅŸi cu confirmarea parolei."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Intraţi în Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Utilizator:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Parolă:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Limbă:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Autentificare"
+
+#: users.py:77
+msgid "Default"
+msgstr "Implicit"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Vă rugăm introduceţi datele dvs de înregistrare"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "ÃŽnregistrare Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Numele de utilizator cerut de dvs"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Trebuie să furnizaţi o adresă validă de e-mail"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Numele dvs complet"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Parola pe care o doriţi"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Confirmaţi parola"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Tastaţi parola din nou pentru a vă asigura că e introdusă corect"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "ÃŽnregistrare cont"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Vă rugăm introduceţi datele dvs de activare"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Activare cont Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Cod de activare"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Codul de activare pe care l-aţi primit"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Activare cont"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opţiuni pentru: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Detalii personale"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-mail"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Configurarea interfeţei de traducere"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Limba intefeţei"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Proiectele mele"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Limbile mele"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Pagina de acasă"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Înălţimea căsuţelor (în linii)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Numărul de rânduri la vizualizare"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Numărul de rânduri la traducere"
+
+#: users.py:307
+msgid "Error"
+msgstr "Eroare"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Trebuie să fiţi admin de sait pentru a schimba utilizatorii"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Numele de utilizator trebuie să fie alfanumeric şi să înceapă cu o literă."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "S-a încercat înregistrarea unui cont cu numele dvs de utilizator de către "
+"dvs (sau de către altcineva).\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Nu vom stoca parola dvs, ci doar o încurcătură a ei.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Dacă aveţi probleme cu înregistrarea, vă rugăm contactaţi %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Dacă aveţi probleme cu înregistrarea, vă rugăm contactaţi administratorul "
+"saitului.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Numele de utilizator există deja. Va fi trimis un e-mail către adresa de "
+"e-mail înregistrată cu acest nume.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Mergem la <a href='%s'>autentificare</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "S-a creat un cont Pootle pentru dvs folosind această adresă de e-mail.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Pentru a activa contul dvs urmaţi această legătură:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Codul dvs de activare este:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Dacă nu puteţi urma legătura, vă rugăm introduceţi codul de mai sus în "
+"pagina de activare.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Acest mesaj este trimis pentru a verifica că adresa de e-mail este corectă. "
+"Dacă nu doriţi să înregistraţi un cont, puteţi pur şi simplu să ignoraţi "
+"mesajul.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Cont creat. Veţi primi un e-mail cu datele de autentificare şi codul de "
+"activare. Vă rugăm introduceţi codul dvs de activare pe <a href='%s'>pagina "
+"de activare</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Sau pur şi simplu clicaţi pe legătura de activare din e-mail)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Numele dvs de utilizator este: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Parola dvs este: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Adresa dvs de e-mail înregistrată este: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Redirectare la pagina de înregistrare..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Redirectare la pagina de autentificare..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Contul dvs a fost activat! Mergem la autentificare..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Informaţia pentru activare nu a fost validă."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Activarea a eÅŸuat"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Înălţimea căsuţelor trebuie să fie un număr"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Lăţimea căsuţelor trebuie să fie un număr"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Numărul de rânduri afişate la vizualizare trebuie să fie numeric"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Numărul de rânduri afişate la traducere trebuie să fie numeric"
+
+#~ msgid "Accept"
+#~ msgstr "Acceptă"
+
+#~ msgid "Reject"
+#~ msgstr "Respinge"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Proiectul de traducere WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Lăţire"
+
+#~ msgid "Narrow"
+#~ msgstr "ÃŽngustare"
+
+#~ msgid "Reset"
+#~ msgstr "Resetare"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Trebuie să fie o adresă e-mail validă"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Lăţimea căsuţelor (în caractere)"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ru/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ru/jToolkit.po
new file mode 100644
index 0000000..4cf13ac
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ru/jToolkit.po
@@ -0,0 +1,148 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-07-28 08:26+0200\n"
+"Last-Translator: Edmondas Girkantas <eg@bsd.lt>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 1.0.2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "ВвеÑти логин Ð´Ð»Ñ %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Отменить Ñту операцию и начать новую ÑеÑÑию"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ВмеÑто Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ñтой операции, завершить ÑеÑÑию и начать Ñ Ð½Ð°Ñ‡Ð°Ð»Ð°"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Завершить работу Ñ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸ÐµÐ¼"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Завершить работу Ñ Ñтим приложением и вернутьÑÑ Ð½Ð° уровень выше"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", пожалуйÑта подтвердите логин"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Войти"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Пароль:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Язык:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Выбрать Приложение"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Завершить ÑеÑÑию"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Выйти"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "вы вошли как <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "невозможно добавить новую ÑеÑÑию"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "ÑеÑÑÐ¸Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð°"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "подключен"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "завершена родительÑÐºÐ°Ñ ÑеÑÑиÑ"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"нужно определить пользователей или Ñлемент \"наÑтройки пользователÑ\" в "
+"конфиге Ñервера"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "пользователь не ÑущеÑтвует (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "неправильные Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸/или пароль"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "подтверждение логина не Ñовпадает Ñ Ð¾Ñ€Ð¸Ð³Ð¸Ð½Ð°Ð»Ð¾Ð¼"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ðет"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Да"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "удалить"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(нет вложений)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "вложение Ñлишком велико"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "удалить Ñто вложение"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "воÑÑтановить"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "Ñто вложение было удалено. нажмите здеÑÑŒ Ð´Ð»Ñ Ð²Ð¾ÑÑтановлениÑ"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "вложить файл"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr ""
+#~ "необходимо определить пользовательÑкие данные в конфигурации Ñервера"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ru/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ru/pootle.po
new file mode 100644
index 0000000..c67585f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ru/pootle.po
@@ -0,0 +1,1474 @@
+# Translation of pootle.po to Russian
+# Pavel Maryanov <acid_jack@ukr.net>, 2006.
+msgid ""
+msgstr ""
+"Project-Id-Version: pootle\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-11 09:40+0000\n"
+"Last-Translator: Timur Jamakeev <ztimur@gmail.com>\n"
+"Language-Team: Russian <ru@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Демо-верÑÐ¸Ñ Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "ДомашнÑÑ Ñтраница"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Пользователи"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Языки"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Проекты"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Общие наÑтройки"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "ÐаÑтройка"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Текущее значение"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Сохранить изменениÑ"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Ðазвание"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "ОпиÑание"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Базовый URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "ДомашнÑÑ Ñтраница"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Страница ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ñзыками"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Ð“Ð»Ð°Ð²Ð½Ð°Ñ Ñтраница админиÑтратора"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Код ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Ð˜Ð¼Ñ Ð¸ фамилиÑ"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(добавьте Ñзыки)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Специальные Ñимволы"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(Ñпециальные Ñимволы)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "ЧиÑло форм множеÑтвенного чиÑла"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(чиÑло форм множеÑтвенного чиÑла)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Выражение Ð´Ð»Ñ Ñ„Ð¾Ñ€Ð¼Ñ‹ множеÑтвенного чиÑла"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(выражение Ð´Ð»Ñ Ñ„Ð¾Ñ€Ð¼Ñ‹ множеÑтвенного чиÑла)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Удалить Ñзык"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Удалить %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Стандартный"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Страница ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ð°Ð¼Ð¸"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Код проекта"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(добавьте проект)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "ОпиÑание проекта"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(опиÑание проекта)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Стиль Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Тип файла"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Создать файлы MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Удалить проект"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Страница ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñми"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(добавьте Ð¸Ð¼Ñ Ð¸ фамилию)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "ÐÐ´Ñ€ÐµÑ Ñлектронной почты"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(добавьте Ð°Ð´Ñ€ÐµÑ Ñлектронной почты)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Пароль"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(добавьте пароль)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Ðктивирован"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Ðктивировать нового пользователÑ"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Удалить пользователÑ"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Ðазад на главную Ñтраницу"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "СущеÑтвующие Ñзыки"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Обновить Ñзыки"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "ÐдминиÑтратор Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸ÑÑ‚Ñ€Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñтого проекта."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Обновить из шаблонов"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Добавить Ñзык"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "ÐдминиÑтратор Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "ДомашнÑÑ Ñтраница проекта"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Ðевозможно уÑтановить права Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %s - нет такого пользователÑ"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Это проект в Ñтиле GNU (один каталог, файлы названы по Ñзыкам)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Это Ñтандартный проект (по каталогу на каждый Ñзык)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Права пользователÑ"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(выберите Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Права"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Удалить"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Обновить права"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "О проекте Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> - Ñто проÑтой веб-портал, который позволÑет "
+"заниматьÑÑ <strong>переводами</strong>! Так как Pootle ÑвлÑетÑÑ "
+"<strong>Ñвободным программным обеÑпечением</strong>, его можно Ñвободно "
+"загрузить и иÑпользовать. Также можно принÑÑ‚ÑŒ учаÑтие в его разработке "
+"любыми удобными Ð´Ð»Ñ Ð²Ð°Ñ ÑпоÑобами (и Ð´Ð»Ñ Ñтого вовÑе не обÑзательно уметь "
+"программировать)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Проект Pootle хоÑтитÑÑ Ð½Ð° Ñайте <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>. Ðа "
+"нём доÑтупны иÑходные текÑÑ‚Ñ‹, почтовые раÑÑылки и Ñ‚.п."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Ðазвание раÑшифровываетÑÑ ÐºÐ°Ðº <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine (ÑиÑтема Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ð¾Ð´Ð° "
+"и локализации, оÑÐ½Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ð½Ð° PO). Кроме того рекомендуетÑÑ Ð¾Ð·Ð½Ð°ÐºÐ¾Ð¼Ð¸Ñ‚ÑŒÑÑ Ñ "
+"<a href=\"http://www.thechestnut.com/flumps.htm\">Ñтой информацией</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "ВерÑии"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Ðа Ñайте иÑпользуютÑÑ:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (на %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Страница Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Изменить наÑтройки"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Страница админиÑтратора"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "ÐдминиÑтрировать"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "БыÑтрый переход"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Щёлкните на \"Изменить наÑтройки\" и выберите Ñзыки и проекты"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d проект, в Ñреднем переведено %d%%"
+msgstr[1] "%d проекта, в Ñреднем переведено %d%%"
+msgstr[2] "%d проектов, в Ñреднем переведено %d%%"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "ÐдминиÑтратор"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Код Ñзыка"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Ðазвание Ñзыка"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d Ñзык, в Ñреднем переведено %d%%"
+msgstr[1] "%d Ñзыка, в Ñреднем переведено %d%%"
+msgstr[2] "%d Ñзыков, в Ñреднем переведено %d%%"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Язык"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: проект %s, Ñзык %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "ПоиÑк"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "РаÑширенный поиÑк"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Ðе удаётÑÑ Ð²Ñ‹Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ файл, отÑутÑтвует прикреплённый файл"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Выгружать можно только PO-файлы или zip-архивы Ñ Ð½Ð¸Ð¼Ð¸"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Ðазначить Ñтроки"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Ðазначить дейÑтвие"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Ðазначить пользователю"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "задачи"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Введите название задачи"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Добавить задачу"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Выгрузить файл"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Выберите файл Ð´Ð»Ñ Ð²Ñ‹Ð³Ñ€ÑƒÐ·ÐºÐ¸"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "ПерезапиÑать"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "ПерезапиÑать ÑущеÑтвующий файл"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "СлиÑние"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "ПроизвеÑти ÑлиÑние файлов и пометить конфликты как предoлжениÑ"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ðе в задаче"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Добавить пользователÑ"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Файл РО"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Файл XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Файл .ts Ð´Ð»Ñ Qt"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Файл CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Файл MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Обновить"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Сохранить"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Ð’Ñе Ñтроки"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Ðе переведено"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ðе назначено"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ðе назначено и не переведено"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "УÑтановить задачу"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Выбрать неÑколько"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Ðазначить"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Показать функции редактированиÑ"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Показать ÑтатиÑтику"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Показать иÑторию"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Скрыть иÑторию"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Показать проверки"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Скрыть проверки"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Показать задачи"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Скрыть задачи"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Показать назначениÑ"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Скрыть назначениÑ"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Ð’Ñе задачи: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "ПеревеÑти Ñвои Ñтроки"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "ПроÑмотреть Ñвои Ñтроки"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Вам не назначены Ñтроки"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "БыÑтрый перевод Ñвоих Ñтрок"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Вам не назначены непереведённые Ñтроки"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "РаÑÑмотреть предложениÑ"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "ПроÑмотреть предложениÑ"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "БыÑтрый перевод"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "ПроÑмотреть не переведённое"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ðет не переведённых пунктов"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "ПеревеÑти вÑÑ‘"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP-архив Ñ Ð·Ð°Ð´Ð°Ñ‡ÐµÐ¹"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP-архив папки"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Создать SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d Ñтрока (%d%%) Ñбой"
+msgstr[1] "%d Ñтроки (%d%%) Ñбой"
+msgstr[2] "%d Ñтрок (%d%%) Ñбой"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d Ñлов (%d%%) назначено"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d Ñтрок]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d Ñлов (%d%%) переведено"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Ð’Ñе проекты"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Ð’Ñе Ñзыки"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "ÐœÐ¾Ñ ÑƒÑ‡Ñ‘Ñ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ Ð¸ Ñправка"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Выйти"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Войти"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "РегиÑтрациÑ"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Ðктивировать"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Логотип Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Об Ñтом Ñервере Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Ð’Ñе задачи"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d файлов"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d файл"
+msgstr[1] "%d файла"
+msgstr[2] "%d файлов"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d Ñтрок"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Ðазвание"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Переведено"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Переведено, в процентах"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Переведено Ñлов"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Ðеточно"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Ðечётко, в процентах"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Слов нечётко"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Ðе переведено, в процентах"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Ðе переведено Ñлов"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Ð’Ñего"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Ð’Ñего Ñлов"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "График"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "ИÑходный текÑÑ‚"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Целевой текÑÑ‚"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Комментарии"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "МеÑтонахождениÑ"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Ошибка аутентификации"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Перенаправление на Ñтраницу входа в ÑиÑтему..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Ð”Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð´Ð¾Ñтупа к домашней Ñтранице нужно войти в ÑиÑтему"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Личные данные обновлены"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Ð”Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð´Ð¾Ñтупа к Ñтранице админиÑтратора нужно войти в ÑиÑтему"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Перенаправление на домашнюю Ñтраницу..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸ÑÑ‚Ñ€Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Вид"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Предложить"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "ПеревеÑти"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "ПроÑмотр"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Ðрхивировать"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Компилировать файлы PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Ðазначить"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "ÐÐµÐ»ÑŒÐ·Ñ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ пользователей \"nobody\" или \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð·Ð°Ð´Ð°Ñ‡"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð²Ñ‹Ð³Ñ€ÑƒÐ·ÐºÐ¸ файлов"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿Ð¸Ñи файлов"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð²Ñ‹Ð³Ñ€ÑƒÐ·ÐºÐ¸ новых файлов"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ñ„Ð¸ÐºÑÐ¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ð¹"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿ÐµÑ€ÐµÐ²Ð¾Ð´Ð¾Ð²"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ñ€Ð°ÑÑÐ¼Ð¾Ñ‚Ñ€ÐµÐ½Ð¸Ñ Ð¿Ñ€ÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð¸Ð¹"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d переведённых\n"
+" (%d непереведённых, %d неточных)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: перевод %s на %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Оригинал"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Перевод"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "ПринÑÑ‚ÑŒ предложение"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Отклонить предложение"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Комментарии переводчика"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Комментарии разработчика"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "СвÑзанные"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Ð’ процеÑÑе..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Ошибка: что-то не так."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Конец пакета"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Щёлкните здеÑÑŒ Ð´Ð»Ñ Ð²Ð¾Ð·Ð²Ñ€Ð°Ñ‰ÐµÐ½Ð¸Ñ Ðº ÑпиÑку файлов"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Ðачало"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Предыдущие %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Элементы Ñ %d по %d из %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Следующие %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Конец"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "проверка %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Ðет Ñлементов, ÑоответÑтвующих поиÑку ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Ð’Ñ‹ прошли через вÑе выбранные Ñлементы"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "ЕдинÑтвенное чиÑло"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "МножеÑтвенный"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Изменить"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Копировать"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "ПропуÑтить"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Ðазад"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "ЗафикÑировать"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "РаÑÑ‚Ñнуть"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Выше"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Форма множеÑтвенного чиÑла %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Перевод невозможен, Ñ‚.к. нет данных о формах множеÑтвенного чиÑла Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ³Ð¾ "
+"Ñзыка. ОбратитеÑÑŒ к админиÑтратору Ñайта."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Текущий перевод:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Предложение %d от %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Предложение %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Предложение от %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Предложение:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Ðужно ввеÑти пароль длиной не менее %d Ñимволов."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Пароль не Ñовпадает Ñ Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸ÐµÐ¼."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Войти в Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Пароль:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Язык:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Логин"
+
+#: users.py:77
+msgid "Default"
+msgstr "По умолчанию"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Введите Ñвои региÑтрационные данные"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "РегиÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ð² Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Запрошенное Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Ðеобходимо указать дейÑтвительный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Ð˜Ð¼Ñ Ð¸ фамилиÑ"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Желаемый пароль"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Подтверждение паролÑ"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Введите пароль ещё раз, чтобы убедитьÑÑ Ð² правильноÑти ввода"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "ЗарегиÑтрировать учётную запиÑÑŒ"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Введите Ñвои данные Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð°Ñ†Ð¸Ð¸"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "ÐÐºÑ‚Ð¸Ð²Ð°Ñ†Ð¸Ñ ÑƒÑ‡Ñ‘Ñ‚Ð½Ð¾Ð¹ запиÑи Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Код активации"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Полученный код активации"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Ðктивировать учётную запиÑÑŒ"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "ÐаÑтройки длÑ: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Личные данные"
+
+#: users.py:186
+msgid "Email"
+msgstr "ÐÐ´Ñ€ÐµÑ Ñлектронной почты"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñа перевода"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Язык интерфейÑа пользователÑ"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Мои проекты"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Мои Ñзыки"
+
+#: users.py:196
+msgid "Home page"
+msgstr "ДомашнÑÑ Ñтраница"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Ðльтернативный иÑходный Ñзык"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Ðет"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Ð’Ñ‹Ñота Ð¿Ð¾Ð»Ñ Ð²Ð²Ð¾Ð´Ð° (в Ñтроках)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "КоличеÑтво Ñтрок в режиме проÑмотра"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "КоличеÑтво Ñтрок в режиме перевода"
+
+#: users.py:307
+msgid "Error"
+msgstr "Ошибка"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Ð”Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÐµÐ¹ необходимо иметь права админиÑтратора"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð¾Ð»Ð¶Ð½Ð¾ ÑоÑтоÑÑ‚ÑŒ только из букв и цифр и должно начинатьÑÑ Ñ "
+"буквы."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Ð’Ñ‹ (или кто-то другой) попыталиÑÑŒ зарегиÑтрировать учётную запиÑÑŒ Ñо Ñвоим "
+"логином.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Мы не ÑохранÑем у ÑÐµÐ±Ñ Ð¿Ð°Ñ€Ð¾Ð»Ð¸. ВмеÑто Ñтого мы храним Ñ…Ñши паролей.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "ЕÑли у Ð²Ð°Ñ Ð²Ð¾Ð·Ð½Ð¸ÐºÐ»Ð¸ проблемы Ñ Ñ€ÐµÐ³Ð¸Ñтрацией, ÑвÑжитеÑÑŒ Ñ %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "ЕÑли у Ð²Ð°Ñ Ð²Ð¾Ð·Ð½Ð¸ÐºÐ»Ð¸ проблемы Ñ Ñ€ÐµÐ³Ð¸Ñтрацией, ÑвÑжитеÑÑŒ Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратором "
+"Ñайта.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Пользователь Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже ÑущеÑтвует. Электронное пиÑьмо будет "
+"отправлено на зарегиÑтрированный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Переход на Ñтраницу <a href='%s'>входа в ÑиÑтему</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Ð”Ð»Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ð¾Ð³Ð¾ адреÑа Ñлектронной почты была Ñоздана ÑƒÑ‡Ñ‘Ñ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ Pootle.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Чтобы активировать учётную запиÑÑŒ, перейдите по Ñледующей ÑÑылке:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Код активации:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "ЕÑли вы не можете перейти по данной ÑÑылке, введите предÑтавленный выше код "
+"на Ñтранице активации.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Это пиÑьмо было отправлено Ñ Ñ†ÐµÐ»ÑŒÑŽ проверки работоÑпоÑобноÑти адреÑа "
+"Ñлектронной почты. ЕÑли вы не ÑобиралиÑÑŒ региÑтрировать учётную запиÑÑŒ, "
+"проÑто проигнорируйте Ñто пиÑьмо.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Ð£Ñ‡Ñ‘Ñ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ Ñоздана. Ðа ваш Ð°Ð´Ñ€ÐµÑ Ñлектронной почты было отправлено "
+"пиÑьмо Ñ Ð´Ð°Ð½Ð½Ñ‹Ð¼Ð¸ Ð´Ð»Ñ Ð²Ñ…Ð¾Ð´Ð° в ÑиÑтему и кодом активации. Введите Ñтот код на "
+"<a href='%s'>Ñтранице активации</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Или проÑто перейдите по указанной в пиÑьме ÑÑылке Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð°Ñ†Ð¸Ð¸)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Пароль: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "РегиÑтрационный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Перенаправление на Ñтраницу региÑтрации..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Перенаправление на Ñтраницу входа в ÑиÑтему..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"Ваша ÑƒÑ‡Ñ‘Ñ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ была активирована! Перенаправление на Ñтраницу входа в "
+"ÑиÑтему..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Ðеверные данные активации."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Сбой активации"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Ð’Ñ‹Ñота Ð¿Ð¾Ð»Ñ Ð²Ð²Ð¾Ð´Ð° должна быть чиÑловым значением"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Ширина Ð¿Ð¾Ð»Ñ Ð²Ð²Ð¾Ð´Ð° должна быть чиÑловым значением"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+"ЧиÑло Ñтрок, отображаемых в режиме проÑмотра, должно быть чиÑловым значением"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+"ЧиÑло Ñтрок, отображаемых в режиме перевода, должно быть чиÑловым значением"
+
+#~ msgid "Accept"
+#~ msgstr "ПринÑÑ‚ÑŒ"
+
+#~ msgid "Reject"
+#~ msgstr "ОтказатьÑÑ"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Проект переводов WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Шире"
+
+#~ msgid "Narrow"
+#~ msgstr "Уже"
+
+#~ msgid "Reset"
+#~ msgstr "СброÑ"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Должен быть дейÑтвующим адреÑом Ñлектронной почты"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Ширина Ð¿Ð¾Ð»Ñ Ð²Ð²Ð¾Ð´Ð° (в Ñимволах)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid "parent folder"
+#~ msgstr "папка на уровень выше"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Проекты</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d файл(ов), %d/%d Ñтрок (%d%%) переведены"
+
+#~ msgid "%s language"
+#~ msgstr "%s Ñзык"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "Ñто демонÑÑ‚Ñ€Ð°Ñ†Ð¸Ð¾Ð½Ð½Ð°Ñ Ð¸Ð½ÑталлÑÑ†Ð¸Ñ Pootle"
+
+#~ msgid "current folder"
+#~ msgstr "Ñ‚ÐµÐºÑƒÑ‰Ð°Ñ Ð¿Ð°Ð¿ÐºÐ°"
+
+#~ msgid "login status"
+#~ msgstr "ÑÑ‚Ð°Ñ‚ÑƒÑ Ð»Ð¾Ð³Ð¸Ð½Ð°"
+
+#~ msgid "project root"
+#~ msgstr "корень проекта"
+
+#~ msgid "%s project"
+#~ msgstr "%s проект"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "вы не имеете необходимых прав доÑтупа предложить Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð·Ð´ÐµÑÑŒ"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "вы не имеете необходимых прав доÑтупа заменить переводы здеÑÑŒ"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d Ñтрок(а/и) (%d%%) переведено"
+
+#~ msgid "%d files, "
+#~ msgstr "%d файл(а/ов),"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Языки</h3>"
+
+#~ msgid "current file"
+#~ msgstr "текущий файл"
+
+#~ msgid "not logged in"
+#~ msgstr "пользователь не зарегиÑтрирован"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/sk/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/sk/jToolkit.po
new file mode 100644
index 0000000..57287c1
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/sk/jToolkit.po
@@ -0,0 +1,148 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# mirek <mirek@host.sk>, 2007.
+# Ivan Masár <helix84@centrum.sk>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: jtoolkit\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-09-12 16:20+0100\n"
+"Last-Translator: Ivan Masár <helix84@centrum.sk>\n"
+"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Prihlásenie do %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ZruÅ¡iÅ¥ túto operáciu a zaÄaÅ¥ novú reláciu"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Namiesto potvrdenia tejto operácie sa odhláste a zaÄnite znova"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "UkonÄiÅ¥ aplikáciu"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "UkonÄite túto aplikáciu a vráťte sa do rodiÄovskej aplikácie"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", potvrÄte prosím prihlásenie"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Prihlásiť"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Používateľské meno:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Heslo:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Jazyk:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Výber aplikácie"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Odhlásiť"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "UkonÄiÅ¥"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "prihlásený ako <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "nie je možné pridať novú reláciu"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "odhlásený"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "pripojený"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "ukonÄená rodiÄovská relácia"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"je potrebné definovaÅ¥ položky users alebo userprefs v konfiguraÄnom súbore "
+"na serveri"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "používateľ neexistuje (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "neplatné používateľské meno a/alebo heslo"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "zlyhalo potvrdenie prihlásenia"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nie"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ãno"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "zmazať"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(žiadna príloha)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "príloha je príliš veľká"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "zmazať túto prílohu"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "obnoviť"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "táto príloha bola zmazaná. ak ju chcete obnoviť, kliknite tu"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "pripojiť súbor"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/sk/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/sk/pootle.po
new file mode 100644
index 0000000..5c78f32
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/sk/pootle.po
@@ -0,0 +1,1400 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# mirek <mirek@host.sk>, 2007.
+# Ivan Masár <helix84@centrum.sk>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: pootle\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-10-10 13:13+0200\n"
+"Last-Translator: Marek Mahut <mmahut@fedoraproject.org>\n"
+"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Domov"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Používatelia"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Jazyky"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekty"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Hlavné možnosti"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Možnosť"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Aktuálna hodnota"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Uložiť zmeny"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Názov"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Opis"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Základné URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Domovská stránka"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Hlavná stránka správy"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Kód ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Celé meno"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(tu vložte jazyk)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Špeciálne znaky"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(špeciálne znaky)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "PoÄet množných tvarov"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(poÄet tvarov množného Äísla)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Rovnica množných tvarov"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(rovnica tvarov množného Äísla)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Odstrániť jazyk"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Odstrániť %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Å tandard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Kód projektu"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(tu vložte projekt)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Opis projektu"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(opis projektu)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Å týl oznaÄovania"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Typ súboru"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Vytvoriť MO súbory"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Odstrániť projekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Používateľské meno"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(tu vložte celé meno)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "E-mailová adresa"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(tu vložte email)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Heslo"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(tu vložte heslo)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktivovaný"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktivovať nového používateľa"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Odstrániť používateľa"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Späť na hlavnú stránku"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Existujúce jazyky"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Aktualizovať jazyky"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Správca Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Nemáte dostatoÄné práva na správu tohto projektu."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Aktualizovať zo šablóny"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Pridať jazyk"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Správca Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Domovská stránka projektu"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Nie je možné nastaviť práva pre používateľa %s - používateľ neexistuje"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Toto je GNU Å¡týl projektu (jeden prieÄinok, súbory sú pomenované podľa "
+"jazyka)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Toto je Å¡tandardný Å¡týl projektu (pre každý jazyk jeden prieÄinok)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Práva používateľa"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(zvoľte pre pridanie používateľa)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Práva"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Zmazať"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Aktualizovať práva"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "O Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> je jednoduchý webový portál, ktorý umožňuje "
+"<strong>prekladaÅ¥</strong>! KeÄže je Pootle <strong>slobodný "
+"softvér</strong>, môžete si ho stiahnuť a prevádzkovať svoju vlastnú kópiu. "
+"Taktiež môžete rôzne pomôcÅ¥ podieľaním sa na ÄalÅ¡om vývoji (nemusíte vedieÅ¥ "
+"programovať)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle projekt je hosťovaný na <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> kde "
+"môžete nájsť viac informácií o zdrojovom kóde, mailing listoch a pod."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Názov je skratkou z <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, ale môžete si preÄítaÅ¥ aj <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">toto</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Verzie"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Tieto stránky používajú:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Stránka používateľa: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Zmeniť možnosti"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Stránka správcu"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Spravovať"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Rýchle odkazy"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Kliknite prosím na „Zmeniť možnosti“ a vyberte si nejaké jazyky a projekty"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekt, preložený v priemere na %d%%"
+msgstr[1] "%d projekty, preložené v priemere na %d%%"
+msgstr[2] "%d projektov, preložené v priemere na %d%%"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Správca"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Kód jazyka"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Názov jazyka"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d jazyk, preložený v priemere na %d%%"
+msgstr[1] "%d jazyky, preložené v priemere na %d%%"
+msgstr[2] "%d jazykov, preložené v priemere na %d%%"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Jazyk"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekt %s, jazyk %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Hľadať"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Súbor nie je možné nahrať, žiadny súbor nebol pripojený"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Nahrať je možné iba PO súbory a zip balíky PO súborov"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Priradiť reťazce"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "PriradiÅ¥ ÄinnosÅ¥"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Priradiť používateľovi"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "ciele"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Zadajte názov cieľa"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Pridať cieľ"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Nahrať súbor"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Zvoľte súbor pre nahranie"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Prepísať"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Prepísať aktuálny súbor ak existuje"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "ZlúÄiÅ¥"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "ZlúÄiÅ¥ súbor s aktuálnym súborom a z konfliktov vytvoriÅ¥ návrhy"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Nie je cieľom"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Pridať používateľa"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO súbor"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF súbor"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts súbor"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV súbor"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO súbor"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Aktualizovať"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Potvrdiť"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Všetky reťazce"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Nepreložené"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Nepriradené"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Nepriradené a nepreložené"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Nastaviť cieľ"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Vybrať viac"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Priradiť k"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Zobraziť funkcie úpravy"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Zobraziť štatistiku"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Zobraziť stopy"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Skryť stopy"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Zobraziť kontroly"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Skryť kontroly"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Zobraziť ciele"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Skryť ciele"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Zobraziť priradenia"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Skryť priradenia"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "VÅ¡etky ciele: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Preložiť moje reťazce"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Zobraziť moje reťazce"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nemáte priradené žiadne reťazce"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Rýchly preklad mojich reťazcov"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nemáte priradené žiadne nepreložené reťazce"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Prejsť návrhy"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Zobraziť návrhy"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Rýchly preklad"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Zobraziť nepreložené"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Žiadne nepreložené položky"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Preložiť všetko"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Vytvoriť ZIP súbor z cieľa"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "VytvoriÅ¥ ZIP súbor z prieÄinka"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Vygenerovať SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d reťazec (%d%%) zlyhal"
+msgstr[1] "%d reťazce (%d%%) zlyhali"
+msgstr[2] "%d reťazcov (%d%%) zlyhalo"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d slov (%d%%) priradených"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d reťazcov]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d slov (%d%%) preložených"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "VÅ¡etky projekty"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "VÅ¡etky jazyky"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Môj úÄet"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumentácia a pomocník"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Odhlásiť"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Prihlásiť"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registrovať"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktivovať"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "O tomto serveri Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "VÅ¡etky ciele"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d súborov"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d súbor"
+msgstr[1] "%d súbory"
+msgstr[2] "%d súborov"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d reťazcov"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Meno"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Preložené"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Preložené v percentách"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Preložené slová"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Nepresné"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Nepresné v percentách"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Nepresné slová"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Nepreložené v percentách"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Nepreložené slová"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Celkom"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Slov celkom"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graf"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Prihlásenie zlyhalo"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Presmerovanie na prihlásenie..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Aby ste sa dostali na domovskú stránku, potrebujete sa prihlásiť"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Osobné podrobnosti boli aktualizované"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Aby ste sa dostali na stránku správy, musíte sa prihlásiť"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Presmerovanie domov..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Nemáte dostatoÄné práva na spravovanie pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Zobraziť"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Navrhnúť"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Preložiť"
+
+# toto je fajn
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Skontrolovať"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archív"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Preložiť PO súbory"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Priradiť"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Nemôžete odstrániť používateľa „nobody“ alebo „default“"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Nemáte dostatoÄné práva pre zmenu cieľov"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Nemáte dostatoÄné práva pre nahrávanie súborov"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Nemáte dostatoÄné práva pre prepisovanie súborov"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Nemáte dostatoÄné práva pre nahrávanie nových súborov"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Nemáte dostatoÄné práva pre nahrávanie súborov"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Nemáte dostatoÄné práva pre commit súborov"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Nemáte dostatoÄné práva pre zmenu priradení"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Nemáte dostatoÄné práva pre zmenu prekladov"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Nemáte dostatoÄné práva pre navrhovanie zmien"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Nemáte dostatoÄné práva pre schaľovanie návrhov"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d preložených\n"
+"(%d nepreložených, %d nepresných)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: prekladá sa %s do %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Originál"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Preklad"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Komentáre prekladateľa"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Komentáre vývojára"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Súvisiace"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Koniec prezeraného zoznamu prekladu"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Tu kliknite pre návrat do indexu"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "ZaÄiatok"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Predchádzajúcich %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Položky od %d do %d z %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Ďalších %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Koniec"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "kontroluje sa %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Žiadna položka nevyhovuje hľadanému reťazcu („%s“)"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "UkonÄili ste prezeranie vaÅ¡ich položiek"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Jednotné Äíslo"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Množné Äíslo"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Upraviť"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopírovať"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "PreskoÄiÅ¥"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Späť"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Poslať"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "ZväÄÅ¡iÅ¥"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Zmenšiť"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Tvar množného Äísla %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Preklad nie je možný, pretože množné Äíslo pre váš jazyk nie je dostupné. "
+"Kontaktujte prosím správcu stránky."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Aktuálny preklad:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Návrh %d od %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Návrh %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Návrh od %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Návrh:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Musíte zadať platné heslo dlhé minimálne %d písmen."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Heslá sa nezhodujú."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Prihlásiť sa do Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Používateľské meno:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Heslo:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Jazyk:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Prihlásiť"
+
+#: users.py:77
+msgid "Default"
+msgstr "Predvolené"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Zadajte prosím vaše podrobnosti pre registráciu"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Registrácia do Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Vaše požadované používateľské meno"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Musíte zadať platnú e-mailovú adresu"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Vaše celé meno"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Vaše požadované heslo"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Potvrdiť heslo"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Zadajte svoje heslo znova, aby ste sa uistili, že je zadané správne"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "RegistrovaÅ¥ úÄet"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Zadajte prosím vaše podrobnosti pre aktiváciu"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Aktivácia úÄtu Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "AktivaÄný kód"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "AktivaÄný kód, ktorý ste prijali"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "AktivovaÅ¥ úÄet"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Možnosti pre: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Osobné podrobnosti"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-mail"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Nastavenie prekladateľského rozhrania"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Jazyk rozhrania používateľa"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Moje projekty"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Moje jazyky"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Domovská stránka"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Výška vstupu (v riadkoch)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "PoÄet riadkov v prehliadacom režime"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "PoÄet riadkov v prekladateľskom režime"
+
+#: users.py:307
+msgid "Error"
+msgstr "Jazyky"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Aby ste mohli upravovať používateľov, musíte byť správcom stránky"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Používateľské meno musí byÅ¥ alfanumerické a musí zaÄínaÅ¥ písmenom."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Vy (alebo niekto iný) sa pokúsil zaregistrovať s vašim používateľským menom.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Neukladáme vaše heslo, ale iba jeho haš.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Ak máte problém s registráciou, kontaktuje prosím %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Ak máte problém s registráciou, kontaktujte prosím správcu stránky.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Toto používateľské meno už existuje. Na zaregistrovanú adresu bude odoslaná "
+"e-mailová správa.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "PokraÄujte na <a href='%s'>prihlásenie</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Bol pre vás vytvorený úÄet Pootle s použitím tejto e-mailovej adresy.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Pre aktivovanie vášho úÄtu kliknite na tento odkaz:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Váš aktivaÄný kód je:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Ak nemôžete kliknúť na link, zadajte prosím aktivaÄný kód na aktivaÄnej "
+"stránke.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Táto e-mailová správa bola odoslaná pre overenie, že táto e-mailová adresa "
+"je v poriadku. Ak ste si neželali zaregistrovaÅ¥ úÄet, jednoducho túto správu "
+"ignorujte.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"ÚÄet bol vytvorený. E-mailom vám budú odoslané vaÅ¡e prihlasovacie informácie "
+"a aktivaÄný kód. AktivaÄný kód prosím zadajte na <a href='%s'>aktivaÄnej "
+"stránke</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Alebo jednoducho kliknite na odkaz pre aktiváciu v e-mailovej správe)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Vaše používateľské meno je: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Vaše heslo je: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Vaša zaregistrovaná e-mailová adresa je: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Presmerovanie na registraÄnú stránku..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Presmerovanie na prihlasovaciu stránku..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Váš úÄet bol aktivovaný! Presmerovanie na prihlásenie..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "AktivaÄné informácie sú neplatné."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivácia zlyhala"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Výška vstupu musí byÅ¥ Äíslo"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Šírka vstupu musí byÅ¥ Äíslo"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "PoÄet riadkov v prehliadacom režime musí byÅ¥ Äíslo"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "PoÄet riadkov v prekladateľskom režime musí byÅ¥ Äíslo"
+
+#~ msgid "Accept"
+#~ msgstr "Prijať"
+
+#~ msgid "Reject"
+#~ msgstr "Zamietnuť"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Prekladateľský projekt WordForge"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/sl/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/sl/jToolkit.po
new file mode 100644
index 0000000..0cb5ba5
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/sl/jToolkit.po
@@ -0,0 +1,146 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-07-18 13:30+0200\n"
+"Last-Translator: Gasper Zejn <zejn@kiberpipa.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
+"%100==4 ? 2 : 3);\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.9\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Prijava za %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Prikini to dejanje in zaÄni novo sejo"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Namesto potrditve dejanja se odjavi in zaÄni na novo"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "KonÄaj program"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "KonÄaj ta program in se vrni na nadrejeni program"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", prosimo potrdite prijavo"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Prijava"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Uporabniško ime:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Geslo:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Jezik:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Izberite program"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Odjava"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Izhod"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "prijavljen kot <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "ni bilo mogoÄe dodati nove seje"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "odjavljen"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "povezan"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "nadrejena seja je bila zapuÅ¡Äena"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"v strežniških nastavitvah je potrebno nastaviti 'users' ali 'userprefs' vnos"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "uporabnik ne obstaja (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "nepravilno uporabniško ime in/ali geslo"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "potrditev prijave je spodletela"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ne"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Da"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "odstrani"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(brez priponke)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "priponka je prevelika"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "odstrani to priponko"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "povrni"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ta priponka je bila odstranjena. kliknite tu, da jo povrnete"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "pripni datoteko"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "v strežniških nastavitvah je potrebno nastaviti 'users' vnos"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/sl/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/sl/pootle.po
new file mode 100644
index 0000000..adaf0a0
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/sl/pootle.po
@@ -0,0 +1,1492 @@
+# translation of pootle.po to SlovenÅ¡Äina
+# Robert Ludvik <r@aufbix.org>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: OpenOffice.org\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-08-04 15:20+0200\n"
+"Last-Translator: Gasper Zejn <zejn@kiberpipa.org>\n"
+"Language-Team: SlovenÅ¡Äina <users@sl.openoffice.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || "
+"n%100==4 ? 2 : 3);\n"
+"X-Generator: Pootle 1.0.2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Domov"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Uporabniki"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Jeziki"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekti"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Splošne nastavitve"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Nastavitev"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Trenutna vrednost"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Shrani spremembe"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Naslov"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Opis"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Glavni URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "DomaÄa stran"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle administrativna stran za jezike"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Glavna admistracijska stran"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO koda"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Polno ime"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(dodaj jezik tukaj)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Posebni znaki"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(posebni znaki)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Število množinskih oblik"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(število množinskih oblik)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Množinska enaÄba"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(množinska enaÄba)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Odstrani jezik"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Odstrani %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standardno"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle adminstracijska stran projektov"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Å ifra projekta"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(dodaj projekt tu)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Opis projekta"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(opis projekta)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "NaÄin preverjanja"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tip datoteke"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Ustvari MO datoteke"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Odstrani projekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle uporabniško adminstracijska stran"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Uporabniško ime"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(dodaj polno ime tu)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Email naslov"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(dodaj email tu)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Geslo"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(dodaj geslo tu)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktivirano"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktiviraj novega uporabnika"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Odstrani %s"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Nazaj na glavno stran"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "ObstojeÄi jeziki"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Posodobi jezike"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle administrator: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Nimate pravic za upravljanje tega projekta."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Posodobi iz predlog"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Dodaj jezik"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle administrator: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "DomaÄa stran projekta"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Ne morem nastaviti pravic za uporabniško ime %s - uporabnik ne obstaja"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Ta projekt je GNU-jevski (en direktorij, datoteke imenovane po jeziku)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ta projekt je standardni (en direktorij na jezik)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Uporabniške pravice"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(izberi za dodajanje uporabnika)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Pravice"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Odstrani"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Posodobi pravice"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "O Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> je preprost spletni portal, ki vam želi omogoÄiti, "
+"da <strong>prevajate</strong>! Ker je Pootle <strong>Prosto "
+"Programje</strong>, ga lahko prenese in poganja vsak. Vsak je dobrodošel, da "
+"tudi pomaga pri njegovem razvoju (znanje programiranja ni potrebno)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Projekt Pootle gostuje na <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a>, kjer "
+"lahko najdete podrobnosti o izvorni kodi, poštnih seznamih itd."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Ime pomeni <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, oz. po Slovensko na PO-datotekah osnovan "
+"spletni prevajalski oz. lokalizacijski pogon. Morda si boste želeli prebrati "
+"<a href=\"http://www.thechestnut.com/flumps.htm\">tole</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "RazliÄice"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Ta stran poganja:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (na %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Uporabniška stran za: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Spremeni nastavitve"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Adminstratorska stran"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administriraj"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Hitre povezave"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Prosim pritisnite na 'Spremeni nastavitve' in izberite jezike in projekte"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekt, povpreÄno %d%% prevedeno"
+msgstr[1] "%d projekta, povpreÄno %d%% prevedena"
+msgstr[2] "%d projekti, povpreÄno %d%% prevedeni"
+msgstr[3] "%d projektov, povpreÄno %d%% prevedenih"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administrator"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Koda jezika"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Ime jezika"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d jezik, povpreÄno %d%% prevedeno"
+msgstr[1] "%d jezika, povpreÄno %d%% prevedena"
+msgstr[2] "%d jeziki, povpreÄno %d%% prevedeni"
+msgstr[3] "%d jezikov, povpreÄno %d%% prevedenih"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Jezik"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekt %s, Jezik %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "IÅ¡Äi"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Ne morem naložiti datoteke, nobena datoteka ni izbrana"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Nalagate lahko le PO datoteke in zip stisnjene PO datoteke"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Dodeli nize"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Dodeli dejanje"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Dodeli uporabniku"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "cilji"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Vpiši ime cilja"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Dodaj cilj"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Naloži datoteko"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Izberi datoteko za nalaganje"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Prepiši"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "PrepiÅ¡i trenutno datoteko, Äe že obstaja"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Spoji"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Spoji datoteko s trenutno datoteko in spremeni navzkrižja v predloge"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ni med cilji"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Dodaj uporabnika"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO datoteka"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF datoteka"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts datoteka"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV datoteka"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO datoteka"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Posodobi"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "PoÅ¡lji v skladiÅ¡Äe"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Vsi nizi"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Neprevedeno"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Nedodeljeno"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Nedodeljeno in neprevedeno"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Nastavi cilj"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Izberi veÄkrat"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Dodeli"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Prikaži funkcije urejanja"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Prikaži statistiko"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Pokaži sledi"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Skrij sledi"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Pokaži kontrole"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Skrij kontrole"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Pokaži cilje"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Skrij cilje"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Pokaži dodeljene nize/dejanja"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Skrij dodeljene nize/dejanja"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Vsi cilji: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Prevajanje mojih nizov"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Poglej moje nize"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Dodeljenih nimate nobenih nizov"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Hitro prevajanje mojih nizov"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Dodeljenih nimate nobenih neprevedenih nizov"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Ponovno poglej predloge"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Poglej predloge"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Hitro prevajanje"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Poglej neprevedeno"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ni neprevedenih predmetov"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Prevedi vse"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP cilja"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP mape"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Generiraj SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d niz (%d%%) je spodletel"
+msgstr[1] "%d niza (%d%%) sta spodletela"
+msgstr[2] "%d nizi (%d%%) so spodleteli"
+msgstr[3] "%d nizov (%d%%) je spodletelo"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d besed (%d%%) je prirejenih"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d nizov]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d besede (%d%%) prevedenih"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Vsi projekti"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Vsi jeziki"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Moj raÄun"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumentacija & pomoÄ"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Odjava"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Prijava"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registracija"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktiviraj"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle Logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "O tem Pootle strežniku"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Vsi cilji"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d datoteke"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d datoteka"
+msgstr[1] "%d datoteki"
+msgstr[2] "%d datoteke"
+msgstr[3] "%d datotek"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d nizov"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Ime"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Prevedeno"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Prevedeno v odstotkih"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Prevedeno besed"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Ohlapno"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Ohlapnih v odstotkih"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Ohlapnih besed"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Neprevedeno v odstotkih"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Neprevedeno besed"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Skupno"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Skupno besed"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graf"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Prijava ni uspela"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Preusmerjam na obrazec za prijavo ..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Za dostop do domaÄe strani se morate prijaviti"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Osebni podatki so bili shranjeni"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Za dostop do administracijske strani se morate prijaviti"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Preusmerjam domov ..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Nimate pravic za upravljanje pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Poglej"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Predlagaj"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Prevedi"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Preglej"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arhiviraj"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Ustvari PO datoteke"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Dodeli"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Ne morete odstraniti uporabnikov \"nobody\" in \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Nimate pravic za spreminjanje ciljev"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Nimate pravic za nalaganje datotek"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Nimate pravic za prepis datotek"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Nimate pravic za nalaganje novih datotek"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Nimate pravic za posodabljanje datotek"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Nimate pravic za pošiljanje datotek"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Nimate pravic za spreminjanje dodeljenih nizov/dejanj"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Nimate pravic za spreminjanje prevodov"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Nimate pravic za predlaganje sprememb"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Nimate pravic za pregledovanje predlogov"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d prevedenih\n"
+"(%d neprevedenih, %d ohlapnih)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: prevajanje %s v %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Prevod"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Komentarji prevajalca"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Komentarji razvijalca"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Sorodno"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Konec paketa"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Kliknite tu, da se vrnete na kazalo"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "ZaÄetek"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Prejšnjih %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Predmeti %d do %d od %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Naslednjih %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Konec"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "preverjanje %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Nobenih zadetkov za niz ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "KonÄali ste s pregledom izbranih predmetov"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Ednina"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Množinske oblike"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Uredi"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopiraj"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "PreskoÄi"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Nazaj"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Pošlji"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Povišaj"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Znižaj"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Množinska oblika %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Prevajanje ni možno, ker ni informacij o množini za vaš jezik. Prosimo "
+"stopite v stik z administratorjem strani."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Trenutni prevod:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Predlog %d od %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Predlogi %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Predlogi od %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Predlog:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Vnesti morate veljavno geslo dolgo vsaj %d znakov."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Potrditveno geslo se ne ujema z geslom."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Prijava v Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Uporabniško ime:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Geslo:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Jezik:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Prijava"
+
+#: users.py:77
+msgid "Default"
+msgstr "Privzeto"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Prosim vpišite Vaše informacije za registracijo"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle registracija"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Vaše uporabniško ime"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Navedite veljaven email naslov"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Vaše polno ime"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Vaše geslo"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Potrditev gesla"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Vpišite vaše geslo še enkrat, da poskrbite da je vnešeno pravilno"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registriraj raÄun"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Prosimo vpišite podatke za aktivacijo"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Aktivacija Pootle raÄuna"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktivacijska koda"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Prejeta aktivacijska koda"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktiviraj raÄun"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Možnosti za: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Osebni podatki"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Nastavitve vmesnika za prevajanje"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Jezik uporabniškega vmesnika"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Moji projekti"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Moji jeziki"
+
+#: users.py:196
+msgid "Home page"
+msgstr "DomaÄa stran"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Višina vnosnega polja (v vrsticah)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Å tevilo vrstic v navadnem naÄinu"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Å tevilo vrstic v prevajalnem naÄinu"
+
+#: users.py:307
+msgid "Error"
+msgstr "Napaka"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Biti morate glavni administrator, da lahko spreminjate uporabnike"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "UporabniÅ¡ko ime mora biti iz Å¡tevilk in Ärk, zaÄeti pa se mora s Ärko"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Vi (ali nekdo drug) ste poskuÅ¡ali registrirati raÄun pod vaÅ¡im imenom.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Gesla ne shranjujemo, shrani se le preverjevalna vsota.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Če imate težave pri registraciji, prosimo stopite v stik z %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Če imate težave pri registraciji, prosimo stopite v stik z administratorjem "
+"strani.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+"To uporabniško ime že obstaja. Email bo poslan na shranjen elektronski "
+"naslov."
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Nadaljujem na <a href='%s'>prijavo</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Pootle raÄun s tem elektronskim naslovom je bil ustvarjen za vas.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Da bi aktivirali vaÅ¡ raÄun prosim sledite spodnji povezavi:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Vaša aktivacijska koda je:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "ÄŒe ne morete klikniti na povezavo, prosimo vnesite zgornjo kodo na "
+"aktivacijski strani.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "To sporoÄilo je poslano, da preverite, da je elektronski naslov pravilen. ÄŒe "
+"niste želeli registrirati raÄuna, lahko enostavno prezrete sporoÄilo.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"RaÄun je bil ustvarjen. Po elektronski poÅ¡ti boste dobili podatke za prijavo "
+"in aktivacijsko kodo. Prosimo vnesite vašo aktivacijsko kodo na <a "
+"href='%s'>strani za aktivacijo</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Ali pa kliknite aktivacijsko povezavo v prejeti elektronski pošti)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Vaše uporabniško ime je: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Vaše geslo je: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Vaš elektronski naslov je: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Preusmerjam na stran z obrazcem za registracijo ..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Preusmerjam na stran z obrazcem za prijavo ..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "VaÅ¡ raÄun je bil aktiviran. Preusmerjam na prijavo ..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Navedena povezava z aktivacijsko kodo ni veljavna"
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivacija ni uspela"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Višina vnosnega polja mora biti število"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Å irina vnosnega polja mora biti Å¡tevilo"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Å tevilo prikazanih vrstic v navadnem naÄinu mora biti Å¡tevilo"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Å tevilo prikazanih vrstic v prevajalnem naÄinu mora biti Å¡tevilo"
+
+#~ msgid "Accept"
+#~ msgstr "Sprejmi"
+
+#~ msgid "Reject"
+#~ msgstr "Zavrni"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge prevajalski projekt"
+
+#~ msgid "Broaden"
+#~ msgstr "Razširi"
+
+#~ msgid "Narrow"
+#~ msgstr "SkrÄi"
+
+#~ msgid "Reset"
+#~ msgstr "Ponastavi"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Email naslov mora biti veljaven"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Å irina vnosnega polja (v znakih)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</temno> je preprosti internetni portal, ki vam nudi "
+#~ "možnost <strong>prevajanja</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "MatiÄna datoteka"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projekti</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d datoteke, %d/%d vrstice (%d%%) prevedene"
+
+#~ msgid "%s language"
+#~ msgstr "%s jezik"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "to je demo namestitev Pootle-a"
+
+#~ msgid "current folder"
+#~ msgstr "trenutna mapa"
+
+#~ msgid "Log In"
+#~ msgstr "Prijava"
+
+#~ msgid "login status"
+#~ msgstr "Status"
+
+#~ msgid "project root"
+#~ msgstr "izvor projekta"
+
+#~ msgid "%s project"
+#~ msgstr "%s projekt"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "Nimate pravic da naredite spremembe tukaj"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "Nimate pravic da spremeninjate prevedeni tekst"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d nizov je prevedenih (%d%%)"
+
+#~ msgid "%d files, "
+#~ msgstr "%d datoteke"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Jeziki</h3>"
+
+#~ msgid "current file"
+#~ msgstr "trenutna datoteka"
+
+#~ msgid "not logged in"
+#~ msgstr "niste prijavljeni"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pootle adminstracijska stran"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Nimate pravic urejevati Pootle."
+
+#~ msgid "suggest"
+#~ msgstr "predlagaj"
+
+#~ msgid "Input Width"
+#~ msgstr "Å irina vnosnega polja"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/sq/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/sq/jToolkit.po
new file mode 100644
index 0000000..1a638eb
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/sq/jToolkit.po
@@ -0,0 +1,140 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-08-12 22:47+0000\n"
+"Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Identifikimi për %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Anullo këtë veprim dhe nis një seancë të re"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Në vend që të konfermosh këtë veprim, dil dhe rifillo nga fillimi"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Dil nga aplikativi"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Dil nga ky aplikativ dhe kthehu tek aplikativi kryesor"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", të lutem konfermo identifikimin"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Identifikimi"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Përdoruesi:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Fjalëkalimi:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Gjuha:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Zgjidh aplikativin"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Përfundo seancën"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Dalja"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "identifikuar si <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "i pamundur shtimi i një seance të re"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "shkëputur"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "lidhur"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "shkëputur nga seanca kryesore"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"duhen përcaktuar përdoruesit ose zëri userprefs tek konfigurimi i serverit"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "përdoruesi nuk ekziston (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "emër përdoruesi dhe/ose fjalëkalim i pavlefshëm"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "konfermimi i identifikimit dështoi"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Jo"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Po"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "hiq"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(asnjë i bashkangjitur)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "i bashkangjituri është tepër i madh"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "hiq këtë të bashkangjitur"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "rivendos"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ky i bashkangjitur është hequr. kliko këtu për ta rivendosur"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "bashkangjit një file"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/sq/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/sq/pootle.po
new file mode 100644
index 0000000..6c3d356
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/sq/pootle.po
@@ -0,0 +1,1417 @@
+# Përkthimi i mesazheve të pootle.po në shqip.
+# Laurent Dhima <laurenti@alblinux.net>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: pootle\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-01 08:41+0000\n"
+"Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
+"Language-Team: Albanian <gnome-albanian-perkthyesit@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demostrim i Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Shtëpia"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Përdorues"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Gjuhët"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekte"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Opsionet e përgjithshme"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opsioni"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Vlera e tanishme"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Ruaj ndryshimet"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titulli"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Përshkrimi"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL bazë"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Faqja web"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Faqja e administrimit të gjuhëve"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Faqja kryesore e administrimit"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Kodi ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Emri i plotë"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(shto një gjuhë këtu)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Shkronja speciale"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(shkronja speciale)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Numri i shumësve"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(numri i shumësve)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Formula e shumësit"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(formula e shumësit)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Hiq gjuhën"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Hiq %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Faqja e administrimit të projekteve"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Kodi i projektit"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(shto një projekt këtu)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Përshkrimi i projektit"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(përshkrimi i projektit)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Stili i kontrollit"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Lloji i file"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Krijo me file MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Hiq projektin"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Faqja e administrimit të përdoruesve"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Emri i përdoruesit"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(shto emrin e plotë këtu)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Adresa email"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(shto adresën email këtu)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Fjalëkalimi"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(shto fjalëkalimin këtu)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktivizuar"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktivizo përdoruesin e ri"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Hiq përdoruesin"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Kthehu tek faqja kryesore"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Gjuhët ekzistuese"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Përditëso gjuhët"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Administratori i Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Nuk keni të drejta të mjaftueshme për të administruar këtë projekt."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Përditëso nga modelët"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Shto gjuhën"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Administratori Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Faqja web e projektit"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"I pamundur përcaktimi i të drejtave për përdoruesin %s - përdoruesi nuk "
+"ekziston"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Ky është një projekt në stil GNU (një directory, files të identifikuar sipas "
+"gjuhës). "
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ky është një projekt në stil standard (një directory për gjuhë)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Të drejtat e përdoruesit"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(zgjidh për të shtuar përdoruesin)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Të drejta"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Hiq"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Përditëso të drejtat"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Informacione mbi Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> është një portal i thjeshtë web që ju jep mundësinë "
+"të <strong>përktheni</strong>! Meqenëse Pootle është <strong>Software i "
+"Lirë</strong>, mund ta shkarkoni dhe të përdorni kopjen tuaj, nëse "
+"dëshironi. Gjithashtu mund të ndihmoni duke marrë pjesë në zhvillim në "
+"menyra të ndryshme (nuk ka nevojë për këtë të jeni një programues)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Vetë projekti Pootle gjendet tek <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> ku "
+"mund të merrni informacione në lidhje me kodin burues, mailing lists etj."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Emri do të thotë <b>PO</b>-based<b>O</b>nline <b>T</b>ranslation "
+"/<b>L</b>ocalization <b>E</b>ngine (motorr përkthimi dhe lokalizimi bazuar "
+"në PO), por ndoshta do t'ju duhet të lexoni <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">këtë</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versionet"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Ky sit është duke përdorur:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Faqja e përdoruesit për: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Ndrysho opsionet"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Faqja e administrimit"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrimi"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Lidhje të shpejta"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Të lutem kliko tek 'Ndrysho opsionet' dhe zgjidh gjuhët dhe projektet"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekt, mesatarisht %d%% përkthyer"
+msgstr[1] "%d projekte, mesatarisht %d%% përkthyer"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Administrim"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Kodi i gjuhës"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Emri i gjuhës"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d gjuhë, mesatarja %d%% përkthyer"
+msgstr[1] "%d gjuhë, mesatarja %d%% përkthyer"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Gjuha"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekti %s, Gjuha %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Kërko"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Kërkim i detajuar"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "I pamundur ngarkimi i file, asnjë file bashkangjitur"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Mund të ngarkohen vetëm file PO ose arkivë zip me file PO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Cakto frazat"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Cakto veprimin"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Caktoja përdoruesit"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "objektivë"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Shkruaj emrin e objektivit"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Shto objektivin"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Ngarko file"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Zgjidh file për tu ngarkuar"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Mbishkruaj"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Mbishkruaj file aktual nëse ekziston"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Bashko"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Bashko file me file aktual dhe transformo konfliktet në propozime"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Asnjë objektiv"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Shto përdorues"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "File PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "File XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "File Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "File CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "File MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Azhuro"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Prano"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Të gjitha frazat"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Papërkthyer"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Pa caktuara"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Pa caktuara dhe papërkthyer"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Përcakto objektivin"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Zgjedhje shumëfishe"
+
+# Formë tjetër më e qartë?
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Caktoja"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Shfaq opsionet e ndryshimit"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Shfaq statistikat"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Shfaq gjurmët"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Fshih gjurmët"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Shfaq kontrollet"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Fshih kontrollet"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Shfaq objektivët"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Fshih objektivët"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Shfaq caktimet"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Fshih caktimet"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Të gjith objektivët: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Përkthe frazat e mia"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Shiko frazat e mia"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Nuk ju është caktuar asnjë frazë"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Përkthim i shpejtë i frazave të mia"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Nuk ju është caktuar asnjë frazë e papërkthyer"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Rishiko propozimet"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Shiko propozimet"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Përkthim i shpejtë"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Shfaq zërat e papërkthyer"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Asnjë zë i papërkthyer"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Përkthe gjithçka"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP i objektivit"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP i kartelës"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Gjenero SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d frazë (%d%%) dështoi"
+msgstr[1] "%d fraza (%d%%) dështuan"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d fjalë (%d%%) të caktuara"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d fraza]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d fjalë (%d%%) të përkthyera"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Të gjithë projektet"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Të gjitha gjuhët"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Profili im"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokumentë & ndihmë"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Dil jashtë"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Hyrja"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Regjistrimi"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktivizo"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Stema e Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Informacione në lidhje me këtë server Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Të gjithë objektivët"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d file"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d file"
+msgstr[1] "%d file"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d fraza"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Emri"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Përkthyer"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Përqind përkthyer"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Fjalë të përkthyera"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Fuzzy"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Përqind fuzzy"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Fjalë për tu kontrolluar"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Përqindja papërkthyer"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Fjalë të papërkthyera"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Gjithsej"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Gjthsej fjalë"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafiku"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Teksti orgjinal"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Teksti i përkthyer"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Komente"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Pozicione"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Identifikimi dështoi"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Duke ridrejtuar tek identifikimi..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Është i nevojshëm identifikimi për tu futur tek faqja personale"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Informacionet personale u përditësuan"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Është i nevojshëm identifikimi për tu futur tek faqja e administrimit"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Duke ridrejtuar tek \"home\"..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Nuk keni të drejtë të administroni pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Shfaq"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Propozo"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Përkthe"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Rishiko"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arkivo"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Kompilo file PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Cakto"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Nuk është e mundur heqja e përdoruesve \"nobody\" ose \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Nuk keni të drejta të mjaftueshme për të ndryshuar objektivët këtu"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Nuk keni të drejta të mjaftueshme për të ngarkuar file këtu"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Nuk keni të drejta të mjaftueshme për të mbishkruar file këtu"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Nuk keni të drejta të mjaftueshme për të ngarkuar file të rinj këtu"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Nuk keni të drejta të mjaftueshme për të përditësuar file këtu"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Nuk keni të drejta të mjaftueshme për të ngarkuar file këtu"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Nuk keni të drejta të mjaftueshme për të ndryshuar caktimet këtu"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Nuk keni të drejta të mjaftueshme për të ndryshuar përkthimet këtu"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Nuk keni të drejta të mjaftueshme për të propozuar ndryshime këtu"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Nuk keni të drejta të mjaftueshme për të rishikuar propozimet këtu"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d përkthyer\n"
+"(%d bosh, %d fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: përkthimi i %s në %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Orgjinali"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Përkthimi"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Prano propozimin"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Refuzo propozimin"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Komente nga përkthyesi"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Komente nga zhvilluesi"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "E ngjashme"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Duke punuar..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Gabim: diçka nuk shkoi si duhet."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Fundi i batch"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Kliko këtu për t'u kthyer tek treguesi"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Fillimi"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d paraardhës"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Zërat %d në %d nga %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d në vijim"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Fundi"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "duke kontrolluar %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Nuk ekzistojnë zëra korrespondues me të kërkuarin ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Përfunduat udhëtimin midis zërave të zgjedhur"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Njëjës"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Shumës"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Ndrysho"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopjo"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Kapërce"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Paraardhësi"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Prano"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Rrit"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Zvogëlo"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Forma e shumësit %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Përkthimi është i pamundur pasi mungojnë informacionet në lidhje me shumësin "
+"e gjuhës suaj. Të lutem vihuni në kontakt me administratorin e sitit."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Përkthimi i tanishëm:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "%d propozim nga %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Propozimi %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Propozuar nga %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Propozimi:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+"Duhet të japësh një fjalëkalim të vlefshëm të gjatë të paktën %d simbole."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Fjalëkalimi ndryshon nga ai i konfermimit."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Hyrja në Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Përdoruesi:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Fjalëkalimi:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Gjuha:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Identifikimi"
+
+#: users.py:77
+msgid "Default"
+msgstr "E prezgjedhur"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Jepni të dhënat e regjistrimit tuaj"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Regjistrimi në Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Emri juaj i dëshiruar i përdoruesit"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Duhet të jepni një adresë të vlefshme email"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Emri juaj i plotë"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Fjalëkalimi i dëshiruar"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Konfirmo fjalëkalimin"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Shkruaj përsëri fjalëkalimin për të qenë të sigurt që është korrekt"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Regjistro profilin"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Jepni të dhënat tuaja të aktivizimit"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Aktivizimi i profilit Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Kodi i aktivizimit"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Kodi i aktivizimit që morët"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktivizo profilin"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Opsione për: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Detaje personalë"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Konfigurimi i interfaqes së përkthimit"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Gjuha e interfaqes së përdoruesit"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Projektet e mi"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Gjuhët e mia"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Faqja e nisjes"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Gjuhë alternative burimi"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Asnjë"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Lartësia e Input (në rreshta)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Numri i rreshtave në modalitet shfaqje"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Numri i rreshtave në modalitet përkthimi"
+
+#: users.py:307
+msgid "Error"
+msgstr "Gabim"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Dzhet të jeni administratori i sitit për të ndryshuar përdoruesit"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Emri i përdoruesit duhet të jetë alfanumerik, dhe duhet të fillojë me një "
+"gërmë alfabeti."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Ju (apo dikush tjetër) është përpjekur të krijojë një profil me emrin tuaj "
+"të përdoruesit.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Nuk regjistrojmë fjalëkalimin tënd, por vetëm një kodifikim të tij.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Nëse ndeshni probleme gjatë regjistrimit, ju lutem vihuni në kontakt me %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Nëse ndeshni probleme gjatë regjistrimit, ju lutem vihuni në kontakt me "
+"administratorin e sitit.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Ky emër përdoruesi ekziston rregullisht. Do të dërgohet një mesazh tek "
+"adresa e regjistruar email.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Duke u <a href='%s'>futur</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Një profil Pootle u krijua për ju duke përdorur këtë adresë email.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Për të aktivizuar profilin, ndiq këtë lidhje:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Kodi juaj i aktivizimit është:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Nëse nuk mund të ndiqni lidhjen, të lutem jepni këtë kod tek faqja e "
+"aktivizimit.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Ky mesazh është dërguar për të verifikuar që adresa email është me të "
+"vërtetë korrekte. Nëse nuk dëshironi të regjistroni një profil, thjesht "
+"shpërfillni këtë mesazh.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Profili i krijua. Do t'ju dërgohet nje mesazh me detajet e hyrjes dhe kodin "
+"e aktivizimit. Shkruaj kodin tënd të aktivizimit tek <a href='%s'>faqja e "
+"aktivizimit</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Ose thjesht kliko tek lidhja e aktivizimit në email)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Emri i përdoruesit tuaj është: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Fjalëkalimi juaj është: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Adresa email e regjistruar është: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Duke u ridrejtuar për tek faqja e regjistrimit..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Duke u ridrejtuar për tek faqja e hyrjes..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"Profili juaj është aktivizuar! Duke u ridrejtuar për tek identifikimi..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Informacioni i aktivizimit nuk është i saktë."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivizimi dështoi"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Lartësia e input duhet të jetë një numër"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Gjerësia e input duhet të jetë një numër"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+"Numri i rreshtave të shfaqur në modalitetin shfaqje duhet të jetë një numër"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+"Numri i rreshtave të shfaqur në modalitetin përkthim duhet të jetë një numër"
+
+#~ msgid "Accept"
+#~ msgstr "Prano"
+
+#~ msgid "Reject"
+#~ msgstr "Refuzo"
+
+#~ msgid "Broaden"
+#~ msgstr "Zgjero"
+
+#~ msgid "Narrow"
+#~ msgstr "Ngushto"
+
+#~ msgid "Reset"
+#~ msgstr "Rivendos"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Projekti përkthimeve WordForge"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Duhet të jetë një adresë e vlefshme email"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Gjerësia e Input (në rreshta)"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/sr/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/sr/jToolkit.po
new file mode 100644
index 0000000..937427f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/sr/jToolkit.po
@@ -0,0 +1,145 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-08-07 14:58+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
+"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;;\n"
+"X-Generator: Translate Toolkit 0.9rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Пријава за %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Откажи ово дејÑтво и почни нову ÑеÑију"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "УмеÑто да потврдите ово дејÑтво, одјавите Ñе и почните из почетка"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Изађите из програма"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Изађите из овог програма и вратите Ñе на родитељÑки програм"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", молимо потврдите пријаву"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Пријава"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Име:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Лозинка:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Језик:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Изаберите програм"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Одјава"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Излаз"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "пријављени Ñте као <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "није могуће додати нову ÑеÑију"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "одјављени Ñте"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "на вези Ñте"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "родитељÑка ÑеÑија је завршена"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "потребно је унети кориÑничке уноÑе у подешавања Ñервера"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "кориÑничко име не поÑтоји (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "име или лозинка које Ñте унели ниÑу важеће"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "потврда пријаве није уÑпела"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ðе"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Да"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "уклони"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(нема прилога)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "прилог је превелики"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "уклони прилог"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "врати"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "овај прилог је уклоњен. притиÑните овде да га вратите"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "закачи датотеку"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "морате да унеÑете податке о кориÑнику у подешавања Ñервера"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/sr/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/sr/pootle.po
new file mode 100644
index 0000000..2b362db
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/sr/pootle.po
@@ -0,0 +1,1435 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-03-28 01:18+0000\n"
+"Last-Translator: Филип Милетић <filmil@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 1.1.0rc2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Путл демонÑтрација"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Кућа"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "КориÑници"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Језици"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Пројекти"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Опште поÑтавке"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "ПоÑтавка"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Текућа вредноÑÑ‚"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Сними промене"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "ÐаÑлов"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "ОпиÑ"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Базни URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Домаћа Ñтрана"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle Ñтрана за управљане језицима"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Главна Ñтрана за управљање"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO код"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Пуно име"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(овде додај језик)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "ПоÑебни знаци"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(поÑебни знаци)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Број множина"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(број множина)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Једначина за множину"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(једначина за множину)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Уклони језик"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Уклони %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Стандард"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle Ñтрана за управљање пројеката"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Код пројекта"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(додај пројекат овде)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "ÐžÐ¿Ð¸Ñ Ð¿Ñ€Ð¾Ñ˜ÐµÐºÑ‚Ð°"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(Ð¾Ð¿Ð¸Ñ Ð¿Ñ€Ð¾Ñ˜ÐµÐºÑ‚Ð°)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Изглед квачице за потврду"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Ð’Ñ€Ñта датотеке"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Ðаправи MO датотеке"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Уклони пројекат"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle Ñтрана за управљање кориÑника"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "КориÑничко име"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(додај пуно име овде)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "ÐдреÑа Ел.поште"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(овде додај адреÑу ел. поште)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Лозинка"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(додај лозинку овде)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Покренут"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Укључи новог кориÑника"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Уклони кориÑника"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Врати Ñе на главну Ñтрану"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "ПоÑтојећи језици"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "ОÑвежи језике"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle одржавање: %s %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Ðемате права да управљате овим пројектом."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "ОÑвежи из шаблона"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Додај језик"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle одржавање: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Домаћа Ñтрана пројекта"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Ðе могу да подеÑим права за кориÑничко име %s - кориÑник не поÑтоји"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Ово је пројекат типа GNU (једна фаÑцикла, датотеке назване по језику)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ово је Ñтандардни тип пројекта (једна фаÑцикла по језику)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Овлашћења кориÑника"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(изабери кориÑника за додавање)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Права"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Уклони"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "ОÑвежи права"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "О Pootle-у"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> је једноÑтавна мрежна Ñтрана који вам дозвољава да "
+"<strong>преводите</strong>! Пошто је Pootle <strong>Слободни "
+"програм</strong>, можете га преузети и кориÑтити Ñвој, Ñамо ваш, Pootle ако "
+"желите. Можете такође да помогнете у развоју и на многе друге начине (не "
+"морате да будете програмер)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle Ñе налази на <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"Ñтраници где можете наћи детаље у вези изворног кода, допиÑног друштва преко "
+"е-поште, итд."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Име долази од <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, PO-базирани мрежни преводиоц локализатор, "
+"али можда ћете морати да прочитате и: <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">ово</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Издања"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Ова мрежна Ñтраница кориÑти:<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "КориÑничка Ñтраница за:%s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Промени поÑтавке"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Страна за управљање"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Уређуј"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Брзе пречице"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Молимо притиÑните „Промени поÑтавке“ и изаберите неке језике и пројекте"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d пројекат, проÑек %d%% преведено"
+msgstr[1] "%d пројекта, проÑек %d%% преведено"
+msgstr[2] "%d пројеката, проÑек %d%% преведено"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Управник"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Код језика"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Име Језика"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d језик, проÑек %d%% преведено"
+msgstr[1] "%d језика, проÑек %d%% преведено"
+msgstr[2] "%d језика, проÑек %d%% преведено"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Језик"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "Pootle: Пројекат %s, Језик %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Тражи"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Ðе могу да Ñпојим датотеку, ни једна датотека није Ñпојена"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Ðе могу да закачим \"PO\" датотеке и запаковане \"PO\" датотеке"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Додели низове"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Додели радњу"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Додели кориÑнику"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "Циљеви"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "УнеÑи име циља"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Додај циљ"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "ПоÑтави датотеку"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Изаберите датотеку коју ћете поÑтавити"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Пребриши"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Пребриши текућу датотеку ако поÑтоји"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Стопи"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Стопи датотеку Ñа текућом датотеком и претвори Ñукобе у предлоге"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ðема у циља"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Додај кориÑника"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO датотека"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF датотека"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts датотека"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV датотека"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO датотека"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "ОÑвежи"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Потврди"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Сви низови"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Ðепреведено"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ðедодељено"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ðепреведено и недодељено"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "ÐамеÑти циљ"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "ВишеÑтруки избор"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Додели"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Прикажи алате за обраду"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Прикажи ÑтатиÑтику"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Покажи канале"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Сакриј канале"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Покажи провере"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Сакриј провере"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Покажи циљеве"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Сакриј циљеве"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Прикажи додељене задатке"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Сакриј додељене задатке"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Сви циљеви: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Преведи мој низ"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Покажи мој низ"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Ðема низова који Ñу додељени Вама"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Брзи превод мојих низова"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Ðема непреведених низова који Ñу додељени Вама"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Прегледај предлоге"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Погледај предлоге"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Брзи превод"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Погледај непреведено"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ðема непреведених Ñтавки"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Преведи Ñве"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Запакуј циљ"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Запакуј фаÑциклу"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Ðаправи PDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d низ (%d%%) неуÑпешно"
+msgstr[1] "%d низа (%d%%) неуÑпешно"
+msgstr[2] "%d низова (%d%%) неуÑпешно"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d речи (%d%%) дедељено"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d низова]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d речи (%d%%) преведено"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Сви пројекти"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Сви језици"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Мој налог"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Документи и помоћ"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Одјави Ñе"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Пријавите Ñе"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Упишите Ñе"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Укључи"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle заштитни знак"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "О овом Pootle Ñерверу"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Сви циљеви"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d датотека"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d датотека"
+msgstr[1] "%d датотеке"
+msgstr[2] "%d датотека"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "[%d/%d низова знакова]"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Име"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Преведено"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "ПроÑтотак преведеног"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Преведене речи"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "ÐејаÑно"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "ПоÑтотак нејаÑних превода"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "ÐејаÑне речи"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "ПоÑтотак непреведеног"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Ðепреведене речи"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Укупно"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Укупно речи"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Граф"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Пријављивање је неуÑпешно"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "ПроÑлеђујем на Ñтраницу за пријаву..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Морате Ñе пријавити да биÑте приÑтупили кућној Ñтраници"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Лични детаљи оÑвежени"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Морате Ñе пријавити да биÑте приÑтупили Ñтраници за админиÑтраторе"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "ПроÑлеђујем на почетну кућну Ñтраницу..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Ðемате права да руководите pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Преглед"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Предложи"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Преведи"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Прегледај"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Ðрхива"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Компајлирај PO датотеку"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Додели"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Ðе можете уклонити „нико“ или „подразумеваног“ кориÑника"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Ðемате права да мењате циљеве овде"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Ðемате права да закачите датотеке овде"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Ðемате права да пребришете датотеке овде"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Ðемате права да закачите нове датотеке овде"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Ðемате права да оÑвежите датотеке овде"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Ðемате права да закачите датотеке овде"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Ðемате права да мењате додељене задатке овде"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Ðемате права да промените преводе овде"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Ðемате права да предложите промене овде"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Ðемате права да прегледате промене овде"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d преведено\n"
+"(%d празно, %d нејаÑно)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "Путл: преводим %s у %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Изворни"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Превод"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Белешке преводиоца"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Белешке програмера"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Слично"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Крај пакета команди"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "ПритиÑните овде да Ñе вратите на индекÑ"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Почетак"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Предходни %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Ставке %d до %d од %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Следећи %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Крај"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "проверавам %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Ðема Ñтавких Ñа које подударају претрагу („%s“)"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Завршили Ñте пролаз кроз Ñве изабране Ñтавке"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Једнина"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Множина"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Уреди"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Умножи"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "ПреÑкочи"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Ðазад"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "ПроÑледи"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Увећај"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Смањи"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Облик множине %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Превод није могућ јер подаци о множини за ваш језик ниÑу доÑтупни. Молим "
+"контактирајте админиÑтратора Ñтранице."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Текући превод:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Предлог %d од %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Предлог %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s предлог:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Предлог:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Морате упиÑати иÑправну лозинку од најмање %d знакова"
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Лозинка није иÑта као потврда"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Пријави Ñе на Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "КориÑничко име:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Лозинка:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Језик:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Пријавите Ñе"
+
+#: users.py:77
+msgid "Default"
+msgstr "Подразумевано"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Молимо Ð²Ð°Ñ ÑƒÐ½ÐµÑите важе детаље за региÑтрацију"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle региÑтрација"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Ваше тражено кориÑничко име"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Мора дати важећу ел. адреÑу"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Ваше пуно име"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Ваша жељена лозинка"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Потврдите лозинку"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Упишите лозинку поново да би оÑигурали тачан упиÑ"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Ðаправи налог"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Молимо Ð²Ð°Ñ Ð´Ð° унеÑете детаље за активацију"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle активација рачуна"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Код за активацију"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Код за активацију који Ñте примили"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Ðктивирајте рачун"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "ПоÑтавке за: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Лични детаљи"
+
+#: users.py:186
+msgid "Email"
+msgstr "Ел. адреÑа"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Подешавање Ñучеља за превод"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Језик кориÑничког Ñучеља"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Моји пројекти"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Моји језици"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Домаћа Ñтрана"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "ВиÑина уноÑа (у редовима)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Број редова у моду за преглед"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Број редова у моду за превођење"
+
+#: users.py:307
+msgid "Error"
+msgstr "Грешка"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Морате бити управник веб Ñтранице да би променили кориÑнике"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"КориÑничко име Ñе мора ÑаÑтојати од бројева и Ñлова, а мора почети Ñа "
+"Ñловом."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Ви (или неко други) Ñте покушали да направите налог Ñа вашим кориÑничким "
+"именом.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Ми не чувамо вашу лозинку веч Ñамо хаш лозинке.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Ðко имате проблем Ñа отварањем налога, контактирајте %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Ðко имате проблема Ñа отварањем налога, контактираје админиÑтратора "
+"Ñтранице.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+"То кориÑничко име већ поÑтоји. Порука ће бити поÑлана на региÑтровану ел. "
+"адреÑу."
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "ÐаÑтављам на <a href='%s'>Ñтраницу за пријаву</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Путле налог је отворен за Ð²Ð°Ñ ÐºÐ¾Ñ€Ð¸Ñтећи ову ел. адреÑу.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Да биÑте активирали ваш налог, пратите ову везу:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr "Код за активацију"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Ðко ниÑту у могућноÑти да пратите везу, молим да унеÑете код изнад на "
+"Ñтраници за активирање.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Ова порука је поÑлана да Ñе провери иÑправноÑÑ‚ ел. адреÑе. Ðко ниÑте хтели "
+"да отворине налог, можете једноÑтавно занемарити ову поруку.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Ðалог је направљен. Биће вам поÑлана ел. порука Ñа детаљима за пријављивање "
+"и код за активацију. Молим да унеÑете код за активацију на <a "
+"href='%s'>Ñтраници за активацију</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Или једноÑтавно притиÑните на везу за активацију у овој поруци)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Ваше пуно име"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Ваша жељена лозинка"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Ваша региÑтрована ел. адреÑа је: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "ПроÑлеђујем на Ñтраницу за региÑтрацију..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "ПроÑлеђујем на Ñтраницу за пријаву..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Ваш налог је активиран! ПроÑлеђујем на Ñтраницу за пријаву..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Подаци за активацију Ñу неиÑправни."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Ðктивације је неуÑпешна"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "ВиÑина уноÑа мора бити број"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Ширина уноÑа мора бити број"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Број редова приказаних у моду за преглед мора бити број"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Број редова приказаних у моду за превод мора бити број"
+
+#~ msgid "Accept"
+#~ msgstr "Прихвати"
+
+#~ msgid "Reject"
+#~ msgstr "Одбиј"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge пројекат превода"
+
+#~ msgid "Broaden"
+#~ msgstr "Рашири"
+
+#~ msgid "Narrow"
+#~ msgstr "Сузи"
+
+#~ msgid "Reset"
+#~ msgstr "Врати на почетну вредноÑÑ‚"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Мора бити важећа ел. адреÑа"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Ширина уноÑа (у знаковима)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Управничка Ñтраница за Pootle"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Ðемате права да управљате Pootle."
+
+#~ msgid "not logged in"
+#~ msgstr "ниÑте пријављени"
+
+#~ msgid "Log In"
+#~ msgstr "Пријавите Ñе"
+
+#~ msgid "suggest"
+#~ msgstr "предложи"
+
+#~ msgid "Input Width"
+#~ msgstr "Ширина уноÑа"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/st/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/st/jToolkit.po
new file mode 100644
index 0000000..3caa6d8
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/st/jToolkit.po
@@ -0,0 +1,142 @@
+# translation of jToolkit.po to English South Africa
+# Neville Makopo <neville@impilinux.co.za>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: jToolkit\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-06-12 13:10+0200\n"
+"Last-Translator: Neville Makopo <neville@impilinux.co.za>\n"
+"Language-Team: English South Africa <en@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.0.1rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Kena bakeng sa %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Tlohela ketso ena mme o qale session e ntjha"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Hona le hore o netefatse ketso ena, etswa mme o qale fatshe"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Etswa hohang ho application"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Etswa hohang ho application ena o boele ho e ka hodimo"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", netefatsa dintlha tsa ho kena"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Kena"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Lebitso la mosebedisi:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Phasewete:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Puo:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Kgetha Application"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Etswa"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Etswa ho hang"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "o kene o le <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "session e ntjha ha e kgonehe"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "o tswile"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "e hoketswe"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "o tswile hohang ho session e ka hodimo"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "o tlameha ho hlalosa basebedisi kapa userprefs ho server config"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "mosebedisi enwa ha a teng (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "lebitso la mosebedisi le/kapa phasewete e fosahetse"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "e feitse ho kenya netefatso"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Tjhe"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ee"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "ntsha"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ha hona se jarilweng)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "mojaro ona o moholo haholo"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ntsha mojaro ona"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "kgutlisetsa"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "attachment ena e ntshitswe. ho e kgutlisetsa click here"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "jarisa faele"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/st/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/st/pootle.po
new file mode 100644
index 0000000..4213d2a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/st/pootle.po
@@ -0,0 +1,1406 @@
+# translation of pootle.po to English South Africa
+# Neville Makopo <neville@impilinux.co.za>, 2007.
+# Abe Mathibela <abe a-t translate - org - za>, 2008
+msgid ""
+msgstr ""
+"Project-Id-Version: pootle\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-09-16 16:40+0200\n"
+"PO-Revision-Date: 2008-09-17 11:47+0200\n"
+"Last-Translator: Abe Mathibela <abe a-t translate - org - za>\n"
+"Language-Team: translate-discuss-st@lists.sourceforge.net\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: VirTaal 0.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demo ya Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Leqephe la lehae"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Basebedisi"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Dipuo"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Diprojeke"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Dikgetho kakaretso"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Kgetho"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Boleng ba hajwale"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Boloka diphetoho"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Sehlooho"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Tlhalosetso"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL ya Motheo"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Leqephe la Lehae"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Leqephe la Taolo ya Maleme a Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Leqephe la taolo sehloohong"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Khoutu ya ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Lebitso ka Botlalo"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(kenya puo mona)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Ditlhaku tse kgethehileng"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(ditlhaku tse kgethehileng)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Palo ya tse Bongateng"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(palo ya tse bongateng)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Palopalo ya bongata"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(palopalo ya bongata)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Ntsha Puo"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Ntsha %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Boemo"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Leqephe la Diprojeke tsa Taolo la Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Khoutu ya Projeke"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(eketsa projeke mona)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Tlhalosetso ya Projeke"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(tlhalosetso ya projeke)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Setaele sa hlahlobo"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Mofuta wa faele"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Etsa difaele tse ntjha tsa MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Ntsha Projeke"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Leqephe la Mosebedisi la Taolo ya Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Lebitso la mosebedisi"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(kenya lebitso ka botlalo mona)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Imeile Aterese"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(kenya imeile mona)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Phasewete"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(kenya phasewete mona)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "E netefaditswe"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Netefatsa Mosebedisi e Motjha"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Ntsa Mosebedisi"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Kgutlela leqepheng la pele"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Dipuo tse teng"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Etsa Update Dipuong"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Taolo ya Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Ha ona ditokelo tsa ho administer projeke ena."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Sebedisa di template ho etsa update"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Eketsa Puo"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Taolo ya Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Leqephe la lehae la projeke"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Ha ho kgonehe ho kenya ditokelo tsa mosebedise %s - mosebedisi enwa ha a "
+"teng"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Ena ke projeke ya GNU-style (directory e lenngwe, di file ho ya ka puo)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ena ke projeke e boemong ba setaele (daerektri e lenngwe ka puo)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Ditumello tsa Mosebedisi"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(kgetha ho eketsa mosebedisi)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Ditokelo"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Ntsha"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Etsa Update ya Ditokelo"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Ka ha Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> ke portal e bonolo bakeng sa ho "
+"<strong>fetolela</strong>! Hobane Pootle ke <strong>Free Software</strong>, "
+"o ka kgona ho e thola mahala mme o etse copy ya hao ha o batla. Hape o ka "
+"thusa ho nka karolo kahong ya Pootle ka ditsela tse ngata (ha ho hlokehe "
+"hore o tsebe programming)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Projeke ya Pootle ka boyona e ho <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> moo o "
+"ka fumanang dintlha ka mohlodi wa khoutu, di mailing list jwalojwalo."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Lebitso lena la Pootle le emetse <b>PO</b>based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, empa ho ka hlokeha "
+"hore o bale <a href=\"http://www.thechestnut.com/flumps.htm\">ena</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Meetso"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Saete ena e sebedisa:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (ho %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Leqephe la mosebedise la: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Etsa diphetoho"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Leqephe la taolo"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Etsa taolo"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Mahokela a kapele"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Tlelika ho 'Fetola dikgetho' mme o kgethe dipuo le diprojeke tse itseng"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d ya projeke, palohare %d%% a fetoletsweng"
+msgstr[1] "%d ya diprojeke, palohare %d%% a fetoletsweng"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s:%s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Taolo"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Khoutu ya Puo"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Lebitso la Puo"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d ya puo, palohare %d%% e fetoletsweng"
+msgstr[1] "%d ya dipuo, palohare %d%% e fetoletsweng"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Puo"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projeke %s, Puo %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Etsa search"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Patlisiso e Tswetseng Pele"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Upload ya file ha e kgone ho phetheha, ha hona file e kentsweng"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "E ka kgona feela ho etsa upload ya PO files le di zip tsa PO files"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Fana ka Mantswe"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Fana ka Bohato"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Efa Mosebedisi"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "maikemisetso"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Kenya lebitso la boikemisetso"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Eketsa Boikemisetso"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Etsa File Upload"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Kgetha file ho etsa upload"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Hlakola"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Hlakola faele ya hajwale haeba e ne e se e le teng"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Kopanya"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Kopanya file e ntjha le ya kgale mme o fetole dikgohlano hoba ditlhahiso"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ha e boikemisetsong"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Eketsa Mosebedisi"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Faele ya PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Faele ya XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts faele"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Faele ya CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Faele ya MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Lokisa"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Netefatsa"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Mantswe Kaofela"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Tse sa fetolelwang"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ha e ya fanwa"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ha ea fanwa ebile ha ea fetolelwa"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Beha Boikemisetso"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Kgetha ka Bongata"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Efe"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Bontsha Function tsa ho etsa Diphetoho"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Bontsha Dipalopalo"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Bontsha Tracks"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Pata Tracks"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Bontsha Ditlhatlhobo"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Pata ditlhatlhobo"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Bontsha Maikemisetso"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Pata Maikemisetso"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Bontsha tse Fannweng"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Pata tse Fannweng"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Boikemisetso kaofela: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Fetolela Mantswe aka"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Sheba Mantswe aka"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Ha oa fuwa letho"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Etsa Phetolelo ya Kapele ya Mantswe"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Ha ho le o le filweng le sa fetolelwang"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Shebisisa Ditlhahiso"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Sheba Ditlhahiso"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Phetolelo ya Kapele"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Sheba tse sa Fetolelwang"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ha hona tse sa fetolelwang"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Fetolela Tsohle"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP ya boikemisetso"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP ya foldara"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Jenereita SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d ya lentswe (%d%%) a feitseng"
+msgstr[1] "%d ya mantswe (%d%%) a feitseng"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d mantswe a (%d%%) a fannweng"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d ya mantswe]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d ya mantswe (%d%%) ya a fetoletsweng"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Diprojeke kaofela"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Dipuo kaofela"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Akhaonte yaka"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Ditokomane le thuso"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Etswa mona"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Kena"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Ingodise"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Netefatsa"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo ya Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Tsohle ka Pootle server ena"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Maikemisetso ohle"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d difaele"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d faele"
+msgstr[1] "%d difaele"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d ya mantswe"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Lebitso"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Tse fetoletsweng"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Persente e fetoletsweng"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Mantswe a fetoletsweng"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Tse sa hlakang"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Persente ya tse sa hlakang"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Mantswe a sa hlakang"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Persente ya tse sa fetolelwang"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Mantswe a sa fetolelwang"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Kaofela"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Mantswe kaofela"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Kerafo"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Mongolo wa Mohlodi"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Mongolo wa Thagete"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Dikarabelo"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Bodulo"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Ho kena ho feitse"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "E lebisa ho keneng..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "O tlameha ho kena pele o fetela leqepheng la lehae"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Dintlha tsa boitsebiso di lokisitswe"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "O tlameha ho kena pele o fetela leqepheng la taolo"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "E lebisa leqepheng la lehae..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Ha ona ditokelo tsa ho administer pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Sheba"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Hlahisa"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Fetolela"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Shebisisa"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Boloka"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Komphaela difaele tsa PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Fana"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Ha oa dumellwa ho hlakola \"nobody\" kapa \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Ha ona ditokelo tsa ho fetola di goals mona"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Ha ona ditokelo tsa ho kenya difaele mona"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Ha ona ditokelo tsa ho etsa file overwrite mona"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Ha ona ditokelo tsa ho kenya difaele tse ntjha mona"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Ha ona ditokelo tsa ho etsa file updates mona"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Ha ona ditokelo tsa ho netefatsa difaele mona"
+
+#: projects.py:659
+msgid "Error while extracting archive"
+msgstr "Phoso ha ho ntshuwa polokelo"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Ha ona ditokelo tsa ho etsa diphetoho mona"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Ha ona ditokelo tsa ho fetola diphetolelo mona"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Ha ona ditokelo tsa ho etsa ditlhahiso mona"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Ha ona ditokelo tsa ho shebisisa ditlhahiso mona"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d tse fetoletsweng\n"
+"(%d tse sa fetolelwang, %d tse sa hlakang)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: e fetolelwa %s ho %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "E ne e le"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Phetolelo"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Dumela dihlahiso"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Hana dihlahiso"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Tlhakisetso ka mofetoledi"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Tlhakisetso ka developer"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Tse amanang"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Sebetsa..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Phoso: Ho hong ha hwa tsamaya hantle."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Qetello ya batch"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Tlilika mona ho kgutlela ho index"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Qalong"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Tse %d morao"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Phetolelo %d hoisa ho %d ho tse %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Tse %d tse latelang"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Qetellong"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "e hlahloba %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Seo o neng o se batla ha se a fumaneha ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "O se o qetile ka ntho tsohle tseo o neng o di kgethile"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Bonngwe"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Bongata"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Etsa phetoho"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopitsa"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Tlola"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Morao"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Romela phetolelo ena"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Hodisa"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Nyenyefatsa |"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Bongateng %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Phetolelo ha e dumellehe hobane bongata puong ya hao ha bo fumanehe. "
+"Ikopanye le Site Administrator."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Phetolelo ya hajwale"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Tlhahiso %d ka %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Tlhahiso %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Thlahiso ka %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Tlhahiso:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "O tlameha ho fana ka phasewete e nepahetseng bonyane %d ditlhaku."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Phasewete ena ha e tshwane le eo o netefaditseng ka yona."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Kena ho Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Lebitso la mosebedisi:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Phasewete:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Puo"
+
+#: users.py:71
+msgid "Login"
+msgstr "Kena"
+
+#: users.py:77
+msgid "Default"
+msgstr "Ya kamehla"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Kenya tsa boingodiso ba hao"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Boingodiso ba Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Lebitso la mosebedisi leo o le batlileng"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Fana ka imeile aterese e nepahetseng"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Mabitso ka botlalo"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Phasewete ya hao"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Netefatsa phasewete"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Kenya phasewete hape ho e netefatsa"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Ngodisa Akhaonte"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Kenya dintlha tsa hao tsa boingodiso"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Netefatso ya Akhaonte ya Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Khoutu ya ho Netefatsa"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Khoutu ya netefatso eo o e romelletsweng"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Netefatsa Akhaonte"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Dikgetho tsa: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Dintlha tsa Boitsebiso"
+
+#: users.py:186
+msgid "Email"
+msgstr "Imeile"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Tranlation Interface Configuration"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Puo e sebediswang"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Diprojeke Tsaka"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Dipuo Tsaka"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Leqephe la lehae"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Mohlodi o Mong wa Leleme"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Letho"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Kenyo ya bophahamo (ka mela)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Palo ya mela e bontshitsweng"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Palo ya mela e phetolelong"
+
+#: users.py:307
+msgid "Error"
+msgstr "Phoso"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "O hloka hore o be siteadmin ho fetola basebedisi"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Lebitso la mosebedisi le tlameha hoba alphanumeric mme le qale ka alphabet."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Wena (kapa emong) o lekile ho ngodisa akhaonte ka lebitso la hao.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Hare boloke phasewete ya hao, empa hash ya teng feela.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Ha o na le bothata ka boingodiso ikopanye le %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Ha o na le bothata ba ho ingodisa ikopanye le site administrator.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Lebitso leno la mosebedisi le teng. Imeile e tla romelwa ho imeile aterese e "
+"ngodisitsweng.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "E fetela ho<a href='%s'>kena</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Akhaonte ya Pootle e se e ngodisitswe ka imeile aterese ena.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Ho netefatsa akhaonte ya hao, latela lehokela lena:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Khoutu ya ho netefatsa ke:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Haeba ha o kgone ho latela lehokela lena, kenya khoutu ena leqepheng la "
+"netefatso.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Molaetsa ona o rometswe ho netefatsa hore imeile aterese ena e nepahetse. "
+"Haeba o ne o sa batle ho ngodisa akhaonte, o ka tlohela molaetsa ona.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Akhaonte e ngodisitswe. O tla romelwa dintlha tsa ho kena hammoho le code ya "
+"netefatso. Kenya khoutu ya netefatso <a href='%s'>leqepheng la "
+"netefatso</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Kapa latela lehokela ya netefatso habonolo feela ho imeile)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Lebitso la hao la mosebedisi ke: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Phasewete ya hao ke: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Imeile aterese ya hao e ngodisitsweng ke: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "E lebisa ho Leqephe la Boingodiso..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "E lebisa leqepheng la ho Kena..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Akhaonte ya hao e netefaditswe! E lebisa ho keneng..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Dintlha tsa ho netefatsa di fosahetse."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Netefatso e feitse"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Bophahamo bo tlameha hoba dinomoro"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Bophara bo tlameha hoba dinomoro"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Palo ya mela e bontshitsweng e tlameha hoba dinomoro"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Palo ya mela e bontshitsweng phetolelong e tlameha hoba dinomoro"
+
+#~ msgid "Accept"
+#~ msgstr "Amohela"
+
+#~ msgid "Reject"
+#~ msgstr "Hana"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Projeke ya Phetolelo ya WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Hodisa bophara |"
+
+#~ msgid "Narrow"
+#~ msgstr "Nyenyefatsa bophara |"
+
+#~ msgid "Reset"
+#~ msgstr "hlakola/o kgutlisetse qalong"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/sv/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/sv/jToolkit.po
new file mode 100644
index 0000000..4caf80c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/sv/jToolkit.po
@@ -0,0 +1,144 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-08-07 14:57+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.9rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Inloggning för %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Avbryt denna åtgärd och starta en ny session"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"Istället för att bekräfta denna åtgärd, logga ut och börja om från början"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Avsluta program"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Avsluta detta program och återgå till föräldraprogrammet"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", bekräfta inloggning"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Logga in"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Användarnamn:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Lösenord:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Språk:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Välj program"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Logga ut"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Avsluta"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "inloggad som <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "kunde inte lägga till ny session"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "utloggad"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "ansluten"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "avslutade föräldrasession"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"behöver definiera posten för användarna eller användarinställningar i "
+"serverkonfigurationen"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "användaren finns inte (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ogiltigt användarnamn och/eller lösenord"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "misslyckades med inloggningsbekräftelse"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Nej"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ja"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "ta bort"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ingen bilaga)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "bilagan är för stor"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ta bort denna bilaga"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "återställ"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "denna bilaga har tagits bort, klicka här för att återställa den"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "bifoga en fil"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/sv/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/sv/pootle.po
new file mode 100644
index 0000000..4673643
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/sv/pootle.po
@@ -0,0 +1,1541 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-29 08:30+0000\n"
+"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demo av Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Hem"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Användare"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Språk"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekt"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Allmänna inställningar"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Alternativ"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Aktuellt värde"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Spara ändringar"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titel"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Beskrivning"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Bas-URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Hemsida"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Administrera språk i Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Huvudadministrationssida"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO-kod"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Fullständigt namn"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(lägg till språk här)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Specialtecken"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(specialtecken)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Antal pluralformer"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(antal pluralformer)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Pluralekvation"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(pluralekvation)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Ta bort språk"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Ta bort %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standard"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Projektadministrationssida"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Projektkod"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(lägg till projekt här)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Projektbeskrivning"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(projektbeskrivning)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Kontrolltyp"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Filtyp"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Skapa MO-filer"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Ta bort projekt"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Användaradministrationssida"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Användarnamn"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(lägg till fullständigt namn här)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "E-postadress"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(lägg till e-postadress här)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Lösenord"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(lägg till lösenord här)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktiverad"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Aktivera ny användare"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Ta bort användare"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Tillbaka till huvudsidan"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Befintliga språk"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Uppdatera språk"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle-administratör: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Du har inte rättigheter att administrera detta projekt."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Uppdatera från mallar"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Lägg till språk"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle-admin: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Projektets hemsida"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Kan inte ställa in rättigheter för användaren %s - användare finns inte"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Detta är ett projekt av GNU-typ (en katalog, filer namngivna efter språk)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Detta är ett projekt av standardtyp (en katalog per språk)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Rättigheter för användare"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(välj för att lägga till användare)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Rättigheter"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Ta bort"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Uppdatera rättigheter"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Om Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> är en enkel webbportal som låter dig "
+"<strong>översätta</strong>! Eftersom Pootle är <strong>fri "
+"programvara</strong>, kan du hämta det och köra din egna kopia av det om du "
+"så önskar. Du kan även hjälp till i utveckling på många olika sätt (du "
+"behöver inte kunna programmera)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Själva Pootle-projektet finns på <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> där "
+"du kan finna detaljer om källkod, sändlistor etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Namnet står för <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, men du kanske behöver läsa <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">detta</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Versioner"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Detta system kör:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (på %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Användarsida för: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Ändra alternativ"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Administrationssida"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Administrera"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Snabblänkar"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Klicka på \"Ändra alternativ\" och välj några språk och projekt"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projekt, genomsnitt %d%% översatta"
+msgstr[1] "%d projekt, genomsnitt %d%% översatta"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Språkkod"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Språknamn"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d språk, genomsnitt %d%% översatta"
+msgstr[1] "%d språk, genomsnitt %d%% översatta"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Språk"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Projekt %s, Språk %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Sök"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Avancerad sökning"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Kan inte skicka upp fil, ingen fil bifogad"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Kan endast skicka upp PO-filer och arkiverade PO-filer (ZIP)"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Tilldela strängar"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Tilldela åtgärd"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Tilldela till användare"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "mål"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Ange namn på målet"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Lägg till mål"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Skicka upp fil"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Välj fil att skicka upp"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Skriv över"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Skriv över aktuell fil om den finns"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Sammanfoga"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Sammanfoga filen med den aktuella filen och gör konflikter till förslag"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Inte ett mål"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Lägg till användare"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO-fil"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF-fil"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts-fil"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV-fil"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO-fil"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Uppdatera"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Verkställ"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Alla strängar"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Ej översatta"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ej tilldelade"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ej tilldelade och ej översatta"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Ställ in mål"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Välj flera"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Tilldela till"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Visa redigeringsfunktioner"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Visa statistik"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Visa spår"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Dölj spår"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Visa kontroller"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Dölj kontroller"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Visa mål"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Dölj mål"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Visa tilldelningar"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Dölj tilldelningar"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Alla mål: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Översätt mina strängar"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Visa mina strängar"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Inga strängar tilldelade till dig"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Snabböversätt mina strängar"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Inga ej översatta strängar tilldelade till dig"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Granska förslag"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Visa förslag"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Snabböversätt"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Visa ej översatta"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Inga ej översatta poster"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Översätt alla"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP-fil av mål"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP-fil av mapp"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Skapa SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d sträng (%d%%) misslyckades"
+msgstr[1] "%d strängar (%d%%) misslyckades"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d ord (%d%%) tilldelade"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d strängar]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d ord (%d%%) översatta"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Alla projekt"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Alla språk"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mitt konto"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Dokument & hjälp"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Logga ut"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Logga in"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Registrera"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Aktivera"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle-logo"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Om den här Pootle-servern"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Alla mål"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d filer"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fil"
+msgstr[1] "%d filer"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d strängar"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Namn"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Översatta"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Översatta i procent"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Översatta ord"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Luddig"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Luddiga i procent"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Luddiga ord"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Ej översatta i procent"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Ej översatta ord"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Totalt"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Totalt antal ord"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Diagram"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Källtext"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "MÃ¥ltext"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Kommentarer"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Platser"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Inloggning misslyckades"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Omdirigerar till inloggningssida..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Inloggning behövs för att komma åt hemsidan"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Personlig information har uppdaterats"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Inloggning behövs för att komma åt administrationssidan"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Omdirigerar till hemsidan..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Du har inte rättigheter att administrera Pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Visa"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Föreslå"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Översätt"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Granska"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Arkiv"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Bygg PO-filer"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Tilldela"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Du kan inte ta bort användarna \"nobody\" eller \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Du har inte rättigheter att ändra mål här"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Du har inte rättigheter att skicka upp filer här"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Du har inte rättigheter att skriva över filer här"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Du har inte rättigheter att skicka upp nya filer här"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Du har inte rättigheter att uppdatera filer här"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Du har inte rättigheter att verkställa ändringar i filer här"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Du har inte rättigheter att ändra tilldelningar här"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Du har inte rättigheter att ändra översättare här"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Du har inte rättigheter att föreslå ändringar här"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Du har inte rättigheter att granska förslag här"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d översatta\n"
+"(%d oöversatta, %d luddiga)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: översätter %s till %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Original"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Översättning"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Godkänn förslag"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Avvisa förslag"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Översättarens kommentarer"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Utvecklarens kommentarer"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Relaterad"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Arbetar..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Fel: NÃ¥gonting gick fel."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Slut på sats"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Klicka här för att återgå till indexet"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Första"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Föregående %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Posterna %d till %d av %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Nästa %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Sista"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "kontrollerar %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Det finns inga poster som matchar den sökningen (\"%s\")"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Du har färdigställt alla poster du valde"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Singularis"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Pluralis"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Redigera"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopiera"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Hoppa över"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Tillbaka"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Skicka"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Öka"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Minska"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Pluralform %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Översättning är inte möjlig därför att information om pluralformer för ditt "
+"språk inte finns tillgängligt. Kontakta systemadministratören."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Aktuell översättning:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Förslag %d från %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Förslag %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Förslag från %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Förslag:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Du måste ange ett giltigt lösenord med åtminstone %d tecken."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Lösenordet är inte det samma som bekräftelsen."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Logga in i Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Användarnamn:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Lösenord:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Språk:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Logga in"
+
+#: users.py:77
+msgid "Default"
+msgstr "Standard"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Ange dina registreringsdetaljer"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Registrering i Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Ditt begärda användarnamn"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Du måste ange en giltig e-postadress"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Ditt fullständiga namn"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Ditt önskade lösenord"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Bekräfta lösenord"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Ange ditt lösenord igen för att försäkra dig om att det har matats in "
+"korrekt"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Registrera konto"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Ange dina aktiveringsdetaljer"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Kontoaktivering för Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Aktiveringskod"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Aktiveringskoden som du tog emot"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Aktivera konto"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Alternativ för: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Personlig information"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-post"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Konfiguration av översättningsgränssnittet"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Språk för användargränssnitt"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mina projekt"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mina språk"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Hemsida"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternativt källspråk"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Inget"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Inmatningshöjd (i rader)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Antal rader i visningsläge"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Antal rader i översättningsläge"
+
+#: users.py:307
+msgid "Error"
+msgstr "Fel"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Du behöver vara siteadmin för att ändra användare"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Användarnamn måste vara alfanumeriska, och måste börja med ett alfabetiskt "
+"tecken."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Du (eller någon annan) försökte att registrera ett konto med ditt "
+"användarnamn.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Vi lagrar inte ditt faktiska lösenord utan endast ett hashvärde av det.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Kontakta %s om du har problem med att registrera dig.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Kontakta systemadministratören om du har problem med att registrera dig.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Det användarnamnet finns redan. Ett e-postmeddelande kommer att skickas till "
+"den registrerade e-postadressen.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Fortsätter till <a href='%s'>inloggningssidan</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Ett Pootle-konto har skapats åt dig med denna e-postadressen.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "För att aktivera ditt konto, följ denna länken:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Din aktiveringskod är:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Om du inte kan följa länken kan du ange koden ovan på aktiveringssidan.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Detta meddelande skickas till dig för att validera att e-postadressen är "
+"korrekt. Om du inte vill registrera ett konto kan du helt enkelt ignorera "
+"detta meddelande.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Kontot har skapats. Du kommer att få inloggningsuppgifter och en "
+"aktiveringskod skickad till dig via e-post. Ange din aktiveringskod på <a "
+"href='%s'>aktiveringssidan</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(eller klicka helt enkelt på aktiveringslänken i e-postmeddelandet)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Ditt användarnamn är: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Ditt lösenord är: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Din registrerade e-postadress är: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Omdirigerar till registreringssidan..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Omdirigerar till inloggningssidan..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Ditt konto har aktiverats! Omdirigerar till inloggingssidan..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Aktiveringsinformationen du angav var inte giltig."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Aktivering misslyckades"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Inmatningshöjd måste vara numerisk"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Inmatningsbredd måste vara numerisk"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Antal rader som visas i visningsläget måste vara numeriskt"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Antal rader som visas i översättningsläget måste vara numeriskt"
+
+#~ msgid "Accept"
+#~ msgstr "Godkänn"
+
+#~ msgid "Reject"
+#~ msgstr "Vägra"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Översättningsprojektet WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Bredare"
+
+#~ msgid "Narrow"
+#~ msgstr "Smalare"
+
+#~ msgid "Reset"
+#~ msgstr "Återställ"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "MÃ¥ste vara en giltig e-postadress"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Inmatningsbredd (i tecken)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> är en enkel webbportal som låter dig "
+#~ "<strong>översätta</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "föräldramapp"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projekt</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d filer, %d/%d strängar (%d%%) översatta"
+
+#~ msgid "%s language"
+#~ msgstr "%s språk"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "det här är en demoinstallation av pootle"
+
+#~ msgid "current folder"
+#~ msgstr "aktuell mapp"
+
+#~ msgid "Log In"
+#~ msgstr "Logga in"
+
+#~ msgid "Log Out"
+#~ msgstr "Logga ut"
+
+#~ msgid "login status"
+#~ msgstr "inloggningsstatus"
+
+#~ msgid "project root"
+#~ msgstr "projektrot"
+
+#~ msgid "%s project"
+#~ msgstr "%s projekt"
+
+#~ msgid "<b>Current Translation:</b>"
+#~ msgstr "<b>Aktuell översättning:</b>"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "du har inte rättigheter att föreslå ändringar här"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "du har inte rättigheter att ändra översättningar här"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d strängar (%d%%) översatta"
+
+#~ msgid "%d files, "
+#~ msgstr "%d filer, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Språk</h3>"
+
+#~ msgid "current file"
+#~ msgstr "aktuell fil"
+
+#~ msgid "not logged in"
+#~ msgstr "inte inloggad"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Administration av Pootle"
+
+#~ msgid "General Options"
+#~ msgstr "Allmänna inställningar"
+
+#~ msgid "Main Admin page"
+#~ msgstr "Huvudadministrationssida"
+
+#~ msgid "Remove language"
+#~ msgstr "Ta bort språk"
+
+#~ msgid "Remove project"
+#~ msgstr "Ta bort projekt"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Du har inte rättigheter att administrera Pootle."
+
+#~ msgid ""
+#~ "This site is running:<br/>Pootle %s</br>jToolkit %s</br>Python %s (on %s/%"
+#~ "s)"
+#~ msgstr ""
+#~ "Detta webbplats kör:<br/>Pootle %s</br>jToolkit %s</br>Python %s (på %s/%"
+#~ "s)"
+
+#~ msgid "No goal"
+#~ msgstr "Inget mål"
+
+#~ msgid "Docs & Help"
+#~ msgstr "Dok & Hjälp"
+
+#~ msgid "All Projects"
+#~ msgstr "Alla projekt"
+
+#~ msgid "All Languages"
+#~ msgstr "Alla språk"
+
+#~ msgid "translation"
+#~ msgstr "översättning"
+
+#~ msgid "skip"
+#~ msgstr "hoppa över"
+
+#~ msgid "copy"
+#~ msgstr "kopiera"
+
+#~ msgid "suggest"
+#~ msgstr "föreslå"
+
+#~ msgid "submit"
+#~ msgstr "skicka in"
+
+#~ msgid "accept"
+#~ msgstr "acceptera"
+
+#~ msgid "reject"
+#~ msgstr "vägra"
+
+#~ msgid "Input Height"
+#~ msgstr "Inmatningshöjd"
+
+#~ msgid "Input Width"
+#~ msgstr "Inmatningsbredd"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/te/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/te/jToolkit.po
new file mode 100644
index 0000000..2bf0aa3
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/te/jToolkit.po
@@ -0,0 +1,144 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-06-25 08:02+0000\n"
+"Last-Translator: Veeven <veeven@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr "à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà±"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "వాడà±à°•à°°à°¿à°ªà±‡à°°à±:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "సంకేతపదం:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "భాష:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr ""
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "నిషà±à°•à±à°°à°®à°¿à°‚à°šà±"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr ""
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b>à°—à°¾ à°ªà±à°°à°µà±‡à°¶à°¿à°‚చారà±"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "నిషà±à°•à±à°°à°®à°¿à°‚చారà±"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "à°…à°¸à±à°¸à°‚ధానమైంది"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "వాడà±à°•à°°à°¿ లేనే లేరౠ(%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "తపà±à°ªà±à°¡à± వాడà±à°•à°°à°¿à°ªà±‡à°°à± లేదా/మరియౠసంకేతపదం"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "à°ªà±à°°à°µà±‡à°¶à°ªà± నిరà±à°§à°¾à°°à°£ విఫలమైంది"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "కాదà±"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "à°…à°µà±à°¨à±"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "తొలగించà±"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(జోడింపౠలేదà±)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "జోడింపౠమరీ పెదà±à°¦à°—à°¾ ఉంది"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "à°ˆ జోడింపà±à°¨à°¿ తొలగించà±"
+
+#: attachments.py:350
+#, fuzzy
+msgid "restore"
+msgstr "తిరిగిపొందండి"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "à°ˆ జోడింపà±à°¨à°¿ తొలగించాం. తిరిగి పొందడానికి ఇకà±à°•à°¡ నొకà±à°•à°‚à°¡à°¿"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "à°“ ఫైలà±à°¨à°¿ జోడించà±"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/te/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/te/pootle.po
new file mode 100644
index 0000000..5f1af07
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/te/pootle.po
@@ -0,0 +1,1388 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-27 04:38+0000\n"
+"Last-Translator: Veeven <veeven@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "పూటిలౠడెమో"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "ఇలà±à°²à±"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "వాడà±à°•à°°à±à°²à±"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "భాషలà±"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà±à°²à±"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "సాధారణ ఎంపికలà±"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "ఎంపిక"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "à°ªà±à°°à°¸à±à°¤à±à°¤ విలà±à°µ"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "మారà±à°ªà±à°²à°¨à± à°­à°¦à±à°°à°ªà°°à°šà±"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "శీరà±à°·à°¿à°•"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "వివరణ"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "మూల URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "హోమౠపేజీ"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "పూటిలౠభాషల నిరà±à°µà°¹à°£ పేజీ"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "à°ªà±à°°à°§à°¾à°¨ నిరà±à°µà°¹à°£ పేజీ"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO కోడà±"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "పూరà±à°¤à°¿ పేరà±"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(భాషని ఇకà±à°•à°¡ చేరà±à°šà°‚à°¡à°¿)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "à°ªà±à°°à°¤à±à°¯à±‡à°• à°…à°•à±à°·à°°à°¾à°²à±"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(à°ªà±à°°à°¤à±à°¯à±‡à°• à°…à°•à±à°·à°°à°¾à°²à±)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "బహà±à°µà°šà°¨à°¾à°² సంఖà±à°¯"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(బహà±à°µà°šà°¨à°¾à°² సంఖà±à°¯)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "బహà±à°µà°šà°¨ సమీకరణం"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(బహà±à°µà°šà°¨ సమీకరణం)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "భాషని తొలగించండి"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "%sని తొలగించà±"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "à°ªà±à°°à°¾à°®à°¾à°£à°¿à°•"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "పూటిలౠపà±à°°à°¾à°œà±†à°•à±à°Ÿà±à°² నిరà±à°µà°¹à°£ పేజీ"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà± సంకేతం"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(ఇకà±à°•à°¡ à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà± చేరà±à°šà°‚à°¡à°¿)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà± వివరణ"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà± వివరణ)"
+
+#: adminpages.py:155
+#, fuzzy
+msgid "Checker Style"
+msgstr "చెకరౠశైలి"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "ఫైలౠరకం"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO ఫైళà±à°³à°¨à± సృషà±à°Ÿà°¿à°‚à°šà±"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà±à°¨à°¿ తొలగించà±"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "పూటిలౠవాడà±à°•à°°à°¿ నిరà±à°µà°¹à°£ పేజీ"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "వాడà±à°•à°°à°¿à°ªà±‡à°°à±"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(పూరà±à°¤à°¿à°ªà±‡à°°à± ఇకà±à°•à°¡ చేరà±à°šà°‚à°¡à°¿)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(ఇకà±à°•à°¡ ఈమెయిలౠఇవà±à°µà°‚à°¡à°¿)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "సంకేతపదం"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(ఇకà±à°•à°¡ సంకేతపదం ఇవà±à°µà°‚à°¡à°¿)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "చేతనమయà±à°¯à°¿à°‚ది"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "కొతà±à°¤ వాడà±à°•à°°à°¿à°¨à°¿ చేతనం చెయà±à°¯à°‚à°¡à°¿"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "వాడà±à°•à°°à°¿à°¨à°¿ తొలగించండి"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "తిరిగి మొదటి పేజీకి"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "à°ªà±à°°à°¸à±à°¤à±à°¤ భాషలà±"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "భాషలని తాజాకరించà±"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "పూటిలౠనిరà±à°µà°¹à°£: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "à°ˆ à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà±à°¨à°¿ నిరà±à°µà°¹à°¿à°‚చే అధికారం మీకౠలేదà±."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "మూసలనà±à°‚à°¡à°¿ తాజాకరించà±"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "భాషని చేరà±à°šà°‚à°¡à°¿"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "పూటిలౠనిరà±à°µà°¹à°£: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà± మొదటి పేజీ"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "%s అనే వాడà±à°•à°°à°¿à°•à°¿ హకà±à°•à±à°²à± ఇవà±à°µà°²à±‡à°®à± - వాడà±à°•à°°à°¿ లేనే లేరà±"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "ఇది à°—à±à°¨à±‚-తరహా à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà± (à°’à°• సంచయం, భాష పేరà±à°¤à±‹ ఫైళà±à°³à±)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "ఇది à°ªà±à°°à°¾à°®à°¾à°£à°¿à°• తరహా à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà± (భాషకి à°’à°• సంచయం)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "వాడà±à°•à°°à°¿ à°…à°¨à±à°®à°¤à±à°²à±"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(వాడà±à°•à°°à°¿à°¨à°¿ చేరà±à°šà°¡à°¾à°¨à°¿à°•à°¿ à°Žà°‚à°šà±à°•à±‹à°‚à°¡à°¿)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "అధికారాలà±"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "తొలగించà±"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "అధికారాలనౠతాజాకరించà±"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "పూటిలౠగà±à°°à°¿à°‚à°šà°¿"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>పూటిలà±</strong> అనేది <strong>à°…à°¨à±à°µà°¾à°¦à°¾à°²à°•à±</strong> వీలà±à°•à°²à±à°ªà°¿à°‚చే à°“ "
+"సరళమైన అంతరà±à°œà°¾à°² నెలవà±! పూటిలౠ<strong>à°¸à±à°µà±‡à°šà±à°›à°¾ మృదౠపరికరం</strong> à°•à°¨à±à°•, "
+"మీరౠదీనà±à°¨à°¿ దిగà±à°®à°¤à°¿ చేసà±à°•à±à°¨à°¿ మీ à°¸à±à°µà°‚తంగా నడà±à°ªà±à°•à±‹à°µà°šà±à°šà±. చాలా విధాలà±à°—à°¾ దీని "
+"వికాసంలో మీరౠపాలà±à°ªà°‚à°šà±à°•à±‹à°µà°šà±à°šà± (మీరౠపà±à°°à±‹à°—à±à°°à°¾à°®à±à°²à± రాయడం వచà±à°šà°¿à°µà±à°‚డనకà±à°•à°°à°²à±‡à°¦à±)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"పూటిలౠపà±à°°à°¾à°œà±†à°•à±à°Ÿà± <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> వదà±à°¦ "
+"కొలà±à°µà±ˆ ఉంది. à°…à°•à±à°•à°¡ మీరౠదీని మూల సంకేతం, మెయిలింగౠజాబితాలౠలాంటి వివరాలౠ"
+"పొందవచà±à°šà±."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"పూటిలౠఅంటే <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, కానీ మీరౠ<a "
+"href=\"http://www.thechestnut.com/flumps.htm\">ఇది</a> కూడా à°šà°¦à±à°µà°µà°šà±à°šà±."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "సంచికలà±"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+#, fuzzy
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"à°ˆ సైటౠనడà±à°¸à±à°¤à±à°¨à±à°¨à°¦à°¿:<br />పూటిలౠ%s<br />à°…à°¨à±à°µà°¾à°¦ పనిమà±à°Ÿà±à°²à± %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />పైథానౠ%s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "వాడà±à°•à°°à°¿ పేజీ: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "ఎంపికలౠమారà±à°šà°‚à°¡à°¿"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "నిరà±à°µà°¹à°£ పేజీ"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "నిరà±à°µà°¹à°¿à°‚à°šà±"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "à°¤à±à°µà°°à°¿à°¤ లింకà±à°²à±"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"'ఎంపికలనౠమారà±à°šà°‚à°¡à°¿' పై నొకà±à°•à°¿ కొనà±à°¨à°¿ భాషలనౠమరియౠపà±à°°à°¾à°œà±†à°•à±à°Ÿà±à°²à°¨à± à°Žà°‚à°šà±à°•à±‹à°‚à°¡à°¿"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà±, సగటౠ%d%% à°…à°¨à±à°µà°¾à°¦à°®à°¯à±à°¯à°¾à°¯à°¿"
+msgstr[1] "%d à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà±à°²à±, సగటౠ%d%% à°…à°¨à±à°µà°¾à°¦à°®à°¯à±à°¯à°¾à°¯à°¿"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "నిరà±à°µà°¹à°£"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "భాష కోడà±"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "భాష పేరà±"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d భాష, సగటౠ%d%% à°…à°¨à±à°µà°¾à°¦à°®à°¯à±à°¯à°¾à°¯à°¿"
+msgstr[1] "%d భాషలà±, సగటౠ%d%% à°…à°¨à±à°µà°¾à°¦à°®à°¯à±à°¯à°¾à°¯à°¿"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "భాష"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà± %s, భాష %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "à°…à°¨à±à°µà±‡à°·à°£"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "నిశిత à°…à°¨à±à°µà±‡à°·à°£"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "ఫైలà±à°¨à°¿ à°Žà°—à±à°®à°¤à°¿ చేయలేం, జోడించిన ఫైళà±à°²à± లేవà±"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "PO ఫైళà±à°³à°¨à± మరియౠవాటి జిపౠఫైళà±à°³à°¨à± మాతà±à°°à°®à±‡ à°Žà°—à±à°®à°¤à°¿ చేయగలరà±"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "పదాలనౠఅపà±à°ªà°—à°¿à°‚à°šà±"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "à°šà°°à±à°šà°¨à± à°…à°ªà±à°ªà°—à°¿à°‚à°šà±"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°…à°ªà±à°ªà°—à°¿à°‚à°šà±"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "లకà±à°·à±à°¯à°¾à°²à±"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "లకà±à°·à±à°¯à°ªà± పేరౠఇవà±à°µà°‚à°¡à°¿"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "లకà±à°·à±à°¯à°¾à°¨à±à°¨à°¿ చేరà±à°šà°‚à°¡à°¿"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "ఫైలà±à°¨à°¿ à°Žà°—à±à°®à°¤à°¿à°‚à°šà±"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "à°Žà°—à±à°®à°¤à°¿ చేసే ఫైలà±à°¨à°¿ à°Žà°‚à°šà±à°•à±‹à°‚à°¡à°¿"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "తిరగరాయి"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "à°ªà±à°°à°¸à±à°¤à±à°¤ ఫైలౠఉంటే దానà±à°¨à°¿ తిరగరాసà±à°¤à±à°‚ది"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "విలీనంచేయి"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "ఫైలà±à°¨à°¿ à°ªà±à°°à°¸à±à°¤à±à°¤ ఫైలà±à°²à±‹ విలీనంచేసి, సంఘరà±à°·à°£à°²à°¨à°¿ సూచనలà±à°—à°¾ మారà±à°šà±"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "లకà±à°·à±à°¯à°‚లో లేదà±"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "వాడà±à°•à°°à°¿à°¨à°¿ చేరà±à°šà°‚à°¡à°¿"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO ఫైలà±"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF ఫైలà±"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts ఫైలà±"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV ఫైలà±"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO ఫైలà±"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "తాజకరించà±"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "à°…à°¨à±à°¨à°¿ పదాలà±"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°‚ కానివి"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "à°…à°ªà±à°ªà°—ించనివి"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "à°…à°ªà±à°ªà°—ించనివి మరియౠఅనà±à°µà°¾à°¦à°‚ కానివి"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "లకà±à°·à±à°¯à°¾à°¨à±à°¨à°¿ నిరà±à°¦à±‡à°¶à°¿à°‚à°šà±"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "గణాంకాలౠచూపించà±"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "లకà±à°·à±à°¯à°¾à°²à°¨à± చూపించà±"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "లకà±à°·à±à°¯à°¾à°²à°¨à± దాచà±"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "à°…à°ªà±à°ªà°—ింతలనౠచూపించà±"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "à°…à°ªà±à°ªà°—ింతలనౠదాచà±"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "à°…à°¨à±à°¨à°¿ లకà±à°·à±à°¯à°¾à°²à±: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "నా పదాలనౠఅనà±à°µà°¦à°¿à°‚à°šà±"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "నా పదాలనౠచూపించà±"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "మీకౠఅపà±à°ªà°—à°¿à°‚à°šà°¿à°¨ పదాలేమి లేవà±"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°‚కాని పదాలేమీ మీకౠఅపà±à°ªà°—ించబడి లేవà±."
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "సూచనలనౠసమీకà±à°·à°¿à°‚à°šà°‚à°¡à°¿"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "సూచనలనౠచూడండి"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "à°¤à±à°µà°°à°¿à°¤ à°…à°¨à±à°µà°¾à°¦à°‚"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°‚ కాని వాటిని చూడండి"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°‚ కానివి à°à°®à±€à°²à±‡à°µà±"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "à°…à°¨à±à°¨à±€ à°…à°¨à±à°µà°¦à°¿à°‚à°šà°‚à°¡à°¿"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "సంచయపౠజిపà±"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF తయారà±à°šà±‡à°¯à°¿"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d పదం (%d%%) విఫలం"
+msgstr[1] "%d పదాలౠ(%d%%) విఫలం"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d పదాలౠ(%d%%) à°…à°¨à±à°¯à°¾à°•à±à°°à°¾à°‚తమయà±à°¯à°¾à°¯à°¿"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d పదాలà±]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d పదాలౠ(%d%%) à°…à°¨à±à°µà°¾à°¦à°®à°¯à±à°¯à°¾à°¯à°¿"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "à°…à°¨à±à°¨à°¿ à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà±à°²à±"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "à°…à°¨à±à°¨à°¿ భాషలà±"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "నా ఖాతా"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "పతà±à°°à°¾à°²à± & సహాయం"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "నిషà±à°•à±à°°à°®à°¿à°‚à°šà±"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "లోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°‚à°¡à°¿"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "నమోదవà±à°µà°‚à°¡à°¿"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "చేతనం చేసà±à°•à±‹à°‚à°¡à°¿"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "పూటిలౠచిహà±à°¨à°‚"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "à°ˆ పూటిలౠసరà±à°µà°°à± à°—à±à°°à°¿à°‚à°šà°¿"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "à°…à°¨à±à°¨à°¿ లకà±à°·à±à°¯à°¾à°²à±"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d ఫైళà±à°³à±"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d ఫైలà±"
+msgstr[1] "%d ఫైళà±à°³à±"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d పదాలà±"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "పేరà±"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°®à±ˆà°¨à°µà°¿"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°®à±ˆà°¨ శాతం"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "à°…à°¨à±à°µà°¦à°¿à°‚à°šà°¿à°¨ పదాలà±"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "సందేహాతà±à°®à°•à°‚"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "సందేహాతà±à°®à°• శాతం"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "సందేహాతà±à°®à°• పదాలà±"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°‚కాని శాతం"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°‚కాని పదాలà±"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "మొతà±à°¤à°‚"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "మొతà±à°¤à°‚ పదాలà±"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "à°—à±à°°à°¾à°«à±"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "మూల పాఠà±à°¯à°‚"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "లకà±à°·à±à°¯à°¿à°¤ పాఠà±à°¯à°‚"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "à°µà±à°¯à°¾à°–à±à°¯à°²à±"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "à°ªà±à°°à°¾à°‚తాలà±"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "à°ªà±à°°à°µà±‡à°¶à°‚ విఫలమైంది"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "à°ªà±à°°à°µà±‡à°¶à°ªà± పేజీకి మళà±à°³à°¿à°¸à±à°¤à±à°¨à±à°¨à°¾à°‚..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "మొదటి పేజీని చూడడానికి మీరౠలోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°¿ ఉండాలి"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "à°µà±à°¯à°•à±à°¤à°¿à°—à°¤ వివరాలనౠతాజాకరించాం"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "నిరà±à°µà°¾à°¹à°• పేజీని చూడడానికి మీరౠలోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚చాలి"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "మొదటి పేజీకి మళà±à°³à°¿à°¸à±à°¤à±à°¨à±à°¨à°¾à°‚..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "పూటిలà±à°¨à°¿ నిరà±à°µà°¹à°¿à°‚చే అధికారం మీకౠలేదà±."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "చూడండి"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "సూచించà±"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "à°…à°¨à±à°µà°¦à°¿à°‚à°šà±"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "సమీకà±à°·à°¿à°‚à°šà±"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr "à°…à°ªà±à°ªà°—à°¿à°‚à°šà±"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "మీరౠ\"nobody\" లేదా \"default\" à°…à°¨à±à°¨ వాడà±à°•à°°à°¿à°¨à°¿ తొలగించలేరà±."
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "ఇకà±à°•à°¡ లకà±à°·à±à°¯à°¾à°²à± మారà±à°šà°¡à°¾à°¨à°¿à°•à°¿ మీకౠఅధికారం లేదà±"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "ఫైళà±à°³à°¨à± à°Žà°—à±à°®à°¤à°¿ చేయడానికి మీకౠఅధికారం లేదà±"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "ఇకà±à°•à°¡à°¿ ఫైళà±à°³à°¨à± తిరగరాయడానికి మీకౠఅధికారం లేదà±"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "ఇకà±à°•à°¡ కొతà±à°¤ ఫైళà±à°³à°¨à± à°Žà°—à±à°®à°¤à°¿ చేయడానికి మీకౠఅధికారం లేదà±"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "ఇకà±à°•à°¡ ఫైళà±à°³à°¨à± మారà±à°šà°¡à°¾à°¨à°¿à°•à°¿ మీకౠఅధికారం లేదà±"
+
+#: projects.py:555
+#, fuzzy
+msgid "You do not have rights to commit files here"
+msgstr "ఇకà±à°•à°¡ ఫైళà±à°³à°¨à± చేరà±à°šà°¡à°¾à°¨à°¿à°•à°¿ మీకౠఅధికారం లేదà±"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "ఇకà±à°•à°¡ à°…à°ªà±à°ªà°—ింతలౠమారà±à°šà°¡à°¾à°¨à°¿à°•à°¿ మీకౠఅధికారం లేదà±"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "ఇకà±à°•à°¡ à°…à°¨à±à°µà°¾à°¦à°¾à°²à°¨à°¿ మారà±à°šà±‡ అధికారం మీకౠలేదà±"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "మారà±à°ªà±à°²à°¨à°¿ సూచించే అధికారం మీకౠలేదà±"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "సూచనలని సమీకà±à°·à°¿à°‚చే అధికారం మీకౠలేదà±"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d à°…à°¨à±à°µà°¾à°¦à°®à°¯à±à°¯à°¾à°¯à°¿\n"
+"(%d à°…à°¨à±à°µà°¾à°¦à°‚ కాలేదà±, %d సందేహాతà±à°®à°•à°‚)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: %sని %s లోనికి à°…à°¨à±à°µà°¦à°¿à°¸à±à°¤à±à°¨à±à°¨à°¾à°°à±: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "అసలà±"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°‚"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "సలహాని అంగీకరించà±"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "సలహాని తిరసà±à°•à°°à°¿à°‚à°šà±"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°•à±à°¨à°¿ à°µà±à°¯à°¾à°–à±à°¯à°²à±"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "వికాసకà±à°¨à°¿ à°µà±à°¯à°¾à°–à±à°¯à°²à±"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "సంబంధించినవి"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "తెసà±à°¤à±à°¨à±à°¨à°¾à°‚..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "పొరపాటà±: à°à°¦à±‹ తపà±à°ªà± జరిగింది."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "à°¬à±à°¯à°¾à°šà± యొకà±à°• à°®à±à°—à°¿à°‚à°ªà±"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "తిరిగి సూచికకి వెళà±à°³à°¡à°¾à°¨à°¿à°•à°¿ ఇకà±à°•à°¡ నొకà±à°•à°‚à°¡à°¿"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "మొదలà±"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "à°•à±à°°à°¿à°¤à°‚ %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%d à°¨à±à°‚à°¡à°¿ %d వరకà±, మొతà±à°¤à°‚ %d లో"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "తరà±à°µà°¾à°¤à°¿ %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "చివర"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%sని సరిచూసà±à°¤à±à°¨à±à°¨à°¾à°°à±"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "à°† à°…à°¨à±à°µà±‡à°·à°£ ('%s') à°•à°¿ సరిపోలిన అంశాలేమీ లేవà±"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "మీరౠఎంచà±à°•à±à°¨à±à°¨ అంశాలని చూడడం à°®à±à°—ించారà±"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "à°à°•à°µà°šà°¨à°‚"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "బహà±à°µà°šà°¨à°‚"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "మారà±à°šà±"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "కాపీచెయà±à°¯à°¿"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "వదిలివేయి"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "వెనకà±à°•à°¿"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "దాఖలà±à°šà±†à°¯à±à°¯à°¿"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "పెంచà±"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "తగà±à°—à°¿à°‚à°šà±"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "బహà±à°µà°šà°¨ రూపం %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"మీ భాషకి సంబంధించి బహà±à°µà°šà°¨ సమాచారం à°…à°‚à°¦à±à°¬à°¾à°Ÿà±à°²à±‹ లేనందà±à°¨ à°…à°¨à±à°µà°¾à°¦à°‚ అసాధà±à°¯à°‚. దయచేసి "
+"సైటౠనిరà±à°µà°¾à°¹à°•à±à°¨à±à°¨à°¿ సంపà±à°°à°¦à°¿à°‚à°šà°‚à°¡à°¿."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "à°ªà±à°°à°¸à±à°¤à±à°¤ à°…à°¨à±à°µà°¾à°¦à°‚:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "%s యొకà±à°• సూచన %d:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "సూచన %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s యొకà±à°• సూచన:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "సూచన:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "కనీసం %d à°…à°•à±à°·à°°à°¾à°²à±à°¨à±à°¨ సరైన సంకేతపదం ఇవà±à°µà°‚à°¡à°¿."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "సంకేతపదం నిరà±à°§à°¾à°°à°£à°•à±ˆ ఇచà±à°šà°¿à°¨ దానితో సరిపోలేదà±."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "పూటిలౠలోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°‚à°¡à°¿"
+
+#: users.py:66
+msgid "Username:"
+msgstr "వాడà±à°•à°°à°¿à°ªà±‡à°°à±:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "సంకేతపదం:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "భాష:"
+
+#: users.py:71
+msgid "Login"
+msgstr "à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà±"
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "మీ నమోదౠవివరాలౠఇవà±à°µà°‚à°¡à°¿"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "పూటిలౠనమోదà±"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "మీకౠకావలసిన వాడà±à°•à°°à°¿à°ªà±‡à°°à±"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "మీరౠసరైన ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ ఇవà±à°µà°¾à°²à°¿"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "మీ పూరà±à°¤à°¿ పేరà±"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "మీకà±à°•à°¾à°µà°²à°¸à°¿à°¨ సంకేతపదం"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "సంకేతపదానà±à°¨à°¿ నిరà±à°§à°¾à°°à°¿à°‚à°šà°‚à°¡à°¿"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "మీరౠసరిగానే ఇచà±à°šà°¾à°°à°¨à°¿ నిశà±à°šà°¯à°¿à°‚à°šà±à°•à±‹à°¡à°¾à°¨à°¿à°•à°¿ మీ సంకేతపదానà±à°¨à°¿ మళà±à°³à±€ ఇవà±à°µà°‚à°¡à°¿"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "ఖాతాని నమోదà±à°šà±‡à°¸à±à°•à±‹à°‚à°¡à°¿"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "à°ˆ చేతనపౠవివరాలౠఇవà±à°µà°‚à°¡à°¿"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "పూటిలౠఖాతా చేతనం"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "చేతనపౠకోడà±"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "మీకౠఅందిన చేతనపౠకోడà±"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "ఖాతాని చేతనం చేయà±à°¯à°‚à°¡à°¿"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "%s యొకà±à°• ఎంపికలౠ"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "à°µà±à°¯à°•à±à°¤à°¿à°—à°¤ వివరాలà±"
+
+#: users.py:186
+msgid "Email"
+msgstr "ఈమెయిలà±"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°ªà± అంతరవరà±à°¤à°¿ à°¸à±à°µà°°à±‚పణం"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "వాడà±à°•à°°à°¿ అంతరవరà±à°¤à°¿ భాష"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "నా à°ªà±à°°à°¾à°œà±†à°•à±à°Ÿà±à°²à±"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "నా భాషలà±"
+
+#: users.py:196
+msgid "Home page"
+msgstr "హోమౠపేజీ"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "à°ªà±à°°à°¤à±à°¯à°¾à°®à±à°¨à°¾à°¯ మూల భాష"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "à°à°¦à±€ కాదà±"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "చూసేపà±à°ªà°Ÿà°¿ à°¸à±à°¥à°¿à°¤à°¿à°²à±‹ వరà±à°¸à°² సంఖà±à°¯"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "à°…à°¨à±à°µà°¾à°¦à°ªà± à°¸à±à°¥à°¿à°¤à°¿à°²à±‹ వరà±à°¸à°² సంఖà±à°¯"
+
+#: users.py:307
+msgid "Error"
+msgstr "పొరపాటà±"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "వాడà±à°•à°°à±à°²à°¨à± మారà±à°šà°¡à°¾à°¨à°¿à°•à°¿ మీరౠసైటౠనిరà±à°µà°¾à°¹à°•à±à°¡à°¯à°¿ ఉండాలి"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"వాడà±à°•à°°à°¿à°ªà±‡à°°à±à°²à±‹ à°…à°•à±à°·à°°à°¾à°²à± మరియౠఅంకెలౠమాతà±à°°à°®à±‡ ఉండాలి, మరియౠఖచà±à°šà°¿à°¤à°‚à°—à°¾ à°…à°•à±à°·à°°à°‚తో "
+"మొదలవà±à°µà°¾à°²à°¿."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "మీ వాడà±à°•à°°à°¿à°ªà±‡à°°à±à°¤à±‹ మీరౠ(లేదా మరెవరో) ఖాతాని నమోదà±à°šà±‡à°¯à°¡à°¾à°¨à°¿à°•à°¿ à°ªà±à°°à°¯à°¤à±à°¨à°¿à°‚చారà±.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "మీ అసలౠసంకేతపదానà±à°¨à°¿ కాకà±à°‚à°¡à°¾ దాని హాషౠని మాతà±à°°à°®à±‡ à°­à°¦à±à°°à°ªà°°à±à°¸à±à°¤à°¾à°®à±.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "సైటà±à°²à±‹ నమోదà±à°šà±‡à°¸à±à°•à±‹à°µà°¡à°‚లో సమసà±à°¯à°²à±à°‚టే, దయచేసి %s ని సంపà±à°°à°¦à°¿à°‚à°šà°‚à°¡à°¿.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "సైటà±à°²à±‹ నమోదà±à°šà±‡à°¸à±à°•à±‹à°µà°¡à°‚లో సమసà±à°¯à°²à±à°‚టే, దయచేసి సైటౠనిరà±à°µà°¾à°¹à°•à±à°¡à°¿à°¨à°¿ సంపà±à°°à°¦à°¿à°‚à°šà°‚à°¡à°¿.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "à°† వాడà±à°•à°°à°¿ పేరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ ఉంది. నమోదైన ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾à°•à°¿ à°“ సందేశం పంపిసà±à°¤à°¾à°‚.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "<a href='%s'>à°ªà±à°°à°µà±‡à°¶à°®à±</a>నకౠవెళà±à°¤à±à°¨à±à°¨à°¾à°‚\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "à°ˆ ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾à°¨à°¿ ఉపయోగించి మీకోసం à°“ పూటిలౠఖాతా తెరిచాం.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "మీ ఖాతాని చేతనం చేసà±à°•à±‹à°µà°¡à°¾à°¨à°¿à°•à°¿, à°ˆ లింకà±à°¨à°¿ à°…à°¨à±à°¸à°°à°¿à°‚à°šà°‚à°¡à°¿:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"మీ ఖాతా చేతనపౠసంకేతం:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "à°ˆ లింకà±à°¨à°¿ మీరౠఅనà±à°¸à°°à°¿à°‚చలేకపోతే, దయచేసి పై సంకేతానà±à°¨à°¿ చేతనపౠపేజీలో ఇవà±à°µà°‚à°¡à°¿.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ సరైనదని నిరà±à°§à°¾à°°à°¿à°‚à°šà±à°•à±‹à°¡à°¾à°¨à°¿à°•à°¿ à°ˆ సందేశం పంపించామà±. మీరౠఖాతాని "
+"నమోదౠచేసà±à°•à±‹à°µà°¦à±à°¦à°¨à±à°•à±à°‚టే, మీ సందేశానà±à°¨à°¿ పటà±à°Ÿà°¿à°‚à°šà±à°•à±‹à°•à°‚à°¡à°¿.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"ఖాతాని సృషà±à°Ÿà°¿à°‚చాం. à°ªà±à°°à°µà±‡à°¶à°ªà± వివరాలని మరియౠచేతనపౠసంకేతానà±à°¨à°¿ మీకౠఈమెయిలౠ"
+"చేసà±à°¤à°¾à°‚. మీ చేతనపౠసంకేతానà±à°¨à°¿ <a href='%s'>చేతనపౠపేజీ</a>లో ఇవà±à°µà°‚à°¡à°¿."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(లేదా తేలికగా ఈమెయిలà±à°²à±‹à°¨à°¿ చేతనపౠలింకà±à°¨à°¿ నొకà±à°•à°‚à°¡à°¿)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "మీ వాడà±à°•à°°à°¿ పేరà±: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "మీ సంకేతపదం: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "మీరౠనమోదà±à°šà±‡à°¸à°¿à°¨ ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "నమోదౠపేజీకి మళà±à°³à°¿à°¸à±à°¤à±à°¨à±à°¨à°¾à°‚..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "à°ªà±à°°à°µà±‡à°¶à°ªà± పేజీకి మళà±à°³à°¿à°¸à±à°¤à±à°¨à±à°¨à°¾à°‚..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "మీ ఖాతా చేతనమయà±à°¯à°¿à°‚ది! à°ªà±à°°à°µà±‡à°¶à°ªà± పేజీకి మళà±à°³à°¿à°¸à±à°¤à±à°¨à±à°¨à°¾à°‚..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "చేతనపౠసమాచారం సరైనది కాదà±."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "చేతనం విఫలమైంది"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "అంగీకరించà±"
+
+#~ msgid "Reject"
+#~ msgstr "తిరసà±à°•à°°à°¿à°‚à°šà±"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/templates/jToolkit.pot b/Pootle-1.2.1/Pootle/po/pootle/templates/jToolkit.pot
new file mode 100644
index 0000000..945f4e8
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/templates/jToolkit.pot
@@ -0,0 +1,143 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr ""
+
+#: web/server.py:123
+msgid "Username:"
+msgstr ""
+
+#: web/server.py:125
+msgid "Password:"
+msgstr ""
+
+#: web/server.py:130
+msgid "Language:"
+msgstr ""
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr ""
+
+#: web/server.py:637
+msgid "Logout"
+msgstr ""
+
+#: web/server.py:639
+msgid "Exit"
+msgstr ""
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+msgid "connected"
+msgstr ""
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr ""
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr ""
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr ""
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+msgid "restore"
+msgstr ""
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/templates/pootle.pot b/Pootle-1.2.1/Pootle/po/pootle/templates/pootle.pot
new file mode 100644
index 0000000..454b737
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/templates/pootle.pot
@@ -0,0 +1,1356 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: Pootle 1.1.0\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr ""
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr ""
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr ""
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr ""
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr ""
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr ""
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr ""
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr ""
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr ""
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr ""
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+msgid "Password:"
+msgstr ""
+
+#: users.py:69
+msgid "Language:"
+msgstr ""
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+msgid "My Languages"
+msgstr ""
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/th/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/th/jToolkit.po
new file mode 100644
index 0000000..be7e38c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/th/jToolkit.po
@@ -0,0 +1,143 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-08-08 15:15+0000\n"
+"Last-Translator: Manatsawin Hanmongkolchai <manatsawin@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "เข้าระบบสำหรับ"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "ยà¸à¹€à¸¥à¸´à¸à¸£à¸²à¸¢à¸à¸²à¸£à¸™à¸µà¹‰à¹à¸¥à¹‰à¸§à¹€à¸£à¸´à¹ˆà¸¡à¹ƒà¸«à¸¡à¹ˆ"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "ออà¸à¸ˆà¸²à¸à¸£à¸°à¸šà¸š"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "ออà¸à¸ˆà¸²à¸à¹‚ปรà¹à¸à¸£à¸¡à¸™à¸µà¹‰à¹à¸¥à¹‰à¸§à¹„ปยังระดับที่สูงà¸à¸§à¹ˆà¸²"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", à¸à¸£à¸¸à¸“ายืนยันà¸à¸²à¸£à¹€à¸‚้าสู่ระบบ"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "เข้าสู่ระบบ"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "ชื่อผู้ใช้งาน :"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "รหัสผ่าน"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "ภาษา :"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "เลือà¸à¹‚ปรà¹à¸à¸£à¸¡"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "ออà¸à¸ˆà¸²à¸à¸£à¸°à¸šà¸š"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "จบà¸à¸²à¸£à¸—ำงาน"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "เข้าใช้งานโดย <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "ไม่สามารถเพิ่มวาระใหม่ได้"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "ออà¸à¸ˆà¸²à¸à¸£à¸°à¸šà¸š"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "เชื่อมต่อ"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "ต้องà¸à¸³à¸«à¸™à¸”ผู้ใช้งานหรือรายà¸à¸²à¸£ userprefs ในà¸à¸²à¸£à¸•à¸±à¹‰à¸‡à¸„่า server"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "ไม่มีชื่อผู้ใช้งานนี้ในระบบ (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "ไม่พบชื่อผู้ใช้งานà¹à¸¥à¸°/หรือรหัสผ่าน"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "à¸à¸²à¸£à¹€à¸‚้าสู่ระบบล้มเหลว"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "ไม่"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "ใช่"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "เอาออà¸"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(ไม่มีไฟล์à¹à¸™à¸š)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "ไฟล์à¹à¸™à¸šà¹ƒà¸«à¸à¹ˆà¹€à¸à¸´à¸™à¸—ี่ระบบà¸à¸³à¸«à¸™à¸”"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "ยà¸à¹€à¸¥à¸´à¸à¸à¸²à¸£à¹à¸™à¸šà¹„ฟล์นี้"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "à¸à¸¹à¹‰à¸‚้อมูลเà¸à¹ˆà¸²à¸à¸¥à¸±à¸šà¸¡à¸²à¹ƒà¸Šà¹‰"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ไฟล์à¹à¸™à¸šà¸™à¸µà¹‰à¹„ด้ถูà¸à¸¥à¸šà¸­à¸­à¸ à¸à¸”นี่นี่เพื่อดึงà¸à¸¥à¸±à¸šà¸¡à¸²"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "à¹à¸™à¸šà¹„ฟล์"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/th/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/th/pootle.po
new file mode 100644
index 0000000..0d85c41
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/th/pootle.po
@@ -0,0 +1,1365 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-08 15:26+0000\n"
+"Last-Translator: Manatsawin Hanmongkolchai <manatsawin@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "ตัวอย่าง Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "หน้าà¹à¸£à¸"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr ""
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr ""
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr ""
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr ""
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "บริหาร"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr ""
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "ค้นหา"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "เขียนทับ"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "ยืนยัน"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "โครงà¸à¸²à¸£à¸—ั้งหมด"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "ภาษาทั้งหมด"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "ข้อมูลส่วนตัว"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "เอà¸à¸ªà¸²à¸£à¹à¸¥à¸°à¸à¸²à¸£à¸Šà¹ˆà¸§à¸¢à¹€à¸«à¸¥à¸·à¸­"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "ออà¸à¸ˆà¸²à¸à¸£à¸°à¸šà¸š"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "à¹à¸›à¸¥"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "ดู"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "เสนอà¹à¸™à¸°"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "à¹à¸›à¸¥"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "ติชม"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "คอมไพล์ไฟล์ PO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "à¸à¸³à¸«à¸™à¸”"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "คุณไม่สามารถลบผู้ใช้ \"nobody\" หรือ \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "คุณไม่มีสิทธิà¹à¸à¹‰à¹„ขจุดมุ่งหมายที่นี่"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "คุณไม่มีสิทธิอัปโหลดไฟล์ที่นี่"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "คุณไม่มีสิทธิเขียนทับไฟล์ที่นี่"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "คุณไม่มีสิทธิอัปโหลดไฟล์ใหม่ที่นี่"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "คุณไม่มีสิทธิอัปเดตไฟล์ที่นี่"
+
+#: projects.py:555
+#, fuzzy
+msgid "You do not have rights to commit files here"
+msgstr "คุณไม่มีสิทธิอัปโหลดไฟล์ที่นี่"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "คุณไม่มีสิทธิเปลี่ยนà¸à¸²à¸£à¸¡à¸­à¸šà¸«à¸¡à¸²à¸¢à¸—ี่นี่"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "คุณไม่มีสิทธิเปลี่ยนคำà¹à¸›à¸¥à¸—ี่นี่"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "คุณไม่มีสิทธิเสนอà¹à¸™à¸°à¸à¸²à¸£à¹€à¸›à¸¥à¸µà¹ˆà¸¢à¸™à¹à¸›à¸¥à¸‡à¸—ี่นี่"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "คุณไม่มีสิทธิตรวจทานคำเสนอà¹à¸™à¸°à¸—ี่นี่"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d ถูà¸à¹à¸›à¸¥à¹à¸¥à¹‰à¸§\n"
+"(%d ว่าง, %d fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: à¸à¸³à¸¥à¸±à¸‡à¹à¸›à¸¥ %s เป็น %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "ต้นฉบับ"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "คำà¹à¸›à¸¥"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "ความเห็นของผู้à¹à¸›à¸¥"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "ความเห็นของผู้พัฒนา"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "ที่เà¸à¸µà¹ˆà¸¢à¸§à¸‚้อง"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "สิ้นสุดงาน"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "คลิà¸à¸—ี่นี่เพื่อà¸à¸¥à¸±à¸šà¹„ปยังหน้าà¹à¸£à¸"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "จุดเริ่มต้น"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d รายà¸à¸²à¸£à¸à¹ˆà¸­à¸™à¸«à¸™à¹‰à¸²"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "รายà¸à¸²à¸£ %d ถึง %d จาภ%d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d รายà¸à¸²à¸£à¸–ัดไป"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "สุดท้าย"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "à¸à¸³à¸¥à¸±à¸‡à¸•à¸£à¸§à¸ˆà¸ªà¸­à¸š %d"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+msgid "Password:"
+msgstr ""
+
+#: users.py:69
+msgid "Language:"
+msgstr ""
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+msgid "My Languages"
+msgstr ""
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "ยอมรับ"
+
+#~ msgid "Reject"
+#~ msgstr "ไม่รับ"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/tl/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/tl/jToolkit.po
new file mode 100644
index 0000000..92fdbc6
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/tl/jToolkit.po
@@ -0,0 +1,146 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-09-06 08:20+0000\n"
+"Last-Translator: Cindy Trinidad <cindytrinidad@yahoo.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Login para sa %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Kanselahin ang aksiyong ito at magsimula ng bagong sesyon"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"Sa halip na kumpirmahin ang aksiyong ito, mag-log-out na lamang at magsimula "
+"ng bago"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Lumabas sa aplikasyon"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Lumabas sa aplikasyon at bumalik sa nakatataas na aplikasyon"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", mangyaring kumpirmahin ang login"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Login"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Username:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Password:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Lenguwahe:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Piliin ang Aplikasyon"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Logout"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Lumabas"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "naka log in bilang <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "hindi makapagdagdag ng bagong sesyon"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "nag log out"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "konektado"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "lumabas sa nakatataas na sesyon"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"kailangang maglagay ng mga user o entry ng userprefs sa config ng server"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "walang user na ganito (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "hindi balidong username at/o password"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "hindi matagumpay na kumpirmasyon ng login"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Hindi"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Oo"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "tanggalin"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(walang attachment)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "masyadong malaki ang attachment"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "tanggalin ang attachment na ito"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "ibalik"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "ang attachment na ito ay tinanggal. i-click dito upang ibalik"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "mag-attach ng file"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/tl/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/tl/pootle.po
new file mode 100644
index 0000000..31c12f4
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/tl/pootle.po
@@ -0,0 +1,1393 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-06 08:18+0000\n"
+"Last-Translator: Cindy Trinidad <cindytrinidad@yahoo.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Demo ng Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Home"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Mga User"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Mga Lenguwahe"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Mga Proyekto"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Mga pangkalahatang opsiyon"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Opsiyon"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Kasalukuyang halaga"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "I-save ang mga napalitan"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Titulo"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Pagsasalarawan"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Base URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Pahinang Home"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Admin na Pahina ng mga Lenguwahe ng Pootle "
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Pangunahing pahina ng admin"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Code ng ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Buong Pangalan"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(idagdag ang lenguwahe dito)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Mga Espesyal na Titik"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(mga espesyal na titik)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Dami ng Plural"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(dami ng plural)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Equation ng Plural"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(equation ng plural)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Tanggalin ang Lenguwahe"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Tanggalin %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Pamantayan"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Admin na Pahina ng mga Proyektong Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Code ng Proyekto"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(idagdag ang proyekto dito)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Pagsasalarawan ng Proyekto"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(pagsasalarawan ng proyekto)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Istilo ng Checker"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Tipo ng File"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Gumawa ng mga MO File"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Tanggalin ang Proyekto"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Admin na Pahina ng User ng Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Pangalan ng User"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(idagdag ang buong pangalan dito)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Email Address"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(idagdag ang email dito)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Password"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(idagdag ang password dito)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Aktibo"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "I-aktibo ang Bagong User"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Tanggalin ang User"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Bumalik sa pangunahing pahina"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Kasalukuyang mga lenguwahe"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "I-update ang mga Lenguwahe"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle Admin: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Wala kang karapatang pangasiwaan ang proyektong ito."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "I-update mula sa mga template"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Idagdag ang Lenguwahe"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle Admin: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Home na pahina ng proyekto"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Hindi mai-set ang karapatan para sa username na %s - walang ganitong user"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Ito ay istilong-GNU na proyekto (isang direktoryo, ang mga file ay "
+"nakapangalan bawat lenguwahe)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Ito ay karaniwang istilong proyekto (isang direktoryo bawat lenguwahe)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Mga Pagpayag sa User"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(piliin upang idagdag ang user)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Mga Karapatan"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Tanggalin"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "I-update ang mga Karapatan"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Tungkol sa Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"Ang <strong>Pootle</strong> ay isang simpleng web portal kung saan maaari "
+"kang <strong>magsalin</strong> ng wika! Dahil sa ang Pootle ay "
+"<strong>Libreng Software</strong>, maaari mo itong i-download at patakbuhin "
+"ang sarili mong kopya kung gusto mo. Maaari ka ring lumahok sa paggawa nito "
+"sa maraming paraan (hindi ka kaililangang marunong mag program)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Ang proyektong Pootle project ay naka host sa <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> kung "
+"saan mo makikita ang mga detalye ng source code, mga mailing lists atbp."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Ang ibig sabihin ng pangalan ay <b>PO</b>-nakabaseng <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, ngunit maaari mo "
+"ring basahin <a href=\"http://www.thechestnut.com/flumps.htm\">ito</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Mga Bersiyon"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Ang site na ito ay tumatakbo ng:<br />Pootle %s<br />Toolkit sa Pagsalin "
+"%s<br />jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on "
+"%s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Pahina ng User para sa: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Palitan ang mga opsiyon"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Pahina ng admin"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Pangasiwaan"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Mga Quick Link"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Mangyaring i-click ang 'Palitan ang mga Opsiyon' at piliin ang ilang "
+"lenguwahe at mga proyekto"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Admin"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Code ng Lenguwahe"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Pangalan ng Lenguwahe"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Lenguwahe"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Proyekto %s, Lenguwahe %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Hanapin"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Advanced na Paghanap"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Hindi mai-upload ang file, walang naka-attach na file"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Makakapag-upload lamang ng mga PO file at mga zip ng mga PO file"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Magdesigna ng mga String"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Magdesigna ng Aksiyon"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Idesigna sa User"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "mga layunin"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Ipasok ang pangalan ng layunin"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Magdagdag ng layunin"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Mag-upload ng file"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Pumili ng file na ia-upload"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Patungan"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Patungan ang kasalukuyang file kung mayroon na"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Pagsamahin"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Pagsamahin ang file at ang kasalukuyang file at gawing suhestiyon ang mga "
+"hindi pagkakatugma"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Wala sa layunin"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Magdagdag ng User"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO file"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF file"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts file"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV file"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO file"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "I-update"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "I-commit"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Lahat ng mga String"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Hindi Naisalin"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Hindi Nadesigna"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Hindi Nadesigna at Hindi Nasalin"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "I-set ang Layunin"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Pumili ng Ilan"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Idesigna Kay"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Ipakita ang mga Gawaing Pang-edit"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Ipakita ang mga Istatistiko"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Ipakita ang mga Track"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Itago ang mga Track"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Ipakita ang mga Check"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Itago ang mga Check"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Ipakita ang mga Layunin"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Itago ang mga Layunin"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Ipakita ang mga Nakadesigna"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Itago ang mga Nakadesigna"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Lahat ng Layunin: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Isalin ang Aking mga String"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Tingnan ang Aking mga String"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Walang nakadesignang string sa iyo"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Mabilis na Isalin ang Aking mga String"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Walang hindi nakasaling string ang nakadesigna sa iyo"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Repasuhin ang mga suhestiyon"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Tingnan ang mga Suhestiyon"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Mabilis na Isalin"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Tingnan ang mga Hindi Pa Nakasalin"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Walang terminong hindi pa nakasalin"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Isalin Lahat"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP ng layunin"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP ng folder"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Gumawa ng SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d kataga (%d%%) designado na"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d mga string]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d kataga (%d%%) naisalin na"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Lahat ng proyekto"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Lahat ng lenguwahe"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Account ko"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Mga dok at tulong"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Log out"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Log in"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Magrehistro"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "I-aktibo"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Logo ng Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Tungkol sa Pootle server na ito"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Lahat ng layunin"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d mga file"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d mga string"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Pangalan"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Naisalin"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Porsiyentong naisalin"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Katagang naisalin"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Fuzzy"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Porsiyentong fuzzy"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Katagang fuzzy"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Porsiyentong hindi pa naisalin"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Katagang hindi pa naisalin"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Kabuuan"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Kabuuang kataga"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Graph"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Pinagmulang Teksto"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Nasaling Teksto"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Mga komento"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Mga lokasyon"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Hindi matagumpay na pag-login"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Ni-redirect sa login... "
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Kailangan mag log in upang ma-access ang pahinang home"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Na-update ang personal na detalye"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Kailangan mag log in upang ma-access ang admin na pahina"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Ni-redirect sa home..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Wala kang karapatang pangasiwaan ang pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Tingnan"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Suhestiyon"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Isalin"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Repasuhin"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Archive"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "I-compile ang mga PO na file"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Idesigna"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Hindi mo maaaring tanggalin ang \"nobody\" o \"default\" na user"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Wala kang karapatang magpalit ng mga layunin dito"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Wala kang karapatang mag-upload ng mga file dito"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Wala kang karapatang patungan ang mga file dito"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Wala kang karapatang mag-upload ng mga bagong file dito"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Wala kang karapatang mag-update ng mga file dito"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Wala kang karapatang mag-commit ng mga file dito"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Wala kang karapatang magpalit ng mga takdang gawain dito"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Wala kang karapatang magpalit ng mga pagsalin ng wika dito"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Wala kang karapatang mag-bigay ng suhestiyon sa pagpapalit dito"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Wala kang karapatang mag-repaso ng mga suhestiyon dito"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d nasalin\n"
+"(%d hindi nasalin, %d fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: nagsasalin %s papuntang %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Orihinal"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Pagsasalin"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Tanggapin ang suhestiyon"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Tanggihan ang suhestiyon"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Mga komento ng tagasalin"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Mga komento ng developer"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Magka-ugnay"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Ginagawa..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Error: May maling nangyari."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Dulo ng batch"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "I-click dito upang bumalik sa indise"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Simula"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Nakaraang %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Mga item %d hanggang %d ng %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Susunod na %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Tapos na"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "tsine-check %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Walang item na tumutugma sa paghahanap na iyan ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Nadaanan mo na ang mga item na napili mo"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Pang-isa"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Pang-marami"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "I-edit"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopyahin"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Laktawan"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Bumalik"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Isumite"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Palakihin"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Paliitin"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Pang-maramihang Form %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Hindi maisasalin dahil walang impormasyon tungkol sa pang-maramihan sa iyong "
+"lenguwahe. Mangyaring makipanayam sa administrador ng iyong site."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Kasalukuyang Pagsasalin:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Suhestiyon %d ni %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Suhestiyon %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Suhestiyon ni %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Suhestiyon:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+"Kailangan mong magbigay ng balidong password na may %d man lamang na titik."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Hindi pareho ang password at ang kumpirmasyon."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Mag-login sa Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Username:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Password:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Lenguwahe:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Login"
+
+#: users.py:77
+msgid "Default"
+msgstr "Default"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Mangyaring ipasok ang detalye ng iyong rehistrasyon"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Rehistrasyon sa Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Ang hiniling mong username"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Kailangan kang magbigay ng balidong email address"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Ang buong pangalan mo"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Ang ibig mong password"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Kumpirmahin ang password"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"I-type muli ang iyong password upang masiguro na tama ang pagkapasok nito"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Magrehistro ng Account"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Mangyaring ipasok ang detalye ng aktibasyon mo"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Aktibasyon ng Account sa Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Code ng Aktibasyon"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Ang natanggap mong code ng aktibasyon"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "I-aktiba ang Account"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Mga opsiyon para sa: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Mga Personal na Detalye"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Kumpigurasyon ng Interface sa Pagsalin"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Lenguwahe ng Interface ng User"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Mga Proyekto Ko"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Mga Lenguwahe Ko"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Pahinang Home"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternatibong Pinagmulang Lenguwahe"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Wala"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Ipasok ang Taas (sa dami ng linya)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Dami ng hilera sa modang view"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Dami ng hilera sa modang pagsalin"
+
+#: users.py:307
+msgid "Error"
+msgstr "Error"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Kailangan ay siteadmin ka upang magpalit ng mga user"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Ang username ay dapat alphanumeric, at kailangan magsimula sa alpabeto."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Ikaw (o ibang tao) ay nagsubok na magrehistro ng account gamit ang iyong "
+"username.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Hindi namin ini-imbak ang iyong aktuwal na password, hash lamang nito.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Kung may problema ka sa pagrehistro, mangyaring kontakin ang %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Kung may problema ka sa pagrehistro, mangyaring kontakin ang administrador "
+"ng site.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Mayroon nang ganyang username. May email na ipadadala sa rehistradong email "
+"address.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Tumutuloy sa <a href='%s'>login</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "May Pootle account na ginawa para sa iyo na gumagamit ng email address na "
+"ito.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Upang paganahin ang iyong account, sundan ang link na ito:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Ang code mo pang aktiba ay:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Kung hindi mo masundan ang link na ito, mangyaring ipasok ang code sa itaas "
+"sa pahina ng aktibasyon.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Ang mensaheng ito ay ipinadala upang beripikahin na tama ang email address. "
+"Kung hindi mo ibig na magrehistro ng account, maaaring huwag mo na pansinin "
+"ang mensaheng ito.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Nagawa na ang account. Makakatanggap ka ng email ng mga detalye ng login "
+"details at code sa aktibasyon. Mangyaring ipasok ang iyong code ng "
+"aktibasyon sa <a href='%s'>pahina ng aktibasyon</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(O i-click na lang ang link sa aktibasyon sa email)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Ang user name mo ay: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Ang password mo ay: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Ang rehistradong email address mo ay: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Dadalhin ka sa Pahina ng Rehistrasyon..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Dadalhin ka sa login na Pahina..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Aktibo na ang iyong account! Dadalhin ka sa login..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Hindi balido ang impormasyon sa aktibasyon mo."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Hindi Matagumpay ang Aktibasyon"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Dapat numero ang taas na ininput"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Dapat numero ang lapad na ininput"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Ang dami ng hilerang pinapakita sa modang view ay dapat numero"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Ang dami ng hilerang pinapakita sa modang pagsalin ay dapat numero"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/tr/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/tr/jToolkit.po
new file mode 100644
index 0000000..004a135
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/tr/jToolkit.po
@@ -0,0 +1,146 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-06-14 14:29+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Translate Toolkit 0.9rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s için oturum"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Bu eylemi iptal edin ve yeni bir oturum başlatın"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Bu eylemi onaylamak yerine, oturumdan çıkın ve yeni-baştan başlatın"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Programdan çık"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Programdan çık ve üst uygulamaya dön"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", lütfen oturum açmayı onaylayın"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Oturum Aç"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Kullanıcı ismi"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Parola"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Dil"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Uygulama Seç"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Oturumdan Çık"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Tümden çık"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "<b>%s</b> oturumu açıldı."
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "yeni bir oturum ekleyemeyecek"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "oturumdan çıkıldı"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "bağlı"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "üst oturumdan çıkıldı"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"sunucu yapılandırma için kullanıcı veya kullanıcı_tercihleri tanımlamalısınız"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "%r kullanıcısı mevcut değil"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "geçersiz kullanıcı ismi ve/veya parolası"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "oturum açma onayı başarısız"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Hayır"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Evet"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "kaldır"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(eklenti yok)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "Eklenti çok büyük"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "bu eklentiyi sil"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "geri-yükle"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "bu eklenti kaldırılmıştır. Geri-yüklemek için tıklayın"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "dosya ekle"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "sunucu yapılandırma için kullanıcı tanımlamalısınız"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/tr/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/tr/pootle.po
new file mode 100644
index 0000000..a6f59d0
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/tr/pootle.po
@@ -0,0 +1,1487 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-27 15:08+0000\n"
+"Last-Translator: Rail Aliev <rail@openoffice.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle Demo"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Baş'a Dön"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Kullanıcılar"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Diller"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projeler"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Genel seçenekler"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Seçenek"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Güncel değer"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "DeÄŸiÅŸiklikleri sakla"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Başlık"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Açıklama"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Temel adres"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Ana Sayfa"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle Diller Yönetici Sayfası"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Ana yönetim sayfası"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO Kod'u"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Tam Ä°sim"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(dili buraya ekleyin)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Özel Karakterler"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(özel karakterler)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Çoğullar'ın Sayısı"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(çoğulların sayısı)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Çoğul Eşitliği"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(çoğul eşitliği)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Dili Kaldır"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Sil: %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Standart"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle Projeler Yönetici Sayfası"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Proje Kodu"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(buraya proje ekleyin)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Proje Açıklaması"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(proje açıklaması)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Denetleyici Biçemi"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Dosya tipi"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "MO Dosyaları Oluştur"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Projeyi Sil"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle Kullanıcı Yönetim Sayfası"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Kullanıcı adı"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(buraya tam adı yazın)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "E-posta Adresi"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(buraya e-posta ekleyin)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Parola"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(buraya parola ekle)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "EtkinleÅŸtirildi"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Yeni Kullanıcıyı Etkinleştir"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Kullanıcıyı Sil"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Ana sayfa'ya dön"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Mevcut diller"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Dilleri Güncelle"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle Yöneticisi: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Bu projeyi yönetme haklarına sahip değilsiniz."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Şablonlardan Güncelle"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Dil Ekle"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle Yöneticisi: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Proje ana sayfası"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "%s kullanıcısı için haklar ayarlanamıyor, -kullanıcı mevcut değil."
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Bu proje, GNU-biçemlidir (bir dizin, dosyalar her-bir dil için "
+"adlandırılmış)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Bu proje, standart biçemlidir ( her-bir dil için bir dizin)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Kullanıcı İzinleri"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(kullancı eklemek için seç)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Haklar"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Kaldır"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Hakları Güncelle"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Pootle Hakkında.."
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> basit bir <strong>çeviri</strong> web limanıdır! "
+"<strong>Özgür Yazılım</strong> kapsamındaki Pootle'ı, bilgisayarınıza "
+"indirip çalıştırabilirsiniz. Tadını çıkarın! Bununla beraber, geliştirmelere "
+" katkıda bulunmak için pek çok yolunuz olduğunu, program yapmanıza gerek "
+"olmadığını unutmayın."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle projesinin kendisi; <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"adresinde tutulmaktadır. Daha fazla bilgi, kaynak kod, mektuplaşma listesi "
+"vs. için lütfen ziyaret edin.."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"İsmin açılımı: <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, ama fazlasını şurada okuyabilirsiniz: <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">Tıklayın</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Sürüm Bilgileri"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Bu sitede çalışanlar:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Sayfaların sahibi kullanıcı:%s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Seçenekleri Değiştir"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Yönetici Sayfası"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Yönet"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Çabuk Bağlantılar"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Lütfen 'Seçenekleri Değiştir' üzerinde tıklayın ve bazı dil ve projeleri "
+"seçin"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d projesi, ortalama %%d% çevrildi"
+msgstr[1] "%d projeleri, ortalama %%d% çevrildi"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Yönetim"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Dil Kodu"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Dil Ä°smi"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d dili, ortalama %%d% çevrildi"
+msgstr[1] "%d dilleri, ortalama %%d% çevrildi"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Dil"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Proje %s, Dil %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Ara"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "GeliÅŸmiÅŸ arama"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Dosya yüklenemedi, -eklenti dosyası içermiyor"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+"Sadece PO dosyaları ve onları içeren sıkıştırılmış dosyaları "
+"yükleyebilirsiniz"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Dizgileri Ata"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Eylem Ata"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Kullanıcıya Ata"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "hedefler"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Hedef adı girin"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Hedef Ekle"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Dosya Üste-Yükle"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Üste-yüklenecek Dosyayı seçin"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Üstüne yaz"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Zaten kayıtlıysa aktif dosyayı üzerine yaz"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "BirleÅŸtir"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Dosyayı aktif dosyayla birleştir ve çakışmaları önerilere dönüştür"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Hedefte yok"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Kullanıcı Ekle"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO dosya"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF dosyası"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts dosyası"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV dosyası"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO dosyası"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Güncelle"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Teslim et"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Tüm Dizgiler"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Çevrilmemiş"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Atanmamış"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Atanmamış ve Çevrilmemiş"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Hedef Ayarla"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Çoklu Seç"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Atanacak:"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Düzenleme Fonksiyonlarını Göster"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "İstatistikleri Göster"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "İz'leri Göster"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Ä°z'leri Gizle"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Denetlemeleri Göster"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Denetimleri Gizle"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Hedefleri Göster"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Hedefleri Gizle"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Atama'ları Göster"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Atama'ları Gizle"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Tüm Hedefler: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Dizgilerimi Çevir"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Dizgilerimi Göster"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Size atanmış dizgi yok"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Dizgilerimi Hızlı Çevir"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Size atanmış çevrilmemiş dizgi yok"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Önerileri İncele"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Önerileri Görüntüle"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Hızlı çevir"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Çevrilmemiş'leri Görüntüle"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Çevrilmemiş birşey yok"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Hepsini Çevir"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Hedefleri sıkıştır"
+
+# http://pootle.wordforge.org/tr/pootle/index.html
+# adresinde, "Düzenleme Fonksiyonlarını Göster | Hedefleri Göster | ZIP of folder " şeklinde en sonda çıkan ibare.
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Klasörü sıkıştır"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "SDF oluÅŸtur"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d dizgi (%%d%) başarısız oldu"
+msgstr[1] "%d dizgi (%%d%) başarısız oldu"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d sözcük (%%d%) atandı"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d dizgi]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d sözcük (%%%d) çevrildi"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Tüm projeler"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Tüm diller"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Hesabım"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Belgeler & yardım"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Çıkış"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "GiriÅŸ"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Kayıt"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "EtkinleÅŸtir"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle Logosu"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Bu Pootle Sunucusu Hakkında"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Tüm Hedefler"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d dosya"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d dosya"
+msgstr[1] "%d dosya"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "[%d/%d dizgi]"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Ä°sim"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Çevrilmiş"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Çevrilmiş yüzde"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Çevrilmiş sözcükler"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Belirsiz"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Bulanık çeviri yüzdesi"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Bulanık sözcükler"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Çevrilmemiş yüzdesi"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Çevrilmemiş sözcükler"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Toplam"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Toplam sözcükler"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Grafik"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Kaynak metin"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Hedef metin"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Yorumlar"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "YerleÅŸimler"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Giriş Başarısız"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Girişe yönlendiriliyorsunuz..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Ana sayfaya ulaşmak için oturumu açmanız gerekir"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Kişisel ayrıntılar güncellendi"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Yönetim sayfasına ulaşmak için oturumu açmanız gerekir"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Ana sayfaya yönlendiriliyorsunuz..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Pootle'ı yönetme haklarına sahip değilsiniz."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Görünüm"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Öner"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Çevir"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Ä°ncele"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "ArÅŸiv"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "PO dosyalarını derle"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Ata"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "\"nobody\" veya \"default\" kullanıcılarını silemezsiniz"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Buradaki hedefleri değiştirme haklarına sahip değilsiniz"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Buraya dosya yükleme haklarına sahip değilsiniz"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Buradaki dosyaların üstüne yazma haklarına sahip değilsiniz"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Buraya yeni dosya yükleme haklarına sahip değilsiniz"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Buradaki dosyaları güncelleştirme haklarına sahip değilsiniz"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Buraya dosyaları teslim etme haklarına sahip değilsiniz"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Buradaki atamaları değiştirme haklarına sahip değilsiniz"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Buradaki çevirileri değiştirme haklarına sahip değilsiniz"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Burada değişiklik önerme haklarına sahip değilsiniz"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Buradaki önerileri inceleme haklarına sahip değilsiniz"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d çevrildi\n"
+"(%d çevrilmemiş, %d belirsiz)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: %s ifadesini %s olarak çeviriyor: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Özgün"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Çeviri"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Öneriyi kabul et"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Öneriyi reddet"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Çevirmen notları"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Geliştirici notları"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Ä°lgili"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Çalışıyor..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Hata: birşeyler yanlış oldu."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Toplu iÅŸ sonu"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Dizine dönmek için tıklayın"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Başlangıç"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Önceki %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "%d ile %d arası, toplam %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Sonraki %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Son"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "%s denetleniyor.."
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "('%s') aramasına uyan bir şey bulunamadı"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Seçmiş olduğunuz öğeleri tamamladınız"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Tekil"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Çoğul"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Düzenle"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopyala"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Atla"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Geri"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Gönder"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "GeniÅŸlet"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Daralt"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Çoğul biçim %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Diliniz için çoğul bilgisi bulunmadığı için çeviri olası değildir. Lütfen "
+"site yöneticisi ile iletişim kurunuz."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Güncel Çeviri:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "% s den öneri %d:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Öneri %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s den öneri:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Öneri:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "En az %d karakterli geçerli bir parola girmelisiniz."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Parola onaylama için girilenle aynı değil."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Pootle'a giriÅŸ yap"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Kullanıcı adı:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Parola:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Dil:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Oturum Aç"
+
+#: users.py:77
+msgid "Default"
+msgstr "Varsayılan"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Lütfen kayıt ayrıntılarınızı girin"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle Kayıt"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "İstediğiniz kullanıcı adı"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Geçerli bir e-posta adresi olmalı"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Tam adınız"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Tercih ettiÄŸiniz parola"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Parola onayı"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Parolanın doğru tuşlandığından emin olmak için tekrar giriniz"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Hesap Aç"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Lütfen etkinleştime ayrıntılarınızı girin"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle Hesap EtkinleÅŸtirme"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "EtkinleÅŸtirme Kodu"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Etkinleştirme kodu alındı"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Hesabı Etkinleştir"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "%s için seçenekler:"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Kişisel Ayrıntılar"
+
+#: users.py:186
+msgid "Email"
+msgstr "E-posta"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Çeviri Arabirim Yapılandırması"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Kullanıcı Arayüzü dili"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Projelerim"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Dillerim"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Ana sayfa"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Alternatif kaynak dil"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Yok"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Yükseklik Gir (satır olarak)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Görünüm kipinde satır sayısı"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Çeviri kipinde satır sayısı"
+
+#: users.py:307
+msgid "Error"
+msgstr "Hata"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "kullanıcıları değitirebilmek için site-yöneticisi olmanız gerekir"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Kullanıcı adı harf ve rakamlardan oluşmalı, ve harf ile başlamalı."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Siz (veya başka birisi) kullandığınız kullanıcı adı ile yeni bir hesap "
+"açmaya çalıçtı.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+"Gerçek parolanız kayıt edilmiyor, sadece parolanızın hash değeri "
+"kaydediliyor."
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Kayıt ile ilgili olan sorunlarınızvarsa %s ile temasa geçiniz.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Kayıt ile ilgili olan sorunlarınızvarsa site yöneticisi ile temasa geçiniz.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Kullanıcı adı mevcut. İleti kayıtlı olan e-posta adresine gönderilecek.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "<a href='%s'>Girişe</a> yönlediriliyorsunuz\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Aşağıdaki adresi kullanarak yeni bir Pootle hesabı açılmıştır.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Hesabınızı aktive etmek için aşağıdaki bağlantıyı takip edin:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"EtkinleÅŸtirme Kodunuz:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Bağlantıyı takip edemiyorsanız yukarıdaki kodu etkinleştime sayfasına girin.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Bu ileti, vermiş olduğunuz e-posta adresini doğrulamak amacıyla "
+"gönderilmiştir. Hesap açmak istemiyorsanız bu iletiyi gözardı edebilirsiniz.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Hesabınız açılmıştır. Oturum bilgileriniz ve etkinleştime kodu e-posta ile "
+"gönderildi . Etkinleştime kodunuzu <a href='%s'>Etkinleştime Sayfasında</a> "
+"girin."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Veya e-postadaki bağlantıyı tıklayın)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Kullanıcı adınız: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Parolanız: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Kayıtlı e-posta adresiniz: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Kayıt sayfasına yönlendiriliyorsunuz..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Giriş sayfasına yönlendiriliyorsunuz..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Hesabınız etkinleştirildi! Giriş için yönlendiriliyorsunuz..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Etkinleştirme bilgisi geçerli değil."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Etkinleştirme Başarısız"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Yükseklik girdisi rakam olmalı"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Genişlik girdisi rakam olmalı"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Görünüm kipinde gösterilecek satır sayısı girdisi rakam olmalı"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Çeviri kipinde gösterilecek satır sayısı girdisi rakam olmalı"
+
+#~ msgid "Accept"
+#~ msgstr "Onayla"
+
+#~ msgid "Reject"
+#~ msgstr "Reddet"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge Çeviri Projesi"
+
+#~ msgid "Broaden"
+#~ msgstr "GeniÅŸlet"
+
+#~ msgid "Narrow"
+#~ msgstr "Daralt"
+
+#~ msgid "Reset"
+#~ msgstr "Sıfırla"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Geçerli bir e-posta adresi olmalı"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "GeniÅŸlik Gir (karakter olarak)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong>, size <strong>çeviri</strong> konusunda yardımcı "
+#~ "olabilecek küçük bir portaldır!"
+
+#~ msgid "parent folder"
+#~ msgstr "üst dizin"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projeler</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d dosya, %d/%d dizge (%d%%) çevrildi"
+
+#~ msgid "%s language"
+#~ msgstr "%s dili"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "bu pootle'ın deneme kurulumudur"
+
+#~ msgid "current folder"
+#~ msgstr "bulunulan dizin"
+
+#~ msgid "Log In"
+#~ msgstr "GiriÅŸ Yap"
+
+#~ msgid "login status"
+#~ msgstr "oturum durumu"
+
+#~ msgid "project root"
+#~ msgstr "proje kökdizini"
+
+#~ msgid "%s project"
+#~ msgstr "%s projesi"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "burada değişiklik önerme hakkına sahip değilsiniz"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "burada çeviriyi değiştirme hakkına sahip değilsiniz"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d dizgeleri (%d%%) çevirildi"
+
+#~ msgid "%d files, "
+#~ msgstr "%d dosya, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Diller</h3>"
+
+#~ msgid "current file"
+#~ msgstr "yürürlükteki dosya"
+
+#~ msgid "not logged in"
+#~ msgstr "oturum açılamadı: "
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Pootle Yönetici Sayfası"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Pootle'ı yönetme haklarına sahip değilsiniz."
+
+#~ msgid "suggest"
+#~ msgstr "öner"
+
+#~ msgid "Input Width"
+#~ msgstr "GeniÅŸlik Gir"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/uk/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/uk/jToolkit.po
new file mode 100644
index 0000000..5ac5b1e
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/uk/jToolkit.po
@@ -0,0 +1,149 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2008-09-02 10:32+0000\n"
+"Last-Translator: Serhij Dubyk - Сергій Дубик <dubyk@library.lviv.ua>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Вхід у ÑиÑтему Ð´Ð»Ñ %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Відмінити цю дію та відкрити новий ÑеанÑ"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "Ðе підтверджувати цю дію, вийти з ÑеанÑу та почати заново"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Вийти з програми"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Вийти з цієї програми та вернутиÑÑŒ на рівень вище"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", будь лаÑка, підтвердіть вхід у ÑиÑтему"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Ваш логін"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Пароль:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Мова:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Виберіть програму"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Вихід з ÑиÑтеми"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Вихід"
+
+# Зайдено у ÑиÑтему Ñк <b>%s</b>
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "Ви&nbsp;зайшли&nbsp;під&nbsp;іменем&nbsp;<b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "не вдалоÑÑ Ð´Ð¾Ð´Ð°Ñ‚Ð¸ новий ÑеанÑ"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "Ви вийшли із ÑиÑтеми"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "з'єднаний"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð³Ð¾Ð»Ð¾Ð²Ð½Ð¾Ð³Ð¾ ÑеанÑу"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"потрібно визначити кориÑтувачів або кориÑтувацькі Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ "
+"конфіґурації Ñервера"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "кориÑтувач не Ñ–Ñнує (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "невірне ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача та/або пароль"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "невдале Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð²Ñ…Ð¾Ð´Ñƒ в ÑиÑтему"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "ÐÑ–"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Так"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "вилучити"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(Ð´Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ñутнє)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "Ð´Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ð·Ð°Ð½Ð°Ð´Ñ‚Ð¾ велике"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "вилучити це долученнÑ"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "відновити"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "це Ð´Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ð±ÑƒÐ»Ð¾ вилучено. клацніть тут, щоб його відновити"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "долучити файл"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr ""
+#~ "необхідне Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ñ…Ð¾Ð´Ñƒ кориÑтувача в конфігураційному файлі Ñервера"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/uk/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/uk/pootle.po
new file mode 100644
index 0000000..87362c4
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/uk/pootle.po
@@ -0,0 +1,1470 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-28 21:59+0000\n"
+"Last-Translator: Serhij Dubyk - Сергій Дубик <dubyk@library.lviv.ua>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle наживо"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Домівка"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "КориÑтувачі"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Мови"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Проекти"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Загальні опції"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Опції"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Поточне значеннÑ"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Зберегти зміни"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Заголовок"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "ОпиÑ"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Базовий URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Ð”Ð¾Ð¼Ð°ÑˆÐ½Ñ Ñторінка"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Сторінка ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ð¾Ð²Ð°Ð¼Ð¸ Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "ОÑновна Ñторінка Ð´Ð»Ñ ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Код ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Повне ім'Ñ"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(додайте мову)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Спеціальні Ñимволи"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(Ñпеціальні Ñимволи)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "КількіÑÑ‚ÑŒ форм множини"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(кількіÑÑ‚ÑŒ форм множини)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "РівнÑÐ½Ð½Ñ Ñ„Ð¾Ñ€Ð¼ множини"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(рівнÑÐ½Ð½Ñ Ñ„Ð¾Ñ€Ð¼ множини)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Вилучити мову"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Вилучити %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Стандарт"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Сторінка ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ð°Ð¼Ð¸ Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Код проекту"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(додайте проект)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "ÐžÐ¿Ð¸Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ñƒ"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(Ð¾Ð¿Ð¸Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ñƒ)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Стиль перевірки"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Тип файлу"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Утворити MO-файли"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Вилучити проект"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Сторінка ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ¾Ñ€Ð¸Ñтувачами Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(додайте повне ім'Ñ)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "ÐдреÑа електронної пошти"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(додайте електронну пошту)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Пароль"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(додайте пароль)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Ðктивізовано"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Ðктивувати нового кориÑтувача"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Вилучити кориÑтувача"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Ðазад до головної Ñторінки"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "ІÑнуючі мови"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Оновити мови"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "ÐдмініÑÑ‚Ñ€Ð°Ñ†Ñ–Ñ Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Ви не маєте прав на ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ñ†Ð¸Ð¼ проектом."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Оновити з шаблонів"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Додати мову"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "ÐдмініÑÑ‚Ñ€Ð°Ñ†Ñ–Ñ Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Ð”Ð¾Ð¼Ð°ÑˆÐ½Ñ Ñторінка проекту"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Ðеможливо вÑтановити права Ð´Ð»Ñ Ñ‚Ð°ÐºÐ¾Ð³Ð¾ імені кориÑтувача %s - такого "
+"кориÑтувача проÑто не Ñ–Ñнує"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Це проект ГÐУ-Ñтилю (один каталог, файли іменовані за мовами)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Це проект Ñтандартного Ñтилю (один каталог на мову)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "КориÑтувацькі дозволи"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(виберіть, щоб додати кориÑтувача)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Права"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Вилучити"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Оновити права"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Про Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> - проÑтий веб-портал, Ñкий дозволÑтиме Вам "
+"<strong>перекладати</strong>! З тих пір, Ñк Pootle Ñтав <strong>вільним "
+"програмним забезпеченнÑм</strong>, Ви можете завантажити його та керувати "
+"Вашою влаÑною копією, Ñкщо Вам так подобаєтьÑÑ. Ви можете також допомагати "
+"та брати учаÑÑ‚ÑŒ у розвитку ÑиÑтеми у будь-Ñкий ÑпоÑіб (Вам не обов'Ñзково "
+"вміти програмувати)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Проект Pootle безпоÑередньо хоÑтитьÑÑ Ð½Ð° <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> де Ви "
+"можете знайти детальнішу інформацію про джерельний код, ÑпиÑки розÑÐ¸Ð»Ð°Ð½Ð½Ñ Ñ– "
+"т.п."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Ð¦Ñ Ð½Ð°Ð·Ð²Ð° Ñ” абревіатурою, що ÑкладаєтьÑÑ Ð· наÑтупних Ñлів: на оÑнові "
+"<b>PO</b>-файлів здійÑнюєтьÑÑ <b>O</b>н-лайн переклад(<b>T</b>ranslation) та "
+"локалізаціÑ(<b>L</b>ocalization) цим інÑтрументом(<b>E</b>ngine); але "
+"можете ще прочитати <a href=\"http://www.thechestnut.com/flumps.htm\">це</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "ВерÑÑ–Ñ—"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Цей Ñайт працює на:<br />Pootle %s<br />ІнÑтрументарію Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (на %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "КориÑтувацька Ñторінка длÑ: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Змінити параметри"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Сторінка керуваннÑ"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "ÐдмініÑтрувати"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Швидкі поÑиланнÑ"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Будь-лаÑка, клацніть на 'Змінити опції' та виберіть необхідні мови та "
+"проекти"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d проект, в Ñередньому %d%% перекладено"
+msgstr[1] "%d проекти, в Ñередньому %d%% перекладено"
+msgstr[2] "%d проектів, в Ñередньому %d%% перекладено"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "ÐдмініÑтраціÑ"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Код мови"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Ім'Ñ Ð¼Ð¾Ð²Ð¸"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d мова, в Ñередньому %d%% перекладено"
+msgstr[1] "%d мови, в Ñередньому %d%% перекладено"
+msgstr[2] "%d мов, в Ñередньому %d%% перекладено"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Мова"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: проект %s, мова %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Шукати"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Докладний пошук"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Ðе вдаєтьÑÑ Ð²Ð¸Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ файл, немає долученого файлу"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Вивантажувати можна лише PO-файли або ж ZIP-архіви з ними"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Призначити Ñ€Ñдки"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Призначити дію"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Призначити Ð´Ð»Ñ ÐºÐ¾Ñ€Ð¸Ñтувача"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "завданнÑ"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Введіть назву завданнÑ"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Додати завданнÑ"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Вивантажити файл"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Виберіть файл Ð´Ð»Ñ Ð²Ð¸Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "ПерезапиÑати"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "ПерепиÑати поточний файл, Ñкщо він Ñ–Ñнує"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "ЗлиттÑ"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Злити файл з поточним файлом та перетворити конфлікти у пропозиції"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Ðе в завданні"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Додати кориÑтувача"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO-файл"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF-файл"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts-файл"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV-файл"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO-файл"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Оновити"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Передати"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "УÑÑ– Ñ€Ñдки"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Ðеперекладено"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Ðепризначе"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Ðепризначе Ñ– неперекладене"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Ð’Ñтановити завданнÑ"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Вибрати декілька"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Призначити длÑ"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Показати функції редагуваннÑ"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Показати ÑтатиÑтику"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Показати доріжки"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Приховати доріжки"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Показати зауваженнÑ"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Заховати зауваженнÑ"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Показати завданнÑ"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Приховати завданнÑ"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Показати призначеннÑ"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Приховати призначеннÑ"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "УÑÑ– завданнÑ: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Переклад моїх Ñ€Ñдків"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "ПереглÑд моїх Ñ€Ñдків"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Вам не призначені Ñ€Ñдки"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Швидкий переклад моїх Ñ€Ñдків"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Вам не призначені неперекладені Ñ€Ñдки"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "ОглÑд пропозицій"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "ДивитиÑÑŒ пропозиції"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Швидкий переклад"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "ДивитиÑÑŒ неперекладене"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Ðемає неперекладених елементів"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Перекладати уÑе"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ЗаZIPувати завданнÑ"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ЗаZIPувати теку"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Утворити SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d Ñ€Ñдок (%d%%) проблемний"
+msgstr[1] "%d Ñ€Ñдки (%d%%) проблемні"
+msgstr[2] "%d Ñ€Ñдків (%d%%) проблемні"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d Ñлів (%d%%) призначено"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d Ñ€Ñдків]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d Ñлів (%d%%) перекладено"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "УÑÑ– проекти"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "УÑÑ– мови"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Мій обліковий запиÑ"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ Ñ‚Ð° довідка"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Вихід"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Вхід"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "РеєÑтраціÑ"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "ÐктиваціÑ"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Фірмовий знак Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Про цей Ñервер Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "УÑÑ– завданнÑ"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d файлів"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d файл"
+msgstr[1] "%d файли"
+msgstr[2] "%d файлів"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d Ñ€Ñдків"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Ім'Ñ"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Перекладено"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "ВідÑоток перекладених"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Перекладених Ñлів"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Ðеточно"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "ВідÑоток неточних"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Ðеточних Ñлів"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "ВідÑоток неперекладених"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Ðеперекладених Ñлів"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Загалом"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Слів загалом"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Графік"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "текÑÑ‚ джерельних текÑтів"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "текÑÑ‚ перекладу"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "коментарі"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "міÑце знаходженнÑ"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Вхід у ÑиÑтему зазнав невдачі"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "ПерепоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð´Ð¾ Ñторінки з входом..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Потрібно зареєÑтруватиÑÑ, щоб мати доÑтуп до домашньої Ñторінки"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "ОÑобиÑÑ‚Ñ– дані оновлено"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Потрібно увійти, щоб мати доÑтуп до Ñторінки керуваннÑ"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "ПерепоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° домівку..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Ви не маєте прав на ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "ПереглÑд"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Запропонувати"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "ПереклаÑти"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "ПереглÑнути"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Ðрхівувати"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Підготувати PO-файли"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Призначити"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Ви не можете вилучити кориÑтувачів \"nobody\" та \"default\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "У Ð’Ð°Ñ Ð½ÐµÐ¼Ð°Ñ” прав Ð´Ð»Ñ Ð·Ð¼Ñ–Ð½Ð¸ завдань"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "У Ð’Ð°Ñ Ð½ÐµÐ¼Ð°Ñ” прав Ð´Ð»Ñ Ð²Ð¸Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð²"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "У Ð’Ð°Ñ Ð½ÐµÐ¼Ð°Ñ” прав Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿Ð¸Ñу файлів"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "У Ð’Ð°Ñ Ð½ÐµÐ¼Ð°Ñ” прав Ð´Ð»Ñ Ð²Ð¸Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… файлів"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "У Ð’Ð°Ñ Ð½ÐµÐ¼Ð°Ñ” прав Ð´Ð»Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð²"
+
+# commit - у роÑ. перекладі викориÑтали 'фікÑуваннÑ', чи помінÑти?
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "У Ð’Ð°Ñ Ð½ÐµÐ¼Ð°Ñ” прав Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ñ‡Ñ– файлів"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "У Ð’Ð°Ñ Ð½ÐµÐ¼Ð°Ñ” прав Ð´Ð»Ñ Ð·Ð¼Ñ–Ð½Ð¸ призначень"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "У Ð’Ð°Ñ Ð½ÐµÐ¼Ð°Ñ” прав Ð´Ð»Ñ Ð·Ð¼Ñ–Ð½Ð¸ перекладів"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Ви не маєте прав Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð¿Ð¾Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð¼Ñ–Ð½"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Ви не маєте прав Ð´Ð»Ñ Ñ€Ð¾Ð·Ð³Ð»Ñду пропозицій"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d перекладено\n"
+"(%d незаповнено, %d неточно)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: перекладено %s у %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Першоджерело"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Переклад"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "ПрийнÑти пропозицію"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Відхилити пропозицію"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Коментарі перекладача"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Коментарі розробника"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Споріднене"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Ð’Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñ‚Ñ€Ð¸Ð²Ð°Ñ”..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Помилка: ÑталоÑÑ Ñ‰Ð¾ÑÑŒ зле."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Кінець збірки"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Клацніть тут, щоб повернутиÑÑ Ð´Ð¾ каталогу"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Початок"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Попередні %d"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Елементи від %d до %d із %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "ÐаÑтупні %d"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Кінець"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "приÑутнє Ð·Ð°ÑƒÐ²Ð°Ð¶ÐµÐ½Ð½Ñ %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Ðе знайдено елементів, Ñкі задовольнÑÑŽÑ‚ÑŒ умову пошуку ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Ви завершили роботу з вибраними Вами елементами"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Однина"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Множина"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Редагувати"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Скопіювати"
+
+# Ігнорувати...
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "ПропуÑтити"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Ðазад"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Затвердити"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "ЗроÑтити"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Знизити"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Форма множини %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Переклад не можливий, тому що Ñ–Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ Ð¿Ñ€Ð¾ множину Ð´Ð»Ñ Ð’Ð°ÑˆÐ¾Ñ— мови не "
+"доÑтупна. Будь лаÑка, звернітьÑÑ Ð´Ð¾ адмініÑтратора Ñайту."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Поточний переклад:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "ÐŸÑ€Ð¾Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ %d від %s:"
+
+# було Запропонувати
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "ÐŸÑ€Ð¾Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "ÐŸÑ€Ð¾Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ Ð²Ñ–Ð´ %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "ПропозиціÑ:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Ви повинні забезпечити дійÑний пароль довжиною не менше %d знаків."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Пароль не Ñпівпадає з підтвердженим."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Ввійти до Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Пароль:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Мова:"
+
+#: users.py:71
+msgid "Login"
+msgstr "Вхід"
+
+#: users.py:77
+msgid "Default"
+msgstr "За умовчаннÑм"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Будь лаÑка, введіть Ñвої реєÑтраційні дані"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "РеєÑÑ‚Ñ€Ð°Ñ†Ñ–Ñ Ñƒ Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Введіть ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Ðеобхідно вказати правильну адреÑу електронної пошти"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Ім'Ñ Ñ‚Ð° прізвище"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Ваш бажаний пароль"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Підтвердіть пароль"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Ðаберіть Ñвій пароль знову, щоб гарантувати, що його введено правильно"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "ЗареєÑтрувати обліковий запиÑ"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Будь лаÑка, введіть дані активації"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "ÐÐºÑ‚Ð¸Ð²Ð°Ñ†Ñ–Ñ Ð¾Ð±Ð»Ñ–ÐºÐ¾Ð²Ð¾Ð³Ð¾ запиÑу Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Код активації"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Ви отримали код активації"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Ðктивувати обліковий запиÑ"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Опції длÑ: %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "ПерÑональні дані"
+
+#: users.py:186
+msgid "Email"
+msgstr "Електронна пошта"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "ÐšÐ¾Ð½Ñ„Ñ–Ò‘ÑƒÑ€Ð°Ñ†Ñ–Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ інтерфейÑу"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Мова інтерфейÑу кориÑтувача"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Мої проекти"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Мої мови"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Ð”Ð¾Ð¼Ð°ÑˆÐ½Ñ Ñторінка"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Додаткова мова першоджерела"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Ðемає"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "ВиÑота Ð¿Ð¾Ð»Ñ Ð²Ð²Ð¾Ð´Ñƒ (у Ñ€Ñдках)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "КількіÑÑ‚ÑŒ Ñ€Ñдків у режимі переглÑду"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "КількіÑÑ‚ÑŒ Ñ€Ñдків у режимі перекладу"
+
+#: users.py:307
+msgid "Error"
+msgstr "Помилка"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Вам потрібно бути адмініÑтратором Ñайту, щоб редагувати кориÑтувачів"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+"Ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача повинне бути Ñимвольно-цифровим, Ñ– повинне починатиÑÑ Ð· "
+"букви."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Ви (або хто-небудь інший) Ñпробували зареєÑтрувати обліковий Ð·Ð°Ð¿Ð¸Ñ Ð· Вашим "
+"іменем.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Ми не запам'Ñтовуємо Ваш фактичний пароль а лише мішанину (hash) з нього.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Якщо Ви маєте проблему з реєÑтрацією, будь лаÑка, звернітьÑÑ Ð´Ð¾ %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Якщо Ви маєте проблему з реєÑтрацією, будь-лаÑка, звернітьÑÑ Ð´Ð¾ "
+"адмініÑтратора Ñайту.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Це ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача вже Ñ–Ñнує. Буде відправлено лиÑÑ‚ на зареєÑтровану адреÑу "
+"електронної пошти.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Перехід на Ñторінку <a href='%s'>входу до ÑиÑтеми</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Обліковий Ð·Ð°Ð¿Ð¸Ñ Pootle Ñтворений Ð´Ð»Ñ Ð’Ð°Ñ, з викориÑтаннÑм цієї адреÑи "
+"електронної пошти.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Щоб активувати Ваш обліковий запиÑ, перейдіть за цим поÑиланнÑм:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Ваш код активації:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Якщо Ви не в змозі Ñлідувати за поÑиланнÑм, будь лаÑка, введіть згаданий "
+"вище код на Ñторінці активації.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Це Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ñлане Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸, що адреÑа електронної пошти фактично "
+"правильна. Якщо Ви не хочете реєÑтрувати обліковий запиÑ, то можете проÑто "
+"знехтувати повідомленнÑм.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Обліковий Ð·Ð°Ð¿Ð¸Ñ Ñтворено. Вам буде виÑлано лиÑта з реєÑтраційною інформацією "
+"та кодом активації. Введіть, будь лаÑка, Ваш код на <a href='%s'>Ñторінці "
+"активації</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Ðбо проÑто клацніть на поÑиланні активації у електронній пошті)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Ваше ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Ваш пароль: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Ваша реєÑтраційна адреÑа електронної пошти: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "ПерепоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð´Ð¾ Ñторінки реєÑтрації..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "ПерепоÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð´Ð¾ Ñторінки входу у ÑиÑтему..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"Ваш обліковий рахунок активовано! Переходимо до Ñторінки з входом у "
+"ÑиÑтему..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Ð†Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð°Ñ†Ñ–Ñ— була недійÑна."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "ÐÐºÑ‚Ð¸Ð²Ð°Ñ†Ñ–Ñ Ð·Ð°Ð·Ð½Ð°Ð»Ð° невдачі"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "ВиÑота Ð¿Ð¾Ð»Ñ Ð²Ð²Ð¾Ð´Ñƒ повинна бути чиÑлом"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Ширина Ð¿Ð¾Ð»Ñ Ð²Ð²Ð¾Ð´Ñƒ повинна бути чиÑлом"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "ЧиÑло Ñ€Ñдів, показуваних у режимі переглÑду, повинне бути чиÑлом"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "КількіÑÑ‚ÑŒ Ñ€Ñдів, показуваних у режимі перекладу, повинне бути чиÑлом"
+
+#~ msgid "Accept"
+#~ msgstr "ПрийнÑти"
+
+#~ msgid "Reject"
+#~ msgstr "Відхилити"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Проект перекладу WordForge"
+
+#~ msgid "Broaden"
+#~ msgstr "Розширити"
+
+#~ msgid "Narrow"
+#~ msgstr "Звузити"
+
+#~ msgid "Reset"
+#~ msgstr "Відновити"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Введіть правильну адреÑу електронної пошти"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Ширина воду (у Ñимволах)"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> це портал, Ñкий допоможе легко переклаÑти те, що "
+#~ "хочете <strong>переклаÑти</strong>!"
+
+#~ msgid "parent folder"
+#~ msgstr "батьківÑька тека"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Проекти</h3>"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d файли, %d/%d Ñтрічки (%d%%) перекладено"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "це - демонÑтраційна інÑталÑÑ†Ñ–Ñ pootle"
+
+#~ msgid "current folder"
+#~ msgstr "поточна тека"
+
+#~ msgid "login status"
+#~ msgstr "ÑÑ‚Ð°Ñ‚ÑƒÑ Ð»Ð¾Ð³Ñ–Ð½Ð°"
+
+#~ msgid "project root"
+#~ msgstr "адмініÑтратор проекту"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "недоÑтатньо прав, щоб змінювати переклад"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d Ñтрічок (%d%%) перекладено"
+
+#~ msgid "%d files, "
+#~ msgstr "%d файли, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Мови</h3>"
+
+#~ msgid "current file"
+#~ msgstr "поточний файл"
+
+#~ msgid "not logged in"
+#~ msgstr "не ввійшов"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ur/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ur/jToolkit.po
new file mode 100644
index 0000000..190fe89
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ur/jToolkit.po
@@ -0,0 +1,143 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Translate Toolkit 0.10rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr ""
+
+#: web/server.py:123
+#, fuzzy
+msgid "Username:"
+msgstr "_اسم صارÙ:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "ا پاس ور"
+
+#: web/server.py:130
+#, fuzzy
+msgid "Language:"
+msgstr "زبانیں:"
+
+#: web/server.py:551 web/server.py:642
+#, fuzzy
+msgid "Select Application"
+msgstr "Ø­Ø§Ù„ÛŒÛ ÚˆØ§Ú©ÙˆÙ…ÛŒÙ†Ù¹"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr ""
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "‬برخاست"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+msgid "connected"
+msgstr ""
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Ù†Ûیں"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ûاں"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr ""
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+msgid "restore"
+msgstr ""
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ur/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ur/pootle.po
new file mode 100644
index 0000000..76842f3
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ur/pootle.po
@@ -0,0 +1,1365 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Translate Toolkit 0.10rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+#, fuzzy
+msgid "Home"
+msgstr "ّ_گھر"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+#, fuzzy
+msgid "Languages"
+msgstr "زبانیں:"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr ""
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+#, fuzzy
+msgid "Option"
+msgstr "آپشن"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "عنوان"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "زبان نکالیں"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+#, fuzzy
+msgid "Username"
+msgstr "_اسم صارÙ:"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Ø®Ùیه نمبر"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "زبان ڈالیں"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+#, fuzzy
+msgid "Rights"
+msgstr "دائیاں"
+
+#: adminpages.py:379 indexpage.py:1008
+#, fuzzy
+msgid "Remove"
+msgstr "ÛÙ¹_ائیں"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+#, fuzzy
+msgid "Versions"
+msgstr "ورژن"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+#, fuzzy
+msgid "Administrate"
+msgstr "انتظام"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "زبان"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+#, fuzzy
+msgid "Search"
+msgstr "تلش کرنا"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr ""
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+#, fuzzy
+msgid "Log out"
+msgstr "_لاگ آؤٹ"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "نام"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr ""
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "مناظر"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "ارچیو"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "شروع"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "درست"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "کاپی"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "پیچھے"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "_اسم صارÙ:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "ا پاس ور"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "زبانیں:"
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr "طےشدÛ"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+#, fuzzy
+msgid "Personal Details"
+msgstr "ذاتی کوائÙ"
+
+#: users.py:186
+msgid "Email"
+msgstr "ای میل"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "زبانیں:"
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr "غلطی"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/uz/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/uz/jToolkit.po
new file mode 100644
index 0000000..c8eceeb
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/uz/jToolkit.po
@@ -0,0 +1,144 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Translate Toolkit 1.1.1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr ""
+
+#: web/server.py:123
+msgid "Username:"
+msgstr ""
+
+#: web/server.py:125
+msgid "Password:"
+msgstr ""
+
+#: web/server.py:130
+msgid "Language:"
+msgstr ""
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr ""
+
+#: web/server.py:637
+msgid "Logout"
+msgstr ""
+
+#: web/server.py:639
+msgid "Exit"
+msgstr ""
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+msgid "connected"
+msgstr ""
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr ""
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr ""
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr ""
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+msgid "restore"
+msgstr ""
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/uz/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/uz/pootle.po
new file mode 100644
index 0000000..c3bdc7a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/uz/pootle.po
@@ -0,0 +1,1355 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-06-23 05:53+0000\n"
+"Last-Translator: Avaz Ibragimov <avazbek@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 1.1.0\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Bosh sahifa"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr ""
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr ""
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr ""
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr ""
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr ""
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr ""
+
+#: adminpages.py:57
+msgid "Description"
+msgstr ""
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr ""
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr ""
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr ""
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr ""
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr ""
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr ""
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr ""
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr ""
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr ""
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr ""
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr ""
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr ""
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr ""
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr ""
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr ""
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr ""
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr ""
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr ""
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr ""
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr ""
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Loyihalar"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Tillar"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Mening hisobim"
+
+# "Docs"ni alohida tarjima qilib o'tirmadim, chunki ushbu hujjatlar(?) yordam sifatida kiritilgan. Shuning uchun umumiy qilib "Yordam" deb qoldirdim.
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Yordam"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr ""
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr ""
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr ""
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr ""
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr ""
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr ""
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr ""
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr ""
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr ""
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr ""
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr ""
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr ""
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr ""
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr ""
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr ""
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr ""
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+msgid "Username:"
+msgstr ""
+
+#: users.py:68
+msgid "Password:"
+msgstr ""
+
+#: users.py:69
+msgid "Language:"
+msgstr ""
+
+#: users.py:71
+msgid "Login"
+msgstr ""
+
+#: users.py:77
+msgid "Default"
+msgstr ""
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr ""
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr ""
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+msgid "My Languages"
+msgstr ""
+
+#: users.py:196
+msgid "Home page"
+msgstr ""
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr ""
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ve/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/ve/jToolkit.po
new file mode 100644
index 0000000..b592963
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ve/jToolkit.po
@@ -0,0 +1,147 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-08-14 15:11+0200\n"
+"Last-Translator: Shumani Mercy Ṋevhulaudzi <NevhulaudziS@saps.org.za>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.10rc2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Dzhenani lwa %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Litshani zwiitwa izwi uri ni thome zwiswa"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"Uri ni sitendele zwiitwa izwi, thomani ni di bvise uri ni kone u thoma nga "
+"huswa."
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Ubvela nnda ha tshumelo"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+"bvelani nnda ha tshumelo iyi uri ni kone u humela kha tshumelo khulwane"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", ni humbelwa uri ni khwathisedze u dzena"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Dzhenani"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Dzina la mushumisi:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Pasiwede:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Luambo:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Khethani Tshumelo"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Ibvani"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Ubvela nnda"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "No dzhena sa <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "zwiitwa zwiswa azwi ngo engedzwa"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "No bva"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "no kwamanywa"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "No bvela nnda ha zwiitwa zwihulwane"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"Ni tea u namga mushumisi no zwine a tea u shumisa zwone kha udzudzanya "
+"mbulungelo iyi."
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "mushumisi hango wanala (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "dzina la mushumisi na/phasiwede a zwo ngo fhelela"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "Madzhenele aya ha ngo tanganedzwa"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Hayi"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Ee"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "Bvisani"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "A huna tshinambatedzwa"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "Tshinambatedzwa itshi tshohulesa"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "Bvisani tshinambatedzwa itshi"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "Vhuedzedzani"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+"Tshinambatedzwa i tshi tsho bvisiwa.Putedzani afha uri ni tshi vhuedzedze."
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "Nambatedzani faila"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/ve/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/ve/pootle.po
new file mode 100644
index 0000000..e47b6ce
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/ve/pootle.po
@@ -0,0 +1,1393 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Shumani Mercy Ṋevhulaudzi <NevhulaudziS@saps.org.za>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 0.10rc2\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Tshisumbedzo tsha Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Hayani"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Vhashumisi"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Nyambo"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Thandela"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "U Nanga"
+
+#: adminpages.py:51 users.py:183
+#, fuzzy
+msgid "Current value"
+msgstr "Ndeme ya Zwino"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "á¹°hoho"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Thaluso"
+
+#: adminpages.py:58
+#, fuzzy
+msgid "Base URL"
+msgstr "Zwo sendekwa na URL:"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Siaá¹±ari a Haya"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr ""
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr ""
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr ""
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Yo Doweleaho"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr ""
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr ""
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Dzina ḽa Mushumisi"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr ""
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Ḓiresi ya Emeiḽi"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr ""
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Phasiwede"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr ""
+
+#: adminpages.py:222
+#, fuzzy
+msgid "Activated"
+msgstr "Shumisani"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr ""
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+#, fuzzy
+msgid "Add Language"
+msgstr "Engedzani dzinyambo"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr ""
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+#, fuzzy
+msgid "Rights"
+msgstr "Tsha u Ḽa"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Bvisani"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "nga ha pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+#, fuzzy
+msgid "Versions"
+msgstr "Sia"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+#, fuzzy
+msgid "Change options"
+msgstr "Shandukisani Nyito"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr ""
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+#, fuzzy
+msgid "Language Code"
+msgstr "Phakhethe ya Luambo"
+
+#: indexpage.py:222
+#, fuzzy
+msgid "Language Name"
+msgstr "Phakhethe ya Luambo"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "Nyambo"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr ""
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Toda"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "U shumisa vhurale"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "U netshedza nyito"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "U netshedza mushumisi"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Ḓadzisani Faela"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+#, fuzzy
+msgid "CSV file"
+msgstr "%S faela"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Dzudzanya"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+#, fuzzy
+msgid "Untranslated"
+msgstr "Phindulelo"
+
+#: indexpage.py:800
+#, fuzzy
+msgid "Unassigned"
+msgstr "I Songo Sainwaho"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr ""
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr ""
+
+#: pagelayout.py:29
+#, fuzzy
+msgid "All languages"
+msgstr "Engedzani dzinyambo"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+#, fuzzy
+msgid "Log out"
+msgstr "Ḽogololani"
+
+#: pagelayout.py:35
+#, fuzzy
+msgid "Log in"
+msgstr "Ḽogani"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr ""
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Shumisani"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Tshisumbedzo tsha Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+#, fuzzy
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%S faela"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Dzina"
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "Phindulelo"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr ""
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Guá¹±e"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+#, fuzzy
+msgid "Login failed"
+msgstr "U ḽoga ho kunda."
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Lavhelesani"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+#, fuzzy
+msgid "Translate"
+msgstr ".U dologa"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr "%d/%d translated(%d blank, %d fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+#, fuzzy
+msgid "%s: translating %s into %s: %s"
+msgstr "Pootle: translating %s into %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Mathomo"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Phindulelo"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Mafhedzisoloni a batshi"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "kilikani hafha ni humele kha tsumbi"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Thomani"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "Yo fhelaho"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Tshitenwa"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "Tshitevhelaho"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Magumo"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "U sedza"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Lulamisani"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopani"
+
+#: translatepage.py:675 translatepage.py:849
+#, fuzzy
+msgid "Skip"
+msgstr "&Pfukani"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Murahu"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Rumelani"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+#, fuzzy
+msgid "Suggestion %d:"
+msgstr "Mahumbulwa:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+#, fuzzy
+msgid "Suggestion by %s:"
+msgstr "Mahumbulwa:"
+
+#: translatepage.py:825
+#, fuzzy
+msgid "Suggestion:"
+msgstr "Mahumbulwa:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr ""
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "Dzina ḽa mushumisi:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Phasiwede:"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "Nyambo"
+
+#: users.py:71
+#, fuzzy
+msgid "Login"
+msgstr "Ḽogani"
+
+#: users.py:77
+msgid "Default"
+msgstr "Yo Dzivhiswaho"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr ""
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr ""
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr ""
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+#, fuzzy
+msgid "Confirm password"
+msgstr "Khwaá¹±hisedzani Phasiwede:"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr ""
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr "Emeili"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr ""
+
+#: users.py:194
+#, fuzzy
+msgid "My Languages"
+msgstr "Nyambo"
+
+#: users.py:196
+#, fuzzy
+msgid "Home page"
+msgstr "&Siatari la Haya"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr "Vhukhakhi"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Tanganedza"
+
+#~ msgid "Reject"
+#~ msgstr "Hana"
+
+#~ msgid "Reset"
+#~ msgstr "Dzudzanyani hafhu"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/vi/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/vi/jToolkit.po
new file mode 100644
index 0000000..3af49e1
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/vi/jToolkit.po
@@ -0,0 +1,154 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.9\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "Äăng nhập cho %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "Thôi hành động này và bắt đầu một phiên chạy mới"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+"Thay cho xác nhận hành động này, đăng xuất và bắt đầu lại từ con số không"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "Thoát khá»i ứng dụng"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "Thoát khá»i ứng dụng này và trở vỠứng dụng mẹ"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", xin hãy xác nhận đăng nhập"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "Äăng nhập"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "Tên ngÆ°á»i dùng:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Mật khẩu :"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Ngôn ngữ :"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "Chá»n ứng dụng"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "Äăng xuất"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Thoát"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "đăng nhập dưới tên <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "không thể thêm phiên chạy mới"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "đã đăng xuất"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "đã kết nối"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "đã thoát khá»i phiên chạy mẹ"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"cần phải xác định mục nhập của ngÆ°á»i dùng này hay tùy thích ngÆ°á»i dùng này "
+"trong cấu hình của máy phục vụ"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "ngÆ°á»i dùng tên này không tồn tại (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "tên ngÆ°á»i dùng và/hay mật khẩu không hợp lệ"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "lỗi xác nhận đăng nhập"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Không"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Có"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "gỡ bá»"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(không có đồ đính kèm)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "đồ đính kèm quá lớn"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "gỡ bỠđồ đính kèm này"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "phục hồi"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "Äồ đính kèm này đã bị gỡ bá». Hãy nhấn vào đây để phục hồi nó."
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "đính kèm một tập tin"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr ""
+#~ "cần phải xác định mục nhập của ngÆ°á»i dùng này trong cấu hình của máy phục "
+#~ "vụ"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/vi/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/vi/pootle.po
new file mode 100644
index 0000000..e1a1aee
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/vi/pootle.po
@@ -0,0 +1,1497 @@
+# POT file for Pootle, the online translation and translation management
+# software.
+# Copyright (C) 2006 Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as Pootle.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-20 11:13+0000\n"
+"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Thao diá»…n Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Trang chủ"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "NgÆ°á»i dùng"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Ngôn ngữ"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Dự án"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Tủy chá»n chung"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Tùy chá»n"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Giá trị hiện có"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Lưu các thay đổi"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Tá»±a"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Mô tả"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "Äịa chỉ Mạng cÆ¡ bản"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Trang chủ"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Trang Quản lý Ngôn ngữ Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Trang quản trị chính"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Mã ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "HỠtên"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(thêm ngôn ngữ vào đây)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Ký tự đặc biệt"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(ký tự đặc biệt)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Tổng số cách số nhiá»u"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(tổng số cách số nhiá»u)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Biểu thức số nhiá»u"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(biểu thức số nhiá»u)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Gỡ bỠngôn ngữ"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Gỡ bỠ%s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Chuẩn"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Trang Quản lý Dự án Pootle"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Mã dự án"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(thêm dự án vào đây)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Mô tả dự án"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(mô tả dự án)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Kiểu dạng kiểm tra"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Kiểu tập tin"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Tạo tập tin dạng .mo"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Gỡ bỠdự án"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Trang Quản lý NgÆ°á»i dùng Pootle"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Tên ngÆ°á»i dùng"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(thêm hỠtên vào đây)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Äịa chỉ thÆ°"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(thêm địa chỉ thư điện từ vào đây)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Mật khẩu"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(thêm mật khẩu vào đây)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Hoạt động"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Kích hoạt ngÆ°á»i dùng má»›i"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Gỡ bá» ngÆ°á»i dùng"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Trở vỠtrang chính"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Ngôn ngữ đã có"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Cập nhật ngôn ngữ"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Quản trị Pootle: %s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Bạn không có quyá»n quản trị dá»± án này."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Cập nhật từ biểu mẫu"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Thêm ngôn ngữ"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Quản trị Pootle: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Trang chủ Pootle"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+"Không thể đặt quyá»n hạn cho ngÆ°á»i dùng tên « %s » vì ngÆ°á»i dùng này không "
+"tồn tại."
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Äây là má»™t dá»± án kiểu dáng GNU : chỉ má»™t thÆ° mục, má»—i tập tin có tên theo "
+"ngôn ngữ."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Äây là má»™t dá»± án kiểu dáng chuẩn: má»™t thÆ° mục cho má»—i ngôn ngữ."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Quyá»n hạn ngÆ°á»i dùng"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(chá»n để thêm ngÆ°á»i dùng)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Quyá»n"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Gỡ bá»"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Cập nhật quyá»n"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Giới thiệu vỠPootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr "<strong>Pootle</strong> là một giao diện Mạng đơn giản sẽ cho phép bạn "
+"<strong>dịch</strong>. :) Vì Pootle là <strong>Phần má»m Tá»± do</strong>, bạn "
+"có thể tải nó vỠrồi chạy bản sao của mình, nếu bạn muốn. Bạn cũng có thể "
+"tham dá»± cùng tiến trình phát triển nó, bằng cách nhiá»u — không cần phải có "
+"khả năng lập trình.\n"
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr "Dự án Pootle chính nằm tại <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> nơi "
+"bạn có thể tìm chi tiết vỠmã nguồn, hộp thư chung v.v.\n"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Tên \"Pootle\" là từ cấu tạo có nghĩa là <b>PO</b>-based <b>O</b>nline "
+"<b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine (Dụng cụ địa phương "
+"hóa dịch trá»±c tuyến Ä‘á»±a vào .po), nhÆ°ng mà có lá»… bạn sẽ muốn Ä‘á»c <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">thông tin này</a> (tiếng Anh)."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Phiên bản"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Nơi Mạng này có chạy:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (trên %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Trang ngÆ°á»i dùng của: %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Äổi tùy chá»n"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Trang quản trị"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Quản trị"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Liên kết nhanh"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "Hãy nhấn vào « Äổi tùy chá»n » rồi chá»n má»™t số ngôn ngữ và dá»± án."
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "Dự án %d có %d%% chuỗi đã địch trung bình"
+msgstr[1] "Dự án %d có %d%% chuỗi đã địch trung bình"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Quản trị"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Mã ngôn ngữ"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Tên ngôn ngữ"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "Ngôn ngữ %d có %d%% chuỗi đã dịch trung bình"
+msgstr[1] "Ngôn ngữ %d có %d%% chuỗi đã dịch trung bình"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Ngôn ngữ"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: dự án %s, ngôn ngữ %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Tìm kiếm"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Tìm cấp cao"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Không thể tải lên tập tin nên không có tập tin được đính kèm."
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Có thể tải lên chỉ tập tin dạng .po và kho .zip của tập tin .po thôi."
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Gán chuỗi"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Gán hành động"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Gán cho ngÆ°á»i dùng"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "mục đích"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Hãy nhập tên mục đích"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Thêm mục đích"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Tải lên tập tin"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Hãy chá»n tập tin cần tải lên"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Ghi đè"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Ghi đè lên tập tin hiện thá»i, nếu có"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Trá»™n"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+"Trá»™n tập tin vá»›i tập tin hiện thá»i, cÅ©ng làm cho các việc xung Ä‘á»™t trở thành "
+"lá»i Ä‘á» nghị"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Không thuộc vỠmục đích"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Thêm ngÆ°á»i dùng"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Tâp tin PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Tập tin XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Tập tin dạng .ts của Qt"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Tập tin CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Tập tin dạng .mo"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Cập nhật"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Gá»­i Ä‘i"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Má»i chuá»—i"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Chưa dịch"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Chưa gán"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Chưa gán, chưa dịch"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Äặt mục đích"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Chá»n nhiá»u"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Gán cho"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Hiện các chức năng dịch"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Hiện thống kê"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Hiện Ä‘Æ°á»ng dẫn"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Ẩn Ä‘Æ°á»ng dẫn"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Hiện kết quả kiểm tra"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Ẩn kết quả kiểm tra"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Hiển thị mục đích"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Ẩn mục đích"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Hiện kết quả gán"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Ẩn kết quả gán"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Má»i mục đích: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Dịch chuỗi mình"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Xem chuỗi mình"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Không có chuỗi được gán cho bạn"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Dịch chuỗi mình còn lại"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Không có chuỗi chưa dịch được gán cho bạn"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Xem lại chuỗi góp"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Xem chuỗi góp"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Dịch còn lại"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Xem mục chưa dịch"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Không có mục chưa dịch"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Dịch tất cả"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Kho .zip của mục đích"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Kho .zip của thư mục"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Tạo ra SDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d chuỗi (%d%%) bị lỗi"
+msgstr[1] "%d chuỗi (%d%%) bị lỗi"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d từ (%d%%) được gán"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d chuá»—i]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d từ (%d%%) đã dịch"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Má»i dá»± án"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Má»i ngôn ngữ"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Tài khoản tôi"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Tài liệu và Trợ giúp"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Äăng xuất"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Äăng nhập"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Äăng ký"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Kích hoạt"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Biểu hình Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Giới thiệu vỠtrình phục vụ Pootle này"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Má»i mục đích"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d tập tin"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d tập tin"
+msgstr[1] "%d tập tin"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d chuá»—i"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Tên"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Äã dịch"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Phần trăm đã dịch"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Từ đã dịch"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Má»"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Phần trăm má»"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Từ má»"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Phần trăm chưa dịch"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Từ chưa dịch"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Tổng số"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Tổng từ"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Äồ thị"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "Chuỗi nguồn"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "Chuỗi đích"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "Ghi chú"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "Vị trí"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Lỗi đăng nhập"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Äang chuyển hÆ°á»›ng tá»›i Ä‘Æ¡n đăng nhập..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Cần phải đăng nhập để truy cập trang chủ"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Chi tiết cá nhân đã được cập nhật"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Cần phải đăng nhập để truy cập trang quản trị"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Äang chuyển hÆ°á»›ng vá» nhà..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Bạn không quyá»n quản trị Pootle."
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Xem"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Góp ý"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Dịch"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Xem lại"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Kho"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Biên dịch tập tin dạng .po"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Gán"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+"Không cho phép bạn gỡ bá» ngÆ°á»i dùng « nobody » (không ai) hay « default » "
+"(mặc định)."
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Bạn không có quyá»n sá»­a đổi mục đích ở đây."
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Bạn không có quyá»n tải tập tin lên đây."
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Bạn không có quyá»n ghi đè lên tâp tin ở đây."
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Bạn không có quyá»n tải tập tin má»›i lên đây."
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Bạn không có quyá»n cập nhật tập tin ở đây."
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Bạn không có quyá»n chuyển/gá»­i tập tin vào đây."
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Bạn không có quyá»n sá»­a đổi kết quả gán ở đây."
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Bạn không có quyá»n sá»­a đổi bản dịch ở đây."
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Bạn không có quyá»n Ä‘á» nghị thay đổi ở đây."
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Bạn không có quyá»n xem lại sá»± góp ý ở đây."
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d đã dịch\n"
+"(%d chÆ°a dịch, %d dịch má»)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: đang dịch %s sang %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Chuỗi gốc"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Chuỗi dịch"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "Chấp nhận chuỗi góp"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "Từ chối chuỗi góp"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Ghi chú của dịch giả "
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Nhà phát triển ghi chú"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Liên quan"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Äang chạy..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "Lỗi: cái gì không chạy được."
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Kết thúc của chuỗi bó"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Nhấn vào đây để trở vỠmục lục"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Äầu"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d trÆ°á»›c"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Mục %d đến %d trên %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d kế"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Cuối"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "đang kiểm tra %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Không có kết quả nào khớp với ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Bạn má»›i xem lại xong những mục được chá»n"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Ở số ít"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Ở số nhiá»u"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Sá»­a"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Chép"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Bá» qua"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Lùi"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "LÆ°u"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "lá»›n"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "nhá»"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Dạng số nhiá»u"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Không thể dịch được vì chÆ°a có thông tin vá» cách ở số nhiá»u trong ngôn ngữ "
+"của bạn. Hãy liên lạc với quản trị nơi Mạng."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Dịch hiện thá»i:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Äá» nghị: %d bởi %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Äá» nghị %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Äá» nghị do %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Äá» nghị:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Bạn cần phải nhập một mật khẩu hợp lý chứa ít nhất %d ký tự."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Mật khẩu không phải là trùng với đồ xác nhận."
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Äăng nhập vào Pootle nhé"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Tên ngÆ°á»i dùng:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Mật khẩu :"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Ngôn ngữ :"
+
+#: users.py:71
+msgid "Login"
+msgstr "Äăng nhập"
+
+#: users.py:77
+msgid "Default"
+msgstr "Mặc định"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Vui lòng nhập thông tin đăng ký của bạn"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Äăng ký vá»›i Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Tên ngÆ°á»i dùng được yêu cầu của bạn"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Bạn cần phải cung cấp một địa chỉ thư điện tử hợp lệ"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "HỠtên của bạn"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Mật khẩu được yêu cầu của bạn"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Xác nhận mật khẩu"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Hãy gõ lại mật khẩu để đảm bảo nó được nhập đúng"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Äăng ký tài khoản"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "Vui lòng nhập thông tin kích hoạt của bạn"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Kích hoạt tài khoản Pootle"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Mã kích hoạt"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Mã kích hoạt bạn đã nhận"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Kích hoạt tài khoản"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Tùy chá»n cho : %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Chi tiết cá nhân"
+
+#: users.py:186
+msgid "Email"
+msgstr "Äịa chỉ thÆ°"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Cấu hình giao diện thông dịch"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Ngôn ngữ của giao diện ngÆ°á»i dùng"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Dự án tôi"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Ngôn ngữ tôi"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Trang chủ"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Ngôn ngữ nguồn khác"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "Không có"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Äá»™ cao nhập (theo dòng)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Số hàng trong chế độ xem"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Số hàng trong chế độ dịch"
+
+#: users.py:307
+msgid "Error"
+msgstr "Lá»—i"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Chỉ quản trị nÆ¡i Mạng này có quyá»n thay đổi ngÆ°á»i dùng."
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Tên ngÆ°á»i dùng phải chứa chỉ chữ số, cÅ©ng phải bắt đầu vá»›i chữ."
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "Bạn (hay ngÆ°á»i khác) đã thá»­ đăng ký má»™t tài khoản vá»›i tên ngÆ°á»i dùng của "
+"bạn.\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Chúng tôi không cất giữ mật khẩu thật của bạn, chỉ số băm của nó thôi.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Nếu bạn gặp khó khăn trong việc đăng ký, hãy liên lạc với %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Nếu bạn gặp khó khăn trong việc đăng ký, hãy liên lạc với quản trị nơi Mạng.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Bạn đã nhập má»™t tên ngÆ°á»i dùng đã có. Má»™t lá thÆ° sẽ được gởi cho địa chỉ thÆ° "
+"đã đăng ký.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Äang tá»›i Ä‘Æ¡n <a href='%s'>đăng nhập</a>...\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Một tài khoản Pootle đã được tạo cho bạn, dùng địa chỉ thư điện tử này.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Äể kích hoạt tài khoản của bạn, hãy theo liên kết này:\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Mã kích hoạt của bạn là:\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Nếu bạn không thể theo liên kết này, hãy nhập mã bên trên vào trang kích "
+"hoạt.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Lá thư này được gởi để kiểm tra địa chỉ thư thật sự là đúng không. Nếu bạn "
+"không muốn đăng ký tài khoản, đơn giản có thể bỠqua thư này.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Tài khoản đã được tạo. Bạn sẽ nhận lá thư chứa chi tiết đăng nhập và mã kích "
+"hoạt. Hãy nhập mã kích hoạt đó vào <a href='%s'>trang kích hoạt</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Hoặc đơn giản nhấn vào liên kết kích hoạt trong lá thư đó.)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Tên ngÆ°á»i dùng của bạn là: %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Mật khẩu của bạn là: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Äịa chỉ thÆ° đã đăng ký dành cho bạn là: %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Äang chuyển hÆ°á»›ng tá»›i trang đăng ký..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Äang chuyển hÆ°á»›ng tá»›i trang đăng nhập..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+"Tài khoản của bạn đã được kích hoạt ! Äang chuyển hÆ°á»›ng tá»›i việc đăng "
+"nhập..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Bạn đã nhập thông tin kích hoạt không phải hợp lệ."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Lỗi kích hoạt"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Äá»™ cao nhập phải có dạng số"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Äá»™ rá»™ng nhập phải có dạng số"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Số hàng được hiển thị trong chế độ xem phải có dạng số"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Số hàng được hiển thị trong chế độ dịch phải có dạng số"
+
+#~ msgid "Accept"
+#~ msgstr "Chấp nhận"
+
+#~ msgid "Reject"
+#~ msgstr "Từ chối"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Dự án thông dịch Wordforge"
+
+#~ msgid "Broaden"
+#~ msgstr "rá»™ng"
+
+#~ msgid "Narrow"
+#~ msgstr "hẹp"
+
+#~ msgid "Reset"
+#~ msgstr "đặt lại"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Phải là địa chỉ thư điện tử hợp lệ"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "Äá»™ rá»™ng nhập (theo ký tá»±)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "&lt;strong&gt;Pootle&lt;/strong&gt; là một cửa Mạng đơn giản cho phép bạn "
+#~ "&lt;strong&gt;dịch&lt;/strong&gt; một cách dễ dàng và tiện!"
+
+#~ msgid "parent folder"
+#~ msgstr "danh mục mẹ"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "&lt;h3 class=\"title\"&gt;Dự án&lt;/h3&gt;"
+
+#~ msgid "%d files, %d/%d strings (%d%%) translated"
+#~ msgstr "%d tâp tin, %d/%d chuỗi (%d%%) đã dịch"
+
+#~ msgid "%s language"
+#~ msgstr "Ngôn ngữ %s"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "đây là một phiên bản cài đặt chứng minh của Pootle"
+
+#~ msgid "current folder"
+#~ msgstr "danh mục hiện có"
+
+#~ msgid "Log In"
+#~ msgstr "Äăng nhập"
+
+#~ msgid "login status"
+#~ msgstr "trạng thái đăng nhập"
+
+#~ msgid "project root"
+#~ msgstr "gốc dự án"
+
+#~ msgid "%s project"
+#~ msgstr "dự án %s"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "ở đây bạn không có đủ quyá»n để Ä‘á» nghị thay đổi gì"
+
+#~ msgid "you do not have rights to change translations here"
+#~ msgstr "ở đây bạn không có đủ quyá»n để thay đổi bản dịch"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d chuỗi (%d%%) đã dịch"
+
+#~ msgid "%d files, "
+#~ msgstr "%d tập tin, "
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "&lt;h3 class=\"title\"&gt;Ngôn ngữ&lt;/h3&gt;"
+
+#~ msgid "current file"
+#~ msgstr "tập tin hiện có"
+
+#~ msgid "not logged in"
+#~ msgstr "chưa đăng nhập"
+
+#~ msgid "Pootle Admin Page"
+#~ msgstr "Trang Quản lý Pootle"
+
+#~ msgid "(checker style)"
+#~ msgstr "(kiểu dạng kiểm tra)"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Bạn không có đủ quyá»n truy cập để quản lý Pootle."
+
+#~ msgid "%d strings (%d%%) assigned"
+#~ msgstr "%d chuỗi (%d%%) đã gán"
+
+#~ msgid "suggest"
+#~ msgstr "đệ nghị"
+
+#~ msgid "Input Width"
+#~ msgstr "Äá»™ rá»™ng gõ"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/wo/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/wo/jToolkit.po
new file mode 100644
index 0000000..52c9a79
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/wo/jToolkit.po
@@ -0,0 +1,145 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"X-Generator: Translate Toolkit 1.0.1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr ""
+
+#: web/server.py:123
+msgid "Username:"
+msgstr ""
+
+#: web/server.py:125
+msgid "Password:"
+msgstr ""
+
+#: web/server.py:130
+msgid "Language:"
+msgstr ""
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr ""
+
+#: web/server.py:637
+msgid "Logout"
+msgstr ""
+
+#: web/server.py:639
+msgid "Exit"
+msgstr ""
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+msgid "connected"
+msgstr ""
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr ""
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr ""
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr ""
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr ""
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr ""
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr ""
+
+#: attachments.py:350
+msgid "restore"
+msgstr ""
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr ""
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr ""
diff --git a/Pootle-1.2.1/Pootle/po/pootle/wo/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/wo/pootle.po
new file mode 100644
index 0000000..944d291
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/wo/pootle.po
@@ -0,0 +1,1432 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-11-16 15:54+0100\n"
+"Last-Translator: Alf@net <alfanet@anafa.org>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Nane lañu jëfëndiko Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Teeru"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Njariñu kay yi"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Làkk yi"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Ligeey yi"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Luñu mana tann"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Tann yi"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "Walër bu am"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Yessalat sopi yi"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Tur"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Tekki"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "URL bu ñuy jëfëndiko"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Xëtu Teeru bi"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Page Admin des languages Pootle"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Xëtu njiitu mi"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Saartu ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Tur bu mat"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(yok làkk bi fi)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Kaddu wu jafet yi"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(kaddu wu jafet yi)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Lu ñu am ci ay"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(lu ñu am ci ay)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Jafe jafe ay"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(jafe jafe ay)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Dindi làkk bi"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Dindi"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Bu fi nek"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "Turu kodu ligeey bi"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(yokkal ligeey bi fi)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "Ligeey bi lu muy tekki"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(ligeey bi lu muy tekki)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Set lu kay mbindef li"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Melo fisie "
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Defar fisie MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Dindi ligeey bi"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Njariñukat bi"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(yokal fi tur bu mat bi)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Adarees bu ngay jaar"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(yookal fi adareesu intarnet bi)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Caabi bi"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(yookal fi caabi bi)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "Doral"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "Doral kontu njariñukat bu bess"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Dindi kontu njariñukat bi"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Dellu wat ci xëtu wutu bi"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Làkk yu am"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "Yessalat làkk yi"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Njiitu Pootle"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Amo baat bu la may nga njiite ligeey bi."
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Yessalat ak lu fi am"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "Yokkal ap làkk"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Saytu Pootle"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Xëtu buntu ligeey bi"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Mëno joxe %s bat- njariñukat bu nekkul"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "Li ligeeyyu ci yoonu GNU (ben buntu, fisie yuñu tuddé bepp làkk)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "Li ligeey bu yomb la (làkk bu ne ak buntam)."
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "Mayyu njariñukat bi"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(tannal ngir yok beneen njariñukat)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "Ay maye"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Dindil"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "Yessal ay maye"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Lu jublu si Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> Situ web la buy lay may <strong>nga tekki ay "
+"kadu</strong> ! Libarté bu <strong>Pootle am</strong>, mo la may nga jëlko "
+"def ci sa copi bu la néx. Man nga tamiit bokk si mbootaay ñu koy tekki si "
+"anam bu nék si numula neexe (ajawul nga mana programe)."
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Ligeeyyu Pootle bi ci boppam ñu ngu ka fat si<a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> té "
+"mën ngén kodu yi ak listu nu ngay jokolo ak ñom, ak leeneen."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Tur bi li ley tekki <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine (motoru firi si internet buy jëfëndiko "
+"PO), way mënga xool <a href=\"http://www.thechestnut.com/flumps.htm\">li</a>."
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "Wersion bi"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Situ bi ak li lay doxé :<br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (sur %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Xëtu njariñukat bi ngir : %s"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "Sopi Tanneef yi"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Xëtu saytu bi"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Saytu"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Yoone yi gaaw"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "jeemal bëss ci « Sopil Tanéf yi» té nga tane ay làkk ak ay ligeey"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d ligeey, ñu gu ko tekki ci %d%%"
+msgstr[1] "%d ligeey, ñu gu ko tekki ci %d%%"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s : %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Saytu"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "Kodu làkk bi"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Turu làkk bi"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d làkk, bi ñu tekki ci missal %d%%"
+msgstr[1] "%d ay làkk,yu ñu firi ci missa %d%%"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Làkk bi"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s : liggey bi %s, làkkam %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Xool"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "Jalalé fisié bi ma nu ta nék, amul bén fisie bu ñu ce yok"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Fisié PO yi rek ak « zipu » fisie PO yi ño mana jale"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Joxe ay kaddu"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Joxe jëf bi"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Joxe ko ku kay njariño"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "Luŋ ci jublu"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Bindal bén turu jublu way"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Yokal bén jublu way"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Jalalél bén fisie"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "Tanal fisié bou nga bëgga Jalalé"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Bindaat"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "Su dosie bi ame nga enrensistere wat ci kawam"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "Bole"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "Bolel dosie bi ak dosie bi nga nekk te nga sopi lënt lënt yi ay ndiggle"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "Lu bokul ci jublu bi"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Yokal konte bou bess"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "Fisie PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "Fisie XLIFF"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Fisie Qt .ts"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "Fisie CSV"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "Fisie MO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Yéssalat"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "Weral"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "Kadu yëep"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Yu ñu tekki gul"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "Yu ñu joxé ngul"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "Yu kén joxé ngul té kén firé ngul"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "Joxel benn jublu way"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "Tanna yu bari"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "Bu ñu jox"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "Woné éditëru fuŋtion yi"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "Woné satitusu yi"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "Woné yoon yi"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "Nëbb yon yi"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "Woné kontorol yi"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "Nëbb kontorol yi"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "Woné jublu way yi"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "Nëbb jublu way yi"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "Woné pac yi"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "Nëbb cëd yi"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "Bepp séntu : %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Tekki Kadu yi"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Guiss sama Kadu yi"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Amul baat yuŋ la mena jox"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Gawa tekki samay kadu"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Amul Baat yuñu tekki ngul yuŋ la jag léle"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Sét ndig lé yi"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Xol ndig lé yi"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "Tekki bu gaw"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Sét kadu yu ñu tekki ngul yi"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Amul kadu bu ñu tekki wul"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Tekki yëpp"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "Zipu jublu way yi"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "Zipu dosie bi"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Défar PDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d Bat yu duŋ bi (%d%%)"
+msgstr[1] "%d Bat yu duŋ yi (%d%%)"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d bat yuñu joxe (%d%%)"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d kadu]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d baat yu ñu tekki (%d%%)"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Bepp ligeey"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Làkk yëpp"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "Sama konte"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Xam xam ak ndimmal"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "Gennë"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "Jokolo"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Bindu"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Ubbi"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Rañe kayu Pootle"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "Lu jublu si seweur Pootle"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "Beep jëf bu ñu sentu"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d fisie"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d fisie"
+msgstr[1] "ay %d fisie"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d kaddu"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Tur"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Tekki"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Ci teemeru baat bu né luŋ ci joto tekki"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Baat yu ñu tekki"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "Ci misal"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "Ci teemeeru baat bu nekk luŋ ci jota tekki si misaal"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "Baat yi yu ñu tekki si misaal"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "Ci teemer bu nekk yi luŋ ci tekki gul"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Baat yu ñu tekki gul"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "So boole yëpp"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "Baat yëpp"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "Garafiku"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "Jokolo munul am"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "Déluwat si jokolo bi..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "Ngir jot xëtu téeru bi jokolo dafa wara am"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "Sa mbiru bopp yuñu yeessal"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "Jokolo dafa wara am ngir dugu ci xëtu saytu mi"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "Délu wat ci xëtu téeru bi..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "Amo fi may bu lay taxa saytu pootle."
+
+# giss
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Wone"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "Xelal"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Tekki"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Nafar"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Bastan"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Dajale dencukaay PO yi"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "Digle"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Mëno dindi « njariñu kat yi » wala « kuñ fi tekk ki »"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Amulo sañ sañu sopi dàkk yi"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Amulo sañ sañu jàllale ay dencukaay"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Mayuŋ la nga enresistere fi ay dosie"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Mayuŋ la fi nga jàllale ay fisie yu bess"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Mayuŋ la fi nga yesalat fisie yi"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Amo fi may bu lay sopilo fisie yi"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Mayuŋ la fi nga defarat cër yi"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "Mayuŋ la fi nga defarat tekki yi"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "Mayuŋ la fi nga xelal ay yessal"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "Mayuŋ la fi nga xool diglé yi"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d%d kadu yuñu firi\n"
+"(%d wéy, %d ci missal)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s : tekki baatu %s ci %s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Piir"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Tekki"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Tekki kaddu yi"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Leeral jangat yi"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Lu bokk ci"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "Jeexital"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "Bëssël nga dellu ci kow"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Door"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "%d yu njêk"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "Pac %d ba %d ci yu ñu %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "%d yu topp"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Jeexital"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "seetlu %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "Amul ben bat bu nuro lu mel ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "Noppi nga xolat jumtukaay yu nga tannon yëpp"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Benn"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "Ay"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Wan"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Roy"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "jàll"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Dellu"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Yoone"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Yokk"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "Wañi"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "Ay %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+"Tekki bi mënul nekk ndax te lepp lu nga jota xam ci sa làkk noppi gul. Mangi "
+"ley ñaax nga guiss ku wutu situ intarnet bi."
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "Tekki bu ñu ama gum :"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "Xelal n° %d ci %s :"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "Xelal %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "Xelal ci %s :"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "Xelal :"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "Danga wara joxe caabi bu bax ak %d kaddu."
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "Caabi bi nga joxe wuutena ak bu njëk"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Joko ak Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "Ku kay njariño"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Caabi bi :"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Làkk bi :"
+
+#: users.py:71
+msgid "Login"
+msgstr "Jokolo"
+
+#: users.py:77
+msgid "Default"
+msgstr "Bum mëna done"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Bindël sa detayyu mbindu"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Bindu si Pootle bi"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Laj nañu tur ku kay njariño"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Danga wara joxe adareesu intarnet bu bax"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Sa tur bu mat"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Caabi bu nga bëgg"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "Joxe watal caabi bi"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "Bindatal wat sa caabi ngir ñu rañé caabi bi"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Ubbi konte"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "jeemal binde sa détayu konte"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Door konte Pootle bi"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "Kodu bi ngey dugué"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "Kodu dugué kay ngi nga joot"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "Doorol konte bi"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "Tanéfu : %s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Sa yëfu bopp"
+
+#: users.py:186
+msgid "Email"
+msgstr "Bataxal"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "Défar interfassu tekki bi"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "Làkk bou ngay njariño"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Sa may mbëbët"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Sa may Làkk"
+
+#: users.py:196
+msgid "Home page"
+msgstr "Xëtu tambali kay bi"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "Bimdël kaweway bi(ci rëd)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "Li nga soxla si rëd si bir guiss guiss bi"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "Li nga soxla si rëd si bir tekki bi"
+
+#: users.py:307
+msgid "Error"
+msgstr "Jum nga"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "Da nga wara don njiitu situ intarnet bi ngir sopi ñi kay njariño"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "Turu ku kay jëfëndiko nombar la wara done wala kadu"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "yëw (wala kennen) jeemna oubi ap konte ak sa caabi."
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "Du ñu dénc sa caabi bi way dañu bayi jarjar bi.\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "So amé jafe jafe ci mbindu mi , jeemël guiss %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "So ame jafe jafe si mbindu mi , jeemël guiss ku ko defar.\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "Konte bi amna ba nopi. Da ñu la yone xibar ci sa adarees.\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "<a href='%s'>jokolo</a> mu ngi si yoon\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "Ubbil nañou la konte Pootle ak adarees intarnet bi.\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Ngir dor sa konte , jaaral si yoon wi :\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Kodu dor bi :\n"
+" %s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "So bëggule top yone bi, ma ngi lay ñax nga binda kodu bi ci xëtu dor kay bi.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "Bataxal bi ñu la yone mo ley tax nga settlu sa adarees intarnet. So bëggule "
+"ubbi konte, mën nga tëpp bataxal bi.\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"Konte bi dor na. Di nañu la yënne bataxal ngir jokolo bi ak dor bi. Ñung lay "
+"ñane nga binda sa kodu ci <a href='%s'>xëtu dor bi</a>."
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(Wala nga bëss rek si wonu doru kay bi)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Sa tur bi ngay njariño moy : %s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Sa caabi bi : %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "Sa adareesu bindu moy : %s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "Delluwat ci xëtu mbindu mi..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "Delluwat ci xëtu jokolo bi..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "Sa konte Pareena ! Delluwat si jokolo bi..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "Xibaaru yu nga joxe ngir dor baxul."
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "Jokolo bi mënu ta nekk."
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "Kaweewayu tool bi nombar la wara done."
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "Yatu way tool bi nombar la wara done."
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "Limu liñu fu ngay guiss fi defa wara nekk nombar"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "Limu liñu fu ngay tekki fi dafa wara don nombar"
+
+#~ msgid "Accept"
+#~ msgstr "Nangu"
+
+#~ msgid "Reject"
+#~ msgstr "Bañ"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "Ligeeyyu tekki WordForge"
+
+#~ msgid "Narrow"
+#~ msgstr "Rétrécir"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "Doit être une adresse électronique valide"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr ""
+#~ "<strong>Pootle</strong> est un simple portail web qui vous permettra de "
+#~ "<strong>traduire</strong>!"
+
+#~ msgid "<h3 class=\"title\">Projects</h3>"
+#~ msgstr "<h3 class=\"title\">Projets</h3>"
+
+#~ msgid "%s language"
+#~ msgstr "%s langue"
+
+#~ msgid "this is a demo installation of pootle"
+#~ msgstr "Ceci est la démo d'installation de pootle"
+
+#~ msgid "Log In"
+#~ msgstr "Connexion"
+
+#~ msgid "project root"
+#~ msgstr "racine du projet"
+
+#~ msgid "you do not have rights to suggest changes here"
+#~ msgstr "Vous n'êtes pas autorisé à faire des changements ici"
+
+#~ msgid "%d/%d strings (%d%%) translated"
+#~ msgstr "%d/%d séquences (%d%%) traduites"
+
+#~ msgid "<h3 class=\"title\">Languages</h3>"
+#~ msgstr "<h3 class=\"title\">Langues</h3>"
+
+#~ msgid "not logged in"
+#~ msgstr "pas connecté"
+
+#~ msgid "You do not have the rights to administer Pootle."
+#~ msgstr "Vous n'avez pas le droit d'administrer Pootle."
+
+#~ msgid "suggest"
+#~ msgstr "suggérer"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/xh/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/xh/jToolkit.po
new file mode 100644
index 0000000..ed6a9b6
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/xh/jToolkit.po
@@ -0,0 +1,149 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-06-14 14:30+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Pootle 0.6.3\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr " ngenela i%s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "cika esi senzo uqalise umsebenzi omtsha"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "endaweni yokuqinisekisa le ngqubo phumela futhi uqale ekuqaleni "
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "siphumele isicelo"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "phumela kwesi sicelo ube sele usibuyisela kwisicelo sabazali"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr "nceda uqiniseke ngokungena "
+
+#: web/server.py:110
+msgid "Login"
+msgstr "ngena"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "umntu osebenzisa i computha"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr " inani eliyimfihlo olisebenzisayo ekuze ukwazi ukungena edaweni ethile"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "ulwimi"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "khetha isicelo"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "phumela"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "phuma"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "ingene ngo <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "abakwazanga nokwengeza ingxoxo entsha"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "iphumele"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "uxhumene"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "iphumele ingxoxo yabazali"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+"kufuneka uchaze umsebenzisi okanye ukungena kwezinto ozikhethele zona kwi "
+"server config"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "umsebenzisi akabalulekanga (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+"alamkelekanga igama kunye/okanye nenani eliyimfihlo olisebenzisa xa ukuna "
+"imvume yokungenela"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "ayiphumelelanga ekungeniseni isiqinisekiso "
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "hayi"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "ewe"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "susa"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(akukho nto incamathelisiweyo)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "into encamathelisiweyo inkulu kakhulu"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "susa le nto incamathelisiweyo"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "buyisela"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "into ibincamathelisiweyo iye yasuswa.cinezela apha ukuze uyibuyisela."
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "ncamathelisa ifayili"
+
+#~ msgid "need to define the users entry on the server config"
+#~ msgstr "kufuneka uchaze indlela kokungena kwi server config"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/xh/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/xh/pootle.po
new file mode 100644
index 0000000..edb9069
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/xh/pootle.po
@@ -0,0 +1,1423 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-08-28 11:06+0000\n"
+"Last-Translator: Dwayne Bailey <dwayne@translate.org.za>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Umzekelo wokuqala ka Pootle"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Ikhaya"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Abasebenzisi"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Iilwimi"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Projekthi"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "Ekukhethwa kuko ngokubanzi"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Ekukhethwa kuko"
+
+#: adminpages.py:51 users.py:183
+#, fuzzy
+msgid "Current value"
+msgstr "Ixabiso elisekhoyo"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "Gcina eziguqukileyo"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Isihloko"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Inkcazelo"
+
+#: adminpages.py:58
+#, fuzzy
+msgid "Base URL"
+msgstr "URL yesiseko:"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Iphepha lekhaya"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Ikhasi lolawulo lweelwimi zika Pootle "
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "Ikhasi eliphambili lolawulo"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "Ikhodi ye ISO"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Igama elipheleleyo"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(faka ulwimi apha)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "Oonobumba abaluhlobo olulodwa"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(imibhalo enjengonobumba yohlobo olulodwa)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "Inombolo zesinintsi"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(iinombolo zesinintsi)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "Isinintsi sokulinganiswa"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(isininzi sokulinganiswa)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Susa ulwimi"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Susa %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Eqhelekileyo"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(faka umsebenzi oyilwayo apha)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "INkcazelo yomsebenzi oyilwayo"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(inkcazelo yomsebenzi oyilwayo)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "Qwalasela imbo"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Uhlono lwefayili"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "Dala iifayili ze MO"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Susa umsebenzi oyilwayo"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Igama lomsebenzisi"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(faka igama elipheleleyo apha)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Iposi yecomputha"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(faka i-imeyile apha)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "inani eliyimfihlo olisebenzisa ukuze ungene endaweni ethile"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(faka igama lokugqithisa apha)"
+
+#: adminpages.py:222
+#, fuzzy
+msgid "Activated"
+msgstr "Ivuselelekile"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "vuselela ukusebenza komsebenzi omtsha"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "susa umsebenzisi"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "Buyela kwikhasi elingaphambili"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "Iilwimi ezikhoyo"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "hlaziya iilwimi"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle Admin:%s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "Awunamalungelo okusebenzisa lo msebenzi"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "Hlaziya kwimifuziselo"
+
+#: adminpages.py:298
+#, fuzzy
+msgid "Add Language"
+msgstr "Yongeza ulwimi"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle Admin: %s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Umsebenzi oyilwayo kwikhasi lokuqala"
+
+#: adminpages.py:355
+#, python-format
+#, fuzzy
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "Ayikwazi ukumisela ekunene ukwenzela umsebenzisi"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+"Olu luhlobo lomsebenzi weGNU (Uvimba weefayili, iifayile ezithiywe ngolwimi "
+"ngalunye)."
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+#, fuzzy
+msgid "User Permissions"
+msgstr "Isivumelwano somsebenzisi"
+
+#: adminpages.py:377
+#, fuzzy
+msgid "(select to add user)"
+msgstr "Khetha ukudibanisa umsebenzisi"
+
+#: adminpages.py:378
+#, fuzzy
+msgid "Rights"
+msgstr "Amalungelo"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Susa"
+
+#: adminpages.py:406
+#, fuzzy
+msgid "Update Rights"
+msgstr "Amalungelo okuqhuba umsebenzi"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Malunga noPootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+" Umsebenzi oyilwayo ka Pootle wamkelwa kwi <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> where "
+"you can find the details about source code, mailing lists etc."
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+#, fuzzy
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"igama elimele u <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine, kodwa unganqwenela ukufunda <a "
+"href=\"http//www.thechestnut.com/flumps.htm\">le</a>."
+
+#: indexpage.py:68
+msgid "Versions"
+msgstr "Inguqulelo"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"Esi siza siqhubeka kule: <br />Pootle %s<br />Translate Toolkit %s<br "
+"/>jToolkit %s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+#, fuzzy
+msgid "Change options"
+msgstr "Tshintsha okukhethwayo"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "Ulawulo lwekhasi"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "Ukulawula"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "Unxulumelwano olukhawulezileyo"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+"Sicela ucofe kutshintsho-khetho ukhethe ezinye iilwimi kunye nemisebenzi."
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d umsebenzi, umgangatho ophakathi %d%% iguqulelwe"
+msgstr[1] "% imisebenzi, imigangatho ephakathi %d%% iguqulelwe"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "Ulawulo"
+
+#: indexpage.py:221
+#, fuzzy
+msgid "Language Code"
+msgstr "Ubekelelo lolwimi"
+
+#: indexpage.py:222
+#, fuzzy
+msgid "Language Name"
+msgstr "Igama lolwimi"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d ulwimi, umgangatho ophakathi %d%% luguqulelwe"
+msgstr[1] "i%d yeelwimi, yemigangatho ephakathi %d%% eguqulelweyo"
+
+#: indexpage.py:273
+#, fuzzy
+msgid "Language"
+msgstr "Ulwimi"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: Umsebenzi %s, Ulwimi %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "khangela"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "Ufuno oluphambili"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "ayikwazanga ukulayisha ifayili, ifayili ayifakelekanga"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "Ilayisha kuphela iifayili zePO kunye nekhowudi yeposi yefayili zePO"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "Yabela umtya"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "Yabela inyathelo"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "Yabela kumsebenzisi"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "Iinjongo"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "Faka igama lenjongo"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "Fakela injongo"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Layisha ifayili"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "Bhala ngaphezu kokubhaliweyo"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr ""
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "i fayile ye PO"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "ifayile ye CSV"
+
+#: indexpage.py:748
+#, fuzzy
+msgid "MO file"
+msgstr "ifayile yeMO"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Hlaziya"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+#, fuzzy
+msgid "Untranslated"
+msgstr "khumsha zonke"
+
+#: indexpage.py:800
+#, fuzzy
+msgid "Unassigned"
+msgstr "Ayisayinwanga"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "bonisa iicheck"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "fihla iichecks"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr " Zonke injongo: %s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "Guqulela imitya yam"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "Jonga imitya yam"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "Akukho mitya uyinikiweyo"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "Guqulela imitya yam ngokukhawulezileyo"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "Akukho mitya ingaguqulwanga inikwe wena"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "Phinda ujonge ingcebiso"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "Jonga ingcebiso"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "khawulezisa uguqulele"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "Jonga okungaguqulelwanga"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "Akukho zinto zingaguqulelwanga"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Guqulela zonke"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "ZIP ye-njongo"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "ZIP yesiqulathi sefayili"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "Ukwenza iSDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "Sisinye%d umtya (%d%%) Akuphumelelanga"
+msgstr[1] "Isininzi%d umtya (%d%%) Akuphumelanga"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d%d amagama (%d%%) owanikiweyo"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d%d imitya]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d%d amagama (%d%%) aguqulelweyo"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Yonke imisebenzi oyilwayo"
+
+#: pagelayout.py:29
+#, fuzzy
+msgid "All languages"
+msgstr "Zonke iilwimi"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr ""
+
+#: pagelayout.py:34
+#, fuzzy
+msgid "Log out"
+msgstr "phumela"
+
+#: pagelayout.py:35
+#, fuzzy
+msgid "Log in"
+msgstr "ngena"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "bhalisa"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "sebenzisa"
+
+# Isixhobo esisetyenziswa kwi-intanethi ukuguqulela amagama afumaneka kwilwimi lwentsusa aguqulelwe kwiilwimi ekujoliselwe kuzo
+#: pagelayout.py:83
+#, fuzzy
+msgid "Pootle Logo"
+msgstr "Isixhobo sokugula ulwimi"
+
+#: pagelayout.py:84
+#, fuzzy
+msgid "About this Pootle server"
+msgstr "Iinkcukacha ngesixhobo sokuguqulela ulwimi"
+
+#: pagelayout.py:160
+#, fuzzy
+msgid "All goals"
+msgstr "Zonke izifezekiso"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d ifayili"
+
+#: pagelayout.py:234
+#, python-format
+#, fuzzy
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "Ifayili eyi-%d"
+msgstr[1] "Iifayili eziyi-%d"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/% umtya"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Igama"
+
+#: pagelayout.py:243
+#, fuzzy
+msgid "Translated"
+msgstr "iguqulelwe kwelinye ulwimi"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "Uguqulelo kwe-pesenti kolunye ulwimi"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Iinguqulelo zamagama"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr ""
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Isixa esipheleleyo"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+#, fuzzy
+msgid "Login failed"
+msgstr "Akuphumelelanga ukungena"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Bona"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "cebisa"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Guqulela"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "Uphengululo"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "Isisele"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "Hlanganisela iifayile zePO"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "YABELA"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "Awunako ukuyisusa i-\"nobody\" okanye i-\"default user\""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "Awuvumelekanga ukutshintsha amanqaku apha"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "Awuvumelekanga ukulayisha ifayile apha"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "Awuvumelekanga ukubhala iifayili ngokugqithisileyo"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "Awuvumelekanga ukupakisha ifayile ezintsha apha"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "Awuvumelekenga ukuhlaziya iifayile apha"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "Awunako ukuqulungqa ifayile apha"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "Awuvumelekanga ukutshintsha ulwabiwo apha"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d ziguqulelwe\n"
+" (%d aziguqulelwanga, %d fuzzy)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr ""
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr ""
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr ""
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Qala"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "izinto %d kuya ku %d ye %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "i%d elandelayo"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Phela"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "isajonga i %s"
+
+#: translatepage.py:398
+#, python-format
+#, fuzzy
+msgid "There are no items matching that search ('%s')"
+msgstr "azikho izinto ezihambisana nalento ikhangelwayo ('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "ugqibile ukwenza izinto ozifunileyo"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "Sisinye"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Lungisa"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Khuphela"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Tsiba"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Emva"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Faka"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "Khula"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "isigqibo %d ngo %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "ingcebiso %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "ingcebisa ngo %s:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "ingcebiso"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "ngenela ku Pootle"
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "igama lomsebenzisi"
+
+#: users.py:68
+#, fuzzy
+msgid "Password:"
+msgstr "inani eliyimfihlo olisebenzisa ukuze ungene endaweni ethile"
+
+#: users.py:69
+#, fuzzy
+msgid "Language:"
+msgstr "Ulwimi:"
+
+#: users.py:71
+#, fuzzy
+msgid "Login"
+msgstr "ngena"
+
+#: users.py:77
+msgid "Default"
+msgstr "Okwendalo"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "nceda ufake ingcombolo zakho zokubhalisa"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "ukubhalisa kuka pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "Igama lakho eliceliweyo olisebenzisile"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "Faka idilesi ye-imeyile eqinisekisiweyo"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Igama lakho elipheleleyo"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "Igama lokungena lakho elifunekayo"
+
+#: users.py:133 users.py:189
+#, fuzzy
+msgid "Confirm password"
+msgstr "Qinisekisa igama lokungena"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+"Faka igama lakho lokungena kwakhona ukuze uqinisekise ukuze uqinisekise "
+"ukuba lifakwe kakhuhle"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "Bhalisa i-akhawunti"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "nceda ufake iingcombolo ezisetyenzisiweyo"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Yenza i-akhawunti kaPootle isebenze"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "sebenzisa i code"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "sebenzisa icode oyinikeziweyo"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "sebenzisa i akhawinti"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr " Okunokukhethwa ukwenzela:%s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "Iinkcukacha zomntu"
+
+#: users.py:186
+msgid "Email"
+msgstr "i-Imeyili"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+#, fuzzy
+msgid "User Interface language"
+msgstr "Ulwimi lomsebenzisi we-interface "
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Imisebenzi yam"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Iilwimi zam"
+
+#: users.py:196
+#, fuzzy
+msgid "Home page"
+msgstr "Iphepha lasekhaya "
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "Olunye ulwimi oluyintsusa"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "ayikho"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "ukufaka ubude"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "umboniso-silayidi ngokwenani lemigca exwesileyo"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "inani lemigca exwesilelyo ngokwemo yenguqulelo"
+
+#: users.py:307
+msgid "Error"
+msgstr "Imposiso"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "yiba ngumqulunqi-ndawo ukuze utshintshe abasebenzisi"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr ""
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "Ukuba unengxaki nokubhalisa, nceda udibane nombhalisi kwelo candelo."
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+"Elo gama sele likhona. I-email iza kuthunyelwa kwidilesi ye -email "
+"ebhalisiweyo."
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "Dlulela ku <a href=%>ngena</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "I-akhawunti kaPootle yenzelwe wena usebenzise le dilesi ye-email .\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "Ukuyenza isebenze i-akhawunti yakho, landela lo mdibaniso :\\"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"Ikhowudi yokusebenza yile:\n"
+"%n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "Ukuba akukwazi ukulandela umdibaniso,nceda faka le khowudi ingentla "
+"kwiphepha lokusebenza.\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+" Lo myalezo uthunyelwe uqinisekisa ukuba le dilesi yale-imeyile yiyo ngqo. "
+"Ukuba ubungafuni kubhalisa akhawunti ungasuka ungawunaki lo myalezo.\n"
+" "
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+"I-akhawunti ivuliwe. Uza kuthunyelelwa iinkcukacha zokungena nekhowudi "
+"yokuyisebenzisa. Nceda faka ikhowudi yakho kwi<a href='%s'>khasi "
+"lokuvuselela</a>. "
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "Igama lomsebenzisi ngu: %s/n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "Igama lokugqithisa lakho ngu: %s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "yamkela"
+
+#~ msgid "Reject"
+#~ msgstr "sukwamkela"
+
+#~ msgid "Reset"
+#~ msgstr "Cwangcisa kwakhona"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/zh_CN/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/zh_CN/jToolkit.po
new file mode 100644
index 0000000..ba68c67
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/zh_CN/jToolkit.po
@@ -0,0 +1,140 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-09-09 20:17+0200\n"
+"Last-Translator: escopy <escopy@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "%s已登录"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "å–消这个动作并开始一个新会è¯"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ä¸ç¡®è®¤è¿™ä¸ªåŠ¨ä½œè€Œæ³¨é”€å¹¶ä»Žå¤´å¼€å§‹"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "退出程åº"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "退出本程åºå¹¶å›žåˆ°çˆ¶ç¨‹åº"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ",请确认登录"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "登录"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "用户å:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "密ç ï¼š"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "语言:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "选择程åº"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "注销"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "退出"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "å·²ç»ä»¥<b>%s</b>身份登录"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "ä¸èƒ½æ·»åŠ æ–°ä¼šè¯"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "å·²ç»æ³¨é”€"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "å·²ç»å»ºç«‹è¿žæŽ¥"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "退出父会è¯"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "需è¦åœ¨æœåŠ¡å™¨é…置文件里定义users或者userprefsæ¡ç›®"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "用户ä¸å­˜åœ¨(%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "用户åå’Œ/或密ç ä¸æ­£ç¡®"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "登录确认失败"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "å¦"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "是"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "移除"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(无附件)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "附件太大"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "移除这个附件"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "æ¢å¤"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "此附件已被移除。点击这里å¯æ¢å¤å®ƒ"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "添加附件"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/zh_CN/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/zh_CN/pootle.po
new file mode 100644
index 0000000..b5ae301
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/zh_CN/pootle.po
@@ -0,0 +1,1392 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2007-10-21 13:17+0200\n"
+"Last-Translator: Zhang Le <robert.zhangle@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle演示"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "首页"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "用户"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "语言"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "项目"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "常规选项"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "选项"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "当å‰å€¼"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "ä¿å­˜æ›´æ”¹"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "标题"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "æè¿°"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "基URL"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "主页"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "主管ç†é¡µé¢"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO ç "
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "å…¨å"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(在此添加语言)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "特殊字符"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(特殊字符)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "å¤æ•°çš„个数"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(å¤æ•°çš„个数)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "å¤æ•°æ–¹ç¨‹"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(å¤æ•°æ–¹ç¨‹)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "移除语言"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "移除%s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "标准"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "项目代ç "
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(在此添加项目)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "项目æè¿°"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(项目æè¿°)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "检验器样å¼"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "文件类型"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "创建MO文件"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "移除项目"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "用户å"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(在此添加全å)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Email地å€"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(在此添加email)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "密ç "
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(在此添加密ç )"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "å·²ç»æ¿€æ´»"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "激活新用户"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "移除用户"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "回到主页"
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "已有语言"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "更新语言"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle管ç†å‘˜ï¼š%s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "你还没有管ç†æœ¬é¡¹ç›®çš„æƒé™"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "从模æ¿æ›´æ–°"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "添加语言"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle管ç†å‘˜ï¼š%s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "项目主页"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "ä¸èƒ½ä¸ºç”¨æˆ·%s设置æƒé™â€”—该用户ä¸å­˜åœ¨"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "这是一个GNU风格的项目(æ¯ç§è¯­è¨€å¯¹åº”一个目录,一个文件)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "这是一个标准风格的项目(æ¯ç§è¯­è¨€å¯¹åº”一个目录)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "用户æƒé™"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(选择以添加用户)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "æƒé™"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "移除"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "æ›´æ–°æƒé™"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "关于Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong>是一个简å•çš„web portal,它å¯ä»¥å¸®åŠ©ä½ <strong>翻译</strong>ï¼å› ä¸ºPootle是<"
+"strong>自由软件</strong>,所以如果你愿æ„,你å¯ä»¥ä¸‹è½½å®ƒå¹¶è¿è¡Œä½ è‡ªå·±çš„副本。你也å¯ä»¥ä»¥å¤šç§æ–¹å¼å¸®å¿™å‚与开å‘(ä½ ä¸éœ€è¦ä¼šç¼–程)。"
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle项目本身ä½äºŽ<a href=\"http://translate.sourceforge.net/\">translate.sourceforg"
+"e.net</a>,你å¯ä»¥åœ¨é‚£é‡Œæ‰¾åˆ°æœ‰å…³æºä»£ç ï¼Œé‚®ä»¶åˆ—表等的详细信æ¯ã€‚"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"项目的å字代表的是<b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine,但是你或许需è¦è¯»ä¸€è¯»<a "
+"href=\"http://www.thechestnut.com/flumps.htm\">这个</a>。"
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "版本"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"这个网站è¿è¡Œç€çš„是:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit %s<br "
+"/>Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "%s的用户页:"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "更改选项"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "管ç†é¡µé¢"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "管ç†"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "快速连接"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "请点击“更改选项â€å¹¶é€‰æ‹©ä¸€äº›è¯­è¨€å’Œé¡¹ç›®"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d个项目,平å‡%d%%å·²ç»ç¿»è¯‘"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s:%s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "管ç†"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "语言代ç "
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "语言å称"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%dç§è¯­è¨€ï¼Œå¹³å‡%d%%å·²ç»ç¿»è¯‘"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "语言"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s:项目 %s,语言 %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "æœç´¢"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "ä¸èƒ½ä¸Šè½½æ–‡ä»¶ï¼Œæ²¡æœ‰é™„件"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "åªèƒ½ä¸Šè½½PO文件和PO文件的zip包"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "分é…字符串"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "分é…动作"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "分é…给用户"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "目标"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "输入目标å称"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "添加目标"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "上载文件"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "选择è¦ä¸Šè½½çš„文件"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "覆盖"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "如果存在å³è¦†ç›–当å‰æ–‡ä»¶"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "åˆå¹¶"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "把文件与当å‰æ–‡ä»¶è¿›è¡Œåˆå¹¶ï¼Œå¹¶å°†å†²çªé¡¹å†™å…¥å»ºè®®ä¸­"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "ä¸åœ¨ç›®æ ‡é‡Œ"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "添加用户"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO文件"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF文件"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts文件"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV文件"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO文件"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "æ›´æ–°"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "æ交"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "所有字符串"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "未翻译的"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "未分é…çš„"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "未分é…的和未翻译的"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "设置目标"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "选择多个"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "分é…ç»™"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "显示编辑功能"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "显示统计信æ¯"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "显示跟踪"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "éšè—跟踪"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "显示检查"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "éšè—检查"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "显示目标"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "éšè—目标"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "显示分é…"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "éšè—分é…"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "所有目标:%s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "翻译我的字符串"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "查看我的字符串"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "没有分é…给你的字符串"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "快速翻译我的字符串"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "未翻译的分é…给你的字符串"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "回顾建议"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "查看建议"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "快速翻译"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "查看未翻译的"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "没有未翻译的æ¡ç›®"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "翻译全部"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "目标的zip包"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "文件夹的zip包"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "生æˆSDF"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d字符串(%d%%)失败"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%då•è¯(%d%%)已分é…"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%dæ¡å­—符串]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d个å•è¯(%d%%)å·²ç»ç¿»è¯‘"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "所有的项目"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "所有的语言"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "我的å¸æˆ·"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "文档和帮助"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "注销"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "登录"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "注册"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "激活"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle标志"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "关于本PootleæœåŠ¡å™¨"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "所有目标"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d个文件"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d个文件"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d个字符串"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "姓å"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "已翻译的"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "已翻译的百分比"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "已翻译的å•è¯"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "模糊的"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "模糊的百分比"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "模糊的å•è¯"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "未翻译的百分比"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "未翻译的å•è¯"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "总数"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "总å•è¯æ•°"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "图示"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "登录失败"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "é‡å®šå‘至登录……"
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "访问主页需è¦ç™»å½•"
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "个人详细资料已ç»æ›´æ–°"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "访问管ç†é¡µéœ€è¦ç™»å½•"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "é‡å®šå‘至主页……"
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "你还没有管ç†pootleçš„æƒé™"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "查看"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "建议"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "翻译"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "检查"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "档案"
+
+# "Compile PO files" not "Compiled PO files"
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "编译 PO 文件"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "分é…"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "ä½ ä¸èƒ½åˆ é™¤\"nobody\"或\"default\"用户"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "你没有改å˜æ­¤å¤„目标的æƒé™"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "你没有在此上传文件的æƒé™"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "你没有在此覆盖文件的æƒé™"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "你没有在此上传新文件的æƒé™"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "你没有在此更新文件的æƒé™"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "你没有在此æ交文件的æƒé™"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "你没有在此改å˜ä»»åŠ¡åˆ†é…çš„æƒé™"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "你没有在此更改译文的æƒé™"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "你没有在此å‘表建议的æƒé™"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "你没有在此审阅建议的æƒé™"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%då·²ç»ç¿»è¯‘\n"
+"(%dæ¡æœªè¯‘,%dæ¡æ¨¡ç³Š)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s:将%s翻译为%s:%s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "原文"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "译文"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "译者注释"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "å¼€å‘者注释"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "相关"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "批处ç†ç»“æŸ"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "点击这里返回索引页"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "开头"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "å‰%dæ¡"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "第%d至%dæ¡ å…±%dæ¡"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "åŽ%dæ¡"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "结尾"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "正在检查 %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "没有与('%s')相匹é…çš„æ¡ç›®"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "您已ç»æ£€æŸ¥å®Œæ¯•æ‰€é€‰å®šçš„æ¡ç›®"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "å•æ•°"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "å¤æ•°"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "编辑"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "å¤åˆ¶"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "跳过"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "åŽé€€"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "æ交"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "增大译文区"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "缩å°è¯‘文区"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "å¤æ•°å½¢å¼%d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr "由于您所用语言的ä¸å­˜åœ¨å¤æ•°ï¼Œå› è€Œè¯‘æ–‡ä¸åˆç†ã€‚请è”系站点管ç†å‘˜ã€‚"
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "当å‰ç¿»è¯‘:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "建议%d,æ¥è‡ª%s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "建议%d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s的建议:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "建议:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "ä½ å¿…é¡»æ供一个至少å«æœ‰%d个字符的有效密ç ã€‚"
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "密ç ä¸ä¸€è‡´"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "登录到Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "用户å:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "密ç ï¼š"
+
+#: users.py:69
+msgid "Language:"
+msgstr "语言:"
+
+#: users.py:71
+msgid "Login"
+msgstr "登录"
+
+#: users.py:77
+msgid "Default"
+msgstr "默认"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "请输入你注册的详细信æ¯"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Pootle注册"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "你想è¦çš„用户å"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "必须是一个åˆæ³•çš„email地å€"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "ä½ çš„å…¨å"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "你想è¦è®¾ç½®çš„密ç "
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "确认密ç "
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "请å†æ¬¡è¾“入密ç ä»¥ç¡®ä¿è¾“入正确"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "注册å¸æˆ·"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "请输入你的激活信æ¯"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootleå¸æˆ·æ¿€æ´»"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "激活代ç "
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "你所收到的激活代ç "
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "激活å¸æˆ·"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "%s的选项:"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "个人详细资料"
+
+#: users.py:186
+msgid "Email"
+msgstr "Email"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "翻译界é¢é…ç½®"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "用户界é¢è¯­è¨€"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "我的项目"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "我的语言"
+
+#: users.py:196
+msgid "Home page"
+msgstr "主页"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "输入高度(以行为å•ä½)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "查看模å¼ä¸‹çš„行数"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "翻译模å¼ä¸‹çš„行数"
+
+#: users.py:307
+msgid "Error"
+msgstr "错误"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "你需è¦æˆä¸ºç½‘站管ç†å‘˜æ‰èƒ½æ›´æ”¹ç”¨æˆ·"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "用户ååªèƒ½åŒ…å«å­—æ¯å’Œæ•°å­—,且必须以字æ¯å¼€å¤´"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "你(或者其他人)å°è¯•ä½¿ç”¨ä½ çš„用户å注册å¸æˆ·ã€‚\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "我们并未ä¿å­˜ä½ çš„实际密ç ï¼Œè€Œåªæ˜¯å®ƒçš„hash值。\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "如果你在注册时é‡åˆ°äº†é—®é¢˜ï¼Œè¯·è”ç³»%s。\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "如果你在注册时é‡åˆ°äº†é—®é¢˜ï¼Œè¯·è”系站点管ç†å‘˜ã€‚\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "这个用户åå·²ç»å­˜åœ¨ã€‚å·²ç»ç»™ç›¸åº”的注册email地å€å‘了一å°email。\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "下é¢å¼€å§‹<a href='%s'>登录</a>"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "å·²ç»ä½¿ç”¨è¿™ä¸ªemail地å€ä¸ºæ‚¨åˆ›å»ºäº†ä¸€ä¸ªPootleå¸æˆ·ã€‚\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "è¦æ¿€æ´»ä½ çš„å¸æˆ·ï¼Œç‚¹å‡»è¿™ä¸ªé“¾æŽ¥ï¼š\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"你的激活代ç æ˜¯ï¼š\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "如果你打ä¸å¼€è¿™ä¸ªé“¾æŽ¥ï¼Œè¯·åœ¨æ¿€æ´»é¡µé¢è¾“入上é¢çš„代ç ã€‚\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "å‘é€æœ¬ä¿¡æ¯çš„目的是为了验è¯email地å€æ˜¯å¦æ­£ç¡®ã€‚如果你ä¸æƒ³æ³¨å†Œï¼Œåªéœ€å¿½ç•¥æœ¬ä¿¡æ¯ã€‚\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr "å¸æˆ·å·²ç»åˆ›ç«‹ã€‚登录详细信æ¯å’Œæ¿€æ´»ä»£ç å°†ä¼šé€šè¿‡emailå‘é€ç»™ä½ ã€‚请在<a href='%s'>激活页é¢</a>上输入你的激活代ç ã€‚"
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(或者点击email里的激活连接)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "您的用户å是:%s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "您的密ç æ˜¯ï¼š%s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "您注册的email地å€æ˜¯ï¼š%s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "é‡å®šå‘至注册页……"
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "é‡å®šå‘至登录页……"
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "ä½ çš„å¸æˆ·å·²ç»è¢«æ¿€æ´»ï¼é‡å®šå‘至登录……"
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "激活信æ¯ä¸æ­£ç¡®"
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "激活失败"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "输入高度必须是数字"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "输入跨度必须是数字"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "查看模å¼ä¸‹çš„行数必须是数字"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "翻译模å¼ä¸‹çš„行数必须是数字"
+
+#~ msgid "Accept"
+#~ msgstr "接å—"
+
+#~ msgid "Reject"
+#~ msgstr "æ‹’ç»"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge 翻译项目"
+
+#~ msgid "Broaden"
+#~ msgstr "加宽"
+
+#~ msgid "Narrow"
+#~ msgstr "缩窄"
+
+#~ msgid "Reset"
+#~ msgstr "é‡è®¾"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "必须是一个åˆæ³•çš„email地å€"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "输入宽度(以字符为å•ä½)"
+
+#~ msgid "Pootle"
+#~ msgstr "Pootle"
+
+#~ msgid "Pootle: %s"
+#~ msgstr "Pootle: %s"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/zh_HK/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/zh_HK/jToolkit.po
new file mode 100644
index 0000000..f29b2a2
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/zh_HK/jToolkit.po
@@ -0,0 +1,140 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2006-09-25 20:46+0200\n"
+"Last-Translator: Abel Cheung <abelcheung@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 0.10.1rc1\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr ""
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "離開程å¼"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ",請å†æ¬¡ç¢ºèª"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "登入"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "用戶å稱:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "密碼:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "使用語言:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "é¸æ“‡æ¬²ç¿»è­¯ç¨‹å¼"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "登出"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "離開"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "以 <b>%s</b> 身分登入"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "已登出"
+
+#: web/session.py:234
+msgid "connected"
+msgstr ""
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "伺æœå™¨è¨­å®šæª”中需è¦å®šç¾© users 或 userprefs 欄ä½"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "用戶ä¸å­˜åœ¨ (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "用戶å稱或密碼ä¸æ­£ç¢º"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "確èªç™»å…¥æ™‚出ç¾éŒ¯èª¤"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "å¦"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "是"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "移除"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(沒有附件)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "附件太大"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "移除此附件"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "還原"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "這個附件已經被移除。請按這è£é‚„原"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "附上檔案"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/zh_HK/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/zh_HK/pootle.po
new file mode 100644
index 0000000..65c2e07
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/zh_HK/pootle.po
@@ -0,0 +1,1385 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2006-09-25 21:18+0200\n"
+"Last-Translator: Abel Cheung <abelcheung@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 0.10.1rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle 示範"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "首é "
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "用戶"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "使用語言"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "計劃"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "一般é¸é …"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "é¸é …"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "ç›®å‰è¨­å®šå€¼"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "儲存變更"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "標題"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "æè¿°"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "基本網å€"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "首é "
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "主è¦ç®¡ç†é é¢"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO Code"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "å…¨å"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(在此新增使用語言)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "特殊字符"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(特殊字符)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "複數形å¼"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(複數形å¼)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "複數é‹ç®—å¼"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(複數é‹ç®—å¼ï¼‰"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "移除語言"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "移除 %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "標準"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "計劃代碼"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(在這è£åŠ å…¥è¨ˆåŠƒï¼‰"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "有關計劃的æè¿°"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(有關計劃的æ述)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr ""
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "產生 MO 檔"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "移除計劃"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "用戶"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(在這è£å¡«ä¸Šå…¨å)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "電郵地å€"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(在這è£å¡«ä¸Šé›»éƒµåœ°å€ï¼‰"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "密碼"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(在這è£å¡«ä¸Šå¯†ç¢¼ï¼‰"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "已啟用"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "啟用新的戶å£"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "移除用戶"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "回到首é "
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "所有語言"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "更新所有語言的翻譯"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle 管ç†å“¡ï¼š%s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "你沒有足夠權é™ç®¡ç†é€™å€‹è¨ˆåŠƒã€‚"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "由模æ¿æ›´æ–°"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "加入語言"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle 管ç†å“¡ï¼š%s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "計劃首é "
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "無法設定用戶 %s 的權é™â€”—這個用戶ä¸å­˜åœ¨"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "這個是 GNU å½¢å¼çš„軟件計劃 (åªæœ‰ä¸€å€‹ç›®éŒ„,而翻譯檔根據語言來命å)。"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "這個是一般形å¼çš„軟件計劃 (æ¯ç¨®èªžè¨€æœ‰å®ƒè‡ªå·±çš„目錄)。"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "用戶權é™"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr ""
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "權é™"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "移除"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "更新權é™"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "關於 Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> 是一個å¯ä»¥è®“你翻譯程å¼çš„網é ç•Œé¢ã€‚因為它是<strong>自由軟件</strong>,你å¯ä»¥éš¨æ™‚下載使用"
+"。你也å¯ä»¥åƒèˆ‡å®ƒçš„開發(ä¸ä¸€å®šæ˜¯æ‡‚得寫程å¼æ‰å¯ä»¥åƒèˆ‡çš„)。"
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle 本身的官方網站是在 <a href=\"http://translate.sourceforge.net/\">translate.sourc"
+"eforge.net</a>,你å¯ä»¥åœ¨é‚£è£ç²å–有關æºä»£ç¢¼ã€éƒµä»¶è«–壇等等的資料。"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"å稱的中文æ„義是「線上 PO 檔翻譯引擎ã€ï¼Œä½†ä½ ä¹Ÿæ‡‰è©²çœ‹çœ‹<a "
+"href=\"http://www.thechestnut.com/flumps.htm\">這è£</a>。"
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "版本"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr ""
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "更改é¸é …"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "管ç†é é¢"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "管ç†"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "æ·å¾‘éˆçµ"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "請按「更改é¸é …ã€ï¼Œç„¶å¾Œé¸æ“‡ä½ æƒ³åƒèˆ‡çš„語言和計劃"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d 個計劃,平å‡ç¿»è­¯äº† %d%%"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "管ç†"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "語言代碼"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "語言å稱"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d 種語言,平å‡ç¿»è­¯äº† %d%%"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "語言"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: %s 計劃,%s 語言"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "æœå°‹"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "無法上傳檔案,因為並沒有附上任何檔案"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "åªå¯ä»¥ä¸Šå‚³ PO 檔或 PO 檔的 zip 壓縮檔"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "分派字串"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "分派動作"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "分派給用戶"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "目標"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "輸入目標å稱"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "加入目標"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "上傳檔案"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "é¸æ“‡è¦ä¸Šå‚³çš„檔案"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "加入用戶"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO 檔"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF 檔"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts 檔"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV 檔"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO 檔"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "æ›´æ–°"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "æ交"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "所有字串"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "未翻譯的字串"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "未分派的字串"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "未分派或未翻譯的字串"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "設定目標"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "顯示編輯功能"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "顯示統計數字"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "顯示檢查çµæžœ"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "éš±è—檢查çµæžœ"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "顯示目標"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "éš±è—目標"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "所有目標:%s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "沒有任何字串分派給你"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "沒有任何未翻譯的字串分派給你"
+
+#: indexpage.py:883
+#, fuzzy
+msgid "Review Suggestions"
+msgstr "顯示建議"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "顯示建議"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "快速翻譯"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "顯示未翻譯的字å¥"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "沒有未翻譯的字å¥"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "翻譯所有字å¥"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "整個資料夾的壓縮檔"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d 個字串 (%d%%) 未通éŽæª¢é©—"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "分派了 %d 個字 (%d%%)"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d 個字串]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "翻譯了 %d/%d 個字 (%d%%)"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "所有計劃"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "所有語言"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "我的戶å£è¨­å®š"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "說明文件"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "登出"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "登入"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "登記戶å£"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "啟用"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle 標誌"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "關於這個 Pootle 伺æœå™¨"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "所有目標"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d 個檔案"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d 個檔案"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d 個字串"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "å稱"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "已翻譯"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "已翻譯的比例"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "已翻譯的字數"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "模糊翻譯"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "模糊翻譯比例"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "模糊翻譯字數"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "未翻譯的比例"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "未翻譯的字數"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "總數"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "總字數"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "圖表"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr ""
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "登入失敗"
+
+#: pootle.py:349 pootle.py:380
+#, fuzzy
+msgid "Redirecting to login..."
+msgstr "é‡å°Žå‘至首é â€¦"
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "你需è¦ç™»å…¥æ–¹å¯é€²å…¥é¦–é "
+
+#: pootle.py:365
+#, fuzzy
+msgid "Personal details updated"
+msgstr "個人資料"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "你需è¦ç™»å…¥æ–¹å¯é€²å…¥ç®¡ç†é é¢"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "é‡å°Žå‘至首é â€¦"
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "你沒有足夠權é™ç®¡ç† Pootle。"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "檢視"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "建議"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "翻譯"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "審核"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "ä¿å­˜"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "編譯 PO 檔"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "分派"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "ä½ ä¸å¯ä»¥ç§»é™¤ “nobody†和 “default†這兩個戶å£"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "你沒有足夠權é™æ›´æ”¹ç›®æ¨™"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "你沒有足夠權é™ä¸Šå‚³æª”案"
+
+#: projects.py:513
+#, fuzzy
+msgid "You do not have rights to overwrite files here"
+msgstr "你沒有足夠權é™æ交檔案"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "你沒有足夠權é™ä¸Šå‚³æ–°çš„檔案"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "你沒有足夠權é™æ›´æ–°æª”案"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "你沒有足夠權é™æ交檔案"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "你沒有足夠權é™æ›´æ”¹å­—å¥çš„分é…"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "你沒有足夠權é™æ›´æ”¹ç¿»è­¯"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "你沒有足夠權é™å»ºè­°ç¿»è­¯å­—å¥"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "你沒有足夠權é™å¯©æ ¸åˆ¥äººçš„建議"
+
+#: translatepage.py:103
+#, python-format
+#, fuzzy
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"已翻譯 %d/%d 個æ¢ç›®\n"
+"(%d 個未翻譯,%d 個是模糊翻譯)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s: å°‡ %s 翻譯æˆ%s: %s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "原始語言"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "翻譯"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr ""
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr ""
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "相關字詞"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr ""
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "到了整批翻譯的çµå°¾"
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "按這è£è¿”回首é "
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "開始"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "å‰ %d 個"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "第 %d 至 %d 個æ¢ç›® (å…± %d 個)"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "後 %d 個"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "çµå°¾"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "正在檢查%s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "未有字串符åˆæœå°‹é—œéµå­—('%s')"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "你已經將所有已é¸æ“‡çš„æ¢ç›®è™•ç†å®Œç•¢"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "單數"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "複數"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "編輯"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "複製"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "忽略"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "上一個"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "æ交"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "增高文字框"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "縮矮文字框"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "è¤‡æ•¸å½¢å¼ %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr "無法翻譯,因為沒有有關你使用的語言的複數形態。請è¯çµ¡ç³»çµ±ç®¡ç†å“¡ã€‚"
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "ç›®å‰çš„翻譯:"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "第 %d 個建議 (來自 %s):"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "第 %d 個建議:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "%s 的建議:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "建議翻譯:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "密碼至少必須有 %d 個字。"
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "兩個密碼ä¸ç›¸ç¬¦ã€‚"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "登入 Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "用戶å稱:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "密碼:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "語言:"
+
+#: users.py:71
+msgid "Login"
+msgstr "登入"
+
+#: users.py:77
+msgid "Default"
+msgstr "é è¨­"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "請輸入你的登記資料"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "登記 Pootle 戶å£"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "ä½ è¦æ±‚使用的用戶å稱"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "å¿…é ˆæ供正確的電å­éƒµä»¶åœ°å€æ ¼å¼"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "ä½ çš„å…¨å"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "你想使用的密碼"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "確èªå¯†ç¢¼"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "è«‹å†æ¬¡è¼¸å…¥å¯†ç¢¼ï¼Œç¢ºä¿ä¸æœƒæ‰“錯字"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "登記戶å£"
+
+#: users.py:145
+#, fuzzy
+msgid "Please enter your activation details"
+msgstr "請輸入你的登記資料"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "啟用 Pootle 戶å£"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr ""
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "啟用戶å£"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "個人資料"
+
+#: users.py:186
+msgid "Email"
+msgstr "電郵"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "翻譯界é¢è¨­å®š"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "用戶界é¢çš„語言"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "和我有關的計劃"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "和我有關的語言"
+
+#: users.py:196
+msgid "Home page"
+msgstr "首é "
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "輸入欄ä½é«˜åº¦ (è¡Œ)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "ç€è¦½æ¨¡å¼æ™‚顯示多少行"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "翻譯模å¼æ™‚顯示多少行"
+
+#: users.py:307
+msgid "Error"
+msgstr "錯誤"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "你必須是網站管ç†å“¡æ‰å¯ä»¥æ›´æ”¹ç”¨æˆ¶è¨­å®š"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "使用者å稱必須åªç”¨è‹±æ–‡å­—æ¯æˆ–數字,而且第一個字符必須為英文字æ¯ã€‚"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "你或者別人ä¼åœ–使用你的用戶å稱å†ç™»è¨˜æˆ¶å£ã€‚\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "我們ä¸æœƒç›´æŽ¥å„²å­˜å¯†ç¢¼ï¼Œåªæœƒå„²å­˜ç¶“é‹ç®—後的çµæžœã€‚\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "如果登記戶å£æ–¹é¢æœ‰å•é¡Œï¼Œè«‹è¯çµ¡ %s。\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "如果登記戶å£æ–¹é¢æœ‰å•é¡Œï¼Œè«‹è¯çµ¡ç¶²ç«™ç®¡ç†å“¡ã€‚\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "這個用戶å稱已經存在。ç¾åœ¨æœƒå¯„一å°ä¿¡çµ¦å·²ç™»è¨˜çš„電郵地å€ã€‚\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "繼續<a href='%s'>登入</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "已經用這個電å­éƒµä»¶åœ°å€æˆåŠŸå»ºç«‹ Pootle 戶å£ã€‚\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "è¦å•Ÿç”¨æˆ¶å£ï¼Œè«‹ç€è¦½é€™å€‹éˆçµï¼š\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "本訊æ¯æ˜¯ç”¨ä¾†é©—證電郵地å€æ˜¯å¦æ­£ç¢ºçš„。如果你ä¸æƒ³ç™»è¨˜æˆ·å£ï¼Œè«‹å¿½ç•¥é€™æ®µè¨Šæ¯ã€‚\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "你的用戶å稱是:%s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "你的密碼是:%s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "你用來登記的電郵地å€æ˜¯ï¼š%s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "é‡å°Žå‘至登記é é¢â€¦"
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "é‡å°Žå‘至登入é é¢â€¦"
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "輸入欄ä½çš„高度必須是數字"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "輸入欄ä½çš„寬度必須是數字"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "ç€è¦½æ¨¡å¼çš„行數必須是數字"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "翻譯模å¼çš„行數必須是數字"
+
+#~ msgid "Accept"
+#~ msgstr "接å—"
+
+#~ msgid "Reject"
+#~ msgstr "棄用"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge 翻譯計劃"
+
+#~ msgid "Broaden"
+#~ msgstr "擴闊文字框"
+
+#~ msgid "Narrow"
+#~ msgstr "縮窄文字框"
+
+#~ msgid "Reset"
+#~ msgstr "é‡è¨­"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "必須是正確的電郵地å€æ ¼å¼"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "輸入欄ä½å¯¬åº¦ (字符)"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/zh_TW/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/zh_TW/jToolkit.po
new file mode 100644
index 0000000..9741b67
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/zh_TW/jToolkit.po
@@ -0,0 +1,144 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR St James Software
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: 2007-12-21 10:41+0100\n"
+"Last-Translator: shawnyu <jingsongyu@hotmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.0.2\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr "登入於 %s"
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr "å–消這個動作並å¦èµ·ä½œæ¥­éšŽæ®µ"
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "ä¸ç¶“確èªå³ç™»å‡ºä¸¦é‡ä¾†"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr "çµæŸæ‡‰ç”¨ç¨‹å¼"
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr "çµæŸæ­¤æ‡‰ç”¨ç¨‹å¼ä¸¦å›žåˆ°ä¸Šä¸€å±¤"
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ", 請確èªç™»å…¥"
+
+#: web/server.py:110
+msgid "Login"
+msgstr "登入"
+
+#: web/server.py:123
+msgid "Username:"
+msgstr "使用者å稱:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "密碼:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "語系"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr "é¸æ“‡æ‡‰ç”¨ç¨‹å¼"
+
+#: web/server.py:637
+msgid "Logout"
+msgstr "登出"
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "離開"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr "登入為 <b>%s</b>"
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr "無法新增作業進程"
+
+#: web/session.py:214
+msgid "logged out"
+msgstr "已登出"
+
+#: web/session.py:234
+msgid "connected"
+msgstr "已連線"
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr "çµæŸä¸Šå±¤(parent)作業階段"
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr "必須在伺æœå™¨è¨­å®šä¸­å®šç¾©ä½¿ç”¨è€…或å好"
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr "該使用者ä¸å­˜åœ¨ (%r)"
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr "無效的使用者å稱åŠ(或)密碼"
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr "登入失敗確èª"
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "å¦"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "是"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "移除"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "(沒有附件)"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "附件éŽå¤§"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "移除此附件"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "還原"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "此附件已移除。點é¸æ­¤è™•å¯é‚„原它"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "附加檔案"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/zh_TW/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/zh_TW/pootle.po
new file mode 100644
index 0000000..339d557
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/zh_TW/pootle.po
@@ -0,0 +1,1389 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Zuza Software Foundation (Translate.org.za)
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-10-16 08:06+0000\n"
+"Last-Translator: Olaf <dl7und@gmail.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Pootle 1.2.0-rc1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr "Pootle é è¦½"
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "首é "
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "使用者"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "語系"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "專案"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr "一般é¸é …"
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "é¸é …"
+
+#: adminpages.py:51 users.py:183
+msgid "Current value"
+msgstr "ç¾å€¼"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr "儲存變更"
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "標題"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "介紹"
+
+#: adminpages.py:58
+msgid "Base URL"
+msgstr "網å€"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "首é "
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr "Pootle語言管ç†é é¢"
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr "主è¦ç®¡ç†é é¢"
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr "ISO 代號"
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "å…¨å"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr "(在此新增語系)"
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr "特殊字元"
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr "(特殊字元)"
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr "複數型個數"
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr "(複數型個數)"
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr "åŒç¾©è¤‡æ•¸åž‹"
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr "(åŒç¾©è¤‡æ•¸åž‹)"
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "移除語系"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "移除 %s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "標準"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr "Pootle專案管ç†é é¢"
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr "專案代號"
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(在此新增專案)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr "專案介紹"
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr "(專案介紹)"
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr "審核風格"
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "檔案類型"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr "建立 MO 檔"
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "移除專案"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr "Pootle使用者管ç†é é¢"
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "使用者å稱"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(在此新增全å)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "電郵地å€"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(在此新增地å€)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "密碼"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(在此新增密碼)"
+
+#: adminpages.py:222
+msgid "Activated"
+msgstr "å·²èªè­‰"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr "èªè­‰æ–°ä½¿ç”¨è€…"
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "移除使用者"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr "回到主é "
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr "ç¾æœ‰èªžç³»"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr "更新語系"
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr "Pootle 管ç†ï¼š%s"
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr "您沒有管ç†å°ˆæ¡ˆçš„權é™"
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr "自範本更新"
+
+#: adminpages.py:298
+msgid "Add Language"
+msgstr "新增語系"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr "Pootle 管ç†ï¼š%s %s"
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "專案首é "
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr "無法設定使用者 %s çš„æ¬Šé™ - 查無該使用者"
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr "這是 GNU-風格的專案(單一目錄,檔案分別以å„語系命å)"
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr "這是標準風格的專案(æ¯å€‹èªžç³»å„有其目錄)"
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr "使用者權é™"
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(é¸æ“‡è¦æ–°å¢žçš„使用者)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr "權é™"
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "移除"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr "更新權é™"
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "關於 Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+"<strong>Pootle</strong> 是個易用的入å£ç¶²ç«™ï¼Œè®“您å¯ä»¥<strong>進行翻譯</strong>ï¼æ—¢ç„¶ Pootle "
+"是<strong>自由軟體</strong>,您å¯éš¨å¿ƒæ‰€æ¬²åœ°ä¸‹è¼‰ä¸¦é‹è¡Œå®ƒã€‚æ›´å¯é€éŽå¤šç¨®æ–¹å¼åƒèˆ‡é–‹ç™¼ (您ä¸ä¸€å®šè¦æœƒå¯«ç¨‹å¼)。"
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+"Pootle 專案本身由 <a "
+"href=\"http://translate.sourceforge.net/\">translate.sourceforge.net</a> "
+"所維護。您å¯åœ¨é‚£æ‰¾åˆ°åŽŸå§‹ç¢¼ï¼Œéƒµä»¶åˆ—表等詳細資料。"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+"Pootle 命å構想基本上是來自 <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / "
+"<b>L</b>ocalization <b>E</b>ngine,但您å¯å¾—è¦è®€è®€ <a "
+"href=\"http://www.thechestnut.com/flumps.htm\">這篇文章</a>。"
+
+#: indexpage.py:65
+msgid "Versions"
+msgstr "版本"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+"本站正é‹è¡Œï¼š<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit %s<br />Kid "
+"%s<br />ElementTree %s<br />Python %s (æ–¼ %s/%s)"
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "%s 的使用者é é¢"
+
+#: indexpage.py:135
+msgid "Change options"
+msgstr "更改é¸é …"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr "管ç†é é¢"
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr "管ç†"
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr "æ·å¾‘"
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr "è«‹é»žé¸ '更改é¸é …' 並é¸æ“‡æŸäº›èªžç³»å’Œå°ˆæ¡ˆ"
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] "%d å€‹å°ˆæ¡ˆï¼Œå¹³å‡ %d%% 已翻譯"
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s:%s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr "管ç†"
+
+#: indexpage.py:221
+msgid "Language Code"
+msgstr "語系代號"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "語系å稱"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] "%d ç¨®èªžç³»ï¼Œå¹³å‡ %d%% 已翻譯"
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "語系"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: 專案 %s,語系 %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "æœå°‹"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr "進階æœå°‹"
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr "無法上傳檔案故ä¸é™„加任何檔案"
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr "僅能上傳 PO 檔和 PO 檔的壓縮檔"
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr "分é…å­—å¥"
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr "分é…歷程"
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr "分é…給使用者"
+
+#: indexpage.py:543
+msgid "goals"
+msgstr "目標"
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr "輸入目標å稱"
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr "新增目標"
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "上傳檔案"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr "é¸æ“‡è¦ä¸Šå‚³çš„檔案"
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr "覆寫"
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr "若已存在則覆寫原有檔案"
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr "åˆä½µ"
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr "與原有檔案åˆä½µï¼Œä¸”將歧義轉為建議"
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr "未列入目標"
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "新增使用者"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr "PO 檔"
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr "XLIFF 檔"
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr "Qt .ts 檔"
+
+#: indexpage.py:743
+msgid "CSV file"
+msgstr "CSV 檔"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr "MO 檔"
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "更新版本"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr "æ交"
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr "所有字å¥"
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "未翻譯"
+
+#: indexpage.py:800
+msgid "Unassigned"
+msgstr "未分é…çš„"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr "未分é…åŠæœªç¿»è­¯çš„"
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr "設定目標"
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr "多é‡é¸å–"
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr "分é…給"
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr "顯示編輯功能"
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr "顯示統計"
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr "顯示追蹤訊æ¯"
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr "éš±è—追蹤訊æ¯"
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr "顯示審核"
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr "éš±è—審核"
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr "顯示目標"
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr "éš±è—目標"
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr "顯示分é…"
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr "éš±è—分é…"
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr "所有目標:%s"
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr "翻譯我的字å¥"
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr "檢視我的字å¥"
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr "沒有分é…給您的字å¥"
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr "快速翻譯我的字å¥"
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr "沒有未翻譯的字å¥åˆ†é…給您"
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr "審核建議"
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr "檢視建議"
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr "快速翻譯"
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr "檢視未翻譯字å¥"
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr "沒有未翻譯的項目"
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "全部翻譯"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr "目標壓縮檔"
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr "目錄壓縮檔"
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr "產生 SDF 檔"
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] "%d å€‹å­—å¥ (%d%%) 錯誤"
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr "%d/%d 個字詞 (%d%%) 已分é…"
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr "[%d/%d 個字å¥]"
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr "%d/%d 個字詞 (%d%%) 已翻譯"
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "所有專案"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "所有語系"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr "我的帳號"
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "文件åŠèªªæ˜Ž"
+
+#: pagelayout.py:34
+msgid "Log out"
+msgstr "登出"
+
+#: pagelayout.py:35
+msgid "Log in"
+msgstr "登入"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "註冊"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "èªè­‰"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr "Pootle 標幟"
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr "關於本 Pootle 伺æœå™¨"
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr "所有目標"
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr "%d/%d 個檔案"
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "%d 個檔案"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr "%d/%d 個字å¥"
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "å稱"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "已翻譯"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr "已翻譯百分比"
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "已翻譯字詞數"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr "語æ„模糊"
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr "語æ„模糊百分比"
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr "語æ„模糊字詞數"
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr "未翻譯百分比"
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "未翻譯字詞數"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "åˆè¨ˆ"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr "字詞總數"
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr "進度æ¢"
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr "æºæ–‡"
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr "目標文"
+
+#: pagelayout.py:301
+msgid "Comments"
+msgstr "備註"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr "ä½ç½®"
+
+#: pootle.py:305
+msgid "Login failed"
+msgstr "登入失敗"
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr "正轉至登入é é¢..."
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr "登入後æ‰èƒ½å­˜å–首é "
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr "個人資料已更新"
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr "登入後æ‰èƒ½å­˜å–管ç†é é¢"
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr "正轉至首é ..."
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr "æ‚¨æ²’æœ‰ç®¡ç† Pootle 的權é™ã€‚"
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "檢視"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr "建議"
+
+#: projects.py:140
+msgid "Translate"
+msgstr "翻譯"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr "檢閱"
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr "ä¿å­˜"
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr "編譯 PO 檔案"
+
+#: projects.py:148
+msgid "Assign"
+msgstr "分é…"
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr "您ä¸èƒ½å¤ ç§»é™¤ \"nobody\" 或 \"default\" 使用者"
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr "您沒有更動目標的權é™"
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr "您沒有上傳檔案的權é™"
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr "您沒有覆寫檔案的權é™"
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr "您沒有上傳新檔的權é™"
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr "您沒有更新檔案的權é™"
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr "您沒有æ交檔案的權é™"
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr "您沒有更改簽章的權é™"
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr "您沒有修改翻譯的權é™"
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr "您沒有建議更改的權é™"
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr "您沒有審核建議的權é™"
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+"%d/%d 已翻譯\n"
+"(%d 未翻譯, %d 語æ„模糊)"
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr "%s:將 %s 譯為 %s:%s"
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "原文"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "譯文"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr "接å—建議"
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr "拒絕建議"
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "翻譯員備註"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "開發者備註"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "相關詞"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "處ç†ä¸­..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr "錯誤:發生æ„外。"
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr "最後一é "
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr "點é¸æ­¤è™•ä»¥å›žåˆ°ç´¢å¼•"
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "首é "
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr "å‰ %d 個"
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "項目 %d 到 %d (共 %d 個)"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr "後 %d 個"
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "末é "
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr "正在審核 %s"
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr "沒有符åˆæ­¤æœå°‹ ('%s') çš„é …ç›®"
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr "您已全部完æˆæ‰€é¸é …ç›®"
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr "單數型"
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr "複數型"
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "編輯"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "複製"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "ç•¥éŽ"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "返回"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "é€å‡º"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr "增行"
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr "縮行"
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr "複數型 %d"
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr "無法進行翻譯,因為沒有關於您語系的複數型資訊。請è¯çµ¡ç«™å°ç®¡ç†å“¡ã€‚"
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr "ç›®å‰è­¯æ–‡ï¼š"
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr "建議 %d 自 %s:"
+
+#: translatepage.py:819
+#, python-format
+msgid "Suggestion %d:"
+msgstr "建議 %d:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+msgid "Suggestion by %s:"
+msgstr "由 %s 建議:"
+
+#: translatepage.py:825
+msgid "Suggestion:"
+msgstr "建議:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr "您必須æ供至少 %d 字元的有效密碼。"
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr "密碼與確èªçš„ä¸ä¸€è‡´"
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "登入 Pootle"
+
+#: users.py:66
+msgid "Username:"
+msgstr "使用者å稱:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "密碼:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "語系:"
+
+#: users.py:71
+msgid "Login"
+msgstr "登入"
+
+#: users.py:77
+msgid "Default"
+msgstr "é è¨­"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "請輸入您註冊的資料"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "於 Pootle 註冊"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr "使用者å稱"
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr "您必須æ供有效的電郵地å€"
+
+#: users.py:128
+msgid "Your full name"
+msgstr "您的全å"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr "密碼"
+
+#: users.py:133 users.py:189
+msgid "Confirm password"
+msgstr "確èªå¯†ç¢¼"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr "è«‹å†è¼¸å…¥æ‚¨çš„密碼一次以確èªè¼¸å…¥ç„¡èª¤"
+
+#: users.py:136
+msgid "Register Account"
+msgstr "註冊帳號"
+
+#: users.py:145
+msgid "Please enter your activation details"
+msgstr "請輸入您的èªè­‰è³‡æ–™"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr "Pootle 帳號èªè­‰"
+
+#: users.py:160
+msgid "Activation Code"
+msgstr "èªè­‰ç¢¼"
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "您收到的èªè­‰ç¢¼"
+
+#: users.py:163
+msgid "Activate Account"
+msgstr "èªè­‰å¸³è™Ÿ"
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr "é¸é …於:%s"
+
+#: users.py:181
+msgid "Personal Details"
+msgstr "個人資料"
+
+#: users.py:186
+msgid "Email"
+msgstr "電郵"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr "翻譯介é¢è¨­å®š"
+
+#: users.py:191
+msgid "User Interface language"
+msgstr "使用者介é¢èªžç³»"
+
+#: users.py:192
+msgid "My Projects"
+msgstr "我的專案"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "我的語系"
+
+#: users.py:196
+msgid "Home page"
+msgstr "首é "
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr "第二原語言"
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr "ç„¡"
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr "編輯å€é«˜åº¦ (以列為單ä½)"
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr "檢視模å¼ä¸‹é …目個數"
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr "翻譯模å¼ä¸‹é …目個數"
+
+#: users.py:307
+msgid "Error"
+msgstr "錯誤"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr "您必須是站å°ç®¡ç†è€…æ‰èƒ½æ›´æ”¹ä½¿ç”¨è€…資料"
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr "使用者å稱必須是字æ¯èˆ‡æ•¸å­—組æˆä¸¦ä»¥å­—æ¯é–‹é ­ã€‚"
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr "您 (或他人) 正試著以您的使用者å稱註冊帳號。\n"
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr "我們並ä¸å„²å­˜æ‚¨å¯¦éš›å¯†ç¢¼è€Œæ˜¯å®ƒçš„雜湊檔。\n"
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "若有註冊上的å•é¡Œï¼Œè«‹è¯çµ¡ %s。\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr "若有註冊上的å•é¡Œï¼Œè«‹è¯çµ¡ç«™å°ç®¡ç†å“¡ã€‚\n"
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr "使用者å稱已存在。將會寄信至註冊的電郵地å€ã€‚\n"
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr "<a href='%s'> 登入中</a>\n"
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr "已用此電郵地å€ç‚ºæ‚¨å»ºç«‹ Pootle 帳號。\n"
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr "請點é¸ä¸‹åˆ—網å€ä»¥å®Œæˆèªè­‰ï¼š\n"
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+"您的èªè­‰ç¢¼ç‚ºï¼š\n"
+"%s\n"
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr "若您無法連上此網å€ï¼Œè«‹æ–¼èªè­‰é é¢è¼¸å…¥ä¸Šåˆ—èªè­‰ç¢¼ã€‚\n"
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr "這則訊æ¯æ˜¯ç‚ºäº†ç¢ºèªé›»éƒµåœ°å€æ­£ç¢ºç„¡èª¤ã€‚若您ä¸æƒ³è¨»å†Šå¸³è™Ÿï¼Œè«‹å¿½ç•¥æ­¤è¨Šæ¯ã€‚\n"
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr "帳號已建立。您將會收到登錄資料和èªè­‰ç¢¼ã€‚請輸入您的èªè­‰ç¢¼æ–¼<a href='%s'>èªè­‰é é¢</a>。"
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr "(或是點é¸éƒµä»¶ä¸­çš„èªè­‰ç¶²å€)"
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr "您的使用者å稱為:%s\n"
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr "您的密碼為:%s\n"
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr "您註冊的電郵地å€ç‚ºï¼š%s\n"
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr "正轉至註冊é é¢..."
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr "正轉至登入é é¢..."
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr "您的帳號已èªè­‰ï¼æ­£è½‰è‡³ç™»å…¥é é¢..."
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr "無效的èªè­‰è³‡æ–™ã€‚"
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr "èªè­‰å¤±æ•—"
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr "編輯å€é«˜åº¦å¿…須是數字"
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr "編輯å€å¯¬åº¦å¿…須是數字"
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr "檢視模å¼ä¸‹çš„項目個數必須是數字"
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr "翻譯模å¼ä¸‹çš„項目個數必須是數字"
+
+#~ msgid "Accept"
+#~ msgstr "接å—"
+
+#~ msgid "Reject"
+#~ msgstr "拒絕"
+
+#~ msgid "WordForge Translation Project"
+#~ msgstr "WordForge 翻譯專案"
+
+#~ msgid "Broaden"
+#~ msgstr "加寬"
+
+#~ msgid "Narrow"
+#~ msgstr "變窄"
+
+#~ msgid "Reset"
+#~ msgstr "é‡è¨­"
+
+#~ msgid "Must be a valid email address"
+#~ msgstr "必須是有效的電郵地å€"
+
+#~ msgid "Input Width (in characters)"
+#~ msgstr "編輯å€å¯¬åº¦ (以字元為單ä½)"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/zu/jToolkit.po b/Pootle-1.2.1/Pootle/po/pootle/zu/jToolkit.po
new file mode 100644
index 0000000..50fc524
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/zu/jToolkit.po
@@ -0,0 +1,143 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-06-13 14:54-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+"X-Generator: Pootle 0.6.3\n"
+"Generated-By: pygettext.py 1.5\n"
+
+#: web/server.py:57
+#, python-format
+msgid "Login for %s"
+msgstr ""
+
+#: web/server.py:91
+msgid "Cancel this action and start a new session"
+msgstr ""
+
+#: web/server.py:92
+msgid "Instead of confirming this action, log out and start from scratch"
+msgstr "isi lungu sa ka george"
+
+#: web/server.py:97
+msgid "Exit application"
+msgstr ""
+
+#: web/server.py:98
+msgid "Exit this application and return to the parent application"
+msgstr ""
+
+#: web/server.py:105
+msgid ", please confirm login"
+msgstr ""
+
+#: web/server.py:110
+msgid "Login"
+msgstr ""
+
+#: web/server.py:123
+#, fuzzy
+msgid "Username:"
+msgstr "Igama loyisebenzisayo:"
+
+#: web/server.py:125
+msgid "Password:"
+msgstr "Igama lokungena:"
+
+#: web/server.py:130
+msgid "Language:"
+msgstr "Ulimi:"
+
+#: web/server.py:551 web/server.py:642
+msgid "Select Application"
+msgstr ""
+
+#: web/server.py:637
+msgid "Logout"
+msgstr ""
+
+#: web/server.py:639
+msgid "Exit"
+msgstr "Phuma"
+
+#: web/session.py:191 web/session.py:344 web/session.py:350
+#, python-format
+msgid "logged in as <b>%s</b>"
+msgstr ""
+
+#: web/session.py:193
+msgid "couldn't add new session"
+msgstr ""
+
+#: web/session.py:214
+msgid "logged out"
+msgstr ""
+
+#: web/session.py:234
+msgid "connected"
+msgstr ""
+
+#: web/session.py:269
+msgid "exited parent session"
+msgstr ""
+
+#: web/session.py:314
+msgid "need to define the users or userprefs entry on the server config"
+msgstr ""
+
+#: web/session.py:321 web/session.py:453
+#, python-format
+msgid "user does not exist (%r)"
+msgstr ""
+
+#: web/session.py:362
+msgid "invalid username and/or password"
+msgstr ""
+
+#: web/session.py:433 web/session.py:437
+msgid "failed login confirmation"
+msgstr ""
+
+#: widgets/form.py:79 widgets/thumbgallery.py:292
+msgid "No"
+msgstr "Cha"
+
+#: widgets/form.py:80 widgets/thumbgallery.py:293
+msgid "Yes"
+msgstr "Yebo"
+
+#: widgets/thumbgallery.py:233 attachments.py:348
+msgid "remove"
+msgstr "susa"
+
+#: widgets/thumbgallery.py:289 attachments.py:322
+msgid "(no attachment)"
+msgstr "abanganikwanga ingunya lokungena mabangangeni"
+
+#: attachments.py:70
+msgid "attachment is too large"
+msgstr "NO UNAUTHORISED PASSENGERS ALLOWED"
+
+#: attachments.py:349
+msgid "remove this attachment"
+msgstr "NO UNAUTHORISED PASSENGERS ALLOWED"
+
+#: attachments.py:350
+msgid "restore"
+msgstr "isi lungu sa ka george"
+
+#: attachments.py:351
+msgid "this attachment has been removed. click here to restore it"
+msgstr "move"
+
+#: attachments.py:362
+msgid "attach a file"
+msgstr "umhlega"
diff --git a/Pootle-1.2.1/Pootle/po/pootle/zu/pootle.po b/Pootle-1.2.1/Pootle/po/pootle/zu/pootle.po
new file mode 100644
index 0000000..3e8ddea
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/po/pootle/zu/pootle.po
@@ -0,0 +1,1387 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: translate-pootle@lists.sourceforge.net\n"
+"POT-Creation-Date: 2008-08-19 12:36+0200\n"
+"PO-Revision-Date: 2008-09-01 13:36+0000\n"
+"Last-Translator: F Wolff <friedel@translate.org.za>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Pootle 1.2.0-beta2\n"
+"Generated-By: pygettext.py 1.1\n"
+
+#: adminpages.py:37 adminpages.py:76 adminpages.py:135 adminpages.py:201
+#: adminpages.py:292 adminpages.py:359 indexpage.py:70 indexpage.py:95
+#: indexpage.py:139 indexpage.py:201 indexpage.py:264 indexpage.py:352
+#: pagelayout.py:74 translatepage.py:108 users.py:63 users.py:118 users.py:154
+#: users.py:177
+msgid "Pootle Demo"
+msgstr ""
+
+#: adminpages.py:45 adminpages.py:85 adminpages.py:144 adminpages.py:210
+#: pagelayout.py:27
+msgid "Home"
+msgstr "Ekhaya"
+
+#: adminpages.py:46 adminpages.py:212
+msgid "Users"
+msgstr "Abasebenzisi"
+
+#: adminpages.py:47 adminpages.py:87 indexpage.py:93
+msgid "Languages"
+msgstr "Izilimi"
+
+#: adminpages.py:48 adminpages.py:146 indexpage.py:94
+msgid "Projects"
+msgstr "Imiklamo"
+
+#: adminpages.py:49
+msgid "General options"
+msgstr ""
+
+#: adminpages.py:50 users.py:182
+msgid "Option"
+msgstr "Ukukhetha"
+
+#: adminpages.py:51 users.py:183
+#, fuzzy
+msgid "Current value"
+msgstr "Inani lamanje"
+
+#: adminpages.py:52 adminpages.py:88 adminpages.py:147 adminpages.py:213
+#: users.py:197
+msgid "Save changes"
+msgstr ""
+
+#: adminpages.py:56
+msgid "Title"
+msgstr "Isihloko"
+
+#: adminpages.py:57
+msgid "Description"
+msgstr "Incazelo"
+
+#: adminpages.py:58
+#, fuzzy
+msgid "Base URL"
+msgstr "Isiqu se-URL:"
+
+#: adminpages.py:59
+msgid "Home Page"
+msgstr "Ikhasi lasekhaya"
+
+#: adminpages.py:77
+msgid "Pootle Languages Admin Page"
+msgstr ""
+
+#: adminpages.py:86 adminpages.py:145 adminpages.py:211
+msgid "Main admin page"
+msgstr ""
+
+#: adminpages.py:92 adminpages.py:286
+msgid "ISO Code"
+msgstr ""
+
+#: adminpages.py:93 adminpages.py:152 adminpages.py:218 adminpages.py:287
+#: users.py:127
+msgid "Full Name"
+msgstr "Igama lonke"
+
+#: adminpages.py:94
+msgid "(add language here)"
+msgstr ""
+
+#: adminpages.py:95
+msgid "Special Chars"
+msgstr ""
+
+#: adminpages.py:95
+msgid "(special characters)"
+msgstr ""
+
+#: adminpages.py:96 indexpage.py:224
+msgid "Number of Plurals"
+msgstr ""
+
+#: adminpages.py:96
+msgid "(number of plurals)"
+msgstr ""
+
+#: adminpages.py:97 indexpage.py:225
+msgid "Plural Equation"
+msgstr ""
+
+#: adminpages.py:97
+msgid "(plural equation)"
+msgstr ""
+
+#: adminpages.py:98
+msgid "Remove Language"
+msgstr "Susa ulimi"
+
+#. l10n: The parameter is a languagecode, projectcode or username
+#: adminpages.py:113 adminpages.py:181 adminpages.py:245 adminpages.py:425
+#, python-format
+msgid "Remove %s"
+msgstr "Susa i-%s"
+
+#: adminpages.py:132
+msgid "Standard"
+msgstr "Okuvamile"
+
+#: adminpages.py:136
+msgid "Pootle Projects Admin Page"
+msgstr ""
+
+#: adminpages.py:151
+msgid "Project Code"
+msgstr ""
+
+#: adminpages.py:153
+msgid "(add project here)"
+msgstr "(faka umklamo lapha)"
+
+#: adminpages.py:154
+msgid "Project Description"
+msgstr ""
+
+#: adminpages.py:154
+msgid "(project description)"
+msgstr ""
+
+#: adminpages.py:155
+msgid "Checker Style"
+msgstr ""
+
+#: adminpages.py:156
+msgid "File Type"
+msgstr "Inhlobo yefayela"
+
+#: adminpages.py:157
+msgid "Create MO Files"
+msgstr ""
+
+#: adminpages.py:158
+msgid "Remove Project"
+msgstr "Susa umklamo"
+
+#: adminpages.py:202
+msgid "Pootle User Admin Page"
+msgstr ""
+
+#: adminpages.py:217 adminpages.py:376 users.py:121 users.py:157
+msgid "Username"
+msgstr "Igama Loyisebenzisayo"
+
+#: adminpages.py:219 users.py:403
+msgid "(add full name here)"
+msgstr "(faka igama lonke lapha)"
+
+#: adminpages.py:220 users.py:124
+msgid "Email Address"
+msgstr "Ikheli le Emeil"
+
+#: adminpages.py:220 users.py:406
+msgid "(add email here)"
+msgstr "(faka i-imeyile lapha)"
+
+#: adminpages.py:221 users.py:130 users.py:188
+msgid "Password"
+msgstr "Igama lokungena"
+
+#: adminpages.py:221 users.py:400
+msgid "(add password here)"
+msgstr "(faka igama lokungena lapha)"
+
+#: adminpages.py:222
+#, fuzzy
+msgid "Activated"
+msgstr "Chofoza kukho"
+
+#: adminpages.py:222
+msgid "Activate New User"
+msgstr ""
+
+#: adminpages.py:223
+msgid "Remove User"
+msgstr "Susa umsebenzisi"
+
+#: adminpages.py:278
+msgid "Back to main page"
+msgstr ""
+
+#: adminpages.py:279
+msgid "Existing languages"
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:283
+msgid "Update Languages"
+msgstr ""
+
+#: adminpages.py:284
+#, python-format
+msgid "Pootle Admin: %s"
+msgstr ""
+
+#: adminpages.py:285 adminpages.py:356
+msgid "You do not have the rights to administer this project."
+msgstr ""
+
+#. l10n: This refers to updating the translation files from the templates like with .pot files
+#: adminpages.py:289
+msgid "Update from templates"
+msgstr ""
+
+#: adminpages.py:298
+#, fuzzy
+msgid "Add Language"
+msgstr "Yongeza Izilimi"
+
+#. l10n: This is the page title. The first parameter is the language name, the second parameter is the project name
+#: adminpages.py:336
+#, python-format
+msgid "Pootle Admin: %s %s"
+msgstr ""
+
+#: adminpages.py:337
+msgid "Project home page"
+msgstr "Ikhasi lasekhaya lomklamo"
+
+#: adminpages.py:355
+#, python-format
+msgid "Cannot set rights for username %s - user does not exist"
+msgstr ""
+
+#: adminpages.py:372
+msgid "This is a GNU-style project (one directory, files named per language)."
+msgstr ""
+
+#: adminpages.py:374
+msgid "This is a standard style project (one directory per language)."
+msgstr ""
+
+#: adminpages.py:375
+msgid "User Permissions"
+msgstr ""
+
+#: adminpages.py:377
+msgid "(select to add user)"
+msgstr "(khetha ukufaka umsebenzisi)"
+
+#: adminpages.py:378
+msgid "Rights"
+msgstr ""
+
+#: adminpages.py:379 indexpage.py:1008
+msgid "Remove"
+msgstr "Susa"
+
+#: adminpages.py:406
+msgid "Update Rights"
+msgstr ""
+
+#: indexpage.py:58
+msgid "About Pootle"
+msgstr "Nge-Pootle"
+
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:60
+msgid ""
+"<strong>Pootle</strong> is a simple web portal that should allow you to "
+"<strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, "
+"you can download it and run your own copy if you like. You can also help "
+"participate in the development in many ways (you don't have to be able to "
+"program)."
+msgstr ""
+
+#: indexpage.py:61
+msgid ""
+"The Pootle project itself is hosted at <a href=\"http://translate."
+"sourceforge.net/\">translate.sourceforge.net</a> where you can find the "
+"details about source code, mailing lists etc."
+msgstr ""
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:64
+msgid ""
+"The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</"
+"b>ocalization <b>E</b>ngine, but you may need to read <a href=\"http://www."
+"thechestnut.com/flumps.htm\">this</a>."
+msgstr ""
+
+#: indexpage.py:65
+#, fuzzy
+msgid "Versions"
+msgstr "Inguqulo"
+
+#. l10n: If your language uses right-to-left layout and you leave the English untranslated, consider enclosing the necessary text with <span dir="ltr">.......</span> to help browsers to display it correctly.
+#. l10n: Take care to use HTML tags correctly. A markup error could cause a display error.
+#: indexpage.py:68
+#, python-format
+msgid ""
+"This site is running:<br />Pootle %s<br />Translate Toolkit %s<br />jToolkit "
+"%s<br />Kid %s<br />ElementTree %s<br />Python %s (on %s/%s)"
+msgstr ""
+
+#: indexpage.py:133
+#, python-format
+msgid "User Page for: %s"
+msgstr "Ikhasi lomsebenzi: %s"
+
+#: indexpage.py:135
+#, fuzzy
+msgid "Change options"
+msgstr "Shintsha Isenzo"
+
+#: indexpage.py:136
+msgid "Admin page"
+msgstr ""
+
+#: indexpage.py:137 projects.py:149
+msgid "Administrate"
+msgstr ""
+
+#: indexpage.py:138
+msgid "Quick Links"
+msgstr ""
+
+#: indexpage.py:142
+msgid "Please click on 'Change options' and select some languages and projects"
+msgstr ""
+
+#: indexpage.py:199
+#, python-format
+msgid "%d project, average %d%% translated"
+msgid_plural "%d projects, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#. l10n: The first parameter is the name of the installation
+#. l10n: The second parameter is the name of the project/language
+#. l10n: This is used as a page title. Most languages won't need to change this
+#: indexpage.py:205 indexpage.py:268
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: indexpage.py:207 indexpage.py:270 pagelayout.py:31 pagelayout.py:171
+msgid "Admin"
+msgstr ""
+
+#: indexpage.py:221
+#, fuzzy
+msgid "Language Code"
+msgstr "Igama lolimi"
+
+#: indexpage.py:222
+msgid "Language Name"
+msgstr "Igama lolimi"
+
+#: indexpage.py:260
+#, python-format
+msgid "%d language, average %d%% translated"
+msgid_plural "%d languages, average %d%% translated"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:273
+msgid "Language"
+msgstr "Ulimi"
+
+#. l10n: The first parameter is the name of the installation (like "Pootle")
+#: indexpage.py:354
+#, python-format
+msgid "%s: Project %s, Language %s"
+msgstr "%s: umklamo %s, ulimi: %s"
+
+#. l10n: text next to search field
+#: indexpage.py:362 translatepage.py:145
+msgid "Search"
+msgstr "Cinga"
+
+#: indexpage.py:363 translatepage.py:146
+msgid "Advanced Search"
+msgstr ""
+
+#: indexpage.py:422
+msgid "Cannot upload file, no file attached"
+msgstr ""
+
+#: indexpage.py:428
+msgid "Can only upload PO files and zips of PO files"
+msgstr ""
+
+#: indexpage.py:535 indexpage.py:538 translatepage.py:237 translatepage.py:240
+msgid "Assign Strings"
+msgstr ""
+
+#: indexpage.py:536 translatepage.py:239
+msgid "Assign Action"
+msgstr ""
+
+#: indexpage.py:537 translatepage.py:238
+msgid "Assign to User"
+msgstr ""
+
+#: indexpage.py:543
+msgid "goals"
+msgstr ""
+
+#: indexpage.py:544
+msgid "Enter goal name"
+msgstr ""
+
+#: indexpage.py:545
+msgid "Add Goal"
+msgstr ""
+
+#: indexpage.py:550 indexpage.py:552
+msgid "Upload File"
+msgstr "Faka Efayeleni"
+
+#: indexpage.py:551
+msgid "Select file to upload"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:557 projects.py:141
+msgid "Overwrite"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:559
+msgid "Overwrite the current file if it exists"
+msgstr ""
+
+#. l10n: radio button text
+#: indexpage.py:561
+msgid "Merge"
+msgstr ""
+
+#. l10n: tooltip
+#: indexpage.py:563
+msgid ""
+"Merge the file with the current file and turn conflicts into suggestions"
+msgstr ""
+
+#: indexpage.py:666
+msgid "Not in a goal"
+msgstr ""
+
+#: indexpage.py:686
+msgid "Add User"
+msgstr "Faka umsebenzisi"
+
+#: indexpage.py:731
+msgid "PO file"
+msgstr ""
+
+#: indexpage.py:735
+msgid "XLIFF file"
+msgstr ""
+
+#: indexpage.py:739
+msgid "Qt .ts file"
+msgstr ""
+
+#: indexpage.py:743
+#, fuzzy
+msgid "CSV file"
+msgstr "%S ifayela"
+
+#: indexpage.py:748
+msgid "MO file"
+msgstr ""
+
+#. l10n: Update from version control (like CVS or Subversion)
+#: indexpage.py:754
+msgid "Update"
+msgstr "Ukufakela Okwamuva"
+
+#. l10n: Commit to version control (like CVS or Subversion)
+#: indexpage.py:760 projects.py:150
+msgid "Commit"
+msgstr ""
+
+#: indexpage.py:798
+msgid "All Strings"
+msgstr ""
+
+#: indexpage.py:799 pagelayout.py:249
+msgid "Untranslated"
+msgstr "Angahumushiwe"
+
+#: indexpage.py:800
+#, fuzzy
+msgid "Unassigned"
+msgstr "Akusayiniwe"
+
+#: indexpage.py:801
+msgid "Unassigned and Untranslated"
+msgstr ""
+
+#: indexpage.py:808
+msgid "Set Goal"
+msgstr ""
+
+#: indexpage.py:812
+msgid "Select Multiple"
+msgstr ""
+
+#: indexpage.py:814
+msgid "Assign To"
+msgstr ""
+
+#: indexpage.py:843
+msgid "Show Editing Functions"
+msgstr ""
+
+#: indexpage.py:844
+msgid "Show Statistics"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Show Tracks"
+msgstr ""
+
+#: indexpage.py:845
+msgid "Hide Tracks"
+msgstr ""
+
+#. l10n: "Checks" are quality checks that Pootle performs on translations to test for common mistakes
+#: indexpage.py:847
+msgid "Show Checks"
+msgstr ""
+
+#: indexpage.py:847
+msgid "Hide Checks"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Show Goals"
+msgstr ""
+
+#: indexpage.py:848
+msgid "Hide Goals"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Show Assigns"
+msgstr ""
+
+#: indexpage.py:849
+msgid "Hide Assigns"
+msgstr ""
+
+#: indexpage.py:858
+#, python-format
+msgid "All Goals: %s"
+msgstr ""
+
+#: indexpage.py:864
+msgid "Translate My Strings"
+msgstr ""
+
+#: indexpage.py:866
+msgid "View My Strings"
+msgstr ""
+
+#: indexpage.py:871
+msgid "No strings assigned to you"
+msgstr ""
+
+#: indexpage.py:875
+msgid "Quick Translate My Strings"
+msgstr ""
+
+#: indexpage.py:879
+msgid "No untranslated strings assigned to you"
+msgstr ""
+
+#: indexpage.py:883
+msgid "Review Suggestions"
+msgstr ""
+
+#: indexpage.py:885
+msgid "View Suggestions"
+msgstr ""
+
+#: indexpage.py:890
+msgid "Quick Translate"
+msgstr ""
+
+#: indexpage.py:892
+msgid "View Untranslated"
+msgstr ""
+
+#: indexpage.py:896
+msgid "No untranslated items"
+msgstr ""
+
+#: indexpage.py:899
+msgid "Translate All"
+msgstr "Humusha onke"
+
+#: indexpage.py:914
+msgid "ZIP of goal"
+msgstr ""
+
+#: indexpage.py:916
+msgid "ZIP of folder"
+msgstr ""
+
+#: indexpage.py:923
+msgid "Generate SDF"
+msgstr ""
+
+#: indexpage.py:976
+#, python-format
+msgid "%d string (%d%%) failed"
+msgid_plural "%d strings (%d%%) failed"
+msgstr[0] ""
+msgstr[1] ""
+
+#: indexpage.py:1003
+#, python-format
+msgid "%d/%d words (%d%%) assigned"
+msgstr ""
+
+#: indexpage.py:1004 indexpage.py:1006
+#, python-format
+msgid "[%d/%d strings]"
+msgstr ""
+
+#: indexpage.py:1005 pagelayout.py:235
+#, python-format
+msgid "%d/%d words (%d%%) translated"
+msgstr ""
+
+#: pagelayout.py:28
+msgid "All projects"
+msgstr "Yonke imiklamo"
+
+#: pagelayout.py:29
+msgid "All languages"
+msgstr "Zonke izilimi"
+
+#: pagelayout.py:30
+msgid "My account"
+msgstr ""
+
+#: pagelayout.py:32
+msgid "Docs & help"
+msgstr "Izincwadi nosizo"
+
+#: pagelayout.py:34
+#, fuzzy
+msgid "Log out"
+msgstr "Phuma"
+
+#: pagelayout.py:35
+#, fuzzy
+msgid "Log in"
+msgstr "Ngena"
+
+#. l10n: Verb, as in "to register"
+#: pagelayout.py:37
+msgid "Register"
+msgstr "Bhalisa"
+
+#: pagelayout.py:38
+msgid "Activate"
+msgstr "Chofoza kukho"
+
+#: pagelayout.py:83
+msgid "Pootle Logo"
+msgstr ""
+
+#: pagelayout.py:84
+msgid "About this Pootle server"
+msgstr ""
+
+#: pagelayout.py:160
+msgid "All goals"
+msgstr ""
+
+#: pagelayout.py:231
+#, python-format
+msgid "%d/%d files"
+msgstr ""
+
+#: pagelayout.py:234
+#, python-format
+msgid "%d file"
+msgid_plural "%d files"
+msgstr[0] "Ifayela eli-%d"
+msgstr[1] "Amafayela ama-%d"
+
+#: pagelayout.py:236
+#, python-format
+msgid "%d/%d strings"
+msgstr ""
+
+#: pagelayout.py:242 users.py:184
+msgid "Name"
+msgstr "Igama"
+
+#: pagelayout.py:243
+msgid "Translated"
+msgstr "Ahumushiwe"
+
+#: pagelayout.py:244
+msgid "Translated percentage"
+msgstr ""
+
+#: pagelayout.py:245
+msgid "Translated words"
+msgstr "Amagama ahumushiwe"
+
+#: pagelayout.py:246 translatepage.py:135
+msgid "Fuzzy"
+msgstr ""
+
+#: pagelayout.py:247
+msgid "Fuzzy percentage"
+msgstr ""
+
+#: pagelayout.py:248
+msgid "Fuzzy words"
+msgstr ""
+
+#: pagelayout.py:250
+msgid "Untranslated percentage"
+msgstr ""
+
+#: pagelayout.py:251
+msgid "Untranslated words"
+msgstr "Amagama angahumushiwe"
+
+#: pagelayout.py:252
+msgid "Total"
+msgstr "Ingqikithi"
+
+#: pagelayout.py:253
+msgid "Total words"
+msgstr ""
+
+#. l10n: noun. The graphical representation of translation status
+#: pagelayout.py:255
+msgid "Graph"
+msgstr ""
+
+#: pagelayout.py:293
+msgid "Source Text"
+msgstr ""
+
+#: pagelayout.py:297
+msgid "Target Text"
+msgstr ""
+
+#: pagelayout.py:301
+#, fuzzy
+msgid "Comments"
+msgstr "Imibono"
+
+#: pagelayout.py:305
+msgid "Locations"
+msgstr ""
+
+#: pootle.py:305
+#, fuzzy
+msgid "Login failed"
+msgstr "Ukungena kuhlulekile."
+
+#: pootle.py:349 pootle.py:380
+msgid "Redirecting to login..."
+msgstr ""
+
+#: pootle.py:352
+msgid "Need to log in to access home page"
+msgstr ""
+
+#: pootle.py:365
+msgid "Personal details updated"
+msgstr ""
+
+#: pootle.py:383
+msgid "Need to log in to access admin page"
+msgstr ""
+
+#: pootle.py:390
+msgid "Redirecting to home..."
+msgstr ""
+
+#: pootle.py:393
+msgid "You do not have the rights to administer pootle."
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:138
+msgid "View"
+msgstr "Bheka"
+
+#: projects.py:139 translatepage.py:678
+msgid "Suggest"
+msgstr ""
+
+#: projects.py:140
+msgid "Translate"
+msgstr "Ukuhumusha"
+
+#. l10n: Verb
+#: projects.py:143
+msgid "Review"
+msgstr ""
+
+#. l10n: Verb
+#: projects.py:145
+msgid "Archive"
+msgstr ""
+
+#. l10n: This refers to generating the binary .mo file
+#: projects.py:147
+msgid "Compile PO files"
+msgstr ""
+
+#: projects.py:148
+msgid "Assign"
+msgstr ""
+
+#. l10n: Don't translate "nobody" or "default"
+#: projects.py:230
+msgid "You cannot remove the \"nobody\" or \"default\" user"
+msgstr ""
+
+#: projects.py:382 projects.py:444
+msgid "You do not have rights to alter goals here"
+msgstr ""
+
+#: projects.py:510
+msgid "You do not have rights to upload files here"
+msgstr ""
+
+#: projects.py:513
+msgid "You do not have rights to overwrite files here"
+msgstr ""
+
+#: projects.py:515
+msgid "You do not have rights to upload new files here"
+msgstr ""
+
+#: projects.py:524
+msgid "You do not have rights to update files here"
+msgstr ""
+
+#: projects.py:555
+msgid "You do not have rights to commit files here"
+msgstr ""
+
+#: projects.py:977 projects.py:1019
+msgid "You do not have rights to alter assignments here"
+msgstr ""
+
+#: projects.py:1219
+msgid "You do not have rights to change translations here"
+msgstr ""
+
+#: projects.py:1229
+msgid "You do not have rights to suggest changes here"
+msgstr ""
+
+#: projects.py:1245 projects.py:1263
+msgid "You do not have rights to review suggestions here"
+msgstr ""
+
+#: translatepage.py:103
+#, python-format
+msgid ""
+"%d/%d translated\n"
+"(%d untranslated, %d fuzzy)"
+msgstr ""
+
+#. l10n: first parameter: name of the installation (like "Pootle")
+#. l10n: second parameter: project name
+#. l10n: third parameter: target language
+#. l10n: fourth parameter: file name
+#: translatepage.py:113
+#, python-format
+msgid "%s: translating %s into %s: %s"
+msgstr ""
+
+#. l10n: Heading above the table column with the source language
+#: translatepage.py:128
+msgid "Original"
+msgstr "Isisusa"
+
+#. l10n: Heading above the table column with the target language
+#: translatepage.py:130
+msgid "Translation"
+msgstr "Ukuhumusha"
+
+#: translatepage.py:133
+msgid "Accept suggestion"
+msgstr ""
+
+#: translatepage.py:134
+msgid "Reject suggestion"
+msgstr ""
+
+#. l10n: Heading above the textarea for translator comments.
+#: translatepage.py:137
+msgid "Translator comments"
+msgstr "Umbono womhumushi"
+
+#. l10n: Heading above the comments extracted from the programing source code
+#: translatepage.py:139
+msgid "Developer comments"
+msgstr "Umbono womsunguli"
+
+#. l10n: This heading refers to related translations and terminology
+#: translatepage.py:141
+msgid "Related"
+msgstr "Ahlobene"
+
+#. l10n: Text displayed when an AJAX petition is being made
+#: translatepage.py:155
+msgid "Working..."
+msgstr "Kusebenzwa..."
+
+#. l10n: Text displayed in an alert box when an AJAX petition has failed
+#: translatepage.py:157
+msgid "Error: Something went wrong."
+msgstr ""
+
+#. l10n: "batch" refers to the set of translations that were reviewed
+#: translatepage.py:171
+msgid "End of batch"
+msgstr ""
+
+#: translatepage.py:173
+msgid "Click here to return to the index"
+msgstr ""
+
+#. l10n: noun (the start)
+#: translatepage.py:187 translatepage.py:190
+msgid "Start"
+msgstr "Ekuqaleni"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:194 translatepage.py:197
+#, python-format
+msgid "Previous %d"
+msgstr ""
+
+#. l10n: the third parameter refers to the total number of messages in the file
+#: translatepage.py:199
+#, python-format
+msgid "Items %d to %d of %d"
+msgstr "izinto %d ze %d ye %d"
+
+#. l10n: the parameter refers to the number of messages
+#: translatepage.py:204 translatepage.py:207
+#, python-format
+msgid "Next %d"
+msgstr ""
+
+#. l10n: noun (the end)
+#: translatepage.py:210 translatepage.py:213
+msgid "End"
+msgstr "Ekugcineni"
+
+#. l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+#: translatepage.py:230
+#, python-format
+msgid "checking %s"
+msgstr ""
+
+#: translatepage.py:398
+#, python-format
+msgid "There are no items matching that search ('%s')"
+msgstr ""
+
+#: translatepage.py:400
+msgid "You have finished going through the items you selected"
+msgstr ""
+
+#: translatepage.py:643
+msgid "Singular"
+msgstr ""
+
+#: translatepage.py:644
+msgid "Plural"
+msgstr ""
+
+#. l10n: verb
+#: translatepage.py:658
+msgid "Edit"
+msgstr "Lungisa"
+
+#. l10n: verb
+#: translatepage.py:674
+msgid "Copy"
+msgstr "Kopisha"
+
+#: translatepage.py:675 translatepage.py:849
+msgid "Skip"
+msgstr "Yeqa"
+
+#. l10n: verb
+#: translatepage.py:677 translatepage.py:848 users.py:312
+msgid "Back"
+msgstr "Hlehla"
+
+#: translatepage.py:679
+msgid "Submit"
+msgstr "Thumela"
+
+#. l10n: action that increases the height of the textarea
+#: translatepage.py:682
+msgid "Grow"
+msgstr ""
+
+#. l10n: action that decreases the height of the textarea
+#: translatepage.py:684
+msgid "Shrink"
+msgstr ""
+
+#: translatepage.py:706 translatepage.py:800 translatepage.py:837
+#: translatepage.py:870
+#, python-format
+msgid "Plural Form %d"
+msgstr ""
+
+#. l10n: This is an error message that will display if the relevant problem occurs
+#: translatepage.py:722
+msgid ""
+"Translation not possible because plural information for your language is not "
+"available. Please contact the site administrator."
+msgstr ""
+
+#: translatepage.py:804
+msgid "Current Translation:"
+msgstr ""
+
+#. l10n: First parameter: number
+#. l10n: Second parameter: name of translator
+#: translatepage.py:817
+#, python-format
+msgid "Suggestion %d by %s:"
+msgstr ""
+
+#: translatepage.py:819
+#, python-format
+#, fuzzy
+msgid "Suggestion %d:"
+msgstr "Imibono:"
+
+#. l10n: parameter: name of translator
+#: translatepage.py:823
+#, python-format
+#, fuzzy
+msgid "Suggestion by %s:"
+msgstr "Imibono:"
+
+#: translatepage.py:825
+#, fuzzy
+msgid "Suggestion:"
+msgstr "Imibono:"
+
+#: users.py:43
+#, python-format
+msgid "You must supply a valid password of at least %d characters."
+msgstr ""
+
+#: users.py:45
+msgid "The password is not the same as the confirmation."
+msgstr ""
+
+#: users.py:60
+msgid "Login to Pootle"
+msgstr "Ngena kwi-Pootle"
+
+#: users.py:66
+#, fuzzy
+msgid "Username:"
+msgstr "Igama loyisebenzisayo:"
+
+#: users.py:68
+msgid "Password:"
+msgstr "Igama lokungena:"
+
+#: users.py:69
+msgid "Language:"
+msgstr "Ulimi"
+
+#: users.py:71
+#, fuzzy
+msgid "Login"
+msgstr "Ngena"
+
+#: users.py:77
+msgid "Default"
+msgstr "Okwakhona"
+
+#: users.py:112
+msgid "Please enter your registration details"
+msgstr "Sicela ufake imininingwane yokubhalisa kwakho"
+
+#: users.py:115 users.py:475
+msgid "Pootle Registration"
+msgstr "Ukubhalisa kwe-Pootle"
+
+#: users.py:122 users.py:158
+msgid "Your requested username"
+msgstr ""
+
+#: users.py:125 users.py:429
+msgid "You must supply a valid email address"
+msgstr ""
+
+#: users.py:128
+msgid "Your full name"
+msgstr "Lonke igama lakho"
+
+#: users.py:131
+msgid "Your desired password"
+msgstr ""
+
+#: users.py:133 users.py:189
+#, fuzzy
+msgid "Confirm password"
+msgstr "Qinisekisa Igama Lokungena:"
+
+#: users.py:134
+msgid "Type your password again to ensure it is entered correctly"
+msgstr ""
+
+#: users.py:136
+msgid "Register Account"
+msgstr ""
+
+#: users.py:145
+#, fuzzy
+msgid "Please enter your activation details"
+msgstr "Sicela ufake imininingwane yokubhalisa kwakho"
+
+#: users.py:150
+msgid "Pootle Account Activation"
+msgstr ""
+
+#: users.py:160
+msgid "Activation Code"
+msgstr ""
+
+#: users.py:161
+msgid "The activation code you received"
+msgstr "ikhodi ewukhiye oyitholile "
+
+#: users.py:163
+msgid "Activate Account"
+msgstr ""
+
+#: users.py:175
+#, python-format
+msgid "Options for: %s"
+msgstr ""
+
+#: users.py:181
+msgid "Personal Details"
+msgstr ""
+
+#: users.py:186
+msgid "Email"
+msgstr "I-imeyili"
+
+#: users.py:190
+msgid "Translation Interface Configuration"
+msgstr ""
+
+#: users.py:191
+msgid "User Interface language"
+msgstr ""
+
+#: users.py:192
+msgid "My Projects"
+msgstr "Imiklamo yami"
+
+#: users.py:194
+msgid "My Languages"
+msgstr "Izilimi zami"
+
+#: users.py:196
+#, fuzzy
+msgid "Home page"
+msgstr "&Ikhasi lasekhaya"
+
+#: users.py:202
+msgid "Alternative Source Language"
+msgstr ""
+
+#. l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+#: users.py:240
+msgid "None"
+msgstr ""
+
+#: users.py:257
+msgid "Input Height (in lines)"
+msgstr ""
+
+#: users.py:258
+msgid "Number of rows in view mode"
+msgstr ""
+
+#: users.py:259
+msgid "Number of rows in translate mode"
+msgstr ""
+
+#: users.py:307
+msgid "Error"
+msgstr "Iphutha"
+
+#: users.py:359
+msgid "You need to be siteadmin to change users"
+msgstr ""
+
+#: users.py:423
+msgid ""
+"Username must be alphanumeric, and must start with an alphabetic character."
+msgstr ""
+
+#: users.py:438
+msgid ""
+"You (or someone else) attempted to register an account with your username.\n"
+msgstr ""
+
+#: users.py:439
+msgid "We don't store your actual password but only a hash of it.\n"
+msgstr ""
+
+#: users.py:441
+#, python-format
+msgid "If you have a problem with registration, please contact %s.\n"
+msgstr "Uma unenkinga yokubhalisa, ake ubhalele %s.\n"
+
+#: users.py:443
+msgid ""
+"If you have a problem with registration, please contact the site "
+"administrator.\n"
+msgstr ""
+
+#: users.py:444
+msgid ""
+"That username already exists. An email will be sent to the registered email "
+"address.\n"
+msgstr ""
+
+#: users.py:446
+#, python-format
+msgid "Proceeding to <a href='%s'>login</a>\n"
+msgstr ""
+
+#: users.py:452
+msgid "A Pootle account has been created for you using this email address.\n"
+msgstr ""
+
+#: users.py:454
+msgid "To activate your account, follow this link:\n"
+msgstr ""
+
+#: users.py:460
+#, python-format
+msgid ""
+"Your activation code is:\n"
+"%s\n"
+msgstr ""
+
+#: users.py:462
+msgid ""
+"If you are unable to follow the link, please enter the above code at the "
+"activation page.\n"
+msgstr ""
+
+#: users.py:463
+msgid ""
+"This message is sent to verify that the email address is in fact correct. If "
+"you did not want to register an account, you may simply ignore the message.\n"
+msgstr ""
+
+#: users.py:465
+#, python-format
+msgid ""
+"Account created. You will be emailed login details and an activation code. "
+"Please enter your activation code on the <a href='%s'>activation page</a>."
+msgstr ""
+
+#: users.py:467
+msgid "(Or simply click on the activation link in the email)"
+msgstr ""
+
+#: users.py:469
+#, python-format
+msgid "Your user name is: %s\n"
+msgstr ""
+
+#: users.py:471
+#, python-format
+msgid "Your password is: %s\n"
+msgstr ""
+
+#: users.py:472
+#, python-format
+msgid "Your registered email address is: %s\n"
+msgstr ""
+
+#: users.py:500
+msgid "Redirecting to Registration Page..."
+msgstr ""
+
+#: users.py:524
+msgid "Redirecting to login Page..."
+msgstr ""
+
+#: users.py:527
+msgid "Your account has been activated! Redirecting to login..."
+msgstr ""
+
+#: users.py:531
+msgid "The activation information was not valid."
+msgstr ""
+
+#: users.py:532
+msgid "Activation Failed"
+msgstr ""
+
+#: users.py:649
+msgid "Input height must be numeric"
+msgstr ""
+
+#: users.py:650
+msgid "Input width must be numeric"
+msgstr ""
+
+#: users.py:651
+msgid "The number of rows displayed in view mode must be numeric"
+msgstr ""
+
+#: users.py:652
+msgid "The number of rows displayed in translate mode must be numeric"
+msgstr ""
+
+#~ msgid "Accept"
+#~ msgstr "Yamukela"
+
+#~ msgid "Reject"
+#~ msgstr "Yala"
+
+#~ msgid ""
+#~ "<strong>Pootle</strong> is a simple web portal that should allow you to "
+#~ "<strong>translate</strong>!"
+#~ msgstr "i-Pootle iyindlela elula ye-internet ekuvumela ukuba uhumushe"
+
+#~ msgid "Reset"
+#~ msgstr "Qalisa phansi"
diff --git a/Pootle-1.2.1/Pootle/pootle.prefs b/Pootle-1.2.1/Pootle/pootle.prefs
new file mode 100644
index 0000000..c1867d4
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/pootle.prefs
@@ -0,0 +1,756 @@
+# -*- coding: utf-8 -*-
+# jToolkit preferences file
+# showing jBrowser fields
+#
+# Lines with '#' are comments.
+
+importmodules:
+ pootleserver = 'Pootle.pootle'
+
+Pootle:
+ serverclass = pootleserver.PootleServer
+ sessionkey='p00tl3'
+
+ # Pootle.stats_db
+ #
+ # Set this to the location of the statistics database used by Pootle.
+ # stats_db = "/var/cache/pootle/stats.db"
+
+ # Pootle.baseurl
+ #
+ # Set to the URL from which people will access Pootle. Ensure that it starts
+ # with "http://". If there is no clickable link in registration e-mails, this
+ # setting could be wrong.
+ baseurl = "/"
+
+ # Pootle.title
+ #
+ # The name of this instance of Pootle. This will appear on the title bar of
+ # most Pootle pages. You can use something short like
+ # "$(Your Projectname) Pootle"
+ title = "Pootle"
+
+ # Pootle.description
+ #
+ # A short description of this instance of Pootle. This is displayed on the
+ # front page, the about page and it can contain markup, which may be useful
+ # to provide links to mailinglists, a wiki, etc. for the project. Be sure to
+ # test it well, as incorrect markup (like unbalanced quotes or HTML tags)
+ # could prevent the page from displaying at all. The text up to the first
+ # "br" tag is also displayed in the meta description tags of these pages.
+ # Consider adding <div dir="ltr"> ... </div> around any text in a left-to-
+ # right language to guarantee good rendering for users of right-to-left
+ # languages and vice versa if you put a message in a right-to-left language.
+ # For multilingual servers, you might also want to indicate the language of
+ # your description to ensure proper rendering and for better accessibility.
+ # Be sure to include all contact information that users would need to contact
+ # you for support (adding languages or projects).
+ description = "<div dir='ltr' lang='en'>This is a demo installation of Pootle.<br /> You can also visit the official <a href='http://pootle.locamotion.org'>Pootle server</a>. The server administrator has not provided contact information or a description of this server. If you are the administrator for this server, edit this description in your preference file or in the administration interface.</div>"
+
+ # Pootle.defaultlanguage
+ #
+ # The default language that will be used on this instance of Pootle. Pootle
+ # will try to serve pages in the language of the user's browser, and users
+ # may change this to another language on login but this will be the default
+ # for users without a language preference in their browsers, or when their
+ # preferred language is not available. When nothing is found, Pootle will run
+ # in English. Only languages that are enabled on this server (see below) will
+ # be accessible to users.
+ # defaultlanguage = "en"
+
+ # Pootle.registration
+ #
+ # When users register, their details will be sent from "fromaddress" using the
+ # SMTP server "smtpserver".
+ # If specified, "supportaddress" will be given in registration emails as the
+ # address to contact with queries.
+ registration:
+ fromaddress = "pootle-registration@localhost"
+ smtpserver = "localhost"
+ # supportaddress = "pootle-admin@yourdomain.org"
+
+ # Where users are directed by default when they login
+ homepage = "home/"
+
+ # The file that contains the user preferences.
+ userprefs = "users.prefs"
+
+ # defaultrights
+ #
+ # This is the default permissions (access rights) that will be used for
+ # logged in users unless other rights are specified for the project. The
+ # recommended default is
+ # defaultrights = "view, suggest, archive, pocompile"
+ # This will allow logged in users to view the translations, suggest changes,
+ # download archives of the whole project and download .mo files.
+ # If you want any logged in user to be able to translate by default, you
+ # should add the "translate" right, for example
+ defaultrights = "view, suggest, archive, pocompile"
+
+ # Pootle.enablealtsrc
+ # Enable support for alternative language. Take into account that this might
+ # supposse a considerable performance penalty in big Pootle installations.
+ # Default: "False"
+ # enablealtsrc = "True"
+
+ # pootle.podirectory
+ #
+ # All projects are stored in this directory in this layout:
+ # $podirectory/$project/$language
+ # Projects can also be stored according to the GNU convention with one PO file
+ # per language, and all files in one directory. If you change this from the
+ # default, remember to copy the project called "pootle" to your new directory
+ # to provide the localised interface for Pootle.
+ podirectory = "po"
+
+ # pootle.projects
+ #
+ # The projects section defines what projects are available on this instance
+ # of Pootle. This describes the fields listed in the following pootle
+ # project.
+ #
+ # pootle:
+ # This is the projects internal name and corresponds to the
+ # directory entry that stores all the translations.
+ #
+ # fullname = "Pootle"
+ # The human readable version of the project's internal name.
+ #
+ # description = "Web translation software"
+ # A description of the project. It can include markup, which may be useful
+ # to provide links to mailinglists, a wiki, etc. for the project. The whole
+ # description will be used when viewing the project page, but only the text
+ # up to the first "br" tag will be used for the page's meta description and
+ # for tooltips in some Pootle pages. Be sure to test it well, as incorrect
+ # markup (like unbalanced quotes or HTML tags) could prevent the page from
+ # displaying at all.
+ # Consider adding <div dir="ltr"> ... </div> around any text in a left-to-
+ # right language to guarantee good rendering for users of right-to-left
+ # languages and vice versa if you put a message in a right-to-left language.
+ # For multilingual servers, you might also want to indicate the language of
+ # your description to ensure proper rendering and for better accessibility.
+ #
+ # checkerstyle = "standard"
+ # Defines what checks should be used for this project. One of: mozilla, kde,
+ # openoffice or standard. This affects the tests for accelerator keys and
+ # variables
+ #
+ # localfiletype = "po"
+ # The localfiletype attribute allows for a project admin to designate the
+ # allowed filetype for the project, either "po" or "xlf".
+ # By default, po is assumed for projects.
+ #
+ # NOTE: Once a file type is selected for localfiletype, files not matching
+ # the type selected will not be displayed within pootle.
+ #
+ # treestyle = "nongnu"
+ # The treestyle attribute is used to force Pootle to follow the specified
+ # directory tree layout, without trying to determine it (this can be slow
+ # for projects with lots of files and directories. Possible choices: "gnu"
+ # (one file per language in a directory) or "nongnu" (each language has a
+ # separate direcotory with its own tree structure. This attribute does not
+ # need to be specified. If it is not specified, Pootle will try to determine
+ # the layout that the project uses.
+
+ projects:
+ # The project called "pootle" is necessary for Pootle to be localised. The
+ # Pootle interface will be available in the languages that are defined below
+ # and present in the Pootle project. If you don't want people to change the
+ # Pootle translations on your server, remove the translate right in the admin
+ # interface.
+ pootle:
+ fullname = "Pootle"
+ description = "<div dir='ltr' lang='en'>Interface translations for Pootle. <br /> See the <a href='http://pootle.locamotion.org'>official Pootle server</a> for the translations of Pootle.</div>"
+ checkstyle = "standard"
+ localfiletype = "po"
+
+ # The optional project called "terminology" will be used by Pootle to do
+ # terminology matching for the languages that have files in this project. To
+ # use different terms in a certain project, simply include a file called
+ # "pootle-terminology.po" in that project's directory, and Pootle will only
+ # use that file for terminology matching for that project.
+ terminology:
+ fullname = "Terminology"
+ description = "<div dir='ltr' lang='en'>Terminology project that Pootle should use to suggest terms.<br />There might be useful terminology files on the <a href='http://pootle.locamotion.org/projects/terminology/'>official Pootle server</a>.</div>"
+ checkstyle = "standard"
+ localfiletype = "po"
+
+ # pootle.languages
+ #
+ # The languages section defines the languages being translated into on this
+ # instance of Pootle. This describes the fields listed in the following
+ # language. Preconfigured settings for many languages are included below. The
+ # plural settings are based on the page on the wiki at
+ # http://translate.sourceforge.net/wiki/l10n/pluralforms
+ # Please also update the page there if anything can be improved.
+ #
+ # af:
+ # Languages are defined by using their ISO639 language code, thus af is for
+ # Afrikaans
+ #
+ # fullname = "Afrikaans"
+ # The fullname of the language, also from ISO639 but can be the name of the
+ # language in your language not necessarily in English. When the iso-codes
+ # package is installed, translated language names can be provided to
+ # correspond to the interface language. The exact English names used in the
+ # iso-codes package has to be used for translation to be successful. The
+ # language name can also contain a country name in brackets at the back, in
+ # which case a translation for the country name will similarly be attempted
+ # using the iso-codes package. For example:
+ # fullname = "Portuguese (Brazil)"
+ #
+ # specialchars = "ÄËÃÖÜäëïöü ÂÊÎÔÛâêîôû"
+ # Special characters used by the language that you wish users to be able to
+ # see when they are editing translations. Useful for people who do not have
+ # a properly configured keyboard for the language.
+ #
+ # nplurals = 2
+ # This defines the number of plural forms for the language. You need this in
+ # order to edit plural form messages. Don't know about plural forms? Read
+ # about them in the Gettext manual. This value will also be used to set the
+ # value in the PO header if it is not already set. Also note that the header
+ # value should take precedence no matter what is set here.
+ #
+ # pluralequation = "(n != 1)"
+ # As above in nplural this relates to plural forms. This defines the
+ # equation that the application will use to determine which one of the N
+ # plurals it should use. If you are unsure of what value to use have a look
+ # in other PO files for your language.
+ #
+ languages:
+
+# Afrikaans
+ af.fullname = "Afrikaans"
+ af.specialchars = "ëïêôûáéíóúý"
+ af.nplurals = 2
+ af.pluralequation = "(n != 1)"
+
+# Akan
+# ak.fullname = u'Akan'
+# ak.pluralequation = u'(n > 1)'
+# ak.specialchars = "ɛɔÆƆ"
+# ak.nplurals = u'2'
+
+# العربية
+# Arabic
+ ar.fullname = u'Arabic'
+ ar.nplurals = '6'
+ ar.pluralequation ='n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5'
+
+# Azərbaycan
+# Azerbaijani
+# az.fullname = u'Azerbaijani'
+# az.nplurals = '2'
+# az.pluralequation ='(n != 1)'
+
+# БеларуÑкаÑ
+# Belarusian
+# be.fullname = u'Belarusian'
+# be.nplurals = '3'
+# be.pluralequation ='(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)'
+
+# БългарÑки
+# Bulgarian
+ bg.fullname = u'Bulgarian'
+ bg.nplurals = '2'
+ bg.pluralequation ='(n != 1)'
+
+# বাংলা
+# Bengali
+# bn.fullname = u'Bengali'
+# bn.nplurals = '2'
+# bn.pluralequation ='(n != 1)'
+
+# Tibetan
+# bo.fullname = u'Tibetan'
+# bo.nplurals = '1'
+# bo.pluralequation ='0'
+
+# Bosanski
+# Bosnian
+# bs.fullname = u'Bosnian'
+# bs.nplurals = '3'
+# bs.pluralequation ='(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)'
+
+# Català
+# Catalan
+ ca.fullname = u'Catalan; Valencian'
+ ca.nplurals = '2'
+ ca.pluralequation ='(n != 1)'
+
+# ÄŒesky
+# Czech
+ cs.fullname = u'Czech'
+ cs.nplurals = '3'
+ cs.pluralequation ='(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2'
+
+# Cymraeg
+# Welsh
+# cy.fullname = u'Welsh'
+# cy.nplurals = '2'
+# cy.pluralequation ='(n==2) ? 1 : 0'
+
+# Dansk
+# Danish
+ da.fullname = u'Danish'
+ da.nplurals = '2'
+ da.pluralequation ='(n != 1)'
+
+# Deutsch
+# German
+ de.fullname = u'German'
+ de.nplurals = '2'
+ de.pluralequation ='(n != 1)'
+
+# ང་à½
+# Dzongkha
+# dz.fullname = u'Dzongkha'
+# dz.nplurals = '1'
+# dz.pluralequation ='0'
+
+# Ελληνικά
+# Greek
+ el.fullname = u'Greek'
+ el.nplurals = '2'
+ el.pluralequation ='(n != 1)'
+
+# English
+ en.fullname = u'English'
+ en.nplurals = '2'
+ en.pluralequation ='(n != 1)'
+
+# English (United Kingdom)
+# en_GB.fullname = u'English (United Kingdom)'
+# en_GB.nplurals = '2'
+# en_GB.pluralequation ='(n != 1)'
+
+# English (South Africa)
+ en_ZA.fullname = u'English (South Africa)'
+ en_ZA.nplurals = '2'
+ en_ZA.pluralequation ='(n != 1)'
+
+# Esperanto
+# eo.fullname = u'Esperanto'
+# eo.nplurals = '2'
+# eo.pluralequation ='(n != 1)'
+
+# Español
+# Spanish
+ es.fullname = u'Spanish; Castilian'
+ es.nplurals = '2'
+ es.pluralequation ='(n != 1)'
+
+# Eesti
+# Estonian
+ et.fullname = u'Estonian'
+ et.nplurals = '2'
+ et.pluralequation ='(n != 1)'
+
+# Euskara
+# Basque
+ eu.fullname = u'Basque'
+ eu.nplurals = '2'
+ eu.pluralequation ='(n != 1)'
+
+# Ùارسی
+# Persian
+ fa.fullname = u'Persian'
+ fa.nplurals = '1'
+ fa.pluralequation ='0'
+
+# Suomi
+# Finnish
+ fi.fullname = u'Finnish'
+ fi.nplurals = '2'
+ fi.pluralequation ='(n != 1)'
+
+# Føroyskt
+# Faroese
+# fo.fullname = u'Faroese'
+# fo.nplurals = '2'
+# fo.pluralequation ='(n != 1)'
+
+# Français
+# French
+ fr.fullname = u'French'
+ fr.nplurals = '2'
+ fr.pluralequation ='(n > 1)'
+
+# Furlan
+# Friulian
+ fur.fullname = u'Friulian'
+ fur.nplurals = '2'
+ fur.pluralequation ='(n != 1)'
+
+# Frysk
+# Frisian
+# fy.fullname = u'Western Frisian'
+# fy.nplurals = '2'
+# fy.pluralequation ='(n != 1)'
+
+# Gaeilge
+# Irish
+ ga.fullname = u'Irish'
+ ga.nplurals = '3'
+ ga.pluralequation ='n==1 ? 0 : n==2 ? 1 : 2'
+
+# Galego
+# Galician
+ gl.fullname = u'Galician'
+ gl.nplurals = '2'
+ gl.pluralequation ='(n != 1)'
+
+# ગà«àªœàª°àª¾àª¤à«€
+# Gujarati
+# gu.fullname = u'Gujarati'
+# gu.nplurals = '2'
+# gu.pluralequation ='(n != 1)'
+
+# עברית
+# Hebrew
+ he.fullname = u'Hebrew'
+ he.nplurals = '2'
+ he.pluralequation ='(n != 1)'
+
+# हिनà¥à¤¦à¥€
+# Hindi
+# hi.fullname = u'Hindi'
+# hi.nplurals = '2'
+# hi.pluralequation ='(n != 1)'
+
+# Hrvatski
+# Croatian
+# hr.fullname = u'Croatian'
+# hr.nplurals = '3'
+# hr.pluralequation ='(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)'
+
+# Magyar
+# Hungarian
+ hu.fullname = u'Hungarian'
+ hu.nplurals = '2'
+ hu.pluralequation ='(n !=1)'
+
+# Bahasa Indonesia
+# Indonesian
+ id.fullname = u'Indonesian'
+ id.nplurals = '1'
+ id.pluralequation ='0'
+
+# Icelandic
+ is.fullname = u'Icelandic'
+ is.nplurals = '2'
+ is.pluralequation = '(n != 1)'
+
+# Italiano
+# Italian
+ it.fullname = u'Italian'
+ it.nplurals = '2'
+ it.pluralequation ='(n != 1)'
+
+# 日本語
+# Japanese
+ ja.fullname = u'Japanese'
+ ja.nplurals = '1'
+ ja.pluralequation ='0'
+
+# ქáƒáƒ áƒ—ული
+# Georgian
+ ka.fullname = u'Georgian'
+ ka.nplurals = '1'
+ ka.pluralequation ='0'
+
+# ភាសា
+# Khmer
+# km.fullname = u'Khmer'
+# km.nplurals = '1'
+# km.pluralequation ='0'
+
+# 한국어
+# Korean
+ ko.fullname = u'Korean'
+ ko.nplurals = '1'
+ ko.pluralequation ='0'
+
+# Kurdî / كوردي
+# Kurdish
+ ku.fullname = u'Kurdish'
+ ku.nplurals = '2'
+ ku.pluralequation ='(n!= 1)'
+ ku.specialchars = u'çêîûş ÇÊÎÛŞ'
+
+# Kyrgyz
+ ky.fullname = u'Kirghiz; Kyrgyz'
+ ky.nplurals = '1'
+ ky.pluralequation = '0'
+
+# Lëtzebuergesch
+# Letzeburgesch
+# lb.fullname = u'Letzeburgesch'
+# lb.nplurals = '2'
+# lb.pluralequation ='(n != 1)'
+
+# Luganda
+# Ganda
+# lg.fullname = u'Luganda'
+# lg.nplurals = '2'
+# lg.pluralequation = '(n != 1)'
+# lg.specialchars = "ŋŊÿŸ…"
+
+# Lingála
+# Lingala
+ ln.fullname = u'Lingala'
+ ln.nplurals = '2'
+ ln.pluralequation = '(n != 1)'
+ ln.specialchars = u'ɛɔÆƆáâǎéêěɛÌɛ̂ɛ̌íîÇóôǒɔÌɔ̂ɔ̌ú'
+
+# Lietuvių
+# Lithuanian
+ lt.fullname = u'Lithuanian'
+ lt.nplurals = '3'
+ lt.pluralequation ='(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2)'
+
+# Latviešu
+# Latvian
+ lv.fullname = u'Latvian'
+ lv.nplurals = '3'
+ lv.pluralequation ='(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2)'
+
+# Malayalam
+ ml.fullname = u'Malayalam'
+ ml.nplurals = '2'
+ ml.pluralequation = '(n != 1)'
+
+# Malagasy
+# mg.fullname = u'Malagasy'
+# mg.nplurals = '2'
+# mg.pluralequation ='(n > 1)'
+
+# Монгол
+# Mongolian
+# mn.fullname = u'Mongolian'
+# mn.nplurals = '2'
+# mn.pluralequation ='(n != 1)'
+
+# Marathi
+# mr.fullname = u'Marathi'
+# mr.nplurals = u'2'
+# mr.pluralequation = u'(n != 1)'
+
+# Malay
+# ms.fullname = u'Malay'
+# ms.nplurals = u'1'
+# ms.pluralequation = u'0'
+
+# Malti
+# Maltese
+ mt.fullname = u'Maltese'
+ mt.nplurals = '4'
+ mt.pluralequation ='(n==1 ? 0 : n==0 || ( n%100>1 && n%100<11) ? 1 : (n%100>10 && n%100<20 ) ? 2 : 3)'
+
+# Nahuatl
+# nah.fullname = u'Nahuatl'
+# nah.nplurals = '2'
+# nah.pluralequation ='(n != 1)'
+
+# Neapolitan
+ nap.fullname = u'Neapolitan'
+ nap.nplurals = '2'
+ nap.pluralequation ='(n != 1)'
+
+# Bokmål
+# Norwegian Bokmal
+ nb.fullname = u'Norwegian Bokmal'
+ nb.nplurals = '2'
+ nb.pluralequation ='(n != 1)'
+
+# Nepali
+# ne.fullname = u'Nepali'
+# ne.nplurals = u'2'
+# ne.pluralequation = u'(n != 1)'
+
+# Nederlands
+# Dutch
+ nl.fullname = u'Dutch; Flemish'
+ nl.nplurals = '2'
+ nl.pluralequation ='(n != 1)'
+
+# Nynorsk
+# Norwegian Nynorsk
+ nn.fullname = u'Norwegian Nynorsk'
+ nn.nplurals = '2'
+ nn.pluralequation ='(n != 1)'
+
+# Sesotho sa Leboa
+# Northern Sotho
+# nso.fullname = u'Northern Sotho'
+# nso.nplurals = '2'
+# nso.pluralequation ='(n > 1)'
+# nso.specialchars = "Å¡Å "
+
+# Oriya
+# or.fullname = u'Oriya'
+# or.nplurals = '2'
+# or.pluralequation ='(n != 1)'
+
+# Punjabi
+# pa.fullname = u'Panjabi; Punjabi'
+# pa.nplurals = '2'
+# pa.pluralequation ='(n != 1)'
+
+# Papiamento
+ pap.fullname = u'Papiamento'
+ pap.nplurals = '2'
+ pap.pluralequation ='(n != 1)'
+
+# Polski
+# Polish
+ pl.fullname = u'Polish'
+ pl.nplurals = '3'
+ pl.pluralequation ='(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)'
+
+# Português
+# Portuguese
+ pt.fullname = u'Portuguese'
+ pt.nplurals = '2'
+ pt.pluralequation ='(n != 1)'
+
+# Português do Brasil
+# Brazilian Portuguese
+ pt_BR.fullname = u'Portuguese (Brazil)'
+ pt_BR.nplurals = '2'
+ pt_BR.pluralequation ='(n > 1)'
+
+# Română
+# Romanian
+ ro.fullname = u'Romanian'
+ ro.nplurals = '3'
+ ro.pluralequation ='(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2);'
+
+# РуÑÑкий
+# Russian
+ ru.fullname = u'Russian'
+ ru.nplurals = '3'
+ ru.pluralequation ='(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)'
+
+# SlovenÄina
+# Slovak
+ sk.fullname = u'Slovak'
+ sk.nplurals = '3'
+ sk.pluralequation ='(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2'
+
+# SlovenÅ¡Äina
+# Slovenian
+ sl.fullname = u'Slovenian'
+ sl.nplurals = '4'
+ sl.pluralequation ='(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3)'
+
+# Shqip
+# Albanian
+ sq.fullname = u'Albanian'
+ sq.nplurals = '2'
+ sq.pluralequation ='(n != 1)'
+
+# СрпÑки / Srpski
+# Serbian
+ sr.fullname = u'Serbian'
+ sr.nplurals = '3'
+ sr.pluralequation ='(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)'
+
+# Sesotho
+# Sotho
+ st.fullname = u'Sotho, Southern'
+ st.nplurals = '2'
+ st.pluralequation ='(n != 1)'
+
+# Svenska
+# Swedish
+ sv.fullname = u'Swedish'
+ sv.nplurals = '2'
+ sv.pluralequation ='(n != 1)'
+
+# தமிழà¯
+# Tamil
+# ta.fullname = u'Tamil'
+# ta.nplurals = '2'
+# ta.pluralequation ='(n != 1)'
+
+# తెలà±à°—à±
+# Telugu
+ te.fullname = u'Telugu'
+ te.nplurals = u'2'
+ te.pluralequation = u'(n != 1)'
+
+# Туркмен / تركمن
+# Turkmen
+# tk.fullname = u'Turkmen'
+# tk.nplurals = '2'
+# tk.pluralequation ='(n != 1)'
+
+# Tagalog
+ tl.fullname = u'Tagalog'
+ tl.nplurals = '2'
+ tl.pluralequation = '(n > 1)'
+
+# Türkçe
+# Turkish
+ tr.fullname = u'Turkish'
+ tr.nplurals = '1'
+ tr.pluralequation ='0'
+
+# УкраїнÑька
+# Ukrainian
+ uk.fullname = u'Ukrainian'
+ uk.nplurals = '3'
+ uk.pluralequation ='(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)'
+
+# Tshivenḓa
+# Venda
+# ve.fullname = u'Venda'
+# ve.nplurals = '2'
+# ve.pluralequation ='(n != 1)'
+# ve.specialchars = "ḓṋḽṱ ḒṊḼṰ ṅṄ"
+
+# Urdu
+# ur.fullname = u'Urdu'
+# ur.nplurals = '2'
+# ur.pluralequation ='(n != 1)'
+
+# Vietnamese
+ vi.fullname = u'Vietnamese'
+ vi.nplurals = '1'
+ vi.pluralequation ='0'
+
+# Wolof
+ wo.fullname = u'Wolof'
+ wo.nplurals = '2'
+ wo.pluralequation ='(n != 1)'
+
+# Walon
+# Walloon
+# wa.fullname = u'Waloon'
+# wa.nplurals = '2'
+# wa.pluralequation ='(n > 1)'
+
+# 简体中文
+# Simplified Chinese (China mainland used below, but also used in Singapore and Malaysia)
+ zh_CN.fullname = u'Chinese (China)'
+ zh_CN.nplurals = '1'
+ zh_CN.pluralequation ='0'
+ zh_CN.specialchars = "â†â†’↔×÷©…—‘’“â€ã€ã€‘《》"
+
+# ç¹é«”中文
+# Traditional Chinese (Hong Kong used below, but also used in Taiwan and Macau)
+# zh_HK.fullname = u'Chinese (Hong Kong)'
+# zh_HK.nplurals = '1'
+# zh_HK.pluralequation ='0'
+# zh_HK.specialchars = "â†â†’↔×÷©…—‘’“â€ã€Œã€ã€Žã€ã€ã€‘《》"
+
+# ç¹é«”中文
+# Traditional Chinese (Taiwan used below, but also used in Hong Kong and Macau)
+ zh_TW.fullname = u'Chinese (Taiwan)'
+ zh_TW.nplurals = '1'
+ zh_TW.pluralequation ='0'
+ zh_TW.specialchars = "â†â†’↔×÷©…—‘’“â€ã€Œã€ã€Žã€ã€ã€‘《》"
+
+# This is a "language" that gives people access to the (untranslated) template files
+ templates.fullname = u'Templates'
diff --git a/Pootle-1.2.1/Pootle/pootle.py b/Pootle-1.2.1/Pootle/pootle.py
new file mode 100755
index 0000000..8a522f5
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/pootle.py
@@ -0,0 +1,696 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2004-2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+from jToolkit.web import server
+from jToolkit.web import templateserver
+from jToolkit.web import session
+from jToolkit import prefs
+from jToolkit import localize
+from jToolkit.widgets import widgets
+from jToolkit.widgets import spellui
+from jToolkit.widgets import thumbgallery
+from jToolkit.web import simplewebserver
+from Pootle import indexpage
+from Pootle import adminpages
+from Pootle import translatepage
+from Pootle import pagelayout
+from Pootle import projects
+from Pootle import potree
+from Pootle import pootlefile
+from Pootle import users
+from Pootle import filelocations
+from Pootle import request_cache
+from translate.misc import optrecurse
+# Versioning information
+from Pootle import __version__ as pootleversion
+from translate import __version__ as toolkitversion
+from jToolkit import __version__ as jtoolkitversion
+from Pootle import statistics
+try:
+ from xml.etree import ElementTree
+except ImportError:
+ from elementtree import ElementTree
+# We don't need kid in this file, but this will show quickly if it is not
+# installed. jToolkit won't complain, so we have to stop here if we don't have kid
+import kid
+import sys
+import os
+import re
+import random
+import pprint
+
+def use_request_cache(f):
+ def decorated_f(*args, **kwargs):
+ try:
+ return f(*args, **kwargs)
+ finally:
+ request_cache.reset()
+ return decorated_f
+
+class PootleServer(users.OptionalLoginAppServer, templateserver.TemplateServer):
+ """the Server that serves the Pootle Pages"""
+ def __init__(self, instance, webserver, sessioncache=None, errorhandler=None, loginpageclass=users.LoginPage):
+ if sessioncache is None:
+ sessioncache = session.SessionCache(sessionclass=users.PootleSession)
+ self.potree = potree.POTree(instance)
+ super(PootleServer, self).__init__(instance, webserver, sessioncache, errorhandler, loginpageclass)
+ self.templatedir = filelocations.templatedir
+ self.setdefaultoptions()
+
+ def loadurl(self, filename, context):
+ """loads a url internally for overlay code"""
+ # print "call to load %s with context:\n%s" % (filename, pprint.pformat(context))
+ filename = os.path.join(self.templatedir, filename+os.extsep+"html")
+ if os.path.exists(filename):
+ return open(filename, "r").read()
+ return None
+
+ def saveprefs(self):
+ """saves any changes made to the preferences"""
+ # TODO: this is a hack, fix it up nicely :-)
+ prefsfile = self.instance.__root__.__dict__["_setvalue"].im_self
+ prefsfile.savefile()
+
+ def setdefaultoptions(self):
+ """sets the default options in the preferences"""
+ changed = False
+ if not hasattr(self.instance, "title"):
+ setattr(self.instance, "title", "Pootle Demo")
+ changed = True
+ if not hasattr(self.instance, "description"):
+ defaultdescription = "This is a demo installation of pootle. The administrator can customize the description in the preferences."
+ setattr(self.instance, "description", defaultdescription)
+ changed = True
+ if not hasattr(self.instance, "baseurl"):
+ setattr(self.instance, "baseurl", "/")
+ changed = True
+ if not hasattr(self.instance, "enablealtsrc"):
+ setattr(self.instance, "enablealtsrc", False)
+ changed = True
+ if changed:
+ self.saveprefs()
+
+ def changeoptions(self, argdict):
+ """changes options on the instance"""
+ for key, value in argdict.iteritems():
+ if not key.startswith("option-"):
+ continue
+ optionname = key.replace("option-", "", 1)
+ setattr(self.instance, optionname, value)
+ self.saveprefs()
+
+ def initlanguage(self, req, session):
+ """Initialises the session language from the request"""
+ availablelanguages = self.potree.getlanguagecodes('pootle')
+ acceptlanguageheader = req.headers_in.getheader('Accept-Language')
+ if not acceptlanguageheader:
+ return
+
+ for langpref in acceptlanguageheader.split(","):
+ langpref = pagelayout.localelanguage(langpref)
+ pos = langpref.find(";")
+ if pos >= 0:
+ langpref = langpref[:pos]
+ if langpref in availablelanguages:
+ session.setlanguage(langpref)
+ return
+ elif langpref.startswith("en"):
+ session.setlanguage(None)
+ return
+ session.setlanguage(None)
+
+ def inittranslation(self, localedir=None, localedomains=None, defaultlanguage=None):
+ """initializes live translations using the Pootle PO files"""
+ self.localedomains = ['jToolkit', 'pootle']
+ self.localedir = None
+ self.languagelist = self.potree.getlanguagecodes('pootle')
+ self.defaultlanguage = defaultlanguage
+ if self.defaultlanguage is None:
+ self.defaultlanguage = getattr(self.instance, "defaultlanguage", "en")
+ if self.potree.hasproject(self.defaultlanguage, 'pootle'):
+ try:
+ self.translation = self.potree.getproject(self.defaultlanguage, 'pootle')
+ return
+ except Exception, e:
+ self.errorhandler.logerror("Could not initialize translation:\n%s" % str(e))
+ # if no translation available, set up a blank translation
+ super(PootleServer, self).inittranslation()
+
+ def gettranslation(self, language):
+ """returns a translation object for the given language (or default if language is None)"""
+ if language is None:
+ return self.translation
+ else:
+ try:
+ return self.potree.getproject(language, 'pootle')
+ except Exception, e:
+ if not language.startswith('en'):
+ self.errorhandler.logerror("Could not get translation for language %r:\n%s" % (language,str(e)))
+ return self.translation
+
+ def refreshstats(self, args):
+ """refreshes all the available statistics..."""
+ if args:
+ def filtererrorhandler(functionname, str1, str2, e):
+ print "error in filter %s: %r, %r, %s" % (functionname, str1, str2, e)
+ return False
+ checkerclasses = [projects.checks.StandardChecker, projects.checks.StandardUnitChecker]
+ stdchecker = projects.checks.TeeChecker(checkerclasses=checkerclasses, errorhandler=filtererrorhandler)
+ for arg in args:
+ if not os.path.exists(arg):
+ print "file not found:", arg
+ if os.path.isdir(arg):
+ if not arg.endswith(os.sep):
+ arg += os.sep
+ projectcode, languagecode = self.potree.getcodesfordir(arg)
+ dummyproject = projects.DummyStatsProject(arg, stdchecker, projectcode, languagecode)
+ def refreshdir(dummy, dirname, fnames):
+ reldirname = dirname.replace(dummyproject.podir, "")
+ for fname in fnames:
+ fpath = os.path.join(reldirname, fname)
+ fullpath = os.path.join(dummyproject.podir, fpath)
+ #TODO: PO specific
+ if fname.endswith(".po") and not os.path.isdir(fullpath):
+ if not os.path.exists(fullpath):
+ print "file does not exist:", fullpath
+ return
+ print "refreshing stats for", fpath
+ pootlefile.pootlefile(dummyproject, fpath).statistics.updatequickstats()
+ os.path.walk(arg, refreshdir, None)
+ if projectcode and languagecode:
+ dummyproject.savequickstats()
+ elif os.path.isfile(arg):
+ dummyproject = projects.DummyStatsProject(".", stdchecker)
+ print "refreshing stats for", arg
+ projects.pootlefile.pootlefile(dummyproject, arg)
+ else:
+ print "refreshing stats for all files in all projects"
+ self.potree.refreshstats()
+
+ def generateactivationcode(self):
+ """generates a unique activation code"""
+ return "".join(["%02x" % int(random.random()*0x100) for i in range(16)])
+
+ def generaterobotsfile(self):
+ """generates the robots.txt file"""
+ langcodes = self.potree.getlanguagecodes()
+ excludedfiles = ["login.html", "register.html", "activate.html"]
+ content = "User-agent: *\n"
+ for excludedfile in excludedfiles:
+ content += "Disallow: /%s\n" % excludedfile
+ for langcode in langcodes:
+ content += "Disallow: /%s/\n" % langcode
+ return content
+
+ @use_request_cache
+ def getpage(self, pathwords, session, argdict):
+ """return a page that will be sent to the user"""
+ #Ensure we get unicode from argdict
+ #TODO: remove when jToolkit does this
+ newargdict = {}
+ for key, value in argdict.iteritems():
+ if isinstance(key, str):
+ key = key.decode("utf-8")
+ if isinstance(value, str):
+ value = value.decode("utf-8")
+ newargdict[key] = value
+ argdict = newargdict
+
+ # Strip of the base url
+ baseurl = re.sub('http://[^/]', '', self.instance.baseurl)
+ # Split up and remove empty parts
+ basepathwords = filter(None, baseurl.split('/'))
+ while pathwords and basepathwords and basepathwords[0] == pathwords[0]:
+ basepathwords = basepathwords[1:]
+ pathwords = pathwords[1:]
+
+ if pathwords:
+ top = pathwords[0]
+ else:
+ top = ""
+ if top == 'js':
+ pathwords = pathwords[1:]
+ jsfile = os.path.join(filelocations.htmldir, 'js', *pathwords)
+ if not os.path.exists(jsfile):
+ jsfile = os.path.join(filelocations.jtoolkitdir, 'js', *pathwords)
+ if not os.path.exists(jsfile):
+ return None
+ jspage = widgets.PlainContents(None)
+ jspage.content_type = "application/x-javascript"
+ jspage.sendfile_path = jsfile
+ jspage.allowcaching = True
+ return jspage
+ elif pathwords and pathwords[-1].endswith(".css"):
+ cssfile = os.path.join(filelocations.htmldir, *pathwords)
+ if not os.path.exists(cssfile):
+ cssfile = os.path.join(filelocations.jtoolkitdir, *pathwords)
+ if not os.path.exists(cssfile):
+ return None
+ csspage = widgets.PlainContents(None)
+ csspage.content_type = "text/css"
+ csspage.sendfile_path = cssfile
+ csspage.allowcaching = True
+ return csspage
+ elif top in ['selenium', 'tests']:
+ picturefile = os.path.join(filelocations.htmldir, *pathwords)
+ picture = widgets.SendFile(picturefile)
+ if picturefile.endswith(".html"):
+ picture.content_type = 'text/html'
+ elif picturefile.endswith(".js"):
+ picture.content_type = 'text/javascript'
+ picture.allowcaching = True
+ return picture
+ elif top == 'images':
+ pathwords = pathwords[1:]
+ picturefile = os.path.join(filelocations.htmldir, 'images', *pathwords)
+ picture = widgets.SendFile(picturefile)
+ picture.content_type = thumbgallery.getcontenttype(pathwords[-1])
+ picture.allowcaching = True
+ return picture
+ elif pathwords and pathwords[-1].endswith(".ico"):
+ picturefile = os.path.join(filelocations.htmldir, *pathwords)
+ picture = widgets.SendFile(picturefile)
+ picture.content_type = 'image/ico'
+ picture.allowcaching = True
+ return picture
+ elif top == "robots.txt":
+ robotspage = widgets.PlainContents(self.generaterobotsfile())
+ robotspage.content_type = 'text/plain'
+ robotspage.allowcaching = True
+ return robotspage
+ elif top == "testtemplates.html":
+ return templateserver.TemplateServer.getpage(self, pathwords, session, argdict)
+ elif not top or top == "index.html":
+ return indexpage.PootleIndex(self.potree, session)
+ elif top == 'about.html':
+ return indexpage.AboutPage(session)
+ elif top == "login.html":
+ if session.isopen:
+ returnurl = argdict.get('returnurl', None) or getattr(self.instance, 'homepage', 'home/')
+ return server.Redirect(returnurl)
+ message = None
+ if 'username' in argdict:
+ session.username = argdict["username"]
+ message = session.localize("Login failed")
+ return users.LoginPage(session, languagenames=self.potree.getlanguages("pootle"), message=message)
+ elif top == "register.html":
+ return self.registerpage(session, argdict)
+ elif top == "activate.html":
+ return self.activatepage(session, argdict)
+ elif top == "projects":
+ pathwords = pathwords[1:]
+ if pathwords:
+ top = pathwords[0]
+ else:
+ top = ""
+ if not top or top == "index.html":
+ return indexpage.ProjectsIndex(self.potree, session)
+ else:
+ projectcode = top
+ if not self.potree.hasproject(None, projectcode):
+ return None
+ pathwords = pathwords[1:]
+ if pathwords:
+ top = pathwords[0]
+ else:
+ top = ""
+ if not top or top == "index.html":
+ return indexpage.ProjectLanguageIndex(self.potree, projectcode, session)
+ elif top == "admin.html":
+ return adminpages.ProjectAdminPage(self.potree, projectcode, session, argdict)
+ elif top == "languages":
+ pathwords = pathwords[1:]
+ if pathwords:
+ top = pathwords[0]
+ else:
+ top = ""
+ if not top or top == "index.html":
+ return indexpage.LanguagesIndex(self.potree, session)
+ elif top == "home":
+ pathwords = pathwords[1:]
+ if pathwords:
+ top = pathwords[0]
+ else:
+ top = ""
+ if not session.isopen:
+ templatename = "redirect"
+ templatevars = {
+ "pagetitle": session.localize("Redirecting to login..."),
+ "refresh": 1,
+ "refreshurl": "login.html",
+ "message": session.localize("Need to log in to access home page"),
+ }
+ pagelayout.completetemplatevars(templatevars, session)
+ return server.Redirect("../login.html", withtemplate=(templatename, templatevars))
+ if not top or top == "index.html":
+ return indexpage.UserIndex(self.potree, session)
+ elif top == "options.html":
+ message = None
+ try:
+ if "changeoptions" in argdict:
+ session.setoptions(argdict)
+ if "changepersonal" in argdict:
+ session.setpersonaloptions(argdict)
+ message = session.localize("Personal details updated")
+ if "changeinterface" in argdict:
+ session.setinterfaceoptions(argdict)
+ except users.RegistrationError, errormessage:
+ message = errormessage
+ return users.UserOptions(self.potree, session, message)
+ elif top == "admin":
+ pathwords = pathwords[1:]
+ if pathwords:
+ top = pathwords[0]
+ else:
+ top = ""
+ if not session.isopen:
+ templatename = "redirect"
+ templatevars = {
+ "pagetitle": session.localize("Redirecting to login..."),
+ "refresh": 1,
+ "refreshurl": "login.html",
+ "message": session.localize("Need to log in to access admin page"),
+ }
+ pagelayout.completetemplatevars(templatevars, session)
+ return server.Redirect("../login.html", withtemplate=(templatename, templatevars))
+ if not session.issiteadmin():
+ templatename = "redirect"
+ templatevars = {
+ "pagetitle": session.localize("Redirecting to home..."),
+ "refresh": 1,
+ "refreshurl": "login.html",
+ "message": self.localize("You do not have the rights to administer pootle."),
+ }
+ pagelayout.completetemplatevars(templatevars, session)
+ return server.Redirect("../index.html", withtemplate=(templatename, templatevars))
+ if not top or top == "index.html":
+ if "changegeneral" in argdict:
+ self.changeoptions(argdict)
+ return adminpages.AdminPage(self.potree, session, self.instance)
+ elif top == "users.html":
+ if "changeusers" in argdict:
+ self.changeusers(session, argdict)
+ return adminpages.UsersAdminPage(self, session.loginchecker.users, session, self.instance)
+ elif top == "languages.html":
+ if "changelanguages" in argdict:
+ self.potree.changelanguages(argdict)
+ return adminpages.LanguagesAdminPage(self.potree, session, self.instance)
+ elif top == "projects.html":
+ if "changeprojects" in argdict:
+ self.potree.changeprojects(argdict)
+ return adminpages.ProjectsAdminPage(self.potree, session, self.instance)
+ elif top == "templates" or self.potree.haslanguage(top):
+ languagecode = top
+ pathwords = pathwords[1:]
+ if pathwords:
+ top = pathwords[0]
+ bottom = pathwords[-1]
+ else:
+ top = ""
+ bottom = ""
+ if not top or top == "index.html":
+ return indexpage.LanguageIndex(self.potree, languagecode, session)
+ if self.potree.hasproject(languagecode, top):
+ projectcode = top
+ project = self.potree.getproject(languagecode, projectcode)
+ pathwords = pathwords[1:]
+ if pathwords:
+ top = pathwords[0]
+ else:
+ top = ""
+ if not top or top == "index.html":
+ return indexpage.ProjectIndex(project, session, argdict)
+ elif top == "admin.html":
+ return adminpages.TranslationProjectAdminPage(self.potree, project, session, argdict)
+ elif bottom == "translate.html":
+ if len(pathwords) > 1:
+ dirfilter = os.path.join(*pathwords[:-1])
+ else:
+ dirfilter = ""
+ try:
+ argdict["translate"] = 1
+ return translatepage.TranslatePage(project, session, argdict, dirfilter)
+ except projects.RightsError, stoppedby:
+ argdict["message"] = str(stoppedby)
+ return indexpage.ProjectIndex(project, session, argdict, dirfilter)
+ elif bottom == "spellcheck.html":
+ # the full review page
+ argdict["spellchecklang"] = languagecode
+ return spellui.SpellingReview(session, argdict, js_url="/js/spellui.js")
+ elif bottom == "spellingstandby.html":
+ # a simple 'loading' page
+ return spellui.SpellingStandby()
+ elif bottom.endswith("." + project.fileext):
+ pofilename = os.path.join(*pathwords)
+ if argdict.get("translate", 0):
+ try:
+ return translatepage.TranslatePage(project, session, argdict, dirfilter=pofilename)
+ except projects.RightsError, stoppedby:
+ if len(pathwords) > 1:
+ dirfilter = os.path.join(*pathwords[:-1])
+ else:
+ dirfilter = ""
+ argdict["message"] = str(stoppedby)
+ return indexpage.ProjectIndex(project, session, argdict, dirfilter=dirfilter)
+ elif argdict.get("index", 0):
+ return indexpage.ProjectIndex(project, session, argdict, dirfilter=pofilename)
+ else:
+ pofile = project.getpofile(pofilename, freshen=False)
+ page = widgets.SendFile(pofile.filename)
+ page.etag = str(pofile.pomtime)
+ encoding = getattr(pofile, "encoding", "UTF-8")
+ page.content_type = "text/plain; charset=%s" % encoding
+ return page
+ elif bottom.endswith(".csv") or bottom.endswith(".xlf") or bottom.endswith(".ts") or bottom.endswith(".po") or bottom.endswith(".mo"):
+ destfilename = os.path.join(*pathwords)
+ basename, extension = os.path.splitext(destfilename)
+ pofilename = basename + os.extsep + project.fileext
+ extension = extension[1:]
+ if extension == "mo":
+ if not "pocompile" in project.getrights(session):
+ return None
+ etag, filepath_or_contents = project.convert(pofilename, extension)
+ if etag:
+ page = widgets.SendFile(filepath_or_contents)
+ page.etag = str(etag)
+ else:
+ page = widgets.PlainContents(filepath_or_contents)
+ if extension == "po":
+ page.content_type = "text/x-gettext-translation; charset=UTF-8"
+ elif extension == "csv":
+ page.content_type = "text/csv; charset=UTF-8"
+ elif extension == "xlf":
+ page.content_type = "application/x-xliff; charset=UTF-8"
+ elif extension == "ts":
+ page.content_type = "application/x-linguist; charset=UTF-8"
+ elif extension == "mo":
+ page.content_type = "application/x-gettext-translation"
+ return page
+ elif bottom.endswith(".zip"):
+ if not "archive" in project.getrights(session):
+ return None
+ if len(pathwords) > 1:
+ dirfilter = os.path.join(*pathwords[:-1])
+ else:
+ dirfilter = None
+ goal = argdict.get("goal", None)
+ if goal:
+ goalfiles = project.getgoalfiles(goal)
+ pofilenames = []
+ for goalfile in goalfiles:
+ pofilenames.extend(project.browsefiles(goalfile))
+ else:
+ pofilenames = project.browsefiles(dirfilter)
+ archivecontents = project.getarchive(pofilenames)
+ page = widgets.PlainContents(archivecontents)
+ page.content_type = "application/zip"
+ return page
+ elif bottom.endswith(".sdf") or bottom.endswith(".sgi"):
+ if not "pocompile" in project.getrights(session):
+ return None
+ oocontents = project.getoo()
+ page = widgets.PlainContents(oocontents)
+ page.content_type = "text/tab-seperated-values"
+ return page
+ elif bottom == "index.html":
+ if len(pathwords) > 1:
+ dirfilter = os.path.join(*pathwords[:-1])
+ else:
+ dirfilter = None
+ return indexpage.ProjectIndex(project, session, argdict, dirfilter)
+ else:
+ return indexpage.ProjectIndex(project, session, argdict, os.path.join(*pathwords))
+ return None
+
+ # I implemented buildpage and sendpage here so that jToolkit's template system could
+ # be circumvented. This code originally comes from jToolkit and is still close to
+ # the original code.
+
+ def buildpage(self, filename, context, loadurl=None, localize=None, innerid=None):
+ """build a response for the template with the vars in context"""
+ context = templateserver.attribify(context)
+ t = kid.Template(filename, **context)
+ try:
+ return t.serialize(output="xhtml")
+ except Exception, e:
+ tb = sys.exc_info()[2]
+ tb_point = tb
+ while tb_point.tb_next:
+ tb_point = tb_point.tb_next
+ ancestors = tb_point.tb_frame.f_locals.get("ancestors", [])
+ xml_traceback = []
+ for ancestor in ancestors:
+ if ancestor is None: continue
+ try:
+ ancestor_str = str(ancestor)
+ except Exception, e:
+ ancestor_str = "(could not convert %s: %s)" % (str(ancestor), str(e))
+ xml_traceback.append(ancestor_str)
+ context_str = pprint.pformat(context)
+ xml_traceback_str = " " + "\n ".join(xml_traceback)
+ self.errorhandler.logerror("Error converting template: %s\nContext\n%s\nXML Ancestors:\n%s\n%s\n" % (e, context_str, xml_traceback_str, self.errorhandler.traceback_str()))
+ if self.webserver.options.debug:
+ import pdb
+ pdb.post_mortem(tb)
+ raise
+
+ def sendpage(self, req, thepage):
+ """bridge to widget code to allow templating to gradually replace it"""
+ if kid is not None and hasattr(thepage, "templatename") and hasattr(thepage, "templatevars"):
+ # renders using templates rather than the underlying widget class
+ kid.enable_import()
+ loadurl = getattr(thepage, "loadurl", None)
+ if loadurl is None:
+ loadurl = getattr(self, "loadurl", None)
+ pagestring = self.buildpage(os.path.join(self.templatedir, thepage.templatename + ".html"), thepage.templatevars, loadurl, req.session.localize)
+ builtpage = widgets.PlainContents(pagestring)
+ # make sure certain attributes are retained on the built page
+ for copyattr in ('content_type', 'logresponse', 'sendfile_path', 'allowcaching', 'etag'):
+ if hasattr(thepage, copyattr):
+ setattr(builtpage, copyattr, getattr(thepage, copyattr))
+ thepage = builtpage
+ return super(PootleServer, self).sendpage(req, thepage)
+
+class PootleOptionParser(simplewebserver.WebOptionParser):
+ def __init__(self):
+ versionstring = "%%prog %s\njToolkit %s\nTranslate Toolkit %s\nKid %s\nElementTree %s\nPython %s (on %s/%s)" % (pootleversion.ver, jtoolkitversion.ver, toolkitversion.ver, kid.__version__, ElementTree.VERSION, sys.version, sys.platform, os.name)
+ simplewebserver.WebOptionParser.__init__(self, version=versionstring)
+ self.set_default('prefsfile', filelocations.prefsfile)
+ self.set_default('instance', 'Pootle')
+ self.set_default('htmldir', filelocations.htmldir)
+ self.add_option('', "--refreshstats", dest="action", action="store_const", const="refreshstats",
+ default="runwebserver", help="refresh the stats files instead of running the webserver")
+ psycomodes=["none", "full", "profile"]
+ self.add_option('', "--statsdb_file", action="store", type="string", dest="statsdb_file",
+ default=None, help="Specifies the location of the SQLite stats db file.")
+ self.add_option('', "--profile", action="store", type="string", dest="profile",
+ help="Perform profiling, storing the result to the supplied filename.")
+ try:
+ import psyco
+ self.add_option('', "--psyco", dest="psyco", default=None, choices=psycomodes, metavar="MODE",
+ help="use psyco to speed up the operation, modes: %s" % (", ".join(psycomodes)))
+ except ImportError, e:
+ return
+
+def checkversions():
+ """Checks that version dependencies are met"""
+ if not hasattr(toolkitversion, "build") or toolkitversion.build < 12001:
+ raise RuntimeError("requires Translate Toolkit version >= 1.2.1. Current installed version is: %s" % toolkitversion.ver)
+
+def usepsyco(options):
+ # options.psyco == None means the default, which is "full", but don't give a warning...
+ # options.psyco == "none" means don't use psyco at all...
+ if getattr(options, "psyco", "none") == "none":
+ return
+ try:
+ import psyco
+ except ImportError:
+ if options.psyco is not None:
+ optrecurse.RecursiveOptionParser(formats={}).warning("psyco unavailable", options, sys.exc_info())
+ return
+ if options.psyco is None:
+ options.psyco = "full"
+ if options.psyco == "full":
+ psyco.full()
+ elif options.psyco == "profile":
+ psyco.profile()
+ # tell psyco the functions it cannot compile, to prevent warnings
+ import encodings
+ psyco.cannotcompile(encodings.search_function)
+
+def profile_runner(server, options):
+ import cProfile
+ import Pootle.profiling.lsprofcalltree as lsprofcalltree
+
+ def write_cache_grind(profiler, file):
+ k_cache_grind = lsprofcalltree.KCacheGrind(profiler)
+ k_cache_grind.output(file)
+ file.close()
+
+ def do_profile_run(file):
+ profiler = cProfile.Profile()
+ try:
+ profiler.runcall(simplewebserver.run, server, options)
+ finally:
+ write_cache_grind(profiler, file)
+
+ try:
+ profile_file = open(options.profile, "w+")
+ do_profile_run(profile_file)
+ except IOError, _e:
+ print "Could not open profiling file %s" % (options.profile,)
+
+def get_runner(options):
+ if getattr(options, "profile", None) != None:
+ return profile_runner
+ else:
+ return simplewebserver.run
+
+def set_stats_db(server, options):
+ def get_stats():
+ if options.statsdb_file != None:
+ return options.statsdb_file
+ else:
+ return getattr(server.instance, 'stats_db', None)
+
+ statistics.STATS_DB_FILE = get_stats()
+
+def main():
+ # run the web server
+ checkversions()
+ parser = PootleOptionParser()
+ options, args = parser.parse_args()
+ options.errorlevel = options.logerrors
+ usepsyco(options)
+ if options.action != "runwebserver":
+ options.servertype = "dummy"
+ server = parser.getserver(options)
+ set_stats_db(server, options)
+ server.options = options
+ if options.action == "runwebserver":
+ run = get_runner(options)
+ run(server, options)
+ elif options.action == "refreshstats":
+ server.refreshstats(args)
+
+if __name__ == '__main__':
+ main()
+
diff --git a/Pootle-1.2.1/Pootle/pootlefile.py b/Pootle-1.2.1/Pootle/pootlefile.py
new file mode 100644
index 0000000..14571a4
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/pootlefile.py
@@ -0,0 +1,748 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2004-2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+"""manages a translation file and its associated files"""
+
+from translate.storage import base
+from translate.storage import po
+from translate.storage.poheader import tzstring
+from translate.storage import xliff
+from translate.storage import factory
+from translate.filters import checks
+from translate.misc.multistring import multistring
+from Pootle import __version__, request_cache
+from Pootle import statistics
+from jToolkit import timecache
+from jToolkit import glock
+import time
+import os
+import bisect
+import weakref
+import util
+
+_UNIT_CHECKER = checks.UnitChecker()
+
+suggestion_source_index = weakref.WeakKeyDictionary()
+
+def build_map(store, property):
+ unit_map = {}
+ for unit in store.units:
+ key = property(unit)
+ if key not in unit_map:
+ unit_map[key] = []
+ unit_map[key].append(unit)
+ return unit_map
+
+def build_index(store, index, property):
+ if store not in index:
+ index[store] = build_map(store, property)
+ return index[store]
+
+def get_source_index(store):
+ return build_index(store, suggestion_source_index, lambda unit: unit.source)
+
+class LockedFile:
+ """locked interaction with a filesystem file"""
+ #Locking is disabled for now since it impacts performance negatively and was
+ #not complete yet anyway. Reverse svn revision 5271 to regain the locking
+ #code here.
+ def __init__(self, filename):
+ self.filename = filename
+ self.lock = None
+
+ def initlock(self):
+ self.lock = glock.GlobalLock(self.filename + os.extsep + "lock")
+
+ def dellock(self):
+ del self.lock
+ self.lock = None
+
+ def readmodtime(self):
+ """returns the modification time of the file (locked operation)"""
+ return statistics.getmodtime(self.filename)
+
+ def getcontents(self):
+ """returns modtime, contents tuple (locked operation)"""
+ pomtime = statistics.getmodtime(self.filename)
+ fp = open(self.filename, 'r')
+ filecontents = fp.read()
+ fp.close()
+ return pomtime, filecontents
+
+ def writecontents(self, contents):
+ """writes contents to file, returning modification time (locked operation)"""
+ f = open(self.filename, 'w')
+ f.write(contents)
+ f.close()
+ pomtime = statistics.getmodtime(self.filename)
+ return pomtime
+
+class pootleassigns:
+ """this represents the assignments for a file"""
+ def __init__(self, basefile):
+ """constructs assignments object for the given file"""
+ # TODO: try and remove circular references between basefile and this class
+ self.basefile = basefile
+ self.assignsfilename = self.basefile.filename + os.extsep + "assigns"
+ self.getassigns()
+
+ def getassigns(self):
+ """reads the assigns if neccessary or returns them from the cache"""
+ if os.path.exists(self.assignsfilename):
+ self.assigns = self.readassigns()
+ else:
+ self.assigns = {}
+ return self.assigns
+
+ def readassigns(self):
+ """reads the assigns from the associated assigns file, returning the assigns
+ the format is a number of lines consisting of
+ username: action: itemranges
+ where itemranges is a comma-separated list of item numbers or itemranges like 3-5
+ e.g. pootlewizz: review: 2-99,101"""
+ assignsmtime = statistics.getmodtime(self.assignsfilename)
+ if assignsmtime == getattr(self, "assignsmtime", None):
+ return
+ assignsfile = open(self.assignsfilename, "r")
+ assignsstring = assignsfile.read()
+ assignsfile.close()
+ poassigns = {}
+ itemcount = len(getattr(self, "stats", {}).get("total", []))
+ for line in assignsstring.split("\n"):
+ if not line.strip():
+ continue
+ if not line.count(":") == 2:
+ print "invalid assigns line in %s: %r" % (self.assignsfilename, line)
+ continue
+ username, action, itemranges = line.split(":", 2)
+ username, action = username.strip().decode('utf-8'), action.strip().decode('utf-8')
+ if not username in poassigns:
+ poassigns[username] = {}
+ userassigns = poassigns[username]
+ if not action in userassigns:
+ userassigns[action] = []
+ items = userassigns[action]
+ for itemrange in itemranges.split(","):
+ if "-" in itemrange:
+ if not itemrange.count("-") == 1:
+ print "invalid assigns range in %s: %r (from line %r)" % (self.assignsfilename, itemrange, line)
+ continue
+ itemstart, itemstop = [int(item.strip()) for item in itemrange.split("-", 1)]
+ items.extend(range(itemstart, itemstop+1))
+ else:
+ item = int(itemrange.strip())
+ items.append(item)
+ if itemcount:
+ items = [item for item in items if 0 <= item < itemcount]
+ userassigns[action] = items
+ return poassigns
+
+ def assignto(self, item, username, action):
+ """assigns the item to the given username for the given action"""
+ userassigns = self.assigns.setdefault(username, {})
+ items = userassigns.setdefault(action, [])
+ if item not in items:
+ items.append(item)
+ self.saveassigns()
+
+ def unassign(self, item, username=None, action=None):
+ """removes assignments of the item to the given username (or all users) for the given action (or all actions)"""
+ if username is None:
+ usernames = self.assigns.keys()
+ else:
+ usernames = [username]
+ for username in usernames:
+ userassigns = self.assigns.setdefault(username, {})
+ if action is None:
+ itemlist = [userassigns.get(action, []) for action in userassigns]
+ else:
+ itemlist = [userassigns.get(action, [])]
+ for items in itemlist:
+ if item in items:
+ items.remove(item)
+ self.saveassigns()
+
+ def saveassigns(self):
+ """saves the current assigns to file"""
+ # assumes self.assigns is up to date
+ assignstrings = []
+ usernames = self.assigns.keys()
+ usernames.sort()
+ for username in usernames:
+ actions = self.assigns[username].keys()
+ actions.sort()
+ for action in actions:
+ items = self.assigns[username][action]
+ items.sort()
+ if items:
+ lastitem = None
+ rangestart = None
+ assignstring = "%s: %s: " % (username.encode('utf-8'), action.encode('utf-8'))
+ for item in items:
+ if item - 1 == lastitem:
+ if rangestart is None:
+ rangestart = lastitem
+ else:
+ if rangestart is not None:
+ assignstring += "-%d" % lastitem
+ rangestart = None
+ if lastitem is None:
+ assignstring += "%d" % item
+ else:
+ assignstring += ",%d" % item
+ lastitem = item
+ if rangestart is not None:
+ assignstring += "-%d" % lastitem
+ assignstrings.append(assignstring + "\n")
+ assignsfile = open(self.assignsfilename, "w")
+ assignsfile.writelines(assignstrings)
+ assignsfile.close()
+
+ def getunassigned(self, action=None):
+ """gets all strings that are unassigned (for the given action if given)"""
+ unassigneditems = range(0, self.basefile.statistics.getitemslen())
+ self.assigns = self.getassigns()
+ for username in self.assigns:
+ if action is not None:
+ assigneditems = self.assigns[username].get(action, [])
+ else:
+ assigneditems = []
+ for action, actionitems in self.assigns[username].iteritems():
+ assigneditems += actionitems
+ unassigneditems = [item for item in unassigneditems if item not in assigneditems]
+ return unassigneditems
+
+ def finditems(self, search):
+ """returns items that match the .assignedto and/or .assignedaction criteria in the searchobject"""
+ # search.assignedto == [None] means assigned to nobody
+ if search.assignedto == [None]:
+ assignitems = self.getunassigned(search.assignedaction)
+ else:
+ # filter based on assign criteria
+ assigns = self.getassigns()
+ if search.assignedto:
+ usernames = [search.assignedto]
+ else:
+ usernames = assigns.iterkeys()
+ assignitems = []
+ for username in usernames:
+ if search.assignedaction:
+ actionitems = assigns[username].get(search.assignedaction, [])
+ assignitems.extend(actionitems)
+ else:
+ for actionitems in assigns[username].itervalues():
+ assignitems.extend(actionitems)
+ return assignitems
+
+def member(sorted_set, element):
+ """Check whether element appears in sorted_set."""
+ pos = bisect.bisect_left(sorted_set, element)
+ if pos < len(sorted_set):
+ return sorted_set[pos] == element
+ else:
+ return False
+
+def intersect(set_a, set_b):
+ """Find the intersection of the sorted sets set_a and set_b."""
+ # If both set_a and set_b have elements
+ if len(set_b) != 0 and len(set_a) != 0:
+ # Find the position of the element in set_a that is at least
+ # as large as the minimum element in set_b.
+ start_a = bisect.bisect_left(set_a, set_b[0])
+ # For each element in set_a...
+ for element in set_a[start_a:]:
+ # ...which is also in set_b...
+ if member(set_b, element):
+ yield element
+
+def make_class(base_class):
+ class pootlefile(base_class):
+ """this represents a pootle-managed file and its associated files"""
+ x_generator = "Pootle %s" % __version__.ver
+ def __init__(self, project=None, pofilename=None):
+ if pofilename:
+ self.__class__.__bases__ = (factory.getclass(pofilename),)
+ super(pootlefile, self).__init__()
+ self.pofilename = pofilename
+ if project is None:
+ from Pootle import projects
+ self.project = projects.DummyProject(None)
+ self.checker = None
+ self.filename = self.pofilename
+ else:
+ self.project = project
+ self.checker = self.project.checker
+ self.filename = os.path.join(self.project.podir, self.pofilename)
+
+ self.lockedfile = LockedFile(self.filename)
+ # we delay parsing until it is required
+ self.pomtime = None
+ self.assigns = None
+
+ self.pendingfilename = self.filename + os.extsep + "pending"
+ self.pendingfile = None
+ self.pomtime = self.lockedfile.readmodtime()
+ self.statistics = statistics.pootlestatistics(self)
+ self.tmfilename = self.filename + os.extsep + "tm"
+ # we delay parsing until it is required
+ self.pomtime = None
+ self.tracker = timecache.timecache(20*60)
+ self._total = util.undefined # self.statistics.getstats()["total"]
+
+ @util.lazy('_total')
+ def _get_total(self):
+ return self.statistics.getstats()["total"]
+
+ total = property(_get_total)
+
+ def reset_statistics(self):
+ self.statistics = statistics.pootlestatistics(self)
+
+ def parsestring(cls, storestring):
+ newstore = cls()
+ newstore.parse(storestring)
+ return newstore
+ parsestring = classmethod(parsestring)
+
+ def parsefile(cls, storefile):
+ """Reads the given file (or opens the given filename) and parses back to an object"""
+ if isinstance(storefile, basestring):
+ storefile = open(storefile, "r")
+ if "r" in getattr(storefile, "mode", "r"):
+ storestring = storefile.read()
+ else:
+ storestring = ""
+ return cls.parsestring(storestring)
+ parsefile = classmethod(parsefile)
+
+ def getheaderplural(self):
+ """returns values for nplural and plural values. It tries to see if the
+ file has it specified (in a po header or similar)."""
+ try:
+ return super(pootlefile, self).getheaderplural()
+ except AttributeError:
+ return None, None
+
+ def updateheaderplural(self, *args, **kwargs):
+ """updates the file header. If there is an updateheader function in the
+ underlying store it will be delegated there."""
+ try:
+ super(pootlefile, self).updateheaderplural(*args, **kwargs)
+ except AttributeError:
+ pass
+
+ def updateheader(self, **kwargs):
+ """updates the file header. If there is an updateheader function in the
+ underlying store it will be delegated there."""
+ try:
+ super(pootlefile, self).updateheader(**kwargs)
+ except AttributeError:
+ pass
+
+ def readpendingfile(self):
+ """reads and parses the pending file corresponding to this file"""
+ if os.path.exists(self.pendingfilename):
+ inputfile = open(self.pendingfilename, "r")
+ self.pendingfile = factory.getobject(inputfile, ignore=".pending")
+ else:
+ self.pendingfile = po.pofile()
+
+ def savependingfile(self):
+ """saves changes to disk..."""
+ output = str(self.pendingfile)
+ outputfile = open(self.pendingfilename, "w")
+ outputfile.write(output)
+ outputfile.close()
+
+ def readtmfile(self):
+ """reads and parses the tm file corresponding to this file"""
+ if os.path.exists(self.tmfilename):
+ tmmtime = statistics.getmodtime(self.tmfilename)
+ if tmmtime == getattr(self, "tmmtime", None):
+ return
+ inputfile = open(self.tmfilename, "r")
+ self.tmmtime, self.tmfile = tmmtime, factory.getobject(inputfile, ignore=".tm")
+ else:
+ self.tmfile = po.pofile()
+
+ def getsuggestions(self, item):
+ """find all the suggestion items submitted for the given item"""
+ unit = self.getitem(item)
+ if isinstance(unit, xliff.xliffunit):
+ return unit.getalttrans()
+ else:
+ self.readpendingfile()
+ return get_source_index(self.pendingfile).get(unit.source, [])
+
+ def addsuggestion(self, item, suggtarget, username):
+ """adds a new suggestion for the given item"""
+ unit = self.getitem(item)
+ if isinstance(unit, xliff.xliffunit):
+ if isinstance(suggtarget, list) and (len(suggtarget) > 0):
+ suggtarget = suggtarget[0]
+ unit.addalttrans(suggtarget, origin=username)
+ self.statistics.reclassifyunit(item)
+ self.savepofile()
+ return
+ self.readpendingfile()
+ newpo = unit.copy()
+ if username is not None:
+ newpo.msgidcomments.append('"_: suggested by %s\\n"' % username)
+ newpo.target = suggtarget
+ newpo.markfuzzy(False)
+ self.pendingfile.addunit(newpo)
+ self.savependingfile()
+ self.statistics.reclassifyunit(item)
+
+ def deletesuggestion(self, item, suggitem, newtrans=None):
+ """removes the suggestion from the pending file"""
+ unit = self.getitem(item)
+ if hasattr(unit, "xmlelement"):
+ suggestions = self.getsuggestions(item)
+ unit.delalttrans(suggestions[suggitem])
+ self.savepofile()
+ else:
+ self.readpendingfile()
+ # Update the suggestion index
+ get_source_index(self.pendingfile)[unit.source] = [unit for unit in get_source_index(self.pendingfile)[unit.source] if unit.target != newtrans]
+ # TODO: remove the suggestion in a less brutal manner
+ pendingitems = [pendingitem for pendingitem, suggestpo in enumerate(self.pendingfile.units) if suggestpo.source == unit.source]
+ try:
+ pendingitem = pendingitems[suggitem]
+ del self.pendingfile.units[pendingitem]
+ self.savependingfile()
+ except IndexError:
+ pass # TODO: Print a warning for the user.
+ self.statistics.reclassifyunit(item)
+
+ def getsuggester(self, item, suggitem):
+ """returns who suggested the given item's suggitem if recorded, else None"""
+ unit = self.getsuggestions(item)[suggitem]
+ if hasattr(unit, "xmlelement"):
+ return unit.xmlelement.get("origin")
+
+ for msgidcomment in unit.msgidcomments:
+ if msgidcomment.find("suggested by ") != -1:
+ suggestedby = po.unquotefrompo([msgidcomment]).replace("_:", "", 1).replace("suggested by ", "", 1).strip()
+ return suggestedby
+ return None
+
+ def gettmsuggestions(self, item):
+ """find all the tmsuggestion items submitted for the given item"""
+ self.readtmfile()
+ unit = self.getitem(item)
+ locations = unit.getlocations()
+ # TODO: review the matching method
+ # Can't simply use the location index, because we want multiple matches
+ suggestpos = [suggestpo for suggestpo in self.tmfile.units if suggestpo.getlocations() == locations]
+ return suggestpos
+
+ def track(self, item, message):
+ """sets the tracker message for the given item"""
+ self.tracker[item] = message
+
+ def readpofile(self):
+ """reads and parses the main file"""
+ # make sure encoding is reset so it is read from the file
+ self.encoding = None
+ self.units = []
+ self._total = util.undefined
+ pomtime, filecontents = self.lockedfile.getcontents()
+ # note: we rely on this not resetting the filename, which we set earlier, when given a string
+ self.parse(filecontents)
+ self.pomtime = pomtime
+ self.reset_statistics()
+
+ def savepofile(self):
+ """saves changes to the main file to disk..."""
+ output = str(self)
+ self.pomtime = self.lockedfile.writecontents(output)
+
+ def pofreshen(self):
+ """makes sure we have a freshly parsed pofile
+
+ @return: True if the file was freshened, False otherwise"""
+ try:
+ if self.pomtime != self.lockedfile.readmodtime():
+ self.readpofile()
+ return True
+ except OSError, e:
+ # If this exception is not triggered by a bad
+ # symlink, then we have a missing file on our hands...
+ if not os.path.islink(self.filename):
+ # ...and thus we rescan our files to get rid of the missing filename
+ self.project.scanpofiles()
+ else:
+ print "%s is a broken symlink" % (self.filename,)
+ return False
+
+ def getoutput(self):
+ """returns pofile output"""
+ self.pofreshen()
+ return super(pootlefile, self).getoutput()
+
+ def updateunit(self, item, newvalues, userprefs, languageprefs):
+ """updates a translation with a new target value"""
+ self.pofreshen()
+ unit = self.getitem(item)
+
+ if newvalues.has_key("target"):
+ unit.target = newvalues["target"]
+ if newvalues.has_key("fuzzy"):
+ unit.markfuzzy(newvalues["fuzzy"])
+ if newvalues.has_key("translator_comments"):
+ unit.removenotes()
+ if newvalues["translator_comments"]:
+ unit.addnote(newvalues["translator_comments"])
+
+ if isinstance(self, po.pofile):
+ po_revision_date = time.strftime("%Y-%m-%d %H:%M") + tzstring()
+ headerupdates = {
+ "PO_Revision_Date": po_revision_date,
+ "Language": self.project.languagecode,
+ "X_Generator": self.x_generator,
+ }
+ if userprefs:
+ if getattr(userprefs, "name", None) and getattr(userprefs, "email", None):
+ headerupdates["Last_Translator"] = "%s <%s>" % (userprefs.name, userprefs.email)
+ # We are about to insert a header. This changes the structure of the PO file and thus
+ # the total array which lists the editable units. We want to force this array to be
+ # reloaded, so we simply set it to undefined.
+ if self.header() is None:
+ self._total = util.undefined
+ request_cache.reset()
+ self.updateheader(add=True, **headerupdates)
+ if languageprefs:
+ nplurals = getattr(languageprefs, "nplurals", None)
+ pluralequation = getattr(languageprefs, "pluralequation", None)
+ if nplurals and pluralequation:
+ self.updateheaderplural(nplurals, pluralequation)
+ # If we didn't add a header, savepofile doesn't have to reset the stats,
+ # since reclassifyunit will do. This gives us a little speed boost for
+ # the common case.
+ self.savepofile()
+ self.statistics.reclassifyunit(item)
+
+ def getitem(self, item):
+ """Returns a single unit based on the item number."""
+ return self.units[self.total[item]]
+
+ def iteritems(self, search, lastitem=None):
+ """iterates through the items in this pofile starting after the given lastitem, using the given search"""
+ def get_min(lastitem):
+ if lastitem is None:
+ return 0
+ else:
+ return lastitem + 1
+
+ def narrow_to_last_item_range(translatables, lastitem):
+ return translatables[get_min(lastitem):]
+
+ def narrow_to_assigns(translatables, search):
+ if search.assignedto or search.assignedaction:
+ assignitems = self.getassigns().finditems(search)
+ return list(intersect(assignitems, translatables))
+ else:
+ return translatables
+
+ def narrow_to_matches(translatables, search):
+ if search.matchnames:
+ stats = self.statistics.getstats()
+ matches = reduce(set.__or__, (set(stats[matchname]) for matchname in search.matchnames if matchname in stats))
+ return intersect(sorted(matches), translatables)
+ else:
+ return translatables
+
+ translatables = self.total
+
+ # To get the items to iterate, we
+ # 1. filter translatables to the range of elements after lastitem,
+ # 2. filter translatables according to assignments,
+ # 3. filter translatables according to the quality checks (which
+ # are contained in search.matches)
+ new_translatables = narrow_to_matches(
+ narrow_to_assigns(
+ narrow_to_last_item_range(translatables, lastitem),
+ search),
+ search)
+
+ # translatables contains the indices into the store of the units. We need to
+ # know what indices of these indices are in translatables itself. Since
+ # translatables is sorted, we simply need to perform binary searches to
+ # get the answer.
+ return (bisect.bisect_left(translatables, item) for item in new_translatables)
+
+ def matchitems(self, newfile, uselocations=False):
+ """matches up corresponding items in this pofile with the given newfile, and returns tuples of matching poitems (None if no match found)"""
+ if not hasattr(self, "sourceindex"):
+ self.makeindex()
+ if not hasattr(newfile, "sourceindex"):
+ newfile.makeindex()
+ matches = []
+ for newpo in newfile.units:
+ if newpo.isheader():
+ continue
+ foundid = False
+ if uselocations:
+ newlocations = newpo.getlocations()
+ mergedlocations = set()
+ for location in newlocations:
+ if location in mergedlocations:
+ continue
+ if location in self.locationindex:
+ oldpo = self.locationindex[location]
+ if oldpo is not None:
+ foundid = True
+ matches.append((oldpo, newpo))
+ mergedlocations.add(location)
+ continue
+ if not foundid:
+ # We can't use the multistring, because it might contain more than two
+ # entries in a PO xliff file. Rather use the singular.
+ source = unicode(newpo.source)
+ if source in self.sourceindex:
+ oldpo = self.sourceindex[source]
+ matches.append((oldpo, newpo))
+ else:
+ matches.append((None, newpo))
+ # find items that have been removed
+ matcheditems = set(oldpo for oldpo, newpo in matches if oldpo)
+ for oldpo in self.units:
+ if not oldpo in matcheditems:
+ matches.append((oldpo, None))
+ return matches
+
+ def getassigns(self):
+ if self.assigns is None:
+ self.assigns = pootleassigns(self)
+ return self.assigns
+
+ def mergeitem(self, po_position, oldpo, newpo, username, suggest=False):
+ """merges any changes from newpo into oldpo"""
+ unchanged = oldpo.target == newpo.target
+ if not suggest and (not oldpo.target or not newpo.target or oldpo.isheader() or newpo.isheader() or unchanged):
+ oldpo.merge(newpo)
+ else:
+ if oldpo in po_position:
+ strings = getattr(newpo.target, "strings", [newpo.target])
+ self.addsuggestion(po_position[oldpo], strings, username)
+ else:
+ raise KeyError("Could not find item for merge")
+
+ def mergefile(self, newfile, username, allownewstrings=True, suggestions=False):
+ """make sure each msgid is unique ; merge comments etc from duplicates into original"""
+ self.makeindex()
+ translatables = (self.units[index] for index in self.total)
+ po_position = dict((unit, position) for position, unit in enumerate(translatables))
+ matches = self.matchitems(newfile)
+ for oldpo, newpo in matches:
+ if suggestions:
+ if oldpo and newpo:
+ self.mergeitem(po_position, oldpo, newpo, username, suggest=True)
+ continue
+
+ if oldpo is None:
+ if allownewstrings:
+ self.addunit(self.UnitClass.buildfromunit(newpo))
+ elif newpo is None:
+ # TODO: mark the old one as obsolete
+ pass
+ else:
+ self.mergeitem(po_position, oldpo, newpo, username)
+ # we invariably want to get the ids (source locations) from the newpo
+ if hasattr(newpo, "sourcecomments"):
+ oldpo.sourcecomments = newpo.sourcecomments
+
+ if not isinstance(newfile, po.pofile) or suggestions:
+ #TODO: We don't support updating the header yet.
+ self.savepofile()
+ return
+
+ #Let's update selected header entries. Only the ones listed below, and ones
+ #that are empty in self can be updated. The check in header_order is just
+ #a basic sanity check so that people don't insert garbage.
+ updatekeys = ['Content-Type',
+ 'POT-Creation-Date',
+ 'Last-Translator',
+ 'Project-Id-Version',
+ 'PO-Revision-Date',
+ 'Language-Team']
+ headerstoaccept = {}
+ ownheader = self.parseheader()
+ for (key, value) in newfile.parseheader().items():
+ if key in updatekeys or (not key in ownheader or not ownheader[key]) and key in po.pofile.header_order:
+ headerstoaccept[key] = value
+ self.updateheader(add=True, **headerstoaccept)
+
+ #Now update the comments above the header:
+ header = self.header()
+ newheader = newfile.header()
+ if header is None and not newheader is None:
+ header = self.UnitClass("", encoding=self.encoding)
+ header.target = ""
+ if header:
+ header._initallcomments(blankall=True)
+ if newheader:
+ for i in range(len(header.allcomments)):
+ header.allcomments[i].extend(newheader.allcomments[i])
+
+ self.savepofile()
+ return pootlefile
+
+_pootlefile_classes = {}
+
+# We want to extend the functionality of translation stores with some
+# Pootle-specific functionality, but we still want them to act like
+# translation stores. The clean way to do this, is to store a reference
+# to a translation store inside a "pootlefile" class and to delegate
+# if needed to the store. This was done initially through __getattr__
+# and __setattr__, although it proved to be rather slow (which made
+# a difference for large sets of translation files). This is now
+# achieved through inheritance. When we have to load a translation file,
+# we get hold of its corresponding translation store class. Then we
+# see whether there is a class which contains pootlefile functionality
+# and which derives from the translation store class. If there isn't
+# we invoke make_class to create such a class. Then we return an
+# instance of this class to the user.
+def pootlefile(project=None, pofilename=None):
+ po_class = po.pofile
+ if pofilename != None:
+ po_class = factory.getclass(pofilename)
+ if po_class not in _pootlefile_classes:
+ _pootlefile_classes[po_class] = make_class(po_class)
+ return _pootlefile_classes[po_class](project, pofilename)
+
+class Search:
+ """an object containing all the searching information"""
+ def __init__(self, dirfilter=None, matchnames=[], assignedto=None, assignedaction=None, searchtext=None, searchfields=None):
+ if searchfields is None:
+ searchfields = ["source", "target"]
+ self.dirfilter = dirfilter
+ self.matchnames = matchnames
+ self.assignedto = assignedto
+ self.assignedaction = assignedaction
+ self.searchtext = searchtext
+ self.searchfields = searchfields
+
+ def copy(self):
+ """returns a copy of this search"""
+ return Search(self.dirfilter, self.matchnames, self.assignedto, self.assignedaction, self.searchtext, self.searchfields)
+
diff --git a/Pootle-1.2.1/Pootle/potree.py b/Pootle-1.2.1/Pootle/potree.py
new file mode 100644
index 0000000..d6937d4
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/potree.py
@@ -0,0 +1,566 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2004-2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+"""manages the whole set of projects and languages for a pootle installation"""
+
+from Pootle import projects
+from Pootle import pootlefile
+from Pootle import pagelayout
+from translate.misc import autoencode
+from translate.lang import data as langdata
+
+import os
+
+class POTree:
+ """Manages the tree of projects and languages"""
+ def __init__(self, instance):
+ self.languages = instance.languages
+ if not self.haslanguage("templates"):
+ setattr(self.languages, "templates.fullname", "Templates")
+ self.saveprefs()
+ self.projects = instance.projects
+ self.podirectory = instance.podirectory
+ self.instance = instance
+ self.projectcache = {}
+
+ def saveprefs(self):
+ """saves any changes made to the preferences"""
+ # TODO: this is a hack, fix it up nicely :-)
+ prefsfile = self.languages.__root__.__dict__["_setvalue"].im_self
+ prefsfile.savefile()
+
+ def changelanguages(self, argdict):
+ """changes language entries"""
+ for key, value in argdict.iteritems():
+ if key.startswith("languageremove-"):
+ languagecode = key.replace("languageremove-", "", 1)
+ if self.haslanguage(languagecode):
+ delattr(self.languages, languagecode)
+ elif key.startswith("languagename-"):
+ languagecode = key.replace("languagename-", "", 1)
+ if self.haslanguage(languagecode):
+ languagename = self.getlanguagename(languagecode)
+ if languagename != value:
+ self.setlanguagename(languagecode, value)
+ elif key.startswith("languagespecialchars-"):
+ languagecode = key.replace("languagespecialchars-", "", 1)
+ if self.haslanguage(languagecode):
+ languagespecialchars = self.getlanguagespecialchars(languagecode)
+ if languagespecialchars != value:
+ self.setlanguagespecialchars(languagecode, value)
+ elif key.startswith("languagenplurals-"):
+ languagecode = key.replace("languagenplurals-", "", 1)
+ if self.haslanguage(languagecode):
+ languagenplurals = self.getlanguagenplurals(languagecode)
+ if languagenplurals != value:
+ self.setlanguagenplurals(languagecode, value)
+ elif key.startswith("languagepluralequation-"):
+ languagecode = key.replace("languagepluralequation-", "", 1)
+ if self.haslanguage(languagecode):
+ languagepluralequation = self.getlanguagepluralequation(languagecode)
+ if languagepluralequation != value:
+ self.setlanguagepluralequation(languagecode, value)
+ elif key == "newlanguagecode":
+ languagecode = value.lower()
+ if not languagecode.strip():
+ continue
+ if not languagecode.isalpha():
+ languagecode = pagelayout.localelanguage(languagecode)
+ if languagecode.find("_") >= 0:
+ for part in languagecode.split("_"):
+ if not part.isalpha():
+ raise ValueError("Language code must be alphabetic")
+ languagecode, countrycode = languagecode.split("_")
+ countrycode = countrycode.upper()
+ languagecode = "%s_%s" % (languagecode, countrycode)
+ else:
+ raise ValueError("Language code must be alphabetic")
+ if self.haslanguage(languagecode):
+ raise ValueError("Already have language with the code %s" % languagecode)
+ languagename = argdict.get("newlanguagename", languagecode)
+ languagespecialchars = argdict.get("newlanguagespecialchars", "")
+ languagenplurals = argdict.get("newlanguagenplurals", "")
+ languagepluralequation = argdict.get("newlanguagepluralequation", "")
+ # FIXME need to check that default values are not present
+ # if languagename == self.localize("(add language here)"):
+ # raise ValueError("Please set a value for the language name")
+ print "nplurals: %s" % languagenplurals
+ if not languagenplurals.isdigit() and not languagenplurals == "":
+ raise ValueError("Number of plural forms must be numeric")
+ # if languagenplurals == self.localize("(number of plurals)"):
+ # raise ValueError("Please set a value for the number of plural forms")
+ # if languagepluralequation == self.localize("(plural equation)"):
+ # raise ValueError("Please set a value for the plural equation")
+ if not languagenplurals == "" and languagepluralequation == "":
+ raise ValueError("Please set both the number of plurals and the plural equation OR leave both blank")
+ setattr(self.languages, languagecode + ".fullname", languagename)
+ setattr(self.languages, languagecode + ".specialchars", languagespecialchars)
+ setattr(self.languages, languagecode + ".nplurals", languagenplurals)
+ setattr(self.languages, languagecode + ".pluralequation", languagepluralequation)
+ self.saveprefs()
+
+ def changeprojects(self, argdict):
+ """changes project entries"""
+ #Let's reset all "createmofiles" to 0, otherwise we can't disable one
+ #since the key will never arrive
+ for project in self.getprojectcodes():
+ self.setprojectcreatemofiles(project, 0)
+ for key, value in argdict.iteritems():
+ if key.startswith("projectremove-"):
+ projectcode = key.replace("projectremove-", "", 1)
+ if hasattr(self.projects, projectcode):
+ delattr(self.projects, projectcode)
+ elif key.startswith("projectname-"):
+ projectcode = key.replace("projectname-", "", 1)
+ if hasattr(self.projects, projectcode):
+ projectname = self.getprojectname(projectcode)
+ if projectname != value:
+ self.setprojectname(projectcode, value)
+ elif key.startswith("projectdescription-"):
+ projectcode = key.replace("projectdescription-", "", 1)
+ if hasattr(self.projects, projectcode):
+ projectdescription = self.getprojectdescription(projectcode)
+ if projectdescription != value:
+ self.setprojectdescription(projectcode, value)
+ elif key.startswith("projectcheckerstyle-"):
+ projectcode = key.replace("projectcheckerstyle-", "", 1)
+ if hasattr(self.projects, projectcode):
+ projectcheckerstyle = self.getprojectcheckerstyle(projectcode)
+ if projectcheckerstyle != value:
+ self.setprojectcheckerstyle(projectcode, value)
+ elif key.startswith("projectfiletype-"):
+ projectcode = key.replace("projectfiletype-", "", 1)
+ if hasattr(self.projects, projectcode):
+ projectlocalfiletype = self.getprojectlocalfiletype(projectcode)
+ if projectlocalfiletype != value:
+ self.setprojectlocalfiletype(projectcode, value)
+ elif key.startswith("projectcreatemofiles-"):
+ projectcode = key.replace("projectcreatemofiles-", "", 1)
+ if hasattr(self.projects, projectcode):
+ self.setprojectcreatemofiles(projectcode, 1)
+ elif key == "newprojectcode":
+ projectcode = value.lower()
+ if not projectcode:
+ continue
+ if not (projectcode[:1].isalpha() and projectcode.replace("_","").isalnum()):
+ raise ValueError("Project code must be alphanumeric and start with an alphabetic character (got %r)" % projectcode)
+ if hasattr(self.projects, projectcode):
+ raise ValueError("Already have project with the code %s" % projectcode)
+ projectname = argdict.get("newprojectname", projectcode)
+ projecttype = argdict.get("newprojectfiletype", "")
+ projectdescription = argdict.get("newprojectdescription", "")
+ projectcheckerstyle = argdict.get("newprojectcheckerstyle", "")
+ projectcreatemofiles = argdict.get("newprojectcreatemofiles", "")
+ setattr(self.projects, projectcode + ".fullname", projectname)
+ setattr(self.projects, projectcode + ".localfiletype", projecttype)
+ setattr(self.projects, projectcode + ".description", projectdescription)
+ setattr(self.projects, projectcode + ".checkerstyle", projectcheckerstyle)
+ setattr(self.projects, projectcode + ".createmofiles", projectcreatemofiles)
+ projectdir = os.path.join(self.podirectory, projectcode)
+ if not os.path.isdir(projectdir):
+ os.mkdir(projectdir)
+ self.saveprefs()
+
+ def haslanguage(self, languagecode):
+ """checks if this language exists"""
+ return hasattr(self.languages, languagecode)
+
+ def getlanguageprefs(self, languagecode):
+ """returns the language object"""
+ return getattr(self.languages, languagecode)
+
+ def getlanguagename(self, languagecode):
+ """returns the language's full name"""
+ return getattr(self.getlanguageprefs(languagecode), "fullname", languagecode)
+
+ def setlanguagename(self, languagecode, languagename):
+ """stes the language's full name"""
+ setattr(self.getlanguageprefs(languagecode), "fullname", languagename)
+
+ def getlanguagespecialchars(self, languagecode):
+ """returns the language's special characters"""
+ return autoencode.autoencode(getattr(self.getlanguageprefs(languagecode), "specialchars", ""), "utf-8")
+
+ def setlanguagespecialchars(self, languagecode, languagespecialchars):
+ """sets the language's special characters"""
+ setattr(self.getlanguageprefs(languagecode), "specialchars", languagespecialchars)
+
+ def getlanguagenplurals(self, languagecode):
+ """returns the language's number of plural forms"""
+ return getattr(self.getlanguageprefs(languagecode), "nplurals", "")
+
+ def setlanguagenplurals(self, languagecode, languagenplurals):
+ """sets the language's number of plural forms"""
+ setattr(self.getlanguageprefs(languagecode), "nplurals", languagenplurals)
+
+ def getlanguagepluralequation(self, languagecode):
+ """returns the language's number of plural forms"""
+ return getattr(self.getlanguageprefs(languagecode), "pluralequation", "")
+
+ def setlanguagepluralequation(self, languagecode, languagepluralequation):
+ """sets the language's number of plural forms"""
+ setattr(self.getlanguageprefs(languagecode), "pluralequation", languagepluralequation)
+
+ def getlanguagecodes(self, projectcode=None):
+ """returns a list of valid languagecodes for a given project or all projects"""
+ alllanguagecodes = [languagecode for languagecode, language in self.languages.iteritems()]
+ if projectcode is None:
+ languagecodes = alllanguagecodes
+ else:
+ projectdir = os.path.join(self.podirectory, projectcode)
+ if not os.path.exists(projectdir):
+ return []
+ if self.isgnustyle(projectcode):
+ languagecodes = [languagecode for languagecode in alllanguagecodes if self.hasproject(languagecode, projectcode)]
+ else:
+ subdirs = [fn for fn in os.listdir(projectdir) if os.path.isdir(os.path.join(projectdir, fn))]
+ languagecodes = []
+ for potentialcode in subdirs:
+ if not self.languagematch(None, potentialcode):
+ continue
+ if potentialcode in alllanguagecodes:
+ languagecodes.append(potentialcode)
+ continue
+ if "-" in potentialcode:
+ potentialcode = potentialcode[:potentialcode.find("-")]
+ elif "_" in potentialcode:
+ potentialcode = potentialcode[:potentialcode.find("_")]
+ if potentialcode in alllanguagecodes:
+ languagecodes.append(potentialcode)
+ languagecodes.sort()
+ return languagecodes
+
+ def getlanguages(self, projectcode=None, sortbyname=True):
+ """gets a list of (languagecode, languagename) tuples"""
+ languagecodes = self.getlanguagecodes(projectcode)
+ if sortbyname:
+ languages = [(self.getlanguagename(languagecode), languagecode) for languagecode in languagecodes]
+ languages.sort()
+ return [(languagecode, languagename) for languagename, languagecode in languages]
+ else:
+ return [(languagecode, self.getlanguagename(languagecode)) for languagecode in languagecodes]
+
+ def getprojectcodes(self, languagecode=None):
+ """returns a list of project codes that are valid for the given languagecode or all projects"""
+ projectcodes = [projectcode for projectcode, projectprefs in self.projects.iteritems()]
+ projectcodes.sort()
+ if languagecode is None:
+ return projectcodes
+ else:
+ return [projectcode for projectcode in projectcodes if self.hasproject(languagecode, projectcode)]
+
+ def hasproject(self, languagecode, projectcode):
+ """returns whether the project exists for the language"""
+ if not hasattr(self.projects, projectcode):
+ return False
+ if languagecode is None:
+ return True
+ if not self.haslanguage(languagecode):
+ return False
+ try:
+ self.getpodir(languagecode, projectcode)
+ return True
+ except IndexError:
+ return False
+
+ def gettemplates(self, projectcode):
+ """returns templates for the given project"""
+ projectdir = os.path.join(self.podirectory, projectcode)
+ templatesdir = os.path.join(projectdir, "templates")
+ if not os.path.exists(templatesdir):
+ templatesdir = os.path.join(projectdir, "pot")
+ if not os.path.exists(templatesdir):
+ templatesdir = projectdir
+ potfilenames = []
+ def addfiles(podir, dirname, fnames):
+ """adds the files to the set of files for this project"""
+ basedirname = dirname.replace(podir, "", 1)
+ while basedirname.startswith(os.sep):
+ basedirname = basedirname.replace(os.sep, "", 1)
+ ponames = [fname for fname in fnames if fname.endswith(os.extsep+"pot")]
+ potfilenames.extend([os.path.join(basedirname, poname) for poname in ponames])
+ os.path.walk(templatesdir, addfiles, templatesdir)
+ return potfilenames
+
+ def getproject(self, languagecode, projectcode):
+ """returns the project object for the languagecode and projectcode"""
+ if (languagecode, projectcode) not in self.projectcache:
+ if languagecode == "templates":
+ self.projectcache[languagecode, projectcode] = projects.TemplatesProject(projectcode, self)
+ else:
+ self.projectcache[languagecode, projectcode] = projects.TranslationProject(languagecode, projectcode, self)
+ return self.projectcache[languagecode, projectcode]
+
+ def isgnustyle(self, projectcode):
+ """checks whether the whole project is a GNU-style project"""
+ projectdir = os.path.join(self.podirectory, projectcode)
+ return self.hasgnufiles(projectdir)
+
+ def addtranslationproject(self, languagecode, projectcode):
+ """creates a new TranslationProject"""
+ if self.hasproject(languagecode, projectcode):
+ raise ValueError("projects.TranslationProject for project %s, language %s already exists" % (projectcode, languagecode))
+ self.projectcache[languagecode, projectcode] = projects.TranslationProject(languagecode, projectcode, self, create=True)
+
+ def getprojectname(self, projectcode):
+ """returns the full name of the project"""
+ projectprefs = getattr(self.projects, projectcode)
+ return getattr(projectprefs, "fullname", projectcode)
+
+ def setprojectname(self, projectcode, projectname):
+ """returns the full name of the project"""
+ projectprefs = getattr(self.projects, projectcode)
+ setattr(projectprefs, "fullname", projectname)
+
+ def getprojectdescription(self, projectcode):
+ """returns the project description"""
+ projectprefs = getattr(self.projects, projectcode)
+ return getattr(projectprefs, "description", projectcode)
+
+ def setprojectdescription(self, projectcode, projectdescription):
+ """returns the project description"""
+ projectprefs = getattr(self.projects, projectcode)
+ setattr(projectprefs, "description", projectdescription)
+
+ def getprojectlocalfiletype(self, projectcode):
+ """returns the project allowed file type. We assume it is .po if nothing
+ else is specified."""
+ projectprefs = getattr(self.projects, projectcode)
+ type = getattr(projectprefs, "localfiletype", "po")
+ if not type:
+ type = "po"
+ return type
+
+ def setprojectlocalfiletype(self, projectcode, projectfiletype):
+ """sets the allowed file type for the project"""
+ projectprefs = getattr(self.projects, projectcode)
+ setattr(projectprefs, "localfiletype", projectfiletype)
+
+ def getprojectcheckerstyle(self, projectcode):
+ """returns the project checker style"""
+ projectprefs = getattr(self.projects, projectcode)
+ return getattr(projectprefs, "checkerstyle", projectcode)
+
+ def setprojectcheckerstyle(self, projectcode, projectcheckerstyle):
+ """sets the project checker style"""
+ projectprefs = getattr(self.projects, projectcode)
+ setattr(projectprefs, "checkerstyle", projectcheckerstyle)
+
+ def getprojectcreatemofiles(self, projectcode):
+ """returns whether the project builds MO files"""
+ projectprefs = getattr(self.projects, projectcode)
+ return getattr(projectprefs, "createmofiles", False)
+
+ def setprojectcreatemofiles(self, projectcode, projectcreatemofiles):
+ """sets whether the project builds MO files"""
+ projectprefs = getattr(self.projects, projectcode)
+ setattr(projectprefs, "createmofiles", projectcreatemofiles)
+
+ def hasgnufiles(self, podir, languagecode=None, depth=0, maxdepth=3, poext="po"):
+ """returns whether this directory contains gnu-style PO filenames for the given language"""
+ try:
+ if (podir.startswith(self.podirectory)):
+ def getprojectcode(podir=podir):
+ """Get the projectcode using the supplied podir."""
+ dirs = podir[len(self.podirectory):].split(os.sep)
+ if len(dirs[0]):
+ projectcode = dirs[0]
+ else:
+ projectcode = dirs[1]
+ return projectcode
+ projectprefs = getattr(self.projects, getprojectcode())
+ style = getattr(projectprefs, "treestyle")
+ if style == "gnu" \
+ or style == "nongnu":
+ return style
+ else:
+ print "Unsupported treestyle value (project %s): %s"%(projectcode,style)
+ except:
+ pass
+ #Let's check to see if we specifically find the correct gnu file
+ foundgnufile = False
+ if not os.path.isdir(podir):
+ return False
+ fnames = os.listdir(podir)
+ poext = os.extsep + "po"
+ subdirs = []
+ for fn in fnames:
+ if os.path.isdir(os.path.join(podir, fn)):
+ # if we have a language subdirectory, we're probably not GNU-style
+ if self.languagematch(languagecode, fn):
+ return False
+ #ignore hidden directories (like index directories)
+ if fn[0] == '.':
+ continue
+ subdirs.append(os.path.join(podir, fn))
+ elif fn.endswith(poext):
+ if self.languagematch(languagecode, fn[:-len(poext)]):
+ foundgnufile = True
+ elif not self.languagematch(None, fn[:-len(poext)]):
+ return "nongnu"
+ if depth < maxdepth:
+ for subdir in subdirs:
+ style = self.hasgnufiles(subdir, languagecode, depth+1, maxdepth)
+ if style == "nongnu":
+ return "nongnu"
+ if style == "gnu":
+ foundgnufile = True
+
+ if foundgnufile:
+ return "gnu"
+ else:
+ return ""
+
+ def getcodesfordir(self, dirname):
+ """returns projectcode and languagecode if dirname is a project directory"""
+ canonicalpath = lambda path: os.path.normcase(os.path.normpath(os.path.realpath(os.path.abspath(path))))
+ dirname = canonicalpath(dirname)
+ podirectory = canonicalpath(self.podirectory)
+ if dirname == podirectory:
+ return "*", None
+ for projectcode, projectprefs in self.projects.iteritems():
+ projectdir = canonicalpath(os.path.join(self.podirectory, projectcode))
+ if projectdir == dirname:
+ return projectcode, None
+ for languagecode, languageprefs in self.languages.iteritems():
+ languagedir = canonicalpath(os.path.join(projectdir, languagecode))
+ if not os.path.exists(languagedir):
+ languagedirs = [canonicalpath(languagedir) for languagedir in os.listdir(projectdir) if self.languagematch(languagecode, languagedir)]
+ if dirname in languagedirs:
+ return projectcode, languagecode
+ elif languagedir == dirname:
+ return projectcode, languagecode
+ return None, None
+
+ def getpodir(self, languagecode, projectcode):
+ """returns the base directory containing po files for the project"""
+ projectdir = os.path.join(self.podirectory, projectcode)
+ if not os.path.exists(projectdir):
+ raise IndexError("directory not found for project %s" % (projectcode))
+ languagedir = os.path.join(projectdir, languagecode)
+ if not os.path.exists(languagedir):
+ languagedirs = [languagedir for languagedir in os.listdir(projectdir) if self.languagematch(languagecode, languagedir)]
+ if not languagedirs:
+ # if no matching directories can be found, check if it is a GNU-style project
+ if self.hasgnufiles(projectdir, languagecode) == "gnu":
+ return projectdir
+ raise IndexError("directory not found for language %s, project %s" % (languagecode, projectcode))
+ # TODO: handle multiple regions
+ if len(languagedirs) > 1:
+ raise IndexError("multiple regions defined for language %s, project %s" % (languagecode, projectcode))
+ languagedir = os.path.join(projectdir, languagedirs[0])
+ return languagedir
+
+ def languagematch(self, languagecode, otherlanguagecode):
+ """matches a languagecode to another, ignoring regions in the second"""
+ return langdata.languagematch(languagecode, otherlanguagecode)
+
+ def getpofiles(self, languagecode, projectcode, poext="po"):
+ """returns a list of po files for the project and language"""
+ pofilenames = []
+ prefix = os.curdir + os.sep
+
+ def addfiles(podir, dirname, fnames):
+ """adds the files to the set of files for this project"""
+ if dirname == os.curdir:
+ basedirname = ""
+ else:
+ basedirname = dirname.replace(prefix, "", 1)
+ for fname in fnames:
+ # check that it actually exists (to avoid problems with broken symbolic
+ # links, for example)
+ fpath = os.path.join(basedirname, fname)
+ if fname.endswith(os.extsep+poext):
+ pofilenames.append(fpath)
+
+ def addgnufiles(podir, dirname, fnames):
+ """adds the files to the set of files for this project"""
+ basedirname = dirname.replace(podir, "", 1)
+ while basedirname.startswith(os.sep):
+ basedirname = basedirname.replace(os.sep, "", 1)
+ ext = os.extsep + poext
+ ponames = [fn for fn in fnames if fn.endswith(ext) and self.languagematch(languagecode, fn[:-len(ext)])]
+ pofilenames.extend([os.path.join(basedirname, poname) for poname in ponames])
+
+ podir = self.getpodir(languagecode, projectcode)
+ if self.hasgnufiles(podir, languagecode) == "gnu":
+ os.path.walk(podir, addgnufiles, podir)
+ else:
+ pwd = os.path.abspath(os.curdir)
+ os.chdir(podir)
+ os.path.walk(os.curdir, addfiles, None)
+ os.chdir(pwd)
+ return pofilenames
+
+ def getdefaultrights(self):
+ """Returns the default rights for a logged in user on this Pootle server."""
+ return getattr(self.instance, "defaultrights", "view, suggest, archive, pocompile")
+
+ def refreshstats(self):
+ """manually refreshes (all or missing) the stats files"""
+ for projectcode in self.getprojectcodes():
+ print "Project %s:" % (projectcode)
+ for languagecode in self.getlanguagecodes(projectcode):
+ print "Project %s, Language %s:" % (projectcode, languagecode)
+ translationproject = self.getproject(languagecode, projectcode)
+ translationproject.stats = {}
+ for pofilename in translationproject.pofilenames:
+ translationproject.indexer # Force indexing to be initialized
+ translationproject.getpostats(pofilename)
+ translationproject.pofiles[pofilename] = pootlefile.pootlefile(translationproject, pofilename)
+ translationproject.pofiles[pofilename].statistics.getstats()
+ print ".",
+ print
+ self.projectcache = {}
+
+class DummyPoTree:
+ """A dummy PO tree for testing etc - just treats everything as a single directory"""
+ def __init__(self, podir):
+ self.podirectory = podir
+ def getlanguagename(self, languagecode):
+ return languagecode
+ def getprojectname(self, projectcode):
+ return projectcode
+ def getprojectdescription(self, projectcode):
+ return projectcode
+ def getprojectcheckerstyle(self, projectcode):
+ return ""
+ def getpodir(self, languagecode, projectcode):
+ return self.podirectory
+ def hasgnufiles(self, podir, languagecode):
+ return False
+ def getprojectcreatemofiles(self, projectcode):
+ return False
+ def getpofiles(self, languagecode, projectcode, poext):
+ pofiles = []
+ for dirpath, subdirs, filenames in os.walk(self.podirectory, topdown=False):
+ if dirpath == self.podirectory:
+ subdirpath = ""
+ else:
+ subdirpath = dirpath.replace(self.podirectory+os.path.sep, "", 1)
+ print dirpath, subdirpath, self.podirectory
+ pofiles.extend([os.path.join(subdirpath, name) for name in filenames if name.endswith(poext)])
+ return pofiles
+ def gettemplates(self, projectcode):
+ return []
+ def languagematch(self, languagecode, filename):
+ return True
+
diff --git a/Pootle-1.2.1/Pootle/projects.py b/Pootle-1.2.1/Pootle/projects.py
new file mode 100644
index 0000000..c02f90a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/projects.py
@@ -0,0 +1,1462 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2004-2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+"""manages projects and files and translations"""
+
+from translate.storage import factory
+from translate.filters import checks
+from translate.convert import po2csv
+from translate.convert import po2xliff
+from translate.convert import xliff2po
+from translate.convert import po2ts
+from translate.convert import pot2po
+from translate.convert import po2oo
+from translate.tools import pocompile
+from translate.tools import pogrep
+from translate.search import match
+from translate.search import indexing
+from translate.storage import statsdb, base
+from Pootle import statistics
+from Pootle import pootlefile
+from translate.storage import versioncontrol
+from jToolkit import timecache
+from jToolkit import prefs
+import time
+import os
+import cStringIO
+import traceback
+import gettext
+import zipfile
+
+class RightsError(ValueError):
+ pass
+
+class InternalAdminSession:
+ """A fake session used for doing internal admin jobs"""
+ def __init__(self):
+ self.username = "internal"
+ self.isopen = True
+
+ def localize(self, message):
+ return message
+
+ def issiteadmin(self):
+ return True
+
+class potimecache(timecache.timecache):
+ """Caches pootlefile objects, remembers time, and reverts back to statistics when necessary..."""
+ def __init__(self, expiryperiod, project):
+ """initialises the cache to keep objects for the given expiryperiod, and point back to the project"""
+ timecache.timecache.__init__(self, expiryperiod)
+ self.project = project
+
+ def __getitem__(self, key):
+ """[] access of items"""
+ if key and not dict.__contains__(self, key):
+ popath = os.path.join(self.project.podir, key)
+ if os.path.exists(popath):
+ # update the index to pofiles...
+ self.project.scanpofiles()
+ return timecache.timecache.__getitem__(self, key)
+
+ def expire(self, pofilename):
+ """expires the given pofilename by recreating it (holding only stats)"""
+ timestamp, currentfile = dict.__getitem__(self, pofilename)
+ if currentfile.pomtime is not None:
+ # use the currentfile.pomtime as a timestamp as well, so any modifications will extend its life
+ if time.time() - currentfile.pomtime > self.expiryperiod.seconds:
+ self.__setitem__(pofilename, pootlefile.pootlefile(self.project, pofilename))
+
+class TranslationProject(object):
+ """Manages iterating through the translations in a particular project"""
+ fileext = "po"
+ index_directory = ".translation_index"
+
+ def __init__(self, languagecode, projectcode, potree, create=False):
+ self.languagecode = languagecode
+ self.projectcode = projectcode
+ self.potree = potree
+ self.languagename = self.potree.getlanguagename(self.languagecode)
+ self.projectname = self.potree.getprojectname(self.projectcode)
+ self.projectdescription = self.potree.getprojectdescription(self.projectcode)
+ self.pofiles = potimecache(15*60, self)
+ self.projectcheckerstyle = self.potree.getprojectcheckerstyle(self.projectcode)
+ checkerclasses = [checks.projectcheckers.get(self.projectcheckerstyle, checks.StandardChecker), checks.StandardUnitChecker]
+ self.checker = checks.TeeChecker(checkerclasses=checkerclasses, errorhandler=self.filtererrorhandler, languagecode=languagecode)
+ self.fileext = self.potree.getprojectlocalfiletype(self.projectcode)
+ # terminology matcher
+ self.termmatcher = None
+ self.termmatchermtime = None
+ if create:
+ self.converttemplates(InternalAdminSession())
+ self.podir = potree.getpodir(languagecode, projectcode)
+ if self.potree.hasgnufiles(self.podir, self.languagecode) == "gnu":
+ self.filestyle = "gnu"
+ else:
+ self.filestyle = "std"
+ self.readprefs()
+ self.scanpofiles()
+ self._indexing_enabled = True
+ self._index_initialized = False
+
+ def _get_indexer(self):
+ if self._indexing_enabled:
+ try:
+ indexer = self.make_indexer()
+ if not self._index_initialized:
+ self.initindex(indexer)
+ self._index_initialized = True
+ return indexer
+ except Exception, e:
+ print "Could not intialize indexer for %s in %s: %s" % (self.projectcode, self.languagecode, str(e))
+ self._indexing_enabled = False
+ return None
+ else:
+ return None
+
+ indexer = property(_get_indexer)
+
+ def _has_index(self):
+ return self._indexing_enabled and (self._index_initialized or self.indexer != None)
+
+ has_index = property(_has_index)
+
+ def readprefs(self):
+ """reads the project preferences"""
+ self.prefs = prefs.PrefsParser()
+ self.prefsfile = os.path.join(self.podir, "pootle-%s-%s.prefs" % (self.projectcode, self.languagecode))
+ if not os.path.exists(self.prefsfile):
+ prefsfile = open(self.prefsfile, "w")
+ prefsfile.write("# Pootle preferences for project %s, language %s\n\n" % (self.projectcode, self.languagecode))
+ prefsfile.close()
+ self.prefs.parsefile(self.prefsfile)
+
+ def saveprefs(self):
+ """saves the project preferences"""
+ self.prefs.savefile()
+
+ def getrightnames(self, session):
+ """gets the available rights and their localized names"""
+ localize = session.localize
+ # l10n: Verb
+ return [("view", localize("View")),
+ ("suggest", localize("Suggest")),
+ ("translate", localize("Translate")),
+ ("overwrite", localize("Overwrite")),
+ # l10n: Verb
+ ("review", localize("Review")),
+ # l10n: Verb
+ ("archive", localize("Archive")),
+ # l10n: This refers to generating the binary .mo file
+ ("pocompile", localize("Compile PO files")),
+ ("assign", localize("Assign")),
+ ("admin", localize("Administrate")),
+ ("commit", localize("Commit")),
+ ]
+
+ def getrights(self, session=None, username=None, usedefaults=True):
+ """gets the rights for the given user (name or session, or not-logged-in if username is None)
+ if usedefaults is False then None will be returned if no rights are defined (useful for editing rights)"""
+ # internal admin sessions have all rights
+ if isinstance(session, InternalAdminSession):
+ return [right for right, localizedright in self.getrightnames(session)]
+ if session is not None and session.isopen and username is None:
+ username = session.username
+ if username is None:
+ username = "nobody"
+ rights = None
+ rightstree = getattr(self.prefs, "rights", None)
+ if rightstree is not None:
+ if rightstree.__hasattr__(username):
+ rights = rightstree.__getattr__(username)
+ else:
+ rights = None
+ if rights is None:
+ if usedefaults:
+ if username == "nobody":
+ rights = "view"
+ elif rightstree is None:
+ if self.languagecode == "en":
+ rights = "view, archive, pocompile"
+ else:
+ rights = self.potree.getdefaultrights()
+ else:
+ rights = getattr(rightstree, "default", None)
+ else:
+ return rights
+ rights = [right.strip() for right in rights.split(",")]
+ if session is not None and session.issiteadmin():
+ if "admin" not in rights:
+ rights.append("admin")
+ return rights
+
+ def getuserswithinterest(self, session):
+ """returns all the users who registered for this language and project"""
+
+ def usableuser(user, userprefs):
+ if user in ["__dummy__", "default", "nobody"]:
+ return False
+ return self.languagecode in getattr(userprefs, "languages", [])
+
+ users = {}
+ for username, userprefs in session.loginchecker.users.iteritems():
+ if usableuser(username, userprefs):
+ # Let's build a nice descriptive name for use in the interface. It will
+ # contain both the username and the full name, if available.
+ name = getattr(userprefs, "name", None)
+ if name:
+ description = "%s (%s)" % (name, username)
+ else:
+ description = username
+ setattr(userprefs, "description", description)
+ users[username] = userprefs
+ return users
+
+ def getuserswithrights(self):
+ """gets all users that have rights defined for this project"""
+ return [username for username, user_rights in getattr(self.prefs, "rights", {}).iteritems()]
+
+ def setrights(self, username, rights):
+ """sets the rights for the given username... (or not-logged-in if username is None)"""
+ if username is None: username = "nobody"
+ if isinstance(rights, list):
+ rights = ", ".join(rights)
+ if not hasattr(self.prefs, "rights"):
+ self.prefs.rights = prefs.PrefNode(self.prefs, "rights")
+ self.prefs.rights.__setattr__(username, rights)
+ self.saveprefs()
+
+ def delrights(self, session, username):
+ """deletes teh rights for the given username"""
+ # l10n: Don't translate "nobody" or "default"
+ if username == "nobody" or username == "default":
+ # l10n: Don't translate "nobody" or "default"
+ raise RightsError(session.localize('You cannot remove the "nobody" or "default" user'))
+ self.prefs.rights.__delattr__(username)
+ self.saveprefs()
+
+ def getgoalnames(self):
+ """gets the goals and associated files for the project"""
+ goals = getattr(self.prefs, "goals", {})
+ goallist = []
+ for goalname, goalnode in goals.iteritems():
+ goallist.append(goalname.decode("utf-8"))
+ goallist.sort()
+ return goallist
+
+ def getgoals(self):
+ """gets the goal, goalnode tuples"""
+ goals = getattr(self.prefs, "goals", {})
+ newgoals = {}
+ for goalname, goalnode in goals.iteritems():
+ newgoals[goalname.decode("utf-8")] = goalnode
+ return newgoals
+
+ def getgoalfiles(self, goalname, dirfilter=None, maxdepth=None, includedirs=True, expanddirs=False, includepartial=False):
+ """gets the files for the given goal, with many options!
+ dirfilter limits to files in a certain subdirectory
+ maxdepth limits to files / directories of a certain depth
+ includedirs specifies whether to return directory names
+ expanddirs specifies whether to expand directories and return all files in them
+ includepartial specifies whether to return directories that are not in the goal, but have files below maxdepth in the goal"""
+ if not goalname:
+ return self.getnogoalfiles(dirfilter=dirfilter, maxdepth=maxdepth, includedirs=includedirs, expanddirs=expanddirs)
+ goals = getattr(self.prefs, "goals", {})
+ poext = os.extsep + self.fileext
+ pathsep = os.path.sep
+ unique = lambda filelist: dict.fromkeys(filelist).keys()
+ for testgoalname, goalnode in self.getgoals().iteritems():
+ if goalname != testgoalname: continue
+ goalmembers = getattr(goalnode, "files", "")
+ goalmembers = [goalfile.strip() for goalfile in goalmembers.split(",") if goalfile.strip()]
+ goaldirs = [goaldir for goaldir in goalmembers if goaldir.endswith(pathsep)]
+ goalfiles = [goalfile for goalfile in goalmembers if not goalfile.endswith(pathsep) and goalfile in self.pofilenames]
+ if expanddirs:
+ expandgoaldirs = []
+ expandgoalfiles = []
+ for goaldir in goaldirs:
+ expandedfiles = self.browsefiles(dirfilter=goaldir, includedirs=includedirs, includefiles=True)
+ expandgoalfiles.extend([expandfile for expandfile in expandedfiles if expandfile.endswith(poext)])
+ expandgoaldirs.extend([expanddir + pathsep for expanddir in expandedfiles if not expanddir.endswith(poext)])
+ goaldirs = unique(goaldirs + expandgoaldirs)
+ goalfiles = unique(goalfiles + expandgoalfiles)
+ if dirfilter:
+ if not dirfilter.endswith(pathsep) and not dirfilter.endswith(poext):
+ dirfilter += pathsep
+ goalfiles = [goalfile for goalfile in goalfiles if goalfile.startswith(dirfilter)]
+ goaldirs = [goaldir for goaldir in goaldirs if goaldir.startswith(dirfilter)]
+ if maxdepth is not None:
+ if includepartial:
+ partialdirs = [goalfile for goalfile in goalfiles if goalfile.count(pathsep) > maxdepth]
+ partialdirs += [goalfile for goalfile in goaldirs if goalfile.count(pathsep) > maxdepth]
+ makepartial = lambda goalfile: pathsep.join(goalfile.split(pathsep)[:maxdepth+1])+pathsep
+ partialdirs = [makepartial(goalfile) for goalfile in partialdirs]
+ goalfiles = [goalfile for goalfile in goalfiles if goalfile.count(pathsep) <= maxdepth]
+ goaldirs = [goaldir for goaldir in goaldirs if goaldir.count(pathsep) <= maxdepth+1]
+ if includepartial:
+ goaldirs += partialdirs
+ if includedirs:
+ return unique(goalfiles + goaldirs)
+ else:
+ return unique(goalfiles)
+ return []
+
+ def getnogoalfiles(self, dirfilter=None, maxdepth=None, includedirs=True, expanddirs=False):
+ """Returns the files that are not in a goal. This works with getgoalfiles
+ and therefre the API resembles that closely"""
+ all = self.browsefiles(dirfilter=dirfilter, maxdepth=maxdepth, includedirs=includedirs)
+ pathsep = os.path.sep
+ for testgoalname in self.getgoals():
+ goalfiles = self.getgoalfiles(testgoalname, dirfilter=dirfilter, maxdepth=maxdepth, includedirs=includedirs, expanddirs=expanddirs, includepartial=False)
+ for goalfile in goalfiles:
+ if goalfile.endswith(pathsep):
+ goalfile = goalfile[:-len(pathsep)]
+ all.remove(goalfile)
+ return all
+
+ def getancestry(self, filename):
+ """returns parent directories of the file"""
+ ancestry = []
+ parts = filename.split(os.path.sep)
+ for i in range(1, len(parts)):
+ ancestor = os.path.join(*parts[:i]) + os.path.sep
+ ancestry.append(ancestor)
+ return ancestry
+
+ def getfilegoals(self, filename):
+ """gets the goals the given file is part of"""
+ goals = self.getgoals()
+ filegoals = []
+ ancestry = self.getancestry(filename)
+ for goalname, goalnode in goals.iteritems():
+ goalfiles = getattr(goalnode, "files", "")
+ goalfiles = [goalfile.strip() for goalfile in goalfiles.split(",") if goalfile.strip()]
+ if filename in goalfiles:
+ filegoals.append(goalname)
+ continue
+ for ancestor in ancestry:
+ if ancestor in goalfiles:
+ filegoals.append(goalname)
+ continue
+ return filegoals
+
+ def setfilegoals(self, session, goalnames, filename):
+ """sets the given file to belong to the given goals exactly"""
+ filegoals = self.getfilegoals(filename)
+ for othergoalname in filegoals:
+ if othergoalname not in goalnames:
+ self.removefilefromgoal(session, othergoalname, filename)
+ for goalname in goalnames:
+ goalfiles = self.getgoalfiles(goalname)
+ if filename not in goalfiles:
+ goalfiles.append(filename)
+ self.setgoalfiles(session, goalname, goalfiles)
+
+ def removefilefromgoal(self, session, goalname, filename):
+ """removes the given file from the goal"""
+ goalfiles = self.getgoalfiles(goalname)
+ if filename in goalfiles:
+ goalfiles.remove(filename)
+ self.setgoalfiles(session, goalname, goalfiles)
+ else:
+ unique = lambda filelist: dict.fromkeys(filelist).keys()
+ ancestry = self.getancestry(filename)
+ for ancestor in ancestry:
+ if ancestor in goalfiles:
+ filedepth = filename.count(os.path.sep)
+ ancestordirs = self.getgoalfiles(goalname, ancestor, maxdepth=filedepth+1, includedirs=True, expanddirs=True)
+ ancestordirs = [ancestorfile for ancestorfile in ancestordirs if ancestorfile.endswith(os.path.sep)]
+ if filename.endswith(os.path.sep):
+ ancestorfiles = self.getgoalfiles(goalname, ancestor, maxdepth=filedepth-1, expanddirs=True)
+ else:
+ ancestorfiles = self.getgoalfiles(goalname, ancestor, maxdepth=filedepth, expanddirs=True)
+ ancestorfiles = unique(ancestordirs + ancestorfiles)
+ if not filename in ancestorfiles:
+ raise KeyError("expected to find file %s in ancestor %s files %r" % (filename, ancestor, ancestorfiles))
+ ancestorfiles.remove(filename)
+ ancestorfiles.remove(ancestor)
+ goalfiles.remove(ancestor)
+ goalfiles.extend(ancestorfiles)
+ self.setgoalfiles(session, goalname, goalfiles)
+ continue
+
+ def setgoalfiles(self, session, goalname, goalfiles):
+ """sets the goalfiles for the given goalname"""
+ if "admin" not in self.getrights(session):
+ raise RightsError(session.localize("You do not have rights to alter goals here"))
+ if isinstance(goalfiles, list):
+ goalfiles = [goalfile.strip() for goalfile in goalfiles if goalfile.strip()]
+ goalfiles.sort()
+ goalfiles = ", ".join(goalfiles)
+ if not hasattr(self.prefs, "goals"):
+ self.prefs.goals = prefs.PrefNode(self.prefs, "goals")
+ goals = self.getgoals()
+ goalname = goalname.encode("utf-8")
+ if not goalname in goals:
+ # TODO: check that its a valid goalname (alphanumeric etc)
+ self.prefs.goals.__setattr__(goalname, prefs.PrefNode(self.prefs.goals, goalname))
+ goalnode = self.prefs.goals.__getattr__(goalname)
+ goalnode.files = goalfiles
+ self.saveprefs()
+
+ def getgoalusers(self, goalname):
+ """gets the users for the given goal"""
+ goals = self.getgoals()
+ for testgoalname, goalnode in goals.iteritems():
+ if goalname != testgoalname: continue
+ goalusers = getattr(goalnode, "users", "")
+ goalusers = [goaluser.strip() for goaluser in goalusers.split(",") if goaluser.strip()]
+ return goalusers
+ return []
+
+ def getusergoals(self, username):
+ """gets the goals the given user is part of"""
+ goals = getattr(self.prefs, "goals", {})
+ usergoals = []
+ for goalname, goalnode in goals.iteritems():
+ goalusers = getattr(goalnode, "users", "")
+ goalusers = [goaluser.strip() for goaluser in goalusers.split(",") if goaluser.strip()]
+ if username in goalusers:
+ usergoals.append(goalname)
+ continue
+ return usergoals
+
+ def addusertogoal(self, session, goalname, username, exclusive=False):
+ """adds the given user to the goal"""
+ if exclusive:
+ usergoals = self.getusergoals(username)
+ for othergoalname in usergoals:
+ if othergoalname != goalname:
+ self.removeuserfromgoal(session, othergoalname, username)
+ goalusers = self.getgoalusers(goalname)
+ if username not in goalusers:
+ goalusers.append(username)
+ self.setgoalusers(session, goalname, goalusers)
+
+ def removeuserfromgoal(self, session, goalname, username):
+ """removes the given user from the goal"""
+ goalusers = self.getgoalusers(goalname)
+ if username in goalusers:
+ goalusers.remove(username)
+ self.setgoalusers(session, goalname, goalusers)
+
+ def setgoalusers(self, session, goalname, goalusers):
+ """sets the goalusers for the given goalname"""
+ if isinstance(goalname, unicode):
+ goalname = goalname.encode('utf-8')
+ if "admin" not in self.getrights(session):
+ raise RightsError(session.localize("You do not have rights to alter goals here"))
+ if isinstance(goalusers, list):
+ goalusers = [goaluser.strip() for goaluser in goalusers if goaluser.strip()]
+ goalusers = ", ".join(goalusers)
+ if not hasattr(self.prefs, "goals"):
+ self.prefs.goals = prefs.PrefNode(self.prefs, "goals")
+ if not hasattr(self.prefs.goals, goalname):
+ self.prefs.goals.__setattr__(goalname, prefs.PrefNode(self.prefs.goals, goalname))
+ goalnode = self.prefs.goals.__getattr__(goalname)
+ goalnode.users = goalusers
+ self.saveprefs()
+
+ def scanpofiles(self):
+ """sets the list of pofilenames by scanning the project directory"""
+ self.pofilenames = self.potree.getpofiles(self.languagecode, self.projectcode, poext=self.fileext)
+ filename_set = set(self.pofilenames)
+ pootlefile_set = set(self.pofiles.keys())
+ # add any files that we don't have yet
+ for filename in filename_set.difference(pootlefile_set):
+ self.pofiles[filename] = pootlefile.pootlefile(self, filename)
+ # remove any files that have been deleted since initialization
+ for filename in pootlefile_set.difference(filename_set):
+ del self.pofiles[filename]
+
+ def getuploadpath(self, dirname, localfilename):
+ """gets the path of a translation file being uploaded securely, creating directories as neccessary"""
+ if os.path.isabs(dirname) or dirname.startswith("."):
+ raise ValueError("invalid/insecure file path: %s" % dirname)
+ if os.path.basename(localfilename) != localfilename or localfilename.startswith("."):
+ raise ValueError("invalid/insecure file name: %s" % localfilename)
+ if self.filestyle == "gnu":
+ if not self.potree.languagematch(self.languagecode, localfilename[:-len("."+self.fileext)]):
+ raise ValueError("invalid GNU-style file name %s: must match '%s.%s' or '%s[_-][A-Z]{2,3}.%s'" % (localfilename, self.languagecode, self.fileext, self.languagecode, self.fileext))
+ dircheck = self.podir
+ for part in dirname.split(os.sep):
+ dircheck = os.path.join(dircheck, part)
+ if dircheck and not os.path.isdir(dircheck):
+ os.mkdir(dircheck)
+ return os.path.join(self.podir, dirname, localfilename)
+
+ def uploadfile(self, session, dirname, filename, contents, overwrite=False):
+ """uploads an individual file"""
+ pathname = self.getuploadpath(dirname, filename)
+ for extention in ["xliff", "xlf", "xlff"]:
+ if filename.endswith(extention):
+ pofilename = filename[:-len(os.extsep+extention)] + os.extsep + self.fileext
+ popathname = self.getuploadpath(dirname, pofilename)
+ break
+ else:
+ pofilename = filename
+ popathname = pathname
+
+ rights = self.getrights(session)
+
+ if os.path.exists(popathname) and not overwrite:
+ origpofile = self.getpofile(os.path.join(dirname, pofilename))
+ newfileclass = factory.getclass(pathname)
+ infile = cStringIO.StringIO(contents)
+ newfile = newfileclass.parsefile(infile)
+ if "admin" in rights:
+ origpofile.mergefile(newfile, session.username)
+ elif "translate" in rights:
+ origpofile.mergefile(newfile, session.username, allownewstrings=False)
+ elif "suggest" in rights:
+ origpofile.mergefile(newfile, session.username, suggestions=True)
+ else:
+ raise RightsError(session.localize("You do not have rights to upload files here"))
+ else:
+ if overwrite and not ("admin" in rights or "overwrite" in rights):
+ raise RightsError(session.localize("You do not have rights to overwrite files here"))
+ elif not os.path.exists(popathname) and not ("admin" in rights or "overwrite" in rights):
+ raise RightsError(session.localize("You do not have rights to upload new files here"))
+ outfile = open(popathname, "wb")
+ outfile.write(contents)
+ outfile.close()
+
+ def updatepofile(self, session, dirname, pofilename):
+ """updates an individual PO file from version control"""
+ if "admin" not in self.getrights(session):
+ raise RightsError(session.localize("You do not have rights to update files here"))
+ pathname = self.getuploadpath(dirname, pofilename)
+ # read from version control
+ if os.path.exists(pathname):
+ popath = os.path.join(dirname, pofilename)
+ currentpofile = self.getpofile(popath)
+ # matching current file with BASE version
+ # TODO: add some locking here...
+ # reading new version of file
+ versioncontrol.updatefile(pathname)
+ newpofile = pootlefile.pootlefile(self, popath)
+ newpofile.pofreshen()
+ newpofile.mergefile(currentpofile, "versionmerge")
+ self.pofiles[pofilename] = newpofile
+ else:
+ versioncontrol.updatefile(pathname)
+
+ def commitpofile(self, session, dirname, pofilename):
+ """commits an individual PO file to version control"""
+ if "commit" not in self.getrights(session):
+ raise RightsError(session.localize("You do not have rights to commit files here"))
+ pathname = self.getuploadpath(dirname, pofilename)
+ stats = self.getquickstats([os.path.join(dirname, pofilename)])
+ statsstring = "%d of %d messages translated (%d fuzzy)." % \
+ (stats["translated"], stats["total"], stats["fuzzy"])
+ versioncontrol.commitfile(pathname, message="Commit from %s by user %s. %s" %
+ (session.server.instance.title, session.username, statsstring),
+ author="%s <%s>" % (session.prefs.name, session.prefs.email))
+
+ def converttemplates(self, session):
+ """creates PO files from the templates"""
+ projectdir = os.path.join(self.potree.podirectory, self.projectcode)
+ if not os.path.exists(projectdir):
+ os.mkdir(projectdir)
+ templatesdir = os.path.join(projectdir, "templates")
+ if not os.path.exists(templatesdir):
+ templatesdir = os.path.join(projectdir, "pot")
+ if not os.path.exists(templatesdir):
+ templatesdir = projectdir
+ if self.potree.isgnustyle(self.projectcode):
+ self.filestyle = "gnu"
+ else:
+ self.filestyle = "std"
+ templates = self.potree.gettemplates(self.projectcode)
+ if self.filestyle == "gnu":
+ self.podir = projectdir
+ if not templates:
+ raise NotImplementedError("Cannot create GNU-style translation project without templates")
+ else:
+ self.podir = os.path.join(projectdir, self.languagecode)
+ if not os.path.exists(self.podir):
+ os.mkdir(self.podir)
+ for potfilename in templates:
+ inputfile = open(os.path.join(templatesdir, potfilename), "rb")
+ outputfile = cStringIO.StringIO()
+ if self.filestyle == "gnu":
+ pofilename = self.languagecode + os.extsep + "po"
+ else:
+ pofilename = potfilename[:-len(os.extsep+"pot")] + os.extsep + "po"
+ origpofilename = os.path.join(self.podir, pofilename)
+ if os.path.exists(origpofilename):
+ origpofile = open(origpofilename)
+ else:
+ origpofile = None
+ if not os.path.exists(os.path.dirname(origpofilename)):
+ os.makedirs(os.path.dirname(origpofilename))
+ pot2po.convertpot(inputfile, outputfile, origpofile)
+ outfile = open(origpofilename, "wb")
+ outfile.write(outputfile.getvalue())
+ outfile.close()
+ self.scanpofiles()
+
+ def filtererrorhandler(self, functionname, str1, str2, e):
+ print "error in filter %s: %r, %r, %s" % (functionname, str1, str2, e)
+ return False
+
+ def getarchive(self, pofilenames):
+ """returns an archive of the given filenames"""
+ try:
+ # using zip command line is fast
+ from tempfile import mkstemp
+ # The temporary file below is opened and immediately closed for security reasons
+ fd, tempzipfile = mkstemp(prefix='pootle', suffix='.zip')
+ os.close(fd)
+ os.system("cd %s ; zip -r - %s > %s" % (self.podir, " ".join(pofilenames), tempzipfile))
+ filedata = open(tempzipfile, "r").read()
+ if filedata:
+ return filedata
+ finally:
+ if os.path.exists(tempzipfile):
+ os.remove(tempzipfile)
+
+ # but if it doesn't work, we can do it from python
+ archivecontents = cStringIO.StringIO()
+ archive = zipfile.ZipFile(archivecontents, 'w', zipfile.ZIP_DEFLATED)
+ for pofilename in pofilenames:
+ pofile = self.getpofile(pofilename)
+ archive.write(pofile.filename, pofilename)
+ archive.close()
+ return archivecontents.getvalue()
+
+ def uploadarchive(self, session, dirname, archivecontents):
+ """uploads the files inside the archive"""
+
+ def unzip_external(archivecontents):
+ from tempfile import mkdtemp, mkstemp
+ tempdir = mkdtemp(prefix='pootle')
+ tempzipfd, tempzipname = mkstemp(prefix='pootle', suffix='.zip')
+
+ try:
+ os.write(tempzipfd, archivecontents)
+ os.close(tempzipfd)
+
+ import subprocess
+ if subprocess.call(["unzip", tempzipname, "-d", tempdir]):
+ raise zipfile.BadZipfile(session.localize("Error while extracting archive"))
+
+ def upload(basedir, path, files):
+ for fname in files:
+ if not os.path.isfile(os.path.join(path, fname)):
+ continue
+ if not fname.endswith(os.extsep + self.fileext):
+ print "error adding %s: not a %s file" % (fname, os.extsep + self.fileext)
+ continue
+ fcontents = open(os.path.join(path, fname), 'rb').read()
+ self.uploadfile(session, path[len(basedir)+1:], fname, fcontents)
+ os.path.walk(tempdir, upload, tempdir)
+ return
+ finally:
+ # Clean up temporary file and directory used in try-block
+ import shutil
+ os.unlink(tempzipname)
+ shutil.rmtree(tempdir)
+
+ def unzip_python(archivecontents):
+ archive = zipfile.ZipFile(cStringIO.StringIO(archivecontents), 'r')
+ # TODO: find a better way to return errors...
+ for filename in archive.namelist():
+ if not filename.endswith(os.extsep + self.fileext):
+ print "error adding %s: not a %s file" % (filename, os.extsep + self.fileext)
+ continue
+ contents = archive.read(filename)
+ subdirname, pofilename = os.path.dirname(filename), os.path.basename(filename)
+ try:
+ # TODO: use zipfile info to set the time and date of the file
+ self.uploadfile(session, os.path.join(dirname, subdirname), pofilename, contents)
+ except ValueError, e:
+ print "error adding %s" % filename, e
+ continue
+ archive.close()
+
+ # First we try to use "unzip" from the system, otherwise fall back to using
+ # the slower zipfile module (below)...
+ try:
+ unzip_external(archivecontents)
+ except Exception:
+ unzip_python(archivecontents)
+
+ def ootemplate(self):
+ """Tests whether this project has an OpenOffice.org template SDF file in
+ the templates directory."""
+ projectdir = os.path.join(self.potree.podirectory, self.projectcode)
+ templatefilename = os.path.join(projectdir, "templates", "en-US.sdf")
+ if os.path.exists(templatefilename):
+ return templatefilename
+ else:
+ return None
+
+ def getoo(self):
+ """Returns an OpenOffice.org gsi file"""
+ #TODO: implement caching
+ templateoo = self.ootemplate()
+ if templateoo is None:
+ return
+ outputoo = os.path.join(self.podir, self.languagecode + ".sdf")
+ inputdir = os.path.join(self.potree.podirectory, self.projectcode, self.languagecode)
+ po2oo.main(["-i%s"%inputdir, "-t%s"%templateoo, "-o%s"%outputoo, "-l%s"%self.languagecode, "--progress=none"])
+ return file(os.path.join(self.podir, self.languagecode + ".sdf"), "r").read()
+
+ def browsefiles(self, dirfilter=None, depth=None, maxdepth=None, includedirs=False, includefiles=True):
+ """gets a list of pofilenames, optionally filtering with the parent directory"""
+ if dirfilter is None:
+ pofilenames = self.pofilenames
+ else:
+ if not dirfilter.endswith(os.path.sep) and not dirfilter.endswith(os.extsep + self.fileext):
+ dirfilter += os.path.sep
+ pofilenames = [pofilename for pofilename in self.pofilenames if pofilename.startswith(dirfilter)]
+ if includedirs:
+ podirs = {}
+ for pofilename in pofilenames:
+ dirname = os.path.dirname(pofilename)
+ if not dirname:
+ continue
+ podirs[dirname] = True
+ while dirname:
+ dirname = os.path.dirname(dirname)
+ if dirname:
+ podirs[dirname] = True
+ podirs = podirs.keys()
+ else:
+ podirs = []
+ if not includefiles:
+ pofilenames = []
+ if maxdepth is not None:
+ pofilenames = [pofilename for pofilename in pofilenames if pofilename.count(os.path.sep) <= maxdepth]
+ podirs = [podir for podir in podirs if podir.count(os.path.sep) <= maxdepth]
+ if depth is not None:
+ pofilenames = [pofilename for pofilename in pofilenames if pofilename.count(os.path.sep) == depth]
+ podirs = [podir for podir in podirs if podir.count(os.path.sep) == depth]
+ return pofilenames + podirs
+
+ def iterpofilenames(self, lastpofilename=None, includelast=False):
+ """iterates through the pofilenames starting after the given pofilename"""
+ if not lastpofilename:
+ index = 0
+ else:
+ index = self.pofilenames.index(lastpofilename)
+ if not includelast:
+ index += 1
+ while index < len(self.pofilenames):
+ yield self.pofilenames[index]
+ index += 1
+
+ def make_indexer(self):
+ """get an indexing object for this project
+
+ Since we do not want to keep the indexing databases open for the lifetime of
+ the TranslationProject (it is cached!), it may NOT be part of the Project object,
+ but should be used via a short living local variable.
+ """
+ indexdir = os.path.join(self.podir, self.index_directory)
+ index = indexing.get_indexer(indexdir)
+ index.set_field_analyzers({
+ "pofilename": index.ANALYZER_EXACT,
+ "itemno": index.ANALYZER_EXACT,
+ "pomtime": index.ANALYZER_EXACT})
+ return index
+
+ def initindex(self, indexer):
+ """initializes the search index"""
+ pofilenames = self.pofiles.keys()
+ pofilenames.sort()
+ for pofilename in pofilenames:
+ self.updateindex(indexer, pofilename, optimize=False)
+
+ def updateindex(self, indexer, pofilename, items=None, optimize=True):
+ """updates the index with the contents of pofilename (limit to items if given)
+
+ There are three reasons for calling this function:
+ 1. creating a new instance of L{TranslationProject} (see L{initindex})
+ -> check if the index is up-to-date / rebuild the index if necessary
+ 2. translating a unit via the web interface
+ -> (re)index only the specified unit(s)
+
+ The argument L{items} should be None for 1.
+
+ known problems:
+ 1. This function should get called, when the po file changes externally.
+ The function "pofreshen" in pootlefile.py would be the natural place
+ for this. But this causes circular calls between the current (r7514)
+ statistics code and "updateindex" leading to indexing database lock
+ issues.
+
+ WARNING: You have to stop the pootle server before manually changing
+ po files, if you want to keep the index database in sync.
+
+ @param pofilename: absolute filename of the po file
+ @type pofilename: str
+ @param items: list of unit numbers within the po file OR None (=rebuild all)
+ @type items: [int]
+ @param optimize: should the indexing database be optimized afterwards
+ @type optimize: bool
+ """
+ if indexer == None:
+ return False
+ pofile = self.pofiles[pofilename]
+ # check if the pomtime in the index == the latest pomtime
+ try:
+ pomtime = statistics.getmodtime(pofile.filename)
+ pofilenamequery = indexer.make_query([("pofilename", pofilename)], True)
+ pomtimequery = indexer.make_query([("pomtime", str(pomtime))], True)
+ gooditemsquery = indexer.make_query([pofilenamequery, pomtimequery], True)
+ gooditemsnum = indexer.get_query_result(gooditemsquery).get_matches_count()
+ # if there is at least one up-to-date indexing item, then the po file
+ # was not changed externally -> no need to update the database
+ if (gooditemsnum > 0) and (not items):
+ # nothing to be done
+ return
+ elif items:
+ # Update only specific items - usually single translation via the web
+ # interface. All other items should still be up-to-date (even with an
+ # older pomtime).
+ print "updating", self.languagecode, "index for", pofilename, "items", items
+ # delete the relevant items from the database
+ itemsquery = indexer.make_query([("itemno", str(itemno)) for itemno in items], False)
+ indexer.delete_doc([pofilenamequery, itemsquery])
+ else:
+ # (items is None)
+ # The po file is not indexed - or it was changed externally (see
+ # "pofreshen" in pootlefile.py).
+ print "updating", self.projectcode, self.languagecode, "index for", pofilename
+ # delete all items of this file
+ indexer.delete_doc({"pofilename": pofilename})
+ pofile.pofreshen()
+ if items is None:
+ # rebuild the whole index
+ items = range(pofile.statistics.getitemslen())
+ addlist = []
+ for itemno in items:
+ unit = pofile.getitem(itemno)
+ doc = {"pofilename": pofilename, "pomtime": str(pomtime), "itemno": str(itemno)}
+ if unit.hasplural():
+ orig = "\n".join(unit.source.strings)
+ trans = "\n".join(unit.target.strings)
+ else:
+ orig = unit.source
+ trans = unit.target
+ doc["source"] = orig
+ doc["target"] = trans
+ doc["notes"] = unit.getnotes()
+ doc["locations"] = unit.getlocations()
+ addlist.append(doc)
+ if addlist:
+ indexer.begin_transaction()
+ try:
+ for add_item in addlist:
+ indexer.index_document(add_item)
+ finally:
+ indexer.commit_transaction()
+ indexer.flush(optimize=optimize)
+ except (base.ParseError, IOError, OSError):
+ indexer.delete_doc({"pofilename": pofilename})
+ print "Not indexing %s, since it is corrupt" % (pofilename,)
+
+ def matchessearch(self, pofilename, search):
+ """returns whether any items in the pofilename match the search (based on collected stats etc)"""
+ # wrong file location in a "dirfilter" search?
+ if search.dirfilter is not None and not pofilename.startswith(search.dirfilter):
+ return False
+ # search.assignedto == [None] means assigned to nobody
+ if search.assignedto or search.assignedaction:
+ if search.assignedto == [None]:
+ assigns = self.pofiles[pofilename].getassigns().getunassigned(search.assignedaction)
+ else:
+ assigns = self.pofiles[pofilename].getassigns().getassigns()
+ if search.assignedto is not None:
+ if search.assignedto not in assigns:
+ return False
+ assigns = assigns[search.assignedto]
+ else:
+ assigns = reduce(lambda x, y: x+y, [userassigns.keys() for userassigns in assigns.values()], [])
+ if search.assignedaction is not None:
+ if search.assignedaction not in assigns:
+ return False
+ if search.matchnames:
+ postats = self.getpostats(pofilename)
+ for name in search.matchnames:
+ if postats.get(name):
+ return True
+ return False
+ return True
+
+ def indexsearch(self, search, returnfields):
+ """returns the results from searching the index with the given search"""
+ def do_search(indexer):
+ searchparts = []
+ if search.searchtext:
+ # Split the search expression into single words. Otherwise xapian and
+ # lucene would interprete the whole string as an "OR" combination of
+ # words instead of the desired "AND".
+ for word in search.searchtext.split():
+ # Generate a list for the query based on the selected fields
+ querylist = [(f, word) for f in search.searchfields]
+ textquery = indexer.make_query(querylist, False)
+ searchparts.append(textquery)
+ if search.dirfilter:
+ pofilenames = self.browsefiles(dirfilter=search.dirfilter)
+ filequery = indexer.make_query([("pofilename", pofilename) for pofilename in pofilenames], False)
+ searchparts.append(filequery)
+ # TODO: add other search items
+ limitedquery = indexer.make_query(searchparts, True)
+ return indexer.search(limitedquery, returnfields)
+
+ indexer = self.indexer
+ if indexer != None:
+ return do_search(indexer)
+ else:
+ return False
+
+ def searchpofilenames(self, lastpofilename, search, includelast=False):
+ """find the next pofilename that has items matching the given search"""
+ if lastpofilename and not lastpofilename in self.pofiles:
+ # accessing will autoload this file...
+ self.pofiles[lastpofilename]
+ searchpofilenames = None
+ if self.has_index and search.searchtext:
+ try:
+ # TODO: move this up a level, use index to manage whole search, so we don't do this twice
+ hits = self.indexsearch(search, "pofilename")
+ # there will be only result for the field "pofilename" - so we just
+ # pick the first
+ searchpofilenames = dict.fromkeys([hit["pofilename"][0] for hit in hits])
+ except:
+ print "Could not perform indexed search on %s. Index is corrupt." % lastpofilename
+ self._indexing_enabled = False
+ for pofilename in self.iterpofilenames(lastpofilename, includelast):
+ if searchpofilenames is not None:
+ if pofilename not in searchpofilenames:
+ continue
+ if self.matchessearch(pofilename, search):
+ yield pofilename
+
+ def searchpoitems(self, pofilename, lastitem, search):
+ """finds the next item matching the given search"""
+
+ def indexed(pofilename, search, lastitem):
+ filesearch = search.copy()
+ filesearch.dirfilter = pofilename
+ hits = self.indexsearch(filesearch, "itemno")
+ # there will be only result for the field "itemno" - so we just
+ # pick the first
+ all_items = (int(doc["itemno"][0]) for doc in hits)
+ next_items = (search_item for search_item in all_items if search_item > lastitem)
+ try:
+ # Since we will call self.searchpoitems (the method in which we are)
+ # every time a user clicks the next button, the loop which calls yield
+ # on indexed will only need a single value from this generator. So we
+ # only return a list with a single item.
+ return [min(next_items)]
+ except ValueError:
+ return []
+
+ def non_indexed(pofilename, search, lastitem):
+ # Ask pofile for all the possible items which follow lastitem, based on
+ # the criteria in search.
+ pofile = self.getpofile(pofilename)
+ items = pofile.iteritems(search, lastitem)
+ if search.searchtext:
+ # We'll get here if the user is searching for a piece of text and if no indexer
+ # (such as Xapian or Lucene) is usable. First build a grepper...
+ grepfilter = pogrep.GrepFilter(search.searchtext, search.searchfields, ignorecase=True)
+ # ...then filter the items using the grepper.
+ return (item for item in items if grepfilter.filterunit(pofile.getitem(item)))
+ else:
+ return items
+
+ def get_items(pofilename, search, lastitem):
+ if self.has_index and search.searchtext:
+ try:
+ # Return an iterator using the indexer if indexing is available and if there is searchtext.
+ return indexed(pofilename, search, lastitem)
+ except:
+ print "Could not perform indexed search on %s. Index is corrupt." % pofilename
+ self._indexing_enabled = False
+ return non_indexed(pofilename, search, lastitem)
+
+ for pofilename in self.searchpofilenames(pofilename, search, includelast=True):
+ for item in get_items(pofilename, search, lastitem):
+ yield pofilename, item
+ # this must be set to None so that the next call to
+ # get_items(self.getpofile(pofilename), search, lastitem) [see just above]
+ # will start afresh with the first item in the next pofilename.
+ lastitem = None
+
+ def reassignpoitems(self, session, search, assignto, action):
+ """reassign all the items matching the search to the assignto user(s) evenly, with the given action"""
+ # remove all assignments for the given action
+ self.unassignpoitems(session, search, None, action)
+ assigncount = self.assignpoitems(session, search, assignto, action)
+ return assigncount
+
+ def assignpoitems(self, session, search, assignto, action):
+ """assign all the items matching the search to the assignto user(s) evenly, with the given action"""
+ if not "assign" in self.getrights(session):
+ raise RightsError(session.localize("You do not have rights to alter assignments here"))
+ if search.searchtext:
+ grepfilter = pogrep.GrepFilter(search.searchtext, None, ignorecase=True)
+ if not isinstance(assignto, list):
+ assignto = [assignto]
+ usercount = len(assignto)
+ assigncount = 0
+ if not usercount:
+ return assigncount
+ pofilenames = [pofilename for pofilename in self.searchpofilenames(None, search, includelast=True)]
+ wordcounts = [(pofilename, self.getpofile(pofilename).statistics.getquickstats()['totalsourcewords']) for pofilename in pofilenames]
+ totalwordcount = sum([wordcount for pofilename, wordcount in wordcounts])
+
+ wordsperuser = totalwordcount / usercount
+ print "assigning", totalwordcount, "words to", usercount, "user(s)", wordsperuser, "words per user"
+ usernum = 0
+ userwords = 0
+ for pofilename, wordcount in wordcounts:
+ pofile = self.getpofile(pofilename)
+ sourcewordcount = pofile.statistics.getunitstats()['sourcewordcount']
+ for item in pofile.iteritems(search, None):
+ # TODO: move this to iteritems
+ if search.searchtext:
+ validitem = False
+ unit = pofile.getitem(item)
+ if grepfilter.filterunit(unit):
+ validitem = True
+ if not validitem:
+ continue
+ itemwordcount = sourcewordcount[item]
+ #itemwordcount = statsdb.wordcount(str(pofile.getitem(item).source))
+ if userwords + itemwordcount > wordsperuser:
+ usernum = min(usernum+1, len(assignto)-1)
+ userwords = 0
+ userwords += itemwordcount
+ pofile.getassigns().assignto(item, assignto[usernum], action)
+ assigncount += 1
+ return assigncount
+
+ def unassignpoitems(self, session, search, assignedto, action=None):
+ """unassigns all the items matching the search to the assignedto user"""
+ if not "assign" in self.getrights(session):
+ raise RightsError(session.localize("You do not have rights to alter assignments here"))
+ if search.searchtext:
+ grepfilter = pogrep.GrepFilter(search.searchtext, None, ignorecase=True)
+ assigncount = 0
+ for pofilename in self.searchpofilenames(None, search, includelast=True):
+ pofile = self.getpofile(pofilename)
+ for item in pofile.iteritems(search, None):
+ # TODO: move this to iteritems
+ if search.searchtext:
+ unit = pofile.getitem(item)
+ if grepfilter.filterunit(unit):
+ pofile.getassigns().unassign(item, assignedto, action)
+ assigncount += 1
+ else:
+ pofile.getassigns().unassign(item, assignedto, action)
+ assigncount += 1
+ return assigncount
+
+ def getquickstats(self, pofilenames=None):
+ """Gets translated and total stats and wordcounts without doing calculations returning dictionary."""
+ if pofilenames is None:
+ pofilenames = self.pofilenames
+ result = {"translatedsourcewords": 0, "translated": 0,
+ "fuzzysourcewords": 0, "fuzzy": 0,
+ "totalsourcewords": 0, "total": 0}
+ for stats in (self.pofiles[key].statistics.getquickstats() for key in pofilenames):
+ for key in result:
+ result[key] += stats[key]
+ return result
+
+ def combinestats(self, pofilenames=None):
+ """combines translation statistics for the given po files (or all if None given)"""
+ if pofilenames is None:
+ pofilenames = self.pofilenames
+ pofilenames = [pofilename for pofilename in pofilenames
+ if pofilename != None and not os.path.isdir(pofilename)]
+ total_stats = self.combine_totals(pofilenames)
+ total_stats['units'] = self.combine_unit_stats(pofilenames)
+ total_stats['assign'] = self.combineassignstats(pofilenames)
+ return total_stats
+
+ def combine_totals(self, pofilenames):
+ totalstats = {}
+ for pofilename in pofilenames:
+ pototals = self.getpototals(pofilename)
+ for name, items in pototals.iteritems():
+ totalstats[name] = totalstats.get(name, 0) + pototals[name]
+ return totalstats
+
+ def combine_unit_stats(self, pofilenames):
+ unit_stats = {}
+ for pofilename in pofilenames:
+ postats = self.getpostats(pofilename)
+ for name, items in postats.iteritems():
+ unit_stats.setdefault(name, []).extend([(pofilename, item) for item in items])
+ return unit_stats
+
+ def combineassignstats(self, pofilenames=None, action=None):
+ """combines assign statistics for the given po files (or all if None given)"""
+ assign_stats = {}
+ for pofilename in pofilenames:
+ assignstats = self.getassignstats(pofilename, action)
+ for name, items in assignstats.iteritems():
+ assign_stats.setdefault(name, []).extend([(pofilename, item) for item in items])
+ return assign_stats
+
+ def countwords(self, stats):
+ """counts the number of words in the items represented by the stats list"""
+ wordcount = 0
+ for pofilename, item in stats:
+ pofile = self.pofiles[pofilename]
+ if 0 <= item < len(pofile.statistics.getunitstats()['sourcewordcount']):
+ wordcount += pofile.statistics.getunitstats()['sourcewordcount'][item]
+ print "projects::countwords()"
+ return wordcount
+
+ def getpomtime(self):
+ """returns the modification time of the last modified file in the project"""
+ return max([pofile.pomtime for pofile in self.pofiles.values()])
+ pomtime = property(getpomtime)
+
+ def track(self, pofilename, item, message):
+ """sends a track message to the pofile"""
+ self.pofiles[pofilename].track(item, message)
+
+ def gettracks(self, pofilenames=None):
+ """calculates translation statistics for the given po files (or all if None given)"""
+ alltracks = []
+ if pofilenames is None:
+ pofilenames = self.pofilenames
+ for pofilename in pofilenames:
+ if not pofilename or os.path.isdir(pofilename):
+ continue
+ tracker = self.pofiles[pofilename].tracker
+ items = tracker.keys()
+ items.sort()
+ for item in items:
+ alltracks.append("%s item %d: %s" % (pofilename, item, tracker[item]))
+ return alltracks
+
+ def getpostats(self, pofilename):
+ """calculates translation statistics for the given po file"""
+ return self.pofiles[pofilename].statistics.getstats()
+
+ def getpototals(self, pofilename):
+ """calculates translation statistics for the given po file"""
+ return self.pofiles[pofilename].statistics.getquickstats()
+
+ def getassignstats(self, pofilename, action=None):
+ """calculates translation statistics for the given po file (can filter by action if given)"""
+ polen = self.getpototals(pofilename).get("total", 0)
+ # Temporary code to avoid traceback. Was:
+# polen = len(self.getpostats(pofilename)["total"])
+ assigns = self.pofiles[pofilename].getassigns().getassigns()
+ assignstats = {}
+ for username, userassigns in assigns.iteritems():
+ allitems = []
+ for assignaction, items in userassigns.iteritems():
+ if action is None or assignaction == action:
+ allitems += [item for item in items if 0 <= item < polen and item not in allitems]
+ if allitems:
+ assignstats[username] = allitems
+ return assignstats
+
+ def getpofile(self, pofilename, freshen=True):
+ """parses the file into a pofile object and stores in self.pofiles"""
+ pofile = self.pofiles[pofilename]
+ if freshen:
+ pofile.pofreshen()
+ return pofile
+
+ def getpofilelen(self, pofilename):
+ """returns number of items in the given pofilename"""
+ pofile = self.getpofile(pofilename)
+ return len(pofile.total)
+
+ def getitems(self, pofilename, itemstart, itemstop):
+ """returns a set of items from the pofile, converted to original and translation strings"""
+ pofile = self.getpofile(pofilename)
+ units = [pofile.units[index] for index in pofile.total[max(itemstart,0):itemstop]]
+ return units
+
+ def updatetranslation(self, pofilename, item, newvalues, session):
+ """updates a translation with a new value..."""
+ if "translate" not in self.getrights(session):
+ raise RightsError(session.localize("You do not have rights to change translations here"))
+ pofile = self.pofiles[pofilename]
+ pofile.track(item, "edited by %s" % session.username)
+ languageprefs = getattr(session.instance.languages, self.languagecode, None)
+ pofile.updateunit(item, newvalues, session.prefs, languageprefs)
+ self.updateindex(self.indexer, pofilename, [item])
+
+ def suggesttranslation(self, pofilename, item, trans, session):
+ """stores a new suggestion for a translation..."""
+ if "suggest" not in self.getrights(session):
+ raise RightsError(session.localize("You do not have rights to suggest changes here"))
+ pofile = self.getpofile(pofilename)
+ pofile.track(item, "suggestion made by %s" % session.username)
+ pofile.addsuggestion(item, trans, session.username)
+
+ def getsuggestions(self, pofile, item):
+ """find all the suggestions submitted for the given (pofile or pofilename) and item"""
+ if isinstance(pofile, (str, unicode)):
+ pofilename = pofile
+ pofile = self.getpofile(pofilename)
+ suggestpos = pofile.getsuggestions(item)
+ return suggestpos
+
+ def acceptsuggestion(self, pofile, item, suggitem, newtrans, session):
+ """accepts the suggestion into the main pofile"""
+ if not "review" in self.getrights(session):
+ raise RightsError(session.localize("You do not have rights to review suggestions here"))
+ if isinstance(pofile, (str, unicode)):
+ pofilename = pofile
+ pofile = self.getpofile(pofilename)
+ pofile.track(item, "suggestion by %s accepted by %s" % (self.getsuggester(pofile, item, suggitem), session.username))
+ pofile.deletesuggestion(item, suggitem, newtrans)
+ self.updatetranslation(pofilename, item, {"target": newtrans, "fuzzy": False}, session)
+
+ def getsuggester(self, pofile, item, suggitem):
+ """returns who suggested the given item's suggitem if recorded, else None"""
+ if isinstance(pofile, (str, unicode)):
+ pofilename = pofile
+ pofile = self.getpofile(pofilename)
+ return pofile.getsuggester(item, suggitem)
+
+ def rejectsuggestion(self, pofile, item, suggitem, newtrans, session):
+ """rejects the suggestion and removes it from the pending file"""
+ if not "review" in self.getrights(session):
+ raise RightsError(session.localize("You do not have rights to review suggestions here"))
+ if isinstance(pofile, (str, unicode)):
+ pofilename = pofile
+ pofile = self.getpofile(pofilename)
+ pofile.track(item, "suggestion by %s rejected by %s" % (self.getsuggester(pofile, item, suggitem), session.username))
+ pofile.deletesuggestion(item, suggitem, newtrans)
+
+ def gettmsuggestions(self, pofile, item):
+ """find all the TM suggestions for the given (pofile or pofilename) and item"""
+ if isinstance(pofile, (str, unicode)):
+ pofilename = pofile
+ pofile = self.getpofile(pofilename)
+ tmsuggestpos = pofile.gettmsuggestions(item)
+ return tmsuggestpos
+
+ def isterminologyproject(self):
+ """returns whether this project is the main terminology project for a
+ language. Currently it is indicated by the project code 'terminology'"""
+ return self.projectcode == "terminology"
+
+ def gettermbase(self):
+ """returns this project's terminology store"""
+ if self.isterminologyproject():
+ if len(self.pofiles) > 0:
+ for termfile in self.pofiles.values():
+ termfile.pofreshen()
+ return self
+ else:
+ termfilename = "pootle-terminology."+self.fileext
+ if termfilename in self.pofiles:
+ termfile = self.getpofile(termfilename, freshen=True)
+ return termfile
+ return None
+
+ def gettermmatcher(self):
+ """returns the terminology matcher"""
+ termbase = self.gettermbase()
+ if termbase:
+ newmtime = termbase.pomtime
+ if newmtime != self.termmatchermtime:
+ self.termmatchermtime = newmtime
+ if self.isterminologyproject():
+ self.termmatcher = match.terminologymatcher(self.pofiles.values())
+ else:
+ self.termmatcher = match.terminologymatcher(termbase)
+ elif not self.isterminologyproject() and self.potree.hasproject(self.languagecode, "terminology"):
+ termproject = self.potree.getproject(self.languagecode, "terminology")
+ self.termmatcher = termproject.gettermmatcher()
+ self.termmatchermtime = termproject.termmatchermtime
+ else:
+ self.termmatcher = None
+ self.termmatchermtime = None
+ return self.termmatcher
+
+ def getterminology(self, session, pofile, item):
+ """find all the terminology for the given (pofile or pofilename) and item"""
+ try:
+ termmatcher = self.gettermmatcher()
+ if not termmatcher:
+ return []
+ if isinstance(pofile, (str, unicode)):
+ pofilename = pofile
+ pofile = self.getpofile(pofilename)
+ return termmatcher.matches(pofile.getitem(item).source)
+ except Exception, e:
+ session.server.errorhandler.logerror(traceback.format_exc())
+ return []
+
+ def savepofile(self, pofilename):
+ """saves changes to disk"""
+ pofile = self.getpofile(pofilename)
+ pofile.savepofile()
+
+ def getoutput(self, pofilename):
+ """returns pofile source"""
+ pofile = self.getpofile(pofilename)
+ return pofile.getoutput()
+
+ def convert(self, pofilename, destformat):
+ """converts the pofile to the given format, returning (etag_if_filepath, filepath_or_contents)"""
+ pofile = self.getpofile(pofilename, freshen=False)
+ destfilename = pofile.filename[:-len(self.fileext)] + destformat
+ destmtime = statistics.getmodtime(destfilename)
+ pomtime = statistics.getmodtime(pofile.filename)
+ if pomtime and destmtime == pomtime:
+ try:
+ return pomtime, destfilename
+ except Exception, e:
+ print "error reading cached converted file %s: %s" % (destfilename, e)
+ pofile.pofreshen()
+ converters = {"csv": po2csv.po2csv, "xlf": po2xliff.po2xliff, "po": xliff2po.xliff2po, "ts": po2ts.po2ts, "mo": pocompile.POCompile}
+ converterclass = converters.get(destformat, None)
+ if converterclass is None:
+ raise ValueError("No converter available for %s" % destfilename)
+ contents = converterclass().convertstore(pofile)
+ if not isinstance(contents, basestring):
+ contents = str(contents)
+ try:
+ destfile = open(destfilename, "w")
+ destfile.write(contents)
+ destfile.close()
+ currenttime, modtime = time.time(), pofile.pomtime
+ os.utime(destfilename, (currenttime, modtime))
+ return modtime, destfilename
+ except Exception, e:
+ print "error caching converted file %s: %s" % (destfilename, e)
+ return False, contents
+
+ def gettext(self, message):
+ """uses the project as a live translator for the given message"""
+ for pofilename, pofile in self.pofiles.iteritems():
+ if pofile.pomtime != statistics.getmodtime(pofile.filename):
+ pofile.readpofile()
+ pofile.makeindex()
+ elif not hasattr(pofile, "sourceindex"):
+ pofile.makeindex()
+ unit = pofile.sourceindex.get(message, None)
+ if not unit or not unit.istranslated():
+ continue
+ tmsg = unit.target
+ if tmsg is not None:
+ return tmsg
+ return message
+
+ def ugettext(self, message):
+ """gets the translation of the message by searching through all the pofiles (unicode version)"""
+ for pofilename, pofile in self.pofiles.iteritems():
+ try:
+ if pofile.pofreshen() or not hasattr(pofile, "sourceindex"):
+ pofile.makeindex()
+ unit = pofile.sourceindex.get(message, None)
+ if not unit or not unit.istranslated():
+ continue
+ tmsg = unit.target
+ if tmsg is not None:
+ if isinstance(tmsg, unicode):
+ return tmsg
+ else:
+ return unicode(tmsg, pofile.encoding)
+ except Exception, e:
+ print "error reading translation from pofile %s: %s" % (pofilename, e)
+ return unicode(message)
+
+ def ungettext(self, singular, plural, n):
+ """gets the plural translation of the message by searching through all the pofiles (unicode version)"""
+ for pofilename, pofile in self.pofiles.iteritems():
+ try:
+ if pofile.pomtime != statistics.getmodtime(pofile.filename):
+ pofile.readpofile()
+ pofile.makeindex()
+ elif not hasattr(pofile, "sourceindex"):
+ pofile.makeindex()
+ nplural, pluralequation = pofile.getheaderplural()
+ if pluralequation:
+ pluralfn = gettext.c2py(pluralequation)
+ unit = pofile.sourceindex.get(singular, None)
+ if not unit or not unit.istranslated():
+ continue
+ tmsg = unit.target.strings[pluralfn(n)]
+ if tmsg is not None:
+ if isinstance(tmsg, unicode):
+ return tmsg
+ else:
+ return unicode(tmsg, pofile.encoding)
+ except Exception, e:
+ print "error reading translation from pofile %s: %s" % (pofilename, e)
+ if n == 1:
+ return unicode(singular)
+ else:
+ return unicode(plural)
+
+ def hascreatemofiles(self, projectcode):
+ """returns whether the project has createmofile set"""
+ return self.potree.getprojectcreatemofiles(projectcode) == 1
+
+class DummyProject(TranslationProject):
+ """a project that is just being used for handling pootlefiles"""
+ def __init__(self, podir, checker=None, projectcode=None, languagecode=None):
+ """initializes the project with the given podir"""
+ self.podir = podir
+ if checker is None:
+ self.checker = checks.TeeChecker()
+ else:
+ self.checker = checker
+ self.projectcode = projectcode
+ self.languagecode = languagecode
+
+ def scanpofiles(self):
+ """A null operation if potree is not present"""
+ pass
+
+class DummyStatsProject(DummyProject):
+ """a project that is just being used for refresh of statistics"""
+ def __init__(self, podir, checker, projectcode=None, languagecode=None):
+ """initializes the project with the given podir"""
+ DummyProject.__init__(self, podir, checker, projectcode, languagecode)
+
+class TemplatesProject(TranslationProject):
+ """Manages Template files (.pot files) for a project"""
+ fileext = "pot"
+ def __init__(self, projectcode, potree):
+ super(TemplatesProject, self).__init__("templates", projectcode, potree, create=False)
+
+ def getrights(self, session=None, username=None, usedefaults=True):
+ """gets the rights for the given user (name or session, or not-logged-in if username is None)"""
+ # internal admin sessions have all rights
+ # We don't send the usedefaults parameter through, because we don't want users of this method to
+ # change the default behaviour in a template project. Yes, I know: ignorance and deceit.
+ rights = super(TemplatesProject, self).getrights(session=session, username=username)
+ if rights is not None:
+ rights = [right for right in rights if right not in ["translate", "suggest", "pocompile"]]
+ return rights
+
diff --git a/Pootle-1.2.1/Pootle/request_cache.py b/Pootle-1.2.1/Pootle/request_cache.py
new file mode 100644
index 0000000..a66f693
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/request_cache.py
@@ -0,0 +1,34 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2008 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+_data = {}
+
+def call(func, *args, **kwargs):
+ key = (func, tuple(args), tuple(kwargs.iterkeys()), tuple(kwargs.itervalues()))
+ if key in _data:
+ return _data[key]
+ else:
+ result = func(*args, **kwargs)
+ _data[key] = result
+ return result
+
+def reset():
+ _data.clear()
diff --git a/Pootle-1.2.1/Pootle/statistics.py b/Pootle-1.2.1/Pootle/statistics.py
new file mode 100644
index 0000000..27b4e75
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/statistics.py
@@ -0,0 +1,64 @@
+from translate.storage import statsdb
+import request_cache
+import traceback
+
+STATS_DB_FILE = None
+
+def getmodtime(filename):
+ try:
+ mtime, _size = statsdb.get_mod_info(filename)
+ return mtime
+ except:
+ return None
+
+_complaint_status = set()
+
+def _complain(message, filename):
+ if filename not in _complaint_status:
+ print message % filename
+ _complaint_status.add(filename)
+ traceback.print_exc()
+
+class pootlestatistics:
+ """this represents the statistics known about a file"""
+ def __init__(self, basefile):
+ """constructs statistic object for the given file"""
+ # TODO: try and remove circular references between basefile and this class
+ self.basefile = basefile
+ self.statscache = statsdb.StatsCache(STATS_DB_FILE)
+
+ def getquickstats(self):
+ """returns the quick statistics (totals only)"""
+ try:
+ return request_cache.call(self.statscache.filetotals, self.basefile.filename) or statsdb.emptyfiletotals()
+ except:
+ _complain(u'Could not compute file totals for %s', self.basefile.filename)
+ return statsdb.emptyfiletotals()
+
+ def getstats(self, checker=None):
+ """reads the stats if neccessary or returns them from the cache"""
+ if checker == None:
+ checker = self.basefile.checker
+ try:
+ return request_cache.call(self.statscache.filestats, self.basefile.filename, checker)
+ except:
+ _complain(u'Could not compute statistics for %s', self.basefile.filename)
+ return statsdb.emptyfilestats()
+
+ def getunitstats(self):
+ try:
+ return request_cache.call(self.statscache.unitstats, self.basefile.filename)
+ except:
+ _complain(u'Could not compute word counts for %s', self.basefile.filename)
+ return statsdb.emptyunitstats()
+
+ def reclassifyunit(self, item):
+ """Reclassifies all the information in the database and self._stats about
+ the given unit"""
+ unit = self.basefile.getitem(item)
+ self.statscache.recacheunit(self.basefile.filename, self.basefile.checker, unit)
+ self._memoize_table = {}
+
+ def getitemslen(self):
+ """gets the number of items in the file"""
+ return self.getquickstats()["total"]
diff --git a/Pootle-1.2.1/Pootle/templates/__init__.py b/Pootle-1.2.1/Pootle/templates/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/__init__.py
diff --git a/Pootle-1.2.1/Pootle/templates/about.html b/Pootle-1.2.1/Pootle/templates/about.html
new file mode 100644
index 0000000..7cf41e2
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/about.html
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title>${pagetitle}</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <meta name="description" content="${meta_description}" />
+ <meta name="keywords" content="${', '.join(keywords)}" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="contents">
+ <h3 class="title" py:content="pagetitle">Pootle</h3>
+
+ <div class="intro" py:content="XML(description)">
+ this is a demo installation of pootle
+ </div>
+
+ <h3 class="title" py:content="abouttitle">About Pootle</h3>
+
+ <div class="info" py:content="XML(introtext)">
+ <strong>Pootle</strong> is a simple web portal that should allow you to <strong>translate</strong>! Since Pootle is <strong>Free Software</strong>, you
+ can download it and run your own copy if you like. You can also help participate in the development in many ways (you don't have to be able to
+ program).
+ </div>
+
+ <div class="info" py:content="XML(hosttext)">
+ The Pootle project itself is hosted at <a href="http://translate.sourceforge.net/">translate.sourceforge.net</a> where you can find the details about
+ source code, mailing lists etc.
+ </div>
+
+ <div class="info" py:content="XML(nametext)">
+ The name stands for <b>PO</b>-based <b>O</b>nline <b>T</b>ranslation / <b>L</b>ocalization <b>E</b>ngine, but you may need to read <a href=
+ "http://www.thechestnut.com/flumps.htm">this</a>.
+ </div>
+
+ <h3 class="title" py:content="versiontitle">Versions</h3>
+
+ <div class="info" py:content="XML(versiontext)">
+ This site is running:<br />
+ Pootle<br />
+ Translate Toolkit<br />
+ jToolkit<br />
+ Python
+ </div>
+ </div>
+ </div>
+
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/activate.html b/Pootle-1.2.1/Pootle/templates/activate.html
new file mode 100644
index 0000000..096a16f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/activate.html
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle Account Activation</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="intro" py:content="introtext">
+ Please enter your activation details
+ </div>
+
+ <form action="" enctype="multipart/form-data" method="post" name="activate" id="activate">
+ <table cellpadding="1" width="70%" border="0" cellspacing="1">
+ <tr>
+ <td colspan="1" style="width: 33%" rowspan="1" valign="top">
+ <span title="${username_tooltip}" py:content="username_title">Username</span>
+ </td>
+
+ <td colspan="1" style="width: 66%" rowspan="1" valign="top">
+ <input style="width: 100%" type="text" name="username" value="${username}" />
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" style="width: 33%" rowspan="1" valign="top">
+ <span title="${code_tooltip}" py:content="code_title">Activation Code</span>
+ </td>
+
+ <td colspan="1" style="width: 66%" rowspan="1" valign="top">
+ <input style="width: 100%" type="text" name="activationcode" value="${code}" />
+ </td>
+ </tr>
+ </table><input type="submit" name="activate" value="${activate_text}" />
+ </form>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/adminindex.html b/Pootle-1.2.1/Pootle/templates/adminindex.html
new file mode 100644
index 0000000..e25c918
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/adminindex.html
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st January 2004), see www.w3.org" />
+
+ <title>Pootle Admin Page</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="fullwidthcontent" py:if="not session.issiteadmin" dir="$uidir" lang="$uilanguage">
+ <div class="intro">
+ You do not have the rights to administer Pootle
+ </div>
+ </div>
+ <div id="fullwidthcontent" py:if="session.issiteadmin" dir="$uidir" lang="$uilanguage">
+ <div class="info">
+ <a href="../home/" py:content="text.home">Home</a>
+ </div>
+
+ <div class="info">
+ <a href="users.html" py:content="text.users">Users</a>
+ </div>
+
+ <div class="info">
+ <a href="languages.html" py:content="text.languages">Languages</a>
+ </div>
+
+ <div class="info">
+ <a href="projects.html" py:content="text.projects">Projects</a>
+ </div>
+
+ <div class="contents">
+ <h3 class="title" py:content="text.generaloptions">General Options</h3>
+
+ <form action="" method="post" name="general" id="general">
+ <table cellpadding="1" cellspacing="1">
+ <tr>
+ <td colspan="1" rowspan="1">
+ <h3 class="title" py:content="text.option">Option</h3>
+ </td>
+
+ <td colspan="1" rowspan="1">
+ <h3 class="title" py:content="text.currentvalue">Current value</h3>
+ </td>
+ </tr>
+
+ <tr py:for="option in options">
+ <td colspan="1" rowspan="1" py:content="option.title">Description</td>
+
+ <td colspan="1" rowspan="1"><input type="text" name="${option.name}" value="${option.value}"/></td>
+ </tr>
+
+ </table><input type="submit" name="changegeneral" value="${text.savechanges}" />
+ </form>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/adminlanguages.html b/Pootle-1.2.1/Pootle/templates/adminlanguages.html
new file mode 100644
index 0000000..b318bd0
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/adminlanguages.html
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st January 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle Languages Admin Page</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" py:if="not session.issiteadmin" dir="$uidir" lang="$uilanguage">
+ <div class="intro">
+ You do not have the rights to administer Pootle
+ </div>
+ </div>
+ <div id="fullwidthcontent" py:if="session.issiteadmin" dir="$uidir" lang="$uilanguage">
+ <div class="info">
+ <a href="../home/" py:content="text.home">Home page</a>
+ </div>
+
+ <div class="info">
+ <a href="index.html" py:content="text.admin">Main Admin page</a>
+ </div>
+
+ <div class="fullwidthcontents">
+ <h3 class="title" py:content="text.languages">Languages</h3>
+
+ <form action="" method="post" name="languages" id="languages">
+ <table cellpadding="1" cellspacing="1">
+ <tr>
+ <td colspan="1" rowspan="1" py:for="option in options">
+ <h3 class="title" py:content="option.title">ISO Code</h3>
+ </td>
+ </tr>
+
+ <tr py:for="language in languages">
+ <td colspan="1" rowspan="1" py:content="language.code">code</td>
+
+ <td colspan="1" rowspan="1" py:for="option in language.options">
+ <input name="${option.name}" type="${option.type}" value="${option.value}"/>
+ <span py:if="option.label" py:content="option.label"/>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" rowspan="1" style="min-width: 6em;" py:for="option in options">
+ <input type="text" py:if="option.newname" name="${option.newname}" value="${option.newvalue}" size="${option.size}"/>
+ </td>
+ </tr>
+ </table><input type="submit" name="changelanguages" value="${text.savechanges}" />
+ </form>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/adminprojects.html b/Pootle-1.2.1/Pootle/templates/adminprojects.html
new file mode 100644
index 0000000..353e54c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/adminprojects.html
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st January 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle Projects Admin Page</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" py:if="not session.issiteadmin" dir="$uidir" lang="$uilanguage">
+ <div class="intro">
+ You do not have the rights to administer Pootle
+ </div>
+ </div>
+ <div id="fullwidthcontent" py:if="session.issiteadmin" dir="$uidir" lang="$uilanguage">
+ <div class="info">
+ <a href="../home/" py:content="text.home">Home page</a>
+ </div>
+
+ <div class="info">
+ <a href="index.html" py:content="text.admin">Main Admin page</a>
+ </div>
+
+ <div class="fullwidthcontents">
+ <h3 class="title" py:content="text.projects">Projects</h3>
+
+ <form action="" method="post" name="projects" id="projects">
+ <table cellpadding="1" cellspacing="1">
+ <tr>
+ <td colspan="1" rowspan="1" py:for="option in options">
+ <h3 class="title" py:content="option.title">Project Code</h3>
+ </td>
+ </tr>
+
+ <tr py:for="project in projects">
+ <td colspan="1" rowspan="1"><a href="${project.adminlink}" py:content="project.code">code</a></td>
+
+ <td colspan="1" rowspan="1" py:for="option in project.options">
+ <input type="${option.type}" name="${option.name}" value="${option.value}" checked="${option.checked}" py:if="not option.selectoptions"/>
+ <select name="${option.name}" value="${option.value}" py:if="'selectoptions' in option">
+ <span py:for="o in option.selectoptions" py:strip="True">
+ <option py:if="o.value == option.value" selected="selected" value="${o.value}" py:content="o.description"/>
+ <option py:if="o.value != option.value" value="${o.value}" py:content="o.description"/>
+ </span>
+ </select>
+ <span py:if="'label' in option" py:content="option.label"/>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" rowspan="1" style="min-width: 6em;" py:for="option in options">
+ <span py:if="'newname' in option">
+ <input type="${option.type}" py:if="not option.selectoptions" value="${option.newvalue}" name="${option.newname}" size="${option.size}"/>
+ <select name="${option.newname}" value="${option.newvalue}" py:if="'selectoptions' in option">
+ <option py:for="o in option.selectoptions" value="${o.value}" py:content="o.description"/>
+ </select>
+ </span>
+ </td>
+ </tr>
+ </table><input type="submit" name="changeprojects" value="${text.savechanges}" />
+ </form>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/adminusers.html b/Pootle-1.2.1/Pootle/templates/adminusers.html
new file mode 100644
index 0000000..c6af9ae
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/adminusers.html
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st January 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle User Admin Page</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" py:if="not session.issiteadmin" dir="$uidir" lang="$uilanguage">
+ <div class="intro">
+ You do not have the rights to administer Pootle
+ </div>
+ </div>
+ <div id="fullwidthcontent" py:if="session.issiteadmin" dir="$uidir" lang="$uilanguage">
+ <div class="info">
+ <a href="../home/" py:content="text.home">Home page</a>
+ </div>
+
+ <div class="info">
+ <a href="index.html" py:content="text.admin">Admin page</a>
+ </div>
+
+ <div class="fullwidthcontents">
+ <h3 class="title" py:content="text.users">Users</h3>
+
+ <form action="" method="post" name="users" id="users">
+ <table cellpadding="1" cellspacing="1">
+ <tr>
+ <td colspan="1" rowspan="1" py:for="option in options">
+ <h3 class="title" py:content="option.title">Login</h3>
+ </td>
+ </tr>
+
+ <tr py:for="user in users">
+ <td colspan="1" rowspan="1" py:content="user.code">davidfraser</td>
+
+ <td colspan="1" rowspan="1" py:for="option in user.options">
+ <input name="${option.name}" type="${option.type}" value="${option.value}" checked="${option.checked}"/>
+ <span py:if="option.label" py:content="option.label"/>
+ </td>
+
+ </tr>
+
+ <tr>
+ <td colspan="1" rowspan="1" py:for="option in options">
+ <input py:if="option.newname" name="${option.newname}" type="${option.type}" value="${option.newvalue}" size="${option.size}" checked="${option.checked}"/>
+ <span py:if="option.label" py:content="option.label"/>
+ </td>
+ </tr>
+ </table><input type="submit" name="changeusers" value="${text.savechanges}" />
+ </form>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/error.html b/Pootle-1.2.1/Pootle/templates/error.html
new file mode 100644
index 0000000..967e0cd
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/error.html
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Error</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <meta py:if="refresh" http-equiv="Refresh" content="${refresh}; URL=${refreshurl}" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="contents"><h3 class="title" py:content="pagetitle">Error</h3>
+ <div class="item-description" py:if="message" py:content="message">An error occured</div>
+ <div class="item-description" py:if="traceback"><pre py:content="traceback">Traceback (most recent call last):</pre></div>
+ <a href="javascript:history.back();" py:content="back">Back</a>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/fileindex.html b/Pootle-1.2.1/Pootle/templates/fileindex.html
new file mode 100644
index 0000000..b19d0ab
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/fileindex.html
@@ -0,0 +1,163 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage, navbar
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle: Project ${project.name}, Language ${language.name}</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--! the 'sorttable.js' script depends on the variable 'baseurl' -->
+ <script type="text/javascript"> var baseurl = "${baseurl}"; </script>
+ <script type="text/javascript" src="${baseurl}js/sorttable.js"></script>
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+ <script type="text/javascript" src="${baseurl}js/jquery/jquery.js"></script>
+ <script type="text/javascript" src="${baseurl}js/search.js"></script>
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="intro" py:if="message" py:content="message">Message</div>
+
+ <div class="navbar" py:for="item in navitems">
+ <!--! search form -->
+ <div py:if="search" class="searchform" dir="$uidir" lang="$uilanguage">
+ <form action="translate.html" method="post" name="searchform" id="searchform">
+ <label class="inputHint" for="searchtext">${search.title}</label>
+ <input type="text" size="15" name="searchtext" id="searchtext" value="" />
+ <a class="advancedlink"><img src="${baseurl}images/bullet_arrow_down.png" title="${search.advanced_title}" class="togglesearch" /></a>
+ <div class="advancedsearch" dir="$uidir">
+ <span py:for="field in search.fields" py:strip="True">
+ <?python checkedflag = field.checked ?>
+ <input type="checkbox" name="${field.name}" id="${field.name}" value="1" py:attrs="checked=checkedflag" />
+ <label dir="$uidir" for="${field.name}" py:content="field.text"></label><br />
+ </span>
+ </div>
+ </form>
+ </div>
+ <!--! Navigation bar -->
+ <h3 py:def="itemtitle(item)" id="itemtitle" class="title">
+ <a href="${item.href}">${item.title}</a>
+ <span py:strip="True" py:if="item.path.language">[ <a href="${item.path.language.href}">${item.path.language.text}</a> ]</span>
+ <span py:strip="True" py:if="item.path.project">[ <a href="${item.path.project.href}">${item.path.project.text}</a> ]</span>
+ <span py:strip="True" py:for="pathlink in item.path.pathlinks">
+ <a href="${pathlink.href}">${pathlink.text}</a>${pathlink.sep}
+ <i py:if="item.path.goal"><a href="${item.path.goal.href}">${item.path.goal.text}</a></i>
+ </span>
+ </h3>
+ <div py:replace="navbar.item_block(item, uidir, uilanguage, baseurl, itemtitle(item))" class="contentsitem"/>
+ <div py:replace="navbar.itemstats(item)"/>
+ </div>
+
+ <!--! The statistics view -->
+ <div py:if="not editing and children">
+ <br clear="all" />
+ <table class="sortable stats" id="stats" cellpadding="5" cellspacing="0" width="100%">
+ <thead>
+ <tr>
+ <th class="stats">${statsheadings.name}</th>
+ <th class="stats">${statsheadings.translated}</th>
+ <th class="stats" title="${statsheadings.translatedpercentage}">%</th>
+ <th class="stats">${statsheadings.fuzzy}</th>
+ <th class="stats" title="${statsheadings.fuzzypercentage}">%</th>
+ <th class="stats">${statsheadings.untranslated}</th>
+ <th class="stats" title="${statsheadings.untranslatedpercentage}">%</th>
+ <th class="stats">${statsheadings.total}</th>
+ <th class="stats">${statsheadings.graph}</th>
+ </tr>
+ </thead>
+ <tbody class="stats">
+ <div py:for="item in children" py:strip="True">
+ <tr class="item item-${item.parity}">
+ <div py:replace="navbar.itemdata(item, uidir, uilanguage, baseurl)"/>
+ </tr>
+ </div>
+ </tbody>
+ </table>
+ </div>
+
+ <!--! The editing view -->
+ <div py:def="show_goals(item)">
+ <div py:if="item.goal.users or item.goal.show_adduser">
+ <img src="${baseurl}images/person.png" class="icon" alt="" dir="$uidir" lang="$uilanguage" />
+ <span py:for="user in item.goal.users" py:strip="True">${user.name}${user.sep}</span>
+ <form py:if="item.goal.show_adduser" action="" method="post" name="goaluserform">
+ <input type="hidden" name="editgoalname" value="${item.goal.name}"/>
+ <select name="newgoaluser">
+ <option py:for="user in item.goal.otherusers" value="${user}" py:content="item.goal.otherusers[user].description">Username</option>
+ </select>
+ <input type="submit" name="doeditgoalusers" value="${item.goal.adduser_title}"/>
+ </form>
+ </div>
+ </div>
+
+ <div py:if="editing" py:for="item in children" py:strip="True">
+ <div py:if="'isgoal' in item" class="goalitem">
+ <div py:replace="navbar.item_block(item, uidir, uilanguage, baseurl, show_goals(item))"/>
+ <div py:replace="navbar.itemstats(item)"/>
+ </div>
+
+ <div py:if="'isdir' in item" class="item item-${item.parity}">
+ <div py:replace="navbar.item_block(item, uidir, uilanguage, baseurl)"/>
+ <div py:replace="navbar.itemstats(item)"/>
+ </div>
+
+ <div py:if="'isfile' in item" class="item item-${item.parity}">
+ <div py:replace="navbar.item_block(item, uidir, uilanguage, baseurl)"/>
+ <div py:replace="navbar.itemstats(item)"/>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ <div py:def="extra_links()">
+ <div class="sidetitle" py:if="assign" py:content="assign.title">
+ Assign Strings
+ </div>
+
+ <form py:if="assign" action="" method="post" name="assignform">
+ <select name="assignto" title="${assign.users_text}">
+ <option py:for="user in assign.users" value="${user}" py:content="assign.users[user].description">Username</option>
+ </select>
+ <input type="text" name="action" value="translate" title="${assign.action_text}" />
+ <input type="submit" name="doassign" value="${assign.button}" />
+ </form>
+
+ <div class="sidetitle" py:if="goals" py:content="goals.title">
+ Goals
+ </div>
+
+ <form py:if="goals" action="" method="post" name="goalform">
+ <input type="text" name="newgoal" title="${goals.name_title}" />
+ <input type="submit" name="doaddgoal" value="${goals.button}" />
+ </form>
+
+ <div class="sidetitle" py:if="upload" py:content="upload.title">
+ Upload File
+ </div>
+
+ <form py:if="upload" action="" method="post" name="uploadform" enctype="multipart/form-data">
+ <div>
+ <input type="file" name="uploadfile" size="15" class="upload" title="${upload.file_title}" />
+ </div>
+ <div py:if="upload.overwrite">
+ <input type="radio" name="dooverwrite" value="Yes" title="${upload.overwrite_title}" py:content="upload.overwrite"/>
+ <input type="radio" name="dooverwrite" checked="checked" value="No" title="${upload.merge_title}" py:content="upload.merge"/>
+ </div>
+ <input type="submit" name="doupload" value="${upload.upload_button}" />
+ </form>
+ </div>
+
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl, extra_links())"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/home.html b/Pootle-1.2.1/Pootle/templates/home.html
new file mode 100644
index 0000000..32ca1a4
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/home.html
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import navbar, pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">User Page for: ${username}</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="fullwidthcontent" dir="$uidir" lang="$uilanguage">
+ <div class="contents"><h3 class="title" py:content="quicklinkstitle">Quick Links</h3>
+ <div py:for="language in quicklinks" py:strip="True">
+ <h3 class="title">
+ <a href="../${language.code}/" py:content="language.name">Language</a>
+ </h3>
+ <div py:if="language.projects" class="item-description">
+ <span py:for="project in language.projects" py:strip="True">
+ <a href="../${language.code}/${project.code}/" py:content="project.name">Language Project</a>
+ <span py:if="project.isprojectadmin" py:strip="True">
+ (<a href="../${language.code}/${project.code}/admin.html" py:content="admintext">Admin</a>)
+ </span>
+ <span py:replace="XML(project.sep)"/>
+ </span>
+ </div>
+ </div>
+ <div py:if="not quicklinks" class="item-description" py:content="setoptionstext">
+ Please click on 'Change options' and select some languages and projects
+ </div>
+ </div>
+
+ <div class="info">
+ <a href="options.html" py:content="optionslink">Change options</a>
+ </div>
+
+ <div class="info" py:if="session.issiteadmin">
+ <a href="../admin/" py:content="adminlink">Admin page</a>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/index.html b/Pootle-1.2.1/Pootle/templates/index.html
new file mode 100644
index 0000000..72b6b4e
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/index.html
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import navbar, pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <meta name="description" content="${meta_description}" />
+ <meta name="keywords" content="${', '.join(keywords)}" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="contents">
+ <h3 class="title" py:content="pagetitle">Pootle</h3>
+
+ <div class="intro" py:content="XML(description)">
+ this is a demo installation of pootle
+ </div>
+
+ <h3 class="title"><a href="languages/" py:content="languagelink">Languages</a></h3>
+
+ <div class="item-description">
+ <span py:for="l in languages" py:strip="True"><a href="${l.code}/" py:content="l.name">Language</a>${l.sep}</span>
+ </div>
+ </div>
+
+ <div class="contents">
+ <h3 class="title"><a href="projects/" py:content="projectlink">Projects</a></h3>
+
+ <div class="item-description" lang="en">
+ <span py:for="p in projects" py:strip="True"><a href="projects/${p.code}/" title="${p.description}" py:content="p.name">Project</a>${p.sep}</span>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/language.html b/Pootle-1.2.1/Pootle/templates/language.html
new file mode 100644
index 0000000..244c504
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/language.html
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage, navbar
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle: ${language.name}</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--! the 'sorttable.js' script depends on the variable 'baseurl' -->
+ <script type="text/javascript"> var baseurl = "${baseurl}"; </script>
+ <script type="text/javascript" src="${baseurl}js/sorttable.js"></script>
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="navbar">
+ <img src="${baseurl}images/language.png" class="icon" alt="" dir="$uidir" lang="$uilanguage" />
+
+ <h3 class="title">[ <a href="${baseurl}${language.code}/" py:content="language.name">Language</a> ]</h3>
+
+ <div class="item-statistics" py:content="language.stats">
+ 0 projects, average 0% translated
+ </div>
+ </div>
+
+ <div class="intro">
+ <span py:for="i in language.info" py:strip="True"><b>${i.title}</b>: ${i.value}<br/></span>
+ </div>
+
+ <table class="sortable stats" id="stats" cellpadding="5" cellspacing="0" width="100%">
+ <thead>
+ <tr>
+ <th class="stats">${statsheadings.name}</th>
+ <th class="stats">${statsheadings.translated}</th>
+ <th class="stats" title="${statsheadings.translatedpercentage}">%</th>
+ <th class="stats">${statsheadings.fuzzy}</th>
+ <th class="stats" title="${statsheadings.fuzzypercentage}">%</th>
+ <th class="stats">${statsheadings.untranslated}</th>
+ <th class="stats" title="${statsheadings.untranslatedpercentage}">%</th>
+ <th class="stats">${statsheadings.total}</th>
+ <th class="stats">${statsheadings.graph}</th>
+ </tr>
+ </thead>
+ <tbody class="stats">
+ <div py:for="item in projects" py:strip="True">
+ <tr class="item item-${item.parity}" title="${item.description}">
+ <div py:replace="navbar.itemdata(item, uidir, uilanguage, baseurl)"/>
+ </tr>
+ </div>
+ </tbody>
+ </table>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/languages.html b/Pootle-1.2.1/Pootle/templates/languages.html
new file mode 100644
index 0000000..40a5345
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/languages.html
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import navbar, pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="contents">
+ <h3 class="title" py:content="languagelink">Languages</h3>
+
+ <div class="item-description">
+ <span py:for="l in languages" py:strip="True"><a href="../${l.code}/" py:content="l.name">Language</a>${l.sep}</span>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/login.html b/Pootle-1.2.1/Pootle/templates/login.html
new file mode 100644
index 0000000..1848496
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/login.html
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import navbar, pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Login to Pootle</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="intro" py:if="introtext" py:content="introtext">
+ Login failed
+ </div>
+ <form action="" method="post" name="loginform" id="loginform">
+ <table cellpadding="1" width="70%" cellspacing="1">
+ <tr>
+ <td colspan="1" rowspan="1" style="width: 33%" py:content="username_title">Username:</td>
+
+ <td colspan="1" rowspan="1" style="width: 66%">
+ <input style="width: 100%" type="text" name="username" value="${username}" />
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" rowspan="1" py:content="password_title">Password:</td>
+
+ <td colspan="1" rowspan="1">
+ <input style="width: 100%" type="password" name="password" value="" />
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" rowspan="1" py:content="language_title">Language:</td>
+
+ <td colspan="1" rowspan="1">
+ <select style="width: 100%" name="language">
+ <option py:for="l in languages" py:attrs="selected=l.selected" value="${l.code}" py:content="l.name">
+ Language Name
+ </option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <input type="submit" name="Login" value="${login_text}" />
+ <input type="hidden" name="islogin" value="true" />
+ </form>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
+
diff --git a/Pootle-1.2.1/Pootle/templates/navbar.kid b/Pootle-1.2.1/Pootle/templates/navbar.kid
new file mode 100644
index 0000000..601a737
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/navbar.kid
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="utf-8"?>
+<include-this xmlns:py="http://purl.org/kid/ns#">
+ <div py:def="item_block(item, uidir, uilanguage, baseurl, block=None)" class="contentsitem">
+ <img src="${baseurl}images/${item.icon}.png" class="icon" alt="" dir="$uidir" lang="$uilanguage" />
+ <h3 py:if="item.title" id="itemtitle" class="title"><a href="${item.href}">${item.title}</a></h3>
+ <div py:if="block != None" py:replace="block"/>
+ <div id="actionlinks" class="item-description" py:if="item.actions">
+ <span py:for="link in item.actions.basic" py:strip="True">
+ <a href="${link.href}" title="${link.title}">${link.text}</a>
+ ${link.sep}
+ </span>
+ <form py:if="item.actions.goalform" action="" name="${item.actions.goalform.name}" method="post">
+ <input type="hidden" name="editgoalfile" value="${item.actions.goalform.filename}"/>
+ <select name="editgoal" py:attrs="multiple=item.actions.goalform.multifiles">
+ <option value=""/>
+ <option py:for="goalname in item.actions.goalform.goalnames" value="${goalname}" py:content="goalname" selected="${item.actions.goalform.filegoals[goalname]}">Goal</option>
+ </select>
+ <input py:if="item.actions.goalform.multifiles" type="hidden" name="allowmultikey" value="editgoal"/>
+ <input type="submit" name="doeditgoal" value="${item.actions.goalform.setgoal_text}"/>
+ <span py:if="item.actions.goalform.users" py:strip="True">
+ <select name="editfileuser" py:attrs="multiple=item.actions.goalform.multiusers">
+ <option value=""/>
+ <option py:for="user in item.actions.goalform.users" value="${user}" py:content="user" selected="${item.actions.goalform.assignusers[user]}">Username</option>
+ </select>
+ <a py:if="not item.actions.goalform.multiusers" href="#" onclick="var userselect = document.forms.${item.actions.goalform.name}.editfileuser; userselect.multiple = true; return false" py:content="item.actions.goalform.selectmultiple_text">Select Multiple</a>
+ <input type="hidden" name="allowmultikey" value="editfileuser"/>
+ <select name="edituserwhich">
+ <option py:for="a in item.actions.goalform.assignwhich" value="${a.value}">${a.text}</option>
+ </select>
+ <input type="submit" name="doedituser" value="${item.actions.goalform.assignto_text}"/>
+ </span>
+ </form>
+ <span py:for="link in item.actions.extended" py:strip="True">
+ <a href="${link.href}" title="${link.title}">${link.text}</a>
+ ${link.sep}
+ </span>
+ </div>
+ </div>
+
+ <div py:def="itemstats(item)" class="item-statistics">
+ <span py:if="item.stats.summary" py:replace="XML(item.stats.summary)">
+ 2/2 words (100%) translated <span class="string-statistics">[2/2 strings]</span>
+ </span>
+ <span py:for="check in item.stats.checks" py:strip="True">
+ <br />
+ <a href="${check.href}" py:content="check.text">checkname</a>
+ <span py:content="check.stats" py:strip="True">3 strings (20%) failed</span>
+ </span>
+ <span py:for="track in item.stats.tracks" py:strip="True"><br />${track}</span>
+ <span py:for="astats in item.stats.assigns" py:strip="True">
+ <br /><a href="${astats.assign.href}">${astats.assign.text}</a>: ${astats.stats}
+ <span class='string-statistics'>${astats.stringstats}</span> -
+ ${astats.completestats} <span class='string-statistics'>${astats.completestringstats}</span>
+ <a py:if="astats.remove" href="${astats.remove.href}">${astats.remove.text}</a>
+ </span>
+ </div>
+
+ <div py:def="itemdata(item, uidir, uilanguage, baseurl)">
+ <td class="stats-name">
+ <img src="${baseurl}images/${item.icon}.png" class="icon" alt="" dir="$uidir" lang="$uilanguage" />
+ <a href="${item.href}" lang="en" dir="ltr">${item.title}</a>
+ </td>
+ <span py:if="item.data" py:strip="True">
+ <td class="stats">${item.data.translatedsourcewords}</td><td class="stats">${item.data.translatedpercentage}%</td>
+ <td class="stats">${item.data.fuzzysourcewords}</td><td class="stats">${item.data.fuzzypercentage}%</td>
+ <td class="stats">${item.data.untranslatedsourcewords}</td><td class="stats">${item.data.untranslatedpercentage}%</td>
+ <td class="stats">${item.data.totalsourcewords}</td>
+ <td class="stats-graph">
+ <span class="sortkey">${item.data.translatedpercentage}</span>
+ <table border="0" cellpadding="0" cellspacing="0"><tr>
+ <td bgcolor="green" class="data" height="20" width="${item.data.translatedpercentage or int(bool(item.data.translatedsourcewords))}" />
+ <td bgcolor="#d3d3d3" class="data" height="20" width="${item.data.fuzzypercentage or int(bool(item.data.fuzzysourcewords))}" py:if="item.data.fuzzysourcewords"/>
+ <td bgcolor="red" class="data" height="20" width="${item.data.untranslatedpercentage or int(bool(item.data.untranslatedsourcewords))}" py:if="item.data.untranslatedsourcewords" />
+ </tr></table>
+ </td>
+ </span>
+ </div>
+
+</include-this>
diff --git a/Pootle-1.2.1/Pootle/templates/options.html b/Pootle-1.2.1/Pootle/templates/options.html
new file mode 100644
index 0000000..3a2acb9
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/options.html
@@ -0,0 +1,153 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage, navbar
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Options for: ${username}</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div py:if="introtext" class="intro" py:content="introtext">
+ Please edit your options as desired below.
+ </div>
+
+ <div class="contents">
+ <h3 class="title" py:content="detailstitle">Personal Details</h3>
+
+ <form action="" method="post" name="personal" id="personal">
+ <table cellpadding="1" cellspacing="1">
+ <tr>
+ <td colspan="1" rowspan="1">
+ <h3 class="title" py:content="option_heading">Option</h3>
+ </td>
+ <td colspan="1" rowspan="1">
+ <h3 class="title" py:content="value_heading">Current value</h3>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" rowspan="1" py:content="fullname_title">Name</td>
+ <td colspan="1" rowspan="1">
+ <input type="text" name="option-name" value="${fullname}"/>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" rowspan="1" py:content="email_title">Email</td>
+ <td colspan="1" rowspan="1">
+ <input type="text" name="option-email" value="${email}"/>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="1" rowspan="1" py:content="password_title">Password</td>
+ <td colspan="1" rowspan="1">
+ <input type="password" name="option-password" value=""/>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" rowspan="1" py:content="passwordconfirm_title">Confirm Password</td>
+ <td colspan="1" rowspan="1">
+ <input type="password" name="option-passwordconfirm" value=""/>
+ </td>
+ </tr>
+ </table><input type="submit" name="changepersonal" value="${submit_button}" />
+ </form>
+
+ <h3 class="title" py:content="interface_title">Translation Interface Configuration</h3>
+
+ <form action="" method="post" name="interface" id="interface">
+ <table cellpadding="1" cellspacing="1">
+ <tr>
+ <td colspan="1" rowspan="1">
+ <h3 class="title" py:content="option_heading">Option</h3>
+ </td>
+ <td colspan="1" rowspan="1">
+ <h3 class="title" py:content="value_heading">Current value</h3>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" rowspan="1" py:content="uilanguage_heading">User Interface language</td>
+ <td colspan="1" rowspan="1"><select name="option-uilanguage" style="width: 100%;">
+ <option py:for="l in uilanguage_options" value="${l.code}" py:attrs="selected=l.selected" py:content="l.name">
+ Language
+ </option>
+ </select></td>
+ </tr>
+
+ <tr py:if="enablealtsrc == 'True'">
+ <td colspan="1" rowspan="1" py:content="altsrclanguage_title">Alternative Source Language</td>
+ <td colspan="1" rowspan="1">
+ <select name="altsrclanguage" style="width: 100%;">
+ <option py:for="l in altsrclanguages" value="${l.code}" py:attrs="selected=l.selected" py:content="l.name">
+ Language Name
+ </option>
+ </select>
+ </td>
+ </tr>
+
+ <tr py:for="option in other_options">
+ <td colspan="1" rowspan="1" py:content="option.description">Option Name</td>
+ <td colspan="1" rowspan="1">
+ <input type="text" name="option-${option.code}" value="${option.value}"/>
+ </td>
+ </tr>
+ </table><input type="submit" name="changeinterface" value="${submit_button}" />
+ </form>
+ </div>
+
+ <form action="" method="post" name="useroptions" id="useroptions">
+ <div class="contents">
+ <h3 class="title" py:content="projects_title">My Projects</h3>
+
+ <div class="item-description">
+ <select multiple="multiple" name="projects">
+ <option py:for="p in projects" value="${p.code}" py:attrs="selected=p.selected" py:content="p.name">
+ Project Name
+ </option>
+ </select>
+ <input type="hidden" name="allowmultikey" value="projects"/>
+ </div>
+ </div>
+
+ <div class="contents">
+ <h3 class="title" py:content="languages_title">My Languages</h3>
+
+ <div class="item-description">
+ <select multiple="multiple" name="languages">
+ <option py:for="l in languages" value="${l.code}" py:attrs="selected=l.selected" py:content="l.name">
+ Language Name
+ </option>
+ </select>
+ <input type="hidden" name="allowmultikey" value="languages" />
+ </div>
+ </div>
+
+ <input type="submit" name="changeoptions" value="${submit_button}" />
+ </form>
+
+ <div class="intro">
+ <a href="index.html" py:content="home_link">Home page</a>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/pootlepage.kid b/Pootle-1.2.1/Pootle/templates/pootlepage.kid
new file mode 100644
index 0000000..ae9f659
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/pootlepage.kid
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8"?>
+<include xmlns:py="http://purl.org/kid/ns#">
+ <div py:def="banner(instancetitle, links, session, uidir, uilanguage, baseurl)" id="banner" lang="$uilanguage" dir="$uidir">
+ <h1 py:content="instancetitle">
+ Distribution se Pootle
+ </h1>
+ <div class="side">
+ <a href="${baseurl}" py:content="links.home">Home</a> |
+ <a href="${baseurl}projects/" py:content="links.projects">All Projects</a> |
+ <a href="${baseurl}languages/" py:content="links.languages">All Languages</a>
+ <span py:if="session.isopen" py:strip="True"> | <a href="${baseurl}home/" py:content="links.account">My account</a></span>
+ <span py:if="session.issiteadmin" py:strip="True"> |
+ <a href="${baseurl}admin/" py:content="links.admin">Admin</a> </span> |
+ <a href="${baseurl}doc/${links.doclang}/index.html" py:content="links.doc">Docs &amp; Help</a>
+ </div>
+ </div>
+
+ <div py:def="user_links(links, session, uidir, uilanguage, baseurl, block=None)" id="links" class="sidebar" dir="$uidir" lang="$uilanguage">
+ <!--! Account information -->
+ <div class="account">
+ <div class="side">
+ <img src="${baseurl}images/person.png" class="icon" alt="" dir="$uidir" lang="$uilanguage" />
+ </div>
+ <div class="side" py:if="session.isopen">
+ <span py:content="XML(session.status)">logged in as <b>somebody</b></span> |
+ <a href="${baseurl}?islogout=1" py:content="links.logout">Log Out</a>
+ </div>
+ <div class="side" py:if="not session.isopen">
+ <a href="${baseurl}login.html" py:content="links.login">Log In</a> |
+ <a href="${baseurl}register.html" py:content="links.register">Register</a> |
+ <a href="${baseurl}activate.html" py:content="links.activate">Activate</a>
+ </div>
+ </div>
+ <div py:if="block != None" py:replace="block"/>
+ </div>
+
+ <div py:def="about(aboutlink, uidir, uilanguage, baseurl)" id="about" dir="$uidir" lang="$uilanguage">
+ <a href="${baseurl}about.html" py:content="aboutlink">About this Pootle server</a>
+ </div>
+</include>
diff --git a/Pootle-1.2.1/Pootle/templates/project.html b/Pootle-1.2.1/Pootle/templates/project.html
new file mode 100644
index 0000000..52e1b75
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/project.html
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import navbar, pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle: ${project.name}</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <meta name="description" content="${meta_description}" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!-- the 'sorttable.js' script depends on the variable 'baseurl' -->
+ <script type="text/javascript"> var baseurl = "${baseurl}"; </script>
+ <script type="text/javascript" src="${baseurl}js/sorttable.js"></script>
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="navbar">
+ <img src="${baseurl}images/folder.png" class="icon" alt="" dir="$uidir" lang="$uilanguage" />
+
+ <h3 class="title">[ <a href="${baseurl}projects/${project.code}/" py:content="project.name">Project</a> ]</h3>
+
+ <div class="item-description" py:if="session.issiteadmin">
+ <a href="admin.html" py:content="adminlink">Admin</a>
+ </div>
+
+ <div class="item-statistics" py:content="project.stats">
+ 0 languages, average 0% translated
+ </div>
+ </div>
+
+ <div class="intro" py:content="XML(description)">
+ This is the project description
+ </div>
+
+ <table class="sortable stats" id="stats" cellpadding="5" cellspacing="0" width="100%">
+ <thead>
+ <tr>
+ <th class="stats">${statsheadings.name}</th>
+ <th class="stats">${statsheadings.translated}</th>
+ <th class="stats" title="${statsheadings.translatedpercentage}">%</th>
+ <th class="stats">${statsheadings.fuzzy}</th>
+ <th class="stats" title="${statsheadings.fuzzypercentage}">%</th>
+ <th class="stats">${statsheadings.untranslated}</th>
+ <th class="stats" title="${statsheadings.untranslatedpercentage}">%</th>
+ <th class="stats">${statsheadings.total}</th>
+ <th class="stats">${statsheadings.graph}</th>
+ </tr>
+ </thead>
+ <tbody class="stats">
+ <div py:for="item in languages" py:strip="True">
+ <tr class="item item-${item.parity}">
+ <div py:replace="navbar.itemdata(item, uidir, uilanguage, baseurl)"/>
+ </tr>
+ </div>
+ </tbody>
+ </table>
+
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/projectadmin.html b/Pootle-1.2.1/Pootle/templates/projectadmin.html
new file mode 100644
index 0000000..a9ab7e3
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/projectadmin.html
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage, navbar
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle Admin: ${project.name}</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--! the 'sorttable.js' script depends on the variable 'baseurl' -->
+ <script type="text/javascript"> var baseurl = "${baseurl}"; </script>
+ <script type="text/javascript" src="${baseurl}js/sorttable.js"></script>
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" py:if="not session.issiteadmin">
+ <div class="intro" py:content="norights_text">
+ You do not have the rights to administer this project.
+ </div>
+ </div>
+
+ <div id="content" py:if="session.issiteadmin" dir="$uidir" lang="$uilanguage">
+ <h3 class="title"><a href="index.html" py:content="main_link">Back to main page</a></h3>
+
+ <br clear="all" />
+ <form action="" method="post" name="updatelangform">
+ <h3 class="title" py:content="existing_title">Existing languages</h3>
+ <table class="sortable" id="existing_languages">
+ <thead>
+ <tr>
+ <th py:content="full_name">Complete name</th>
+ <th py:content="iso_code">ISO Code</th>
+ </tr>
+ </thead>
+ <tr py:for="l in existing_languages" class="item item-${l.parity}">
+
+ <td><a href="../../${l.code}/${project.code}/admin.html" py:content="l.name">Language</a></td>
+ <td><span py:content="l.code">code</span></td>
+ <td><input type="checkbox" name="updatelanguage" value="${l.code}"/></td>
+ <td><a href="?doupdatelanguage=1&amp;updatelanguage=${l.code}" py:content="update_link">Update from templates</a></td>
+ </tr>
+ </table>
+ <input type="submit" name="doupdatelanguage" value="${update_button}"/>
+ <input type="hidden" name="allowmultikey" value="updatelanguage"/>
+ </form>
+ <form action="" method="post" name="newlangform">
+ <select name="newlanguage">
+ <option py:for="l in new_languages" value="${l.code}" py:content="l.name+ ': '+ l.code">Language</option>
+ </select>
+ <input type="submit" name="doaddlanguage" value="${add_button}"/>
+ </form>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/projectlangadmin.html b/Pootle-1.2.1/Pootle/templates/projectlangadmin.html
new file mode 100644
index 0000000..6b1c7e0
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/projectlangadmin.html
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle Admin: ${language.name} ${project.name}</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <h3 class="title" py:content="pagetitle">Pootle Admin: ${language.name} ${project.name}</h3>
+
+ <div class="info">
+ <a href="index.html" py:content="main_link">Project home page</a>
+ </div>
+
+ <div class="intro" py:content="filestyle_text">
+ This is a standard style project (one directory per language).
+ </div>
+
+ <form action="" method="post" name="rightsform" id="rightsform">
+ <h3 class="title" py:content="permissions_title">User Permissions</h3>
+
+ <table cellpadding="1" cellspacing="1">
+ <tr>
+ <td colspan="1" rowspan="1">
+ <h3 class="title" py:content="username_title">Username</h3>
+ </td>
+
+ <td colspan="1" rowspan="1">
+ <h3 class="title" py:content="rights_title">Rights</h3>
+ </td>
+
+ <td colspan="1" rowspan="1">
+ <h3 class="title" py:content="remove_title">Remove</h3>
+ </td>
+ </tr>
+
+ <tr py:for="username in users_with_rights">
+ <td colspan="1" rowspan="1" py:content="username">username</td>
+
+ <td colspan="1" rowspan="1">
+ <select multiple="multiple" name="rights-${username}">
+ <option py:for="rightcode, rightname in rightnames" py:attrs="value=rightcode, selected=rightcode in rights[username] or None" py:content="rightname">
+ Right
+ </option>
+ </select>
+ <input type="hidden" name="allowmultikey" value="rights-${username}"/>
+ </td>
+
+ <td colspan="1" rowspan="1">
+ <span py:if="user_details[username].delete" py:strip="True">
+ <input type="checkbox" name="rightsremove-${username}"/>
+ <span py:content="user_details[username].remove_text">Remove username</span>
+ </span>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" rowspan="1">
+ <select name="rightsnew-username">
+ <option value="" selected="selected" py:content="adduser_text">(select to add user)</option>
+ <option py:for="username in users_without_rights" py:attrs="value=username" py:content="user_details[username].description"/>
+ </select>
+ </td>
+
+ <td colspan="1" rowspan="1">
+ <select multiple="multiple" name="rightsnew">
+ <option py:for="rightcode, rightname in rightnames" py:attrs="value=rightcode, selected=rightcode in rights.default or None" py:content="rightname">
+ Right
+ </option>
+ </select>
+ <input type="hidden" name="allowmultikey" value="rightsnew"/>
+ </td>
+
+ <td colspan="1" rowspan="1" />
+ </tr>
+
+ </table>
+ <input type="submit" name="doupdaterights" value="${updaterights_text}" />
+ </form>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/projects.html b/Pootle-1.2.1/Pootle/templates/projects.html
new file mode 100644
index 0000000..671191b
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/projects.html
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="contents">
+ <h3 class="title" py:content="projectlink">Projects</h3>
+
+ <div class="item-description">
+ <span py:for="p in projects" py:strip="True">
+ <a href="${p.code}/" title="${p.description}" py:content="p.name">Project</a>${p.sep}
+ </span>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/redirect.html b/Pootle-1.2.1/Pootle/templates/redirect.html
new file mode 100644
index 0000000..d341ffb
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/redirect.html
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage, navbar
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Redirecting...</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <meta http-equiv="Refresh" content="${refresh}; URL=${refreshurl}" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="contents"><h3 class="title" py:content="pagetitle">Redirecting...</h3>
+ <div class="item-description" py:content="XML(message)">Message</div>
+ </div>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/register.html b/Pootle-1.2.1/Pootle/templates/register.html
new file mode 100644
index 0000000..e809681
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/register.html
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage, navbar
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle Registration</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="intro" py:content="introtext">
+ Please enter your registration details
+ </div>
+
+ <form action="" enctype="multipart/form-data" method="post" name="register" id="register">
+ <table cellpadding="1" width="70%" border="0" cellspacing="1">
+ <tr>
+ <td colspan="1" style="width: 33%" rowspan="1" valign="top">
+ <span title="${username_tooltip}" py:content="username_title">Username</span>
+ </td>
+
+ <td colspan="1" style="width: 66%" rowspan="1" valign="top">
+ <input style="width: 100%" type="text" name="username" value="${username}" />
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" style="width: 33%" rowspan="1" valign="top">
+ <span title="${password_tooltip}" py:content="password_title">Password</span>
+ </td>
+
+ <td colspan="1" style="width: 66%" rowspan="1" valign="top">
+ <input style="width: 100%" type="password" name="password" value="${password}" />
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" style="width: 33%" rowspan="1" valign="top">
+ <span title="${passwordconfirm_tooltip}" py:content="passwordconfirm_title">Password (Confirm)</span>
+ </td>
+
+ <td colspan="1" style="width: 66%" rowspan="1" valign="top">
+ <input style="width: 100%" type="password" name="passwordconfirm" value="${passwordconfirm}" />
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" style="width: 33%" rowspan="1" valign="top">
+ <span title="${fullname_tooltip}" py:content="fullname_title">Full Name</span>
+ </td>
+
+ <td colspan="1" style="width: 66%" rowspan="1" valign="top">
+ <input style="width: 100%" type="text" name="name" value="${fullname}" />
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="1" style="width: 33%" rowspan="1" valign="top">
+ <span title="${email_tooltip}" py:content="email_title">Email Address</span>
+ </td>
+
+ <td colspan="1" style="width: 66%" rowspan="1" valign="top">
+ <input style="width: 100%" type="text" name="email" value="${email}" />
+ </td>
+ </tr>
+ </table><input type="submit" name="register" value="${register_text}" />
+ </form>
+ </div>
+
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl)"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/templates/translatepage.html b/Pootle-1.2.1/Pootle/templates/translatepage.html
new file mode 100644
index 0000000..2eabeb6
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/templates/translatepage.html
@@ -0,0 +1,294 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?python
+import pootlepage, navbar
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:py="http://purl.org/kid/ns#" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st September 2004), see www.w3.org" />
+
+ <title py:content="pagetitle">Pootle: translating ${project.name} into ${language.name}: ${pofilename}</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="stylesheet" type="text/css" href="${baseurl}pootle.css" />
+ <link rel="shortcut icon" href="${baseurl}favicon.ico" />
+ <script src="${baseurl}js/autoexpand.js" type="text/javascript"></script>
+ <!--[if lt IE 7.]>
+ <script defer type="text/javascript" src="${baseurl}js/correctpng.js"></script>
+ <![endif]-->
+ <script src="${baseurl}js/jquery/jquery.js" type="text/javascript"></script>
+ <script src="${baseurl}js/jquery/jquery.color.js" type="text/javascript"></script>
+ <script src="${baseurl}js/search.js" type="text/javascript"></script>
+ <!-- Needed for JavaScript l10n -->
+ <script type="text/javascript">
+ var AJAX_ERROR = "${ajax_error}";
+ </script>
+ <script src="${baseurl}js/suggestions.js" type="text/javascript"></script>
+</head>
+
+<body bgcolor="#FFFFFF">
+ <div id="working" style="display: none;">${ajax_status_text}</div>
+ <div id="abovefooter">
+ <div py:replace="pootlepage.banner(instancetitle, links, session, uidir, uilanguage, baseurl)"/>
+
+ <div id="content" dir="$uidir" lang="$uilanguage">
+ <div class="navbar" py:for="item in navitems">
+ <!--! Search form -->
+ <div py:if="search" class="searchform ${search.extra_class}" dir="$uidir" lang="$uilanguage">
+ <form action="translate.html" method="post" name="searchform" id="searchform">
+ <label class="inputHint" for="searchtext">${search.title}</label>
+ <input type="text" size="15" name="searchtext" id="searchtext" value="${searchtext}" />
+ <input type="hidden" name="pofilename" value="${pofilename}" />
+ <a class="advancedlink"><img src="${baseurl}images/bullet_arrow_down.png" title="${search.advanced_title}" class="togglesearch" /></a>
+ <div class="advancedsearch ${search.extra_class}" dir="$uidir">
+ <span py:for="field in search.fields" py:strip="True">
+ <?python checkedflag = field.checked ?>
+ <input type="checkbox" name="${field.name}" id="${field.name}" value="1" py:attrs="checked=checkedflag" />
+ <label dir="$uidir" for="${field.name}" py:content="field.text"></label><br />
+ </span>
+ </div>
+ </form>
+ </div>
+ <!--! Navigation bar -->
+ <h3 py:def="itemtitle(item)" id="itemtitle" class="title">
+ <span py:strip="True" py:if="item.path.language">[ <a href="${item.path.language.href}">${item.path.language.text}</a> ]</span>
+ <span py:strip="True" py:if="item.path.project">[ <a href="${item.path.project.href}">${item.path.project.text}</a> ]</span>
+ <span py:strip="True" py:for="pathlink in item.path.pathlinks">
+ <a href="${pathlink.href}">${pathlink.text}</a>${pathlink.sep}
+ </span>
+ </h3>
+ <div py:replace="navbar.item_block(item, uidir, uilanguage, baseurl, itemtitle(item))" class="contentsitem"/>
+ <div py:replace="navbar.itemstats(item)"/>
+
+ <div class="item-statistics" py:if="pagelinks">
+ <span py:strip="True" py:for="pagelink in pagelinks">
+ <a href="${pagelink.href}">${pagelink.text}</a>${pagelink.sep}
+ </span>
+ </div>
+ </div>
+
+ <div class="translate-form">
+ <div py:if="notice" dir="$uidir">
+ <h3 class="title">${notice.title}</h3>
+ <div class="intro">${notice.stoppedby}</div>
+ <a href="${notice.finishedlink}">${notice.returnlink}</a>
+ </div>
+ <form py:if="not notice" action="${actionurl}" method="post" name="translate" id="translate">
+ <table cellpadding="0" cellspacing="0" class="translate-table" dir="$uidir">
+ <tr>
+ <th colspan="1" rowspan="1" class="translate-table-title" py:content="original_title">original</th>
+
+ <th colspan="1" rowspan="1" class="translate-table-title" py:content="translation_title">translation</th>
+ </tr>
+
+ <span py:for="item in items" py:strip="True">
+ <?python
+ comments = filter(None, [item.translator_comments, item.developer_comments])
+ comment = '\n'.join(comments) or None
+ ?>
+ <tr title="${comment}">
+ <!--! Cell with original -->
+ <td colspan="1" rowspan="1" class="translate-original translate-original-${item.polarity} ${item.focus_class}" dir="ltr">
+ <div id="${item.orig.itemid}" class="translate-original ${item.orig.focus_class}" lang="en">
+ <input py:for="field in item.orig.pure" type="hidden" name="${field.pureid}" value="${field.value}" id="${field.pureid}"/>
+ <div py:if="not item.orig.isplural" class="translation-text" py:content="XML(item.orig.text)"></div>
+ <span py:if="item.orig.isplural" py:strip="True">
+ <span class="translation-text-headers" py:content="item.orig.singular_title">Singular</span><br />
+ <span class="translation-text" py:content="XML(item.orig.singular_text)">singular text</span><br />
+ <span class="translation-text-headers" py:content="item.orig.plural_title">Plural</span><br />
+ <span class="translation-text" py:content="XML(item.orig.plural_text)">plural text</span><br />
+ </span>
+ </div>
+ <br />
+ <!--! Alternative source language translation (if enabled and available) -->
+ <div py:if="item.altsrc.available" class="translation-text-headers" lang="$uilanguage" dir="$uidir" py:content="item.altsrc.title">Alternative Source Language Name</div>
+ <div py:if="item.altsrc.available" class="translate-original ${item.orig.focus_class}">
+ <div id="${item.orig.itemid}" class="translation-text" lang="${item.altsrc.languagecode}" dir="${item.altsrc.dir}" py:content="XML(item.altsrc.text)"></div>
+ <!--!
+ <span py:for="form in item.altsrc.forms" py:strip="True">
+ <span class="translation-text-headers" py:if="form.title" py:content="form.title">Plural Form ${form.n}</span>
+ <br py:if="form.title" />
+ </span> -->
+ </div>
+
+ <div py:if="item.editable and item.message_context" class="translate-context" py:content="item.message_context">
+ Message Context
+ </div>
+ </td>
+
+ <!--! Cell with translation (view/suggest/review/edit) -->
+ <td lang="$uilanguage" dir="$uidir" colspan="1" rowspan="1" class="translate-translation translate-translation-${item.polarity} ${item.focus_class}">
+ <div id="${item.trans.itemid}" class="translate-translation ${item.orig.focus_class}">
+
+ <!--! Begin: Normal editing -->
+ <span py:if="item.editable" py:strip="True">
+ <!--! Translation memory -->
+ <div py:if="item.tm" id="tm" class="sidebar" dir="$uidir">
+ <div class="sidetitle" py:content="related_title">Related</div>
+ <div py:for ="unit in item.tm" class="tm-unit" title="${unit.getnotes() or None}" onclick="writespecial('${unit.target}', '${item.trans.itemid}');">
+ <span class="tm-original" dir="ltr" lang="en">${unit.source}</span>
+ <span class="tm-translation" dir="$language.dir" lang="$language.code">${unit.target}</span>
+ </div>
+ </div>
+ <!--! No plurals -->
+ <span py:if="not item.trans.isplural" py:strip="True">
+ <!--! TODO: spell checking -->
+ <textarea dir="$language.dir" lang="$language.code" onfocus="setfocusedelement(this);" class="translation ${item.state_class}" name="${item.trans.itemid}" id="area${item.trans.itemid}" rows="${item.trans.rows}" cols="${item.trans.cols}" py:content="XML(item.trans.text)">
+ translatable text
+ </textarea>
+ </span>
+ <!--! with plurals -->
+ <span py:if="item.trans.isplural" py:strip="True">
+ <span py:for="form in item.trans.forms" py:strip="True">
+ <div class="translation-text-headers" py:content="form.title">Plural Form ${form.n}</div>
+ <!--! TODO: spell checking -->
+ <textarea dir="$language.dir" lang="$language.code" onfocus="setfocusedelement(this);" class="translation ${item.state_class}" name="${form.name}" id="area${form.name}" rows="${item.trans.rows}" cols="${item.trans.cols}" py:content="XML(form.text)">
+ translatable text for plural form
+ </textarea>
+ </span>
+ </span>
+
+ <!--! Reviewing mode: display original strings for diffing -->
+ <div id="translate-original-container" py:if="reviewmode">
+ <strong class="${item.state_class}" py:content="item.trans.current_title">Current Translation:</strong>
+ <div class="translate-original-block">
+ <span py:for="form in item.trans.forms" py:strip="True">
+ <div class="translation-text-headers" lang="$uilanguage" py:if="form.title" py:content="form.title">Plural Form ${form.n}</div>
+ <div py:content="XML(form.diff)" lang="$language.code" dir="$language.dir">Text with diffs</div>
+ </span>
+ </div>
+ </div>
+
+ <!--! (Re)view suggestions while editing -->
+ <div id="translate-suggestion-container" py:if="item.hassuggestion">
+ <div class="translate-suggestion-block" py:for="sugg in item.trans.suggestions">
+ <strong py:content="sugg.title">Suggestion by testuser:</strong>
+ <div class="translate-suggestion">
+ <span py:for="form in sugg.forms" py:strip="True">
+ <div class="translation-text-headers" lang="$uilanguage" py:if="form.title" py:content="form.title">Plural Form ${form.n}</div>
+ <div py:content="XML(form.diff)" lang="$language.code" dir="$language.dir">Text with diffs</div>
+ <input type="hidden" name="${form.suggid}" value="${form.value}" />
+ </span>
+ <span py:if="sugg.canreview" py:strip="True">
+ <a title="${accept_title}" accesskey="a" id="accept${sugg.suggid}" class="acceptsugg"><img src="${baseurl}images/gtk-apply.png" dir="$uidir" /></a>
+ <a title="${reject_title}" accesskey="r" id="reject${sugg.suggid}" class="rejectsugg"><img src="${baseurl}images/gtk-cancel.png" dir="$uidir" /></a>
+ </span>
+ </div>
+ </div>
+ </div>
+
+ <!--! Buttons, resize links, special characters -->
+ <span py:strip="True" py:for="buttons in [item.trans.buttons]">
+ <div>
+ <input py:if="'back' in buttons.desired" type="button" name="back${buttons.item}" accesskey="b" value="${buttons.back}" onclick="history.back(); return false;" />
+ <input py:if="'skip' in buttons.desired" type="submit" name="skip${buttons.item}" accesskey="k" value="${buttons.skip}"/>
+ <input type="button" py:if="'copy' in buttons.desired" accesskey="c"
+ onclick="copyorigtranslation('${buttons.item}'); return false"
+ value="${buttons.copy_text}" />
+ <input py:if="'suggest' in buttons.desired" type="submit" name="submitsuggest${buttons.item}" accesskey="e" value="${buttons.suggest}"/>
+ <input py:if="'translate' in buttons.desired" type="submit" name="submit${buttons.item}" accesskey="s" value="${buttons.submit}"/>
+ </div>
+ <script py:if="'translate' in buttons.desired" src="${baseurl}js/unfuzzy.js" type="text/javascript"></script>
+ <div py:if="'translate' in buttons.desired">
+ <input type="checkbox" checked="${item.fuzzy}" name="fuzzy${buttons.item}" id="fuzzy${buttons.item}" class="unfuzzy" accesskey="f" />
+ <label for="fuzzy${buttons.item}">${fuzzytext}</label>
+ </div>
+ <div py:if="not 'translate' in buttons.desired">
+ <input type="checkbox" disabled="disabled" checked="${item.fuzzy}" name="fuzzy${buttons.item}" id="fuzzy${buttons.item}" />
+ <label for="fuzzy${buttons.item}">${fuzzytext}</label>
+ </div>
+ <div py:if="'specialchars' in buttons and ('translate' in buttons.desired or 'suggest' in buttons.desired)" class="specialchars" lang="$language.code">
+ <span py:for="specialchar in buttons.specialchars" py:strip="True">
+ <a py:if="not specialchar.isspace()" py:content="specialchar" onclick="writespecial('${specialchar}', '${item.trans.itemid}'); return false;" href="#">spc</a>
+ <span py:if="specialchar.isspace()" class="extraspace"> </span>
+ </span>
+ </div>
+ <span py:if="'resize' in buttons.desired" py:strip="True">
+ <a href='#' onclick="return expandtextarea(this)" accesskey="=" py:content="buttons.grow">Grow</a>
+ <a href='#' onclick="return contracttextarea(this)" accesskey="-" py:content="buttons.shrink">Shrink</a>
+ </span>
+ </span>
+ <script py:if="'translate' in buttons.desired or 'suggest' in buttons.desired" type="text/javascript">
+ <!--! //We should comment this for old browsers, but then kid doesn't evaluate the expression -->
+ document.forms.translate['${item.trans.focusbox}'].focus()
+ <!--! //-->
+ </script>
+ </span>
+ <!--! End: Normal editing -->
+
+ <!--! Normal view mode -->
+ <?python
+ action = "document.location='%s';"
+ ?>
+ <div py:if="not item.editable" class="${item.state_class}" style="min-height: 1.5em;" ondblclick="${not item.trans.editlink or action % item.trans.editlink.href}">
+ <div dir="$uidir" lang="$language.code" class="translation-action">
+ <a py:if="item.trans.editlink" lang="$uilanguage" dir="$uidir" href="${item.trans.editlink.href}" class="translation-action" py:content="item.trans.editlink.text" id="${item.trans.editlink.linkid}">Edit</a>
+ </div>
+ <div dir="$language.dir" lang="$language.code" py:if="not item.trans.isplural" class="translation-text" py:content="XML(item.trans.text)">
+ text
+ </div>
+ <span py:if="item.trans.isplural">
+ <span py:for="form in item.trans.forms" py:strip="True">
+ <span class="translation-text-headers" py:content="form.title">Plural Form ${form.n}</span><br />
+ <span class="translation-text" py:content="XML(form.text)">Text</span><br />
+ </span>
+ </span>
+ </div>
+ </div>
+ </td>
+ </tr>
+ <tr py:if="item.editable">
+ <td class="translate-original translate-original-${item.polarity} comments">
+ <span py:if="item.developer_comments" py:strip="True">
+ <div py:content="developer_comments_title">Developer comments:</div>
+ <div py:if="item.editable and item.developer_comments" class="developer-comments" lang="en" dir="ltr" py:content="XML(item.developer_comments)">
+ Developer comments.
+ </div>
+ </span>
+ <div py:if="item.editable and item.locations" class="translate-locations" lang="en" dir="ltr" py:content="item.locations">
+ Locations
+ </div>
+ </td>
+ <td class="translate-translation translate-translation-${item.polarity} comments">
+ <div py:content="translator_comments_title">Translator comments:</div>
+ <textarea py:if="not reviewmode" dir="$language.dir" lang="$language.code" name="translator_comments${item.itemid}" id="translator_comments${item.itemid}" rows="2" cols="${item.trans.cols}" class="comments" py:content="item.translator_comments">
+ Translator comments.
+ </textarea>
+ <div py:if="reviewmode" py:content="XML(item.translator_comments)" class="translator-comments">Translator comments</div>
+ </td>
+ </tr>
+ </span>
+
+
+ </table>
+ <input type="hidden" name="searchtext" value="${searchtext}" />
+ <input type="hidden" name="pofilename" value="${pofilename}" />
+ </form>
+
+ <div class="item-statistics" py:if="pagelinks" dir="$uidir" lang="$uilanguage">
+ <span py:strip="True" py:for="pagelink in pagelinks">
+ <a href="${pagelink.href}">${pagelink.text}</a>${pagelink.sep}
+ </span>
+ </div>
+ </div>
+ </div>
+
+ </div>
+
+ <div py:def="show_assigns()">
+ <div py:if="defined('assigns')" class="sidetitle" py:content="assigns.title">Assign Strings</div>
+ <form py:if="defined('assigns')" action="?index=1" name="assignform">
+ <select name="assignto" title="${assigns.user_title}">
+ <option py:for="user in assigns.users" value="${user}" py:content="user">Username</option>
+ </select>
+ <input name="action" value="translate" title="${assigns.action_title}"/>
+ <input name="doassign" type="submit" value="${assigns.submit_text}"/>
+ </form>
+ <div class="side" py:if="defined('checking_text')">
+ <img src="${baseurl}images/information.png" class="checkinfo" alt="" />
+ <span py:content="XML(checking_text)">checking has-suggestion, etc</span>
+ </div>
+ </div>
+ <div py:replace="pootlepage.user_links(links, session, uidir, uilanguage, baseurl, show_assigns())"/>
+ <div py:replace="pootlepage.about(aboutlink, uidir, uilanguage, baseurl)"/>
+</body>
+</html>
diff --git a/Pootle-1.2.1/Pootle/test_client.py b/Pootle-1.2.1/Pootle/test_client.py
new file mode 100644
index 0000000..49f4b60
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/test_client.py
@@ -0,0 +1,484 @@
+#!/usr/bin/env python
+
+"""Top-level tests using urllib2 to check interaction with servers
+This uses test_cmdlineserver / test_service / test_apache (which are for different webservers)
+ServerTester is mixed in with the different server tests below to generate the required tests"""
+
+from Pootle import test_create
+from Pootle import test_cmdlineserver
+from Pootle import potree
+from Pootle import projects
+from jToolkit.web import postMultipart
+import zipfile
+from translate.misc import wStringIO
+import urllib
+import urllib2
+import os
+import re
+
+try:
+ import cookielib
+except ImportError:
+ # fallback for python before 2.4
+ cookielib = None
+ import ClientCookie
+
+class ServerTester:
+ """Tests things directly against the socket of the server. Requires self.baseaddress"""
+ setup_class = test_create.TestCreate.setup_class
+
+ def setup_cookies(self):
+ """handle cookies etc"""
+ if cookielib:
+ self.cookiejar = cookielib.CookieJar()
+ self.opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(self.cookiejar))
+ self.urlopen = self.opener.open
+ else:
+ self.urlopen = ClientCookie.urlopen
+
+ def setup_prefs(self, method):
+ """sets up any extra preferences required..."""
+ if hasattr(method, "userprefs"):
+ for key, value in method.userprefs.iteritems():
+ self.prefs.setvalue("Pootle.users.testuser." + key, value)
+
+ def fetch_page(self, relative_url):
+ """Fetches a page from the webserver installed in the service"""
+ url = "%s/%s" % (self.baseaddress, relative_url)
+ print "fetching", url
+ stream = self.urlopen(url)
+ contents = stream.read()
+ return contents
+
+ def post_request(self, relative_url, contents, headers):
+ """Posts a request to the webserver installed in the service"""
+ url = "%s/%s" % (self.baseaddress, relative_url)
+ print "posting to", url
+ post_request = urllib2.Request(url, contents, headers)
+ stream = self.urlopen(post_request)
+ response = stream.read()
+ return response
+
+ def login(self):
+ """calls the login method with username and password"""
+ return self.fetch_page("?islogin=1&username=testuser&password=")
+
+ def test_login(self):
+ """checks that login works and sets cookies"""
+ contents = self.login()
+ # check login leads us to a normal page
+ assert "Log In" not in contents
+ # check login is retained on next fetch
+ contents = self.fetch_page("")
+ assert "Log In" not in contents
+
+ def test_non_admin_rights(self):
+ """checks that without admin rights we can't access the admin screen"""
+ contents = self.login()
+ adminlink = '<a href="/admin/">Admin</a>' in contents
+ assert not adminlink
+ contents = self.fetch_page("admin/")
+ denied = "You do not have the rights to administer pootle" in contents
+ assert denied
+
+ def test_admin_rights(self):
+ """checks that admin rights work properly"""
+ contents = self.login()
+ adminlink = '<a href="/admin/">Admin</a>' in contents
+ assert adminlink
+ contents = self.fetch_page("admin/")
+ admintitle = "<title>Pootle Admin Page</title>" in contents
+ assert admintitle
+ test_admin_rights.userprefs = {"rights.siteadmin": True}
+
+ def test_add_project(self):
+ """checks that we can add a project successfully"""
+ self.login()
+ projects_list = self.fetch_page("admin/projects.html")
+ testproject_present = '<a href="../projects/testproject/admin.html">testproject</a>' in projects_list
+ assert testproject_present
+ testproject2_present = '<a href="../projects/testproject2/admin.html">testproject2</a>' in projects_list
+ assert not testproject2_present
+ assert projects_list.count(""""selected" value="po""") == 1
+ add_dict = {"newprojectcode": "testproject2", "newprojectname": "Test Project 2",
+ "newprojectdescription": "Test Project Addition","newprojectfiletype": "xliff", "changeprojects": "Save changes"}
+ add_args = "&".join(["%s=%s" % (key, urllib.quote_plus(value)) for key, value in add_dict.items()])
+ add_url = "admin/projects.html?" + add_args
+ add_result = self.fetch_page(add_url)
+ testproject2_present = '<a href="../projects/testproject2/admin.html">testproject2</a>' in add_result
+ assert testproject2_present
+ projects_list = self.fetch_page("admin/projects.html")
+ # The asserts below may fail if output framework changes, html checking does not checking the 'selected' value,
+ # but instead relying on the projected 'value' in the project's name
+ assert """projectfiletype-testproject" value="po">""" in projects_list
+ assert """projectfiletype-testproject2" value="xliff">""" in projects_list
+ test_add_project.userprefs = {"rights.siteadmin": True}
+
+ def test_add_project_language(self):
+ """tests that we can add a language to a project, then access its page when there are no files"""
+ self.login()
+ language_list = self.fetch_page("projects/testproject/")
+ assert "Test Language" not in language_list
+ assert "Pootle Unit Tests" in language_list
+ project_admin = self.fetch_page("projects/testproject/admin.html")
+ assert '<option value="zxx">Test Language: zxx</option>' in project_admin
+ add_dict = {"newlanguage": "zxx", "doaddlanguage": "Add Language"}
+ add_args = "&".join(["%s=%s" % (key, urllib.quote_plus(value)) for key, value in add_dict.items()])
+ add_language = self.fetch_page("projects/testproject/admin.html?" + add_args)
+ assert "Test Language" in add_language
+ language_page = self.fetch_page("zxx/testproject/")
+ assert "Test Language" in language_page
+ assert "Pootle Unit Tests" in language_page
+ assert "0 files, 0/0 words (0%) translated" in language_page
+ test_add_project_language.userprefs = {"rights.siteadmin": True}
+
+ def setup_testproject_dir(self, perms=None):
+ """Sets up a blank test project directory"""
+ projectname = "testproject"
+ lang = "zxx"
+ projectdir = os.path.join(self.podir, projectname)
+ os.mkdir(projectdir)
+ podir = os.path.join(projectdir, lang)
+ os.mkdir(podir)
+ if perms:
+ prefsfile = file(os.path.join(projectdir, lang, "pootle-%s-%s.prefs" % (projectname, lang)), 'w')
+ prefsfile.write("# Prefs file for Pootle unit tests\nrights:\n testuser = '%s'\n" % perms)
+ prefsfile.close()
+ language_page = self.fetch_page("%s/%s/" % (lang, projectname))
+
+ assert "Test Language" in language_page
+ assert "Pootle Unit Tests" in language_page
+ assert "0 files, 0/0 words (0%) translated" in language_page
+ return podir
+
+ def test_upload_new_file(self):
+ """tests that we can upload a new file into a project"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate, admin")
+ fields = [("doupload", "Upload File")]
+ pocontents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n'
+ files = [("uploadfile", "test_upload.po", pocontents)]
+ content_type, upload_contents = postMultipart.encode_multipart_formdata(fields, files)
+ headers = {"Content-Type": content_type, "Content-Length": len(upload_contents)}
+ response = self.post_request("zxx/testproject/", upload_contents, headers)
+ assert ' href="test_upload.po?' in response
+ pofile_storename = os.path.join(podir, "test_upload.po")
+ assert os.path.isfile(pofile_storename)
+ assert open(pofile_storename).read() == pocontents
+ pocontents_download = self.fetch_page("zxx/testproject/test_upload.po")
+ assert pocontents_download == pocontents
+
+ def test_upload_new_xlifffile(self):
+ """tests that we can upload a new xliff file into a project"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate, admin")
+ fields = [("doupload", "Upload File")]
+ xliffcontents = '''<?xml version="1.0" encoding="utf-8"?>
+<xliff version="1.1" xmlns="urn:oasis:names:tc:xliff:document:1.1"><file datatype="po" original="test_upload.po" source-language="en-US"><body><trans-unit id="1" xml:space="preserve"><source>test</source><target state="translated">rest</target><context-group name="po-reference" purpose="location"><context context-type="sourcefile">test.c</context></context-group></trans-unit></body></file></xliff>'''
+ pocontents_expected = '#: test.c\nmsgid "test"\nmsgstr "rest"\n'
+ files = [("uploadfile", "test_upload.xlf", xliffcontents)]
+ content_type, upload_contents = postMultipart.encode_multipart_formdata(fields, files)
+ headers = {"Content-Type": content_type, "Content-Length": len(upload_contents)}
+ response = self.post_request("zxx/testproject/", upload_contents, headers)
+ assert ' href="test_upload.po?' in response
+ pofile_storename = os.path.join(podir, "test_upload.po")
+ assert os.path.isfile(pofile_storename)
+ assert open(pofile_storename).read() == xliffcontents
+ # Well, since it is a new file, it actually now is an xliff file...
+# pocontents_download = self.fetch_page("zxx/testproject/test_upload.po")
+# assert pocontents_download == pocontents_expected
+
+ def test_upload_suggestions(self):
+ """tests that we can upload when we only have suggest rights"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, suggest")
+
+ tree = potree.POTree(self.prefs.Pootle)
+ project = projects.TranslationProject("zxx", "testproject", tree)
+ po1contents = '#: test.c\nmsgid "test"\nmsgstr ""\n'
+ open(os.path.join(podir, "test_upload.po"), "w").write(po1contents)
+
+ fields = [("doupload", "Upload File")]
+ pocontents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n'
+ files = [("uploadfile", "test_upload.po", pocontents)]
+ content_type, upload_contents = postMultipart.encode_multipart_formdata(fields, files)
+ headers = {"Content-Type": content_type, "Content-Length": len(upload_contents)}
+ response = self.post_request("zxx/testproject/", upload_contents, headers)
+ assert ' href="test_upload.po?' in response
+ # Check that the orignal file didn't take the new suggestion.
+ # We test with 'in' since the header is added
+ assert po1contents in self.fetch_page("zxx/testproject/test_upload.po")
+ suggestions_content = open(os.path.join(podir, "test_upload.po.pending"), 'r').read()
+ assert 'msgstr "rest"' in suggestions_content
+ test_upload_suggestions.userprefs = {"rights.siteadmin": False}
+
+ def test_upload_overwrite(self):
+ """tests that we can overwrite a file in a project"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate, overwrite")
+
+ tree = potree.POTree(self.prefs.Pootle)
+ project = projects.TranslationProject("zxx", "testproject", tree)
+ po1contents = '#: test.c\nmsgid "test"\nmsgstr ""\n'
+ open(os.path.join(podir, "test_upload.po"), "w").write(po1contents)
+
+ fields = [("doupload", "Upload File"),("dooverwrite", "No")]
+ pocontents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n'
+ files = [("uploadfile", "test_upload.po", pocontents)]
+ content_type, upload_contents = postMultipart.encode_multipart_formdata(fields, files)
+ headers = {"Content-Type": content_type, "Content-Length": len(upload_contents)}
+ response = self.post_request("zxx/testproject/", upload_contents, headers)
+ assert ' href="test_upload.po?' in response
+ # Now we only test with 'in' since the header is added
+ assert pocontents in self.fetch_page("zxx/testproject/test_upload.po")
+ firstpofile = self.fetch_page("zxx/testproject/test_upload.po")
+
+ fields = [("doupload", "Upload File"),("dooverwrite", "Yes")]
+ pocontents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n#: test.c\nmsgid "azoozoo"\nmsgstr ""'
+ files = [("uploadfile", "test_upload.po", pocontents)]
+ content_type, upload_contents = postMultipart.encode_multipart_formdata(fields, files)
+ headers = {"Content-Type": content_type, "Content-Length": len(upload_contents)}
+ response = self.post_request("zxx/testproject/", upload_contents, headers)
+ assert pocontents == self.fetch_page("zxx/testproject/test_upload.po")
+
+ def test_upload_new_archive(self):
+ """tests that we can upload a new archive of files into a project"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate, admin")
+ fields = [("doupload", "Upload File")]
+ po1contents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n'
+ po2contents = '#: frog.c\nmsgid "tadpole"\nmsgstr "fish"\n'
+ archivefile = wStringIO.StringIO()
+ archive = zipfile.ZipFile(archivefile, "w", zipfile.ZIP_DEFLATED)
+ archive.writestr("test.po", po1contents)
+ archive.writestr("frog.po", po2contents)
+ archive.close()
+ files = [("uploadfile", "upload.zip", archivefile.getvalue())]
+ content_type, upload_contents = postMultipart.encode_multipart_formdata(fields, files)
+ headers = {"Content-Type": content_type, "Content-Length": len(upload_contents)}
+ response = self.post_request("zxx/testproject/", upload_contents, headers)
+ for filename, contents in [("test.po", po1contents), ("frog.po", po2contents)]:
+ assert (' href="%s?' % filename) in response
+ pofile_storename = os.path.join(podir, filename)
+ assert os.path.isfile(pofile_storename)
+ assert open(pofile_storename).read() == contents
+ pocontents_download = self.fetch_page("zxx/testproject/%s" % filename)
+ assert pocontents_download == contents
+
+ def test_upload_over_file(self):
+ """tests that we can upload a new version of a file into a project"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate")
+ tree = potree.POTree(self.prefs.Pootle)
+ project = projects.TranslationProject("zxx", "testproject", tree)
+ po1contents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n\n#: frog.c\nmsgid "tadpole"\nmsgstr "fish"\n'
+ open(os.path.join(podir, "test_existing.po"), "w").write(po1contents)
+ po2contents = '#: test.c\nmsgid "test"\nmsgstr "rested"\n\n#: toad.c\nmsgid "slink"\nmsgstr "stink"\n'
+ fields = [("doupload", "Upload File")]
+ files = [("uploadfile", "test_existing.po", po2contents)]
+ content_type, upload_contents = postMultipart.encode_multipart_formdata(fields, files)
+ headers = {"Content-Type": content_type, "Content-Length": len(upload_contents)}
+ response = self.post_request("zxx/testproject/?editing=1", upload_contents, headers)
+ # NOTE: this is what we do currently, any altered strings become suggestions.
+ # It may be a good idea to change this
+ mergedcontents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n\n#: frog.c\nmsgid "tadpole"\nmsgstr "fish"\n\n#: toad.c\nmsgid "slink"\nmsgstr "stink"\n'
+ suggestedcontents = '#: test.c\nmsgid ""\n"_: suggested by testuser\\n"\n"test"\nmsgstr "rested"\n'
+ assert ' href="test_existing.po?' in response
+ pofile_storename = os.path.join(podir, "test_existing.po")
+ assert os.path.isfile(pofile_storename)
+ assert open(pofile_storename).read().find(mergedcontents) >= 0
+ pendingfile_storename = os.path.join(podir, "test_existing.po.pending")
+ assert os.path.isfile(pendingfile_storename)
+ assert open(pendingfile_storename).read().find(suggestedcontents) >= 0
+ pocontents_download = self.fetch_page("zxx/testproject/test_existing.po")
+ assert pocontents_download.find(mergedcontents) >= 0
+ test_upload_over_file.userprefs = {"rights.siteadmin": True}
+
+ def test_upload_xliff_over_file(self):
+ """tests that we can upload a new version of a file into a project"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate")
+ tree = potree.POTree(self.prefs.Pootle)
+ project = projects.TranslationProject("zxx", "testproject", tree)
+ pocontents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n\n#: frog.c\nmsgid "tadpole"\nmsgstr "fish"\n'
+ open(os.path.join(podir, "test_existing.po"), "w").write(pocontents)
+ xlfcontents = '''<?xml version="1.0" encoding="utf-8"?>
+<xliff version="1.1" xmlns="urn:oasis:names:tc:xliff:document:1.1">
+
+<file datatype="po" original="test_existing.po" source-language="en-US"><body>
+<trans-unit id="1" xml:space="preserve" approved="yes">
+ <source>test</source>
+ <target state="translated">rested</target>
+ <context-group name="po-reference" purpose="location">
+ <context context-type="sourcefile">test.c</context>
+ </context-group>
+</trans-unit>
+<trans-unit id="2" xml:space="preserve" approved="yes">
+ <source>slink</source>
+ <target state="translated">stink</target>
+ <context-group name="po-reference" purpose="location">
+ <context context-type="sourcefile">toad.c</context>
+ </context-group>
+ </trans-unit>
+</body></file></xliff>
+'''
+ fields = [("doupload", "Upload File")]
+ files = [("uploadfile", "test_existing.xlf", xlfcontents)]
+ content_type, upload_contents = postMultipart.encode_multipart_formdata(fields, files)
+ headers = {"Content-Type": content_type, "Content-Length": len(upload_contents)}
+ response = self.post_request("zxx/testproject/?editing=1", upload_contents, headers)
+ # NOTE: this is what we do currently, any altered strings become suggestions.
+ # It may be a good idea to change this
+ mergedcontents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n\n#: frog.c\nmsgid "tadpole"\nmsgstr "fish"\n\n#: toad.c\nmsgid "slink"\nmsgstr "stink"\n'
+ suggestedcontents = '#: test.c\nmsgid ""\n"_: suggested by testuser\\n"\n"test"\nmsgstr "rested"\n'
+ assert ' href="test_existing.po?' in response
+ pofile_storename = os.path.join(podir, "test_existing.po")
+ assert os.path.isfile(pofile_storename)
+ assert open(pofile_storename).read().find(mergedcontents) >= 0
+ pendingfile_storename = os.path.join(podir, "test_existing.po.pending")
+ assert os.path.isfile(pendingfile_storename)
+ assert open(pendingfile_storename).read().find(suggestedcontents) >= 0
+ pocontents_download = self.fetch_page("zxx/testproject/test_existing.po")
+ assert pocontents_download.find(mergedcontents) >= 0
+ test_upload_xliff_over_file.userprefs = {"rights.siteadmin": True}
+
+ def test_submit_translation(self):
+ """tests that we can upload a new file into a project"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate")
+ pofile_storename = os.path.join(podir, "test_upload.po")
+ pocontents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n'
+ open(pofile_storename, "w").write(pocontents)
+ expected_pocontents = '#: test.c\nmsgid "test"\nmsgstr "restrain"\n'
+ fields = {"orig-pure0.0": "test", "trans0": "restrain", "submit0": "submit", "pofilename": "test_upload.po"}
+ content_type, post_contents = postMultipart.encode_multipart_formdata(fields.items(), [])
+ headers = {"Content-Type": content_type, "Content-Length": len(post_contents)}
+ translatepage = self.post_request("zxx/testproject/test_upload.po?translate=1&editing=1", post_contents, headers)
+ tree = potree.POTree(self.prefs.Pootle)
+ project = projects.TranslationProject("zxx", "testproject", tree)
+ pofile = project.getpofile("test_upload.po")
+ assert str(pofile.units[1]) == expected_pocontents
+
+ def test_submit_plural_translation(self):
+ """tests that we can submit a translation with plurals"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate")
+ pofile_storename = os.path.join(podir, "test_upload.po")
+ pocontents = 'msgid "singular"\nmsgid_plural "plural"\nmsgstr[0] "enkelvoud string"\nmsgstr[1] "meervoud boodskap"\n'
+ open(pofile_storename, "w").write(pocontents)
+ expected_pocontents = 'msgid "singular"\nmsgid_plural "plural"\nmsgstr[0] "enkelvoud"\nmsgstr[1] "meervoud"\n'
+ fields = {"orig-pure0.0": "singular", "trans0.0": "enkelvoud", "trans0.1": "meervoud", "submit0": "submit", "pofilename": "test_upload.po"}
+ content_type, post_contents = postMultipart.encode_multipart_formdata(fields.items(), [])
+ headers = {"Content-Type": content_type, "Content-Length": len(post_contents)}
+ translatepage = self.post_request("zxx/testproject/test_upload.po?translate=1&editing=1", post_contents, headers)
+ tree = potree.POTree(self.prefs.Pootle)
+ project = projects.TranslationProject("zxx", "testproject", tree)
+ pofile = project.getpofile("test_upload.po")
+ assert str(pofile.units[1]) == expected_pocontents
+
+ def test_submit_plural_to_singular_lang(self):
+ """tests that we can submit a translation with plurals to a language without plurals."""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate")
+ pofile_storename = os.path.join(podir, "test_upload.po")
+ pocontents = 'msgid "singular"\nmsgid_plural "plural"\nmsgstr[0] "enkelvoud string"\n'
+ open(pofile_storename, "w").write(pocontents)
+ expected_pocontents = 'msgid "singular"\nmsgid_plural "plural"\nmsgstr[0] "enkelvoud"\n'
+ fields = {"orig-pure0.0": "singular", "trans0.0": "enkelvoud", "submit0": "submit", "pofilename": "test_upload.po"}
+ content_type, post_contents = postMultipart.encode_multipart_formdata(fields.items(), [])
+ headers = {"Content-Type": content_type, "Content-Length": len(post_contents)}
+ translatepage = self.post_request("zxx/testproject/test_upload.po?translate=1&editing=1", post_contents, headers)
+ tree = potree.POTree(self.prefs.Pootle)
+ project = projects.TranslationProject("zxx", "testproject", tree)
+ pofile = project.getpofile("test_upload.po")
+ assert str(pofile.units[1]) == expected_pocontents
+
+
+ def test_submit_fuzzy(self):
+ """tests that we can mark a unit as fuzzy"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate")
+ pofile_storename = os.path.join(podir, "test_fuzzy.po")
+ pocontents = '#: test.c\nmsgid "fuzzy"\nmsgstr "wuzzy"\n'
+ open(pofile_storename, "w").write(pocontents)
+ expected_pocontents = '#: test.c\n#, fuzzy\nmsgid "fuzzy"\nmsgstr "wuzzy"\n'
+
+ # Fetch the page and check that the fuzzy checkbox is NOT checked.
+ translatepage = self.fetch_page("zxx/testproject/test_fuzzy.po?translate=1&editing=1")
+ assert '<input accesskey="f" type="checkbox" name="fuzzy0" />' in translatepage
+
+ fields = {"orig-pure0.0": "fuzzy", "trans0": "wuzzy", "submit0": "submit", "fuzzy0": "on", "pofilename": "test_fuzzy.po"}
+ content_type, post_contents = postMultipart.encode_multipart_formdata(fields.items(), [])
+ headers = {"Content-Type": content_type, "Content-Length": len(post_contents)}
+ translatepage = self.post_request("zxx/testproject/test_fuzzy.po?translate=1&editing=1", post_contents, headers)
+
+ # Fetch the page again and check that the fuzzy checkbox IS checked.
+ translatepage = self.fetch_page("zxx/testproject/test_fuzzy.po?translate=1&editing=1")
+ assert '<input type="checkbox" accesskey="f" checked="checked" name="fuzzy0" />' in translatepage
+
+ tree = potree.POTree(self.prefs.Pootle)
+ project = projects.TranslationProject("zxx", "testproject", tree)
+ pofile = project.getpofile("test_fuzzy.po")
+ assert str(pofile.units[1]) == expected_pocontents
+ assert pofile.units[1].isfuzzy()
+
+ # Submit the translation again, without the fuzzy checkbox checked
+ fields = {"orig-pure0.0": "fuzzy", "trans0": "wuzzy", "submit0": "submit", "pofilename": "test_fuzzy.po"}
+ content_type, post_contents = postMultipart.encode_multipart_formdata(fields.items(), [])
+ headers = {"Content-Type": content_type, "Content-Length": len(post_contents)}
+ translatepage = self.post_request("zxx/testproject/test_fuzzy.po?translate=1&editing=1", post_contents, headers)
+
+ # Fetch the page once more and check that the fuzzy checkbox is NOT checked.
+ translatepage = self.fetch_page("zxx/testproject/test_fuzzy.po?translate=1&editing=1")
+ assert '<input accesskey="f" type="checkbox" name="fuzzy0" />' in translatepage
+ tree = potree.POTree(self.prefs.Pootle)
+ project = projects.TranslationProject("zxx", "testproject", tree)
+ pofile = project.getpofile("test_fuzzy.po")
+ assert not pofile.units[1].isfuzzy()
+
+ def test_submit_translator_comments(self):
+ """tests that we can edit translator comments"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate")
+ pofile_storename = os.path.join(podir, "test_upload.po")
+ pocontents = '#: test.c\nmsgid "test"\nmsgstr "rest"\n'
+ open(pofile_storename, "w").write(pocontents)
+ expected_pocontents = '# Some test comment\n# test comment line 2\n#: test.c\nmsgid "test"\nmsgstr "rest"\n'
+ fields = {"orig-pure0.0": "test", "trans0": "rest", "translator_comments0": "Some test comment\ntest comment line 2", "submit0": "submit", "pofilename": "test_upload.po"}
+ content_type, post_contents = postMultipart.encode_multipart_formdata(fields.items(), [])
+ headers = {"Content-Type": content_type, "Content-Length": len(post_contents)}
+ translatepage = self.post_request("zxx/testproject/test_upload.po?translate=1&editing=1", post_contents, headers)
+ tree = potree.POTree(self.prefs.Pootle)
+ project = projects.TranslationProject("zxx", "testproject", tree)
+ pofile = project.getpofile("test_upload.po")
+ assert str(pofile.units[1]) == expected_pocontents
+
+
+ def test_navigation_url_parameters(self):
+ """tests that the navigation urls (next/end etc) has the necessary parameters"""
+ self.login()
+ podir = self.setup_testproject_dir(perms="view, translate")
+ pofile_storename = os.path.join(podir, "test_nav_url.po")
+ pocontents = '#: test.c\nmsgid "test1"\nmsgstr "rest"\n'
+ pocontents += '\n#. Second Unit\nmsgid "test2"\nmsgstr "rest2"\n'
+ open(pofile_storename, "w").write(pocontents)
+ self.prefs.setvalue("Pootle.users.testuser.viewrows", 1)
+ translatepage = self.fetch_page("zxx/testproject/test_nav_url.po?translate=1&view=1")
+ patterns = re.findall('<a href=".(.*)".*Next 1.*</a>', translatepage)
+ parameters = patterns[0].split('&amp;')
+ assert 'pofilename=test_nav_url.po' in parameters
+ assert 'item=1' in parameters
+
+def MakeServerTester(baseclass):
+ """Makes a new Server Tester class using the base class to setup webserver etc"""
+ class TestServer(baseclass, ServerTester):
+ def setup_method(self, method):
+ ServerTester.setup_prefs(self, method)
+ baseclass.setup_method(self, method)
+ ServerTester.setup_cookies(self)
+ return TestServer
+
+TestServerCmdLine = MakeServerTester(test_cmdlineserver.TestCmdlineServer)
+# TestServerService = MakeServerTester(test_service.TestjLogbookService)
+# TestServerApache = MakeServerTester(test_apache.TestApachejLogbook)
+
diff --git a/Pootle-1.2.1/Pootle/test_cmdlineserver.py b/Pootle-1.2.1/Pootle/test_cmdlineserver.py
new file mode 100644
index 0000000..d2ae939
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/test_cmdlineserver.py
@@ -0,0 +1,75 @@
+#!/usr/bin/env python
+
+"""Server environment for testing simplewebserver (command line web server)
+This uses the basic environment from test_create and runs a web server in a separate thread
+The top-level tests are then in test_client / test_ie / test_mozilla etc
+These can then be layered on top of this server"""
+
+from Pootle import test_create
+from jToolkit.web import simplewebserver
+from jToolkit import errors
+import urllib2
+import time
+
+class TestCmdlineServer(test_create.NoReuse):
+ # this is called from setup_class in test_create.TestCreate
+ def setup_webserver(self):
+ """setup the webserver that will be used for the tests"""
+ print "setting up web server"
+ webserverclass = simplewebserver.jToolkitHTTPServer(simplewebserver.ThreadedHTTPServer)
+ options = simplewebserver.WebOptionParser().parse_args([])[0]
+ options.port = 0
+ options.servertype = 'standard'
+ errorhandler = errors.ConsoleErrorHandler()
+ webserver = webserverclass(options, errorhandler)
+ return webserver
+
+ def setup_method(self, method):
+ """starts a new simplewebserver in a separate thread"""
+ try:
+ test_create.NoReuse.setup_method(self, method)
+ except Exception, e:
+ print "exception in test_create setup_method:", e
+ test_create.NoReuse.teardown_method(self, method)
+ raise
+ print "finished setup_method phase 1"
+ # self.webserver.options.port = self.port
+ self.baseaddress = "http://%s:%d/" % (self.webserver.hostname, self.webserver.port)
+ ThreadClass = self.webserver.ThreadClass
+ self.webserverthread = ThreadClass(target = simplewebserver.run, name="webserver", args=(self.server, self.webserver.options))
+ self.webserverthread.start()
+ # wait until it actually is started
+ waited = 0.0
+ sleep = 0.001
+ maxwait = 3.0
+ while not hasattr(self.webserver, "stop"):
+ time.sleep(sleep)
+ waited += sleep
+ if sleep > maxwait:
+ raise RuntimeError("webserver failed to start in %0.1f seconds" % maxwait)
+
+ def teardown_method(self, method):
+ """close the web server for this method"""
+ try:
+ self.server.sessioncache.clear()
+ self.webserver.setstop(True)
+ # ping the webserver to make it stop
+ waited = 0.0
+ sleep = 0.05
+ max_wait = 5.0
+ while self.webserverthread.isAlive():
+ time.sleep(sleep)
+ if not self.webserverthread.isAlive():
+ break
+ # if the webserver is sleeping a request should wake it up...
+ # try:
+ # x = urllib2.urlopen(self.baseaddress)
+ # except Exception, e:
+ # pass
+ waited += sleep
+ sleep += 0.05
+ if waited >= max_wait:
+ raise RuntimeError("webserver failed to stop in %0.1f seconds" % (waited))
+ finally:
+ test_create.NoReuse.teardown_method(self, method)
+
diff --git a/Pootle-1.2.1/Pootle/test_create.py b/Pootle-1.2.1/Pootle/test_create.py
new file mode 100644
index 0000000..0a676ce
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/test_create.py
@@ -0,0 +1,168 @@
+#!/usr/bin/env python
+
+"""Basic infrastructure for creating an environment for testing webservers
+This gets used by test_cmdlineserver / test_service / test_apache (which are for different webservers)
+The top-level tests are then in test_client / test_ie / test_mozilla etc
+These can then be layered on top of different test servers"""
+
+from Pootle import pootle
+from Pootle import users
+from jToolkit.web import simplewebserver
+from jToolkit.web import session
+from jToolkit.data import dates
+from jToolkit import prefs
+import os
+
+sessioncache = session.SessionCache()
+
+def isclassmethod(cls, method):
+ """returns whether the given method (accessed as a class attribute) is a classmethod"""
+ return method.im_self == cls
+
+class TestCreate(object):
+ """a test class to run tests on a test Pootle Server"""
+ def setup_class(cls):
+ """create the testing environment"""
+ print "setup_class called on", cls.__name__
+ cls.save_attribs = cls.__dict__.keys()
+ cls.setup_testdir()
+ # some testing methods find recreating the webserver per test easier
+ if isclassmethod(cls, cls.setup_webserver):
+ cls.webserver = cls.setup_webserver()
+ else:
+ cls.webserver = None
+ setupprefs = cls.make_prefs()
+ open(cls.prefsfile, "w").write(setupprefs.getsource())
+ cls.prefs = prefs.PrefsParser(cls.prefsfile)
+ cls.prefs.resolveimportmodules()
+ if isclassmethod(cls, cls.setup_pootleserver):
+ cls.setup_pootleserver()
+
+ def setup_testdir(cls):
+ """sets up a test directory"""
+ cls.testdir = "%s_testdir" % (cls.__name__)
+ cls.cleardir(cls.testdir)
+ os.mkdir(cls.testdir)
+ cls.podir = os.path.join(cls.testdir, "po")
+ os.mkdir(cls.podir)
+ cls.prefsfile = os.path.join(cls.testdir, "%s.prefs" % (cls.__name__))
+ setup_testdir = classmethod(setup_testdir)
+
+ def teardown_testdir(cls):
+ """makes sure the test directory is clear"""
+ cls.cleardir(cls.testdir)
+ teardown_testdir = classmethod(teardown_testdir)
+
+ def teardown_class(cls):
+ """removes the attributes set up by setup_class"""
+ if os.path.exists(cls.prefsfile):
+ os.remove(cls.prefsfile)
+ cls.teardown_testdir()
+ cls.teardown_attribs()
+
+ def cleardir(cls, dirname):
+ """removes the given directory"""
+ if os.path.exists(dirname):
+ for dirpath, subdirs, filenames in os.walk(dirname, topdown=False):
+ for name in filenames:
+ os.remove(os.path.join(dirpath, name))
+ for name in subdirs:
+ os.rmdir(os.path.join(dirpath, name))
+ if os.path.exists(dirname): os.rmdir(dirname)
+ assert not os.path.exists(dirname)
+ cleardir = classmethod(cleardir)
+
+ def teardown_attribs(cls):
+ """removes class attributes that have been set while running"""
+ save_attribs = cls.save_attribs
+ for attrib in cls.__dict__.keys():
+ if attrib not in save_attribs:
+ delattr(cls, attrib)
+ teardown_attribs = classmethod(teardown_attribs)
+
+ def setup_pootleserver(cls):
+ """Sets up a Pootle server, and a session on it"""
+ cls.server = pootle.PootleServer(cls.prefs.Pootle, cls.webserver)
+ cls.server.name = cls.__name__
+ cls.instance = cls.server.instance
+ cls.session = cls.setup_session()
+ setup_pootleserver = classmethod(setup_pootleserver)
+
+ def setup_webserver(cls):
+ """setup the webserver that will be used for the tests"""
+ return simplewebserver.DummyServer()
+ setup_webserver = classmethod(setup_webserver)
+
+ def setup_session(cls):
+ """sets up the session for the test"""
+ session = users.PootleSession(sessioncache, cls.server)
+ timestamp = dates.formatdate(dates.currentdate(), '%Y%m%d%H%M%S')
+ session.create("admin","",timestamp,'en')
+ session.remote_ip = "unit tests..."
+ return session
+ setup_session = classmethod(setup_session)
+
+ def make_initial_prefs(cls):
+ return prefs.PrefsParser()
+ make_initial_prefs = classmethod(make_initial_prefs)
+
+ def make_prefs(cls):
+ prefs = cls.make_initial_prefs()
+ prefs.setvalue('importmodules.pootle', 'Pootle.pootle')
+ prefs.setvalue('Pootle.serverclass', 'pootle.PootleServer')
+ instance = prefs.Pootle
+ instance.sessionkey = 'change'
+ instance.errorfile = os.path.join(cls.testdir, "pootle_unittest-%s-errors.log" % cls.__name__)
+ instance.tracefile = os.path.join(cls.testdir, "pootle_unittest-%s-trace.log" % cls.__name__)
+ prefs.setvalue("Pootle.languages.zxx.fullname", "Test Language")
+ prefs.setvalue("Pootle.projects.testproject.fullname", "Pootle Unit Tests")
+ prefs.setvalue("Pootle.projects.testproject.description", "Test Project for verifying functionality")
+ prefs.setvalue("Pootle.projects.testproject.localfiletype", "po")
+ prefs.setvalue("Pootle.users.testuser.activated", 1)
+ testuserprefs = instance.users.testuser
+ testuserprefs.passwdhash = session.md5hexdigest("")
+ instance.podirectory = cls.podir
+ return prefs
+ make_prefs = classmethod(make_prefs)
+
+ def test_created(self):
+ """test that the po directory actually exists"""
+ print self.podir
+ assert os.path.isdir(self.podir)
+
+class NoReuse(TestCreate):
+ """don't reuse webserver objects between methods"""
+ def setup_webserver(self):
+ """setup the webserver that will be used for the tests"""
+ return simplewebserver.DummyServer()
+
+ def setup_pootleserver(self):
+ """Sets up a Pootle server, and a session on it"""
+ self.server = pootle.PootleServer(self.prefs.Pootle, self.webserver)
+ self.server.name = self.__class__.__name__
+ self.instance = self.server.instance
+ self.session = self.setup_session()
+
+ def setup_session(self):
+ """sets up the session for the test"""
+ session = users.PootleSession(sessioncache, self.server)
+ timestamp = dates.formatdate(dates.currentdate(), '%Y%m%d%H%M%S')
+ session.create("admin","",timestamp,'en')
+ session.remote_ip = "unit tests..."
+ return session
+
+ def setup_method(self, method):
+ """sets up a webserver and jlogbookserver for this method"""
+ self.webserver = self.setup_webserver()
+ self.setup_testdir()
+ self.setup_pootleserver()
+
+ def teardown_method(self, method):
+ """sets up a webserver and jlogbookserver for this method"""
+ self.server = None
+ self.instance = None
+ self.logtable = None
+ self.session = None
+ self.webserver = None
+ self.teardown_testdir()
+
diff --git a/Pootle-1.2.1/Pootle/test_indexing.py b/Pootle-1.2.1/Pootle/test_indexing.py
new file mode 100644
index 0000000..6c4d57b
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/test_indexing.py
@@ -0,0 +1,32 @@
+# -*- coding: utf-8 -*-
+from Pootle import pootle
+from Pootle import pootlefile
+
+def setup_module(module):
+ """initialize global variables in the module"""
+ parser = pootle.PootleOptionParser()
+ options, args = parser.parse_args(["--servertype=dummy"])
+ module.server = parser.getserver(options)
+ # shortcuts to make tests easier
+ module.potree = module.server.potree
+
+def test_init():
+ """tests that the index can be initialized"""
+ for languagecode, languagename in potree.getlanguages("pootle"):
+ translationproject = potree.getproject(languagecode, "pootle")
+ assert translationproject.make_indexer()
+
+def test_search():
+ """tests that the index can be initialized"""
+ pass_search = pootlefile.Search(searchtext="login")
+ fail_search = pootlefile.Search(searchtext="Zrogny")
+ for languagecode, languagename in potree.getlanguages("pootle"):
+ translationproject = potree.getproject(languagecode, "pootle")
+ print translationproject.make_indexer().location
+ pass_search_results = translationproject.searchpoitems("pootle.po", -1, pass_search)
+ pass_search_results = [(pofilename, item) for pofilename, item in pass_search_results]
+ assert pass_search_results
+ fail_search_results = translationproject.searchpoitems("pootle.po", -1, fail_search)
+ fail_search_results = [(pofilename, item) for pofilename, item in fail_search_results]
+ assert not fail_search_results
+
diff --git a/Pootle-1.2.1/Pootle/test_init.py b/Pootle-1.2.1/Pootle/test_init.py
new file mode 100644
index 0000000..24c8c9c
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/test_init.py
@@ -0,0 +1,10 @@
+from Pootle import pootle
+
+def setup_module(module):
+ """initialize global variables in the module"""
+ parser = pootle.PootleOptionParser()
+ options, args = parser.parse_args(["--servertype=dummy"])
+ module.server = parser.getserver(options)
+ # shortcuts to make tests easier
+ module.potree = module.server.potree
+
diff --git a/Pootle-1.2.1/Pootle/test_pootlefile.py b/Pootle-1.2.1/Pootle/test_pootlefile.py
new file mode 100644
index 0000000..0365059
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/test_pootlefile.py
@@ -0,0 +1,145 @@
+#!/usr/bin/env python
+
+from Pootle import pootlefile
+from Pootle import pootle
+from Pootle import projects
+from translate.storage import po
+from translate.storage import test_po
+from translate.filters import checks
+from translate.misc import wStringIO
+
+import os
+
+class TestPootleFile(test_po.TestPOFile):
+ class pootletestfile(pootlefile.pootlefile):
+ def __init__(self):
+ """wrapper constructor for pootlefile that uses temporary filename"""
+ project = projects.DummyProject(self.testdir)
+ return pootlefile.pootlefile.__init__(self, project, self.pofilename)
+
+ StoreClass = pootletestfile
+
+ def setup_method(self, method):
+ """creates a clean test directory for the given method"""
+ self.testdir = "%s_%s" % (self.__class__.__name__, method.__name__)
+ self.filename = "%s_%s.po" % (self.__class__.__name__, method.__name__)
+ self.pootletestfile.testdir = self.testdir
+ self.pootletestfile.pofilename = self.filename
+ self.cleardir()
+ os.mkdir(self.testdir)
+ self.rundir = os.path.abspath(os.getcwd())
+ #potree.podirectory = self.testdir
+ os.mkdir(os.path.join(self.testdir, 'unittest_project'))
+ os.mkdir(os.path.join(self.testdir, 'unittest_project', 'xx'))
+ posource = r'''#: test.c
+msgid "test"
+msgstr "rest"
+
+#, fuzzy
+msgid "tabel"
+msgstr "tafel"
+
+msgid "chair"
+msgstr ""'''
+ file(os.path.join(self.testdir, 'unittest_project', 'xx', 'test.po'), 'w').write(posource)
+
+ def teardown_method(self, method):
+ """removes the test directory for the given method"""
+ os.chdir(self.rundir)
+ self.cleardir()
+
+ def cleardir(self):
+ """removes the test directory"""
+ if os.path.exists(self.testdir):
+ for dirpath, subdirs, filenames in os.walk(self.testdir, topdown=False):
+ for name in filenames:
+ os.remove(os.path.join(dirpath, name))
+ for name in subdirs:
+ os.rmdir(os.path.join(dirpath, name))
+ if os.path.exists(self.testdir): os.rmdir(self.testdir)
+ assert not os.path.exists(self.testdir)
+
+ def poparse(self, posource):
+ """helper that parses po source without requiring files"""
+ def filtererrorhandler(functionname, str1, str2, e):
+ print "error in filter %s: %r, %r, %s" % (functionname, str1, str2, e)
+ return False
+
+ checkerclasses = [checks.StandardChecker, checks.StandardUnitChecker]
+ stdchecker = checks.TeeChecker(checkerclasses=checkerclasses, errorhandler=filtererrorhandler)
+ dummyproject = projects.DummyStatsProject(self.rundir, stdchecker, "unittest_project", "xx")
+
+ pofile = pootlefile.pootlefile(dummyproject, "test.po", generatestats=False)
+ pofile.parse(posource)
+ return pofile
+
+ def poregen(self, posource):
+ """helper that converts po source to pofile object and back"""
+ return str(self.poparse(posource))
+
+ def test_simpleentry(self):
+ """checks that a simple po entry is parsed correctly"""
+ posource = '#: test.c\nmsgid "test"\nmsgstr "rest"\n'
+ pofile = self.poparse(posource)
+ assert len(pofile.units) == 1
+ unit = pofile.units[0]
+ assert unit.getlocations() == ["test.c"]
+ assert unit.source == "test"
+ assert unit.target == "rest"
+
+ def test_classifyunits(self):
+ "Tests basic use of classifyunits."
+ posource = r'''#: test.c
+msgid "test"
+msgstr "rest"
+
+#, fuzzy
+msgid "tabel"
+msgstr "tafel"
+
+msgid "chair"
+msgstr ""'''
+ pofile = self.poparse(posource)
+ pofile.savepofile()
+ assert pofile.statistics.getstats()['fuzzy'] == [1]
+ assert pofile.statistics.getstats()['untranslated'] == [2]
+ assert pofile.statistics.getstats()['translated'] == [0]
+ assert pofile.statistics.getstats()['total'] == [0, 1, 2]
+
+ def test_updateunit(self):
+ """Test the updateunit() method."""
+ posource = '#: test.c\nmsgid "upd"\nmsgstr "update"\n'
+ testdir = os.path.join(self.testdir, 'unittest_project', 'xx')
+ filename = self.filename
+ filepath = os.path.join(testdir, filename)
+ file(filepath, 'w').write(posource)
+ dummy_project = projects.DummyProject(podir=testdir)
+ pofile = pootlefile.pootlefile(project=dummy_project, pofilename=filename)
+
+ newvalues = {}
+ pofile.updateunit(0, newvalues, None, None)
+ translation_unit = pofile.units[1]
+ assert translation_unit.target == "update"
+ assert not translation_unit.isfuzzy()
+ assert str(translation_unit) == posource
+
+ newvalues = {"target": "opdateer"}
+ pofile.updateunit(0, newvalues, None, None)
+ assert translation_unit.target == "opdateer"
+ assert not translation_unit.isfuzzy()
+ expected_posource = '#: test.c\nmsgid "upd"\nmsgstr "opdateer"\n'
+ assert str(translation_unit) == expected_posource
+
+ newvalues = {"fuzzy": True}
+ pofile.updateunit(0, newvalues, None, None)
+ assert translation_unit.target == "opdateer"
+ assert translation_unit.isfuzzy()
+ expected_posource = '#: test.c\n#, fuzzy\nmsgid "upd"\nmsgstr "opdateer"\n'
+ assert str(translation_unit) == expected_posource
+
+ newvalues = {"translator_comments": "Test comment."}
+ pofile.updateunit(0, newvalues, None, None)
+ assert translation_unit.target == "opdateer"
+ assert translation_unit.isfuzzy()
+ expected_posource = '# Test comment.\n#: test.c\n#, fuzzy\nmsgid "upd"\nmsgstr "opdateer"\n'
+ assert str(translation_unit) == expected_posource
diff --git a/Pootle-1.2.1/Pootle/tools/__init__.py b/Pootle-1.2.1/Pootle/tools/__init__.py
new file mode 100644
index 0000000..6240f2e
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/tools/__init__.py
@@ -0,0 +1,23 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+"""Tools to be used with Pootle"""
+
diff --git a/Pootle-1.2.1/Pootle/tools/updatetm b/Pootle-1.2.1/Pootle/tools/updatetm
new file mode 100755
index 0000000..e7b2026
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/tools/updatetm
@@ -0,0 +1,27 @@
+#!/usr/bin/env python
+#
+# Copyright 2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+"""Script to create the tm files for use in Pootle"""
+
+from Pootle.tools import updatetm
+
+if __name__ == '__main__':
+ updatetm.main()
+
diff --git a/Pootle-1.2.1/Pootle/tools/updatetm.py b/Pootle-1.2.1/Pootle/tools/updatetm.py
new file mode 100644
index 0000000..9d3850a
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/tools/updatetm.py
@@ -0,0 +1,98 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+"""Tool to write the .tm files for Pootle to use"""
+
+from translate.storage import factory
+from translate.search import match
+from translate.convert import convert
+import os.path
+import exceptions
+
+# We don't want to reinitialise the TM each time, so let's store it here.
+tmmatcher = None
+
+def memory(tmfile, max_candidates=4, min_similarity=75, max_length=1000):
+ """Returns the TM store to use. Only initialises on first call."""
+ global tmmatcher
+ # Only initialise first time
+ if tmmatcher is None:
+ tmstore = factory.getobject(tmfile)
+ tmmatcher = match.matcher(tmstore, max_candidates=max_candidates, min_similarity=min_similarity, max_length=max_length)
+ return tmmatcher
+
+def buildmatches(inputfile, outputfile, matcher):
+ """Builds a .po.tm file for use in Pootle"""
+ #Can't use the same name: it might open the existing file!
+ outputfile = factory.getobject(outputfile, ignore=".tm")
+ #TODO: Do something useful with current content if file exists
+
+ inputfile.units.sort(match.sourcelencmp)
+ try:
+ for unit in inputfile.units:
+ if len(unit.source) > 70:
+ break
+ if not unit.source:
+ continue
+ candidates = matcher.matches(unit.source)
+ for candidate in candidates:
+ source = candidate.source
+ target = candidate.target
+ newunit = outputfile.addsourceunit(source)
+ newunit.target = target
+ newunit.addnote(candidate.getnotes())
+ newunit.addlocations(unit.getlocations())
+ except exceptions.KeyboardInterrupt:
+ # Let's write what we have so far
+ return outputfile
+ return outputfile
+
+def writematches(inputfile, outputfile, templatefile, tm=None, max_candidates=4, min_similarity=75, max_length=1000):
+ if templatefile:
+ raise Warning("Template ignored")
+ inputfile = factory.getobject(inputfile)
+ if tm is None:
+ raise ValueError("Must have TM storage specified with --tm")
+ int_max_candidates = int(max_candidates)
+ int_min_similarity = int(min_similarity)
+ matcher = memory(tm, max_candidates=int_max_candidates, min_similarity=int_min_similarity, max_length=max_length)
+ output = buildmatches(inputfile, outputfile, matcher)
+ outputfile.writelines(str(output))
+ return 1
+
+def main(argv=None):
+ formats = {"po": ("po.tm", writematches)}
+ parser = convert.ConvertOptionParser(formats, usetemplates=False, description=__doc__)
+ parser.add_option("-t", "--tm", dest="tm", default=None,
+ help="The file to use as translation memory")
+ parser.passthrough.append("tm")
+ parser.add_option("-c", "--candidates", dest="max_candidates", default=4,
+ help="The maximum number of TM candidates to store per message")
+ parser.passthrough.append("max_candidates")
+ parser.add_option("-s", "--similarity", dest="min_similarity", default=75,
+ help="The minimum similarity for inclusion")
+ parser.passthrough.append("min_similarity")
+ parser.add_option("", "--length", dest="max_length", default=1000,
+ help="The maximum string length to consider")
+ parser.passthrough.append("min_similarity")
+ parser.run(argv)
+
+
diff --git a/Pootle-1.2.1/Pootle/translatepage.py b/Pootle-1.2.1/Pootle/translatepage.py
new file mode 100644
index 0000000..b72e567
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/translatepage.py
@@ -0,0 +1,901 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2004-2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+import re
+from jToolkit import spellcheck
+from Pootle import pagelayout
+from Pootle import projects
+from Pootle import pootlefile
+from translate.storage import po
+from translate.misc.multistring import multistring
+import difflib
+import operator
+import urllib
+
+xml_re = re.compile("&lt;.*?&gt;")
+
+def oddoreven(polarity):
+ if polarity % 2 == 0:
+ return "even"
+ elif polarity % 2 == 1:
+ return "odd"
+
+class TranslatePage(pagelayout.PootleNavPage):
+ """the page which lets people edit translations"""
+ def __init__(self, project, session, argdict, dirfilter=None):
+ self.argdict = argdict
+ self.dirfilter = dirfilter
+ self.project = project
+ self.altproject = None
+ # do we have enabled alternative source language?
+ self.enablealtsrc = getattr(session.instance, "enablealtsrc", "False")
+ if self.enablealtsrc == 'True':
+ # try to get the project if the user has chosen an alternate source language
+ altsrc = session.getaltsrclanguage()
+ if altsrc != '':
+ try:
+ self.altproject = self.project.potree.getproject(altsrc, self.project.projectcode)
+ except IndexError:
+ pass
+ self.matchnames = self.getmatchnames(self.project.checker)
+ self.searchtext = self.argdict.get("searchtext", "")
+ # TODO: fix this in jToolkit
+ if isinstance(self.searchtext, str):
+ self.searchtext = self.searchtext.decode("utf8")
+ self.showassigns = self.argdict.get("showassigns", 0)
+ if isinstance(self.showassigns, (str, unicode)) and self.showassigns.isdigit():
+ self.showassigns = int(self.showassigns)
+ self.session = session
+ self.localize = session.localize
+ self.rights = self.project.getrights(self.session)
+ self.instance = session.instance
+ self.lastitem = None
+ self.pofilename = self.argdict.pop("pofilename", None)
+ if self.pofilename == "":
+ self.pofilename = None
+ if self.pofilename is None and self.dirfilter is not None and \
+ (self.dirfilter.endswith(".po") or self.dirfilter.endswith(".xlf")):
+ self.pofilename = self.dirfilter
+ self.receivetranslations()
+ # TODO: clean up modes to be one variable
+ self.viewmode = self.argdict.get("view", 0) and "view" in self.rights
+ self.reviewmode = self.argdict.get("review", 0)
+ self.translatemode = (self.argdict.get("translate", 0) or self.argdict.get("searchtext", 0)) and ("translate" in self.rights or "suggest" in self.rights)
+ notice = {}
+ try:
+ self.finditem()
+ except StopIteration, stoppedby:
+ notice = self.getfinishedtext(stoppedby)
+ self.item = None
+ items = self.maketable()
+ # self.pofilename can change in search...
+ givenpofilename = self.pofilename
+ formaction = self.makelink("")
+ mainstats = ""
+ pagelinks = None
+ if self.viewmode:
+ rows = self.getdisplayrows("view")
+ icon="file"
+ else:
+ rows = self.getdisplayrows("translate")
+ icon="edit"
+ if self.pofilename is not None:
+ postats = self.project.getpototals(self.pofilename)
+ untranslated, fuzzy = postats["total"] - postats["translated"], postats["fuzzy"]
+ translated, total = postats["translated"], postats["total"]
+ mainstats = self.localize("%d/%d translated\n(%d untranslated, %d fuzzy)", translated, total, untranslated, fuzzy)
+ pagelinks = self.getpagelinks("?translate=1&view=1", rows)
+ navbarpath_dict = self.makenavbarpath_dict(self.project, self.session, self.pofilename, dirfilter=self.dirfilter or "")
+ # templatising
+ templatename = "translatepage"
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ # l10n: first parameter: name of the installation (like "Pootle")
+ # l10n: second parameter: project name
+ # l10n: third parameter: target language
+ # l10n: fourth parameter: file name
+ pagetitle = self.localize("%s: translating %s into %s: %s", instancetitle, self.project.projectname, self.project.languagename, self.pofilename)
+ language = {"code": pagelayout.weblanguage(self.project.languagecode), "name": self.project.languagename, "dir": pagelayout.languagedir(self.project.languagecode)}
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ stats = {"summary": mainstats, "checks": [], "tracks": [], "assigns": []}
+ templatevars = {"pagetitle": pagetitle,
+ "project": {"code": self.project.projectcode, "name": self.project.projectname},
+ "language": language,
+ "pofilename": self.pofilename,
+ # navigation bar
+ "navitems": [{"icon": icon, "path": navbarpath_dict, "actions": {}, "stats": stats}],
+ "pagelinks": pagelinks,
+ # translation form
+ "actionurl": formaction,
+ "notice": notice,
+ # l10n: Heading above the table column with the source language
+ "original_title": self.localize("Original"),
+ # l10n: Heading above the table column with the target language
+ "translation_title": self.localize("Translation"),
+ "items": items,
+ "reviewmode": self.reviewmode,
+ "accept_title": self.localize("Accept suggestion"),
+ "reject_title": self.localize("Reject suggestion"),
+ "fuzzytext": self.localize("Fuzzy"),
+ # l10n: Heading above the textarea for translator comments.
+ "translator_comments_title": self.localize("Translator comments"),
+ # l10n: Heading above the comments extracted from the programing source code
+ "developer_comments_title": self.localize("Developer comments"),
+ # l10n: This heading refers to related translations and terminology
+ "related_title": self.localize("Related"),
+ # optional sections, will appear if these values are replaced
+ "assign": None,
+ # l10n: text next to search field
+ "search": {"title": self.localize("Search"),
+ "advanced_title": self.localize("Advanced Search"),
+ "fields": self.getsearchfields()},
+ # hidden widgets
+ "searchtext": self.searchtext,
+ "pofilename": givenpofilename,
+ # general vars
+ "session": sessionvars,
+ "instancetitle": instancetitle,
+ # l10n: Text displayed when an AJAX petition is being made
+ "ajax_status_text": self.localize("Working..."),
+ # l10n: Text displayed in an alert box when an AJAX petition has failed
+ "ajax_error": self.localize("Error: Something went wrong.")
+ }
+
+ if self.extra_class:
+ templatevars["search"]["extra_class"] = "nodefaultsearch"
+
+ if self.showassigns and "assign" in self.rights:
+ templatevars["assign"] = self.getassignbox()
+ pagelayout.PootleNavPage.__init__(self, templatename, templatevars, session, bannerheight=81)
+ self.addfilelinks()
+
+ def getfinishedtext(self, stoppedby):
+ """gets notice to display when the translation is finished"""
+ # l10n: "batch" refers to the set of translations that were reviewed
+ title = self.localize("End of batch")
+ finishedlink = "index.html?" + "&".join(["%s=%s" % (arg, value) for arg, value in self.argdict.iteritems() if arg.startswith("show") or arg == "editing"])
+ returnlink = self.localize("Click here to return to the index")
+ stoppedbytext = stoppedby.args[0]
+ return {"title": title, "stoppedby": stoppedbytext, "finishedlink": finishedlink, "returnlink": returnlink}
+
+ def getpagelinks(self, baselink, pagesize):
+ """gets links to other pages of items, based on the given baselink"""
+ baselink += "&pofilename=%s" % self.pofilename
+ pagelinks = []
+ pofilelen = self.project.getpofilelen(self.pofilename)
+ if pofilelen <= pagesize or self.firstitem is None:
+ return pagelinks
+ lastitem = min(pofilelen-1, self.firstitem + pagesize - 1)
+ if pofilelen > pagesize and not self.firstitem == 0:
+ # l10n: noun (the start)
+ pagelinks.append({"href": baselink + "&item=0", "text": self.localize("Start")})
+ else:
+ # l10n: noun (the start)
+ pagelinks.append({"text": self.localize("Start")})
+ if self.firstitem > 0:
+ linkitem = max(self.firstitem - pagesize, 0)
+ # l10n: the parameter refers to the number of messages
+ pagelinks.append({"href": baselink + "&item=%d" % linkitem, "text": self.localize("Previous %d", (self.firstitem - linkitem))})
+ else:
+ # l10n: the parameter refers to the number of messages
+ pagelinks.append({"text": self.localize("Previous %d", pagesize)})
+ # l10n: the third parameter refers to the total number of messages in the file
+ pagelinks.append({"text": self.localize("Items %d to %d of %d", self.firstitem+1, lastitem+1, pofilelen)})
+ if self.firstitem + len(self.translations) < self.project.getpofilelen(self.pofilename):
+ linkitem = self.firstitem + pagesize
+ itemcount = min(pofilelen - linkitem, pagesize)
+ # l10n: the parameter refers to the number of messages
+ pagelinks.append({"href": baselink + "&item=%d" % linkitem, "text": self.localize("Next %d", itemcount)})
+ else:
+ # l10n: the parameter refers to the number of messages
+ pagelinks.append({"text": self.localize("Next %d", pagesize)})
+ if pofilelen > pagesize and (self.item + pagesize) < pofilelen:
+ # l10n: noun (the end)
+ pagelinks.append({"href": baselink + "&item=%d" % max(pofilelen - pagesize, 0), "text": self.localize("End")})
+ else:
+ # l10n: noun (the end)
+ pagelinks.append({"text": self.localize("End")})
+ for n, pagelink in enumerate(pagelinks):
+ if n < len(pagelinks)-1:
+ pagelink["sep"] = " | "
+ else:
+ pagelink["sep"] = ""
+ return pagelinks
+
+ def addfilelinks(self):
+ """adds a section on the current file, including any checks happening"""
+ if self.showassigns and "assign" in self.rights:
+ self.templatevars["assigns"] = self.getassignbox()
+ if self.pofilename is not None:
+ if self.matchnames:
+ checknames = \
+ ["<a href='http://translate.sourceforge.net/wiki/toolkit/pofilter_tests#%(checkname)s' \
+ title='%(checkname)s' target='_blank'>%(checkname)s</a>" % \
+ {"checkname": matchname.replace("check-", "", 1)} for matchname in self.matchnames]
+ # TODO: put the following parameter in quotes, since it will be foreign in all target languages
+ # l10n: the parameter is the name of one of the quality checks, like "fuzzy"
+ self.templatevars["checking_text"] = self.localize("checking %s", ", ".join(checknames))
+
+ def getassignbox(self):
+ """gets strings if the user can assign strings"""
+ users = [username for username, userprefs in self.session.loginchecker.users.iteritems() if username != "__dummy__"]
+ users.sort()
+ return {
+ "title": self.localize("Assign Strings"),
+ "user_title": self.localize("Assign to User"),
+ "action_title": self.localize("Assign Action"),
+ "submit_text": self.localize("Assign Strings"),
+ "users": users,
+ }
+
+ def receivetranslations(self):
+ """receive any translations submitted by the user"""
+ if self.pofilename is None:
+ return
+ backs = []
+ skips = []
+ submitsuggests = []
+ submits = []
+ accepts = []
+ rejects = []
+ translations = {}
+ suggestions = {}
+ comments = {}
+ fuzzies = {}
+ keymatcher = re.compile("(\D+)([0-9.]+)")
+ def parsekey(key):
+ match = keymatcher.match(key)
+ if match:
+ keytype, itemcode = match.groups()
+ return keytype, itemcode
+ return None, None
+ def pointsplit(item):
+ dotcount = item.count(".")
+ if dotcount == 2:
+ item, pointitem, subpointitem = item.split(".", 2)
+ return int(item), int(pointitem), int(subpointitem)
+ elif dotcount == 1:
+ item, pointitem = item.split(".", 1)
+ return int(item), int(pointitem), None
+ else:
+ return int(item), None, None
+ delkeys = []
+ for key, value in self.argdict.iteritems():
+ keytype, item = parsekey(key)
+ if keytype is None:
+ continue
+ item, pointitem, subpointitem = pointsplit(item)
+ if keytype == "skip":
+ skips.append(item)
+ elif keytype == "back":
+ backs.append(item)
+ elif keytype == "submitsuggest":
+ submitsuggests.append(item)
+ elif keytype == "submit":
+ submits.append(item)
+ elif keytype == "accept":
+ accepts.append((item, pointitem))
+ elif keytype == "reject":
+ rejects.append((item, pointitem))
+ elif keytype == "translator_comments":
+ # We need to remove carriage returns from the input.
+ value = value.replace("\r", "")
+ comments[item] = value
+ elif keytype == "fuzzy":
+ fuzzies[item] = value
+ elif keytype == "trans":
+ value = self.unescapesubmition(value)
+ if pointitem is not None:
+ translations.setdefault(item, {})[pointitem] = value
+ else:
+ translations[item] = value
+ elif keytype == "suggest":
+ suggestions.setdefault((item, pointitem), {})[subpointitem] = value
+ elif keytype == "orig-pure":
+ # this is just to remove the hidden fields from the argdict
+ pass
+ else:
+ continue
+ delkeys.append(key)
+
+
+ for key in delkeys:
+ del self.argdict[key]
+ for item in skips:
+ self.lastitem = item
+ for item in backs:
+ self.lastitem = item - 2
+ for item in submitsuggests:
+ if item in skips or item not in translations:
+ continue
+ value = translations[item]
+ self.project.suggesttranslation(self.pofilename, item, value, self.session)
+ self.lastitem = item
+
+ for item in submits:
+ if item in skips or item not in translations:
+ continue
+
+ newvalues = {}
+ newvalues["target"] = translations[item]
+ if isinstance(newvalues["target"], dict) and len(newvalues["target"]) == 1 and 0 in newvalues["target"]:
+ newvalues["target"] = newvalues["target"][0]
+
+ newvalues["fuzzy"] = False
+ if (fuzzies.get(item) == u'on'):
+ newvalues["fuzzy"] = True
+
+ translator_comments = comments.get(item)
+ if translator_comments:
+ newvalues["translator_comments"] = translator_comments
+
+ self.project.updatetranslation(self.pofilename, item, newvalues, self.session)
+
+ self.lastitem = item
+
+ # Make sure we have rejects list properly sorted
+ rejects.sort(key=operator.itemgetter(1))
+ # It's necessary to loop the list reversed in order to selectively remove items
+ for item, suggid in reversed(rejects):
+ value = suggestions[item, suggid]
+ if isinstance(value, dict) and len(value) == 1 and 0 in value:
+ value = value[0]
+ self.project.rejectsuggestion(self.pofilename, item, suggid, value, self.session)
+ self.lastitem = item
+ for item, suggid in accepts:
+ if (item, suggid) in rejects or (item, suggid) not in suggestions:
+ continue
+ value = suggestions[item, suggid]
+ if isinstance(value, dict) and len(value) == 1 and 0 in value:
+ value = value[0]
+ self.project.acceptsuggestion(self.pofilename, item, suggid, value, self.session)
+ self.lastitem = item
+
+ def getmatchnames(self, checker):
+ """returns any checker filters the user has asked to match..."""
+ matchnames = []
+ for checkname in self.argdict:
+ if checkname in ["fuzzy", "untranslated", "translated"]:
+ matchnames.append(checkname)
+ elif checkname in checker.getfilters():
+ matchnames.append("check-" + checkname)
+ matchnames.sort()
+ return matchnames
+
+ def getusernode(self):
+ """gets the user's prefs node"""
+ if self.session.isopen:
+ return getattr(self.session.loginchecker.users, self.session.username.encode("utf-8"), None)
+ else:
+ return None
+
+ def finditem(self):
+ """finds the focussed item for this page, searching as neccessary"""
+ item = self.argdict.pop("item", None)
+ if item is None:
+ try:
+ # Retrieve the search fields we want to search for
+ fields = [f["name"] for f in self.getsearchfields() if f["value"] == "1"]
+ search = pootlefile.Search(dirfilter=self.dirfilter, matchnames=self.matchnames, searchtext=self.searchtext, searchfields=fields)
+ # TODO: find a nicer way to let people search stuff assigned to them (does it by default now)
+ # search.assignedto = self.argdict.get("assignedto", self.session.username)
+ search.assignedto = self.argdict.get("assignedto", None)
+ search.assignedaction = self.argdict.get("assignedaction", None)
+ self.pofilename, self.item = self.project.searchpoitems(self.pofilename, self.lastitem, search).next()
+ except StopIteration:
+ if self.lastitem is None:
+ raise StopIteration(self.localize("There are no items matching that search ('%s')", self.searchtext))
+ else:
+ raise StopIteration(self.localize("You have finished going through the items you selected"))
+ else:
+ if not item.isdigit():
+ raise ValueError("Invalid item given")
+ self.item = int(item)
+ if self.pofilename is None:
+ raise ValueError("Received item argument but no pofilename argument")
+ self.project.track(self.pofilename, self.item, "being edited by %s" % self.session.username)
+
+ def getdisplayrows(self, mode):
+ """get the number of rows to display for the given mode"""
+ if mode == "view":
+ prefsfield = "viewrows"
+ default = 10
+ maximum = 100
+ elif mode == "translate":
+ prefsfield = "translaterows"
+ default = 7
+ maximum = 20
+ else:
+ raise ValueError("getdisplayrows has no mode '%s'" % mode)
+ usernode = self.getusernode()
+ rowsdesired = getattr(usernode, prefsfield, default)
+ if isinstance(rowsdesired, basestring):
+ if rowsdesired == "":
+ rowsdesired = default
+ else:
+ rowsdesired = int(rowsdesired)
+ rowsdesired = min(rowsdesired, maximum)
+ return rowsdesired
+
+ def gettranslations(self):
+ """gets the list of translations desired for the view, and sets editable and firstitem parameters"""
+ if self.item is None:
+ self.editable = []
+ self.firstitem = self.item
+ return []
+ elif self.viewmode:
+ self.editable = []
+ self.firstitem = self.item
+ rows = self.getdisplayrows("view")
+ return self.project.getitems(self.pofilename, self.item, self.item+rows)
+ else:
+ self.editable = [self.item]
+ rows = self.getdisplayrows("translate")
+ before = rows / 2
+ fromitem = self.item - before
+ self.firstitem = max(self.item - before, 0)
+ toitem = self.firstitem + rows
+ return self.project.getitems(self.pofilename, fromitem, toitem)
+
+ def maketable(self):
+ self.translations = self.gettranslations()
+ items = []
+ if (self.reviewmode or self.translatemode) and self.item is not None:
+ suggestions = {self.item: self.project.getsuggestions(self.pofilename, self.item)}
+ for row, unit in enumerate(self.translations):
+ tmsuggestions = []
+ if isinstance(unit.source, multistring):
+ orig = unit.source.strings
+ else:
+ orig = [unit.source]
+ if isinstance(unit.target, multistring):
+ trans = unit.target.strings
+ else:
+ trans = [unit.target]
+ nplurals, plurals = self.project.getpofile(self.pofilename).getheaderplural()
+ try:
+ if len(orig) > 1:
+ if not (nplurals and nplurals.isdigit()):
+ # The file doesn't have plural information declared. Let's get it from
+ # the language
+ nplurals = getattr(getattr(self.session.instance.languages, self.project.languagecode, None), "nplurals", "")
+ nplurals = int(nplurals)
+ if len(trans) != nplurals:
+ # Chop if in case it is too long
+ trans = trans[:nplurals]
+ trans.extend([u""]* (nplurals-len(trans)))
+ except Exception:
+ # Something went wrong, lets just give nothing
+ trans = []
+ item = self.firstitem + row
+ origdict = self.getorigdict(item, orig, item in self.editable)
+ transmerge = {}
+
+ message_context = ""
+ if item in self.editable:
+ translator_comments = unit.getnotes(origin="translator")
+ developer_comments = self.escapetext(unit.getnotes(origin="developer"), stripescapes=True)
+ locations = " ".join(unit.getlocations())
+ if isinstance(unit, po.pounit):
+ message_context = "".join(unit.getcontext())
+ tmsuggestions = self.project.gettmsuggestions(self.pofilename, self.item)
+ tmsuggestions.extend(self.project.getterminology(self.session, self.pofilename, self.item))
+
+ if self.translatemode or self.reviewmode:
+ translator_comments = self.escapetext(unit.getnotes(origin="translator"), stripescapes=True)
+ itemsuggestions = []
+ for suggestion in suggestions[item]:
+ if suggestion.hasplural():
+ itemsuggestions.append(suggestion.target.strings)
+ else:
+ itemsuggestions.append([suggestion.target])
+ transmerge = self.gettransreview(item, trans, itemsuggestions)
+ transedit = self.gettransedit(item, trans)
+ # Make sure we don't overwrite the diff attribute in case it's plural
+ if len(trans) > 1:
+ for i, f in enumerate(transedit["forms"]):
+ transedit["forms"][i].update(transmerge["forms"][i])
+ transmerge.update(transedit)
+ else:
+ transmerge = self.gettransedit(item, trans)
+ else:
+ translator_comments = unit.getnotes(origin="translator")
+ developer_comments = unit.getnotes(origin="developer")
+ locations = ""
+ transmerge = self.gettransview(item, trans)
+ transdict = {"itemid": "trans%d" % item,
+ "focus_class": origdict["focus_class"],
+ "isplural": len(trans) > 1,
+ }
+ transdict.update(transmerge)
+ polarity = oddoreven(item)
+ if item in self.editable:
+ focus_class = "translate-focus"
+ else:
+ focus_class = ""
+
+ state_class = ""
+ fuzzy = None
+ if unit.isfuzzy():
+ state_class += "translate-translation-fuzzy"
+ fuzzy = "checked"
+
+ hassuggestion = len(transdict.get("suggestions", {})) > 0
+
+ itemdict = {
+ "itemid": item,
+ "orig": origdict,
+ "trans": transdict,
+ "polarity": polarity,
+ "focus_class": focus_class,
+ "editable": item in self.editable,
+ "state_class": state_class,
+ "fuzzy": fuzzy,
+ "translator_comments": translator_comments,
+ "developer_comments": developer_comments,
+ "locations": locations,
+ "message_context": message_context,
+ "tm": tmsuggestions,
+ "hassuggestion": hassuggestion
+ }
+
+ altsrcdict = {"available": False}
+ # do we have enabled alternative source language?
+ if self.enablealtsrc == 'True':
+ # get alternate source project information in a dictionary
+ if item in self.editable:
+ altsrcdict = self.getaltsrcdict(origdict)
+ itemdict["altsrc"] = altsrcdict
+
+ items.append(itemdict)
+ return items
+
+ def fancyspaces(self, string):
+ """Returns the fancy spaces that are easily visible."""
+ spaces = string.group()
+ while spaces[0] in "\t\n\r":
+ spaces = spaces[1:]
+ return '<span class="translation-space"> </span>\n' * len(spaces)
+
+ def escapetext(self, text, fancyspaces=True, stripescapes=False):
+ """Replace special characters &, <, >, add and handle escapes if asked."""
+ text = text.replace("&", "&amp;") # Must be done first!
+ text = text.replace("<", "&lt;").replace(">", "&gt;")
+
+ if stripescapes:
+ text = text.replace("\n", '<br />')
+ text = text.replace("\r", '<br />')
+ else:
+ fancyescape = lambda escape: \
+ '<span class="translation-highlight-escape">%s</span>' % escape
+ fancy_xml = lambda escape: \
+ '<span class="translation-highlight-html">%s</span>' % escape.group()
+ text = xml_re.sub(fancy_xml, text)
+
+ text = text.replace("\r\n", fancyescape('\\r\\n') + '<br />')
+ text = text.replace("\n", fancyescape('\\n') + '<br />')
+ text = text.replace("\r", fancyescape('\\r') + '<br />')
+ text = text.replace("\t", fancyescape('\\t'))
+ text = text.replace("<br />", '<br />\n')
+ # we don't need it at the end of the string
+ if text.endswith("<br />\n"):
+ text = text[:-len("<br />\n")]
+
+ if fancyspaces:
+ text = self.addfancyspaces(text)
+ return text
+
+ def addfancyspaces(self, text):
+ """Insert fancy spaces"""
+ #More than two consecutive:
+ text = re.sub("[ ]{2,}", self.fancyspaces, text)
+ #At start of string
+ text = re.sub("^[ ]+", self.fancyspaces, text)
+ #After newline
+ text = re.sub("\\n([ ]+)", self.fancyspaces, text)
+ #At end of string
+ text = re.sub("[ ]+$", self.fancyspaces, text)
+ return text
+
+ def escapefortextarea(self, text):
+ text = text.replace("&", "&amp;") # Must be done first!
+ text = text.replace("<", "&lt;").replace(">", "&gt;")
+ text = text.replace("\r\n", '\\r\\n')
+ text = text.replace("\n", '\\n')
+ text = text.replace("\\n", '\\n\n')
+ text = text.replace("\t", '\\t')
+ return text
+
+ def unescapesubmition(self, text):
+ text = text.replace("\t", "")
+ text = text.replace("\n", "")
+ text = text.replace("\r", "")
+ text = text.replace("\\t", "\t")
+ text = text.replace("\\n", "\n")
+ text = text.replace("\\r", "\r")
+ return text
+
+ def getorigdict(self, item, orig, editable):
+ if editable:
+ focus_class = "translate-original-focus"
+ else:
+ focus_class = "autoexpand"
+ purefields = []
+ for pluralid, pluraltext in enumerate(orig):
+ pureid = "orig-pure%d.%d" % (item, pluralid)
+ purefields.append({"pureid": pureid, "name": pureid, "value": pluraltext})
+ origdict = {
+ "focus_class": focus_class,
+ "itemid": "orig%d" % item,
+ "pure": purefields,
+ "isplural": len(orig) > 1 or None,
+ "singular_title": self.localize("Singular"),
+ "plural_title": self.localize("Plural"),
+ }
+ if len(orig) > 1:
+ origdict["singular_text"] = self.escapetext(orig[0])
+ origdict["plural_text"] = self.escapetext(orig[1])
+ else:
+ origdict["text"] = self.escapetext(orig[0])
+ return origdict
+
+ def geteditlink(self, item):
+ """gets a link to edit the given item, if the user has permission"""
+ if "translate" in self.rights or "suggest" in self.rights:
+ translateurl = "?translate=1&item=%d&pofilename=%s" % (item, urllib.quote(self.pofilename, '/'))
+ # l10n: verb
+ return {"href": translateurl, "text": self.localize("Edit"), "linkid": "editlink%d" % item}
+ else:
+ return {}
+
+ def gettransbuttons(self, item, desiredbuttons):
+ """gets buttons for actions on translation"""
+ if "suggest" in desiredbuttons and "suggest" not in self.rights:
+ desiredbuttons.remove("suggest")
+ if "translate" in desiredbuttons and "translate" not in self.rights:
+ desiredbuttons.remove("translate")
+ specialchars = getattr(getattr(self.session.instance.languages, self.project.languagecode, None), "specialchars", "")
+ if isinstance(specialchars, str):
+ specialchars = specialchars.decode("utf-8")
+ return {"desired": desiredbuttons,
+ "item": item,
+ # l10n: verb
+ "copy_text": self.localize("Copy"),
+ "skip": self.localize("Skip"),
+ # l10n: verb
+ "back": self.localize("Back"),
+ "suggest": self.localize("Suggest"),
+ "submit": self.localize("Submit"),
+ "specialchars": specialchars,
+ # l10n: action that increases the height of the textarea
+ "grow": self.localize("Grow"),
+ # l10n: action that decreases the height of the textarea
+ "shrink": self.localize("Shrink"),
+ # l10n: action that increases the width of the textarea
+ }
+
+ def gettransedit(self, item, trans):
+ """returns a widget for editing the given item and translation"""
+ transdict = {
+ "rows": 5,
+ "cols": 40,
+ }
+ if "translate" in self.rights or "suggest" in self.rights:
+ usernode = self.getusernode()
+ transdict = {
+ "rows": getattr(usernode, "inputheight", 5),
+ "cols": getattr(usernode, "inputwidth", 40),
+ }
+ focusbox = ""
+ spellargs = {"standby_url": "spellingstandby.html", "js_url": "/js/spellui.js", "target_url": "spellcheck.html"}
+ if len(trans) > 1:
+ buttons = self.gettransbuttons(item, ["back", "skip", "copy", "suggest", "translate"])
+ forms = []
+ for pluralitem, pluraltext in enumerate(trans):
+ pluralform = self.localize("Plural Form %d", pluralitem)
+ pluraltext = self.escapefortextarea(pluraltext)
+ textid = "trans%d.%d" % (item, pluralitem)
+ forms.append({"title": pluralform, "name": textid, "text": pluraltext, "n": pluralitem})
+ if not focusbox:
+ focusbox = textid
+ transdict["forms"] = forms
+ elif trans:
+ buttons = self.gettransbuttons(item, ["back", "skip", "copy", "suggest", "translate", "resize"])
+ transdict["text"] = self.escapefortextarea(trans[0])
+ textid = "trans%d" % item
+ focusbox = textid
+ else:
+ # Perhaps there is no plural information available
+ buttons = self.gettransbuttons(item, ["back", "skip"])
+ # l10n: This is an error message that will display if the relevant problem occurs
+ transdict["text"] = self.escapefortextarea(self.localize("Translation not possible because plural information for your language is not available. Please contact the site administrator."))
+ textid = "trans%d" % item
+ focusbox = textid
+
+ transdict["can_spell"] = spellcheck.can_check_lang(self.project.languagecode)
+ transdict["spell_args"] = spellargs
+ transdict["buttons"] = buttons
+ transdict["focusbox"] = focusbox
+ else:
+ # TODO: work out how to handle this (move it up?)
+ transdict.update(self.gettransview(item, trans, textarea=True))
+ buttons = self.gettransbuttons(item, ["back", "skip"])
+ transdict["buttons"] = buttons
+ return transdict
+
+ def highlightdiffs(self, text, diffs, issrc=True):
+ """highlights the differences in diffs in the text.
+ diffs should be list of diff opcodes
+ issrc specifies whether to use the src or destination positions in reconstructing the text
+ this escapes the text on the fly to prevent confusion in escaping the highlighting"""
+ if issrc:
+ diffstart = [(i1, 'start', tag) for (tag, i1, i2, j1, j2) in diffs if tag != 'equal']
+ diffstop = [(i2, 'stop', tag) for (tag, i1, i2, j1, j2) in diffs if tag != 'equal']
+ else:
+ diffstart = [(j1, 'start', tag) for (tag, i1, i2, j1, j2) in diffs if tag != 'equal']
+ diffstop = [(j2, 'stop', tag) for (tag, i1, i2, j1, j2) in diffs if tag != 'equal']
+ diffswitches = diffstart + diffstop
+ diffswitches.sort()
+ textdiff = ""
+ textnest = 0
+ textpos = 0
+ spanempty = False
+ for i, switch, tag in diffswitches:
+ textsection = self.escapetext(text[textpos:i])
+ textdiff += textsection
+ if textsection:
+ spanempty = False
+ if switch == 'start':
+ textnest += 1
+ elif switch == 'stop':
+ textnest -= 1
+ if switch == 'start' and textnest == 1:
+ # start of a textition
+ textdiff += "<span class='translate-diff-%s'>" % tag
+ spanempty = True
+ elif switch == 'stop' and textnest == 0:
+ # start of an equals block
+ if spanempty:
+ # FIXME: work out why kid swallows empty spans, and browsers display them horribly, then remove this
+ textdiff += "()"
+ textdiff += "</span>"
+ textpos = i
+ textdiff += self.escapetext(text[textpos:])
+ return textdiff
+
+ def getdiffcodes(self, cmp1, cmp2):
+ """compares the two strings and returns opcodes"""
+ return difflib.SequenceMatcher(None, cmp1, cmp2).get_opcodes()
+
+ def gettransreview(self, item, trans, suggestions):
+ """returns a widget for reviewing the given item's suggestions"""
+ hasplurals = len(trans) > 1
+ diffcodes = {}
+ for pluralitem, pluraltrans in enumerate(trans):
+ if isinstance(pluraltrans, str):
+ trans[pluralitem] = pluraltrans.decode("utf-8")
+ for suggestion in suggestions:
+ for pluralitem, pluralsugg in enumerate(suggestion):
+ if isinstance(pluralsugg, str):
+ suggestion[pluralitem] = pluralsugg.decode("utf-8")
+ forms = []
+ for pluralitem, pluraltrans in enumerate(trans):
+ pluraldiffcodes = [self.getdiffcodes(pluraltrans, suggestion[pluralitem]) for suggestion in suggestions]
+ diffcodes[pluralitem] = pluraldiffcodes
+ combineddiffs = reduce(list.__add__, pluraldiffcodes, [])
+ transdiff = self.highlightdiffs(pluraltrans, combineddiffs, issrc=True)
+ form = {"n": pluralitem, "diff": transdiff, "title": None}
+ if hasplurals:
+ pluralform = self.localize("Plural Form %d", pluralitem)
+ form["title"] = pluralform
+ forms.append(form)
+ transdict = {
+ "current_title": self.localize("Current Translation:"),
+ "editlink": self.geteditlink(item),
+ "forms": forms,
+ "isplural": hasplurals or None,
+ "itemid": "trans%d" % item,
+ }
+ suggitems = []
+ for suggid, msgstr in enumerate(suggestions):
+ suggestedby = self.project.getsuggester(self.pofilename, item, suggid)
+ if len(suggestions) > 1:
+ if suggestedby:
+ # l10n: First parameter: number
+ # l10n: Second parameter: name of translator
+ suggtitle = self.localize("Suggestion %d by %s:", suggid+1, suggestedby)
+ else:
+ suggtitle = self.localize("Suggestion %d:", suggid+1)
+ else:
+ if suggestedby:
+ # l10n: parameter: name of translator
+ suggtitle = self.localize("Suggestion by %s:", suggestedby)
+ else:
+ suggtitle = self.localize("Suggestion:")
+ forms = []
+ for pluralitem, pluraltrans in enumerate(trans):
+ pluralsuggestion = msgstr[pluralitem]
+ suggdiffcodes = diffcodes[pluralitem][suggid]
+ suggdiff = self.highlightdiffs(pluralsuggestion, suggdiffcodes, issrc=False)
+ if isinstance(pluralsuggestion, str):
+ pluralsuggestion = pluralsuggestion.decode("utf8")
+ form = {"diff": suggdiff}
+ form["suggid"] = "suggest%d.%d.%d" % (item, suggid, pluralitem)
+ form["value"] = pluralsuggestion
+ if hasplurals:
+ form["title"] = self.localize("Plural Form %d", pluralitem)
+ forms.append(form)
+ suggdict = {"title": suggtitle,
+ "forms": forms,
+ "suggid": "%d.%d" % (item, suggid),
+ "canreview": "review" in self.rights,
+ "back": None,
+ "skip": None,
+ }
+ suggitems.append(suggdict)
+ # l10n: verb
+ backbutton = {"item": item, "text": self.localize("Back")}
+ skipbutton = {"item": item, "text": self.localize("Skip")}
+ if suggitems:
+ suggitems[-1]["back"] = backbutton
+ suggitems[-1]["skip"] = skipbutton
+ else:
+ transdict["back"] = backbutton
+ transdict["skip"] = skipbutton
+ transdict["suggestions"] = suggitems
+ return transdict
+
+ def gettransview(self, item, trans, textarea=False):
+ """returns a widget for viewing the given item's translation"""
+ if textarea:
+ escapefunction = self.escapefortextarea
+ else:
+ escapefunction = self.escapetext
+ editlink = self.geteditlink(item)
+ transdict = {"editlink": editlink}
+ if len(trans) > 1:
+ forms = []
+ for pluralitem, pluraltext in enumerate(trans):
+ form = {"title": self.localize("Plural Form %d", pluralitem), "n": pluralitem, "text": escapefunction(pluraltext)}
+ forms.append(form)
+ transdict["forms"] = forms
+ elif trans:
+ transdict["text"] = escapefunction(trans[0])
+ else:
+ # Error, problem with plurals perhaps?
+ transdict["text"] = ""
+ return transdict
+
+ def getaltsrcdict(self, origdict):
+ # TODO: handle plurals !!
+ altsrcdict = {"available": False}
+ if self.altproject is not None:
+ altsrcdict["languagecode"] = pagelayout.weblanguage(self.altproject.languagecode)
+ altsrcdict["languagename"] = self.altproject.potree.getlanguagename(self.altproject.languagecode)
+ altsrcdict["dir"] = pagelayout.languagedir(altsrcdict["languagecode"])
+ altsrcdict["title"] = self.session.tr_lang(altsrcdict["languagename"])
+ if not origdict["isplural"]:
+ orig = origdict["pure"][0]["value"]
+ altsrctext = self.altproject.ugettext(orig)
+ if altsrctext != orig and not self.reviewmode:
+ altsrcdict["text"] = self.escapetext(altsrctext)
+ altsrcdict["available"] = True
+ return altsrcdict
+
diff --git a/Pootle-1.2.1/Pootle/users.prefs b/Pootle-1.2.1/Pootle/users.prefs
new file mode 100644
index 0000000..fbdf28f
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/users.prefs
@@ -0,0 +1,59 @@
+# This is the users file which stores information for each of the Pootle users.
+# The following is an example, each of the options available is explained after
+# the complete user specification.
+#
+# example:
+# email = 'johndoe@example.com'
+# name = 'John Doe'
+# activationcode = '427efdf9ad7906bc41016ddf969b26a5'
+# activated = 1
+# passwdhash = '1a79a4d60de6718e8e5b326e338ae533'
+# rights.siteadmin = True
+# translaterows = '7'
+# viewrows = '10'
+# inputwidth = '60'
+# inputheight = '8'
+# languages = 'af'
+# projects = 'pootle'
+# anotheruser:
+# email = ...
+#
+# Explanation of options:
+# email - the email address of the user
+# name - the fullname of the user which is used to update the PO header
+# entry.
+# activationcode - the code sent to the user when they registered and which
+# they need to supply to enable their Pootle account. An admin user can
+# enable user manually on the user admin page.
+# activated - has this user been activated 1 = yes, 0 = no. Users must be
+# activated to be able to login to Pootle.
+# passwdhash - an MD5 sum hash of the users password
+# rights.siteadmin - you need at least one of these, they have full rights
+# for all languages and all projects. You need at least one to start adding
+# users.
+# translaterows - the number of rows displayed in translated mode
+# viewrows - the number of rows displayed in view mode
+# inputwidth - the width of the translation input widget in characters
+# inputheight - the height of the translation input widget in rows
+# languages - the languages listed on the users home page
+# projects - the projects listed on the users home page
+# altsrclanguage - the alternative source language to use. This setting has effect
+# only if the feature is enabled on the server (enablealtsrc on pootle.prefs)
+#
+# Startup User:
+# When first starting Pootle it is helpful to have a default user. Below we
+# have provided such a user called startup with a password of startup. You
+# may use this user by uncommenting the the lines below.
+#
+# Once your site is configured, please remove this user by deleting the startup
+# user using the admin interface or by manually deleting the lines from this
+# file. Please also ensure that you have a user with siteadmin rights.
+#
+# NOTE: leaving this user enabled will compromise your Pootle setup.
+#
+#startup:
+# activated = 1
+# passwdhash = 'dd82c1882969461de74b46427961ea2c'
+# rights.siteadmin = True
+# name = ''
+# email = ''
diff --git a/Pootle-1.2.1/Pootle/users.py b/Pootle-1.2.1/Pootle/users.py
new file mode 100644
index 0000000..568c420
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/users.py
@@ -0,0 +1,680 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2004-2006 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+from jToolkit import web
+from jToolkit.web import server
+from jToolkit import mailer
+from jToolkit import prefs
+from Pootle import pagelayout
+from translate.lang import data as langdata
+from translate.lang import factory
+from email.Header import Header
+import locale
+
+class RegistrationError(ValueError):
+ def __init__(self, message):
+ message = message.encode('utf-8')
+ ValueError.__init__(self, message)
+
+# This mimimum passwordlength is mandated by the interface when registering or
+# changing password
+minpasswordlen = 6
+
+def validatepassword(session, password, passwordconfirm):
+ if not password or len(password) < minpasswordlen:
+ raise RegistrationError(session.localize("You must supply a valid password of at least %d characters.", minpasswordlen))
+ if not password == passwordconfirm:
+ raise RegistrationError(session.localize("The password is not the same as the confirmation."))
+
+def forcemessage(message):
+ """Tries to extract some kind of message and converts to unicode"""
+ if message and not isinstance(message, unicode):
+ return str(message).decode('utf-8')
+ else:
+ return message
+
+class LoginPage(pagelayout.PootlePage):
+ """wraps the normal login page in a PootlePage layout"""
+ def __init__(self, session, languagenames=None, message=None):
+ self.localize = session.localize
+ self.tr_lang = session.tr_lang
+ self.languagenames = languagenames
+ pagetitle = self.localize("Login to Pootle")
+ templatename = "login"
+ message = forcemessage(message)
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ templatevars = {"pagetitle": pagetitle, "introtext": message,
+ "username_title": self.localize("Username:"),
+ "username": getattr(session, 'username', ''),
+ "password_title": self.localize("Password:"),
+ "language_title": self.localize('Language:'),
+ "languages": self.getlanguageoptions(session),
+ "login_text": self.localize('Login'),
+ "session": sessionvars, "instancetitle": instancetitle}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+ def getlanguageoptions(self, session):
+ """returns the language selector..."""
+ tr_default = session.localize("Default")
+ if tr_default != "Default":
+ tr_default = u"%s | \u202dDefault" % tr_default
+ languageoptions = [('', tr_default)]
+ if isinstance(self.languagenames, dict):
+ languageoptions += self.languagenames.items()
+ else:
+ languageoptions += self.languagenames
+ if session.language in ["en", session.server.defaultlanguage]:
+ preferredlanguage = ""
+ else:
+ preferredlanguage = session.language
+ finallist = []
+ for key, value in languageoptions:
+ if key == 'templates':
+ continue
+ tr_name = session.tr_lang(value)
+ if tr_name != value:
+ # We have to use the LRO (left-to-right override) to ensure that
+ # brackets in the English part of the name is rendered correctly
+ # in an RTL layout like Arabic. We can't use markup because this
+ # is used inside an option tag.
+ value = u"%s | \u202d%s" % (tr_name, value)
+ selected = key==preferredlanguage or None
+ finallist.append({"code": key, "name": value, "selected": selected})
+ # rewritten for compatibility with Python 2.3
+ # finallist.sort(cmp=locale.strcoll, key=lambda dict: dict["name"])
+ finallist.sort(lambda x,y: locale.strcoll(x["name"], y["name"]))
+ return finallist
+
+class RegisterPage(pagelayout.PootlePage):
+ """page for new registrations"""
+ def __init__(self, session, argdict, message=None):
+ self.localize = session.localize
+ if not message:
+ introtext = self.localize("Please enter your registration details")
+ else:
+ introtext = forcemessage(message)
+ pagetitle = self.localize("Pootle Registration")
+ self.argdict = argdict
+ templatename = "register"
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ templatevars = {"pagetitle": pagetitle, "introtext": introtext,
+ "username_title": self.localize("Username"),
+ "username_tooltip": self.localize("Your requested username"),
+ "username": self.argdict.get("username", ""),
+ "email_title": self.localize("Email Address"),
+ "email_tooltip": self.localize("You must supply a valid email address"),
+ "email": self.argdict.get("email", ""),
+ "fullname_title": self.localize("Full Name"),
+ "fullname_tooltip": self.localize("Your full name"),
+ "fullname": self.argdict.get("name", ""),
+ "password_title": self.localize("Password"),
+ "password_tooltip": self.localize("Your desired password"),
+ "password": self.argdict.get("password", ""),
+ "passwordconfirm_title": self.localize("Confirm password"),
+ "passwordconfirm_tooltip": self.localize("Type your password again to ensure it is entered correctly"),
+ "passwordconfirm": self.argdict.get("passwordconfirm", ""),
+ "register_text": self.localize('Register Account'),
+ "session": sessionvars, "instancetitle": instancetitle}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+class ActivatePage(pagelayout.PootlePage):
+ """page for new registrations"""
+ def __init__(self, session, argdict, title=None, message=None):
+ self.localize = session.localize
+ if not message:
+ introtext = self.localize("Please enter your activation details")
+ else:
+ introtext = forcemessage(message)
+ self.argdict = argdict
+ if title is None:
+ pagetitle = self.localize("Pootle Account Activation")
+ else:
+ pagetitle = title
+ templatename = "activate"
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ templatevars = {"pagetitle": pagetitle, "introtext": introtext,
+ "username_title": self.localize("Username"),
+ "username_tooltip": self.localize("Your requested username"),
+ "username": self.argdict.get("username", ""),
+ "code_title": self.localize("Activation Code"),
+ "code_tooltip": self.localize("The activation code you received"),
+ "code": self.argdict.get("activationcode", ""),
+ "activate_text": self.localize('Activate Account'),
+ "session": sessionvars, "instancetitle": instancetitle}
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+class UserOptions(pagelayout.PootlePage):
+ """page for user to change their options"""
+ def __init__(self, potree, session, message=None):
+ self.potree = potree
+ self.session = session
+ self.localize = session.localize
+ self.tr_lang = session.tr_lang
+ message = forcemessage(message)
+ pagetitle = self.localize("Options for: %s", session.username)
+ templatename = "options"
+ instancetitle = getattr(session.instance, "title", session.localize("Pootle Demo"))
+ enablealtsrc = getattr(session.instance, "enablealtsrc", False)
+ sessionvars = {"status": session.status, "isopen": session.isopen, "issiteadmin": session.issiteadmin()}
+ templatevars = {"pagetitle": pagetitle, "introtext": message,
+ "detailstitle": self.localize("Personal Details"),
+ "option_heading": self.localize("Option"),
+ "value_heading": self.localize("Current value"),
+ "fullname_title": self.localize("Name"),
+ "fullname": self.session.prefs.name,
+ "email_title": self.localize("Email"),
+ "email": self.session.prefs.email,
+ "password_title": self.localize("Password"),
+ "passwordconfirm_title": self.localize("Confirm password"),
+ "interface_title": self.localize("Translation Interface Configuration"),
+ "uilanguage_heading": self.localize("User Interface language"),
+ "projects_title": self.localize("My Projects"),
+ "projects": self.getprojectoptions(),
+ "languages_title": self.localize("My Languages"),
+ "languages": self.getlanguageoptions(),
+ "home_link": self.localize("Home page"),
+ "submit_button": self.localize("Save changes"),
+ "session": sessionvars,
+ "instancetitle": instancetitle,
+ "enablealtsrc": enablealtsrc}
+ if enablealtsrc == 'True':
+ templatevars["altsrclanguage_title"] = self.localize("Alternative Source Language")
+ templatevars["altsrclanguages"] = self.getaltsrcoptions()
+ otheroptions = self.getotheroptions()
+ templatevars.update(otheroptions)
+ pagelayout.PootlePage.__init__(self, templatename, templatevars, session)
+
+ def getprojectoptions(self):
+ """gets the options box to change the user's projects"""
+ projectoptions = []
+ userprojects = self.session.getprojects()
+ for projectcode in self.potree.getprojectcodes():
+ projectname = self.potree.getprojectname(projectcode)
+ projectoptions.append({"code": projectcode, "name": projectname, "selected": projectcode in userprojects or None})
+ return projectoptions
+
+ def getlanguageoptions(self):
+ """returns options for languages"""
+ userlanguages = self.session.getlanguages()
+ languageoptions = self.potree.getlanguages()
+ languages = []
+ for language, name in languageoptions:
+ languages.append({"code": language, "name": self.tr_lang(name), "selected": language in userlanguages or None})
+ # rewritten for compatibility with Python 2.3
+ # languages.sort(cmp=locale.strcoll, key=lambda dict: dict["name"])
+ languages.sort(lambda x,y: locale.strcoll(x["name"], y["name"]))
+ return languages
+
+ def getaltsrcoptions(self):
+ """returns options for alternative source languages"""
+ useraltsrc = self.session.getaltsrclanguage()
+ languageoptions = self.potree.getlanguages()
+ altsrclanguages = []
+ for language, name in languageoptions:
+ altsrclanguages.append({"code": language, "name": self.tr_lang(name), "selected": language in useraltsrc and 'selected' or None})
+ # rewritten for compatibility with Python 2.3
+ # altsrclanguages.sort(cmp=locale.strcoll, key=lambda dict: dict["name"])
+ altsrclanguages.sort(lambda x,y: locale.strcoll(x["name"], y["name"]))
+ # l10n: 'None' is displayed as the first item in the alternative source languages list and disables the feature.
+ altsrclanguages.insert(0, {"code": '', "name": self.session.localize("None"), "selected": '' in useraltsrc and 'selected' or None})
+ return altsrclanguages
+
+ def getotheroptions(self):
+ uilanguage = getattr(self.session.prefs, "uilanguage", "")
+ if not uilanguage:
+ userlanguages = self.session.getlanguages()
+ if userlanguages:
+ uilanguage = userlanguages[0]
+ languageoptions = [{"code": '', "name": ''}]
+ for code, name in self.potree.getlanguages():
+ if code == "templates":
+ continue
+ languageoptions.append({"code": code, "name": self.tr_lang(name), "selected": uilanguage == code or None})
+ # rewritten for compatibility with Python 2.3
+ # languageoptions.sort(cmp=locale.strcoll, key=lambda dict: dict["name"])
+ languageoptions.sort(lambda x,y: locale.strcoll(x["name"], y["name"]))
+ options = {"inputheight": self.localize("Input Height (in lines)"),
+ "viewrows": self.localize("Number of rows in view mode"),
+ "translaterows": self.localize("Number of rows in translate mode")}
+ optionlist = []
+ for option, description in options.items():
+ optionvalue = getattr(self.session.prefs, option, "")
+ optionlist.append({"code": option, "description": description, "value": optionvalue})
+ return {"uilanguage": uilanguage, "uilanguage_options": languageoptions, "other_options": optionlist}
+
+class OptionalLoginAppServer(server.LoginAppServer):
+ """a server that enables login but doesn't require it except for specified pages"""
+ def handle(self, req, pathwords, argdict):
+ """handles the request and returns a page object in response"""
+ session = None
+ try:
+ argdict = self.processargs(argdict)
+ session = self.getsession(req, argdict)
+ if session.isopen:
+ session.pagecount += 1
+ session.remote_ip = self.getremoteip(req)
+ else:
+ self.initlanguage(req, session)
+ page = self.getpage(pathwords, session, argdict)
+ except Exception, e:
+ # Because of the exception, 'session' might not be initialised. So let's
+ # play extra safe
+ if not session:
+ raise Exception("Could not initialise session.\nDetail:%s" % str(e))
+
+ exceptionstr = self.errorhandler.exception_str()
+ errormessage = str(e).decode("utf-8")
+ traceback = self.errorhandler.traceback_str().decode('utf-8')
+ browsertraceback = ""
+ options = getattr(self, "options", None)
+ # with unit tests we might not have self.options, therefore this test
+ if options:
+ if options.browsererrors == 'traceback':
+ browsertraceback = traceback
+ if options.logerrors == 'traceback':
+ self.errorhandler.logerror(traceback)
+ elif options.logerrors == 'exception':
+ self.errorhandler.logerror(exceptionstr)
+ elif options.logerrors == 'message':
+ self.errorhandler.logerror(errormessage)
+ else:
+ self.errorhandler.logerror(traceback)
+
+ refreshurl = req.headers_in.getheader('Referer') or "/"
+ templatename = "error"
+ templatevars = {
+ "pagetitle": session.localize("Error"),
+ "refresh": 30,
+ "refreshurl": refreshurl,
+ "message": errormessage,
+ "traceback": browsertraceback,
+ "back": session.localize("Back"),
+ }
+ pagelayout.completetemplatevars(templatevars, session)
+ page = server.Redirect(refreshurl, withtemplate=(templatename, templatevars))
+ return page
+
+ def initlanguage(self, req, session):
+ """Initialises the session language from the request"""
+ # This version doesn't know which languages we have, so we have to override
+ # in PootleServer.
+ session.setlanguage("en")
+
+ def hasuser(self, users, username):
+ """returns whether the user exists in users"""
+ return users.__hasattr__(username)
+
+ def getusernode(self, users, username):
+ """gets the node for the given user"""
+ if not self.hasuser(users, username):
+ usernode = prefs.PrefNode(users, username)
+ users.__setattr__(username, usernode)
+ else:
+ usernode = users.__getattr__(username)
+ return usernode
+
+ def adduser(self, users, username, fullname, email, password):
+ """adds the user with the given details"""
+ usernode = self.getusernode(users, username)
+ usernode.name = fullname
+ usernode.email = email
+ usernode.passwdhash = web.session.md5hexdigest(password)
+
+ def makeactivationcode(self, users, username):
+ """makes a new activation code for the user and returns it"""
+ usernode = self.getusernode(users, username)
+ usernode.activated = 0
+ activationcode = self.generateactivationcode()
+ usernode.activationcode = activationcode
+ return activationcode
+
+ def activate(self, users, username):
+ """sets the user as activated"""
+ self.getusernode(users, username).activated = 1
+
+ def changeusers(self, session, argdict):
+ """handles multiple changes from the site admin"""
+ if not session.issiteadmin():
+ raise ValueError(session.localize("You need to be siteadmin to change users"))
+ users = session.loginchecker.users
+ for key, value in argdict.iteritems():
+ if key.startswith("userremove-"):
+ usercode = key.replace("userremove-", "", 1)
+ if self.hasuser(users, usercode):
+ raise NotImplementedError("Can't remove users")
+ elif key.startswith("username-"):
+ username = key.replace("username-", "", 1)
+ if self.hasuser(users, username):
+ usernode = self.getusernode(users, username)
+ fullname = getattr(usernode, "name", None)
+ if fullname != value:
+ usernode.name = value
+ elif key.startswith("useremail-"):
+ username = key.replace("useremail-", "", 1)
+ if self.hasuser(users, username):
+ usernode = self.getusernode(users, username)
+ useremail = getattr(usernode, "email", None)
+ if useremail != value:
+ usernode.email = value
+ elif key.startswith("userpassword-"):
+ username = key.replace("userpassword-", "", 1)
+ if self.hasuser(users, username):
+ usernode = self.getusernode(users, username)
+ if value and value.strip():
+ usernode.passwdhash = web.session.md5hexdigest(value.strip())
+ elif key.startswith("useractivated-"):
+ username = key.replace("useractivated-", "", 1)
+ self.activate(users, username)
+ elif key == "newusername":
+ username = value.lower()
+ if not username:
+ continue
+ if not (username[:1].isalpha() and username.replace("_","").isalnum()):
+ raise ValueError("Login must be alphanumeric and start with an alphabetic character (got %r)" % username)
+ if username in ["nobody", "default"]:
+ raise ValueError('"%s" is a reserved username.' % username)
+ if self.hasuser(users, username):
+ raise ValueError("Already have user with the login: %s" % username)
+ userpassword = argdict.get("newuserpassword", None)
+ if userpassword is None or userpassword == session.localize("(add password here)"):
+ raise ValueError("You must specify a password")
+ userfullname = argdict.get("newuserfullname", None)
+ if userfullname == session.localize("(add full name here)"):
+ raise ValueError("Please set the users full name or leave it blank")
+ useremail = argdict.get("newuseremail", None)
+ if useremail == session.localize("(add email here)"):
+ raise ValueError("Please set the users email address or leave it blank")
+ useractivate = "newuseractivate" in argdict
+ self.adduser(users, username, userfullname, useremail, userpassword)
+ if useractivate:
+ self.activate(users, username)
+ else:
+ activationcode = self.makeactivationcode(users, username)
+ print "user activation code for %s is %s" % (username, activationcode)
+ session.saveprefs()
+
+ def handleregistration(self, session, argdict):
+ """handles the actual registration"""
+ #TODO: Fix layout, punctuation, spacing and correlation of messages
+ supportaddress = getattr(self.instance.registration, 'supportaddress', "")
+ username = argdict.get("username", "")
+ if not username or not username.isalnum() or not username[0].isalpha():
+ raise RegistrationError(session.localize("Username must be alphanumeric, and must start with an alphabetic character."))
+ fullname = argdict.get("name", "")
+ email = argdict.get("email", "")
+ password = argdict.get("password", "")
+ passwordconfirm = argdict.get("passwordconfirm", "")
+ if " " in email or not (email and "@" in email and "." in email):
+ raise RegistrationError(session.localize("You must supply a valid email address"))
+ userexists = session.loginchecker.userexists(username)
+ users = session.loginchecker.users
+ if userexists:
+ usernode = self.getusernode(users, username)
+ # use the email address on file
+ email = getattr(usernode, "email", email)
+ password = ""
+ # TODO: we can't figure out the password as we only store the md5sum. have a password reset mechanism
+ message = session.localize("You (or someone else) attempted to register an account with your username.\n")
+ message += session.localize("We don't store your actual password but only a hash of it.\n")
+ if supportaddress:
+ message += session.localize("If you have a problem with registration, please contact %s.\n", supportaddress)
+ else:
+ message += session.localize("If you have a problem with registration, please contact the site administrator.\n")
+ displaymessage = session.localize("That username already exists. An email will be sent to the registered email address.\n")
+ redirecturl = "login.html?username=%s" % username
+ displaymessage += session.localize("Proceeding to <a href='%s'>login</a>\n", redirecturl)
+ else:
+ validatepassword(session, password, passwordconfirm)
+ self.adduser(users, username, fullname, email, password)
+ activationcode = self.makeactivationcode(users, username)
+ activationlink = ""
+ message = session.localize("A Pootle account has been created for you using this email address.\n")
+ if session.instance.baseurl.startswith("http://"):
+ message += session.localize("To activate your account, follow this link:\n")
+ activationlink = session.instance.baseurl
+ if not activationlink.endswith("/"):
+ activationlink += "/"
+ activationlink += "activate.html?username=%s&activationcode=%s" % (username, activationcode)
+ message += " %s \n" % activationlink
+ message += session.localize("Your activation code is:\n%s\n", activationcode)
+ if activationlink:
+ message += session.localize("If you are unable to follow the link, please enter the above code at the activation page.\n")
+ message += session.localize("This message is sent to verify that the email address is in fact correct. If you did not want to register an account, you may simply ignore the message.\n")
+ redirecturl = "activate.html?username=%s" % username
+ displaymessage = session.localize("Account created. You will be emailed login details and an activation code. Please enter your activation code on the <a href='%s'>activation page</a>.", redirecturl)
+ if activationlink:
+ displaymessage += " " + session.localize("(Or simply click on the activation link in the email)")
+ session.saveprefs()
+ message += session.localize("Your user name is: %s\n", username)
+ if password.strip():
+ message += session.localize("Your password is: %s\n", password)
+ message += session.localize("Your registered email address is: %s\n", email)
+ smtpserver = self.instance.registration.smtpserver
+ fromaddress = self.instance.registration.fromaddress
+ subject = Header(session.localize("Pootle Registration"),
+ "utf-8").encode()
+ messagedict = {"from": fromaddress, "to": [email], "subject": subject, "body": message}
+ if supportaddress:
+ messagedict["reply-to"] = supportaddress
+ fullmessage = mailer.makemessage(messagedict)
+ if isinstance(fullmessage, unicode):
+ fullmessage = fullmessage.encode("utf-8")
+ errmsg = mailer.dosendmessage(fromemail=self.instance.registration.fromaddress, recipientemails=[email], message=fullmessage, smtpserver=smtpserver)
+ if errmsg:
+ raise RegistrationError("Error sending mail: %s" % errmsg)
+ return displaymessage, redirecturl
+
+ def registerpage(self, session, argdict):
+ """handle registration or return the Register page"""
+ if "username" in argdict:
+ try:
+ displaymessage, redirecturl = self.handleregistration(session, argdict)
+ except RegistrationError, message:
+ return RegisterPage(session, argdict, message)
+ redirectpage = pagelayout.PootlePage("Redirecting...", {}, session)
+ redirectpage.templatename = "redirect"
+ redirectpage.templatevars = {
+ # BUG: We won't redirect to registration page, we will go to
+ # activation or login
+ "pagetitle": session.localize("Redirecting to Registration Page..."),
+ "refresh": 10,
+ "refreshurl": redirecturl,
+ "message": displaymessage,
+ }
+ redirectpage.completevars()
+ return redirectpage
+ else:
+ return RegisterPage(session, argdict)
+
+ def activatepage(self, session, argdict):
+ """handle activation or return the Register page"""
+ if "username" in argdict and "activationcode" in argdict:
+ username = argdict["username"]
+ activationcode = argdict["activationcode"]
+ if self.hasuser(session.loginchecker.users, username):
+ usernode = self.getusernode(session.loginchecker.users, username)
+ correctcode = getattr(usernode, "activationcode", "")
+ if correctcode and correctcode.strip().lower() == activationcode.strip().lower():
+ setattr(usernode, "activated", 1)
+ session.saveprefs()
+ redirectpage = pagelayout.PootlePage("Redirecting to login...", {}, session)
+ redirectpage.templatename = "redirect"
+ redirectpage.templatevars = {
+ "pagetitle": session.localize("Redirecting to login Page..."),
+ "refresh": 10,
+ "refreshurl": "login.html?username=%s" % username,
+ "message": session.localize("Your account has been activated! Redirecting to login..."),
+ }
+ redirectpage.completevars()
+ return redirectpage
+ failedmessage = session.localize("The activation information was not valid.")
+ return ActivatePage(session, argdict, title=session.localize("Activation Failed"), message=failedmessage)
+ else:
+ return ActivatePage(session, argdict)
+
+class PootleSession(web.session.LoginSession):
+ """a session object that knows about Pootle"""
+ def __init__(self, sessioncache, server, sessionstring = None, loginchecker = None):
+ """sets up the session and remembers the users prefs"""
+ super(PootleSession, self).__init__(sessioncache, server, sessionstring, loginchecker)
+ self.getprefs()
+
+ def getprefs(self):
+ """gets the users prefs into self.prefs"""
+ if self.isopen:
+ self.prefs = self.loginchecker.users.__getattr__(self.username)
+ if self.language_set:
+ self.setlanguage(self.language_set)
+ return
+ uilanguage = getattr(self.prefs, "uilanguage", None)
+ if uilanguage:
+ self.setlanguage(uilanguage)
+ else:
+ self.prefs = None
+
+ def saveprefs(self):
+ """saves changed preferences back to disk"""
+ # TODO: this is a hack, fix it up nicely :-)
+ prefsfile = self.loginchecker.users.__root__.__dict__["_setvalue"].im_self
+ prefsfile.savefile()
+
+ def open(self):
+ """opens the session, along with the users prefs"""
+ super(PootleSession, self).open()
+ self.getprefs()
+ return self.isopen
+
+ def close(self, req):
+ """opens the session, along with the users prefs"""
+ super(PootleSession, self).close(req)
+ self.getprefs()
+
+ def setlanguage(self, language):
+ """sets the language for the session"""
+ self.language_set = language or ""
+ if language:
+ self.language = language
+ elif not getattr(self, "language", None):
+ if self.isopen:
+ self.language = getattr(self.prefs, "uilanguage", "") or self.server.defaultlanguage
+ else:
+ self.language = self.server.defaultlanguage
+ if self.isopen:
+ if not getattr(self.prefs, "uilanguage", "") and self.language_set:
+ self.setinterfaceoptions({"option-uilanguage": self.language_set})
+ self.translation = self.server.gettranslation(self.language)
+ self.tr_lang = langdata.tr_lang(self.language)
+ try:
+ locale.setlocale(locale.LC_ALL, str(self.language))
+ except locale.Error:
+ # The system might not have the locale installed
+ pass
+ self.checkstatus(None, None)
+ if self.language:
+ self.lang = factory.getlanguage(self.language)
+
+ def validate(self):
+ """checks if this session is valid (which means the user must be activated)"""
+ if not super(PootleSession, self).validate():
+ return False
+ if self.loginchecker.users.__hasattr__(self.username):
+ usernode = self.loginchecker.users.__getattr__(self.username)
+ if getattr(usernode, "activated", 0):
+ return self.isvalid
+ self.isvalid = False
+ self.status = "username has not yet been activated"
+ return self.isvalid
+
+ def setoptions(self, argdict):
+ """sets the user options"""
+ userprojects = argdict.get("projects", [])
+ if isinstance(userprojects, (str, unicode)):
+ userprojects = [userprojects]
+ setattr(self.prefs, "projects", ",".join(userprojects))
+ userlanguages = argdict.get("languages", [])
+ if isinstance(userlanguages, (str, unicode)):
+ userlanguages = [userlanguages]
+ setattr(self.prefs, "languages", ",".join(userlanguages))
+ self.saveprefs()
+
+ def setpersonaloptions(self, argdict):
+ """sets the users personal details"""
+ name = argdict.get("option-name", "")
+ email = argdict.get("option-email", "")
+ password = argdict.get("option-password", "")
+ passwordconfirm = argdict.get("option-passwordconfirm", "")
+
+ if password or passwordconfirm:
+ validatepassword(self, password, passwordconfirm)
+ setattr(self.prefs, "name", name)
+ setattr(self.prefs, "email", email)
+ if password:
+ passwdhash = web.session.md5hexdigest(argdict.get("option-password", ""))
+ setattr(self.prefs, "passwdhash", passwdhash)
+ self.saveprefs()
+
+ def setinterfaceoptions(self, argdict):
+ """sets the users interface details"""
+ value = argdict.get("option-uilanguage", "")
+ if value:
+ self.prefs.uilanguage = value
+ self.setlanguage(value)
+ def setinterfacevalue(name, errormessage):
+ value = argdict.get("option-%s" % name, "")
+ if value != "":
+ if not value.isdigit():
+ raise ValueError(errormessage)
+ setattr(self.prefs, name, value)
+ setinterfacevalue("inputheight", self.localize("Input height must be numeric"))
+ setinterfacevalue("inputwidth", self.localize("Input width must be numeric"))
+ setinterfacevalue("viewrows", self.localize("The number of rows displayed in view mode must be numeric"))
+ setinterfacevalue("translaterows", self.localize("The number of rows displayed in translate mode must be numeric"))
+ useraltsrclanguage = argdict.get("altsrclanguage", "")
+ if isinstance(useraltsrclanguage, (str, unicode)):
+ setattr(self.prefs, "altsrclanguage", useraltsrclanguage)
+ self.saveprefs()
+
+ def getprojects(self):
+ """gets the user's projects"""
+ userprojects = getattr(self.prefs, "projects", "")
+ return [projectcode.strip() for projectcode in userprojects.split(',') if projectcode.strip()]
+
+ def getlanguages(self):
+ """gets the user's languages"""
+ userlanguages = getattr(self.prefs, "languages", "")
+ return [languagecode.strip() for languagecode in userlanguages.split(',') if languagecode.strip()]
+
+ def getaltsrclanguage(self):
+ """gets the user's alternative source language"""
+ useraltsrclanguage = getattr(self.prefs, "altsrclanguage", "")
+ return useraltsrclanguage.strip()
+
+ def getrights(self):
+ """gets the user's rights"""
+ return getattr(self.prefs, "rights", None)
+
+ def issiteadmin(self):
+ """returns whether the user can administer the site"""
+ return getattr(self.getrights(), "siteadmin", False)
+
diff --git a/Pootle-1.2.1/Pootle/util.py b/Pootle-1.2.1/Pootle/util.py
new file mode 100644
index 0000000..9e176bd
--- /dev/null
+++ b/Pootle-1.2.1/Pootle/util.py
@@ -0,0 +1,62 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Copyright 2004-2007 Zuza Software Foundation
+#
+# This file is part of translate.
+#
+# translate is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# translate 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 General Public License
+# along with translate; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+undefined = lambda: None
+
+def lazy(result_name):
+ """This is used to create an attribute whose value is
+ lazily computed. The parameter names an object variable that
+ will be used to hold the lazily computed value. At the start,
+ this variable should hold the value undefined.
+
+ TODO: Replace this with a nice Python descriptor.
+
+ class Person(object):
+ def __init__(self):
+ self.name = 'John'
+ self.surname = 'Doe'
+ self._fullname = undefined
+
+ @lazy('_fullname')
+ def _get_fullname(self):
+ return self.name + ' ' + self.surname
+ """
+
+ def lazify(f):
+ def evaluator(self):
+ result = getattr(self, result_name)
+ if result is not undefined:
+ return result
+ else:
+ setattr(self, result_name, f(self))
+ return getattr(self, result_name)
+ return evaluator
+ return lazify
+
+class Cache(object):
+ def __init__(self, getter):
+ self.data = {}
+ self._getter = getter
+
+ def __getitem__(self, key):
+ if key not in self.data:
+ self.data[key] = self._getter(key)
+ return self.data[key]
diff --git a/Pootle-1.2.1/README b/Pootle-1.2.1/README
new file mode 120000
index 0000000..e530be6
--- /dev/null
+++ b/Pootle-1.2.1/README
@@ -0,0 +1 @@
+Pootle/README \ No newline at end of file
diff --git a/Pootle-1.2.1/pootlesetup.py b/Pootle-1.2.1/pootlesetup.py
new file mode 100755
index 0000000..66b7e66
--- /dev/null
+++ b/Pootle-1.2.1/pootlesetup.py
@@ -0,0 +1,347 @@
+#!/usr/bin/env python
+
+from distutils.core import setup, Extension, Distribution, Command
+import distutils.sysconfig
+import sys
+import os.path
+from Pootle import __version__
+from Pootle import __doc__
+try:
+ import py2exe
+ build_exe = py2exe.build_exe.py2exe
+ Distribution = py2exe.Distribution
+except ImportError:
+ py2exe = None
+ build_exe = Command
+
+# TODO: check out installing into a different path with --prefix/--home
+
+join = os.path.join
+
+pootleversion = __version__.ver
+
+packagesdir = distutils.sysconfig.get_python_lib()
+sitepackages = packagesdir.replace(sys.prefix + os.sep, '')
+
+infofiles = [(join(sitepackages,'Pootle'),
+ [join('Pootle',filename) for filename in 'ChangeLog', 'COPYING', 'LICENSE', 'README'])]
+initfiles = [(join(sitepackages,'Pootle'),[join('Pootle','__init__.py')])]
+
+packages = ["Pootle"]
+subpackages = ["tools"]
+pootlescripts = [join('Pootle', 'PootleServer'), join('Pootle', 'tools', 'updatetm')]
+
+def addsubpackages(subpackages):
+ for subpackage in subpackages:
+ initfiles.append((join(sitepackages, 'Pootle', subpackage),
+ [join('Pootle', subpackage, '__init__.py')]))
+ for infofile in ('README', 'TODO'):
+ infopath = join('translate', subpackage, infofile)
+ if os.path.exists(infopath):
+ infofiles.append((join(sitepackages, 'Pootle', subpackage), [infopath]))
+ packages.append("Pootle.%s" % subpackage)
+
+#Enter the codes for all languages that must be packaged here
+#approvedlanguages = ['af', 'ar', 'eu', 'ca', 'zh_CN', 'zh_HK', 'da', 'nl', 'fi', 'fr', 'gl', 'de', 'hu', 'it', 'ja', 'mt', 'pt', 'sl', 'es', 'sv', 'vi', 'templates']
+
+class build_exe_map(build_exe):
+ """distutils py2exe-based class that builds the exe file(s) but allows mapping data files"""
+ def reinitialize_command(self, command, reinit_subcommands=0):
+ if command == "install_data":
+ install_data = build_exe.reinitialize_command(self, command, reinit_subcommands)
+ install_data.data_files = self.remap_data_files(install_data.data_files)
+ return install_data
+ return build_exe.reinitialize_command(self, command, reinit_subcommands)
+
+ def remap_data_files(self, data_files):
+ """maps the given data files to different locations using external map_data_file function"""
+ new_data_files = []
+ for f in data_files:
+ if type(f) in (str, unicode):
+ f = map_data_file(f)
+ else:
+ datadir, files = f
+ datadir = map_data_file(datadir)
+ if datadir is None:
+ f = None
+ else:
+ f = datadir, files
+ if f is not None:
+ new_data_files.append(f)
+ return new_data_files
+
+class InnoScript:
+ """class that builds an InnoSetup script"""
+ def __init__(self, name, lib_dir, dist_dir, exe_files = [], other_files = [], install_scripts = [], version = "1.0"):
+ self.lib_dir = lib_dir
+ self.dist_dir = dist_dir
+ if not self.dist_dir.endswith(os.sep):
+ self.dist_dir += os.sep
+ self.name = name
+ self.version = version
+ self.exe_files = [self.chop(p) for p in exe_files]
+ self.other_files = [self.chop(p) for p in other_files]
+ self.install_scripts = install_scripts
+
+ def getcompilecommand(self):
+ try:
+ import _winreg
+ compile_key = _winreg.OpenKey(_winreg.HKEY_CLASSES_ROOT, "innosetupscriptfile\\shell\\compile\\command")
+ compilecommand = _winreg.QueryValue(compile_key, "")
+ compile_key.Close()
+ except:
+ compilecommand = "compil32.exe"
+ return compilecommand
+
+ def chop(self, pathname):
+ """returns the path relative to self.dist_dir"""
+ assert pathname.startswith(self.dist_dir)
+ return pathname[len(self.dist_dir):]
+
+ def create(self, pathname=None):
+ """creates the InnoSetup script"""
+ if pathname is None:
+ self.pathname = os.path.join(self.dist_dir, self.name + os.extsep + "iss")
+ else:
+ self.pathname = pathname
+ ofi = self.file = open(self.pathname, "w")
+ print >> ofi, "; WARNING: This script has been created by py2exe. Changes to this script"
+ print >> ofi, "; will be overwritten the next time py2exe is run!"
+ print >> ofi, r"[Setup]"
+ print >> ofi, r"AppName=%s" % self.name
+ print >> ofi, r"AppVerName=%s %s" % (self.name, self.version)
+ print >> ofi, r"DefaultDirName={pf}\%s" % self.name
+ print >> ofi, r"DefaultGroupName=%s" % self.name
+ print >> ofi, r"OutputBaseFilename=%s-%s-setup" % (self.name, self.version)
+ print >> ofi
+ print >> ofi, r"[Files]"
+ for path in self.exe_files + self.other_files:
+ print >> ofi, r'Source: "%s"; DestDir: "{app}\%s"; Flags: ignoreversion' % (path, os.path.dirname(path))
+ print >> ofi
+ print >> ofi, r"[Icons]"
+ for path in self.exe_files:
+ if path in self.install_scripts:
+ continue
+ linkname = os.path.splitext(os.path.basename(path))[0]
+ print >> ofi, r'Name: "{group}\%s"; Filename: "{app}\%s"; WorkingDir: "{app}"; Flags: dontcloseonexit' % \
+ (linkname, path)
+ print >> ofi, 'Name: "{group}\Uninstall %s"; Filename: "{uninstallexe}"' % self.name
+ if self.install_scripts:
+ print >> ofi, r"[Run]"
+ for path in self.install_scripts:
+ print >> ofi, r'Filename: "{app}\%s"; WorkingDir: "{app}"; Parameters: "-install"' % path
+ print >> ofi
+ print >> ofi, r"[UninstallRun]"
+ for path in self.install_scripts:
+ print >> ofi, r'Filename: "{app}\%s"; WorkingDir: "{app}"; Parameters: "-remove"' % path
+ print >> ofi
+ ofi.close()
+
+ def compile(self):
+ """compiles the script using InnoSetup"""
+ shellcompilecommand = self.getcompilecommand()
+ compilecommand = shellcompilecommand.replace('"%1"', self.pathname)
+ result = os.system(compilecommand)
+ if result:
+ print "Error compiling iss file"
+ print "Opening iss file, use InnoSetup GUI to compile manually"
+ os.startfile(self.pathname)
+
+class build_installer(build_exe_map):
+ """distutils class that first builds the exe file(s), then creates a Windows installer using InnoSetup"""
+ description = "create an executable installer for MS Windows using InnoSetup and py2exe"
+ user_options = getattr(build_exe, 'user_options', []) + \
+ [('install-script=', None,
+ "basename of installation script to be run after installation or before deinstallation")]
+
+ def initialize_options(self):
+ build_exe.initialize_options(self)
+ self.install_script = None
+
+ def run(self):
+ # First, let py2exe do it's work.
+ build_exe.run(self)
+ lib_dir = self.lib_dir
+ dist_dir = self.dist_dir
+ # create the Installer, using the files py2exe has created.
+ exe_files = self.windows_exe_files + self.console_exe_files
+ install_scripts = self.install_script
+ if isinstance(install_scripts, (str, unicode)):
+ install_scripts = [install_scripts]
+ script = InnoScript(self.distribution.metadata.name, lib_dir, dist_dir, exe_files, self.lib_files, version=self.distribution.metadata.version, install_scripts=install_scripts)
+ print "*** creating the inno setup script***"
+ script.create()
+ print "*** compiling the inno setup script***"
+ script.compile()
+ # Note: By default the final setup.exe will be in an Output subdirectory.
+
+def map_data_file (data_file):
+ """remaps a data_file (could be a directory) to a different location
+ This version gets rid of Lib\\site-packages, etc"""
+ data_parts = data_file.split(os.sep)
+ if data_parts[:2] == ["Lib", "site-packages"]:
+ data_parts = data_parts[2:]
+ if data_parts:
+ data_file = os.path.join(*data_parts)
+ else:
+ data_file = ""
+ if data_parts[:1] == ["Pootle"]:
+ data_parts = data_parts[1:]
+ if data_parts:
+ data_file = os.path.join(*data_parts)
+ else:
+ data_file = ""
+ return data_file
+
+def getdatafiles():
+ datafiles = initfiles + infofiles
+ def listfiles(srcdir):
+ return join(sitepackages, srcdir), [join(srcdir, f) for f in os.listdir(srcdir) if os.path.isfile(join(srcdir, f))]
+ pootlefiles = [(join(sitepackages, 'Pootle'), [join('Pootle', 'pootle.prefs'), join('Pootle', 'users.prefs')])]
+ pootlefiles.append(listfiles(join('Pootle', 'html')))
+ pootlefiles.append(listfiles(join('Pootle', 'html', 'images')))
+ pootlefiles.append(listfiles(join('Pootle', 'html', 'js')))
+ pootlefiles.append(listfiles(join('Pootle', 'html', 'js', 'jquery')))
+ pootlefiles.append(listfiles(join('Pootle', 'html', 'doc')))
+ pootlefiles.append(listfiles(join('Pootle', 'html', 'doc', 'en')))
+ pootlefiles.append(listfiles(join('Pootle', 'templates')))
+ basedir, pootlelangs, files = os.walk(join('Pootle', 'po', 'pootle')).next()
+ for dir in pootlelangs:
+ pootlefiles.append(listfiles(join('Pootle', 'po', 'pootle', dir)))
+ datafiles += pootlefiles
+ return datafiles
+
+def buildinfolinks():
+ linkfile = getattr(os, 'symlink', None)
+ import shutil
+ if linkfile is None:
+ linkfile = shutil.copy2
+ basedir = os.path.abspath(os.curdir)
+ os.chdir("Pootle")
+ if os.path.exists("LICENSE") or os.path.islink("LICENSE"):
+ os.remove("LICENSE")
+ linkfile("COPYING", "LICENSE")
+ os.chdir(basedir)
+ for infofile in ["COPYING", "README", "LICENSE"]:
+ if os.path.exists(infofile) or os.path.islink(infofile):
+ os.remove(infofile)
+ linkfile(os.path.join("Pootle", infofile), infofile)
+
+def buildmanifest_in(file, scripts):
+ """This writes the required files to a MANIFEST.in file"""
+ print >>file, "# MANIFEST.in: the below autogenerated by pootlesetup.py from Pootle %s" % pootleversion
+ print >>file, "# things needed by translate setup.py to rebuild"
+ print >>file, "# informational files"
+ for infofile in ("README", "TODO", "ChangeLog", "COPYING", "LICENSE", "*.txt"):
+ print >>file, "global-include %s" % infofile
+ print >> file, "# scripts which don't get included by default in sdist"
+ for scriptname in scripts:
+ print >>file, "include %s" % scriptname
+ # wordlist, portal are in the source tree but unconnected to the python code
+ print >>file, "prune wordlist"
+ print >>file, "prune pootling"
+ print >>file, "prune spelling"
+ print >>file, "prune .svn"
+ # translate toolkit is in the same source tree but distributed separately
+ print >>file, "prune translate"
+ print >>file, "prune virtaal"
+ print >>file, "prune spelt"
+ print >>file, "prune corpuscatcher"
+ print >>file, "include Pootle/*.prefs"
+ print >>file, "graft Pootle/html"
+ print >>file, "graft Pootle/templates"
+ print >>file, "graft Pootle/po/pootle"
+ print >>file, "# MANIFEST.in: the above autogenerated by pootlesetup.py from Pootle %s" % pootleversion
+
+def fix_bdist_rpm(setupfile):
+ """Fixes bdist_rpm to use the given setup filename instead of setup.py"""
+ try:
+ from distutils.command import bdist_rpm
+ build_rpm = bdist_rpm.bdist_rpm
+ except ImportError:
+ return
+ if not hasattr(build_rpm, "_make_spec_file"):
+ return
+ orig_make_spec_file = build_rpm._make_spec_file
+ def fixed_make_spec_file(self):
+ """Generate the text of an RPM spec file and return it as a
+ list of strings (one per line).
+ """
+ orig_spec_file = orig_make_spec_file(self)
+ return [line.replace("setup.py", setupfile) for line in orig_spec_file]
+ build_rpm._make_spec_file = fixed_make_spec_file
+
+class PootleDistribution(Distribution):
+ """a modified distribution class for translate"""
+ def __init__(self, attrs):
+ baseattrs = {}
+ py2exeoptions = {}
+ py2exeoptions["packages"] = ["Pootle", "encodings"]
+ py2exeoptions["compressed"] = True
+ jToolkitExcludes = ["PyLucene", "Image", "jToolkit.data.ADODB", "pgdb", "MySQLdb", "cx_Oracle", "pysqlite2"]
+ py2exeoptions["excludes"] = ["Tkconstants", "Tkinter", "tcl", "translate.misc._csv"] + jToolkitExcludes
+ version = attrs.get("version", pootleversion)
+ py2exeoptions["dist_dir"] = "Pootle-%s" % version
+ options = {"py2exe": py2exeoptions}
+ baseattrs['options'] = options
+ if py2exe:
+ baseattrs['zipfile'] = "Pootle.zip"
+ baseattrs['console'] = pootlescripts
+ baseattrs['cmdclass'] = {"py2exe": build_exe_map, "innosetup": build_installer}
+ options["innosetup"] = py2exeoptions.copy()
+ options["innosetup"]["install_script"] = []
+ baseattrs.update(attrs)
+ fix_bdist_rpm(os.path.basename(__file__))
+ Distribution.__init__(self, baseattrs)
+
+def standardsetup(name, version, custompackages=[], customdatafiles=[]):
+ buildinfolinks()
+ # TODO: make these end with .py ending on Windows...
+ try:
+ manifest_in = open("MANIFEST.in", "w")
+ buildmanifest_in(manifest_in, pootlescripts)
+ manifest_in.close()
+ except IOError, e:
+ print >> sys.stderr, "warning: could not recreate MANIFEST.in, continuing anyway. Error was %s" % e
+ addsubpackages(subpackages)
+ datafiles = getdatafiles()
+ ext_modules = []
+ dosetup(name, version, packages + custompackages, datafiles + customdatafiles, pootlescripts, ext_modules)
+
+#http://cheeseshop.python.org/pypi?:action=list_classifiers
+classifiers = [
+ "Development Status :: 5 - Production/Stable",
+ "Environment :: Web Environment",
+ "Intended Audience :: End Users/Desktop",
+ "License :: OSI Approved :: GNU General Public License (GPL)",
+ "Programming Language :: Python",
+ "Topic :: Software Development :: Localization",
+ "Operating System :: OS Independent",
+ "Operating System :: Microsoft :: Windows",
+ "Operating System :: Unix"
+ ]
+
+def dosetup(name, version, packages, datafiles, scripts, ext_modules=[]):
+ long_description = __doc__
+ description = __doc__.split("\n", 1)[0]
+ setup(name=name,
+ version=version,
+ license="GNU General Public License (GPL)",
+ description=description,
+ long_description=long_description,
+ author="Translate.org.za",
+ author_email="translate-devel@lists.sourceforge.net",
+ url="http://translate.sourceforge.net/wiki/pootle/index",
+ download_url="http://sourceforge.net/project/showfiles.php?group_id=91920&package_id=144807",
+ platforms=["any"],
+ classifiers=classifiers,
+ packages=packages,
+ data_files=datafiles,
+ scripts=scripts,
+ ext_modules=ext_modules,
+ distclass=PootleDistribution
+ )
+
+if __name__ == "__main__":
+ standardsetup("Pootle", pootleversion)
+