mirror of
https://github.com/serghey-rodin/vesta.git
synced 2024-12-03 19:00:24 -08:00
118 lines
2.8 KiB
Bash
Executable File
118 lines
2.8 KiB
Bash
Executable File
#!/bin/bash
|
|
# info: list user favourites
|
|
# options: USER [FORMAT]
|
|
#
|
|
# The function for getting the list of favourite user objects
|
|
|
|
|
|
#----------------------------------------------------------#
|
|
# Variable&Function #
|
|
#----------------------------------------------------------#
|
|
|
|
# Argument definition
|
|
user=$1
|
|
format=${2-shell}
|
|
|
|
# Includes
|
|
source $VESTA/func/main.sh
|
|
|
|
# JSON list function
|
|
json_list() {
|
|
echo '{'
|
|
echo ' "Favourites": {
|
|
"USER": "'$USER'",
|
|
"WEB": "'$WEB'",
|
|
"DNS": "'$DN'",
|
|
"DNS_REC": "'$DNS_REC'",
|
|
"MAIL": "'$MAIL'",
|
|
"MAIL_ACC": "'$MAIL_ACC'",
|
|
"DB": "'$DB'",
|
|
"CRON": "'$CRON'",
|
|
"BACKUP": "'$BACKUP'",
|
|
"IP": "'$IP'",
|
|
"PACKAGE": "'$PACKAGE'",
|
|
"FIREWALL": "'$FIREWALL'"
|
|
}'
|
|
echo '}'
|
|
}
|
|
|
|
# SHELL list function
|
|
shell_list() {
|
|
echo "USER: $USER"
|
|
echo "WEB: $WEB"
|
|
echo "DNS: $DNS"
|
|
echo "DNS RECORD: $DNS_REC"
|
|
echo "MAIL: $MAIL"
|
|
echo "MAIL USER: $MAIL_ACC"
|
|
echo "DATABASE: $DB"
|
|
echo "CRON: $CRON"
|
|
echo "BACKUP: $BACKUP"
|
|
echo "IP: $IP"
|
|
echo "PACKAGE: $PACKAGE"
|
|
echo "FIREWALL: $FIREWALL"
|
|
}
|
|
|
|
# PLAIN list function
|
|
plain_list() {
|
|
echo -ne "$USER\t$WEB\t$DNS\t$DNS_REC\t$MAIL\t$MAIL_ACC\t$DB\t$CRON\t"
|
|
echo -e "$BACKUP\t$IP\t$PACKAGE\t$FIREWALL"
|
|
}
|
|
|
|
# CSV list function
|
|
csv_list() {
|
|
echo -n "USER,WEB,DNS,DNS_REC,MAIL,MAIL_ACC,DB,CRON,BACKUP,IP,"
|
|
echo "PACKAGE,FIREWALL"
|
|
echo -n "\"$USER\",\"$WEB\",\"$DNS\",\"$DNS_REC\",\"$MAIL\","
|
|
echo -n "\"$MAIL_ACC\",\"$DB\",\"$CRON\",\"$BACKUP\",\"$IP\","
|
|
echo "\"$PACKAGE\",\"$FIREWALL\""
|
|
}
|
|
|
|
|
|
#----------------------------------------------------------#
|
|
# Verifications #
|
|
#----------------------------------------------------------#
|
|
|
|
# Checking args
|
|
check_args '1' "$#" 'USER [FORMAT]'
|
|
is_format_valid 'user'
|
|
is_object_valid 'user' 'USER' "$user"
|
|
|
|
|
|
#----------------------------------------------------------#
|
|
# Action #
|
|
#----------------------------------------------------------#
|
|
|
|
# Flushing vars
|
|
USER=''
|
|
WEB=''
|
|
DNS=''
|
|
DNS_REC=''
|
|
MAIL=''
|
|
MAIL_ACC=''
|
|
DB=''
|
|
CRON=''
|
|
BACKUP=''
|
|
IP=''
|
|
PACKAGE=''
|
|
FIREWALL=''
|
|
|
|
# Parsing user favourites
|
|
if [ -e "$VESTA/data/users/$user/favourites.conf" ]; then
|
|
source $VESTA/data/users/$user/favourites.conf
|
|
fi
|
|
|
|
# Listing data
|
|
case $format in
|
|
json) json_list ;;
|
|
plain) plain_list ;;
|
|
csv) csv_list ;;
|
|
shell) shell_list ;;
|
|
esac
|
|
|
|
|
|
#----------------------------------------------------------#
|
|
# Vesta #
|
|
#----------------------------------------------------------#
|
|
|
|
exit
|