menu-ronin-ui.sh
1 #!/bin/bash 2 3 # shellcheck source=./Scripts/defaults.sh 4 . "$HOME"/RoninDojo/Scripts/defaults.sh 5 6 # shellcheck source=./Scripts/functions.sh 7 . "$HOME"/RoninDojo/Scripts/functions.sh 8 9 _load_user_conf 10 11 OPTIONS=(1 "Start" 12 2 "Stop" 13 3 "Restart" 14 4 "Status" 15 5 "Logs" 16 6 "Reset" 17 7 "Re-install" 18 8 "Go Back") 19 20 CHOICE=$(dialog --clear \ 21 --title "$TITLE" \ 22 --menu "$MENU" \ 23 "$HEIGHT" "$WIDTH" "$CHOICE_HEIGHT" \ 24 "${OPTIONS[@]}" \ 25 2>&1 >/dev/tty) 26 27 clear 28 case $CHOICE in 29 1) 30 if pm2 describe "RoninUI" | grep status | grep stopped 1>/dev/null; then 31 _print_message "Starting Ronin UI..." 32 _sleep 33 cd "${ronin_ui_path}" || exit 34 35 pm2 start "RoninUI" 36 else 37 _print_message "Ronin UI already started..." 38 _sleep 39 fi 40 41 _pause return 42 43 bash -c "${ronin_ui_menu}" 44 ;; 45 2) 46 if pm2 describe "RoninUI" &>/dev/null; then 47 _print_message "Stopping Ronin UI..." 48 _sleep 49 cd "${ronin_ui_path}" || exit 50 51 pm2 stop "RoninUI" 52 else 53 _print_message "Ronin UI already stopped..." 54 fi 55 56 _pause return 57 58 bash -c "${ronin_ui_menu}" 59 ;; 60 3) 61 _print_message "Restarting Ronin UI..." 62 _sleep 63 cd "${ronin_ui_path}" || exit 64 65 pm2 restart "RoninUI" 1>/dev/null 66 # restart service 67 68 _pause return 69 70 bash -c "${ronin_ui_menu}" 71 ;; 72 4) 73 _print_message "Showing Ronin UI Status..." 74 cd "${ronin_ui_path}" || exit 75 pm2 status 76 77 _pause return 78 bash -c "${ronin_ui_menu}" 79 ;; 80 5) 81 _print_message "Showing Ronin UI Logs..." 82 _print_message 'Press "q" key to exit at any time...' 83 84 cd "${ronin_ui_path}" || exit 85 86 _sleep 5 # Workaround until a proper FIX!!! 87 less --force logs/combined.log 88 89 bash -c "${ronin_ui_menu}" 90 ;; 91 6) 92 _print_message "Resetting Ronin UI..." 93 94 cd "${ronin_ui_path}" || exit 95 96 test -f ronin-ui.dat && rm ronin-ui.dat 97 98 _pause return 99 100 bash -c "${ronin_ui_menu}" 101 ;; 102 7) 103 _print_message "Re-installing Ronin UI..." 104 _ronin_ui_uninstall 105 _ronin_ui_install 106 107 pm2 status 108 109 _pause return 110 bash -c "${ronin_ui_menu}" 111 ;; 112 8) 113 ronin 114 ;; 115 esac