Beispiel #1
0
def buddies():
    ids = request.values.get('ids')
    callback  = request.values.get('callback', None)
    buddies = []

    
    # LATER:
    for _id in ids.split(','):
        nick, pic_url = None, None
        if g.is_guest:
            record = db.load_user(_id)
            pic_url = gravatar_url(record['email'])
        else:
            record = db.load_visitor(_id)
            nick = '%s(%s)' % (record['nick'], record['location'])
            pic_url = gravatar_default(_id)

        buddy = {'id': _id,
                 'nick': nick,
                 'pic_url': pic_url}
        buddies.append(buddy)

    ret = json.dumps(buddies)
    if callback is not None: ret = '%s(%s);' % (callback, ret)
    return ret
Beispiel #2
0
def buddies():
    ids = request.values.get('ids')
    callback = request.values.get('callback', None)
    buddies = []

    # LATER:
    for _id in ids.split(','):
        nick, pic_url = None, None
        if g.is_guest:
            record = db.load_user(_id)
            pic_url = gravatar_url(record['email'])
        else:
            record = db.load_visitor(_id)
            nick = '%s(%s)' % (record['nick'], record['location'])
            pic_url = gravatar_default(_id)

        buddy = {'id': _id, 'nick': nick, 'pic_url': pic_url}
        buddies.append(buddy)

    ret = json.dumps(buddies)
    if callback is not None: ret = '%s(%s);' % (callback, ret)
    return ret
Beispiel #3
0
 def load(self):
     """Load the user denoted by self.id"""
     cur_doc = db.load_user(self.id)
     self.email = cur_doc['email']
     self.password = cur_doc['password']
Beispiel #4
0
def prepare():
    print '========================================'
    print 'BEGIN prepare(%s) [%s]' % (request.endpoint, str(datetime.now()))

    if request.endpoint in UNSUPPORTED_ENDPOINTS:
        abort(403)

    data = request.cookies.get('auth', None)

    if request.endpoint not in (None, 'static'):
        print '<<< %s >>>' % request.endpoint
        print '<< request.values:: %r >>' % request.values
        print '<< cookie_data:: %r >>' % str(
            SecureCookie.unserialize(data, app.secret_key
                                     ) if data is not None else 'None')
        print '--------------------'

    # For guest user
    if request.endpoint == 'init':
        if not data:
            vid = save_visitor(request.environ)
            g.uid = str(vid)
            g.is_login = False
        else:
            cookie = SecureCookie.unserialize(data, app.secret_key)
            g.uid = cookie.get('uid', None)

            if g.uid is None:
                vid = save_visitor(request.environ)
                g.uid = str(vid)
                g.is_login = False
            else:
                g.is_login = True

    elif request.endpoint in LOGIN_REQUIRED_ENDPOINTS:
        if data:
            # Get uid & ticket from cookie then new Client
            cookie = SecureCookie.unserialize(data, app.secret_key)
            print '[...].cookie: ', cookie
            g.cookie = cookie
            g.uid = cookie.get('uid', None)
            g.is_login = True
            g.is_guest = cookie.get('is_guest', None)
            show = cookie.get('show', 'available')

            record, nick, pic_url = None, None, None
            if g.is_guest:
                record = db.load_visitor(g.uid)
                nick = '%s(%s)' % (record['nick'], record['location'])
                pic_url = gravatar_default(g.uid)
            else:
                record = db.load_user(g.uid)
                nick = record['nick']
                pic_url = gravatar_url(record['email'])

            g.record = record
            print 'g.record:', g.record

            user = {
                'id': g.uid,
                'nick': nick,
                'show': show,
                'status': '',
                'pic_url': pic_url,
                'default_pic_url': gravatar_default(g.uid)
            }
            ticket = request.values.get('ticket', None)
            g.client = Client(user,
                              CONFIG['domain'],
                              CONFIG['apikey'],
                              ticket=ticket,
                              host=CONFIG['host'],
                              port=CONFIG['port'])
        else:
            print '403.request.endpoint:', request.endpoint
            abort(403)

    print 'END prepare(%s) [%s]' % (request.endpoint, str(datetime.now()))
Beispiel #5
0
def get_user(name):
    user = db.load_user(name)
    if user is None:
        print 'creating new user: ' + name
        return User(name, name, 1, 0, 0)
    return user
Beispiel #6
0
def prepare():
    print '========================================'
    print 'BEGIN prepare(%s) [%s]' % (request.endpoint, str(datetime.now()))

    if request.endpoint in UNSUPPORTED_ENDPOINTS:
        abort(403)
    
    data = request.cookies.get('auth', None)

    if request.endpoint not in (None, 'static'):
        print '<<< %s >>>' % request.endpoint
        print '<< request.values:: %r >>' % request.values
        print '<< cookie_data:: %r >>' % str(SecureCookie.unserialize(data, app.secret_key) if data is not None else 'None')
        print '--------------------'

    # For guest user
    if request.endpoint == 'init':
        if not data:
            vid = save_visitor(request.environ)
            g.uid = str(vid)
            g.is_login = False
        else:
            cookie = SecureCookie.unserialize(data, app.secret_key)
            g.uid = cookie.get('uid', None)
            
            if g.uid is None:
                vid = save_visitor(request.environ)
                g.uid = str(vid)
                g.is_login = False
            else:
                g.is_login = True
        
    elif request.endpoint in LOGIN_REQUIRED_ENDPOINTS:
        if data:
            # Get uid & ticket from cookie then new Client
            cookie = SecureCookie.unserialize(data, app.secret_key)
            print '[...].cookie: ', cookie
            g.cookie = cookie
            g.uid = cookie.get('uid', None)
            g.is_login = True
            g.is_guest = cookie.get('is_guest', None)
            show = cookie.get('show', 'available')

            record, nick, pic_url = None, None, None
            if g.is_guest:
                record = db.load_visitor(g.uid)
                nick = '%s(%s)' % (record['nick'], record['location'])
                pic_url = gravatar_default(g.uid)
            else:
                record = db.load_user(g.uid)
                nick = record['nick']
                pic_url = gravatar_url(record['email'])
                
            g.record = record
            print 'g.record:', g.record

            user = {
                'id' : g.uid,
                'nick': nick,
                'show': show,
                'status' : '',
                'pic_url':  pic_url,
                'default_pic_url': gravatar_default(g.uid)
            }
            ticket = request.values.get('ticket', None)
            g.client = Client(user, CONFIG['domain'], CONFIG['apikey'],
                              ticket=ticket, host=CONFIG['host'], port=CONFIG['port'])
        else:
            print '403.request.endpoint:', request.endpoint
            abort(403)

    print 'END prepare(%s) [%s]' % (request.endpoint, str(datetime.now()))
Beispiel #7
0
 def load(self):
     """Load the user denoted by self.id"""
     cur_doc = db.load_user(self.id)
     self.email = cur_doc['email']
     self.password = cur_doc['password']