Exemplo n.º 1
0
 def post(self, request, format=None):
     response = {}
     auth_token = request.auth
     if Token.objects.filter(key=auth_token).exists():
         token = Token.objects.get(key=auth_token)
         data = request.DATA
         invite_list = data.getlist('invite_list[]')
         time = datetime.fromtimestamp(float(data['time']))
         latitude = float(data['latitude'])
         longitude = float(data['longitude'])
         address = data['address']
         description = data['description']
         user_latitude = data.get('user_latitude')
         if user_latitude:
             user_latitude = float(user_latitude)
         user_longitude = data.get('user_longitude')
         if user_longitude:
             user_longitude = float(user_longitude)
         beacon = create_hotspot(token.user, latitude, longitude, address,
                                 description, time, invite_list,
                                 user_latitude, user_longitude)
         serializer = BeaconWithDealStatusSerializer(beacon)
         response['beacon'] = serializer.data
         return Response(response, status=status.HTTP_200_OK)
     else:
         response['message'] = "No user associated with token found"
         return Response(response, status=status.HTTP_401_UNAUTHORIZED)
Exemplo n.º 2
0
 def get(self, request, format=None):
     response = {}
     auth_token = request.auth
     if Token.objects.filter(key=auth_token).exists():
         token = Token.objects.get(key=auth_token)
         hotspots = get_hotspot_list(token.user)
         serializer = BeaconWithDealStatusSerializer(hotspots, many=True)
         return Response(serializer.data)
     else:
         response['message'] = "No user associated with token found"
         return Response(response, status=status.HTTP_401_UNAUTHORIZED)
Exemplo n.º 3
0
 def put(self, request, format=None):
     response = {}
     auth_token = request.auth
     if Token.objects.filter(key=auth_token).exists():
         token = Token.objects.get(key=auth_token)
         beacon = change_hotspot(token.user, request.DATA)
         serializer = BeaconWithDealStatusSerializer(beacon)
         response['beacon'] = serializer.data
         return Response(response, status=status.HTTP_200_OK)
     else:
         response['message'] = "No user associated with token found"
         return Response(response, status=status.HTTP_401_UNAUTHORIZED)
Exemplo n.º 4
0
 def get(self, request, format=None):
     response = {}
     auth_token = request.auth
     if str(auth_token) == settings.MOBILE_VIEW_TOKEN:
         status_id = int(request.QUERY_PARAMS['deal_status_id'])
         # status_id = simple_int_hash(status_id)
         deal_status = DealStatus.objects.select_related(
             'deal', 'beacon').get(pk=status_id)
         beacon = add_extra_hotspot_properties(deal_status.beacon)
         response['beacon'] = BeaconWithDealStatusSerializer(beacon).data
         response['contact_deal_status'] = DealStatusSerializer(
             deal_status).data
     return Response(response, status=status.HTTP_200_OK)
Exemplo n.º 5
0
 def post(self, request, format=None):
     response = {}
     user = Token.objects.get(key=request.auth).user
     isDeal = bool(int(request.DATA['is_deal']))
     if isDeal:
         deal, beacon = check_in_for_deal(user, request.DATA)
         beacon = add_extra_hotspot_properties(beacon)
         beacon.deal = deal
         serializer = BeaconWithDealStatusSerializer(beacon)
         response['beacon'] = serializer.data
     else:
         response['beacon'] = check_in_for_happy_hour(user, request.DATA)
     return Response(response, status=status.HTTP_200_OK)
Exemplo n.º 6
0
 def post(self, request, format=None):
     response = {}
     user = Token.objects.get(key=request.auth).user
     print str(request.DATA)
     deal, beacon, tab, tab_items = check_in_for_venue(user, request.DATA)
     beacon = add_extra_hotspot_properties(beacon)
     beacon.deal = deal
     serializer = BeaconWithDealStatusSerializer(beacon)
     response['beacon'] = serializer.data
     if tab:
         response['tab_items'] = TabItemSerializer(tab_items,
                                                   many=True).data
         response['tab'] = TabSerializer(tab).data
     return Response(response, status=status.HTTP_200_OK)
Exemplo n.º 7
0
 def post(self, request, format=None):
     response = {}
     user = Token.objects.get(key=request.auth).user
     invite_list = request.DATA.getlist('invite_list[]')
     deal_id = request.DATA['deal_id']
     timestamp = float(request.DATA['time'])
     image_url = get_image_url(request.DATA)
     print "Timestamp: " + str(timestamp)
     custom_message = request.DATA.get('custom_message')
     deal, beacon = apply_for_deal(user, deal_id, timestamp, invite_list,
                                   custom_message, image_url)
     beacon = add_extra_hotspot_properties(beacon)
     beacon.deal = deal
     serializer = BeaconWithDealStatusSerializer(beacon)
     response['beacon'] = serializer.data
     return Response(response, status=status.HTTP_200_OK)
Exemplo n.º 8
0
 def get(self, request, format=None):
     response = {}
     auth_token = request.auth
     if str(auth_token) == settings.MOBILE_VIEW_TOKEN:
         beacon = get_hotspot_for_mobile_view(request.QUERY_PARAMS)
         if beacon is not False:
             serializer = BeaconMobileSerializer(beacon)
             response['beacon'] = serializer.data
             return Response(response, status=status.HTTP_200_OK)
         else:
             response['message'] = "Beacon is expired"
             return Response(response,
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     elif Token.objects.filter(key=auth_token).exists():
         beacon_id = request.QUERY_PARAMS['beacon_id']
         beacon = get_hotspot(beacon_id)
         serializer = BeaconWithDealStatusSerializer(beacon)
         response['beacon'] = serializer.data
         return Response(response, status=status.HTTP_200_OK)
     else:
         response['message'] = "No user associated with token found"
         return Response(response, status=status.HTTP_401_UNAUTHORIZED)