summaryrefslogtreecommitdiffstats
path: root/satellit_installer/includes/90-patch_slxadmin.inc
blob: c55e3670d1377c4f1dcc956a43bd04bca30b9483 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
patch_slxadmin () {
	# Install config
	cp -p "${BASEDIR}/static_files/slxadmin-config.php" "$WWWDIR/slx-admin/config.php" || perror "slxadmin config.php not found"
	chmod 640 "$WWWDIR/slx-admin/config.php"
	chown root:www-data "$WWWDIR/slx-admin/config.php"

	# appending a variable with satellite server build date/time to slx-admin config:
	echo "define('CONFIG_FOOTER', 'Build time: $(date "+%Y-%m-%d %H:%m:%S"), $VERSION');" >> "$WWWDIR/slx-admin/config.php"

	# Create redirect for /
	cat > "$WWWDIR/index.php" <<-HIERDOCK
		<?php
		Header('Location: /slx-admin/?do=Main');
		Header('HTTP/1.1 301 Moved permanently');
	HIERDOCK

	# Create modules directory and link modules from modules-available according to slxadmin module list (SLXADMIN_MODULES):
	mkdir -p "$WWWDIR/slx-admin/modules"
	cd "$WWWDIR/slx-admin/modules" || perror "Cannot cd to slxadmin/modules"
	for MOD in ${SLXADMIN_MODULES}; do
		NAME=${MOD%%-*}
		ln -s "../modules-available/$MOD" "$NAME" || pwarning "Could not activate module '$MOD' (alias '$NAME')"
	done
	cd - 1>/dev/null
	# Add system cronjob to execute slx-admin cronjob
	cp "$BASEDIR/static_files/slxadmin-crontab" "/etc/cron.d/slx-admin" || perror "could not install slxadmin crontab"
	cp "$BASEDIR/static_files/slxadmin-cronscript" "/opt/openslx/slxadmin-cronscript" || perror "could not install slxadmin cronscript"
}