Commit cfa992de authored by PENGUEN Julien's avatar PENGUEN Julien
Browse files

ajout fonction function_check_select_option version linux

parent 166c2d46
......@@ -426,7 +426,175 @@ else
echo ${val_arg}
fi
}
function function_check_select_option()
{
#------------------------------------#
#check options presents
#to manage '--select' and '--no_select'
#options
tab_arg_keys=$1
tab_arg_values=$2
tab_arg_weight=$3
#------------------------------------#
tempo_arg_weight=( ${tab_arg_weight// / } )
tempo_arg_keys=( ${tab_arg_keys// / } )
taille=${#tempo_arg_weight[@]}
case $taille in
"0")
#---------------------#
#case 0 input argument
#---------------------#
tab_arg_keys[0]="--no_select"
tab_arg_values[0]="$ALADIN_VERSION"
tab_arg_weight[0]=0
arg_keys=( ${tab_arg_keys[@]// / } )
arg_values=( ${tab_arg_values[@]// / } )
arg_weight=( ${tab_arg_weight[@]// / } )
;;
"1")
#---------------------#
#case 1 input argument
#---------------------#
if [ "${tempo_arg_weight[0]}" -eq 0 ]; then
# case option with weight=0 ('--select')
arg_keys=( ${tab_arg_keys// / } )
arg_values=( ${tab_arg_values// / } )
arg_weight=( ${tab_arg_weight// / } )
elif [ "${tempo_arg_weight[0]}" -eq 1 ]; then
#case option with weight=1
if [[ "${tempo_arg_keys[0]}" == '--force-all' || "${tempo_arg_keys[0]}" == '--force' ]]; then
#case '--force_all', '--force'
tab2_arg_keys[0]="--no_select"
tab2_arg_values[0]="$ALADIN_VERSION"
tab2_arg_weight[0]=0
tab2_arg_keys[1]=${tab_arg_keys}
tab2_arg_values[1]=${tab_arg_values}
tab2_arg_weight[1]=${tab_arg_weight}
arg_keys=( ${tab2_arg_keys[@]// / } )
arg_values=( ${tab2_arg_values[@]// / } )
arg_weight=( ${tab2_arg_weight[@]// / } )
else
#case '-i','--infos','-u','--update','-h','-v','--version'
arg_keys=( ${tab_arg_keys// / } )
arg_values=( ${tab_arg_values// / } )
arg_weight=( ${tab_arg_weight// / } )
fi
elif [ "${tempo_arg_weight[0]}" -eq 2 ]; then
#case '--survey', '--area' ,'--angular'
#'--resolution_line', '--resolution_col',
#'--nb_tile_line','--nb_tile_col'
tab2_arg_keys[0]="--no_select"
tab2_arg_values[0]="$ALADIN_VERSION"
tab2_arg_weight[0]=0
tab2_arg_keys[1]=${tab_arg_keys}
tab2_arg_values[1]=${tab_arg_values}
tab2_arg_weight[1]=${tab_arg_weight}
arg_keys=( ${tab2_arg_keys[@]// / } )
arg_values=( ${tab2_arg_values[@]// / } )
arg_weight=( ${tab2_arg_weight[@]// / } )
else
echo '=> No case possible for the moment'
fi
;;
*)
#-----------------------------#
#case 2 or more input arguments
#-----------------------------#
for p in ${!tempo_arg_keys[*]}
do
if [ ${tempo_arg_weight[$p]} -eq 0 ]; then
tempo_weight_0="TRUE"
elif [ ${tempo_arg_weight[$p]} -eq 1 ]; then
tempo_weight_1="TRUE"
indice_tempo_weight_1=$p
elif [ ${tempo_arg_weight[$p]} -eq 2 ]; then
tempo_weight_2="TRUE"
fi
done
if [[ "$tempo_weight_0" == 'TRUE' && "$tempo_weight_2" == 'FALSE' ]]; then
#case '--select'
arg_keys=( ${tab_arg_keys// / } )
arg_values=( ${tab_arg_values// / } )
arg_weight=( ${tab_arg_weight// / } )
fi
if [ "$tempo_weight_1" == 'TRUE' ]; then
if [ "${tempo_arg_keys[$indice_tempo_weight_1]}" == '--force-all' ]; then
#case '--force_all'
tab2_arg_keys[0]="--no_select"
tab2_arg_values[0]="$ALADIN_VERSION"
tab2_arg_weight[0]=0
tab2_arg_keys[1]=${tab_arg_keys}
tab2_arg_values[1]=${tab_arg_values}
tab2_arg_weight[1]=${tab_arg_weight}
arg_keys=( ${tab2_arg_keys[@]// / } )
arg_values=( ${tab2_arg_values[@]// / } )
arg_weight=( ${tab2_arg_weight[@]// / } )
else
#case '-i','--infos','-u','--update','-h','-v','--version'
arg_keys=( ${tab_arg_keys// / } )
arg_values=( ${tab_arg_values// / } )
arg_weight=( ${tab_arg_weight// / } )
fi
fi
if [ "$tempo_weight_2" == 'TRUE' ]; then
#case '--survey', '--area' ,'--angular'
#'--resolution_line', '--resolution_col',
#'--nb_tile_line','--nb_tile_col'
tab2_arg_keys[0]="--no_select"
tab2_arg_values[0]="$ALADIN_VERSION"
tab2_arg_weight[0]=0
tab2_arg_keys[1]=${tab_arg_keys}
tab2_arg_values[1]=${tab_arg_values}
tab2_arg_weight[1]=${tab_arg_weight}
arg_keys=( ${tab2_arg_keys[@]// / } )
arg_values=( ${tab2_arg_values[@]// / } )
arg_weight=( ${tab2_arg_weight[@]// / } )
fi
;;
esac
echo "${arg_keys[@]},${arg_values[@]},${arg_weight[@]}"
}
......@@ -607,165 +775,19 @@ if [ $val_error == "TRUE" ]; then
exit 0
fi
#------------------------------------#
#check options presents
#to manage '--select' and '--no_select'
#options
tempo_arg_weight=( ${tab_arg_weight// / } )
tempo_arg_keys=( ${tab_arg_keys// / } )
taille=${#tempo_arg_weight[@]}
case $taille in
"0")
#---------------------#
#case 0 input argument
#---------------------#
tab_arg_keys[0]="--no_select"
tab_arg_values[0]="$ALADIN_VERSION"
tab_arg_weight[0]=0
arg_keys=( ${tab_arg_keys[@]// / } )
arg_values=( ${tab_arg_values[@]// / } )
arg_weight=( ${tab_arg_weight[@]// / } )
;;
"1")
#---------------------#
#case 1 input argument
#---------------------#
if [ "${tempo_arg_weight[0]}" -eq 0 ]; then
# case option with weight=0 ('--select')
arg_keys=( ${tab_arg_keys// / } )
arg_values=( ${tab_arg_values// / } )
arg_weight=( ${tab_arg_weight// / } )
elif [ "${tempo_arg_weight[0]}" -eq 1 ]; then
#case option with weight=1
if [[ "${tempo_arg_keys[0]}" == '--force-all' || "${tempo_arg_keys[0]}" == '--force' ]]; then
#case '--force_all', '--force'
tab2_arg_keys[0]="--no_select"
tab2_arg_values[0]="$ALADIN_VERSION"
tab2_arg_weight[0]=0
tab2_arg_keys[1]=${tab_arg_keys}
tab2_arg_values[1]=${tab_arg_values}
tab2_arg_weight[1]=${tab_arg_weight}
arg_keys=( ${tab2_arg_keys[@]// / } )
arg_values=( ${tab2_arg_values[@]// / } )
arg_weight=( ${tab2_arg_weight[@]// / } )
else
#case '-i','--infos','-u','--update','-h','-v','--version'
arg_keys=( ${tab_arg_keys// / } )
arg_values=( ${tab_arg_values// / } )
arg_weight=( ${tab_arg_weight// / } )
fi
elif [ "${tempo_arg_weight[0]}" -eq 2 ]; then
#case '--survey', '--area' ,'--angular'
#'--resolution_line', '--resolution_col',
#'--nb_tile_line','--nb_tile_col'
tab2_arg_keys[0]="--no_select"
tab2_arg_values[0]="$ALADIN_VERSION"
tab2_arg_weight[0]=0
tab2_arg_keys[1]=${tab_arg_keys}
tab2_arg_values[1]=${tab_arg_values}
tab2_arg_weight[1]=${tab_arg_weight}
arg_keys=( ${tab2_arg_keys[@]// / } )
arg_values=( ${tab2_arg_values[@]// / } )
arg_weight=( ${tab2_arg_weight[@]// / } )
#----------------------------------------------------#
# check to manage '--select' and '--no_select options
# call function_check_select_option
RESULT_CHECK_SELECT=`function_check_select_option "${tab_arg_keys[*]}" "${tab_arg_values[*]}" "${tab_arg_weight[*]}"`
else
echo '=> No case possible for the moment'
fi
;;
*)
#-----------------------------#
#case 2 or more input arguments
#-----------------------------#
for p in ${!tempo_arg_keys[*]}
do
echo "${tempo_arg_keys[$p]}"
if [ ${tempo_arg_weight[$p]} -eq 0 ]; then
tempo_weight_0="TRUE"
elif [ ${tempo_arg_weight[$p]} -eq 1 ]; then
tempo_weight_1="TRUE"
indice_tempo_weight_1=$p
elif [ ${tempo_arg_weight[$p]} -eq 2 ]; then
tempo_weight_2="TRUE"
fi
done
if [[ "$tempo_weight_0" == 'TRUE' && "$tempo_weight_2" == 'FALSE' ]]; then
#case '--select'
arg_keys=( ${tab_arg_keys// / } )
arg_values=( ${tab_arg_values// / } )
arg_weight=( ${tab_arg_weight// / } )
fi
if [ "$tempo_weight_1" == 'TRUE' ]; then
if [ "${tempo_arg_keys[$indice_tempo_weight_1]}" == '--force-all' ]; then
#case '--force_all'
tab2_arg_keys[0]="--no_select"
tab2_arg_values[0]="$ALADIN_VERSION"
tab2_arg_weight[0]=0
tab2_arg_keys[1]=${tab_arg_keys}
tab2_arg_values[1]=${tab_arg_values}
tab2_arg_weight[1]=${tab_arg_weight}
arg_keys=( ${tab2_arg_keys[@]// / } )
arg_values=( ${tab2_arg_values[@]// / } )
arg_weight=( ${tab2_arg_weight[@]// / } )
else
#case '-i','--infos','-u','--update','-h','-v','--version'
arg_keys=( ${tab_arg_keys// / } )
arg_values=( ${tab_arg_values// / } )
arg_weight=( ${tab_arg_weight// / } )
fi
fi
if [ "$tempo_weight_2" == 'TRUE' ]; then
#case '--survey', '--area' ,'--angular'
#'--resolution_line', '--resolution_col',
#'--nb_tile_line','--nb_tile_col'
tab2_arg_keys[0]="--no_select"
tab2_arg_values[0]="$ALADIN_VERSION"
tab2_arg_weight[0]=0
tab2_arg_keys[1]=${tab_arg_keys}
tab2_arg_values[1]=${tab_arg_values}
tab2_arg_weight[1]=${tab_arg_weight}
arg_keys=( ${tab2_arg_keys[@]// / } )
arg_values=( ${tab2_arg_values[@]// / } )
arg_weight=( ${tab2_arg_weight[@]// / } )
fi
;;
esac
array_arg_keys=`echo $RESULT_CHECK_SELECT | cut --delimiter=, -f 1`
array_arg_values=`echo $RESULT_CHECK_SELECT | cut --delimiter=, -f 2`
array_arg_weight=`echo $RESULT_CHECK_SELECT | cut --delimiter=, -f 3`
arg_keys=( ${array_arg_keys// / } )
arg_values=( ${array_arg_values// / } )
arg_weight=( ${array_arg_weight// / } )
#--------------------------#
# sort the arrays arguments
......
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