@@ -, +, @@ - Checks the instance exists. - Checks if email is already disabled. --- debian/docs/koha-email-disable.xml | 4 +- debian/scripts/koha-email-disable | 81 ++++++++++++++++++++++++++++++------ 2 files changed, 71 insertions(+), 14 deletions(-) --- a/debian/docs/koha-email-disable.xml +++ a/debian/docs/koha-email-disable.xml @@ -17,7 +17,7 @@ koha-email-disable - Turn off the email for a Koha instance. + Turn off the email for Koha instances. UNIX/Linux @@ -28,7 +28,7 @@ Description - Turn off the email for a Koha instance. + Turn off the email for Koha instances. See also --- a/debian/scripts/koha-email-disable +++ a/debian/scripts/koha-email-disable @@ -1,6 +1,6 @@ #!/bin/sh # -# koha-email-disable -- turn off the email for a Koha instance +# koha-email-disable - turn off the email for Koha instances # Copyright 2010 Catalyst IT, Ltd # # This program is free software: you can redistribute it and/or modify @@ -18,19 +18,76 @@ set -e -if [ "$#" = 0 ] -then - echo "Disables the email for a koha instance." 1>&2 - echo "Usage: $0 instancename..." 1>&2 +die() +{ + echo "$@" 1>&2 exit 1 -fi -libdir=/var/lib/koha +} + +warn() +{ + echo "$@" 1>&2 +} + +is_instance() +{ + local instancename=$1 + + if find /etc/koha/sites -mindepth 1 -maxdepth 1 \ + -type d -printf '%f\n'\ + | grep -q -x $instancename ; then + return 0 + else + return 1 + fi +} + +is_email_enabled() +{ + local instancename=$1 + + if [ -e /var/lib/koha/$instancename/email.enabled ]; then + return 0 + else + return 1 + fi +} + +disable_email() +{ + local instancename=$1 + local libdir="/var/lib/koha" + + rm -f $libdir/$instancename/email.enabled + + echo "Disabled email for instance $instancename." +} + +usage() +{ + local scriptname=$0 + cat <&2 - continue + if is_instance $name; then + if is_email_enabled $name; then + disable_email $name + else + warn "Email already disabled for instance $name." + fi + else + warn "Unknown instance $name." fi - rm -f $libdir/$name/email.enabled done + +exit 0 --