Bob Mottram 7 лет назад
Родитель
Сommit
1e1134ffd3
1 измененных файлов: 11 добавлений и 18 удалений
  1. 11
    18
      src/freedombone-app-xmpp

+ 11
- 18
src/freedombone-app-xmpp Просмотреть файл

@@ -181,29 +181,22 @@ function xmpp_remove_onion_address_interactive {
181 181
 }
182 182
 
183 183
 function configure_interactive_xmpp {
184
+    W=(1 $"Add an ICANN to onion domain mapping"
185
+       2 $"Remove an ICANN to onion domain mapping")
186
+
184 187
     while true
185 188
     do
186
-        data=$(mktemp 2>/dev/null)
187
-        dialog --backtitle $"Freedombone Control Panel" \
188
-               --title $"XMPP" \
189
-               --radiolist $"Choose an operation:" 12 70 3 \
190
-               1 $"Add an ICANN to onion domain mapping" off \
191
-               2 $"Remove an ICANN to onion domain mapping" off \
192
-               3 $"Return to administrator control panel" on 2> "$data"
193
-        sel=$?
194
-        case $sel in
195
-            1) rm -f "$data"
196
-               return;;
197
-            255) rm -f "$data"
198
-                 return;;
199
-        esac
200
-        case $(cat "$data") in
189
+        # shellcheck disable=SC2068
190
+        selection=$(dialog --backtitle $"Freedombone Administrator Control Panel" --title $"XMPP" --menu $"Choose an operation, or ESC to exit:" 10 60 2 "${W[@]}" 3>&2 2>&1 1>&3)
191
+
192
+        if [ ! "$selection" ]; then
193
+            break
194
+        fi
195
+
196
+        case $selection in
201 197
             1) xmpp_add_onion_address_interactive;;
202 198
             2) xmpp_remove_onion_address_interactive;;
203
-            3) rm -f "$data"
204
-               break;;
205 199
         esac
206
-        rm -f "$data"
207 200
     done
208 201
 }
209 202