Bug 15839: Koha::Reviews - Add Koha::Review[s] classes
[koha.git] / debian / scripts / koha-disable
1 #!/bin/sh
2 #
3 # koha-disable - disable Koha instances.
4 # Copyright 2010  Catalyst IT, Ltd
5
6 # This program is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
10
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
15
16 # You should have received a copy of the GNU General Public License
17 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
18
19
20 set -e
21
22 # include helper functions
23 if [ -f "/usr/share/koha/bin/koha-functions.sh" ]; then
24     . "/usr/share/koha/bin/koha-functions.sh"
25 else
26     echo "Error: /usr/share/koha/bin/koha-functions.sh not present." 1>&2
27     exit 1
28 fi
29
30 disable_instance()
31 {
32     local instancename=$1
33     local instancefile=$(get_apache_config_for "$instancename")
34
35     if [ "$instancefile" = "" ]; then
36         echo 2
37     elif is_enabled $instancename; then
38         sed -i 's:^\s*#\(\s*Include /etc/koha/apache-shared-disable.conf\)$:\1:' "$instancefile"
39         echo 0
40     else
41         echo 1
42     fi
43 }
44
45 usage()
46 {
47     local scriptname=$0
48     cat <<EOF
49 Disables Koha instances.
50
51 Usage: $scriptname instancename1 instancename2...
52
53 EOF
54 }
55
56 # Parse command line.
57 [ $# -ge 1 ] || ( usage ; die "Missing instance name..." )
58
59 restart_apache="no"
60 for name in "$@"
61 do
62     if is_instance $name ; then
63         RET=$(disable_instance $name)
64         if [ "$RET" = 0 ]; then
65             restart_apache="yes"
66             if is_sip_enabled $name; then
67                 koha-stop-sip $name
68             fi
69             if is_zebra_running $name; then
70                 koha-stop-zebra $name
71             fi
72             if is_indexer_running $name; then
73                 koha-indexer --stop $name
74             fi
75         elif [ "$RET" = 2 ]; then
76             warn "Error: Apache configuration file not present for instance $name."
77         else
78             warn "Warning: instance $name already disabled."
79         fi
80     else
81         warn "Unknown instance $name."
82     fi
83 done
84
85 if [ "$restart_apache" = "yes" ]; then
86     /etc/init.d/apache2 restart
87 fi
88
89 exit 0