Esempio n. 1
0
def login():
    setLog()

    f = request.form
    if request.method == "POST" and f['submit'] == 'Enter':
        if len(f['password']) < 3 or len(f['username']) < 3:  # Check if password is too short
            error = "Password to much short"
            return render_template("login.html", error=error)

        q = 'SELECT * FROM user WHERE username = "******" AND password = "******"' \
            .format(f['username'], f['password'])
        res = db.query(q)
        if res and len(res[0]) > 0:
            session['logged_in'] = True
            session['user_name'] = res[0]['name']
            session['user_id'] = res[0]['id']
            session['userEdit'] = res[0]['id']
            session['privilege'] = res[0]['privilege']
            session['timestamp'] = now()
            session['sessionTimeout'] = res[0]['session']
            return render_template("hello.html", error='')
        else:
            msg = 'IOValid password or username. Please retry!'
            msg_type = 'warning'
            return render_template("login.html", msg=msg, msg_type=msg_type)
            session['logged_in'] = None
            session.clear()
    else:
        msg = 'Please enter Username and Password!'
        msg_type = 'info'
        return render_template("login.html", msg=msg, msg_type=msg_type)
Esempio n. 2
0
def get_battle_state(cityname):
	def full_units(units):
		' Return units, but with all possible unit types '
		return dict([ (kind, units.get(kind, 0)) for kind in gamedef.units.keys() ])
	
	log = gamemap.battle_logs.get(cityname, {})
	now = date.now()
	log = [ (float(k[len('battle-'):]), v) for k,v in log.items() if k.startswith('battle-') ]
	log.sort(reverse=True)
	entries = dict(attack={}, defense={})
	if log:
		entry_time, entry = log[0]
	else:
		entry_time = 0
	if (entry_time + gamedef.config.fight_round*1.2) > now:
		defense, attack = entry
		defenders = defense[1]
		attackers = attack[1]
		entries['defense'] = defense[0]
		entries['attack'] = attack[0]
	else:
		city = game.City.Get(cityname)
		defenders = city.garnison.copy()
		for k,v in city.friends_garnison.items(): defenders[k] = defenders.get(k,0) + v
		attackers = city.enemy_garnison
	return json.dumps((entries, full_units(attackers), full_units(defenders)))
Esempio n. 3
0
def envio():
    prod = input("Ingresar código del producto: ")
    producto = findByCodigo(prod)
    if producto == None:
        return "El producto no existe."
    else:
        cantidad = int(input("¿Cuántos va a llevar? "))
        if producto["stock"] < cantidad:
            return "Error, no hay tantos."
        else:
            precio_tot = cantidad * producto["precioUnitario"]
            print("El precio total es:", precio_tot)
            producto["stock"] -= cantidad
            producto["vendidos"] += cantidad
            result = updateProducto(producto)
            if (result["status"]):
                continuar = input("¿Va a llevarlo online? si/no")
                if continuar == "n" or continuar == "no" or continuar == "No":
                    print("Ok.")
                elif continuar == "s" or continuar == "si" or continuar == "Si":

                    print("Por favor, verífiquenos su información.")
                    direccion = input("Domicilio: ")
                    telefono = input("Teléfono: ")
                    nombre = input("Nombre: ")
                    envio = addEnvio({
                        "producto": {"codigo": producto["codigo"]},
                        "nombre": nombre,
                        "telefono": telefono,
                        "direccion": direccion,
                        "fecha": now()
                    })
                    return envio["msj"]
            else:
                return result["msj"]
Esempio n. 4
0
def login():
    setLog()

    f = request.form
    if request.method == "POST" and f['submit'] == 'Enter':
        if len(f['password']) < 3 or len(
                f['username']) < 3:  # Check if password is too short
            error = "Password to much short"
            return render_template("login.html", error=error)

        q = 'SELECT * FROM user WHERE username = "******" AND password = "******"' \
            .format(f['username'], f['password'])
        res = db.query(q)
        if res and len(res[0]) > 0:
            session['logged_in'] = True
            session['user_name'] = res[0]['name']
            session['user_id'] = res[0]['id']
            session['userEdit'] = res[0]['id']
            session['privilege'] = res[0]['privilege']
            session['timestamp'] = now()
            session['sessionTimeout'] = res[0]['session']
            return render_template("hello.html", error='')
        else:
            msg = 'IOValid password or username. Please retry!'
            msg_type = 'warning'
            return render_template("login.html", msg=msg, msg_type=msg_type)
            session['logged_in'] = None
            session.clear()
    else:
        msg = 'Please enter Username and Password!'
        msg_type = 'info'
        return render_template("login.html", msg=msg, msg_type=msg_type)
Esempio n. 5
0
def error(data):
    with open('%s/%s.%s.log' % (LOG_DIR, 'error', today()), 'a') as f:
        f.write(now() + " <<< dump\n");
        pprint(data, f)
        f.write(">>>\n");

# debug({'test': 1})
Esempio n. 6
0
def update_record(rid, distance):
    day = date.date()
    now = date.now()
    condition = cond({'rid': rid, 'date': day})
    table = 'record'
    return update_or_insert(table, ['rid', 'date', 'time', 'distance'],
                            [rid, day, now, distance], condition)
Esempio n. 7
0
	def get_view_attrs(self):
		what = self.what or ('city' if self.city else ('profile' if self.profile else 'map'))
		cities = gamemap.get_cities_of_user(self.session.userid)
		travelling_armies = gamemap.get_travelling_armies(self.session.userid)
		return dict(city=self.city,
					overlay_style='display:block' if self.dialog else '',
					cities=cities, armies=travelling_armies, time=date.now(),
					what=what)
Esempio n. 8
0
 def _update(self):
     now = date.now()
     if not self.updated:
         self.updated = now
     self.events.sort()
     self.process_queues(now)
     self.process_events(now)
     self.put()
Esempio n. 9
0
def checkPermission(permission=255, error=''):  # Check if user is logged and the privileve
    """
    Privilege session:
    xxxx
    8421
    1: Log - 2: View - 4: Setup  -  128: Admin
    """
    if 'logged_in' in session and session['logged_in'] == True and (now() - session['timestamp']).total_seconds() < session['sessionTimeout']:  # Test if logged
        session['timestamp'] = now()
    else:
        return 'login'

    priv = int(session['privilege'])
    if priv >= permission:  # check permission for LOG
        return 0
    else:
        return 'no_permission'
Esempio n. 10
0
 def get_queue_ready(self, qname):
     now = date.now()
     if qname not in self.queues:
         self.queues[qname] = now
     last = self.queues[qname]
     if last < now:
         return now
     else:
         return last
Esempio n. 11
0
def checkPermission(permission=255,
                    error=''):  # Check if user is logged and the privileve
    """
    Privilege session:
    xxxx
    8421
    1: Log - 2: View - 4: Setup  -  128: Admin
    """
    if 'logged_in' in session and session['logged_in'] == True and (
            now() - session['timestamp']
    ).total_seconds() < session['sessionTimeout']:  # Test if logged
        session['timestamp'] = now()
    else:
        return 'login'

    priv = int(session['privilege'])
    if priv >= permission:  # check permission for LOG
        return 0
    else:
        return 'no_permission'
Esempio n. 12
0
def do_not_disturb():
    morning_begin = date.toTime('05:00:00')
    morning_end = date.toTime(
        '10:00:00') if date.is_weekend() else date.toTime('08:00:00')

    evening_begin = date.toTime('19:00:00')
    evening_end = date.toTime('22:00:00')

    now = date.toTime(date.now())

    return not ((now > morning_begin and now < morning_end) or
                (now > evening_begin and now < evening_end))
Esempio n. 13
0
def setProg(start='y'):  # To update Program
    try:
        timebegin = now()
        d.setProg()
        # print "setProg ==>> ", now() - timebegin
    except:
        print('Error Domocontrol.py setProg')
        traceback.print_exc()
    if start == 'y':
        threading.Timer(1, setProg).start()
    else:
        threading.Timer(1, setProg).cancel()
Esempio n. 14
0
def setProg(start='y'):  # To update Program
    try:
        timebegin = now()
        d.setProg()
        # print "setProg ==>> ", now() - timebegin
    except:
        print('Error Domocontrol.py setProg')
        traceback.print_exc()
    if start == 'y':
        threading.Timer(1, setProg).start()
    else:
        threading.Timer(1, setProg).cancel()
Esempio n. 15
0
def getIO(start='y'):  # To update board IO values

    try:
        timebegin = now()
        # print "\n------------------------"
        d.getIO()
        # print "getIO ==>> ", now() - timebegin
    except:
        print('Error Domocontrol.py getIn')
        traceback.print_exc()
    if start == 'y':
        threading.Timer(1, getIO).start()
    else:
        threading.Timer(1, getIO).cancel()
Esempio n. 16
0
def getIO(start='y'):  # To update board IO values

    try:
        timebegin = now()
        # print "\n------------------------"
        d.getIO()
        # print "getIO ==>> ", now() - timebegin
    except:
        print('Error Domocontrol.py getIn')
        traceback.print_exc()
    if start == 'y':
        threading.Timer(1, getIO).start()
    else:
        threading.Timer(1, getIO).cancel()
Esempio n. 17
0
def elimProdVencidos():
    #fecha = newDate(str(input('Ingrese la fecha de hoy [dd-mm-aaaa]:  ')))
    fecha = now()
    productos = getProductos()
    productosEliminados = []
    for k in productos:
        if productos[k]['fechaVencimiento'] < fecha:
            productosEliminados.append(productos[k]["nombre"])
            deleteProducto(productos[k]['codigo'])

    print('Se han eliminado')
    print(', '.join(productosEliminados))

    return ''
Esempio n. 18
0
def DescVenc():
    prods = getProductos()
    fecha = now()
    end_date = addDays(fecha, 7)
    for i in prods:
        if prods[i]["fechaVencimiento"] < fecha:
            print(prods[i]["nombre"], "ha expirado.")
        else:
            if prods[i]["fechaVencimiento"] >= fecha and prods[i][
                    "fechaVencimiento"] <= end_date and prods[i][
                        "descuento"] == 0.0:
                prods[i]["descuento"] = 0.10
                updateProducto(prods[i])
                print(prods[i]["nombre"], "se actualizó")
            else:
                print(prods[i]["nombre"], "no necesita descuento")
    print("La lista ha sido actualizada")
Esempio n. 19
0
    def foreign_army_leaves(self, id, walk_time, units, player, mission, dest):
        decreased_units = self.decr_foreign_garnsion(player, mission, max=units)

        logging.info(
            "foreign army leaves %s to %s (%d)", decreased_units, dest, (date.now() - self.updated - walk_time) * -3600
        )

        def add_arriving_army():
            dest_city = City.Get(dest)

            @db.transaction
            def do():
                dest_city.add_event(self.updated + walk_time, "own_army_arrives", (id, decreased_units))
                dest_city.put()

            do()

        self._exec_after_update.append(add_arriving_army)
Esempio n. 20
0
def ticket():
    print('Introduzca el codigo del producto a vender (primeras tres letras del nombre)')
    print('Luego la cantidad de unidades que compro el cliente')
    print('Presione ENTER para emitir el ticket')

    exit = False
    productos = []
    precioTotal = 0
    while exit == False:
        producto = findByCodigo(input('Codigo ~~>'))
        if (producto != None):
            cantidad = int(input('Cantidad~>'))
            productos.append({ 'prod': producto["nombre"], 'cant' : cantidad, 'precio' : producto["precioUnitario"]})
        r = qYesNo("Desea continuar")
        if r == False:
            exit = True
    print()
    print('            SUPERMERCADOS BAN')
    print('       Capital Federal Buenos Aires')
    print()
    print('SUPBAN S.A')
    print('CUIT Nro: 45-99233219-7')
    print('Av. Callao 2406')
    print('C.A.B.A')
    print('IVA RESPONSABLE INSCRIPTO')
    print('A CONSUMIDOR FINAL')
    print(formatDate(now()))
    print()
    
    for prod in productos:
        dot = '.' * (30 - (len(prod['prod']) + 3 + len(str(prod['cant']))))
        print(prod['prod'],' x ', str(prod['cant']), dot,  str(prod['cant'] * prod['precio']))
        precioTotal += prod['cant'] * prod['precio']

    print()
    print('TOTAL: ', precioTotal)
    print('Gracias por comprar en los Supermercados BAN !')

    return ''
Esempio n. 21
0
    def SendArmy(self, dest, units, mission, time):
        id = fw.util.random_string()
        now = date.now()
        dest_city = City.Get(dest)
        cost, walk_time = self.CountArmyTravelCostAndTime(dest_city, units, time)
        leave_time = now + walk_time + time

        logging.info("leave-time time=%s walk=%s %s", time, walk_time, leave_time)
        if not self.decr_resources(cost):
            raise NotEnoughResourcesError()
        self.send_army(id, dest_city, units, mission, leave_time=now + walk_time + time)
        dest_city.send_army_from(
            id,
            arrive_time=now + walk_time,
            walk_time=walk_time,
            leave_time=now + walk_time + time,
            src=self,
            units=units,
            mission=mission,
        )
        gamemap.add_travelling_army(
            id, self.owner, mission, units, self.location, dest, self.updated, self.updated + walk_time, leave_time
        )
        self.refresh()
Esempio n. 22
0
def getTime():
    return jsonify(result=now().strftime("%a  %d/%m/%y   %H:%M:%S"))
Esempio n. 23
0
def setup_user():
    permission = checkPermission(2)  # check login and privilege
    if permission: return redirect(url_for(permission))

    setLog()

    # userEdit = variabile dell'utente che deve essere modificato
    # sesseion['userEdit'] = variabile di sessione
    f = request.form
    msg = msg_type = ''
    if request.method == "POST" and 'submit' in f and f['submit'] == 'Save':
        if len(f['password']) <= 2 or f['password'] != f[
                'passwordRetype']:  # Check if psw is too short
            msg = "Password too short or not equal!"
            msg_type = 'danger'
            userEdit = session['userEdit']
        else:
            pLog = 1 if 'pLog' in f else 0
            pViewer = 2 if 'pViewer' in f else 0
            pSetup = 4 if 'pSetup' in f else 0
            pAdmin = 128 if 'pAdmin' in f else 0

            # Check if there are at least ONE ADMINISTRATOR
            if int(pAdmin) == 0:
                q = 'SELECT privilege FROM user'
                res = db.query(q)
                priv = 0
                for r in res:
                    print int(r['privilege'])
                    if int(r['privilege']) & 128 > 0:
                        priv += 1
                print priv, session['privilege'], int(
                    session['privilege']) >= 128
                if int(
                        session['privilege']
                ) >= 128 and priv < 2:  # Si sta modificando un Administrator
                    msg = 'There is be at least one administrator user!'
                    msg_type = 'danger'
                    pAdmin = 128

            privilege = pLog + pViewer + pSetup + pAdmin  # calculates privileges to insert into database
            q = 'UPDATE user SET id=%i, username="******", password="******", name="%s", surname="%s", lang="%s", session="%i", description="%s", privilege="%i", timestamp="%s" WHERE id=%i'\
                % (int(f['user_id']), f['username'], f['password'], f['name'], f['surname'], f['lang'], int(f['sessiontime']), f['description'], privilege, now(), int(f['user_id']))
            db.query(q)

            # reload session privilege when user is changed
            if int(session['user_id']) == int(f['user_id']):
                session['user_name'] = f['name']
                session['user_id'] = f['user_id']
                session['userEdit'] = f['user_id']
                session['privilege'] = privilege
                session['timestamp'] = now()
                session['sessionTimeout'] = f['sessiontime']

            userEdit = session['userEdit'] = f['user_id']
            msg = 'User save!' if not msg else msg
            msg_type = 'success' if not msg_type else msg_type

    elif 'submit' in f and f['submit'] == 'Edit':  # If other user
        session['userEdit'] = f['users']
        userEdit = session['userEdit']
        msg = 'User edit!'
        msg_type = 'info'
    elif 'submit' in f and f['submit'] == 'Delete':  # Delete other user
        if int(session['user_id']) == int(f['users']):
            msg = 'You are logged and cannot autoremove!'
            msg_type = 'warning'
        else:
            q = 'DELETE FROM user WHERE id = %s' % (f['users'])
            db.query(q)
            msg = 'User Delete!'
            msg_type = 'success'
        userEdit = f['user_id']
    elif 'submit' in f and f['submit'] == 'New':  # Create new user
        q = 'INSERT INTO user ("username","name","surname","password","privilege","session","lang") VALUES ("-","-","-","-","0000","300","en")'
        userEdit = db.query(q)
        msg = 'New User!'
        msg_type = 'info'
        print "NEW USER userEdit", userEdit
    else:
        userEdit = session['user_id']
        msg = 'User edit!'
        msg_type = 'warning'

    q = 'SELECT * FROM user WHERE id = {}'.format(
        userEdit)  # get current user information
    db_user = db.query(q)[0]
    userPr = int(db_user['privilege'])

    q = 'SELECT * FROM privilege'  # get privilege
    db_privilege = db.query(q)

    if 'privilege' in session and int(session['privilege']) & 128 > 0:
        q = 'SELECT * FROM user WHERE id != {}'.format(
            userEdit)  # get all users information
        db_users = db.query(q)
    else:
        db_users = [{}]

    print userEdit, userPr & 1, userPr & 2, userPr & 4, userPr & 128, session[
        'privilege']
    return render_template("setup_user.html",
                           user=db_user,
                           privilege=db_privilege,
                           pLog=userPr & 1 > 0,
                           pViewer=userPr & 2 > 0,
                           pSetup=userPr & 4 > 0,
                           pAdmin=userPr & 128 > 0,
                           users=db_users,
                           sessionPrivilege=int(session['privilege']),
                           msg_type=msg_type,
                           msg=msg)
Esempio n. 24
0
 def now(self):
     """
     Ritorna l'ora corrente
     """
     return date.now()
Esempio n. 25
0
def history():
    return history_in('Madrid', date.now())
Esempio n. 26
0
def setup_user():
    permission = checkPermission(2)  # check login and privilege
    if permission: return redirect(url_for(permission))

    setLog()

    # userEdit = variabile dell'utente che deve essere modificato
    # sesseion['userEdit'] = variabile di sessione
    f = request.form
    msg = msg_type = ''
    if request.method == "POST" and 'submit' in f and f['submit'] == 'Save':
        if len(f['password']) <= 2 or f['password'] != f['passwordRetype']:  # Check if psw is too short
            msg = "Password too short or not equal!"
            msg_type = 'danger'
            userEdit = session['userEdit']
        else:
            pLog = 1 if 'pLog' in f else 0
            pViewer = 2 if 'pViewer' in f else 0
            pSetup = 4 if 'pSetup' in f else 0
            pAdmin = 128 if 'pAdmin' in f else 0

            # Check if there are at least ONE ADMINISTRATOR
            if int(pAdmin) == 0:
                q = 'SELECT privilege FROM user'
                res = db.query(q)
                priv = 0
                for r in res:
                    print int(r['privilege'])
                    if int(r['privilege']) & 128 > 0:
                        priv += 1
                print priv, session['privilege'], int(session['privilege']) >= 128
                if int(session['privilege']) >= 128 and priv < 2:  # Si sta modificando un Administrator
                    msg = 'There is be at least one administrator user!'
                    msg_type = 'danger'
                    pAdmin = 128

            privilege = pLog + pViewer + pSetup + pAdmin  # calculates privileges to insert into database
            q = 'UPDATE user SET id=%i, username="******", password="******", name="%s", surname="%s", lang="%s", session="%i", description="%s", privilege="%i", timestamp="%s" WHERE id=%i'\
                % (int(f['user_id']), f['username'], f['password'], f['name'], f['surname'], f['lang'], int(f['sessiontime']), f['description'], privilege, now(), int(f['user_id']))
            db.query(q)

            # reload session privilege when user is changed
            if int(session['user_id']) == int(f['user_id']):
                session['user_name'] = f['name']
                session['user_id'] = f['user_id']
                session['userEdit'] = f['user_id']
                session['privilege'] = privilege
                session['timestamp'] = now()
                session['sessionTimeout'] = f['sessiontime']

            userEdit = session['userEdit'] = f['user_id']
            msg = 'User save!' if not msg else msg
            msg_type = 'success' if not msg_type else msg_type

    elif 'submit' in f and f['submit'] == 'Edit':  # If other user
        session['userEdit'] = f['users']
        userEdit = session['userEdit']
        msg = 'User edit!'
        msg_type = 'info'
    elif 'submit' in f and f['submit'] == 'Delete':  # Delete other user
        if int(session['user_id']) == int(f['users']):
            msg = 'You are logged and cannot autoremove!'
            msg_type = 'warning'
        else:
            q = 'DELETE FROM user WHERE id = %s' % (f['users'])
            db.query(q)
            msg = 'User Delete!'
            msg_type = 'success'
        userEdit = f['user_id']
    elif 'submit' in f and f['submit'] == 'New':  # Create new user
        q = 'INSERT INTO user ("username","name","surname","password","privilege","session","lang") VALUES ("-","-","-","-","0000","300","en")'
        userEdit = db.query(q)
        msg = 'New User!'
        msg_type = 'info'
        print "NEW USER userEdit", userEdit
    else:
        userEdit = session['user_id']
        msg = 'User edit!'
        msg_type = 'warning'

    q = 'SELECT * FROM user WHERE id = {}'.format(userEdit)  # get current user information
    db_user = db.query(q)[0]
    userPr = int(db_user['privilege'])

    q = 'SELECT * FROM privilege'  # get privilege
    db_privilege = db.query(q)

    if 'privilege' in session and int(session['privilege']) & 128 > 0:
        q = 'SELECT * FROM user WHERE id != {}'.format(userEdit)  # get all users information
        db_users = db.query(q)
    else:
        db_users = [{}]

    print userEdit, userPr & 1, userPr & 2, userPr & 4, userPr & 128, session['privilege']
    return render_template(
        "setup_user.html", user=db_user, privilege=db_privilege, pLog=userPr & 1 > 0, pViewer=userPr & 2 > 0,
        pSetup=userPr & 4 > 0, pAdmin=userPr & 128 > 0, users=db_users, sessionPrivilege=int(session['privilege']), msg_type=msg_type, msg=msg
    )
Esempio n. 27
0
File: test.py Progetto: yan9yu/lib
    # conv.py

    # date.py
    # print date._convert("20150101")
    # print date._convert("150201", with_hour=True)
    # print date._convert("20150102325687", with_hour=True)
    # print date.day_list("150101", "2015-01-20")
    # print date.day_pair_list("20150102", "2015-01-20")
    # x = date.convert_to_datetime("20150101", delimiter="")
    # print x, type(x)
    # print date.day_delta("150101", "2015-02-01")
    # # decorator.py
    print date.day_list("20150101", "20150301")
    print date.tomorrow()
    print date.yesterday()
    print date.now()
    print date.hour_list("150101")
    print date.hour_delta("150101010203", "20150102020304")

    # file.py

    # hash.py

    # net.py

    # prof.py

    # rand.py

    # reg.py
Esempio n. 28
0
	def __init__(self, sender, content):
		self.sender = sender
		self.content = content
		self.link = None
		self.id = fw.util.random_string()
		self.time = date.now()
Esempio n. 29
0
def getTime():
    return jsonify(result=now().strftime("%a  %d/%m/%y   %H:%M:%S"))
Esempio n. 30
0
 def now(self):
     """
     Ritorna l'ora corrente
     """
     return date.now()
Esempio n. 31
0
def debug(data):
    with open('%s/%s.%s.log' % (LOG_DIR, 'debug', today()), 'a') as f:
        f.write(now() + " <<< dump\n");
        pprint(data, f)
        f.write(">>>\n");