def post(self, request): user_form = CreateUserForm(request.POST) profile_form = CreateProfileForm(request.POST) print(user_form.errors) print(user_form.cleaned_data) if user_form.is_valid() and profile_form.is_valid(): user = User(**user_form.cleaned_data) user.save() print('User表OK,,,,') user_profile = Profile() user_profile.user = user user_profile.name = profile_form.cleaned_data['name'] user_profile.lnvalid_date = profile_form.cleaned_data[ 'lnvalid_date'] user_profile.phone = profile_form.cleaned_data['phone'] user_profile.weixin = profile_form.cleaned_data['weixin'] user_profile.info = request.POST.getlist('info', None)[0] user_profile.save() print('userprofile表OK,,,,') if request.POST.get('groups', None): user.groups.set(request.POST.getlist('groups')) register_email = RegisterEmail() register_email.user = user register_email.type_code = 0 register_email.code = random_str() register_email.save() contnet = """ <p>你好 %s: </p> <p>恭喜您,您的账号已经创建成功 </p> <p>用户名: %s </p> <p><a href='%s'>请点击这里设置密码</a> </p> """ % (user.username, user_profile.name, settings.HOST_URL + reverse('user_create_password') + '?code=' + str(register_email.code)) try: send_mail(settings.EMAIL_USER, settings.EMAIL_PASSWORD, user.email, settings.EMAIL_TITLE, contnet, settings.EMAIL_HOST, settings.EMAIL_PORT) print('邮件发送OK...') except Exception as e: print(e) print('邮件发送失败...') return redirect(reverse('user_list'))
def dashboard(request): """Personalized dashboard for authenticated users.""" try: profile = request.user.get_profile() except UserProfile.DoesNotExist: user = request.user username = '' if user.username[:10] != 'openiduser': username = user.username form = CreateProfileForm( initial={ 'full_name': ' '.join((user.first_name, user.last_name)), 'email': user.email, 'username': username, }) return render_to_response('dashboard/setup_profile.html', { 'form': form, }, context_instance=RequestContext(request)) current_projects = profile.get_current_projects() users_following = profile.following() users_followers = profile.followers() activities = Activity.objects.dashboard(request.user.get_profile()) show_welcome = not profile.discard_welcome return render_to_response('dashboard/dashboard.html', { 'current_projects': current_projects, 'users_following': users_following, 'users_followers': users_followers, 'activities': activities, 'show_welcome': show_welcome, }, context_instance=RequestContext(request))
def dashboard(request): """Personalized dashboard for authenticated users.""" try: profile = request.user.get_profile() except UserProfile.DoesNotExist: user = request.user username = '' if user.username[:10] != 'openiduser': username = user.username form = CreateProfileForm( initial={ 'full_name': ' '.join((user.first_name, user.last_name)), 'email': user.email, 'username': username, }) messages.info( request, _('Please fill out your profile to finish registration.')) return render_to_response('dashboard/setup_profile.html', { 'form': form, }, context_instance=RequestContext(request)) show_welcome = not profile.discard_welcome activities = Activity.objects.dashboard(request.user.get_profile()) activities = filter_activities(request, activities) context = { 'profile': profile, 'profile_view': False, 'show_welcome': show_welcome, 'domain': Site.objects.get_current().domain, 'dashboard_url': reverse('dashboard'), } context.update(get_pagination_context(request, activities)) return render_to_response('dashboard/dashboard.html', context, context_instance=RequestContext(request))
def post(self, request): user_form = CreateUserForm(request.POST) profile_form = CreateProfileForm(request.POST) uid = request.POST.get('uid', None) user = User.objects.get(pk=uid) groups = Group.objects.all() if user_form.is_valid() and profile_form.is_valid(): print(user_form.cleaned_data) user.username = user_form.cleaned_data['username'] user.email = user_form.cleaned_data['email'] user.is_superuser = user_form.cleaned_data['is_superuser'] user.save() print('用户表更新完成OK...') profile = Profile.objects.filter(user=user) profile.update( name=profile_form.cleaned_data['name'], lnvalid_date=profile_form.cleaned_data['lnvalid_date'], phone=profile_form.cleaned_data['phone'], weixin=profile_form.cleaned_data['weixin'], info=request.POST.getlist('info', None)[0]) print('Profile表更新完成OK...') if request.POST.getlist('groups', None): user.groups.set(request.POST.getlist('groups')) else: user.groups.clear() print('用户组更新完成OK....') return render(request, 'user/user_modify.html', { "user": user, "groups": groups })
def dashboard(request): """Personalized dashboard for authenticated users.""" try: profile = request.user.get_profile() current_projects = profile.get_current_projects(only_public=False) users_following = profile.following() users_followers = profile.followers() interests = profile.tags.filter(category='interest').exclude( slug='').order_by('name') desired_topics = profile.tags.exclude(slug='').filter( category='desired_topic').order_by('name') links = Link.objects.filter(user=profile, project__isnull=True).order_by('index') except UserProfile.DoesNotExist: user = request.user username = '' if user.username[:10] != 'openiduser': username = user.username form = CreateProfileForm(initial={ 'full_name': ' '.join((user.first_name, user.last_name)), 'email': user.email, 'username': username, }) messages.info(request, _('Please fill out your profile to finish registration.')) return render_to_response('dashboard/setup_profile.html', { 'form': form, }, context_instance=RequestContext(request)) show_welcome = not profile.discard_welcome activities = Activity.objects.dashboard( request.user.get_profile()) activities = filter_activities(request, activities) context = { 'profile': profile, 'current_projects': current_projects, 'users_following': users_following, 'users_followers': users_followers, 'interests': interests, 'desired_topics': desired_topics, 'links': links, 'show_welcome': show_welcome, 'domain': Site.objects.get_current().domain, 'dashboard_url': reverse('dashboard'), } context.update(get_pagination_context(request, activities)) return render_to_response('dashboard/dashboard.html', context, context_instance=RequestContext(request))
def dashboard(request, page=1): """Personalized dashboard for authenticated users.""" try: profile = request.user.get_profile() except UserProfile.DoesNotExist: user = request.user username = '' if user.username[:10] != 'openiduser': username = user.username form = CreateProfileForm( initial={ 'full_name': ' '.join((user.first_name, user.last_name)), 'email': user.email, 'username': username, }) messages.info( request, _('Please fill out your profile to finish registration.')) return render_to_response('dashboard/setup_profile.html', { 'form': form, }, context_instance=RequestContext(request)) current_projects = profile.get_current_projects() users_following = profile.following() users_followers = profile.followers() activities = Activity.objects.dashboard(request.user.get_profile()) paginator = Paginator(activities, 25) try: current_page = paginator.page(page) except EmptyPage: raise Http404 show_welcome = not profile.discard_welcome return render_to_response('dashboard/dashboard.html', { 'current_projects': current_projects, 'users_following': users_following, 'users_followers': users_followers, 'show_welcome': show_welcome, 'paginator': paginator, 'page_num': page, 'next_page': int(page) + 1, 'prev_page': int(page) - 1, 'num_pages': paginator.num_pages, 'page': current_page, 'domain': Site.objects.get_current().domain, }, context_instance=RequestContext(request))
def dashboard(request): """Personalized dashboard for authenticated users.""" try: profile = request.user.get_profile() except UserProfile.DoesNotExist: user = request.user username = '' if user.username[:10] != 'openiduser': username = user.username form = CreateProfileForm( initial={ 'display_name': ' '.join((user.first_name, user.last_name)), 'email': user.email, 'username': username, }) return render_to_response('dashboard/setup_profile.html', { 'form': form, }, context_instance=RequestContext(request)) projects_following = profile.following(model=Project) users_following = profile.following() users_followers = profile.followers() project_ids = [p.pk for p in projects_following] user_ids = [u.pk for u in users_following] activities = Activity.objects.select_related( 'actor', 'status', 'project', 'remote_object', 'remote_object__link', 'target_project').filter( Q(actor__exact=profile) | Q(actor__in=user_ids) | Q(project__in=project_ids), ).exclude( Q(verb='http://activitystrea.ms/schema/1.0/follow'), Q(target_user__isnull=True), Q(project__in=project_ids), ).exclude( Q(verb='http://activitystrea.ms/schema/1.0/follow'), Q(actor=profile), ).order_by('-created_on')[0:25] user_projects = Project.objects.filter(created_by=profile) show_welcome = not profile.discard_welcome return render_to_response('dashboard/dashboard.html', { 'users_following': users_following, 'users_followers': users_followers, 'projects_following': projects_following, 'activities': activities, 'projects': user_projects, 'show_welcome': show_welcome, }, context_instance=RequestContext(request))
def dashboard(request): """Personalized dashboard for authenticated users.""" try: profile = request.user.get_profile() except UserProfile.DoesNotExist: user = request.user username = '' if user.username[:10] != 'openiduser': username = user.username form = CreateProfileForm( initial={ 'full_name': ' '.join((user.first_name, user.last_name)), 'email': user.email, 'username': username, }) return render_to_response('dashboard/setup_profile.html', { 'form': form, }, context_instance=RequestContext(request)) projects_following = profile.following(model=Project) for project in projects_following: if project.created_by == profile: project.relation_text = _('(organizing)') elif project.participants().filter(user=profile).exists(): project.relation_text = _('(participating)') else: project.relation_text = _('(following)') users_following = profile.following() users_followers = profile.followers() activities = Activity.objects.dashboard(request.user.get_profile()) user_projects = Project.objects.filter(created_by=profile) show_welcome = not profile.discard_welcome return render_to_response('dashboard/dashboard.html', { 'users_following': users_following, 'users_followers': users_followers, 'projects_following': projects_following, 'activities': activities, 'projects': user_projects, 'show_welcome': show_welcome, }, context_instance=RequestContext(request))