Commit be4f4207 authored by Lior Spach's avatar Lior Spach

le-italc-config: Refs #1372 Unconfig functions added

Signed-off-by: Lior Spach's avatarLior Spach <ls12@inf.ufpr.br>
parent 382e455a
......@@ -71,7 +71,7 @@ if [ $? -eq 0 ]; then #yes
exit 4
fi
else
isMult=0
#isMult=0
#If it is MONOterminal it can be Client or Master configuration
#Ask: Master or Client machine/terminal?
zenity --question --title="Configurador do Italc" \
......@@ -97,10 +97,18 @@ zenity --question --title="Configurador do Italc" \
--ok-label="Confirma" --cancel-label="Cancelar" ##--cancel-label="Voltar"
[ "$?" = "1" ] && exit 0 #TODO: execute this script again
##---PROCESS RESULTS---------------------------------------------
##===================================================================================================================##
##---START_FUNCTIONS-------------------------------------------------------------------------------------------------##
##===================================================================================================================##
#GENERAL CONFIGURATIONS
#Script path to be created for monoterminal:
SCRIPT_MONO_PATH="/etc/lightdm/greeter-exec-scripts/ica-auto-starter.sh"
#Script path to be created for multiterminal:
SCRIPT_MULT_PATH="/etc/profile.d/ica-start-multiterminal.sh"
generate_script_monoterminal_client () {
local g_file="/etc/lightdm/greeter-exec-scripts/ica-auto-starter.sh"
local g_file="$SCRIPT_MONO_PATH"
echo "#!/bin/sh" > $g_file
echo "ica &" >> $g_file
......@@ -110,7 +118,7 @@ generate_script_monoterminal_client () {
generate_script_multiterminal () {
#Create a script in profile.d
local g_file="/etc/profile.d/ica-start-multiterminal.sh"
local g_file="$SCRIPT_MULT_PATH"
echo "#!/bin/sh" > $g_file
echo "#Privileged Users don't run ica" >> $g_file
......@@ -144,12 +152,47 @@ generate_script_multiterminal () {
chmod +x $g_file
}
unconfig_monoterminal () {
zenity --question --title="Desfazer Configurações" \
--text="Você tem certeza que deseja remover configurações\nda estação MONOTERMINAL?" \
--ok-label="Sim" --cancel-label="Não"
[ "$?" = "1" ] && exit 0
if [ ! -f "$SCRIPT_MONO_PATH" ]; then
zenity --warning --title="Aviso" --text="Não foi identificada nenhuma configuração monoterminal"
return 1
else
#Remove key and generated script
rm -f /etc/italc/public/teacher/key
rm -f "$SCRIPT_MONO_PATH"
return 0
fi
}
unconfig_multiterminal () {
zenity --question --title="Desfazer Configurações" \
--text="Você tem certeza que deseja remover configurações\nda estação MULTITERMINAL?" \
--ok-label="Sim" --cancel-label="Não"
[ "$?" = "1" ] && exit 0
if [ ! -f "$SCRIPT_MULT_PATH" ]; then
zenity --warning --title="Aviso" --text="Não foi identificada nenhuma configuração multiterminal"
return 1
else
#Remove key and generated script
rm -f "/etc/italc/public/teacher/key"
rm -f "$SCRIPT_MULT_PATH"
return 0
fi
#This function does not remove computers entries from italc.
}
config_client_monoterminal () {
#Steps:
## 1. Ask for keys
## 2. Import keys
zenity --question --title="Configurador do Italc" \
--text="Para configurar o cliente é necessário ter sido configurada a estação e adquirido o arquivo Chave-Italc.\n\nClique em Selecionar arquivo e selecione Chave-Italc." \
--text="Para configurar o cliente é necessário ter sido configurada a estação servidora e adquirido o arquivo Chave-Italc.\n\nClique em Selecionar arquivo e selecione Chave-Italc." \
--ok-label="Selecionar Arquivo" --cancel-label="Sair"
[ "$?" = "1" ] && exit 0
......@@ -157,16 +200,18 @@ config_client_monoterminal () {
local key_file="$(zenity --file-selection)"
local key_filename="$( echo "$key_file" | awk -F "/" '{print $NF}')"
if [ "$key_filename" != "Chave-Italc" ]; then
zenity --question --title="Configurador do Italc" --text="Arquivo inválido." --height=150 --width=250 --ok-label="Selecionar outro arquivo" --cancel-label="Sair"
zenity --question --title="Configurador do Italc" --text="Arquivo inválido." \
--height=150 --width=250 \
--ok-label="Selecionar outro arquivo" --cancel-label="Sair"
[ "$?" = "1" ] && exit 0
else
break;
continue
fi
break
done
imc -importpublickey "$key_file"
chmod 755 /etc/italc/public -R
generate_script_monoterminal_client #generate script to autorun ica
generate_script_monoterminal_client #generate ica autorun script
}
config_master_monoterminal () {
......@@ -258,6 +303,10 @@ showHelp () {
return 0
}
##===================================================================================================================##
##---END_FUNCTIONS---------------------------------------------------------------------------------------------------##
##===================================================================================================================##
#Call right configuration function
if [ "$isMult" = "0" ]; then
if [ "$isClient" = "1" ]; then
......@@ -274,6 +323,7 @@ elif [ "$isMult" = "1" ]; then
--title="Configurador do Italc" --text="Multiterminal configurado! Para que todas as configurações tomem efeito é necessário relogar todos os usuários alunos." \
--ok-label="Ajuda" --cancel-label="Concluir"
[ "$?" = "0" ] && showHelp || exit 0
fi
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment