@@ -, +, @@ users on installing translations --- debian/docs/koha-translate.xml | 73 ++++++++++++++ debian/koha-common.install | 1 + debian/scripts/koha-translate | 205 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 279 insertions(+) create mode 100644 debian/docs/koha-translate.xml create mode 100755 debian/scripts/koha-translate --- a/debian/docs/koha-translate.xml +++ a/debian/docs/koha-translate.xml @@ -0,0 +1,73 @@ +
+koha-translate + +Koha is the first free software library automation package. + + The Koha Community + http://koha-community.org/ + + + + + + + koha-translate + 8 + + + + koha-translate + Manage Koha templates translations + UNIX/Linux + + + + + koha-translate | | | lang_code + koha-translate | | + + + + Options + + + + + (For use with --list) List the available language translations. + + + + + + Install the specified lang_code language translation. + + + + + + List the installed or available (combined with -a) language translations. + + + + + + Remove the specified lang_code language translation. + + + + + + Update the specified lang_code language translation. + + + + + + + Description + Manage Koha templates translations. + + + + +
--- a/debian/koha-common.install +++ a/debian/koha-common.install @@ -28,6 +28,7 @@ debian/scripts/koha-run-backups usr/sbin debian/scripts/koha-shell usr/sbin debian/scripts/koha-start-zebra usr/sbin debian/scripts/koha-stop-zebra usr/sbin +debian/scripts/koha-translate usr/sbin debian/scripts/koha-upgrade-schema usr/sbin debian/scripts/koha-upgrade-to-3.4 usr/sbin debian/tmp_docbook/*.8 usr/share/man/man8 --- a/debian/scripts/koha-translate +++ a/debian/scripts/koha-translate @@ -0,0 +1,205 @@ +#!/bin/sh +# +# koha-translate -- Manage Koha translations. +# Copyright 2013 Tomás Cohen Arazi +# Universidad Nacional de Córdoba +# +# 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 3 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, see . + + +set -e + +usage() +{ + local scriptname=$(basename $0) + cat <&2 + exit 1 +} + +list() { + all=$1 + if [ "$all" != "" ]; then + print_available + else + print_installed + fi +} + +print_available() +{ + for i in $(ls $PO_DIR | grep opac) + do + echo `basename $i -i-opac-t-prog-v-3006000.po` + done +} + +print_installed() +{ + for i in $(ls $KOHA_INSTALL_DIR/opac/htdocs/opac-tmpl/prog/ | grep -v -e images -e itemtypeimg) + do + echo $i + done +} + +install_lang() +{ + lang=$1 + + if [ "$lang" != "" ]; then + + if [ "$lang" = "en" ]; then + die "Error: the default language (en) is already installed." + fi + + if print_available | grep -q $lang; then + if print_installed | grep -q $lang; then + die "Error: the selected language is already installed. Try --update if you want to re-install it." + else + env PERL5LIB="$KOHA_LIB_DIR:$TRANSLATE_DIR" KOHA_CONF="$KOHA_CONF_FILE"\ + $PERL_CMD $TRANSLATE_DIR/translate install $lang + fi + else + die "Error: the selected language is not currently available." + fi + + else + die "Error: no language code supplied." + fi +} + +update_lang() +{ + lang=$1 + + if [ "$lang" != "" ]; then + + if [ "$lang" = "en" ]; then + die "Error: the default language (en) cannot be updated." + fi + + if print_installed | grep -q $lang; then + env PERL5LIB="$KOHA_LIB_DIR:$TRANSLATE_DIR" KOHA_CONF="$KOHA_CONF_FILE"\ + $PERL_CMD $TRANSLATE_DIR/translate update $lang + else + die "Error: the selected language is not currently installed. Try --install." + fi + else + die "Error: no language code supplied." + fi +} + +remove_lang() +{ + lang=$1 + + if [ "$lang" != "" ]; then + + if [ "$lang" = "en" ]; then + die "Error: the default language (en) cannot be removed." + 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/intranet/htdocs/intranet-tmpl/prog/$lang + else + die "Error: the selected language is not already installed." + fi + else + die "Error: no language code supplied." + 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` +# Control variables +list_all="" + +# Read parameters +while true ; do + case "$1" in + -h|--help) + op="help" + break ;; + -i|--install) + op="install" + language="$2" + shift 2 ;; + -u|--update) + op="update" + language="$2" + shift 2 ;; + -r|--remove) + op="remove" + language="$2" + shift 2 ;; + -l|--list) + op="list" + shift ;; + -a|--available) + list_all=1 + shift ;; + *) + break ;; + esac +done + +# Process the requested actions +case $op in + "help") + usage ;; + "list") + list $list_all ;; + "install") + install_lang $language ;; + "update") + update_lang $language ;; + "remove") + remove_lang $language ;; + *) + usage + die "Error: wrong parameters..." ;; +esac + +exit 0 + --