def campanyas(): email = dict(session).get('email', None) user = User.get_by_email(email) given_name = dict(session).get('given_name', None) campanyas = Campanya.getOrderedCampaigns() empresas = Campanya.getDistinctCompanies() try: for c in campanyas: c.nombre = translator.translate(c.nombre, dest=session['lang']).text c.descripcion = translator.translate(c.descripcion, dest=session['lang']).text except: pass try: del session['accionId'] del session['offerId'] except: pass return render_template('empresas.html', email=email, name=given_name, user=user, campanyas=campanyas, empresas=empresas)
def editorC(): email = dict(session).get('email', None) user = User.get_by_email(email) given_name = dict(session).get('given_name', None) if user.role == "Promotor": campanyas = Campanya.getCampaigns(user.organizacion) if user.role == "Administrador": campanyas = Campanya.getAllCampaigns() salary = get_balance(user.blockHash) s = Session() if request.method == 'POST': if 'editar' in request.form: return redirect( url_for('editorCamp', campanya_id=request.form['id'])) elif 'eliminar' in request.form: query = s.query(Campanya) pk = request.form['id'] query = query.filter(Campanya.id == pk).first() s.delete(query) s.commit() elif 'verAcc' in request.form: return redirect(url_for('editor', campanya_id=request.form['id'])) try: del session['accionId'] del session['offerId'] except: pass return render_template('admincampanyas.html', title='Campañas', wallet=salary, email=email, name=given_name, w3=web3, user=user, campanyas=campanyas)
def post(self, mod_id): iden = int(mod_id) mod = db.get(db.Key.from_path('Modulo', iden)) nombre=self.request.get('nombreCampanya') fechaCampanya =self.request.get('fechaCampanya') campanya = Campanya(modulo = mod, fecha = datetime.strptime(fechaCampanya, '%Y-%m-%d'), nombrecampanya = nombre) campanya.put() return webapp2.redirect('/listaCampanyas')
def empresa(emp): email = dict(session).get('email', None) user = User.get_by_email(email) given_name = dict(session).get('given_name', None) salary = get_balance(user.blockHash) campanyas = Campanya.getCampaigns(emp) acciones = Accion.getActions(emp) try: for c in campanyas: c.nombre = translator.translate(c.nombre, dest=session['lang']).text c.descripcion = translator.translate(c.descripcion, dest=session['lang']).text for a in acciones: a.nombre = translator.translate(a.nombre, dest=session['lang']).text a.descripcion = translator.translate(a.descripcion, dest=session['lang']).text except: pass return render_template('campanyas.html', wallet=salary, email=email, name=given_name, w3=web3, user=user, campanyas=campanyas, empresa=emp, acciones=acciones)
def editor(campanya_id): email = dict(session).get('email', None) user = User.get_by_email(email) given_name = dict(session).get('given_name', None) acciones = Accion.getActionsOfCampaign(campanya_id) campanya = Campanya.getCampaignById(campanya_id) salary = get_balance(user.blockHash) s = Session() if request.method == 'POST': if 'editarAcc' in request.form: return redirect( url_for('editorAccion', accion_id=request.form['accion_id'])) elif 'eliminarAcc' in request.form: query = s.query(Accion) pk = request.form['accion_id'] query = query.filter(Accion.id == pk).first() s.delete(query) s.commit() acciones = Accion.getActionsOfCampaign(campanya_id) return render_template('adminacciones.html', title='Acción', wallet=salary, email=email, name=given_name, w3=web3, user=user, acciones=acciones, campanya=campanya)
def post(self,cam_id): iden = int(cam_id) cam = db.get(db.Key.from_path('Campanya', iden)) cam.fecha = datetime.strptime(self.request.get('fecha'), '%Y-%m-%d') cam.nombrecampanya = self.request.get('nombre') cam.put() listaCampanyas = Campanya.all() self.render_template('listaCampanyas.html', {'listaCampanyas': listaCampanyas})
def historialtrans(): email = dict(session).get('email', None) user = User.get_by_email(email) salary = get_balance(user.blockHash) name = dict(session).get('name', None) if user.role == "Colaborador": transacciones = Transaccion.getTransactions(user.email) elif user.role == "Promotor": transacciones = Transaccion.getTransactions(user.organizacion) else: transacciones = Transaccion.getAllTransactions() for t in transacciones: campId = t.campanya try: t.campanya = Campanya.getCampaignById(campId).nombre try: t.campanya = translator.translate(t.campanya, dest=session['lang']).text except: pass except: if "@" not in str(t.destinatario): t.campanya = gettext("Pago por oferta") else: t.campanya = gettext("Envío de UDCoins") try: del session['accionId'] del session['offerId'] except: pass return render_template('historialtrans.html', title='Acción', wallet=salary, email=email, name=name, w3=web3, user=user, transacciones=transacciones)
def addData(self): #ESTO ES PARA INICIALIZAR LA BASE DE DATOS q = db.GqlQuery("SELECT * FROM Modulo") resetearModulos = q.fetch(10) db.delete(resetearModulos) modulo1 = Modulo(nombremodulo='Modulo1', valoralpha=1.2, valorbeta=3.4, valorgamma=9.3, valorkappa=39.2, idealidad=100.0, resistencia=39.4, rendimiento=20.0, localizacion=db.GeoPt( 52.37, 4.88)) #hay un rango de valores algo estrecho modulo2 = Modulo(nombremodulo='Modulo2', valoralpha=1.4, valorbeta=3.6, valorgamma=32.1, valorkappa=31.1, idealidad=10.0, resistencia=30.4, rendimiento=65.0, localizacion=db.GeoPt(12.37, 87.88)) modulo1.put() modulo2.put() q1 = db.GqlQuery("SELECT * FROM Campanya") resetearCampanyas = q1.fetch(10) db.delete(resetearCampanyas) campanya1 = Campanya(modulo=modulo1, fecha=datetime(2018, 12, 30), nombrecampanya='Dic18') campanya2 = Campanya(modulo=modulo1, fecha=datetime(2018, 11, 30), nombrecampanya='Nov18') campanya3 = Campanya(modulo=modulo1, fecha=datetime(2018, 11, 30), nombrecampanya='Nov18') campanya4 = Campanya(modulo=modulo1, fecha=datetime(2018, 7, 30), nombrecampanya='Jul18') campanya5 = Campanya(modulo=modulo2, fecha=datetime(2018, 9, 30), nombrecampanya='Sep18') campanya6 = Campanya(modulo=modulo2, fecha=datetime(2018, 8, 30), nombrecampanya='Ago18') campanya7 = Campanya(modulo=modulo2, fecha=datetime(2018, 1, 30), nombrecampanya='Ene18') campanya8 = Campanya(modulo=modulo2, fecha=datetime(2017, 12, 30), nombrecampanya='Dic17') campanya1.put() campanya2.put() campanya3.put() campanya4.put() campanya5.put() campanya6.put() campanya7.put() campanya8.put() q1 = db.GqlQuery("SELECT * FROM Usuario") resetearUsuarios = q1.fetch(10) db.delete(resetearUsuarios) usuario1 = Usuario(nombreusuario='juanito1', email='*****@*****.**') usuario2 = Usuario(nombreusuario='juanito2', email='*****@*****.**') usuario3 = Usuario(nombreusuario='pruebaparaingweb', email='*****@*****.**') usuario4 = Usuario(nombreusuario='test', email='*****@*****.**') usuario1.put() usuario2.put() usuario3.put() usuario4.put() q2 = db.GqlQuery("SELECT * FROM Comentario") resetearComentarios = q2.fetch(10) db.delete(resetearComentarios) comentario1 = Comentario(usuario=usuario1, comentario='esto esta bien') comentario1.put() comentario2 = Comentario(usuario=usuario4, comentario='test comment') comentario2.put() comentario3 = Comentario(usuario=usuario4, comentario='test comment 2') comentario3.put() comentario4 = Comentario(usuario=usuario4, comentario='test comment 3') comentario4.put()
def accion(): form = CrearCampForm() form2 = CrearOfertaForm() email = dict(session).get('email', None) user = User.get_by_email(email) given_name = dict(session).get('given_name', None) if user.role == "Promotor": campanyas = Campanya.getCampaigns(user.organizacion) acciones = Accion.getActions(user.organizacion) ofertas = Oferta.getOffers(user.organizacion) elif user.role == "Administrador": campanyas = Campanya.getAllCampaigns() acciones = Accion.getAllActions() ofertas = Oferta.getAllOffers() else: return redirect("/login") try: for c in campanyas: c.nombre = translator.translate(c.nombre, dest=session['lang']).text c.descripcion = translator.translate(c.descripcion, dest=session['lang']).text for a in acciones: a.nombre = translator.translate(a.nombre, dest=session['lang']).text a.descripcion = translator.translate(a.descripcion, dest=session['lang']).text a.indicadorKpi = translator.translate(a.indicadorKpi, dest=session['lang']).text for o in ofertas: o.nombre = translator.translate(o.nombre, dest=session['lang']).text o.descripcion = translator.translate(o.descripcion, dest=session['lang']).text except: pass salary = get_balance(os.environ.get('TEST_ADDRESS')) if form.validate_on_submit() and form.crearCamp.data: s = Session() if user.role == "Promotor": c = Campanya(request.form['nomCamp'], user.organizacion, request.form['desc']) elif user.role == "Administrador": c = Campanya(request.form['nomCamp'], request.form['empresa'], request.form['desc']) s.add(c) s.commit() elif form2.validate_on_submit() and form2.crearOf.data: nombre = request.form['nomOferta'] s = Session() if user.role == "Promotor": o = Oferta(request.form['nomOferta'], user.organizacion, request.form['desc'], request.form['precio']) elif user.role == "Administrador": o = Oferta(request.form['nomOferta'], request.form['empresa'], request.form['desc'], request.form['precio']) s.add(o) s.commit() if request.method == 'POST' and 'crearAccion' in request.form: nombre = request.form['nombre'] desc = request.form['desc'] recompensa = request.form['recompensa'] indKpi = request.form['kpi'] kpiObj = request.form['obj'] camp = request.form['campanya'] s = Session() a = Accion(nombre, user.organizacion, desc, recompensa, indKpi, kpiObj, camp) s.add(a) s.commit() try: del session['accionId'] del session['offerId'] except: pass # Borro las keys para evitar conflictos con cookies return render_template('accion.html', title='Acción', wallet=salary, email=email, name=given_name, w3=web3, form=form, form2=form2, user=user, acciones=acciones, campanyas=campanyas, ofertas=ofertas)
def get(self): admin = users.IsCurrentUserAdmin() listaCampanyas = Campanya.all() self.render_template('listaCampanyas.html', {'listaCampanyas': listaCampanyas,'admin':admin})