示例#1
0
def events():
    if 'twitter_user' in session:
        handle = session['twitter_user']
    else:
        handle = ''

    ip_address = request.access_route[0] or request.remote_addr
    geodata = get_geodata(ip_address)
    secs = int(time.time())
    
    if geodata == {}:
        flash("Couldn't read your location and display events")
        return render_template('events.html', events = [], handle = handle)
    
    events = db.getObjects('events')
    res = []

    for event in events:
        if vincenty([event['lat'],event['lng']],[geodata['latitude'],geodata['longitude']]).miles < distance:
            res.append(event)
        
        if event['expires'] <= secs:
            db.removeEvent(event['_id'])

    return render_template('events.html', events = res,  fields = ['count','name'],handle = handle, city=geodata['city'], region=geodata['region_code'], time = secs)
示例#2
0
    def __init__(self):
        self.browser = request.headers.get("User-Agent")
        self.date = datetime.utcnow()
        self.event = request.values.get("event")
        self.url = request.values.get("url") or request.headers.get("Referer")

        ip = request.access_route[0] or request.remote_addr
        self.ip_address = ip
        geodata = get_geodata(ip)
        self.geolocation = str(geodata.get("city"))