Exemplo n.º 1
0
def city(user, city_id):
    city = api_call('get', '/locations/cities/%s' % city_id, get_json=True)
    groups = api_call('get', '/groups', request_params={
        'f:city_id': city_id, 'f:parent_group_id': None})

    return SiteResponse(
        template='city.html',
        city=city)
Exemplo n.º 2
0
def create_activity():
    form = forms.NewActivityForm()
    cities = getattr(g, "activity_cities", None) or api_call("get", "/locations/cities").json()
    form.locality_id.choices = [(str(o.get("id")), "[%s] %s" % (o["country_code"], o["name"])) for o in cities]
    if form.validate_on_submit():
        reqdata = form.get_request_data()
        resp = api_call("post", "/activities", reqdata)
        if resp.status_code == 200:
            return redirect(url_for("myprofile"))
        if resp.status_code == 401:
            pass
    print form.locality_id.data
    return render_template("new_activity.html", form=form)
Exemplo n.º 3
0
def create_activity(user):
    form = forms.NewActivityForm()
    cities = getattr(g, 'activity_cities', None) or api_call('get', '/locations/cities').json()
    form.locality_id.choices = [
        (str(o.get('id')), '[%s] %s' % (o['country_code'], o['name']))
        for o in cities]
    if form.validate_on_submit():
        reqdata = form.get_request_data()
        resp = api_call('post', '/activities', reqdata)
        if resp.status_code == 200:
            return SiteResponse(redirect_to=url_for('site_blueprint.myprofile'))
        if resp.status_code == 401:
            pass
    return SiteResponse(template='new_activity.html', form=form)
Exemplo n.º 4
0
def profile(user, user_id):
    if user_id == user.get('id'):
        selected_user = user
        is_logged_user = True
    else:
        selected_user = get_user(user_id)
        is_logged_user = False
    references = api_call('get', '/connections/references/%s' % user_id, get_json=True)
    friendships = api_call('get', '/connections/friendships/%s' % user_id, get_json=True)

    return SiteResponse(
        template='user.html',
        user=selected_user,
        references=references,
        friendships=friendships,
        is_logged_user=is_logged_user)
Exemplo n.º 5
0
def login():
    data = request.json
    reqdata = {"username": data.get("username"), "password": data.get("password")}
    api = api_call("post", "/auth", reqdata, request_params={"expand": "city"})
    resp = {}
    error_list = []
    if api.status_code == 200:
        json = api.json()
        session["token"] = json.get("token")
        resp.update(
            {
                "username": json.get("username"),
                "id": json.get("id"),
                "first_name": json.get("first_name"),
                "last_name": json.get("last_name"),
                "city": json.get("city").get("name"),
                "city_id": json.get("city_id"),
                "country": json.get("country"),
                "country_code": json.get("country_code"),
            }
        )
    elif api.status_code == 401:
        error_list.append("Not authorized.")
    else:
        error_list.append("Unexpected error.")
    resp["error_list"] = error_list
    return jsonify(resp)
Exemplo n.º 6
0
def register(user):
    form = forms.NewUserForm()
    if form.validate_on_submit():
        resp = api_call('post', '/user', form.as_dict())

        if resp.status_code == 200:
            session['token'] = resp.json().get('token')
            return redirect(url_for('site_blueprint.index'))
        if resp.status_code == 401:
            form.errors['username'] = ['Unexpected error.']
    return SiteResponse(template='new_user.html', form=form)
Exemplo n.º 7
0
def cities_autocomplete():
    prefix = request.args.get("starts_with")
    if not prefix or len(prefix) < 2:
        return jsonify({})

    resp = api_call("get", "/locations/cities", {"query_prefix": prefix, "limit": 20, "order_by": "-rating"})
    json_data = []
    if resp.status_code == 200:
        json_data = [{"name": o["name"], "id": o["id"], "rating": o["rating"]} for o in resp.json()]
        print resp.json()
        json_data = dict((idx, json_data[idx]) for idx in xrange(len(json_data)))
    print json_data
    return jsonify(json_data)
Exemplo n.º 8
0
def login(user):
    form = forms.LoginForm()
    if form.validate_on_submit():
        reqdata = {'username': form.username.data,
                   'password': form.password.data}
        resp = api_call('post', '/auth', reqdata)
        if resp.status_code == 200:
            session['token'] = resp.json().get('token')
            return redirect(url_for('site_blueprint.index'))
        if resp.status_code == 401:
            form.errors['username'] = ['Invalid login and/or password.']
            form.errors['password'] = ['Invalid login and/or password.']
            form.force_error = True
    return SiteResponse(template='login.html', form=form)
Exemplo n.º 9
0
def register():
    form = forms.NewUserForm()
    error_list = []
    resp = {}
    if form.validate_on_submit():
        reqdata = form.as_dict()
        api = api_call("post", "/users", reqdata, request_params={"expand": "city"})
        if api.status_code == 200:
            json = api.json()
            session["token"] = json.get("token")
        elif api.status_code == 401:
            error_list.append("Not authorized.")
        else:
            error_list.append("Unexpected error.")
    else:
        error_list = ["%s: %s" % (k, ", ".join(v)) for k, v in form.errors.iteritems()]
    resp["error_list"] = error_list
    return jsonify(resp)
Exemplo n.º 10
0
def logout(user):
    token = session.pop('token')
    api_call('delete', '/auth')
    return SiteResponse(redirect_to=url_for('site_blueprint.index'))
Exemplo n.º 11
0
def myreferences(user):
    if user:
        resp = api_call('get', '/connections/references')
        if resp.status_code == 200:
            return SiteResponse(template='reference_list.html', references=resp.json())
Exemplo n.º 12
0
def myfriends():
    user = get_user()
    if user:
        resp = api_call("get", "/connections/friendships")
        if resp.status_code == 200:
            return render_template("friend_list.html", friendships=resp.json())
Exemplo n.º 13
0
def myactivities():
    resp = api_call("get", "/activities")
    if resp.status_code == 200:
        return render_template("activity_list.html", activities=resp.json())
Exemplo n.º 14
0
def logout():
    session.pop("token")
    api_call("delete", "/auth")
    return redirect(url_for("index"))
Exemplo n.º 15
0
def myactivities(user):
    resp = api_call('get', '/activities')
    if resp.status_code == 200:
        return SiteResponse(template='activity_list.html', activities=resp.json())
Exemplo n.º 16
0
def myfriends(user):
    if user:
        resp = api_call('get', '/connections/friendships')
        if resp.status_code == 200:
            return SiteResponse(template='friend_list.html', friendships=resp.json())
Exemplo n.º 17
0
def myreferences():
    user = get_user()
    if user:
        resp = api_call("get", "/connections/references")
        if resp.status_code == 200:
            return render_template("reference_list.html", references=resp.json())