#!/bin/sh -x

# Update translation files between SVN and Pootle(git)
#
# Usage: mkPootle {pot|po|import}
#
# pot)    Copy POTs from svn to Pootle
# po)     Copy POs from svn to Pootle
# import) Copy POs from Pootle to svn
#
# EToys(GNU) structure
#  .../po/
#  .../po/domain/domain.pot
#  .../po/domain/xx_YY.po
#
# Pootle structure
# .../po/
# .../po/xx_YY/domain.po
# .../po/templates/domain.pot

domains=`find Content/po -name "*.pot" \
    | sed "s/^.*\/\(.*\).pot$/\1/" | sort | uniq `

# Copy POTs from svn to Pootle
pot() {
    for domain in $domains
    do
	mkdir -p "po/templates/"
	cp "Content/po/$domain/$domain.pot" "po/templates/$domain.pot"
    done
}

# Copy POs from svn to Pootle
po() {
    for domain in $domains
    do
	langs=`ls Content/po/$domain/*.po \
	    | sed "s/^.*\/\(.*\).po$/\1/"`
	for lang in $langs
	do
	    mkdir -p "po/$lang"
	    cp "Content/po/$domain/$lang.po" "po/$lang/$domain.po"
	done
    done
}
	    
# Copy POs from Pootle to svn
import() {
    files=`ls po/*/*.po`
    for file in $files
    do
	domain=`echo $file | sed "s/^.*\/\(.*\).po$/\1/"`
	lang=`echo $file | sed "s/^po\/\([^/]*\).*/\1/"`
	cp "$file" "Content/po/$domain/$lang.po"
    done
}

case "$1" in
    pot)
	pot
	;;
    po)
	po
	;;
    import)
	import
	;;
    *)
	echo $"Usage: mkPootle {pot|po|import}"
	exit 1
esac
