import base64 import os import pickle import sys from tkinter import Button, Label, Toplevel from requests import get from requests.exceptions import ConnectionError from tcping import Ping def check_network(ip, port): try: req = get(f"{ip}").status_code return req in range(200, 300) except ConnectionError: return False # ping = Ping(ip, port, 20) # ping.ping(1) # return ping.result.rows[0].successed == 1 def get_os(): if sys.platform in ["linux", "windows", "win32"]: return sys.platform raise Exception("OS not supported") def alert(window, message, title="Munyal"): child = Toplevel(window) child.title(title) label = Label(child, text=message) button = Button(child, text="Aceptar", command=child.destroy) label.pack() button.pack() def flatten_dirs(content, path="", action=""): output = [] for item in content: if item["is_file"]: item["name"] = path_join(path, item["name"]) output.append(item) else: if item["content"] and action == "add": output.extend( flatten_dirs(item["content"], path_join(path, item["name"]), action=action)) else: item["name"] = path_join(path, item["name"]) output.append(item) return output def path_join(*items): return os.path.join(*items).replace("\\", "/")