def set_bg(request): post = request.POST logging.debug('got post: %s' % post) xn = request.xiaonei user = get_or_create_xnuser(xn) selected_bg = post.get('selected[]') user.bg_style = int(selected_bg) if not user.app_users: user.app_users = [] user.put() logging.debug('set bg_style: %s' % selected_bg) refresh_user_cache(user) return xn.redirect(reverse_xn('canvas', xn.get_app_url()))
def post_invite(request): post = request.POST logging.debug('got post: %s' % post) xn = request.xiaonei user = get_or_create_xnuser(xn) invited = post.getlist('ids[]') if not user.num_invited: user.num_invited = len(invited) else: user.num_invited += len(invited) user.put() refresh_user_cache(user) url = reverse_xn('choose_bg', xn.get_app_url()) return xn.redirect(url)
def notify(request): xn = request.xiaonei post = request.POST if post.has_key('uids[]'): uids = post.getlist('uids[]') logging.debug('got uids: %s' % uids) #send notifications t = loader.get_template('notify_invite.xnml') try: c = Context({'uid':xn.uid, 'app_url':xn.get_app_url(), }) msg = t.render(c) logging.debug('Sending notification to %s...' % uids) rc = xn.notifications.send(to_ids=uids[:30], notification=msg) except XiaoneiError, e: logging.error('Error sending notification') logging.error(e) except:
# Record the error in your logs logging.error(message) # Display an informative message to the user logging.error('Storage quota exceeded! selected_uids and wall_name not saved') #shuffle it a bit! random.shuffle(selected) if user.bg_style: bg_patt_url = get_bg_style(user.bg_style) else: bg_patt_url = '' logging.debug('setting profile xnml') t = loader.get_template('profile.xnml') c = Context({'uids':selected, 'app_url':xn.get_app_url(), 'num_buddies':len(selected), 'wall_name':wall_name, 'username':user.username, 'media_url':settings.MEDIA_URL, 'bg_url':bg_patt_url, }) prof = t.render(c) # logging.debug('profile xnml: %s' % prof) try: rc = xn.profile.setXNML(profile=prof) logging.debug('setxnml response: %s ' % rc) except XiaoneiError, e: logging.error('failed to setxnml for %s' % user.username) logging.error(e) refresh_ok = False