Ejemplo n.º 1
0
def vendor_login(request):
    vendor_type = request.GET['vendor_type']
    vendor_id = request.GET['vendor_id']
    access_token = request.GET['access_token']
    try:
        user_id = VendorLogin(vendor_type, vendor_id, access_token).login()
    except Exception as err:
        user_id = ""
        print err
    if user_id:
        try:
            user = django_user.objects.get(username=user_id)
        except django_user.DoesNotExist:
            user = django_user.objects.create_user(username=user_id)
        user.backend = "django.contrib.auth.backends.ModelBackend"
        auth.login(request, user)
        token = Token.objects.get_or_create(user=user)[0].key
        userInfo = UserInfoHelper().get_user_info(user_id)
        data = dict(
            user_id=user_id,
            token=token,
            nickname=userInfo['nickname'],
            img_url=userInfo['img_url']
        )
        return Response(data, status=status.HTTP_200_OK)
    else:
        return Response(status=status.HTTP_401_UNAUTHORIZED)
Ejemplo n.º 2
0
 def get_friend_list(self):
     friend_id_list = []
     for row in Person.objects.filter(requester_id=self.user_id,
                                      status='complete'):
         friend_id_list.append(row.receiver_id)
     for row in Person.objects.filter(receiver_id=self.user_id,
                                      status='complete'):
         friend_id_list.append(row.requester_id)
     friend_info_list = UserInfoHelper().get_user_info_list(friend_id_list)
     return friend_info_list
Ejemplo n.º 3
0
def invite_members_to_activity(request):
    user_id = request.user.username
    post_data = json.loads(request.body)
    event_id = post_data['event_id']
    members = post_data['members']
    ActivityOperation(user_id, event_id).invite_members_to_activity(members)
    device_token_list = UserInfoHelper().get_device_token_list_by_users(
        members)
    message = "activity"
    payload = dict(event_type=EVENT_TYPE, )
    NotificationHelper(device_token_list).send_notification_with_payload(
        message, payload)
    return Response(data=dict(result="success"), status=status.HTTP_200_OK)
Ejemplo n.º 4
0
 def create_reminder(self, content, receivers, time_dict, location_dict):
     event_info = dict(
         creator_id=self.__creator_id,
         creator_info=self.__creator_info,
         event_type=self.__event_type,
         created_time=self.__current_time,
         reminder_content=content,
         receivers=UserInfoHelper().get_user_info_list(receivers),
         time_dict=time_dict,
         location_dict=location_dict,
         receiver_status=dict.fromkeys(receivers, 0),
         status=0)
     self.__create(event_info, receivers)
     return self.__event_id
Ejemplo n.º 5
0
def create_topic(request):
    user_id = request.user.username
    post_data = json.loads(request.body)
    topic_name = post_data['topic_name']
    topic_description = post_data['topic_description']
    members = post_data['members']
    event_id = CreateEventHelper(user_id, EVENT_TYPE).create_topic(
        topic_name, topic_description, members)
    device_token_list = UserInfoHelper().get_device_token_list_by_users(
        members)
    message = topic_name
    payload = dict(event_type=EVENT_TYPE, )
    NotificationHelper(device_token_list).send_notification_with_payload(
        message, payload)
    return Response(data=dict(result="success", event_id=event_id),
                    status=status.HTTP_200_OK)
Ejemplo n.º 6
0
def complete_reminder_by_receiver(request):
    user_id = request.user.username
    post_data = json.loads(request.body)
    event_id = post_data['event_id']
    if 'message' in post_data:
        message = post_data['message']
    else:
        message = None
    creator_id = ReminderOperation(
        user_id, event_id).complete_reminder_by_receiver(message)
    device_token_list = UserInfoHelper().get_device_token_list_by_users(
        [creator_id])
    message = "complete"
    payload = dict(event_type=EVENT_TYPE, )
    NotificationHelper(device_token_list).send_notification_with_payload(
        message, payload)
    return Response(data=dict(result="success"), status=status.HTTP_200_OK)
Ejemplo n.º 7
0
def create_reminder(request):
    user_id = request.user.username
    post_data = json.loads(request.body)
    reminder_content = post_data['reminder_content']
    receivers = post_data['receivers']
    time_dict = post_data['time']
    location_dict = post_data['location']
    event_id = CreateEventHelper(user_id, EVENT_TYPE).create_reminder(
        reminder_content, receivers, time_dict, location_dict)
    device_token_list = UserInfoHelper().get_device_token_list_by_users(
        receivers)
    message = reminder_content
    payload = dict(event_type=EVENT_TYPE, )
    NotificationHelper(device_token_list).send_notification_with_payload(
        message, payload)
    return Response(data=dict(result="success", event_id=event_id),
                    status=status.HTTP_200_OK)
Ejemplo n.º 8
0
 def get_comments_by_event_id_list(self, event_id_list):
     comments_dict = dict()
     for row in Comment.objects.filter(event_id__in=event_id_list):
         event_id = row.event_id
         editor_user_id = row.user_id
         editor_info = UserInfoHelper().get_user_info(
             user_id=editor_user_id)
         content = row.content
         info_dict = dict(editor_info=editor_info,
                          action=row.action,
                          time=row.created_time)
         if content:
             info_dict['content'] = content
         if event_id in comments_dict:
             comments_dict[event_id].append(info_dict)
         else:
             comments_dict[event_id] = [info_dict]
     return comments_dict
Ejemplo n.º 9
0
def create_new_event(request):
    try:
        post_data = json.loads(request.body)
        user_id = request.user.username
        description = post_data['description']
        location = post_data['location']
        time = post_data['time']
        member_id_list = post_data['members']
        if user_id not in member_id_list:
            member_id_list.append(user_id)
        event_info = dict(
            creator_id=user_id,
            creator_info=UserInfoHelper().get_user_info(user_id),
            description=description,
            location=location,
            time=time,
            member_id_list=member_id_list,
        )
        EventHelper().create_new_event(event_info, member_id_list)
        return Response(data=dict(result="success"), status=status.HTTP_200_OK)
    except Exception as err:
        print(err)
        return Response(status=status.HTTP_500_INTERNAL_SERVER_ERROR)
Ejemplo n.º 10
0
 def __init__(self, user_id, event_type):
     self.__creator_id = user_id
     self.__creator_info = UserInfoHelper().get_user_info(self.__creator_id)
     self.__event_type = event_type
     self.__current_time = int(time.time())
     self.__event_id = str(uuid.uuid1())