v-change-sys-language 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #!/bin/bash
  2. # info: change sys language
  3. # options: LANGUAGE
  4. #
  5. # The function for changing system language.
  6. #----------------------------------------------------------#
  7. # Variable&Function #
  8. #----------------------------------------------------------#
  9. # Argument definition
  10. language=$1
  11. # Includes
  12. source $VESTA/func/main.sh
  13. source $VESTA/conf/vesta.conf
  14. is_language_valid() {
  15. if [ ! -e "$VESTA/web/inc/i18n/$language.php" ]; then
  16. echo "Error: language file $language doesn't exist"
  17. log_event "$E_NOTEXIST $ARGUMENTS"
  18. exit $E_NOTEXIST
  19. fi
  20. }
  21. #----------------------------------------------------------#
  22. # Verifications #
  23. #----------------------------------------------------------#
  24. check_args '1' "$#" 'LANGUAGE'
  25. is_format_valid 'language'
  26. is_language_valid $language
  27. #----------------------------------------------------------#
  28. # Action #
  29. #----------------------------------------------------------#
  30. # Change language
  31. if [ -z "$(grep LANGUAGE $VESTA/conf/vesta.conf)" ]; then
  32. echo "LANGUAGE='$language'" >> $VESTA/conf/vesta.conf
  33. else
  34. sed -i "s/LANGUAGE=.*/LANGUAGE='$language'/g" $VESTA/conf/vesta.conf
  35. fi
  36. #----------------------------------------------------------#
  37. # Vesta #
  38. #----------------------------------------------------------#
  39. # Logging
  40. log_event "$OK" "$ARGUMENTS"
  41. exit