Example #1
0
def index(request):

    # EDIT PROFILE CODE
    user_profile = Profile.objects.get(user = request.user)
    if request.method == 'POST':
        if 'edit_profile' in request.POST:
            update_form = ProfileUpdateForm(data = request.POST, files= request.FILES, instance=user_profile)
            if update_form.is_valid():
                profile = update_form.save(commit=False)
                if 'image' in request.FILES:
                    profile.image = request.FILES['image']
                update_form.save()
    update_form = ProfileUpdateForm(instance=user_profile)

    # GET CONTACT SEARCH DATA
    all_relations = request.user.profile.get_friends() # Get all relationship objects
    searched_contacts, searched_my_contacts = get_contacts(request)
    friends = get_friends_profiles_from_relations(request, all_relations)
    online_relations, offline_relations = get_online_users(request, friends)
    if searched_my_contacts:
        online_relations = []
        offline_relations = []
    received_requests, sent_requests = request.user.profile.get_pending_requests()

    context = {
        'friends': all_relations,
        'online_friends': online_relations,
        'offline_friends': offline_relations,
        'update_form':update_form,
        'contacts': searched_contacts,
        'searched_contacts': searched_my_contacts,
        'received_requests':received_requests,
        'sent_requests':sent_requests,
    }
    return render(request, 'chat/index.html', context)
Example #2
0
    def post(self, request, *args, **kwargs):
        profile = request.user.base_profile()
        form = ProfileUpdateForm(request.POST, instance=profile)
        next_url = request.GET.get('next', None)

        if form.is_valid():
            profile = form.save(commit=False)
            profile.is_fresh = False
            profile.save()
            messages.success(request, 'Profile updated!', extra_tags='success')
            if next_url:
                return HttpResponseRedirect(next_url)
            else:
                return HttpResponseRedirect(reverse('profile_settings_basic_info_view'))
        else:
            context = {
                'page_title': 'Update Basic Info',
                'location': 'profile_settings',
                'sublocation': 'basic',
                'profile': profile,
                'form': form
            }

            return render(request, 'neo/profile/settings/basic_info.html', context)
Example #3
0
    def get(self, request, *args, **kwargs):
        profile = request.user.base_profile()
        form = ProfileUpdateForm(instance=profile)
        next_url = request.GET.get('next', None)

        context = {
            'page_title': 'Update Basic Info',
            'location': 'profile_settings',
            'sublocation': 'basic',
            'profile': profile,
            'form': form,
            'next_url': next_url
        }

        return render(request, 'neo/profile/settings/basic_info.html', context)
Example #4
0
def user_settings(request):
    if request.method == "POST":
        user_form = UserUpdateForm(request.POST, instance=request.user)
        profile_form = ProfileUpdateForm(
            request.POST,
            request.FILES,
            instance=Profile.objects.get(user=request.user))
        if user_form.is_valid() and profile_form.is_valid():
            user_form.save()
            profile_object = profile_form.save(commit=False)
            # can do anything between here
            profile_object.save()
            profile_form.save_m2m()
            messages.success(request, "Your profile has been updated")
            return redirect('home')
    else:
        user_form = UserUpdateForm(instance=request.user)
        profile_form = ProfileUpdateForm(instance=Profile.objects.get(
            user=request.user))

    user_profile_forms = {'user_form': user_form, 'profile_form': profile_form}

    return render(request, 'profiles/settings.html', user_profile_forms)
def profile(request):
    if request.method == 'POST':
        u_form = UserUpdateForm(request.POST, instance=request.user)
        p_form = ProfileUpdateForm(request.POST,
                                   request.FILES,
                                   instance=request.user.profile)
        if u_form.is_valid() and p_form.is_valid():
            u_form.save()
            p_form.save()
            messages.success(request, f'Your account has been updated!')
            return redirect('profile')
    else:
        u_form = UserUpdateForm(instance=request.user)
        p_form = ProfileUpdateForm(instance=request.user.profile)

    context = {
        'u_form': u_form,
        'p_form': p_form,
    }
    return render(request, 'users/profile.html', context)
Example #6
0
def profile_update_view(request, *args, **kwargs):
    if not request.user.is_authenticated:  # is_authenticated()
        return redirect("/login?next=/profile/update")
    user = request.user
    user_data = {
        "first_name": user.first_name,
        "last_name": user.last_name,
        "email": user.email
    }
    #     my_profile = user.profile
    #     form = ProfileForm(request.POST or None, instance=my_profile, initial=user_data)
    #     if form.is_valid():
    #         profile_obj = form.save(commit=False)
    #         first_name = form.cleaned_data.get('first_name')
    #         last_name = form.cleaned_data.get('last_name')
    #         email = form.cleaned_data.get('email')
    #         user.first_name = first_name
    #         user.last_name = last_name
    #         user.email = email
    #         user.save()
    #         profile_obj.save()
    #     context = {
    #         "form": form,
    #         "btn_label": "Save",
    #         "title": "Update Profile"
    #     }
    #     return render(request, "profiles/form.html", context)
    u_form = UserUpdateForm(request.POST, instance=request.user)
    p_form = ProfileUpdateForm(request.POST,
                               request.FILES,
                               instance=request.user.profile)
    if u_form.is_valid() and p_form.is_valid():
        u_form.save()
        p_form.save()

    else:
        u_form = UserUpdateForm(instance=request.user)
        p_form = ProfileUpdateForm(instance=request.user.profile)
    context = {'u_form': u_form, 'p_form': p_form}

    return render(request, "profiles/form.html", context)
Example #7
0
def profile(request):
    if request.method == 'POST':
        u_form = UserUpdateForm(request.POST, instance=request.user)
        p_form = ProfileUpdateForm(request.POST,
                                   request.FILES,
                                   instance=request.user.profile)
        if u_form.is_valid() and p_form.is_valid():
            u_form.save()
            p_form.save()
            return redirect('profile')

    else:
        u_form = UserUpdateForm(instance=request.user)
        p_form = ProfileUpdateForm(instance=request.user.profile)

    context = {
        'u_form': u_form,
        'p_form': p_form
    }

    return render(request, "accounts/auth.html", context)
Example #8
0
def update(request, profile):
    form = ProfileUpdateForm(instance=profile)
    pwform = ChangePasswordForm()

    if request.method == 'POST':
        form = ProfileUpdateForm(request.POST, request.FILES, instance=profile)
        pwform = ChangePasswordForm()
        if form.is_valid():
            profile = form.save()
            pwform.save()
            return redirect(profile)

    return render(request, 'profiles/update.html',
                  dict(
                      profile=profile,
                      form=form,
                      pwform=pwform,
                  ))
Example #9
0
 def update_profile(self, request):
     form = ProfileUpdateForm(request.DATA, instance=request.user)
     if form.is_valid():
         form.save()
         return Response(self.serializer_class(request.user).data)
     return Response(form.errors, status=status.HTTP_400_BAD_REQUEST)
Example #10
0
 def update_profile(self, request):
     form = ProfileUpdateForm(request.DATA, instance=request.user)
     if form.is_valid():
         form.save()
         return Response(self.serializer_class(request.user).data)
     return Response(form.errors, status=status.HTTP_400_BAD_REQUEST)