forked from finn/tinyboard
syncthing.sh: show folder label alongside folder ID in pending folders display and selection menu
This commit is contained in:
28
syncthing.sh
28
syncthing.sh
@@ -156,7 +156,16 @@ show_pending_folders() {
|
||||
import sys,json
|
||||
d=json.load(sys.stdin)
|
||||
for fid,info in d.items():
|
||||
label = info.get("label", "") or info.get("offeredBy", {})
|
||||
label = list(info.get("offeredBy",{}).values())[0].get("receiveEncrypted","") if info.get("offeredBy") else ""
|
||||
offered_by = list(info.get("offeredBy",{}).keys())
|
||||
folder_label = ""
|
||||
for dev_info in info.get("offeredBy",{}).values():
|
||||
if dev_info.get("folderLabel"):
|
||||
folder_label = dev_info["folderLabel"]
|
||||
break
|
||||
if folder_label:
|
||||
print(f" Folder Name: {folder_label}")
|
||||
print(f" Folder ID: {fid}")
|
||||
print(f" Offered by: {offered_by}")
|
||||
print("")
|
||||
@@ -169,18 +178,29 @@ for fid,info in d.items():
|
||||
fi
|
||||
if [[ "${ACCEPT,,}" != "y" ]]; then return; fi
|
||||
|
||||
local folder_ids
|
||||
local folder_ids folder_labels
|
||||
folder_ids=$(echo "$pending" | python3 -c 'import sys,json; [print(k) for k in json.load(sys.stdin)]')
|
||||
folder_labels=$(echo "$pending" | python3 -c '
|
||||
import sys,json
|
||||
d=json.load(sys.stdin)
|
||||
for fid,info in d.items():
|
||||
label=""
|
||||
for dev_info in info.get("offeredBy",{}).values():
|
||||
if dev_info.get("folderLabel"):
|
||||
label=dev_info["folderLabel"]
|
||||
break
|
||||
print(label if label else fid)
|
||||
')
|
||||
local FOLDER_ID
|
||||
if [ "$(echo "$folder_ids" | wc -l)" -eq 1 ]; then
|
||||
FOLDER_ID="$folder_ids"
|
||||
else
|
||||
echo "Available pending folders:"
|
||||
local i=1
|
||||
while IFS= read -r fid; do
|
||||
echo " $i) $fid"
|
||||
while IFS= read -r fid && IFS= read -r flabel <&3; do
|
||||
echo " $i) $flabel ($fid)"
|
||||
i=$((i+1))
|
||||
done <<< "$folder_ids"
|
||||
done <<< "$folder_ids" 3<<< "$folder_labels"
|
||||
read -rp "Choose folder number: " FOLDER_NUM
|
||||
FOLDER_ID=$(echo "$folder_ids" | sed -n "${FOLDER_NUM}p")
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user