コード例 #1
0
ファイル: views.py プロジェクト: omeinusch/Palco
def backstage_project_add(request):
    if request.POST:
        form = ProjectAddForm(request.POST)
        if form.is_valid():
            actor = form.cleaned_data['manager']
            project = Project.objects.create(title=form.cleaned_data['title'])
            Role.objects.create(name=Role._meta.get_field('perm_is_manager').verbose_name, project=project,
                                actor=actor, appearance=1)

            request.get_full_path()

            mail = EMailTemplate.objects.prepare('project-added', {
                'first_name': actor.user.first_name,
                'last_name': actor.user.last_name,
                'admin': request.user,
                'project': project,
                'dashboard_url': request.build_absolute_uri(reverse('bs-dashboard', kwargs={'project': project.pk}))
            })
            mail.to = [actor.user.email, ]
            mail.send()

            message_object_created(request, project)
            return redirect('bs-dashboard', project=project.pk)
    else:
        form = ProjectAddForm()

    return render(request, 'administrator/projects-form.html',
                  get_context_backstage(request, 'bs-project-add', {'form': form}))