示例#1
0
文件: views.py 项目: debrice/kaaloo
def project_detail_view(request,id):
    context = {'current':'projects'}
    user = request.user
    project = Project.objects.get_for_user(user=request.user, id=int(id))

    if request.POST:
        form = ProjectForm(instance=project, data=request.POST)
        if form.is_valid():
            form.save()
            context['project_saved'] = True
        context['form'] = form
    else:
        context['form'] = ProjectForm(instance=project)

    context['project'] = project
    context['spectators'] = project.spectators.all().select_related()
    context['owners'] = project.owners.all().select_related()
    context['collaborators'] = project.collaborators.all().select_related()
    context['new_spectators'] = User.objects.filter(profile__contacts__user=request.user).exclude(projects_as_spectator = project).select_related()
    context['new_collaborators'] = User.objects.filter(profile__contacts__user=request.user).exclude(projects_as_collaborator = project).select_related()
    context['is_creator'] = project.is_creator(request.user)
    context['is_admin'] = project.is_admin(request.user)
    context['new_owners'] = User.objects.filter(profile__contacts__user=request.user).exclude(owned_projects = project).select_related()
    context['new_task_form'] = NewTaskForm()
    context['goal_form'] = GoalForm()
    return render_response(request, 'project/project_detail_view.html', context)
示例#2
0
文件: views.py 项目: shawnchin/bbotui
def project_edit(request, pid, template_name='project_new.html'):
    """
    Edit an existing project
    """
    namedup = None
    project = get_object_or_404(request.user.project_set, id=pid)
    if request.method == "POST":
        form = ProjectForm(request.POST, instance=project)
        if form.is_valid():
            try:
                form.save()
                url = reverse('bbotweb_project_show', kwargs={'pid':project.id})
                return HttpResponseRedirect(url)
            except IntegrityError:
                msg = _("You already have a %s with the same name (%s).")
                messages.error(request, msg % (_("project"), project.name)); 
                namedup = True
    else:
        form = ProjectForm(instance=project)
    
    return render_to_response(template_name, {
        'form' : form,
        'project' : project,
        'namedup' : namedup,
    }, context_instance=RequestContext(request))
示例#3
0
def create_project(request, rfpId):
    context = RequestContext(request)
    user = request.user
    progress_status = 30
    rfp = RfpCampaign.objects.get(pk=rfpId)
    print("RFP is: ")
    print(rfp)
    questions = rfp.get_project_questions()

    if request.method == "POST":
        print(request.POST)
        project = ProjectForm(request.POST, request.FILES, questions=questions)

        if project.is_valid():
            project = Project(**project.cleaned_data)
            project.rfp = rfp
            project.user = user
            project.save()

            if "Next" in request.POST:
                return HttpResponseRedirect(reverse("create_project_budget", args=[project.pk]))
            else:
                return HttpResponseRedirect(reverse("create_project_previous", args=[project.pk]))

    else:
        project = ProjectForm(questions=questions)

    return render_to_response(
        "rfp/create_project.html",
        {"form": project, "user": user, "progress_status": progress_status, "rfp": rfp},
        context,
    )
示例#4
0
def create_project(request,rfpId):
    context = RequestContext(request)
    user = request.user
    progress_status = 30
    rfp = RfpCampaign.objects.get(pk = rfpId)
    print ('RFP is: ')
    print (rfp)
    questions = rfp.get_project_questions()

    if request.method == 'POST':
        print (request.POST)
        project = ProjectForm(request.POST,request.FILES,questions = questions)

        if project.is_valid():
            project = Project(**project.cleaned_data)
            project.rfp = rfp
            project.user = user
            project.save()

            if "Next" in request.POST:
                return HttpResponseRedirect(reverse('create_project_budget', args=[project.pk]))
            else:
                return HttpResponseRedirect(reverse('create_project_previous', args=[project.pk]))

    else:
        project = ProjectForm(questions = questions)

    return render_to_response('rfp/create_project.html',{'form' : project, 'user' : user, 'progress_status' : progress_status, 'rfp' : rfp}, context)
示例#5
0
文件: views.py 项目: joinEF/people
def edit_project(request, project_id=None):
    # http://wiki.ddenis.com/index.php?title=Django,_add_and_edit_object_together_in_the_same_form

    if project_id:
        print "exists"
        project = get_object_or_404(Project, pk=project_id)
        if request.user not in project.users.all():
            return HttpResponseForbidden()
    else:
        print "doesn't exist"
        project = Project()

    if request.method == "POST":

        form = ProjectForm(request.POST, instance=project)

        if form.is_valid():

            form.save()

            return HttpResponseRedirect(project.get_absolute_url())

    else:

        form = ProjectForm(instance=project)

    if project_id:
        template_name = "edit_project.html"
    else:
        template_name = "new_project.html"

    return render(request, template_name, {"form": form, "project": project})
示例#6
0
def project_view(request, project_id):
    """
    - return project corresponding to project_id
    - handle project modification form submition
    - raise 404 if project is not found or project doesn't belong to the current user
    """
    if request.user.is_superuser:
        project = get_object_or_404(Project, pk=project_id)
    else:
        project = get_object_or_404(Project, owner=request.user, pk=project_id)
    if request.method == "POST":
        form = ProjectForm(request.POST, instance=project)
        if form.is_valid():
            form.save()
    else:
        form = ProjectForm(instance=project)

    context = {
        'project':
        project,
        'new_application_form':
        NewApplicationForm({'project_id': project.id},
                           prefix='new_application'),
        'project_form':
        form
    }
    return render_response(request, 'project/project_view.html', context)
示例#7
0
文件: views.py 项目: Lopic/urtest
def new_project(request):
    if request.method == 'POST':
        form = ProjectForm(request.POST)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect('/projects/')
    else:
        form = ProjectForm()
    return render_to_response('new_project.html',{'form': form})
示例#8
0
def add(request):
    if request.method == "POST":
        form = ProjectForm(data=request.POST)
        if form.is_valid():
            form.save()
            return redirect("core:home")
    else:
        form = ProjectForm()
    return render_to_response("add.html", {"form": form}, context_instance=RequestContext(request))
示例#9
0
文件: views.py 项目: rap12/wdwebapp
def add_project(request):
	if request.method == 'GET':
		form = ProjectForm()
	elif request.method == 'POST':
		form = ProjectForm(request.POST)
		if form.is_valid():
			form.save()
	return render_to_response ('devcup/add_project.html', {
		'form': form,
	}, context_instance = RequestContext(request))
示例#10
0
def  Projects_form(webdata,request):
    forms = ProjectForm(webdata)
    if forms.is_valid():
        try:
            if create_dir(webdata['project_url']):
                forms.save()
                return HttpResponseRedirect(reverse('confd:project_list'))
            else:
                return render(request, 'confd/apply_project.html', {'forms': forms, 'errmsg': '项目创建失败'})
        except:
            return render(request, 'confd/apply_project.html', {'forms': forms, 'errmsg': '项目创建失败'})
示例#11
0
def project_details(request):
    vars = {}
    vars['template'] = 'content/project-details.html'
    vars['previous'] = '/'
    vars['next']     = '/import-gui'
    vars['redirect'] = vars['next'] 
    vars['path'] = request.session.get('path',djos.project_path())
    #vars['debug']    = True
    form = ProjectForm(initial={'path': vars['path'], 
                                'language1': 'English',
                                'language2': 'English',
                                'language3': 'English'}
                       )
    
    # submitting
    if request.method == 'POST':
        prev_title = request.session.get('title', False)
        curr_title = request.POST.get('title')
        
        # this title already in db?
        try: # yes
            p = Project.objects.get(title=curr_title)
            form = ProjectForm(request.POST, instance=p) # load form (from db)
        except: #no
            post2 = request.POST.copy() # immutable so copy before changing
            post2['date_created']=datetime.datetime.now()
            form = ProjectForm(post2) # create form

        if form.is_valid():  
            form.save()
            request.session['title'] = form.cleaned_data['title']
            request.session['path'] = form.cleaned_data['path']
            request.session['fullpath'] = request.session.get('path','Error') + os.sep + request.session.get('title','Error')
            return HttpResponseRedirect(vars['redirect'])
    # displaying
    elif request.session.get('title', False): # old
        try:
            p = Project.objects.get(title=request.session['title'])
            form = ProjectForm(instance=p)
        except ObjectDoesNotExist:
            vars['errors'] = {'Missing title': 'I could not find this title for some reason! Please enter a different title.'}
            request.session.pop('title')
            request.session.pop('path')
            request.session.pop('fullpath')
        except MultipleObjectsReturned:
            vars['errors'] = {'Too many titles': 'There were too many projects with this name. That should not happen. Please enter a different title.'}
            request.session.pop('title')
            request.session.pop('path')
            request.session.pop('fullpath')
        except:
            vars['errors'] = {'oops': 'I received some unexpected, unknown error. You might want to report this.'}
    else: # new
        pass
    return render_to_response(vars['template'], {'form': form, 'vars': vars})
示例#12
0
def add_project(request):
    if request.method == "POST":
        form = ProjectForm(request.POST, user=request.user)
        if form.is_valid():
            form.save(request)
            messages.success(request, "Project created successfully.")
            return HttpResponseRedirect(reverse("my_projects"))
    else:
        form = ProjectForm()
    return render_to_response(
        "authenticated/project/add_project.html", locals(), context_instance=RequestContext(request)
    )
示例#13
0
def create_project(request):

    if request.method == 'POST':
        form=ProjectForm(request.POST)
        if form.is_valid():
            form.save()    
            return HttpResponseRedirect("/account/")
    else:
  
            form=ProjectForm()

    return  render(request, 'PyBugs/create_project.html', {'form': form,}) 
示例#14
0
def new_project(request):
    if request.method == 'POST':
        pform = ProjectForm(request.POST, instance=Project())
        if pform.is_valid():
            pform.save()
        return HttpResponseRedirect(reverse('manage_project'))
    else:
        pform = ProjectForm(instance=Project())
        context = {'project_form': pform}
        context.update(csrf(request))
        return render_to_response('viewer/project/new_project.html', context,
                                  context_instance=RequestContext(request))
示例#15
0
def add_project(request):
    if request.method == "POST":
        form = ProjectForm(request.POST, user=request.user)
        if form.is_valid():
            form.save(request)
            messages.success(request, 'Project created successfully.')
            return HttpResponseRedirect(reverse('my_projects'))
    else:
        form = ProjectForm()
    return render_to_response('authenticated/project/add_project.html',
                              locals(),
                              context_instance=RequestContext(request))
示例#16
0
文件: views.py 项目: djf604/viewer
def new_project(request):
    if request.method == 'POST':
        pform = ProjectForm(request.POST, instance=Project())
        if pform.is_valid():
            pform.save()
        return HttpResponseRedirect('/viewer/project/')
    else:
        pform = ProjectForm(instance=Project())
        context = {'project_form': pform}
        context.update(csrf(request))
        return render_to_response('viewer/project/new_project.html', context,
                                  context_instance=RequestContext(request))
示例#17
0
def edit_project(request, id):
    project = get_object_or_404(Project, id=id)
    # TODO: check if user is owner
    if request.method == "POST":
        form = ProjectForm(request.POST, instance=project, user=request.user)
        if form.is_valid():
            form.save(request)
            messages.success(request, "Project edited successfully.")
            return HttpResponseRedirect(reverse("project_detail", kwargs={"id": id}))
    else:
        form = ProjectForm(instance=project)
    return render_to_response(
        "authenticated/project/edit_project.html", locals(), context_instance=RequestContext(request)
    )
示例#18
0
def edit_project(request, id):
    project = get_object_or_404(Project, id=id)
    #TODO: check if user is owner
    if request.method == "POST":
        form = ProjectForm(request.POST, instance=project, user=request.user)
        if form.is_valid():
            form.save(request)
            messages.success(request, 'Project edited successfully.')
            return HttpResponseRedirect(
                reverse('project_detail', kwargs={'id': id}))
    else:
        form = ProjectForm(instance=project)
    return render_to_response('authenticated/project/edit_project.html',
                              locals(),
                              context_instance=RequestContext(request))
示例#19
0
文件: views.py 项目: tovmeod/anaf
def project_add_typed(request, project_id, response_format='html'):
    """Project add to preselected parent project"""

    parent_project = None
    if project_id:
        parent_project = get_object_or_404(Project, pk=project_id)
        if not request.user.profile.has_permission(parent_project, mode='x'):
            parent_project = None

    if request.POST:
        if 'cancel' not in request.POST:
            project = Project()
            form = ProjectForm(
                request.user.profile, project_id, request.POST, instance=project)
            if form.is_valid():
                project = form.save()
                project.set_user_from_request(request)
                return HttpResponseRedirect(reverse('projects_project_view', args=[project.id]))
        else:
            return HttpResponseRedirect(reverse('projects'))
    else:
        form = ProjectForm(request.user.profile, project_id)

    context = _get_default_context(request)
    context.update({'form': form, 'project': parent_project})

    return render_to_response('projects/project_add_typed', context,
                              context_instance=RequestContext(request), response_format=response_format)
示例#20
0
def project_add(request):
    temp_name = "appconf/appconf-header.html"
    if request.method == 'POST':
        form = ProjectForm(request.POST)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect(reverse('project_list'))
    else:
        form = ProjectForm()

    results = {
        'form': form,
        'request': request,
        'temp_name': temp_name,
    }
    return render(request, 'appconf/project_base.html', results)
示例#21
0
def new_project(request):
    if request.method == 'POST':
        form = ProjectForm(request.POST)
        name = str(request.POST['title'])
        #list=(str(project_api.get_projects_for_user(request.user.id))).replace("<Project: ","").replace(', ','').replace('[','').replace("]",'').split('>')
        #list = project_api.get_projects_for_user(request.user.id).values_list('title',flat=True)
        #print list

        #if name in list:
        if project_api.duplicate_project(request.user, request.POST):
            form.if_dup(1)
        if form.is_valid():
            project_api.create_project(request.user, request.POST)
            project = form.save(commit=False)
            # return redirect('/req/projects')
            # return empty string and do the redirect stuff in front-end
            return HttpResponse('')

    else:
        form = ProjectForm()

    context = {
        'projects': project_api.get_projects_for_user(request.user.id),
        'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT),
        'title': 'New Project',
        'form': form,
        'action': '/req/newproject',
        'button_desc': 'Create Project'
    }
    return render(request, 'ProjectSummary.html', context)
示例#22
0
def project_add(request):
    temp_name = "appconf/appconf-header.html"
    if request.method == 'POST':
        form = ProjectForm(request.POST)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect(reverse('project_list'))
    else:
        form = ProjectForm()

    results = {
        'form': form,
        'request': request,
        'temp_name': temp_name,
    }
    return render(request, 'appconf/project_base.html', results)
示例#23
0
def create(request):
    if request.POST:
        form = ProjectForm(request.POST, request.FILES)
        if form.is_valid():
            form.save()

            return HttpResponseRedirect('/my_portfolios/all')
    else:
        form = ProjectForm()

    args = {}
    args.update(csrf(request))

    args['form'] = form

    return render_to_response('create_portfolio.html', args)
示例#24
0
def edit_project(request, project_id):
    if request.method == 'POST':
        p = Project.objects.get(pk=project_id)
        updated_form = ProjectForm(request.POST, instance=p)
        if updated_form.is_valid():
            updated_form.save()
            return HttpResponseRedirect(reverse('manage_project'))
    else:
        proj_obj = Project.objects.get(pk=project_id)
        pform = ProjectForm(instance=proj_obj)
        context = {'project_form': pform, 'name': proj_obj.name,
                   'pk': proj_obj.pk}
        context.update(csrf(request))
        return render_to_response('viewer/project/edit_project.html',
                                  context,
                                  context_instance=RequestContext(request))
示例#25
0
文件: views.py 项目: djf604/viewer
def edit_project(request, project_id):
    if request.method == 'POST':
        p = Project.objects.get(pk=project_id)
        updated_form = ProjectForm(request.POST, instance=p)
        if updated_form.is_valid():
            updated_form.save()
            return HttpResponseRedirect('/viewer/project/')
    else:
        proj_obj = Project.objects.get(pk=project_id)
        pform = ProjectForm(instance=proj_obj)
        context = {'project_form': pform, 'name': proj_obj.name,
                   'pk': proj_obj.pk}
        context.update(csrf(request))
        return render_to_response('viewer/project/edit_project.html',
                                  context,
                                  context_instance=RequestContext(request))
示例#26
0
文件: views.py 项目: i-k-i/tolk
def create_project(request):
    user = request.user
    if request.POST:
        form = ProjectForm(request.POST, request.FILES)
        if form.is_valid():
            c = form.save(commit=False)
            c.author = user
            c.save()
            #            import pdb; pdb.set_trace()
            project = Project.objects.get(id=c.id)
            ## permissions
            if not project.public:
                group = '{}_pr_workers'.format(c.id)
                group = Group.objects.create(name=group)
                group.save()
            else:
                group = Group.objects.get(name='workers')
#            import pdb; pdb.set_trace()
            for i in worker_perms['project']:
                assign_perm(i, group, project)
            for i in prcreator_perms:
                assign_perm(i, user, project)
            user.groups.add(group)
            loger(auth.get_user(request), 'created project',c.name, project=project)
            return HttpResponseRedirect('/projector/all')
    else:
        form = ProjectForm()
     #   import pdb; pdb.set_trace()
        #form['deadline'] = '111'

    args = {}
    args['username'] = auth.get_user(request).username
    args.update(csrf(request))
    args['form'] = form
    return render_to_response('create_project.html',args)
示例#27
0
def new_project(request):
    if request.method == 'POST':
        form = ProjectForm(request.POST)
        name = str(request.POST['title'])
        #list=(str(project_api.get_projects_for_user(request.user.id))).replace("<Project: ","").replace(', ','').replace('[','').replace("]",'').split('>')
        #list = project_api.get_projects_for_user(request.user.id).values_list('title',flat=True)
        #print list

        #if name in list:
        if project_api.duplicate_project(request.user,request.POST):
            form.if_dup(1)
        if form.is_valid() :
            project_api.create_project(request.user, request.POST)
            project = form.save(commit=False)
            # return redirect('/req/projects')
            # return empty string and do the redirect stuff in front-end
            return HttpResponse('')

    else:
        form = ProjectForm()

    context = {'projects': project_api.get_projects_for_user(request.user.id),
               'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT),
               'title': 'New Project',
               'form': form, 'action': '/req/newproject', 'button_desc': 'Create Project'}
    return render(request, 'ProjectSummary.html', context)
示例#28
0
文件: views.py 项目: jpihl/plotato
def edit_project(request, project_id):
    """ Edit Project.

    """
    project = get_object_or_404(Project, pk=project_id)
    if request.method == "POST":
        form = ProjectForm(request.POST, instance=project)
    else:
        form = ProjectForm(instance=project)
    if form.is_valid():  # All validation rules pass
        form.save()
        messages.add_message(request, messages.INFO,
                             'The project has been successfully modified.')
        return redirect(details_project, project_id=project.key)

    return render_to_response('form.html', {'form': form},
                              context_instance=RequestContext(request))
示例#29
0
 def add(self):
     form = ProjectForm(csrf_enabled=False)
     if form.validate():
         project = form.save()
         db.session.add(project)
         db.session.commit()
         return 201, project.id
     return 400, form.errors
示例#30
0
文件: views.py 项目: jpihl/plotato
def edit_project(request, project_id):
    """ Edit Project.

    """
    project = get_object_or_404(Project, pk=project_id)
    if request.method == "POST":
        form = ProjectForm(request.POST, instance=project)
    else:
        form = ProjectForm(instance=project)
    if form.is_valid(): # All validation rules pass
            form.save()
            messages.add_message(request, messages.INFO, 'The project has been successfully modified.')
            return redirect(details_project, project_id=project.key)

    return render_to_response('form.html',
                              {'form': form},
                              context_instance=RequestContext(request))
示例#31
0
def server_type_add(request):
    """添加项目"""
    if request.method == 'POST':  # 验证post方法
        init = request.GET.get("init", False)
        uf = ProjectForm(request.POST)
        if uf.is_valid():
            project_name = uf.cleaned_data['service_name']
            if Project.objects.filter(service_name=project_name):
                emg = u'添加失败, 此项目 %s 已存在!' % project_name
                return my_render('assets/server_type_add.html', locals(),
                                 request)
            uf.save()
            if not init:
                return HttpResponseRedirect("/assets/server/type/list/")
    else:
        uf = ProjectForm()
    return render(request, 'assets/server_type_add.html', locals())
示例#32
0
文件: api.py 项目: almet/ihatemoney
 def add(self):
     form = ProjectForm(csrf_enabled=False)
     if form.validate():
         project = form.save()
         db.session.add(project)
         db.session.commit()
         return 201, project.id
     return 400, form.errors
示例#33
0
def project_edit(request, project_id):
    project = Project.objects.get(id=project_id)
    temp_name = "appconf/appconf-header.html"
    if request.method == 'POST':
        form = ProjectForm(request.POST, instance=project)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect(reverse('project_list'))
    else:
        form = ProjectForm(instance=project)

    results = {
        'form': form,
        'project_id': project_id,
        'request': request,
        'temp_name': temp_name,
    }
    return render(request, 'appconf/project_base.html', results)
示例#34
0
def project_edit(request, project_id):
    project = Project.objects.get(id=project_id)
    temp_name = "appconf/appconf-header.html"
    if request.method == 'POST':
        form = ProjectForm(request.POST, instance=project)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect(reverse('project_list'))
    else:
        form = ProjectForm(instance=project)

    results = {
        'form': form,
        'project_id': project_id,
        'request': request,
        'temp_name': temp_name,
    }
    return render(request, 'appconf/project_base.html', results)
示例#35
0
def create_project(request, template="create_project.html"):
    user = get_object_or_404(User, pk=request.user.pk)
    form = ProjectForm(request.POST or None, initial={"user": user})
    if request.method == "POST" and form.is_valid():
        new_project = form.save()
        print new_project
        return redirect("enterprise.projects")
    context = {"form": form, "title": _("Create Project"), "enterprise": request.session["company"]}
    return render(request, template, context)
示例#36
0
def project_details(request):
    vars = {}
    vars['template'] = 'content/project-details.html'
    vars['previous'] = '/'
    vars['next']     = '/import-gui'
    vars['redirect'] = vars['next'] 
    vars['path'] = request.session.get('path',djos.project_path())
    #vars['debug']    = True
    form = ProjectForm(initial={'date_created': datetime.datetime.now(), 'path': vars['path']})
    
    # submitting
    if request.method == 'POST': 
        sess = request.session.get('title', False)
        if sess: # old
            p = Project.objects.get(title=request.session['title'])
            form = ProjectForm(request.POST, instance=p)
        elif not sess: # new
            form = ProjectForm(request.POST)
        if form.is_valid(): # new and old
            form.save()
            request.session['title'] = form.cleaned_data['title']
            request.session['path'] = form.cleaned_data['path']
            request.session['fullpath'] = request.session.get('path','Error') + os.sep + request.session.get('title','Error')
            return HttpResponseRedirect(vars['redirect'])
    # displaying
    elif request.session.get('title', False): # old
        try:
            p = Project.objects.get(title=request.session['title'])
            form = ProjectForm(instance=p)
        except ObjectDoesNotExist:
            vars['errors'] = {'Missing title': 'I could not find this title for some reason! Please enter a different title.'}
            request.session.pop('title')
            request.session.pop('path')
            request.session.pop('fullpath')
        except MultipleObjectsReturned:
            vars['errors'] = {'Too many titles': 'There were too many projects with this name. That should not happen. Please enter a different title.'}
            request.session.pop('title')
            request.session.pop('path')
            request.session.pop('fullpath')
        except:
            vars['errors'] = {'oops': 'I received some unexpected, unknown error. You might want to report this.'}
    else: # new
        pass
    return render_to_response(vars['template'], {'form': form, 'vars': vars})
示例#37
0
文件: views.py 项目: jpihl/plotato
def create_project(request):
    """ Create a new Project.

    """
    form = ProjectForm(request.POST or None)
    if form.is_valid():
        new_project = form.save()
        return redirect(details_project, project_id=new_project.key)
    return render_to_response('form.html', {'form': form},
                              context_instance=RequestContext(request))
示例#38
0
文件: views.py 项目: jpihl/plotato
def create_project(request):
    """ Create a new Project.

    """
    form = ProjectForm(request.POST or None)
    if form.is_valid():
        new_project = form.save()
        return redirect(details_project, project_id=new_project.key)
    return render_to_response('form.html',
                              {'form': form},
                              context_instance=RequestContext(request))
示例#39
0
def add_project(request):
    context = RequestContext(request)
    if request.method == 'POST':

        form = ProjectForm(request.POST)
        if form.is_valid():

            form.save(commit=True)
            return add_position(request)
        else:
            print form.errors
    else:

        nn = request.META.__getitem__("USER")
        print request
        form = ProjectForm(
            {'fk_CreatedBy': User.objects.get(username=request.user.username)})

    return render_to_response('matching_system_project/add_project.html',
                              {'form': form}, context)
示例#40
0
def project_view(request, project_id):
    """
    - return project corresponding to project_id
    - handle project modification form submition
    - raise 404 if project is not found or project doesn't belong to the current user
    """
    if request.user.is_superuser:
        project = get_object_or_404(Project, pk=project_id)
    else:
        project = get_object_or_404(Project, owner=request.user, pk=project_id)
    if request.method == "POST":
        form = ProjectForm(request.POST, instance=project)
        if form.is_valid():
            form.save()
    else:
        form = ProjectForm(instance=project)
    
    context = {'project': project,
               'new_application_form': NewApplicationForm({'project_id':project.id}, prefix='new_application'),
               'project_form': form}
    return render_response(request, 'project/project_view.html', context)
示例#41
0
def create_project():
    form = ProjectForm()
    if request.method == "GET" and 'project_id' in request.values:
        form.name.data = request.values['project_id']

    if request.method == "POST":
        # At first, we don't want the user to bother with the identifier
        # so it will automatically be missing because not displayed into
        # the form
        # Thus we fill it with the same value as the filled name,
        # the validation will take care of the slug
        if not form.id.data:
            form.id.data = form.name.data
        if form.validate():
            # save the object in the db
            project = form.save()
            db.session.add(project)
            db.session.commit()

            # create the session object (authenticate)
            session[project.id] = project.password
            session.update()

            # send reminder email
            g.project = project

            message_title = _(
                "You have just created '%(project)s' "
                "to share your expenses",
                project=g.project.name)

            message_body = render_template("reminder_mail.%s" %
                                           get_locale().language)

            msg = Message(message_title,
                          body=message_body,
                          recipients=[project.contact_email])
            try:
                mail.send(msg)
            except SMTPRecipientsRefused:
                msg_compl = 'Problem sending mail. '
                # TODO: destroy the project and cancel instead?
            else:
                msg_compl = ''

            # redirect the user to the next step (invite)
            flash(
                _("%(msg_compl)sThe project identifier is %(project)s",
                  msg_compl=msg_compl,
                  project=project.id))
            return redirect(url_for(".invite", project_id=project.id))

    return render_template("create_project.html", form=form)
示例#42
0
def manage_projects(request):
    if 'pick' in request.GET:
        return _pick_project(request, request.GET['pick'])
    
    if request.method == 'POST':
        form = ProjectForm(request.POST)
        if form.is_valid():
            project = form.save()
            return _pick_project(request, project)
    else:
        form = ProjectForm()
    return {'projects': Project.objects.all(), 'form': form}
示例#43
0
def server_type_edit(request, uuid):
    """修改项目"""
    Server_Type = Project.objects.all()
    business_name = Project.objects.get(uuid=uuid)
    uf = ProjectForm(instance=business_name)
    if request.method == 'POST':
        uf = ProjectForm(request.POST, instance=business_name)
        if uf.is_valid():
            myform = uf.save()
            return render_to_response('assets/server_type_edit_ok.html',
                                      locals(),
                                      context_instance=RequestContext(request))
    return render(request, 'assets/server_type_edit.html', locals())
示例#44
0
def add_project(request):
    
    if request.method == 'POST':
        projectForm = ProjectForm(request.POST)
        if projectForm.is_valid():
            project = projectForm.save()
            request.user.message_set.create(message=_('Project created'))
            return redirect(project.get_absolute_url())
    else:
        projectForm = ProjectForm()
    
    return direct_to_template(request, 'picket/admin/project_add.html',
        {'project_form': projectForm,})
示例#45
0
文件: views.py 项目: Seppala/Learness
def createProject(request):
    #un = User.__unicode__(request.user)
    #user = get_object_or_404(User, username = un)
    if request.method == 'POST': # If the form has been submitted...
        user = Project(owner = request.user)
        form = ProjectForm(request.POST, instance = user) # A form bound to the POST data
        if form.is_valid(): # All validation rules pass
            new_project = form.save()           
            return HttpResponseRedirect('/flow/') # Redirect after POST
    else:
        form = ProjectForm() # An unbound form
        variables = RequestContext(request, { 'form': form })
        return render_to_response('flow/createproject.html', variables)
示例#46
0
def updateProject(request):

  proj_name = request.session["project_name"]
  if request.method == 'POST':
    
    if 'UpdateProject' in request.POST:
      proj_update = get_object_or_404(Project,project_name=proj_name)
      form = ProjectForm(data= request.POST or None,instance=proj_update)
      if form.is_valid():
        newproj = form.save(commit=False)
        if newproj.user_id == request.user.id or request.user.is_superuser:
          if newproj.project_name != proj_name:
            messages.error ("Cannot change the project name.  MySQL cannot rename databases.")
          else:
            newproj.save()
            messages.success(request, 'Sucessfully updated project ' + proj_name)
        else:
          messages.error(request,"Cannot update.  You are not owner of this project or not superuser.")
        del request.session["project_name"]
        return HttpResponseRedirect(get_script_prefix()+'ocpuser/projects')
      else:
        #Invalid form
        context = {'form': form}
        return render_to_response('updateproject.html',context,context_instance=RequestContext(request))
    elif 'backtoprojects' in request.POST:
      return HttpResponseRedirect(get_script_prefix()+'ocpuser/projects')
    else:
      #unrecognized option
      messages.error(request,"Unrecognized Post")
      return HttpResponseRedirect(get_script_prefix()+'ocpuser/pojects')
      
  else:
    #Get: Retrieve project and display update project form.
    if "project_name" in request.session:
      proj = request.session["project_name"]
    else:
      proj = ""
    project_to_update = Project.objects.filter(project_name=proj)
    data = {
      'project_name': project_to_update[0].project_name,
      'project_description':project_to_update[0].project_description,
      'dataset':project_to_update[0].dataset_id,
      'public':project_to_update[0].public,
      'host':project_to_update[0].host,
      'kvengine':project_to_update[0].kvengine,
      'kvserver':project_to_update[0].kvserver,
    }
    form = ProjectForm(initial=data)
    context = {'form': form}
    return render_to_response('updateproject.html',context,context_instance=RequestContext(request))
示例#47
0
    def post(self, request):
        webdata = request.POST.dict()
        webdata['project_url'] = webdata['project_url'].strip()
        forms = ProjectForm(webdata)
        if forms.is_valid():
            try:
                if create_dir(webdata['project_url']):
                    forms.save()
                    return HttpResponseRedirect(reverse('confd:project_list'))
                else:
                    render(request, 'confd/apply_project.html', {
                        'forms': forms,
                        'errmsg': '项目创建失败'
                    })
            except:
                render(request, 'confd/apply_project.html', {
                    'forms': forms,
                    'errmsg': '项目创建失败'
                })

        return render(request, 'confd/apply_project.html', {
            'forms': forms,
            'errmsg': '申请格式错误 或项目已存在!'
        })
示例#48
0
def project(request):
    user = request.user
    bio = Bio.objects.get(user=user)
    if request.method == 'POST':
        form = ProjectForm(request.POST)
        if form.is_valid():
            project = form.save(commit=False)
            project.bio = bio
            project.save()
            return redirect('skills')
        else:
            HttpResponse('please fill the form')
    else:
        form = ProjectForm()
    return render(request, 'skills/projects.html', {'form': form})
示例#49
0
def edit_project(request, projectID):
    project = project_api.get_project(projectID)
    if request.method == 'POST':
        form = ProjectForm(request.POST, instance=project)
        if form.is_valid():
            project = form.save(commit=True)
            # return redirect('/req/projects')
            # return empty string and do the redirect stuff in front-end
            return HttpResponse('')
    else:
        form = ProjectForm(instance=project)
        
    context = {'projects' : project_api.get_projects_for_user(request.user.id),
               'canOwnProject' : request.user.has_perm(PERMISSION_OWN_PROJECT),
               'title' : 'Edit Project',
               'form' : form, 'action' : '/req/editproject/' + projectID, 'button_desc' : 'Save Changes'}
    return render(request, 'ProjectSummary.html', context )
示例#50
0
def new_project(request):
    if request.method == 'POST':
        form = ProjectForm(request.POST)
        if form.is_valid():
            project_api.create_project(request.user, request.POST)
            project = form.save(commit=False)
            # return redirect('/req/projects')
            # return empty string and do the redirect stuff in front-end
            return HttpResponse('')
    else:
        form = ProjectForm()
        
    context = {'projects' : project_api.get_projects_for_user(request.user.id),
               'canOwnProject' : request.user.has_perm(PERMISSION_OWN_PROJECT),
               'title' : 'New Project',
               'form' : form, 'action' : '/req/newproject' , 'button_desc' : 'Create Project' }
    return render(request, 'ProjectSummary.html', context )
示例#51
0
def add_project(request):
	# REMEMBER TO HANDLE UNAUTHENTICATED USERS
	if request.method == 'POST':
		projectForm = ProjectForm(request.POST)
		if projectForm.is_valid() and request.user.is_authenticated():
			project = projectForm.save(commit = False) 
			project.creator = request.user
			project.soundCloud = getIFrameSrc(projectForm.cleaned_data['soundCloud'])
			project.is_active = True
			project.save()
			projectForm.save_m2m()
			return HttpResponseRedirect('profile/' + request.user.username)
		else: 
			return render(request, 'addProject.html', {'projectForm': projectForm})
	else: 
		projectForm = ProjectForm()
		return render(request, 'addProject.html', {'projectForm': projectForm})
示例#52
0
文件: views.py 项目: pombredanne/ceeq
def project_edit(request, project_id):
    project = get_object_or_404(Project, pk=project_id)

    if request.method == "POST":
        form = ProjectForm(request.POST, instance=project)
        if form.is_valid():
            project = form.save()
            #messages.success(request, "Projects info has been saved.")
            return redirect(project_detail, project.id)
        else:
            messages.error(request, "Correct errors in the form.")
            context = RequestContext(request, {
                'form': form,
                'project': project,
                'superuser': request.user.is_superuser,
                'version_names': ['All Versions']
            })
            return render(request, 'proj/project_detail/project_detail.html', context)
    else:
        return redirect(projects)
示例#53
0
def addproject(request):
	if request.POST:
		#files = upload_receive(request)
		form = ProjectForm(request.POST, request.FILES)
		if form.is_valid():
			f2 = form.save(commit=False)
			f2.save()
			return HttpResponseRedirect('/blog/viewprojects/')
		else:
			args = {}
			args.update(csrf(request))
			args['form']=form
			args['error']='Some error in form'
			return render_to_response('addproject.html',args)
				
	else:
		args = {}
		args.update(csrf(request))
		args['form'] = ProjectForm()
		return render_to_response('addproject.html',args)
示例#54
0
def add_project(request):

    user = User.objects.get(username=request.user)

    if request.method == "POST":
        form = ProjectForm(request.POST)
        if form.is_valid():

            model_instance = form.save(commit=False)
            model_instance.user = user
            model_instance.save()

            message = 'Thanks for adding a project!'

            context = {'message': message}
            return render(request, "thanks.html", context)
    else:
        form = ProjectForm()

    context = {'form': form}

    return render(request, "add_project.html", context)
示例#55
0
def edit_project(request, project_id):
	if not request.user.is_authenticated(): 
		return render(request, 'test.html')
	
	# get the object 
	try:
		project = Project.objects.get(id = project_id)
	except :
		raise Http404
	 
	if request.method == 'POST':
		projectForm = ProjectForm(request.POST, instance = project)
		if projectForm.is_valid() and request.user.is_authenticated():
			project = projectForm.save(commit = False)
			project.user = request.user
			project.save()
			projectForm.save_m2m()
			return HttpResponseRedirect('/profile/' + request.user.username)
		else:
			return render(request, 'editProject.html', {'projectForm': projectForm})
	else:
		projectForm = ProjectForm(instance = project)
		return render(request, 'editProject.html', {'projectForm': projectForm})