def profile_edit(request): profile = get_object_or_404(Profile, pk=request.user.pk) if request.method == 'POST': form = EditProfileForm(request.POST) if form.is_valid(): profile.about = form.cleaned_data['about'] with transaction.atomic(): profile.save() profile.update_view_adult_content( form.cleaned_data['view_adult']) return HttpResponseRedirect( reverse('profiles:profiles_view_profile', args=(profile.id, ))) else: print(form.errors) return None else: form = EditProfileForm(initial={ 'about': profile.about, 'view_adult': profile.view_adult_content, }) context = { 'profile': profile, 'form': form, } return render(request, 'profiles/edit_profile.html', context)
def edit_profile_view(request): if request.method == 'POST': edit_user_form = EditUserForm(request.POST, instance=request.user) edit_profile_form = EditProfileForm(request.POST, request.FILES, instance=request.user.profile) if edit_user_form.is_valid and edit_profile_form.is_valid: user_info = edit_user_form.save() profile_info = edit_profile_form.save(commit=False) profile_info.user = user_info profile_info.save() messages.success(request, 'Your profile has been successfully updated.') return redirect(reverse('index')) else: edit_user_form = EditUserForm(instance=request.user) edit_profile_form = EditProfileForm(instance=request.user.profile) return render(request, 'edit_profile.html', { 'edit_user_form': edit_user_form, 'edit_profile_form': edit_profile_form })
def profile_edit(request): if request.method == 'POST': form = EditProfileForm(request.POST, instance=request.user) if form.is_valid(): form.save() return redirect('profile') form = EditProfileForm(instance=request.user) return render(request, 'profiles/profile_edit.html', {'form': form})
def profile(request): message = '' if request.method == 'POST': form = EditProfileForm(request.POST, request.FILES, instance = request.user.profile) if form.is_valid(): form.save() message = """Los datos de su perfil han sido editados correctamente""" else: user = request.user profile = user.profile #Con esta linea me trae el lambda definido en el modelo form = EditProfileForm(instance = profile) return render(request, 'profiles/edit.html', { 'form':form, 'message':message })
def profile_edit(request, pk): user = get_object_or_404(User, id=pk) form = EditProfileForm(request.POST or None, instance=user) if form.is_valid(): form.save() return redirect('/u') template_name = 'profiles/user_edit.html' context = {'form': form, 'id': pk} return render(request, template_name, context)
def edit_profile(request): my_profile_form = EditProfileForm(request.POST or None, instance=request.user) if my_profile_form.is_valid(): my_profile_form.save() return redirect('manage_profile') context = { 'user': request.user, 'user_roles': [role for role in request.user.roles], 'my_profile_form': my_profile_form } return render(request, 'user/edit_profile.html', context)
def account(request): """ Return active subscriptions from a Stripe customer as well as the customer and id """ """ def return_subs(): customer_id = Subscription.objects.filter(user_id=request.user).first() if customer_id: customer_id = customer_id.customer_id customer = stripe.Customer.retrieve(customer_id) subscriptions = [] for sub in customer.subscriptions.data: subscriptions.append(sub) if customer: # Filters out subscriptions terminated before today active_subscriptions = [sub for sub in subscriptions if sub.created < time.time()] for sub in active_subscriptions: sub.created = datetime.datetime.fromtimestamp(float(sub.created)) sub.current_period_end = datetime.datetime.fromtimestamp(float(sub.current_period_end)) else: customer = {} active_subscriptions = {} customer_id = None else: customer = {} active_subscriptions = {} customer_id = None return active_subscriptions, customer, customer_id """ # If user has submitted change account details form if request.method == "POST" and 'account-change-submit' in request.POST: password_form = PasswordChangeForm(request.user) user_form = EditProfileForm(request.POST, instance=request.user, user=request.user) if user_form.is_valid(): #active_subscriptions, customer, customer_id = return_subs() user = User.objects.get(pk=request.user.id) user_form.save() user = User.objects.get(pk=request.user.id) # Update email in Stripe if customer exists if customer_id: stripe.Customer.modify(customer_id, email=user_form.cleaned_data['email']) else: # Ensure request.user does not change based on user_form user = User.objects.get(pk=request.user.id) request.user = user #active_subscriptions, customer, customer_id = return_subs() # If user has submitted change password form elif request.method == "POST" and 'password-change-submit' in request.POST: user_form = EditProfileForm(instance=request.user, user=request.user) password_form = PasswordChangeForm(request.user, request.POST) if password_form.is_valid(): password_form.save() update_session_auth_hash(request, password_form.user) #active_subscriptions, customer, customer_id = return_subs() else: pass #active_subscriptions, customer, customer_id = return_subs() else: user_form = EditProfileForm(instance=request.user, user=request.user) password_form = PasswordChangeForm(request.user) #active_subscriptions, customer, customer_id = return_subs() context = { 'password_form': password_form, 'user_form': user_form, #'customer': customer, #'active_subscriptions': active_subscriptions } return render(request, 'account.html', context)