コード例 #1
0
ファイル: views.py プロジェクト: cns-iu/nwb
def new_datarequest(request):
    user = request.user
    if request.method != "POST":
        # New form needed
        form = DataRequestForm()
    else:
        form = DataRequestForm(request.POST)
        if form.is_valid():
            # The request instance from from.save() would not have an creator since we don't let the user set this
            #   It is therefore necessary that we do not commit and handle setting the creator here.
            datarequest = form.save(commit=False)
            datarequest.creator = user
            datarequest.slug = slugify(datarequest.name)
            datarequest.is_active = True
            datarequest.save()
            return HttpResponseRedirect(
                reverse(
                    "epic.datarequests.views.view_datarequest",
                    kwargs={"item_id": datarequest.id, "slug": datarequest.slug},
                )
            )
        else:
            # Form will have errors which will be displayed by the new_datarequest.html page
            pass
    return render_to_response(
        "datarequests/new_datarequest.html", {"form": form}, context_instance=RequestContext(request)
    )
コード例 #2
0
ファイル: views.py プロジェクト: cns-iu/nwb
def edit_datarequest(request, item_id, slug):
    user = request.user
    datarequest = get_object_or_404(DataRequest, pk=item_id)
    
    if datarequest.creator != user:
        view_datarequest_url = get_item_url(
            datarequest, 'epic.datarequests.views.view_datarequest')
        
        return HttpResponseRedirect(view_datarequest_url)
    else:
        if request.method != 'POST':
            current_tags = \
                Tagging.objects.get_edit_string(item=datarequest, user=user)
            
            form = DataRequestForm(
                instance=datarequest, initial={'tags': current_tags})
        else:
            form = DataRequestForm(request.POST, instance=datarequest)
            
            if form.is_valid():
                tag_names = form.cleaned_data["tags"]
                Tagging.objects.update_tags(tag_names=tag_names, 
                                        item=datarequest, 
                                        user=user)
                datarequest = form.save(commit=False) 
                datarequest.save()
                
                view_datarequest_url = get_item_url(
                    datarequest, 'epic.datarequests.views.view_datarequest')
                
                return HttpResponseRedirect(view_datarequest_url)
        
        return render_to_response('datarequests/edit_datarequest.html',
                                  {'form': form, 'datarequest': datarequest},
                                  context_instance=RequestContext(request))
コード例 #3
0
ファイル: views.py プロジェクト: cns-iu/nwb
def new_datarequest(request):
    user = request.user
    if request.method != 'POST':
        form = DataRequestForm()
    else:
        form = DataRequestForm(request.POST)
        
        if form.is_valid():
            datarequest = form.save(commit=False)
            datarequest.creator = user
            datarequest.is_active = True
            datarequest.save()
            
            tag_names = form.cleaned_data['tags']
            Tagging.objects.update_tags(tag_names=tag_names, 
                                        item=datarequest, 
                                        user=user)
            
            view_datarequest_url = get_item_url(
                datarequest, 'epic.datarequests.views.view_datarequest')
            
            return HttpResponseRedirect(view_datarequest_url)
    
    return render_to_response(
        'datarequests/new_datarequest.html',
        {'form': form},
        context_instance=RequestContext(request))
コード例 #4
0
def new_datarequest(request):
    user = request.user
    if request.method != 'POST':
        form = DataRequestForm()
    else:
        form = DataRequestForm(request.POST)
        if form.is_valid():
            datarequest = form.save(commit=False)
            datarequest.creator = user
            datarequest.slug = slugify(datarequest.name)
            datarequest.is_active = True
            datarequest.save()
            
            tag_names = form.cleaned_data["tags"]
            Tagging.objects.update_tags(tag_names=tag_names, 
                                        item=datarequest, 
                                        user=user)
                
            return HttpResponseRedirect(reverse('epic.datarequests.views.view_datarequest', 
                                                kwargs={'item_id':datarequest.id, 
                                                        'slug':datarequest.slug}))
        else:
            pass
    return render_to_response('datarequests/new_datarequest.html', 
                              {'form':form}, 
                              context_instance=RequestContext(request))
コード例 #5
0
def new_datarequest(request):
    user = request.user
    if request.method != 'POST':
        form = DataRequestForm()
    else:
        form = DataRequestForm(request.POST)
        
        if form.is_valid():
            # The request instance from from.save() would not have an creator
            # since we don't let the user set this.  It is therefore necessary
            # that we do not commit and handle setting the creator here. 
            datarequest = form.save(commit=False)
            datarequest.creator = user
            datarequest.slug = slugify(datarequest.name)
            datarequest.is_active = True
            datarequest.save()
            
            tag_names = form.cleaned_data["tags"]
            Tagging.objects.update_tags(tag_names=tag_names, 
                                        item=datarequest, 
                                        user=user)
            
            view_datarequest_url = get_item_url(
                datarequest, 'epic.datarequests.views.view_datarequest')
            
            return HttpResponseRedirect(view_datarequest_url)
    return render_to_response('datarequests/new_datarequest.html', 
                              {'form': form}, 
                              context_instance=RequestContext(request))
コード例 #6
0
ファイル: views.py プロジェクト: cns-iu/nwb
def new_datarequest(request):
    user = request.user
    if request.method != "POST":
        form = DataRequestForm()
    else:
        form = DataRequestForm(request.POST)

        if form.is_valid():
            datarequest = form.save(commit=False)
            datarequest.creator = user
            datarequest.is_active = True
            datarequest.save()

            #    We need to save the categories as step 2 because it is a m2m relationship.
            datarequest.categories = form.cleaned_data["category"]
            datarequest.save()

            tag_names = form.cleaned_data["tags"]
            Tagging.objects.update_tags(tag_names=tag_names, item=datarequest, user=user)

            view_datarequest_url = get_item_url(datarequest, "epic.datarequests.views.view_datarequest")

            return HttpResponseRedirect(view_datarequest_url)

    return render_to_response(
        "datarequests/new_datarequest.html", {"form": form}, context_instance=RequestContext(request)
    )
コード例 #7
0
def new_datarequest(request):
	user = request.user
	if request.method != 'POST':
		#New form needed
		form = DataRequestForm()
	else:
		form = DataRequestForm(request.POST)
		if form.is_valid():
			# The request instance from from.save() would not have an creator since we don't let the user set this
			#   It is therefore necessary that we do not commit and handle setting the creator here. 
			datarequest = form.save(commit=False)
			datarequest.creator = user
			datarequest.slug = slugify(datarequest.name)
			datarequest.save()
			return HttpResponseRedirect(reverse('epic.datarequests.views.view_datarequest', kwargs={'item_id':datarequest.id,}))
		else:
			#Form will have errors which will be displayed by the new_datarequest.html page
			pass
	return render_to_response('datarequests/new_datarequest.html', {'form':form, 'user':user,})
コード例 #8
0
def edit_datarequest(request, item_id, slug):
    user = request.user
    datarequest = get_object_or_404(DataRequest,pk=item_id)
    if datarequest.creator != user:
        #only a request's owner should be able to change it
        return HttpResponseRedirect(
                reverse('epic.datarequests.views.view_datarequest', 
                        kwargs={'item_id':datarequest.id, 
                                'slug':datarequest.slug}))
    else:
        if request.method != 'POST':
            #User hasn't seen the form yet, so fill in what we know
            current_tags = Tagging.objects.get_edit_string(item=datarequest, 
                                                           user=user)
            form = DataRequestForm(instance=datarequest, 
                                   initial={'tags': current_tags})
        else:
            form = DataRequestForm(request.POST, instance=datarequest)
            if form.is_valid():
                tag_names = form.cleaned_data["tags"]
                Tagging.objects.update_tags(tag_names=tag_names, 
                                        item=datarequest, 
                                        user=user)
            
                datarequest = form.save(commit=False)
                datarequest.slug = slugify(datarequest.name)  
                datarequest.save()
                
                return HttpResponseRedirect(
                        reverse('epic.datarequests.views.view_datarequest', 
                                kwargs={'item_id':datarequest.id, 
                                        'slug':datarequest.slug}))
            else:
                #Form will have errors which will be displayed by the 
                #  new_datarequest.html page
                pass
        return render_to_response('datarequests/edit_datarequest.html', 
                                  {'form': form, 'datarequest': datarequest}, 
                                  context_instance=RequestContext(request))
コード例 #9
0
def edit_datarequest(request, item_id=None):
	user = request.user
	datarequest = get_object_or_404(DataRequest,pk=item_id)
	if datarequest.creator != user:
		#only a request's owner should be able to change it
		return HttpResponseRedirect(reverse('epic.datarequests.views.view_datarequest', kwargs={'item_id':datarequest.id,}))
	else:
		if request.method != 'POST':
			#User hasn't seen the form yet, so fill in what we know
			form = DataRequestForm(instance=datarequest)
		else:
			form = DataRequestForm(request.POST, instance=datarequest)
			if form.is_valid():
				
				datarequest = form.save(commit=False)
				datarequest.slug = slugify(datarequest.name)  
				datarequest.save()
				
				return HttpResponseRedirect(reverse('epic.datarequests.views.view_datarequest', kwargs={'item_id':datarequest.id,}))
			else:
				#Form will have errors which will be displayed by the new_datarequest.html page
				pass
		return render_to_response('datarequests/edit_datarequest.html', {'form':form, 'user':user, 'datarequest':datarequest})
コード例 #10
0
ファイル: views.py プロジェクト: cns-iu/nwb
def edit_datarequest(request, item_id, slug):
    user = request.user
    datarequest = get_object_or_404(DataRequest, pk=item_id)
    if datarequest.creator != user:
        # only a request's owner should be able to change it
        return HttpResponseRedirect(
            reverse(
                "epic.datarequests.views.view_datarequest", kwargs={"item_id": datarequest.id, "slug": datarequest.slug}
            )
        )
    else:
        if request.method != "POST":
            # User hasn't seen the form yet, so fill in what we know
            form = DataRequestForm(instance=datarequest)
        else:
            form = DataRequestForm(request.POST, instance=datarequest)
            if form.is_valid():

                datarequest = form.save(commit=False)
                datarequest.slug = slugify(datarequest.name)
                datarequest.save()

                return HttpResponseRedirect(
                    reverse(
                        "epic.datarequests.views.view_datarequest",
                        kwargs={"item_id": datarequest.id, "slug": datarequest.slug},
                    )
                )
            else:
                # Form will have errors which will be displayed by the new_datarequest.html page
                pass
        return render_to_response(
            "datarequests/edit_datarequest.html",
            {"form": form, "datarequest": datarequest},
            context_instance=RequestContext(request),
        )
コード例 #11
0
ファイル: views.py プロジェクト: cns-iu/nwb
def edit_datarequest(request, item_id, slug):
    user = request.user
    datarequest = get_object_or_404(DataRequest, pk=item_id)

    if datarequest.creator != user:
        view_datarequest_url = get_item_url(datarequest, "epic.datarequests.views.view_datarequest")

        return HttpResponseRedirect(view_datarequest_url)
    else:
        if request.method != "POST":
            current_tags = Tagging.objects.get_edit_string(item=datarequest, user=user)

            initial_datarequest_data = {"tags": current_tags}

            initial_datarequest_data["category"] = datarequest.categories.values_list("id", flat=True)

            form = DataRequestForm(instance=datarequest, initial=initial_datarequest_data)
        else:
            form = DataRequestForm(request.POST, instance=datarequest)

            if form.is_valid():
                tag_names = form.cleaned_data["tags"]
                Tagging.objects.update_tags(tag_names=tag_names, item=datarequest, user=user)
                datarequest = form.save(commit=False)
                datarequest.categories = form.cleaned_data["category"]
                datarequest.save()

                view_datarequest_url = get_item_url(datarequest, "epic.datarequests.views.view_datarequest")

                return HttpResponseRedirect(view_datarequest_url)

        return render_to_response(
            "datarequests/edit_datarequest.html",
            {"form": form, "datarequest": datarequest},
            context_instance=RequestContext(request),
        )