X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=debian%2Fscripts%2Fkoha-translate;h=69936c000e47505dcfe489a5e12264626b2f5745;hb=59c1151618befae9977b0ed97253584bb44e6d04;hp=88f90e8d05c28be7478cc3c61098cef1d0722fd4;hpb=ad3c688451df0cd3ed4dc6b4a1171a13a4af6767;p=koha-ffzg.git diff --git a/debian/scripts/koha-translate b/debian/scripts/koha-translate index 88f90e8d05..69936c000e 100755 --- a/debian/scripts/koha-translate +++ b/debian/scripts/koha-translate @@ -17,6 +17,8 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +# Read configuration variable file if it is present +[ -r /etc/default/koha-common ] && . /etc/default/koha-common set -e @@ -38,11 +40,11 @@ $scriptname This script lets you manage your Koha templates translations. Usage: -$scriptname --list|-l [--available|-a] -$scriptname --check|-c language_code -$scriptname --install|-i language_code -$scriptname --update|-u language_code -$scriptname --remove|-r language_code +$scriptname --list|-l [--available|-a] [-d|--dev instance] +$scriptname --check|-c language_code] [-d|--dev instance] +$scriptname --install|-i language_code] [-d|--dev instance] +$scriptname --update|-u language_code] [-d|--dev instance] +$scriptname --remove|-r language_code] [-d|--dev instance] $scriptname --help|-h -l | --list List the installed or available (combined with -a) @@ -54,6 +56,7 @@ $scriptname --help|-h -r | --remove Remove the specified language translations -v | --verbose Be more verbose on the translation process -h | --help Display this help message + -d | --dev Limit actions to a specific dev instance EOF } @@ -73,15 +76,15 @@ print_available() { # Loop over only one opac theme for i in $( ls $PO_DIR | grep opac-bootstrap ); do - echo `basename $i -i-opac-bootstrap.po` | \ + echo `basename $i -opac-bootstrap.po` | \ grep -v -x -e en done } print_installed() { - ( ls -1 $KOHA_INSTALL_DIR/opac/htdocs/opac-tmpl/bootstrap/ ; \ - ls -1 $KOHA_INSTALL_DIR/opac/htdocs/opac-tmpl/prog/ 2> /dev/null ) | \ + ( ls -1 $KOHA_HOME/$OPAC_TMPL/bootstrap/ ; \ + ls -1 $KOHA_HOME/$OPAC_TMPL/prog/ 2> /dev/null ) | \ sort | uniq | \ grep -v -e images -e itemtypeimg -x -e en -e css -e js -e less -e lib } @@ -107,7 +110,8 @@ install_lang() else # Check po files are present check_lang_po_files $lang - env PERL5LIB="$KOHA_LIB_DIR:$TRANSLATE_DIR" KOHA_CONF="$KOHA_CONF_FILE"\ + env PERL5LIB="$PERL5LIB:$TRANSLATE_DIR" \ + KOHA_CONF="$KOHA_CONF" \ $PERL_CMD $TRANSLATE_DIR/translate install $translate_opts $lang fi else @@ -153,12 +157,10 @@ remove_lang() fi if print_installed | grep -q $lang; then - rm -rf $KOHA_INSTALL_DIR/opac/htdocs/opac-tmpl/prog/$lang - rm -rf $KOHA_INSTALL_DIR/opac/htdocs/opac-tmpl/ccsr/$lang - rm -rf $KOHA_INSTALL_DIR/opac/htdocs/opac-tmpl/bootstrap/$lang - rm -rf $KOHA_INSTALL_DIR/intranet/htdocs/intranet-tmpl/prog/$lang + rm -rf $KOHA_HOME/$OPAC_TMPL/bootstrap/$lang + rm -rf $KOHA_HOME/$INTRANET_TMPL/prog/$lang else - die "Error: the selected language is not already installed." + die "Error: the selected language is not installed." fi else die "Error: no language code supplied." @@ -169,8 +171,12 @@ check_lang_po_files() { lang=$1 - po_files="$PO_DIR/$lang-opac-bootstrap.po - $PO_DIR/$lang-pref.po" + po_files="$PO_DIR/$lang-marc-MARC21.po + $PO_DIR/$lang-marc-NORMARC.po + $PO_DIR/$lang-marc-UNIMARC.po + $PO_DIR/$lang-opac-bootstrap.po + $PO_DIR/$lang-pref.po + $PO_DIR/$lang-staff-prog.po" if [ "$lang" != "" ]; then @@ -193,21 +199,55 @@ set_action() fi } -# Global PATH variables -KOHA_INSTALL_DIR="/usr/share/koha" -KOHA_LIB_DIR="/usr/share/koha/lib" -KOHA_CONF_FILE="/etc/koha/koha-conf-site.xml.in" -TRANSLATE_DIR="$KOHA_INSTALL_DIR/misc/translator" -PO_DIR="$TRANSLATE_DIR/po" -PERL_CMD=`which perl` +set_dev() +{ + if is_instance $1; then + dev=$1 + else + die "Error: Invalid instance name $1" + fi +} + +check_koha_conf() +{ + if [ "$dev" != "" ]; then + KOHA_CONF=/etc/koha/sites/$dev/koha-conf.xml + elif [ -z $KOHA_CONF ]; then + KOHA_CONF=/etc/koha/koha-conf-site.xml.in + fi +} + +init_template_paths() +{ + # Template paths + if [ "$dev" = "" ]; then + OPAC_TMPL=opac/htdocs/opac-tmpl + INTRANET_TMPL=intranet/htdocs/intranet-tmpl + else + OPAC_TMPL=koha-tmpl/opac-tmpl + INTRANET_TMPL=koha-tmpl/intranet-tmpl + fi + TRANSLATE_DIR="$KOHA_HOME/misc/translator" + PO_DIR="$TRANSLATE_DIR/po" +} + +flush_cache() +{ + if [ "$dev" = "" ]; then + koha-foreach --enabled "$KOHA_HOME/bin/clear_cache.pl" + else + koha-shell $dev -c "$KOHA_HOME/misc/bin/clear_cache.pl" + fi +} # Control variables list_all="" op="" language="" verbose="no" +dev="" -# We accept at most 2 parameters +# We accept at most 4 parameters [ $# -ge 1 ] && [ $# -le 4 ] || ( usage ; die "Error: wrong parameters" ) # Read parameters @@ -238,6 +278,13 @@ while [ $# -gt 0 ]; do -v|--verbose) verbose="yes" shift ;; + -d|--dev) + if [ $# -lt 2 ]; then + die "Error: dev parameter without instance" + fi + shift + set_dev $1 + shift ;; -*) usage die "Error: unknown parameter $1." ;; @@ -248,6 +295,11 @@ while [ $# -gt 0 ]; do done +if [ "$dev" != "" ]; then adjust_paths_dev_install $dev; fi +check_koha_conf +init_template_paths +PERL_CMD=`which perl` + # Process the requested actions case $op in "help") @@ -255,11 +307,15 @@ case $op in "list") list $list_all ;; "install") - install_lang $language ;; + install_lang $language + flush_cache + ;; "update") update_lang $language ;; "remove") - remove_lang $language ;; + remove_lang $language + flush_cache + ;; "check") check_lang_po_files $language ;; *)