Exemple #1
0
def add_game_relations(id):
    if id == request.form['g_id']:
        return jsonify({"error":"Can not relate to self"})
    g1id = id if id < int(request.form['g_id']) else request.form['g_id']
    print "low id: ", g1id
    g2id = request.form['g_id'] if id < int(request.form['g_id']) else id
    print "high id: ", g2id
    g1 = db_session.query(Game).get(g1id)
    g2 = db_session.query(Game).get(g2id)
    if g1 == None:
        if g1id == id:
            return backend.get_error_response(
                message="Source id doesn't exist",
                status_code=404)
        else:
            return backend.get_error_response(
                message="Target id doesn't exist",
                status_code=404)
    if g2 == None:
        if g2id == id:
            return backend.get_error_response(
                message="Source id doesn't exist",
                status_code=404)
        else:
            return backend.get_error_response(
                message="Target id doesn't exist",
                status_code=404)

    uniqueRelation = db_session.query(UniqueRelation).get((g.backend_user.openid, g1.g_id, g2.g_id))
    print "unik relation", uniqueRelation

    if uniqueRelation != None:
        print "Not unique relation"
        return backend.get_error_response(message="You have already done this relation earlier", status_code=404)
    else:
        #Target-game from users point of view
        game = db_session.query(Game).get(request.form['g_id'])
        #Always least id first
        relation = db_session.query(Relation).get((g1.g_id,g2.g_id))
        if relation == None:
            print "Relation was None"
            relation = Relation(g1,g2)
            db_session.add(relation)
            uniqueRelation = UniqueRelation(g.backend_user.openid, g1.g_id, g2.g_id)
            db_session.add(uniqueRelation)
        else:
            print "Relation already existed"
            relation.count = relation.count + 1
            uniqueRelation =UniqueRelation(g.backend_user.openid, relation.game1_id, relation.game2_id)
            db_session.add(uniqueRelation)
        print "relation: ", relation
        print "relations: ", relation.count
        g1.relations = g1.relations + 1
        g2.relations = g2.relations + 1
    try:
        db_session.commit()
    except Exception, e:
        return backend.get_error_response(
                message="Commit has failed.",
                status_code=404)
Exemple #2
0
def add_relation():
    in1 = request.form['g1_id']
    in2 = request.form['g2_id']
    if in1 == in2:
        return jsonify({"error":"Can not relate to self"})
    g1id = in1 if in1 < in2 else in2
    g2id = in2 if in1 < in2 else in1
    g1 = db_session.query(Game).get(g1id)
    g2 = db_session.query(Game).get(g2id)
    if g1 == None:
        return jsonify({"error":"Source id doesn't exist"})
    if g2 == None:
        return jsonify({"error":"Target id doesn't exist"})
    #Always least id first
    relation = db_session.query(Relation).get((g1.g_id,g2.g_id))
    if relation == None:
        print "Relation was None"
        relation = Relation(g1,g2)
        db_session.add(relation)
    else:
        relation.count = relation.count + 1
    try:
        db_session.commit()
    except Exception, e:
        return "Failed"
Exemple #3
0
def add_game_relations(id):
    if id == request.form['g_id']:
        return jsonify({"error": "Can not relate to self"})
    g1id = id if id < int(request.form['g_id']) else request.form['g_id']
    print "low id: ", g1id
    g2id = request.form['g_id'] if id < int(request.form['g_id']) else id
    print "high id: ", g2id
    g1 = db_session.query(Game).get(g1id)
    g2 = db_session.query(Game).get(g2id)
    if g1 == None:
        if g1id == id:
            return backend.get_error_response(
                message="Source id doesn't exist", status_code=404)
        else:
            return backend.get_error_response(
                message="Target id doesn't exist", status_code=404)
    if g2 == None:
        if g2id == id:
            return backend.get_error_response(
                message="Source id doesn't exist", status_code=404)
        else:
            return backend.get_error_response(
                message="Target id doesn't exist", status_code=404)

    uniqueRelation = db_session.query(UniqueRelation).get(
        (g.backend_user.openid, g1.g_id, g2.g_id))
    print "unik relation", uniqueRelation

    if uniqueRelation != None:
        print "Not unique relation"
        return backend.get_error_response(
            message="You have already done this relation earlier",
            status_code=404)
    else:
        #Target-game from users point of view
        game = db_session.query(Game).get(request.form['g_id'])
        #Always least id first
        relation = db_session.query(Relation).get((g1.g_id, g2.g_id))
        if relation == None:
            print "Relation was None"
            relation = Relation(g1, g2)
            db_session.add(relation)
            uniqueRelation = UniqueRelation(g.backend_user.openid, g1.g_id,
                                            g2.g_id)
            db_session.add(uniqueRelation)
        else:
            print "Relation already existed"
            relation.count = relation.count + 1
            uniqueRelation = UniqueRelation(g.backend_user.openid,
                                            relation.game1_id,
                                            relation.game2_id)
            db_session.add(uniqueRelation)
        print "relation: ", relation
        print "relations: ", relation.count
        g1.relations = g1.relations + 1
        g2.relations = g2.relations + 1
    try:
        db_session.commit()
    except Exception, e:
        return backend.get_error_response(message="Commit has failed.",
                                          status_code=404)