From 04eb45b2552b9cb9bbe766d1f2b8582593475c9d Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Thu, 16 Jun 2016 10:38:54 +0200 Subject: [PATCH] Bug 16749: Adjustments for koha-translate Content-Type: text/plain; charset=utf-8 [1] Add a -d|--dev parameter for dev installs. [2] KOHA_CONF is not needed in this script. [3] No hardcoded PERL5LIB, following bug 16733. [4] Adjust template paths for dev installs: OPAC_TMPL, INTRANET_TMPL. [5] Remove reference now to obsolete thems ccsr and prog. Test plan: [1] Regular package install: Run koha-translate -l to show installed languages. Run koha-translate -l -a to show available languages. Add a language: koha-translate -i nl-NL. Check the nl-NL folder. Remove a language: koha-translate -r nl-NL. Check again. [2] If you have a dev install too, try: Add the line to koha-conf.xml. (See 16733.) Run koha-translate -l -d yourinstance to show installed languages. (Note: You only see the languages installed in that instance.) Add a language: koha-translate -i nl-NL -d yourinstance. Remove a language: koha-translate -r nl-NL -d yourinstance. Signed-off-by: Marcel de Rooy EDIT (Feb 10, 2017): Fixed a typ PERL5DIR. Decided to not pass KOHA_CONF after all. --- debian/scripts/koha-translate | 63 +++++++++++++++++++++++++++++-------------- 1 file changed, 43 insertions(+), 20 deletions(-) diff --git a/debian/scripts/koha-translate b/debian/scripts/koha-translate index af6ac43..b68b60e 100755 --- a/debian/scripts/koha-translate +++ b/debian/scripts/koha-translate @@ -38,11 +38,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 +54,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 } @@ -80,8 +81,8 @@ print_available() 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_INSTALL_DIR/$OPAC_TMPL/bootstrap/ ; \ + ls -1 $KOHA_INSTALL_DIR/$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 +108,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="$PERL5DIR:$TRANSLATE_DIR" \ + KOHA_CONF="$KOHA_CONF" \ $PERL_CMD $TRANSLATE_DIR/translate install $translate_opts $lang fi else @@ -153,10 +155,8 @@ 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_INSTALL_DIR/$OPAC_TMPL/bootstrap/$lang + rm -rf $KOHA_INSTALL_DIR/$INTRANET_TMPL/prog/$lang else die "Error: the selected language is not installed." fi @@ -198,21 +198,23 @@ 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 echo $1 | egrep -q "^[^-]"; then + dev=$1 + else + die "Error: dev parameter with wrong instance name" + 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 @@ -243,6 +245,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." ;; @@ -253,6 +262,20 @@ while [ $# -gt 0 ]; do done +# Global PATH variables, optionally use alternative paths for a dev install +if [ "$dev" != "" ]; then adjust_paths_dev_install $dev; fi +KOHA_INSTALL_DIR=$KOHA_HOME +if [ "$DEV_INSTALL" = "" ]; 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_INSTALL_DIR/misc/translator" +PO_DIR="$TRANSLATE_DIR/po" +PERL_CMD=`which perl` + # Process the requested actions case $op in "help") -- 2.1.4