File size: 2,043 Bytes
1f5f680
85e6889
3250ceb
6b8aca6
e242c8d
 
7539545
9dd92aa
 
e242c8d
9dd92aa
 
6ef4a2a
7dcb42d
 
 
 
74c600a
 
7582583
74c600a
7dcb42d
 
74c600a
7dcb42d
 
74c600a
9dd92aa
7dcb42d
9dd92aa
 
 
77ea5c9
f2c9245
7dcb42d
 
 
85e6889
3250ceb
1217648
 
 
 
3250ceb
9c755d7
 
 
 
 
 
 
 
3bca149
3250ceb
3bca149
3250ceb
7582583
336a01b
7539545
cb05df4
 
0f34a3e
8f8baa8
0f34a3e
8f8baa8
9dd92aa
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
import gradio as gr
import sulkuPypi
from funciones import mass
from data import usuarios
import encrypter
import time

#Funciones adicionales
def authenticate(username, password):
    
    for u, p in usuarios:
        if username == u and password == p:
            gr.State.usuario = username
            #No temás hacer más cosas en el periodo de autenticación.
            print("Primero que nada, el usuarrio es: ", gr.State.usuario)
            capsule = encrypter.encripta(gr.State.usuario)
            print("Y éste es el usuario encriptado: ", capsule)
            decoded_capsule = capsule.decode("utf-8")
            print("Capsula decoded: ", decoded_capsule)
            gr.State.decoded_capsule = decoded_capsule
            time.sleep(2)

            #Primero que nada, checa cuantos tokens: 
            tokens = sulkuPypi.getTokens(decoded_capsule)
            gr.State.tokens = tokens
            print(f"Tienes: {tokens} tokens. ")
            
            return True
        
    return False

#Función principal
def perform(input1, input2):

    tokens = gr.State.tokens
    print("Estando en perform, la cantidad de tokens es: ", tokens)
    time.sleep(3)

    #Después autoriza.
    #Si está autorizada puede ejecutar la tarea, ésta lógica si está a cargo aquí, por parte de la app y su desarrollador, no de Sulku.
    autorizacion = sulkuPypi.authorize(tokens, 'picswap')
    print("La autorización es: ", autorizacion)

    #Después ejecuta la masa.
    if autorizacion is True: 
    
        path = mass(input1,input2)

    else:
        print("No tienes suficientes tokens...")
        return "No tienes suficientes tokens" 


    print("Después de mass imprimo ésto.")

    #Y finalmente debita los tokens.
    tokens = sulkuPypi.debitTokens(gr.State.decoded_capsule, "picswap")
    print(f"Y ahora tienes: {tokens} tokens.")

    return path

#Así para imagenes
demo = gr.Interface(
fn=perform, inputs=[gr.Image(), gr.Image()], outputs=[gr.Image()]
)
#demo.launch()
demo.launch(auth=authenticate)