workaround for django ticket 17111; cover in api fix
[wolnelektury.git] / scripts / make-locale-pack
1 #!/bin/bash
2
3 ME=$0
4 ROOT=$(git rev-parse --show-toplevel)
5 DST=`mktemp -d`/wl-lokalizacja
6 mkdir -p $DST
7 MANAGE=$ROOT/wolnelektury/manage.py
8
9
10 export_po()
11 {
12     for langdir in $ROOT/wolnelektury/locale/*; do
13        lang=`basename $langdir`
14        mkdir -p $DST/$lang
15        cp -v ${ROOT}/wolnelektury/locale/${lang}/LC_MESSAGES/django.po $DST/${lang}/wolnelektury.po
16     done
17     
18     for appdir in $ROOT/apps/*; do
19         app=`basename $appdir`
20         if [ -d $ROOT/apps/$app/locale ]; then
21         for langdir in $ROOT/apps/$app/locale/*; do
22             lang=`basename $langdir`
23             mkdir -p $DST/$lang
24             cp -v ${ROOT}/apps/${app}/locale/${lang}/LC_MESSAGES/django.po $DST/${lang}/${app}.po
25         done
26         fi
27     done
28
29     for langdir in $ROOT/locale-contrib/*/; do
30         lang = `basename $langdir`
31         mkdir -p "$DST/$lang"
32         cp -v "${langdir}LC_MESSAGES/django.po" "${DST}/$lang/contrib.po"
33     done
34
35     cp -v ${ROOT}/wolnelektury/static/js/locale.js $DST/locale.js.txt
36     cp -v ${ROOT}/apps/infopages/fixtures/infopages.json $DST/infopages.json
37
38     ${0}-json.py $DST/infopages.json
39 }
40
41
42
43 cd $ROOT/wolnelektury
44 echo "Generate po for WL"
45 $MANAGE makemessages --all
46 )
47
48 (
49 cd $ROOT/apps
50 for i in *; do
51     echo "Generate po for app $i"
52     ( cd $i; $MANAGE makemessages --all;
53         )
54 done
55 )
56
57 (
58         pybabel extract -F "$ROOT/babel.cfg" -o "$ROOT/locale-contrib/django.pot" \
59           "`python -c 'import os,allauth; print os.path.dirname(allauth.__file__)'`"
60 )
61
62 export_po
63
64 PACK=`pwd`/wl-lokalizacja.zip
65 ( cd $DST; cd ..; zip -r $PACK wl-lokalizacja; )
66
67 rm -r $DST
68