Exemplo n.º 1
0
 def obj_create(self, bundle, request=None, **kwargs):
     try:
         bundle.data['date'] = datetime.datetime.strptime(
             bundle.data['date']['_d'], '%Y-%m-%dT%H:%M:%S.%fZ')
         val = super(ChatMessageResource,
                     self).obj_create(bundle, request, **kwargs)
     except Exception, e:
         logger.exception(e)
Exemplo n.º 2
0
    def obj_create(self, bundle, request=None, **kwargs):
        val = None
        try:
            bundle.data['date'] = datetime.datetime.strptime(
                bundle.data['date']['_d'], '%Y-%m-%dT%H:%M:%S.%fZ')
            val = super(ChatMessageResource, self).obj_create(
                bundle, request, **kwargs)

            notify_message(chat=val.obj)
        except Exception, e:
            logger.exception(e)
Exemplo n.º 3
0
    def obj_create(self, bundle, request=None, **kwargs):

        url = bundle.data['url']
        domain = url_domain(url)
          
        bundle.data["domain"] = domain
  
        title = bundle.data['title']
        start_time = bundle.data['start_time']
        start_event = bundle.data['start_event']
        end_time = bundle.data['end_time']
        end_event = bundle.data['end_event']
        favIconUrl = bundle.data.get('favIconUrl')
        src = bundle.data['src']
        
        end_time = datetime.datetime.strptime(end_time, '%Y-%m-%dT%H:%M:%S.%fZ').replace(tzinfo=pytz.utc)
        start_time = datetime.datetime.strptime(start_time, '%Y-%m-%dT%H:%M:%S.%fZ').replace(tzinfo=pytz.utc)
        
        message = bundle.data.get('message')
        
        if message and message.strip() == '':
            message = None
            
        if message:
            bundle.data.pop('message', None)

        try:
            exists = EyeHistory.objects.filter(user=request.user, url=url, title=title, src=src, favIconUrl=favIconUrl, start_time__gt=start_time-datetime.timedelta(minutes=1), start_event=start_event)
            if exists.count() > 0:
                eye_his = exists[0]
                eye_his.end_time = end_time
                eye_his.end_event = end_event
                elapsed_time = end_time - start_time
                eye_his.total_time = int(round((elapsed_time.microseconds / 1.0E3) + (elapsed_time.seconds * 1000) + (elapsed_time.days * 8.64E7)))
                eye_his.humanize_time = humanize_time(elapsed_time)
                eye_his.save()
                if message:
                    eye_message, created = EyeHistoryMessage.objects.get_or_create(eyehistory=eye_his, message=message)
            else:
               # save_raw_eyehistory(request.user, url, title, start_event, end_event, start_time, end_time, src, domain, favIconUrl)
                dup_histories = EyeHistory.objects.filter(user=request.user, url=url, title=title, end_time__gt=start_time-datetime.timedelta(minutes=5))
                if dup_histories.count() > 0:
                    obj = merge_histories(dup_histories, end_time, end_event)
                    if message:
                        eye_message, created = EyeHistoryMessage.objects.get_or_create(eyehistory=obj, message=message)
                else:
                    bundle_res = super(EyeHistoryResource, self).obj_create(bundle, request, user=request.user, **kwargs)
                    if message:
                        eye_message, created = EyeHistoryMessage.objects.get_or_create(eyehistory=bundle_res.obj, message=message)
                    return bundle_res;
        except Exception, e:
            logger.exception(e)
Exemplo n.º 4
0
    def obj_create(self, bundle, request=None, **kwargs):

        url = bundle.data['url']
        domain = url_domain(url)

        bundle.data["domain"] = domain

        title = bundle.data['title']
        start_time = bundle.data['start_time']
        start_event = bundle.data['start_event']
        end_time = bundle.data['end_time']
        end_event = bundle.data['end_event']
        favIconUrl = bundle.data.get('favIconUrl')
        src = bundle.data['src']

        end_time = datetime.datetime.strptime(
            end_time, '%Y-%m-%dT%H:%M:%S.%fZ').replace(tzinfo=pytz.utc)
        start_time = datetime.datetime.strptime(
            start_time, '%Y-%m-%dT%H:%M:%S.%fZ').replace(tzinfo=pytz.utc)

        message = bundle.data.get('message')

        if message and message.strip() == '':
            message = None

        if message:
            bundle.data.pop('message', None)

        try:
            exists = EyeHistory.objects.filter(user=request.user,
                                               url=url,
                                               title=title,
                                               src=src,
                                               favIconUrl=favIconUrl,
                                               start_time__gt=start_time -
                                               datetime.timedelta(minutes=1),
                                               start_event=start_event)
            if exists.count() > 0:
                eye_his = exists[0]
                eye_his.end_time = end_time
                eye_his.end_event = end_event
                elapsed_time = end_time - start_time
                eye_his.total_time = int(
                    round((elapsed_time.microseconds / 1.0E3) +
                          (elapsed_time.seconds * 1000) +
                          (elapsed_time.days * 8.64E7)))
                eye_his.humanize_time = humanize_time(elapsed_time)
                eye_his.save()
                if message:
                    eye_message, created = EyeHistoryMessage.objects.get_or_create(
                        eyehistory=eye_his, message=message)
            else:
                # save_raw_eyehistory(request.user, url, title, start_event, end_event, start_time, end_time, src, domain, favIconUrl)
                dup_histories = EyeHistory.objects.filter(
                    user=request.user,
                    url=url,
                    title=title,
                    end_time__gt=start_time - datetime.timedelta(minutes=5))
                if dup_histories.count() > 0:
                    obj = merge_histories(dup_histories, end_time, end_event)
                    if message:
                        eye_message, created = EyeHistoryMessage.objects.get_or_create(
                            eyehistory=obj, message=message)
                else:
                    bundle_res = super(EyeHistoryResource,
                                       self).obj_create(bundle,
                                                        request,
                                                        user=request.user,
                                                        **kwargs)
                    if message:
                        eye_message, created = EyeHistoryMessage.objects.get_or_create(
                            eyehistory=bundle_res.obj, message=message)
                    return bundle_res
        except Exception, e:
            logger.exception(e)