Example #1
0
def refill_redis(profile_id):
    support_key = get_support_key(profile_id)
    promise_key = get_promise_key(profile_id)
    promise_ids = list(Promise.objects.filter(creator=profile_id).active().values_list('id', flat=True))
    connection.delete(promise_key)
    for prom_id in promise_ids:
        connection.lpush(promise_key, prom_id)
    promises_supported_ids = list(Promise.objects.filter(supporter__id=profile_id).values_list('id', flat=True))
    connection.delete(support_key)
    for prom_id in promises_supported_ids:
        connection.lpush(support_key, prom_id)
Example #2
0
    def save_promise(self, data):
        form = NewPromiseForm(data)
        if form.is_valid():
            new_promise = form.process(self.request)
            key = get_promise_key(self.request.user.profile.id)
            redis_connection.lpush(key, new_promise.id)

            # Posting to facebook
            if data.get('facebook_share') == 'on':
                post_data = social(new_promise, self.request.user.profile)
                msg = (u'I just created a promise on Promise.ly: '
                       u'{post_description}. Please support me! {link}')
                self.request.user.profile.wall_post(
                    self.request, msg.format(**post_data))

            # Logging stuff
            logger.log('promise', data={
                'creator_id': new_promise.creator.id,
                'promise_id': new_promise.id,
            })
            return new_promise
Example #3
0
 def update_redis(self, promise_id):
     """
     In Redis, adds this promise to the list of promises that this user supports.
     """
     key = get_support_key(self.request.user.profile.id)
     redis_connection.lpush(key, promise_id)