59 lines
1.5 KiB
Python
59 lines
1.5 KiB
Python
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("\\", "/")
|