#!/bin/bash
# IPC - Konfiguration
#
. /var/emu/script/functions.sh
setrights
[ -z $IPCCONFIG ] && clear && echo -e "\e[1;31mVariablen Konfigurationsfehler!\e[0m" && exit 1
clear
echo -e "IPC $IPCVERSION: \e[1;37mKonfiguration\e[0m $(date +"%d.%m.%Y %H:%M")"
echo "==============================================================================="
echo ""
function check_webif_userpass () {
readipccfg
if [[ -z "$HTTPUSER" || -z "$HTTPPASS" ]]; then
echo -e "\e[5;1;41m\t ACHTUNG \e[0m"
echo -e "\e[1;31mHTTPUSER und HTTPPASS \e[2mmuss\e[0m \e[1;31meingestellt werden! (es muss in beiden etwas eingetragen sein!)\e[0m"
echo -e "\e[1;31mZum fortfahren unbedingt aendern!\e[0m"
echo ""
sleep 7
edit_ipccfg
else
if [ $HTTPUSER = "ipc" -a $HTTPPASS = "ipc" ]||[ $HTTPUSER = "cccam" -a $HTTPPASS = "cccam" ]; then
echo -e "\e[5;1;41m\t ACHTUNG \e[0m"
echo -e "\e[1;31mHTTPUSER und HTTPPASS stehen auf Standard \"$HTTPUSER/$HTTPPASS\""
echo -e "Zum fortfahren unbedingt aendern!\e[0m"
echo ""
sleep 7
edit_ipccfg
fi
fi
}
function edit_ipccfg () {
if [ -f $IPCCONFIG ]; then
readipccfg
[ ! -z "$HTTPUSER" ] && old_HTTPUSER=$HTTPUSER
echo "Lade IPC-Konfiguration zum editieren.."
sleep 2
$useEDITOR -R $IPCCONFIG
else
IPCCONFIGBACKUP="$(echo $IPCCONFIG|sed -e "s/$(basename $IPCCONFIG)//g").$(basename $IPCCONFIG).bak"
if [ ! -f "$IPCCONFIGBACKUP" ]; then
echo -e "\e[1;31mKeine IPC-Konfiguration und auch kein Backup vorhanden, bitte manuell unter $IPCCONFIG erstellen!\e[0m"
exit 1
else
echo -e "\e[1;31mKeine IPC-Konfiguration vorhanden, verwende Backup..\e[0m"
echo ""
cp -f $IPCCONFIGBACKUP $IPCCONFIG
echo "Lade IPC-Konfiguration zum editieren.."
sleep 2
$useEDITOR -R $IPCCONFIG
fi
fi
check_webif_userpass
}
function write_new_access () {
# webaccess
if [ ! -z "$old_HTTPUSER" ]; then
sqlite_delete_user "$old_HTTPUSER"
[ "$old_HTTPUSER" = "$HTTPUSER" ] && httpUSER=$HTTPUSER || httpUSER=$old_HTTPUSER
else
httpUSER=$HTTPUSER
fi
sqlite_write_userpass "$HTTPUSER" "$HTTPPASS"
# webmenueaccess
if [ -f "$WEBIF_MenueAccessFile" ]; then
while read line; do
[ -z "$line" ] && continue
[ "$(echo $line|cut -d ":" -f1)" = "$httpUSER" ] && continue
echo "$line" >> ${WEBIF_MenueAccessFile}_old
done < $WEBIF_MenueAccessFile
echo "$HTTPUSER:ALL" > $WEBIF_MenueAccessFile
[ -f "${WEBIF_MenueAccessFile}_old" ] && cat ${WEBIF_MenueAccessFile}_old >> $WEBIF_MenueAccessFile
rm -f ${WEBIF_MenueAccessFile}_old
else
echo "$HTTPUSER:ALL" > $WEBIF_MenueAccessFile
fi
chown www-data:www-data $WEBIF_MenueAccessFile >/dev/null 2>&1
}
function write_htaccess () {
#echo 'AuthName "Debian Secure"' >/var/www/ipc/.htaccess
#echo 'AuthType Basic' >>/var/www/ipc/.htaccess
#echo 'Require valid-user' >>/var/www/ipc/.htaccess
#echo 'AuthUserFile /var/emu/conf/.webaccess' >>/var/www/ipc/.htaccess
echo 'AddDefaultCharset ISO-8859-1' >>/var/www/ipc/.htaccess
echo '' >>/var/www/ipc/.htaccess
echo '<Files ~ "^.(htaccess|htpasswd)$">' >>/var/www/ipc/.htaccess
echo 'deny from all' >>/var/www/ipc/.htaccess
echo '</Files>' >>/var/www/ipc/.htaccess
echo '' >>/var/www/ipc/.htaccess
echo 'php_value upload_max_filesize 10M' >>/var/www/ipc/.htaccess
echo 'php_value post_max_size 10M' >>/var/www/ipc/.htaccess
chmod 600 /var/www/ipc/.htaccess
chown www-data:www-data /var/www/ipc/.htaccess
}
edit_ipccfg
echo "IPC-Konfiguration wird angepasst.."
echo ""
[[ -z "$HTTPUSER" || -z "$HTTPPASS" ]] && check_webif_userpass
write_new_access
if [ -e $CCWWW/.htaccessOff ]; then
mv -f $CCWWW/.htaccessOff $CCWWW/.htaccess
elif [ ! -e $CCWWW/.htaccess -a ! -e $CCWWW/.htaccessOff ]; then
write_htaccess
fi
echo -e "\e[0;32mWebseitenschutz\taktiviert\e[0m"
[ -e $CCWWW/index.html ] && rm -f $CCWWW/index.html
#Cron-Steuerung
if [ $CRON == "1" ]
then echo -e "\e[0;32mCRON-Steuerung\taktiviert\e[0m"
else echo -e "\e[0;31mCRON-Steuerung\tdeativiert\e[0m"; fi
#Changelog
if [ $CHANGELOG == "1" ]
then echo -e "\e[0;32mChangelog\taktiviert\e[0m"
else echo -e "\e[0;31mChangelog\tdeativiert\e[0m"; fi
#Crashmail
if [ $CRASHMAIL == "1" ]
then echo -e "\e[0;32mCrashmail\taktiviert\e[0m"
else echo -e "\e[0;31mCrashmail\tdeativiert\e[0m"; fi
#Backupmail
if [ $BACKUPMAIL == "1" ]
then echo -e "\e[0;32mBackupmail\taktiviert\e[0m"
else echo -e "\e[0;31mBackupmail\tdeativiert\e[0m"; fi
#WebIf Menue
if [ $WEBIF_MENUE == "old" ]; then
echo -e "\e[0;36mWebIf Menue\tAltes Aussehen\e[0m"
elif [ $WEBIF_MENUE == "new" ]; then
echo -e "\e[0;36mWebIf Menue\tNeues Aussehen\e[0m"
fi
#WebIf Control
if [ $WEBIF_CON == "hide" ]; then
echo -e "\e[0;36mWebIf Control\tversteckt\e[0m"
elif [ $WEBIF_CON == "stay" ]; then
echo -e "\e[0;36mWebIf Control\tsichtbar\e[0m"
elif [ $WEBIF_CON == "menue" ]; then
echo -e "\e[0;36mWebIf Control\tmenue\e[0m"
fi
#WebIf Logs
if [ $WEBIF_LOGS == "old" ]; then
echo -e "\e[0;36mWebIf Logs\tAltes Aussehen\e[0m"
elif [ $WEBIF_LOGS == "new" ]; then
echo -e "\e[0;36mWebIf Logs\tNeues Aussehen\e[0m"
fi
echo ""
echo "-------------------------------------------------------------------------------"
echo ""
exit 0