Exemple #1
0
def profilefeeds_h_h(request):
    most_active_profile_talks_h_h = Feed.get_feeds().filter(Q(profile_pk__gt=0) & Q(user__profile__is_product=0)
                                                        & Q(to_user__profile__is_product=0)).order_by('likes').reverse()[:7]

    trending_people = Profile.objects.all().order_by('likes').reverse()[:10]
    
    human_human_profile_feeds = Feed.get_feeds().filter(Q(profile_pk__gt=0) & Q(user__profile__is_product=0)
                                                        & Q(to_user__profile__is_product=0))
    mostliked_talks = human_human_profile_feeds.order_by('likes').reverse()[:5]

    paginator = Paginator(human_human_profile_feeds, FEEDS_NUM_PAGES)
    human_human_profile_feeds = paginator.page(1) # still to be made 
    
    from_feed = -1

    if human_human_profile_feeds:        
        from_feed = human_human_profile_feeds[0].id 

    return render(request, 'profile_feeds/human_human.html', {
        'human_human_profile_feeds' : human_human_profile_feeds, # profile feeds list
        'most_active_profile_talks_h_h' : most_active_profile_talks_h_h,
        'trending_people' : trending_people,
        'from_feed' : from_feed,        
        'page': 1, 
        })
Exemple #2
0
def specialfeeds(request,id):
    print('inside feeds, feeds.view')
    print('gonna send special style_feeds via feeds.views.feeds')
    #online_users = User.objects.all().exclude(is_active=True)
    recent_challenge_feeds = Feed.get_feeds().filter(Q(is_challenge=1)
                                              # & Q(date=datetime.date.today())
                                                ).order_by('-date')[:5]    
    response_for = id
    style_feeds = Feed.get_feeds().filter(response_for=response_for)# 2nd lookup excludes all challenge feeds as they have is_challenge set to 1

    paginator = Paginator(style_feeds, FEEDS_NUM_PAGES)
    style_feeds = paginator.page(1)

    from_feed = -1
    if style_feeds: 
        from_feed = style_feeds[0].id

    response_for_feed = get_object_or_404(Feed, id=response_for)
    return render(request, 'feeds/special_feeds.html', {
        'style_feeds': style_feeds, 
        #'online_users' : online_users,
        'from_feed': from_feed, 
        'response_for_feed' : response_for_feed,   
        'recent_challenge_feeds' : recent_challenge_feeds,
        'page': 1,
        })
Exemple #3
0
def profile(request, username):
    page_user = get_object_or_404(User, username=username)
    # empty_fields = []
    # profile_fields = ['first_name','last_name','job','email','institute','status','birth_date','likes_most']
    # for field in profile_fields:
    #     if not page_user.profile.:
    #         empty_fields.append(field)

    profile_pk = page_user.profile.pk
    # making profile feeds pagewise
    profile_feeds = Feed.get_feeds().filter(profile_pk=profile_pk)
    paginator_profile = Paginator(profile_feeds, FEEDS_NUM_PAGES)
    profile_feeds = paginator_profile.page(1)
    from_feed = -1
    if profile_feeds:
        from_feed = profile_feeds[0].id
    return render(
        request,
        'core/profile.html',
        {
            'page_user': page_user,
            # 'user_feeds': user_feeds,
            # 'from_feed_user': from_feed_user, I'll make different view for user feeds
            # 'from_feed_profile':from_feed_profile, # no need to do that
            'from_feed':
            from_feed,  # just maintain same name from_feed this will make work of feeds.load view easy
            'profile_feeds': profile_feeds,
            # 'empty_fields' : empty_fields,
            'page': 1
        })
Exemple #4
0
def feeds(request):
    user = request.user
    feed_data = Feed.get_feeds(user)
    result = []

    for datum in feed_data:
        comment_data = Comments.get_comments(datum.feeds_id)
        feed_list = [datum, comment_data]
        result.append(feed_list)

    if request.method == 'POST' and user.is_authenticated:
        feeds_form = FeedsForm(request.POST)

        if feeds_form.is_valid():
            feed = feeds_form.cleaned_data.get('posts')
            Feed.objects.create(posts=feed, user=user)
            return redirect('/feeds/')
        else:
            return render(request, 'feeds/feeds.html', {'forms': feeds_form})
    else:
        feeds_form = FeedsForm()
        comments_form = CommentForm()
    return render(
        request, 'feeds/feeds.html', {
            'user': user,
            'feeds': result,
            'forms': feeds_form,
            'comments_form': comments_form,
        })
Exemple #5
0
def load(request):
    from_feed = request.GET.get('from_feed')
    page = request.GET.get('page')
    feed_source = request.GET.get('feed_source')
    all_feeds = Feed.get_feeds(from_feed)
    if feed_source != 'all':
        all_feeds = all_feeds.filter(user__id=feed_source)
    paginator = Paginator(all_feeds, FEEDS_NUM_PAGES)
    try:
        feeds = paginator.page(page)
    except PageNotAnInteger:
        return HttpResponseBadRequest()
    except EmptyPage:
        feeds = []
    html = ''
    csrf_token = (csrf(request)['csrf_token'])
    for feed in feeds:
        html = '{0}{1}'.format(
            html,
            render_to_string('feeds/partial_feed.html', {
                'feed': feed,
                'user': request.user,
                'csrf_token': csrf_token
            }))

    return HttpResponse(html)
Exemple #6
0
def challengefeeds(request):
    challenge_feeds = Feed.get_feeds().filter(is_challenge=1)
    paginator = Paginator(challenge_feeds, FEEDS_NUM_PAGES)
    challenge_feeds = paginator.page(1)

    from_feed = -1
    if challenge_feeds:
        from_feed = challenge_feeds[0].id
    most_liked_challenge_feeds = Feed.get_feeds().filter(Q(is_challenge=1)
                                              # & Q(date=datetime.date.today())
                                                ).order_by('likes').reverse()[:6]

    return render(request, 'feeds/challenge_feeds.html', {
        'challenge_feeds': challenge_feeds, 
        'from_feed': from_feed,
        'most_liked_challenge_feeds' : most_liked_challenge_feeds,
        'page': 1,
        })
Exemple #7
0
def profile(request, username):
    page_user = get_object_or_404(User, username=username)
    all_feeds = Feed.get_feeds().filter(user=page_user)
    paginator = Paginator(all_feeds, FEEDS_NUM_PAGES)
    feeds = paginator.page(1)
    from_feed = -1
    if feeds:
        from_feed = feeds[0].id
    return render(
        request, "core/profile.html", {"page_user": page_user, "feeds": feeds, "from_feed": from_feed, "page": 1}
    )
Exemple #8
0
def feeds(request):
    all_feeds = Feed.get_feeds()
    paginator = Paginator(all_feeds, FEEDS_NUM_PAGES)
    feeds = paginator.page(1)
    from_feed = -1
    if feeds:
        from_feed = feeds[0].id
    return render(request, 'feeds/feeds.html', {
        'feeds': feeds,
        'from_feed': from_feed,
        'page': 1,
        })
Exemple #9
0
def feeds(request):
    all_feeds = Feed.get_feeds()
    paginator = Paginator(all_feeds,8)
    feeds = paginator.page(1)
    from_feed = -1
    if feeds:
        from_feed = feeds[0].id
    return render_to_response('feed2.html', {
        'feeds': feeds,
        'from_feed': from_feed, 
        'page': 1,
        })
Exemple #10
0
def update(request):
    first_feed = request.GET.get('first_feed')
    last_feed = request.GET.get('last_feed')
    feed_source = request.GET.get('feed_source')
    feeds = Feed.get_feeds().filter(id__range=(last_feed, first_feed))
    if feed_source != 'all':
        feeds = feeds.filter(user__id=feed_source)
    dump = {}
    for feed in feeds:
        dump[feed.pk] = {'likes': feed.likes, 'comments': feed.comments}
    data = json.dumps(dump)
    return HttpResponse(data, content_type='application/json')
Exemple #11
0
def update(request):
    first_feed = request.GET.get('first_feed')
    last_feed = request.GET.get('last_feed')
    feed_source = request.GET.get('feed_source')
    feeds = Feed.get_feeds().filter(id__range=(last_feed, first_feed))
    if feed_source != 'all':
        feeds = feeds.filter(user__id=feed_source)
    dump = {}
    for feed in feeds:
        dump[feed.pk] = {'likes': feed.likes, 'comments': feed.comments}
    data = json.dumps(dump)
    return HttpResponse(data, content_type='application/json')
Exemple #12
0
def feeds(request):
    all_feeds = Feed.get_feeds()
    paginator = Paginator(all_feeds, FEEDS_NUM_PAGES)
    feeds = paginator.page(1)
    from_feed = -1
    if feeds:
        from_feed = feeds[0].id
    return render(request, 'feeds/feeds.html', {
        'feeds': feeds, 
        'from_feed': from_feed, 
        'page': 1,
        })
Exemple #13
0
def feeds(request): 
    print('inside feeds, feeds.view')
    print('gonna send style_feeds via feeds.views.feeds')
    #online_users =User.objects.all()
    recent_challenge_feeds = Feed.get_feeds().filter(Q(is_challenge=1)
                                              # & Q(date=datetime.date.today())
                                                ).order_by('-date')[:5]
    most_liked_challenge_feeds = Feed.get_feeds().filter(Q(is_challenge=1)
                                              # & Q(date=datetime.date.today())
                                                ).order_by('likes').reverse()
 
    if most_liked_challenge_feeds:
        randno =random.randint(1,20)
        response_for_id = most_liked_challenge_feeds[randno].id
        response_for_feed = get_object_or_404(Feed, id=response_for_id)
    else:
        response_for_feed = None 
        response_for_id = None 

    if response_for_id:
        style_feeds = Feed.get_feeds().filter(response_for=response_for_id)
    else:
        style_feeds = []

    paginator = Paginator(style_feeds, FEEDS_NUM_PAGES)
    style_feeds = paginator.page(1)

    from_feed = -1
    if style_feeds:
        from_feed = style_feeds[0].id

    return render(request, 'feeds/feeds.html', {
        'style_feeds': style_feeds,  #all feeds for response for feed
        #'online_users' : online_users,
        'from_feed': from_feed,
        'response_for_feed' : response_for_feed,
        'recent_challenge_feeds' : recent_challenge_feeds,
        'page': 1,

        })
Exemple #14
0
def profile(request, username):
    page_user = get_object_or_404(User, username=username)
    all_feeds = Feed.get_feeds().filter(user=page_user)
    paginator = Paginator(all_feeds, FEEDS_NUM_PAGES)
    feeds = paginator.page(1)
    from_feed = -1
    if feeds:
        from_feed = feeds[0].id
    return render(request, 'core/profile.html', {
        'page_user': page_user,
        'feeds': feeds,
        'from_feed': from_feed,
        'page': 1
    })
Exemple #15
0
def profile(request, username):
    page_user = get_object_or_404(User, username=username)
    all_feeds = Feed.get_feeds().filter(user=page_user)
    paginator = Paginator(all_feeds, FEEDS_NUM_PAGES)
    feeds = paginator.page(1)
    from_feed = -1
    if feeds:
        from_feed = feeds[0].id
    return render(request, 'core/profile.html',{
        'page_user': page_user,
        'feeds': feeds,
        'from_feed': from_feed,
        'page': 1
    })
Exemple #16
0
def profilefeeds_p_h(request):
    most_active_profile_talks_p_h = Feed.get_feeds().filter(Q(profile_pk__gt=0) & Q(user__profile__is_product=1)
                                                        & Q(to_user__profile__is_product=0)).order_by('likes').reverse()[:7]

    top_feeds_p_h = Feed.get_feeds().filter(Q(profile_pk__gt=0) & Q(user__profile__is_product=1)
                                                        & Q(to_user__profile__is_product=0)).order_by('likes').reverse()[:10]
    product_human_profile_feeds = Feed.get_feeds().filter(Q(profile_pk__gt=0) & Q(user__profile__is_product=1)
                                                        & Q(to_user__profile__is_product=0))
   
    paginator = Paginator(product_human_profile_feeds, FEEDS_NUM_PAGES)
    product_human_profile_feeds = paginator.page(1) # still to be made 
    
    from_feed = -1

    if product_human_profile_feeds:
        from_feed = product_human_profile_feeds[0].id 

    return render(request, 'profile_feeds/product_human.html', {
        'product_human_profile_feeds' : product_human_profile_feeds,
        'most_active_profile_talks_p_h' : most_active_profile_talks_p_h,             
        'top_feeds_p_h' : top_feeds_p_h,      
        'from_feed' : from_feed,  
        'page': 1, 
        })
Exemple #17
0
def challenges_for_page_user(request, username):
    page_user = get_object_or_404(User, username=username)
    challenges_for_page_user = Feed.get_feeds().filter(
        Q(is_challenge=1) & Q(challenge_to_user=page_user))

    from_feed = -1
    if challenges_for_page_user:
        from_feed = challenges_for_page_user[0].id
    return render(
        request, 'core/challenges_for_page_user.html', {
            'page_user': page_user,
            'challenges_for_page_user': challenges_for_page_user,
            'from_feed': from_feed,
            'page': 1,
        })
Exemple #18
0
def feeds(request):
    all_feeds = Feed.get_feeds()
    paginator = Paginator(all_feeds, FEEDS_NUM_PAGES)
    feeds = paginator.page(1)
    from_feed = -1
    if feeds:
        from_feed = feeds[0].id

    #import pdb; pdb.set_trace()
    return render(
        request, 'feeds.html', {
            'feeds': feeds,
            'from_feed': from_feed,
            'page': 1,
            'username': request.user.username,
        })
Exemple #19
0
def knowPeople(request):
    to_email = ['*****@*****.**']
    recent_challenge_feeds = Feed.get_feeds().filter(
        Q(is_challenge=1)
        # & Q(date=datetime.date.today())
    ).order_by('-date')
    if recent_challenge_feeds:
        users_challenges = recent_challenge_feeds[:20]
    else:
        users_challenges = []

    return render(
        request,
        'newsletter/knowpeople.html',
        {
            'users_challenges': users_challenges,
            # 'result' : result,
        })
Exemple #20
0
def responses_by_page_user(request, username):
    page_user = get_object_or_404(User, username=username)
    responses_by_page_user = Feed.get_feeds().filter(
        Q(profile_pk__gt=0) & Q(user=page_user))

    paginator = Paginator(responses_by_page_user, FEEDS_NUM_PAGES)
    responses_by_page_user = paginator.page(1)

    from_feed = -1
    if responses_by_page_user:
        from_feed = responses_by_page_user[0].id
    return render(
        request, 'page_user_feeds/responses_by_page_user.html', {
            'page_user': page_user,
            'responses_by_page_user': responses_by_page_user,
            'from_feed': from_feed,
            'page': 1,
        })
Exemple #21
0
def challenges_by_page_user(request, username):
    page_user = get_object_or_404(User, username=username)
    challenges_by_page_user = Feed.get_feeds().filter(
        Q(is_challenge=1) & Q(user=page_user))

    paginator = Paginator(challenges_by_page_user, FEEDS_NUM_PAGES)
    challenges_by_page_user = paginator.page(1)

    from_feed = -1
    if challenges_by_page_user:
        from_feed = challenges_by_page_user[0].id
    return render(
        request, 'page_user_feeds/challenges_by_page_user.html', {
            'page_user': page_user,
            'challenges_by_page_user': challenges_by_page_user,
            'from_feed': from_feed,
            'page': 1,
        })
Exemple #22
0
def profile_talks_by_page_user(request, username):
    page_user = get_object_or_404(User, username=username)
    profile_talks_by_page_user = Feed.get_feeds().filter(
        Q(profile_pk__gt=0) & (Q(user=page_user) | Q(to_user=page_user)))

    paginator = Paginator(profile_talks_by_page_user, FEEDS_NUM_PAGES)
    profile_talks_by_page_user = paginator.page(1)

    from_feed = -1
    if profile_talks_by_page_user:
        from_feed = profile_talks_by_page_user[0].id

    return render(
        request, 'page_user_feeds/profile_talks_by_page_user.html', {
            'page_user': page_user,
            'profile_talks_by_page_user': profile_talks_by_page_user,
            'from_feed': from_feed,
            'page': 1,
        })
Exemple #23
0
def product_product(request):
    feeds = Feed.get_feeds().filter(Q(to_user__profile__is_product=1) & Q(user__profile__is_product=1))

    if feeds: 
        partial_feed_page = 'feeds/partial_feed_profile.html'
        product_product_feeds = feeds
    else:
        product_product_feeds = []

    html = ''
    csrf_token = (csrf(request)['csrf_token'])
    for feed in product_product_feeds:
        html = '{0}{1}'.format(html,
                               render_to_string(partial_feed_page,
                                                {
                                                    'feed': feed,
                                                    'user': request.user,
                                                    'csrf_token': csrf_token,
                                                    }))

    return HttpResponse(html)
Exemple #24
0
def update(request):
    first_feed = request.GET.get('first_feed')
    last_feed = request.GET.get('last_feed')
    feed_source = request.GET.get('feed_source')
    # is_product_feed = request.GET.get('is_product_feed')
    profile_pk = request.GET.get('profile_pk')
    response_for_feed_id = request.GET.get('response_for_feed_id')
    page_user_name = request.GET.get('page_user_name')
    page_user = get_object_or_404(User, username=page_user_name)

    feeds = Feed.get_feeds().filter(id__range=(last_feed, first_feed))
    
    if feed_source == 'all_profile_feeds':
        feeds = feeds.filter(Q(profile_pk__gt=0)
                            &Q(user__profile__is_product=1)
                            )
    elif feed_source == 'all_product_profile_feeds':    
        feeds = feeds.filter(Q(profile_pk__gt=0)
                            & Q(user__profile__is_product=0)
                            )
    elif feed_source == 'user_profile_feeds':
        feeds = feeds.filter(profile_pk=profile_pk)
    
    elif feed_source == 'special_feeds':
        feeds = feeds.filter(response_for=response_for_feed_id)
 
    elif feed_source == 'challenge_feeds':
        feeds = feeds.filter(is_challenge=1)
 
    elif feed_source == 'user_feeds':
        feeds = feeds.filter(user__id=page_user.id)

    dump = {}
    for feed in feeds:
        dump[feed.pk] = {'likes': feed.likes, 'comments': feed.comments,}

    data = json.dumps(dump)
    return HttpResponse(data, content_type='application/json')
Exemple #25
0
def load(request):
    from_feed = request.GET.get('from_feed')
    page = request.GET.get('page')
    feed_source = request.GET.get('feed_source')
    all_feeds = Feed.get_feeds(from_feed)
    if feed_source != 'all':
        all_feeds = all_feeds.filter(user__id=feed_source)
    paginator = Paginator(all_feeds, FEEDS_NUM_PAGES)
    try:
        feeds = paginator.page(page)
    except PageNotAnInteger:
        return HttpResponseBadRequest()
    except EmptyPage:
        feeds = []
    html = u''
    csrf_token = unicode(csrf(request)['csrf_token'])
    for feed in feeds:
        html = u'{0}{1}'.format(html, render_to_string('feeds/partial_feed.html', {
            'feed': feed,
            'user': request.user,
            'csrf_token': csrf_token
            })
        )
    return HttpResponse(html)
Exemple #26
0
def introho(request):
    recent_challenge_feeds = Feed.get_feeds().filter(
        Q(is_challenge=1)
        # & Q(date=datetime.date.today())
    ).order_by('-date')[:5]
    all_profile_feeds = Feed.objects.all().filter(profile_pk__gt=0).exclude(
        user__profile__is_product=1)[:5]
    all_product_profile_feeds = Feed.objects.all().filter(
        Q(profile_pk__gt=0)
        & Q(user__profile__is_product=1))[:5]
    most_liked_challenge_feeds = Feed.get_feeds().filter(
        Q(is_challenge=1)
        # & Q(date=datetime.date.today())
    ).order_by('likes').reverse()

    if most_liked_challenge_feeds:
        most_liked_feed_today_id = most_liked_challenge_feeds[0].id
        most_liked_feed_today = get_object_or_404(Feed,
                                                  id=most_liked_feed_today_id)
    else:
        most_liked_feed_today = None
        most_liked_feed_today_id = None

    if most_liked_feed_today_id:
        style_feeds = Feed.get_feeds().filter(
            response_for=most_liked_feed_today_id)
    else:
        style_feeds = []

    if recent_challenge_feeds:
        users_challenges = Feed.get_feeds().filter(
            Q(is_challenge=1)
            # & Q(date=datetime.date.today())
        ).order_by('-date')[:20]
    else:
        users_challenges = []

    # images=[]
    # if request.user.is_authenticated:
    #     users_challenges = Feed.get_feeds().filter(Q(is_challenge=1)
    #                                             & Q(user=request.user)
    #                                         )[:5]
    #     if users_challenges:
    #         images=[]
    #         for feed in users_challenges:
    #             if feed.post_pic:
    #                 images.append(feed.post_pic.url)

    trending_style_copies = Feed.get_feeds().filter(response_for__gt=0)[:5]
    hohos_user = get_object_or_404(User, username='******')
    hohos_prfile_pk = hohos_user.id
    hohos_feeds = Feed.get_feeds().filter(profile_pk=hohos_prfile_pk)[:5]

    return render(
        request, 'newsletter/introho.html', {
            'style_feeds': style_feeds,
            'all_profile_feeds': all_profile_feeds,
            'all_product_profile_feeds': all_product_profile_feeds,
            'most_liked_feed_today': most_liked_feed_today,
            'most_liked_challenge_feeds': most_liked_challenge_feeds,
            'trending_style_copies': trending_style_copies,
            'hohos_feeds': hohos_feeds,
            'recent_challenge_feeds': recent_challenge_feeds,
            'users_challenges': users_challenges,
        })
Exemple #27
0
def signup_products(request):
    print('inside signup_products, authentication.view')

    recent_challenge_feeds = Feed.get_feeds().filter(
        is_challenge=1).order_by('-date')

    if recent_challenge_feeds:
        users_challenges = recent_challenge_feeds
    else:
        users_challenges = []

    if request.method == 'POST':
        form = SignUpForm(request.POST)
        flag = 'products'
        print('flag', 'products')
        if not form.is_valid():
            return render(
                request, 'authentication/signup.html', {
                    'form_products': form,
                    'flag': flag,
                    'users_challenges': users_challenges,
                })

        else:
            is_product = request.POST.get('is_product')
            username = form.cleaned_data.get('username')
            email = form.cleaned_data.get('email')
            password = form.cleaned_data.get('password')
            User.objects.create_user(username=username,
                                     password=password,
                                     email=email)
            user = authenticate(username=username, password=password)

            profile_pk = user.profile.pk
            print(profile_pk, user.username)

            if is_product:
                print('user is a product')
                user.profile.is_product = 1
                user.save()
            login(request, user)

            profile_pk = user.profile.pk  # profile_pk of newley registered user
            profile = user.profile  # profile object of newly registered user
            print(profile_pk, user.username)

            hohos = get_object_or_404(User, username='******')
            hohoshelp = get_object_or_404(User, username='******')
            like_by_hohos = Activity(activity_type=Activity.LIKE_PROFILE,
                                     profile=profile_pk,
                                     user=hohos)
            like_by_hohoshelp = Activity(activity_type=Activity.LIKE_PROFILE,
                                         profile=profile_pk,
                                         user=hohoshelp)
            like_by_hohos.save()
            like_by_hohoshelp.save()
            hohos.profile.notify_liked_profile(
                profile)  # hohos to=> user(newly registered)
            hohoshelp.profile.notify_liked_profile(
                profile)  # hohoshelp to user(newly registered)

            like = Activity(activity_type=Activity.LIKE_PROFILE,
                            profile=profile_pk,
                            user=user)
            like.save()

            to_user = user
            from_user = get_object_or_404(User, username='******')
            if from_user:
                welcome_post = 'Hey ' + to_user.username + ' Get ready to solve your customers issues.'
                feed = Feed()
                feed.user = from_user
                feed.to_user = to_user
                to_user_profile_pk = profile_pk  # newley registered users profile pk
                feed.profile_pk = to_user_profile_pk
                feed.post = welcome_post
                feed.save()
                wrote_on_profile = Activity(
                    activity_type=Activity.WROTE_ON_PROFILE,
                    profile=to_user_profile_pk,
                    user=from_user)
                wrote_on_profile.save()
                hohos.profile.notify_wrote_on_profile(profile, feed)

            messages.add_message(
                request, messages.SUCCESS, 'Hey ,' + user.username +
                '\n Its what people and products are talking about, \
                                 See what people are talking with your friend products\
                                  You are live now you can talk to the people who use you\
                                  and people can talk you on your live profile!'
            )

            from_email = django_settings.EMAIL_HOST_USER
            to = [email]
            subject = 'Welcome at hohos ' + user.username
            message = 'Dear '+user.username+'!\n'\
                          + 'We are happy to see you on hohos.\n' \
                          + 'You will have lots of amazing experience along the time. It will get better if '\
                          + 'people using you start sharing their feedback\n'\
                          + 'This will help you become better and more efficient'\
                          + 'This way both you and customers may get the best of available\n'\
                          + 'Moreover you can become the part of OpenChat community at - hohos.tech/feeds/openchat/h_h/ '\
                          + ' here You can talk to your daily use products too. Which makes things a lot easier.\n\n'\
                          + 'Build you profile for better interaction.'\
                          + 'First hohos.tech/login and then move to hohos.tech/settings/human/\n\n'\
                          + 'Best wishes!\n'\
                          + '-Team iA at hohos.tech'
            if to:
                try:
                    send_mail(subject,
                              message,
                              from_email,
                              to,
                              fail_silently=False)
                except:
                    pass

            print('inside signup, authentication.views')
            print('user\'s pk %d' % (user.pk))
            return redirect('/feeds/openchat/h_p/')

    else:
        return render(request, 'authentication/signup.html', {
            'form_products': SignUpForm(),
            'users_challenges': users_challenges,
        })
Exemple #28
0
def signup_human(request):
    print('inside signup_human, authentication.view')
    recent_challenge_feeds = Feed.get_feeds().filter(
        is_challenge=1).order_by('-date')[:20]

    if recent_challenge_feeds:
        users_challenges = recent_challenge_feeds
    else:
        users_challenges = []

    if request.method == 'POST':
        form = SignUpForm(request.POST)
        flag = 'human'
        print('flag', flag)
        if not form.is_valid():
            return render(
                request, 'authentication/signup.html', {
                    'form_human': form,
                    'flag': flag,
                    'users_challenges': users_challenges,
                })

        else:
            username = form.cleaned_data.get('username')
            email = form.cleaned_data.get('email')
            password = form.cleaned_data.get('password')
            gender = form.cleaned_data.get('gender')
            User.objects.create_user(
                username=username, password=password,
                email=email)  # removed email at signup to make signup fast
            user = authenticate(username=username, password=password)

            user.profile.gender = gender
            user.save()
            login(request, user)

            profile_pk = user.profile.pk  # profile_pk of newley registered user
            profile = user.profile  # profile object of newly registered user
            print(profile_pk, user.username)

            hohos = get_object_or_404(User, username='******')
            hohoshelp = get_object_or_404(User, username='******')
            like_by_hohos = Activity(activity_type=Activity.LIKE_PROFILE,
                                     profile=profile_pk,
                                     user=hohos)
            like_by_hohoshelp = Activity(activity_type=Activity.LIKE_PROFILE,
                                         profile=profile_pk,
                                         user=hohoshelp)
            like_by_hohos.save()
            like_by_hohoshelp.save()
            hohos.profile.notify_liked_profile(
                profile)  # hohos to=> user(newly registered)
            hohoshelp.profile.notify_liked_profile(
                profile)  # hohoshelp to user(newly registered)

            like = Activity(activity_type=Activity.LIKE_PROFILE,
                            profile=profile_pk,
                            user=user)
            like.save()

            to_user = user
            from_user = hohos  # get_object_or_404(User, username='******')
            wel_post = ''
            welcome1= ' You seem to love facial expressions?? You can Make it awesome!\n'\
                      +'Challenge your friends and imitate them. Sounds cool??\n'\
                      +'Welcome!\nhttp://www.hohos.tech/feeds/challenge/'
            welcome2= ' Get ready to speak through your awesome facial expressions...\n'\
                      +'http://www.hohos.tech/feeds/'
            welcome3= ' You are awesome! \n'\
                      +'Imitate your friends expressions and challenge them yours.'\
                      +'You should try it once!\n'\
                      +'Its amazing!\nhttp://www.hohos.tech/feeds/'

            post_no = random.randint(1, 3)
            if post_no == 1: wel_post = welcome1
            elif post_no == 2: wel_post = welcome2
            else: wel_post = welcome3

            if from_user:
                welcome_post = 'Hey ' + to_user.username + wel_post
                feed = Feed()
                feed.user = from_user
                feed.to_user = to_user
                to_user_profile_pk = profile_pk  # newley registered users profile pk
                feed.profile_pk = to_user_profile_pk
                feed.post = welcome_post
                feed.save()
                wrote_on_profile = Activity(
                    activity_type=Activity.WROTE_ON_PROFILE,
                    profile=to_user_profile_pk,
                    user=from_user)
                wrote_on_profile.save()
                hohos.profile.notify_wrote_on_profile(profile, feed)

            messages.add_message(
                request, messages.SUCCESS,
                'Get ready to show your own flavours!!' + user.username +
                '\n If you want to make people make a special pose for you, \
                                 just share that and see if your friends could make that better?\
                                  you Can visit your friends profile and say something\
                                  about him/her!')
            from_email = django_settings.EMAIL_HOST_USER
            to = [email]
            subject = 'Welcome at hohos ' + user.username
            message = 'Dear '+user.username+'!\n'\
                          + 'We are happy to see you on hohos.tech\n' \
                          + 'You will have lots of amazing experience along the time. It will get better if '\
                          + 'you participate in share and imitate culture at hohos.tech/feeds/\n'\
                          + 'Challenge your facial expressions, let your likers and other people imitate them.'\
                          + 'Because its awesome to see the different versions of same thing.\n'\
                          + 'This becomes rejoicing when your own friends imitate you.\n\n'\
                          + 'Moreover you can become the part of OpenChat community at - hohos.tech/feeds/openchat/h_h/ '\
                          + ' here You can talk to your daily use products too. Which makes things a lot easier.\n\n'\
                          + 'Build you profile for better interaction.'\
                          + 'First hohos.tech/login and then move to hohos.tech/settings/human/\n\n'\
                          + 'Best wishes!\n'\
                          + '-Team iA at hohos.tech'
            if to:
                try:
                    send_mail(subject,
                              message,
                              from_email,
                              to,
                              fail_silently=False)
                except:
                    pass

            # print('inside signup, authentication.views')
            # print('user\'s pk %d'%(user.pk))
            return redirect('feeds')

    else:
        return render(request, 'authentication/signup.html', {
            'form_human': SignUpForm(),
            'users_challenges': users_challenges,
        })
Exemple #29
0
def load(request):
    page = request.GET.get('page')

    # is_product_feed = request.GET.get('is_product_feed')
    from_feed = request.GET.get('from_feed') 
    all_feeds = Feed.get_feeds(from_feed) # to load the feeds older to feed with id from_feed
    feed_source = request.GET.get('feed_source')   
    profile_pk = request.GET.get('profile_pk') # it will come through only on  profile_feeds, Product_profile_feeds pages
    response_for_feed_id = request.GET.get('response_for_feed_id')
    page_user_name = request.GET.get('page_user_name')

    if page_user_name:
        page_user = get_object_or_404(User, username=page_user_name)
    # following for main feed line, that is styles copy feed
    # actually theres no need to get feed_from differently from all pages
    # just use same name from_feed for every page, it'll make the job of load function easy
    # from_feed_profile = request.GET.get('from_feed_profile')
 
    if feed_source == 'profile_talks_by_page_user':
        print('feed_source is : profile_talks_by_page_user')
        partial_feed_page = 'feeds/partial_feed_profile_activities.html'
        all_feeds = all_feeds.filter(Q(profile_pk__gt=0) & (Q(user=page_user) | Q(to_user=page_user)))

    elif feed_source == 'responses_by_page_user':
        print('feed_source is : responses_by_page_user')
        partial_feed_page = 'feeds/partial_feeds_feed.html'
        all_feeds = all_feeds.filter(Q(response_for__gt=0) & Q(user=page_user))

    elif feed_source == 'challenges_by_page_user':
        print('feed_source is : challenges_by_page_user')
        partial_feed_page = 'feeds/partial_challenge_feed.html'
        all_feeds = all_feeds.filter(Q(is_challenge=1) & Q(user=page_user))

    elif feed_source == 'human_human_profile_feeds':
        print('feed_source is : human_human_profile_feeds')
        partial_feed_page = 'feeds/partial_feed_profile.html'
        all_feeds = all_feeds.filter(Q(profile_pk__gt=0) & Q(user__profile__is_product=0)
                                                        & Q(to_user__profile__is_product=0))

    elif feed_source == 'product_product_profile_feeds':
        print('feed_source is: product_product_profile_feeds')
        partial_feed_page = 'feeds/partial_feed_profile.html'
        all_feeds = all_feeds.filter(Q(profile_pk__gt=0) & Q(user__profile__is_product=1)
                                                        & Q(to_user__profile__is_product=1))

    elif feed_source == 'human_product_profile_feeds':
        print('feed_source is: human_product_profile_feeds')
        partial_feed_page = 'feeds/partial_feed_profile.html'
        all_feeds = all_feeds.filter(Q(profile_pk__gt=0) & Q(user__profile__is_product=0)
                                                        & Q(to_user__profile__is_product=1))

    elif feed_source == 'product_human_profile_feeds':
        print('feed_source is: product_human_profile_feeds')
        partial_feed_page = 'feeds/partial_feed_profile.html'
        all_feeds = all_feeds.filter(Q(profile_pk__gt=0) & Q(user__profile__is_product=1)
                                                        & Q(to_user__profile__is_product=0))

    elif feed_source == 'user_profile_feeds':  # come from profile.html page
        print('feed_source is: user_profile_feeds')
        all_feeds = all_feeds.filter(profile_pk=profile_pk)
        partial_feed_page = 'feeds/partial_feed_profile_page_user.html' # this all_feeds list has all the feeds related profile page he'/she's is on now

    # comes from user's activity page 
    elif feed_source == 'profile_talks_by_page_user': 
        print('feed_source is: profile_talks_by_page_user')
        all_feeds = all_feeds.filter(Q(user__id=page_user.id) & Q(profile_pk__gt=0)) # all feeds by anyuser containing styles if any shown by user and the feeds user said anything about their friends profiles
        partial_feed_page = 'feeds/partial_feed_profile.html'

    # elif feed_source == 'challenges_by_page_user': # comes from user's activity page
    #     print('feed_source is: challenges_by_page_user')
    #     all_feeds = all_feeds.filter(Q(user__id=page_user.id) & Q(is_challenge=1)) # all feeds by anyuser containing styles if any shown by user and the feeds user said anything about their friends profiles
    #     partial_feed_page = 'feeds/partial_challenge_feed.html'
    
    elif feed_source == 'responses_by_page_user': # comes from user's activity page
        print('feed_source is: responses_by_page_user')
        all_feeds = all_feeds.filter(Q(user__id=page_user.id) & Q(response_for__gt=0)) # all feeds by anyuser containing styles if any shown by user and the feeds user said anything about their friends profiles
        partial_feed_page = 'feeds/partial_feeds_feed.html'



    elif feed_source == 'challenge_feeds': # come from challenge_feeds page
        print('feed_source is: challenge_feeds')
        all_feeds = all_feeds.filter(is_challenge=1) # else all_feeds will be for style feedline which means it should not have any profile feedlines feed
        partial_feed_page = 'feeds/partial_challenge_feed.html'
    
    elif feed_source == 'special_feeds': 
        if response_for_feed_id:
            print('feed_source is: special_feeds with response_for_id:', response_for_feed_id)
            all_feeds = all_feeds.filter(response_for=response_for_feed_id)
            partial_feed_page = 'feeds/partial_feeds_feed.html'
        else:
            all_feeds = []
    for feed in all_feeds:
        print(feed.pk,feed.profile_pk,feed_source, feed.is_challenge)

    paginator = Paginator(all_feeds, FEEDS_NUM_PAGES)
    try:
        feeds = paginator.page(page)
    except PageNotAnInteger:
        return HttpResponseBadRequest()
    except EmptyPage:
        feeds = []
        
    html = ''
    csrf_token = (csrf(request)['csrf_token'])
    for feed in feeds:
        html = '{0}{1}'.format(html,
                               render_to_string(partial_feed_page,
                                                {
                                                    'feed': feed,
                                                    'user': request.user,
                                                    'csrf_token': csrf_token,
                                                    }))

    return HttpResponse(html)