def getRelationships(request, receivers): receivers_infos = [] my_account = siteaction.getLoggedInAccount(request) if not my_account: for username in receivers: receivers_infos.append(dataplus.listToString([username,'anyone'])) elif my_account.account_type == 'U': friends = models.User.objects.filter(friends__username=my_account.username).values('username') friends_usernames = [dict.values()[0] for dict in friends] for username in receivers: if username == my_account.username: receivers_infos.append(dataplus.listToString([username,'self'])) elif username in friends_usernames: receivers_infos.append(dataplus.listToString([username,'friend'])) else: receivers_infos.append(dataplus.listToString([username,'anyone'])) elif my_account.account_type == 'R': for username in receivers: receivers_infos.append(dataplus.listToString([username,'recruiter'])) return receivers_infos
def inviteUsers(request, session_id): try: chat_id = dataplus.dictGetVal(request.REQUEST, 'chatId', '') receivers = dataplus.dictGetVal(request.REQUEST, 'receivers', '') text = dataplus.dictGetVal(request.REQUEST, 'text', '') if not chat_id: return ajaxian.getFailureResp('error:invalid_chatId') if not receivers: return ajaxian.getFailureResp('error:empty_receivers') receivers = receivers.split(',') receivers_infos = getRelationships(request, receivers) status = livewire_client.command('inviteUsers', [session_id, chat_id, dataplus.listToString(receivers_infos), text]) if status == 'success': return ajaxian.getSuccessResp('') else: return ajaxian.getFailureResp(status) except: return ajaxian.getFailureResp('error:unknown')
def getOnlineStatus(request, usernames, relationship='', session_id=None): try: if not session_id: session_id = dataplus.dictGetVal(request.COOKIES, 'session_id', '') member_infos = [] if relationship: member_infos = [dataplus.listToString([username,relationship]) for username in usernames] else: member_infos = getRelationships(request, usernames) members_online_status = livewire_client.query('getOnlineStatus', [session_id, dataplus.listToString(member_infos)]) members_online_status = cPickle.loads(members_online_status) return members_online_status except: dict = {} for username in usernames: dict[username] = False return dict
def modifySalaryRanges(): for c in models.Country.objects.all().order_by('id'): if c.code == 'IN': new_ranges = ['1,20,000', '2,00,000', '3,00,000', '4,50,000', '6,00,000', '8,00,000', '10,00,000', '13,00,000', '17,00,000', '25,00,000'] else: ranges = c.salary_brackets.split(',') new_ranges = [] for num in ranges: ctr = 0 l = [] for ch in reversed(num): if ctr and ctr % 3 == 0: l.append(',') l.append(ch) ctr += 1 new_ranges.append(string.join(l,'')[::-1]) c.salary_brackets = dataplus.listToString(new_ranges) c.save() print c.name, c.salary_brackets
def sendMessage(request, session_id): try: chat_id = dataplus.dictGetVal(request.REQUEST, 'chatId', '') text = dataplus.dictGetSafeVal(request.REQUEST, 'text', '') receivers = dataplus.dictGetVal(request.REQUEST, 'receivers', '') last_message_id = dataplus.dictGetVal(request.REQUEST, 'lastMessageId','0') if not chat_id: return ajaxian.getFailureResp('error:invalid_chatId') if receivers: receivers = dataplus.listToString(receivers.split(',')) data = livewire_client.query('getChatMessages', [session_id, chat_id, last_message_id]) if data.startswith('error:'): return ajaxian.getFailureResp(data) data = cPickle.loads(data) result = livewire_client.command('sendMessage',[session_id, chat_id, text, receivers]) if result.startswith('error:'): return ajaxian.getFailureResp(result) return ajaxian.getSuccessResp(data) except: return ajaxian.getFailureResp('error:unknown')