Browse Source

Restoring from remote server

Bob Mottram 9 years ago
parent
commit
1b3b00949b
1 changed files with 31 additions and 2 deletions
  1. 31
    2
      src/freedombone-controlpanel

+ 31
- 2
src/freedombone-controlpanel View File

31
 COMPLETION_FILE=$HOME/freedombone-completed.txt
31
 COMPLETION_FILE=$HOME/freedombone-completed.txt
32
 SELECTED_USERNAME=
32
 SELECTED_USERNAME=
33
 SIP_CONFIG_FILE=/etc/sipwitch.conf
33
 SIP_CONFIG_FILE=/etc/sipwitch.conf
34
+ADMIN_USER=
34
 
35
 
35
 function any_key {
36
 function any_key {
36
     echo ' '
37
     echo ' '
143
                --msgbox "No Administrator user found. Check $COMPLETION_FILE" 6 40
144
                --msgbox "No Administrator user found. Check $COMPLETION_FILE" 6 40
144
         return
145
         return
145
     fi
146
     fi
146
-    ADMIN_USER=$(cat $COMPLETION_FILE | grep "Admin user" | awk -F ':' '{print $2}')
147
     if [ ${#ADMIN} -lt 2 ]; then
147
     if [ ${#ADMIN} -lt 2 ]; then
148
         dialog --title "Administrator user" \
148
         dialog --title "Administrator user" \
149
                --msgbox "Username not found" 6 40
149
                --msgbox "Username not found" 6 40
438
 }
438
 }
439
 
439
 
440
 function restore_data_remote {
440
 function restore_data_remote {
441
-    any_key
441
+    if [ ! $ADMIN_USER ]; then
442
+        dialog --title "Restore data from remote server" \
443
+               --msgbox "Unknown admin user" 6 40
444
+        return
445
+    fi
446
+    data=$(tempfile 2>/dev/null)
447
+    trap "rm -f $data" 0 1 2 5 15
448
+    dialog --title "Restore from remote server" \
449
+           --backtitle "Freedombone Control Panel" \
450
+           --inputbox "Enter the domain name of the server from which you wish to restore" 8 60 2>$data
451
+    sel=$?
452
+    case $sel in
453
+        0)
454
+            friend_server_domain_name=$(<$data)
455
+
456
+            if [ ${#friend_server_domain_name} -lt 2 ]; then
457
+                return
458
+            fi
459
+
460
+            if [[ $friend_server_domain_name != *"."* ]]; then
461
+                dialog --title "Remote server domain name" \
462
+                       --msgbox "Invalid domain name" 6 40
463
+                return
464
+            fi
465
+
466
+            restorefromfriend $friend_server_domain_name
467
+            any_key
468
+            ;;
469
+    esac        
442
 }
470
 }
443
 
471
 
444
 function logging_on_off {
472
 function logging_on_off {
648
     exit 1
676
     exit 1
649
 fi
677
 fi
650
 
678
 
679
+ADMIN_USER=$(cat $COMPLETION_FILE | grep "Admin user" | awk -F ':' '{print $2}')
651
 menu_top_level
680
 menu_top_level
652
 clear
681
 clear
653
 cat /etc/motd
682
 cat /etc/motd