def home(request): #print request if request.user.is_authenticated(): #REFACTOR GET_FRIENDS print request.user.username face = FacebookSession.objects.get(uid=request.user.username) friends = None friends = face.query("me", connection_type="friends", fields='name,installed') #print friends #print "Amigos" #print friends #print "Hola, mundo!!" #Consultar nodo usuario u = request.user.username e = request.user.email fn = request.user.first_name #ln = request.user.last_name na = fn n = Nodo() p = Person() #print na person_result = p.get_person(na) print "if resultado igual a error" print person_result print "2323232323232323" #print u # if not r: # print "creando nodo" # n.create_nodo(element_type="person", id=u, email=e, name=na) # print "creo nodo" # print n #print "+++++++++++++++++" #print na, r[0][0]["name"] #n = Person() # participation = p.get_participation(u) # participation = participation[0][0] # print participation # ranking=get_level(participation) # print ranking if request.method == 'POST': if request.POST.has_key("webDesing"): web_design = request.POST["webDesing"] if web_design == "on": nodo_web_design = Nodo() nodo_web_design_exist = WebDesign() # creando objeto WebDesig web_design_result = nodo_web_design_exist.get_node("web design") # Verificar si hay resultado print "estoy en el if" if not web_design_result: # si lista esta vacia quiere decir que el nodo web design no exist hay que crearlo nodo_web_design.create_nodo(element_type="web_des", name="web design") print "Nodo Web design creado" #nodo_web_design_exist = WebDesign() # creando objeto WebDesig #result = nodo_web_design_exist.get_node("web design") # Verificar si hay resultado nodo1 = node(person_result[0][0]) nodo2 = node(web_design_result[0][0]) print "Making a relition LIKE between nodes" relation = Relations() relation.likes(nodo1,nodo2) print "You like web design" if request.POST.has_key("webDevelopment"): web_dev = request.POST["webDevelopment"] if web_dev == "on": nodo_web_dev = Nodo() nodo_web_dev_exist = WebDev() web_develoment_result = nodo_web_dev_exist.get_node("web develoment") if not web_develoment_result: nodo_web_dev.create_node(element_type="web_dev", name="web design") web_develoment_result = nodo_web_dev_exist.get_node("web develoment") nodo1 = node(person_result[0][0]) nodo2 = node(web_develoment_result[0][0]) relation = Relations() relation.likes(nodo1,nodo2) print "You like web develoment" if request.POST.has_key("internet"): internet = request.POST["internet"] if internet == "on": nodo_internet = Nodo() nodo_internet_exist = WebDev web_develoment_result = nodo_web_dev_exist.get_node("web develoment") if not web_develoment_result: nodo_web_dev.create_node(element_type="web_dev", name="web design") web_develoment_result = nodo_web_dev_exist.get_node("web develoment") nodo1 = node(person_result[0][0]) nodo2 = node(web_develoment_result[0][0]) relation = Relations() relation.likes(nodo1,nodo2) print "You like internet" #internet = request.POST["internet"] #elementary = request.POST["elementary"] #phd = request.POST['PhD'] if friends: # Mejor con FQL app_friends = [f for f in friends['data'] if f.has_key('installed')] if app_friends: for i in range(len(app_friends)): person_relation_knows = p.get_relation_knows(na, app_friends[i]["name"]) if person_relation_knows: print "Existe relacion entre ambos" pass else: print "crea relacion knows" friend_result = p.get_person(app_friends[i]["name"]) if friend_result: nodo_user = node(person_result[0][0]) nodo_friend = node(friend_result[0][0]) relation_knows = Relations() relation_knows.knows(nodo_user, nodo_friend) else: app_friends = None else: app_friends = None return render_to_response('django_index.html', {'static_server': 'https://s3.amazonaws.com/evospace/prototype/', 'api_server': 'http://app.evospace.org', 'friends': app_friends, }, context_instance=RequestContext(request))
def add_collection(request, username): global message errors = [] if request.method == 'POST': #print "Estas en add collections" #users=User.objects.all(); #u1=User.objects.get(username=username) #u=users[0] #print request.POST json_data = json.loads(request.body) n = json_data["name"] d = json_data["description"] v = json_data["option"] #print n c = Collection(name=n, description=d, creation_date=datetime.datetime.now(), visibility=v) c.save() #Agregar nodo Coleccion a la red de grafos nodo_collection = Nodo() nodo_collection.create_nodo(element_type="Collection", name=n, description=d, visibility=v) print "Salvaste colleccion" #c_id=Collection.objects.latest('id') #c_id=c_id.id #u_id=u1.id #if User.objects.get(id=u_id) and Collection.objects.get(id=c_id): #u=User.objects.get(id=u_id) #c=Collection.objects.get(id=c_id) u=request.user.last_name #print u uc = User_Collection(user=request.user, collection=c, role="O", status="PU") uc.save() #Activity stream activity_stream = Activity_stream() usr = request.user.username activity_stream.activity("person", "save", "new collection", usr) #Relacionar coleccion con el usuario firstName = request.user.first_name #lastName = request.user.last_name name = firstName person = Person() person_result = person.get_person(name) collection = GraphCollection() collection_result = collection.get_collection(n) nodo1 = node(person_result[0][0]) nodo2 = node(collection_result[0][0]) relation = Relations() relation.has(nodo1, nodo2) message = "You are now linked to this collection!" #else: # message= "Sorry there is no collection or user" #add_user_collection(id,c_id) #col= Collection.objects.all() data = ({'name': n, 'description': d, 'visibility': v, 'message': message}) datar = json.dumps(data) print datar return HttpResponse(datar, mimetype='application/json')
def add_collection(request, username): global message errors = [] if request.method == 'POST': #print "Estas en add collections" #users=User.objects.all(); #u1=User.objects.get(username=username) #u=users[0] #print request.POST json_data = json.loads(request.body) n = json_data["name"] d = json_data["description"] v = json_data["option"] print n c = Collection(name=n, description=d, creation_date=datetime.datetime.now(), visibility=v) c.save() #Agregar nodo Coleccion a la red de grafos nodo_collection = Nodo() nodo_collection.create_nodo(element_type="Collection", name=n, description=d, visibility=v) print "Salvaste colleccion" #c_id=Collection.objects.latest('id') #c_id=c_id.id #u_id=u1.id #if User.objects.get(id=u_id) and Collection.objects.get(id=c_id): #u=User.objects.get(id=u_id) #c=Collection.objects.get(id=c_id) u = request.user.last_name #print u uc = User_Collection(user=request.user, collection=c, role="O", status="PU") uc.save() #Activity stream activity_stream = Activity_stream() usr = request.user.username activity_stream.activity("person", "save", "new collection", usr) #Relacionar coleccion con el usuario firstName = request.user.first_name lastName = request.user.last_name name = firstName + " " + lastName person = Person() person_result = person.get_person(name) collection = GraphCollection() collection_result = collection.get_collection(n) nodo1 = node(person_result[0][0]) nodo2 = node(collection_result[0][0]) relation = Relations() relation.has(nodo1, nodo2) message = "You are now linked to this collection!" #else: # message= "Sorry there is no collection or user" #add_user_collection(id,c_id) #col= Collection.objects.all() data = ({ 'name': n, 'description': d, 'visibility': v, 'message': message }) datar = json.dumps(data) print datar return HttpResponse(datar, content_type='application/json')
def evospace(request): if request.method == 'POST': population = Population(popName) #print 'Raw Data___: "%s"' % request.body #print type(request.body) json_data = json.loads(request.body) method = json_data["method"] params = json_data["params"] id = json_data["id"] if method == "initialize": result = population.initialize() data = json.dumps({"result": result, "error": None, "id": id}) print data return HttpResponse(data, mimetype='application/javascript') elif method == "getSample": #Auto ReInsert if population.read_sample_queue_len() >= REINSERT_THRESHOLD: population.respawn(5) result = population.get_sample(params[0]) if result: data = json.dumps({"result": result, "error": None, "id": id}) else: data = json.dumps({ "result": None, "error": { "code": -32601, "message": "EvoSpace empty" }, "id": id }) return HttpResponse(data, mimetype='application/json') elif method == "read_pop_keys": result = population.read_pop_keys() if result: data = json.dumps({"result": result, "error": None, "id": id}) else: data = json.dumps({ "result": None, "error": { "code": -32601, "message": "EvoSpace empty" }, "id": id }) return HttpResponse(data, mimetype='application/json') elif method == "read_sample_queue": result = population.read_sample_queue() if result: data = json.dumps({"result": result, "error": None, "id": id}) else: data = json.dumps({ "result": None, "error": { "code": -32601, "message": "EvoSpace empty" }, "id": id }) return HttpResponse(data, mimetype='application/json') elif method == "putSample": #Cada EVOLUTION_INTERVAL evoluciona print "##################" if not population.get_returned_counter() % EVOLUTION_INTERVAL: try: print "Evolucionando" evolve_Tournament() except Exception as e: exc_type, exc_value, exc_traceback = sys.exc_info() print e.message traceback.print_tb(exc_traceback, limit=20, file=sys.stdout) pass population.put_sample(params[0]) #Aqui se va armar la machaca del individuo if request.user.is_authenticated(): usr = request.user.username first_name = request.user.first_name last_name = request.user.last_name name = first_name + " " + last_name nodo = Nodo() person = Person() person_result = person.get_person(name) activity_stream = Activity_stream() #print u print "=========Parametros===========" print params[0] if params[0]["individuals_with_like"]: for item in params[0]["individuals_with_like"]: id = item print id individual_node = Graph_Individual() print "prueba ", params[0]["individuals_with_like"] # Verificar si el nodo individual existe con status last individual_node_exist = individual_node.get_node(id) if person_result: nodo1 = node(person_result[0][0]) if individual_node_exist: # si la lista esta vacia quiere decir que no existe nodo2 = node(individual_node_exist[0][0]) relation = Relations() relation.likes(nodo1, nodo2) #request.user.username in k #Agreagando Activity stream para el verbo like activity_stream.activity("person", "like", "evaluate", usr) #Curret experience calculation current_experience(request) print "=========Parametros===========" else: print "Usuario anonimo" return HttpResponse(json.dumps("Success"), mimetype='application/json') elif method == "init_pop": data = init_pop(populationSize=params[0]) return HttpResponse(json.dumps("Success"), mimetype='application/javascript') elif method == "respawn": data = population.respawn(n=params[0]) return HttpResponse(json.dumps("Success"), mimetype='application/javascript') elif method == "put_individual": print "params", params[0] population.put_individual(**params[0]) data = json.dumps({"result": None, "error": None, "id": id}) return HttpResponse(data, mimetype='application/json') else: return HttpResponse("ajax & post please", mimetype='text')
def inicio(request): #print request if request.user.is_authenticated(): #REFACTOR GET_FRIENDS print request.user.username face = FacebookSession.objects.get(uid=request.user.username) friends = None friends = face.query("me", connection_type="friends", fields='name,installed') print friends #print "Amigos" #print friends #print "Hola, mundo!!" #Condultar nodo usuario u = request.user.username e = request.user.email fn = request.user.first_name ln = request.user.last_name na = fn + " " + ln n = Nodo() p = Person() print na person_result = p.get_person(na) print "if resultado igual a error" print person_result # if not r: # print "creando nodo" # n.create_nodo(element_type="person", id=u, email=e, name=na) # print "creo nodo" # print n print "+++++++++++++++++" #print na, r[0][0]["name"] if request.method == 'POST': if request.POST.has_key("webDesing"): web_design = request.POST["webDesing"] if web_design == "on": nodo_web_design = Nodo() nodo_web_design_exist = WebDesign( ) # creando objeto WebDesig web_design_result = nodo_web_design_exist.get_node( "web design") # Verificar si hay resultado print "estoy en el if" if not web_design_result: # si lista esta vacia quiere decir que el nodo web design no exist hay que crearlo nodo_web_design.create_nodo(element_type="web_des", name="web design") print "Nodo Web design creado" #nodo_web_design_exist = WebDesign() # creando objeto WebDesig #result = nodo_web_design_exist.get_node("web design") # Verificar si hay resultado nodo1 = node(person_result[0][0]) nodo2 = node(web_design_result[0][0]) print "Making a relition LIKE between nodes" relation = Relations() relation.likes(nodo1, nodo2) print "You like web design" if request.POST.has_key("webDevelopment"): web_dev = request.POST["webDevelopment"] if web_dev == "on": nodo_web_dev = Nodo() nodo_web_dev_exist = WebDev() web_develoment_result = nodo_web_dev_exist.get_node( "web develoment") if not web_develoment_result: nodo_web_dev.create_node(element_type="web_dev", name="web design") web_develoment_result = nodo_web_dev_exist.get_node( "web develoment") nodo1 = node(person_result[0][0]) nodo2 = node(web_develoment_result[0][0]) relation = Relations() relation.likes(nodo1, nodo2) print "You like web develoment" if request.POST.has_key("internet"): internet = request.POST["internet"] if internet == "on": nodo_internet = Nodo() nodo_internet_exist = WebDev web_develoment_result = nodo_web_dev_exist.get_node( "web develoment") if not web_develoment_result: nodo_web_dev.create_node(element_type="web_dev", name="web design") web_develoment_result = nodo_web_dev_exist.get_node( "web develoment") nodo1 = node(person_result[0][0]) nodo2 = node(web_develoment_result[0][0]) relation = Relations() relation.likes(nodo1, nodo2) print "You like internet" #internet = request.POST["internet"] #elementary = request.POST["elementary"] #phd = request.POST['PhD'] if friends: # Mejor con FQL app_friends = [ f for f in friends['data'] if f.has_key('installed') ] if app_friends: for i in range(len(app_friends)): person_relation_knows = p.get_relation_knows( na, app_friends[i]["name"]) if person_relation_knows: print "Existe relacion entre ambos" pass else: print "crea relacion knows" friend_result = p.get_person(app_friends[i]["name"]) if friend_result: nodo_user = node(person_result[0][0]) nodo_friend = node(friend_result[0][0]) relation_knows = Relations() relation_knows.knows(nodo_user, nodo_friend) else: app_friends = None else: app_friends = None return render_to_response('epanol_index.html', { 'static_server': 'https://s3.amazonaws.com/evospace/prototype/', 'api_server': 'http://app.evospace.org', 'friends': app_friends }, context_instance=RequestContext(request))
def home(request): #print request if request.user.is_authenticated(): #REFACTOR GET_FRIENDS face = FacebookSession.objects.get(uid=request.user.username) print "FACEBOOK" print face friends = face.query("me", connection_type="friends", fields='name,installed') print friends #print "Hola, mundo!!" #r = redis.StrictRedis(host='localhost', port=6379, db=0) from lib.store import redis r = redis experience = 0 #Condultar nodo usuario u = request.user.username e = request.user.email fn = request.user.first_name ln = request.user.last_name na = fn + " " + ln n = Nodo() p = Person() print na person_result = p.get_person(na) print "if resultado igual a error" print person_result # if not r: # print "creando nodo" # n.create_nodo(element_type="person", id=u, email=e, name=na) # print "creo nodo" # print n print "+++++++++++++++++" #print na, r[0][0]["name"] if request.method == 'POST': if request.POST.has_key("webDesing"): web_design = request.POST["webDesing"] if web_design == "on": nodo_web_design = Nodo() nodo_web_design_exist = WebDesign() # creando objeto WebDesig web_design_result = nodo_web_design_exist.get_node("web design") # Verificar si hay resultado print "estoy en el if" if not web_design_result: # si lista esta vacia quiere decir que el nodo web design no exist hay que crearlo nodo_web_design.create_nodo(element_type="web_des", name="web design") print "Nodo Web design creado" #nodo_web_design_exist = WebDesign() # creando objeto WebDesig #result = nodo_web_design_exist.get_node("web design") # Verificar si hay resultado nodo1 = node(person_result[0][0]) nodo2 = node(web_design_result[0][0]) print "Making a relition LIKE between nodes" relation = Relations() relation.likes(nodo1,nodo2) print "You like web design" if request.POST.has_key("webDevelopment"): web_dev = request.POST["webDevelopment"] if web_dev == "on": nodo_web_dev = Nodo() nodo_web_dev_exist = WebDev() web_develoment_result = nodo_web_dev_exist.get_node("web develoment") if not web_develoment_result: nodo_web_dev.create_node(element_type="web_dev", name="web design") web_develoment_result = nodo_web_dev_exist.get_node("web develoment") nodo1 = node(person_result[0][0]) nodo2 = node(web_develoment_result[0][0]) relation = Relations() relation.likes(nodo1,nodo2) print "You like web develoment" if request.POST.has_key("internet"): internet = request.POST["internet"] if internet == "on": nodo_internet = Nodo() nodo_internet_exist = WebDev web_develoment_result = nodo_web_dev_exist.get_node("web develoment") if not web_develoment_result: nodo_web_dev.create_node(element_type="web_dev", name="web design") web_develoment_result = nodo_web_dev_exist.get_node("web develoment") nodo1 = node(person_result[0][0]) nodo2 = node(web_develoment_result[0][0]) relation = Relations() relation.likes(nodo1,nodo2) print "You like internet" #internet = request.POST["internet"] #elementary = request.POST["elementary"] #phd = request.POST['PhD'] if friends: #Mejor con FQL app_friends = [f for f in friends['data'] if f.has_key('installed')] if app_friends: for i in range(len(app_friends)): person_relation_knows = p.get_relation_knows(na, app_friends[i]["name"]) if person_relation_knows: print "Existe relacion entre ambos" pass else: print "crea relacion knows" friend_result = p.get_person(app_friends[i]["name"]) if friend_result: nodo_user = node(person_result[0][0]) nodo_friend = node(friend_result[0][0]) relation_knows = Relations() relation_knows.knows(nodo_user, nodo_friend) else: app_friends = None # Calculo de experiencia del usuario #json_string = json.dumps(user_activity[0]) #j=json_string.replace("'", "\"") #s=l[0].replace("'", "\"") #d = ast.literal_eval(s) current_experience(request) print "user=======" + " " + request.user.username else: app_friends = None #'friends': app_friends return render_to_response('django_index.html', {'static_server': 'https://s3.amazonaws.com/evospace/prototype/', 'api_server': 'http://app.evospace.org', 'friends': app_friends }, context_instance=RequestContext(request))
class FacebookBackend: def authenticate(self, token=None): print token facebook_session = models.FacebookSession.objects.get( access_token=token, ) profile = facebook_session.query('me') print "^^^^^^^^^PROFILE^^^^^^^^^^^^" try: user = auth_models.User.objects.get(username=profile['id']) except auth_models.User.DoesNotExist, e: user = auth_models.User(username=profile['id']) user.set_unusable_password() if 'username' in profile: user.email = profile['username'] else: user.email = profile['id'] user.first_name = profile['first_name'] user.last_name = profile['last_name'] user.save() #Agregando Activity_stream #activity_stream = Activity_stream() #Agregando nodo usuario, creado por Christian "Nuevo" usr = profile['id'] email = profile['name'] first_name = profile['first_name'] last_name = profile['last_name'] full_name = first_name + " " + last_name print '****************' nodo = Nodo() person = Person() person_result = person.get_person(full_name) print usr, email, full_name print "if person_result es vacio, entonce hay que crearlo" print person_result if not person_result: print "creando nodo" nodo.create_nodo(element_type="person", id=usr, email=email, name=full_name) print "creo nodo" #Agregando Activity_stream activity_stream = Activity_stream() activity_stream.activity("person", "join", "log in", usr) try: models.FacebookSession.objects.get(uid=profile['id']).delete() except models.FacebookSession.DoesNotExist, e: pass