Ejemplo n.º 1
0
 def get_object(self):
     email = get_session_visitor_email(self.request)
     if email:
         try:
             # Visitor email logins will be valid for an hour
             return EmailVisitor.objects.get(email=email, last_login_at__gte=(
                 datetime.datetime.utcnow() - datetime.timedelta(hours=1)))
         except:
             pass
     return None
Ejemplo n.º 2
0
def search_logger(request):
    payload = request.data
    if payload and payload.get('search', None):
        user = None
        email = get_session_visitor_email(request)
        if request.user.is_authenticated:
            user = request.user
        SearchEvent.objects.create(user=user,
                                   email=email,
                                   query=payload.get('search', None),
                                   page=payload.get('page', 1) or 1)
        return Response('Logged')
    return Response('Failed to process', status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 3
0
def search_logger(request):
    payload = request.data
    if payload and payload.get('search', None):
        user = None
        email = get_session_visitor_email(request)
        if request.user.is_authenticated:
            user = request.user
        SearchEvent.objects.create(
            user=user, email=email, query=payload.get('search', None),
            page=payload.get('page', 1) or 1
        )
        return Response('Logged')
    return Response('Failed to process', status=status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 4
0
 def has_permission(self, request, view):
     if request.method in SAFE_METHODS and get_session_visitor_email(request):
         return True
     return IsAuthenticated().has_permission(request, view)