from tkinter import *
import socket
import json
import time
import threading

def recive():
    while True:
        reponse1 = client.recv(255)
        print(reponse1.decode("utf-8"))


def send(text):
    minute = time.localtime()[4]
    minute=str(minute)
    if len(minute)==1:
        minute = '0'+minute
    heure = ' le '+str(time.localtime()[2])+'/'+str(time.localtime()[1])+'/'+str(time.localtime()[0])+' à '+str(time.localtime()[3])+'h'+minute
    u=json.dumps({"nom" : nom,"heure":heure,"message":text})
    nomfichier=str(time.time())[:-4]
    fichier=open("uwu/"+nomfichier,"w")
    fichier.write(u)
    fichier.close()
    y=json.loads(u)
    reponse=y["nom"]+heure+" : "+y["message"]
    client.send(reponse.encode("utf-8"))


serveur = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serveur.bind(('', 50000))    # Écoute sur le port 50000
serveur.listen(5)
global client
client, infosClient = serveur.accept()
print("Client connecté. Adresse " + infosClient[0])

nom = input("entrez un nom")
fenetre = Tk()

txtVal = StringVar()
label = Label(fenetre, textvariable=txtVal).pack()
entree = Entry(fenetre, textvariable=txtVal, width=30)
entree.pack()

label = Label(fenetre, text="Serveur")
label.pack()

bouton=Button(fenetre, text="print",command=lambda: send(txtVal.get()))
bouton.pack()

#while reponse != "!stop":
    #if y['message']=='!stop':
        #reponse='!stop'

rec = threading.Thread(target=recive, args=())
rec.start()
fenetre.mainloop()
serveur.close()