def api_request(request): if request.method == 'GET': command = request.GET.get('c') if command == 'user': param = request.GET.get('p') if validate_ip(param): ibm = IBSManager() return HttpResponse(ibm.get_username_from_ip(param)) elif command == 'gift': uid = request.GET.get('user') days = request.GET.get('days') package = request.GET.get('pack') if not validate_integer(uid): return HttpResponse('') if not validate_integer(days): return HttpResponse('') if not validate_integer(package): return HttpResponse('') if User.objects.filter( fk_ibs_user_info_user__ibs_uid=uid).exists(): # if not UserPollTempDB.objects.filter(uid=uid).exists(): # tmp = UserPollTempDB() # tmp.uid = int(uid) # tmp.save() send_gift_for_users.delay( User.objects.filter(fk_ibs_user_info_user__ibs_uid=uid), int(days), int(package), False) return HttpResponse('1') elif command == 'poll': return api_request_accept_poll(request) elif command == 'poll_user': return api_request_find_user(request) return HttpResponse('') else: return HttpResponse('')
def get_user_name_from_ip(request): ibs = IBSManager() try: ip = get_client_ip(request) res = ibs.get_username_from_ip(ip) failed = read_config('service_failed_users') failed_ids = failed.split(',') tmp_res = None for f in failed_ids: if User.objects.filter(username=res).exists(): u = User.objects.get(username=res) if u.pk == int(f): if IBSUserInfo.objects.filter(user=f).exists(): failed_ibs_id = IBSUserInfo.objects.get(user=f).ibs_uid else: failed_ibs_id = ibs.get_user_id_by_username(res) ras_username = get_username_from_ras( ip, int(failed_ibs_id)) return ras_username else: tmp_res = res else: return None return tmp_res except Exception as e: print e.message res = None return res