def image_upload(request, image_id=None): instance = None if image_id: instance = Image.objects.get(pk=image_id) if request.method == "POST": form = ImageForm(request.POST, request.FILES, instance=instance) if form.is_valid(): new_instance = form.save(commit=True) # let's save the instance to get create its primary key if form.cleaned_data['delete_image'] and new_instance.image: new_instance.image.delete() if form.cleaned_data['image_path']: tmp_path = form.cleaned_data['image_path'] abs_tmp_path = os.path.join(settings.MEDIA_ROOT, tmp_path) fname, fext = os.path.splitext(os.path.basename(tmp_path)) filename = slugify(fname) + fext new_instance.image.save(filename, File(open(abs_tmp_path, "rb")), False) os.remove(abs_tmp_path) new_instance.save() return redirect("image_list") else: form = ImageForm(instance=instance) return render(request, "images/image_upload.html", {'instance': instance, 'form': form})
def createproj(request): if request.method == 'POST': form = ImageForm(request.POST, request.FILES, prefix="images") form_projet = ProjetForm(request.POST, prefix="projet") if form.is_valid() and form_projet.is_valid(): form.save(commit=False) projet = form_projet.save(commit=False) title = projet.title projet.slug = slugify(title) projet.user = request.user projet.meta_description = projet.content projet.meta_keywords = projet.content.split() projet.save() images = form.save(commit=False) images.project = projet images.save() success_url = reverse('projet.views.success_create', args=[str(projet.slug)]) return HttpResponseRedirect(success_url) else: form = ImageForm(prefix="images") form_projet = ProjetForm(prefix="projet") return render(request, 'projet/creation.html', { 'form': form, 'form_projet': form_projet, })
def edit_proj(request, project_slug): proj = get_object_or_404(Projet, slug=project_slug) if proj.user != request.user: return HttpResponseForbidden() else: images = ImageProject.objects.get(project=proj) if request.POST: form_projet = ProjetForm(request.POST, instance=proj, prefix="projet") form = ImageForm(request.POST, request.FILES, prefix="images", instance=images) import ipdb;ipdb.set_trace() if form.is_valid() and form_projet.is_valid(): form.save() proj = form_projet.save(commit=False) proj.slug = slugify(proj.title) proj.save() # If the save was successful, redirect to another page redirect_url = reverse('tracking.views.dashboard', kwargs={'projet_slug': proj.slug}) return HttpResponseRedirect(redirect_url) else: form = ImageForm(prefix="images", instance=images) form_projet = ProjetForm(prefix="projet", instance=proj) return render(request, 'projet/edit.html', { 'form': form, 'form_projet': form_projet, 'proj': proj, })
def save_img_post(request): """ Saves a ImagePost """ form = ImageForm(request.POST, request.FILES) if form.is_valid(): newdoc = ImagePost(imgfile = request.FILES["file"]) newdoc.save() else: print form.errors
def post(self, request, *args, **kwargs): self.object = Image user = request.user form = ImageForm(request.POST, request.FILES) if form.is_valid(): self.object = form.save(commit=False) self.object.user = user self.object.save() return HttpResponseRedirect(reverse('images_url')) else: return self.render_to_response(self.get_context_data(form=form))
def upload_image(request, upload_path=None): form = ImageForm(request.POST, request.FILES) if form.is_valid(): image = form.cleaned_data['file'] if image.content_type not in ['image/png', 'image/jpg', 'image/jpeg', 'image/pjpeg']: return HttpResponse('Bad image format') image_name, extension = os.path.splitext(image.name) m = md5.new(smart_str(image_name)) hashed_name = '{0}{1}'.format(m.hexdigest(), extension) image_path = default_storage.save(os.path.join(upload_path or UPLOAD_PATH, hashed_name), image) image_url = default_storage.url(image_path) return HttpResponse(json.dumps({'filelink': image_url})) return HttpResponseForbidden()
def upload(request): '''upload an image''' if request.POST: #save form form = ImageForm(request.POST, request.FILES) if form.is_valid(): form.save() return HttpResponseRedirect('/hello/all_uploads') else: #show form form = ImageForm() args={} args['form'] = form return render_to_response("upload.html", args, context_instance=RequestContext(request))
def uploadImage(request): if request.method== 'POST': form = ImageForm(request.POST, request.FILES) if form.is_valid(): form.save(commit=True) return images(request) else: print form.errors else: form = ImageForm() contextdict = {"form": form} return render(request, 'uploadImage.html', contextdict)
def browse(request, id=None, tag=None, model=None, admin_instance=None, template='limage/browse.html'): imgs = Image.objects.all() o = None formargs = {} try: int(id) except ValueError: return HttpResponse(json.dumps({ 'form': 'sorry, we can not upload images until you saved your Story at least once!', 'images': [], 'enable_upload': False }), mimetype='application/json') if model: o = model.objects.get(id=id) formargs = dict(content_type=ContentType.objects.get_for_model(model), object_id=o.pk) imgs = imgs.filter(**formargs) if tag: imgs = imgs.filter(tags__name=tag) if formargs.get('content_type'): formargs['content_type'] = formargs['content_type'].pk form = ImageForm(initial=formargs) if request.method == 'POST': form = ImageForm(request.POST, request.FILES, initial=formargs) if form.is_valid(): form.save() imgs = { 'images': [{ 'url': x.img.url, 'id': x.pk, } for x in imgs], 'form': form.as_p(), 'enable_upload': True } return HttpResponse(json.dumps(imgs), mimetype="application/json")
def upload(request): '''upload an image''' if request.POST: #save form form = ImageForm(request.POST, request.FILES) if form.is_valid(): form.save() return HttpResponseRedirect('/hello/all_uploads') else: #show form form = ImageForm() args = {} args['form'] = form return render_to_response("upload.html", args, context_instance=RequestContext(request))
def create_image(request): if request.POST: form = ImageForm(request.POST, request.FILES) if form.is_valid(): form.save() return HttpResponseRedirect('/galleries/albums/') else: form = ImageForm() args = {} args.update(csrf(request)) args['form'] = form return render(request,'create_image.html', args)
def model_form_upload(request): if request.method == 'POST': form = ImageForm(request.POST, request.FILES) form2 = request.POST for key, values in request.POST.lists(): print(key, values) for key, values in request.FILES.lists(): print(key, values) if form.is_valid(): print '4' name = form.cleaned_data['name'] email = form.cleaned_data['email'] profile = form.cleaned_data['profile'] a = ProfileInfo(name=name, email=email, texts=profile) a.save() ages = form2.getlist('age') print ages for x in ages: print x y = Age.objects.get(age=x) a.age.add(y) a.save() print a.age for f in request.FILES.getlist('image'): print 'start' b = Image(name=name, email=email, image=f) print b b.save() a.images.add(b) print a.images a.save() return HttpResponseRedirect('OK') else: print 'form not valid' return render(request, 'frontpage/model_form_upload.html', { 'form': form }) else: if request.GET: print 'its a get request' id = request.GET['id'] request.session['package'] = id print id form = ImageForm() return render(request, 'frontpage/model_form_upload.html', { 'form': form })
def add_image(request): form = ImageForm() if request.POST: form = ImageForm(request.POST, request.FILES) if form.is_valid(): image = request.FILES['image_file'] comment = form.cleaned_data['comment'] format = image.name.split('.')[-1] p = Images(comment = comment, name = '', useragent = request.META['HTTP_USER_AGENT'], ip = request.META['REMOTE_ADDR'], views = 0 ,views_last_hour = 0, md5 = 0, format = format) p.save() save_image(image, p.id) return HttpResponseRedirect('/%s' % to_62(p.id)) else: form = ImageForm() return render_to_response("forms/add_image.html", {'form': form}) else: return render_to_response("forms/add_image.html", {'form': form})
def manageImages(request, id): ad = Ad.objects.get(id=id) isOwnAd = (request.user == ad.user) adImage = AdsImages(ad=ad) adImages = AdsImages.findByAd(ad) form = ImageForm() if isOwnAd: if request.method == 'POST' and isOwnAd: if (request.POST.get('uploadBtn') != None): form = ImageForm(request.POST, request.FILES, instance=adImage) if form.is_valid(): form.save() if (request.POST.get('delImageBtn') != None): selected = request.POST.getlist('imageChkBx') for imgId in selected: image = AdsImages.findById(imgId) image.delete() context = {'form': form, 'images': adImages, 'ad': ad} return render(request, 'oglasnik/manageImages.html', context) return redirect(reverse('index'))
def upload(request): # Handle file upload if request.method == "POST": form = ImageForm(request.POST, request.FILES) if form.is_valid(): image = Image(imageFile=request.FILES["imageFile"]) image.save() # Redirect to the document list after POST return HttpResponseRedirect(reverse("shop.views.upload")) else: form = ImageForm() # A empty, unbound form # Load documents for the list page images = Image.objects.all() # Render list page with the documents and the form return render_to_response( "misc/uploadFile.html", getDefaultMaps({"images": images, "form": form}), context_instance=RequestContext(request), )
def add_image(request): #last_image_id = Images.objects.order_by('-id')[0].id else last_image_id = 0 form = ImageForm() if request.POST: form = ImageForm(request.POST, request.FILES) if form.is_valid(): image = request.FILES['image_file'] save_image(image) #thumb_image = thumbnail(image) #save_image(thumb_image) p = Images(comment=request.POST['comment'], name = file.name, useragent=request.META['HTTP_USER_AGENT'], ip=request.META['REMOTE_ADDR'], views=0, md5=0 ) p.save() return HttpResponse(image.name) #return render_to_response("forms/add_image.html", {'form': form}) else: return render_to_response("forms/add_image.html", {'form': form}) else: return render_to_response("forms/add_image.html", {'form': form})
def upload_image(request, upload_path=None): form = ImageForm(request.POST, request.FILES) if form.is_valid(): image = form.cleaned_data['file'] if image.content_type not in ['image/png', 'image/jpg', 'image/jpeg', 'image/pjpeg']: return HttpResponse('Bad image format') try: gallery = Gallery.objects.get(title_slug='pages_photos') except: gallery = Gallery( title = 'Site Pages Photos', title_slug = 'pages_photos', is_public = False, description = 'System album for holding images added directly to the pages', ) gallery.save() image_name, extension = os.path.splitext(image.name) m = md5.new(smart_str(image_name)) image_name = '{0}{1}'.format(m.hexdigest(), extension) try: photo = Photo(image=image, title=image_name, title_slug = slugify(image_name), caption='') except: photo = Photo(image=image_name, title_slug = slugify(image_name), caption='') photo.save() gallery.photos.add(photo) image_url = photo.get_display_url() # Original Code m = md5.new(smart_str(image_name)) hashed_name = '{0}{1}'.format(m.hexdigest(), extension) image_path = default_storage.save(os.path.join(upload_path or UPLOAD_PATH, hashed_name), image) # image_url = default_storage.url(image_path) return HttpResponse(json.dumps({'filelink': image_url})) return HttpResponseForbidden()
def browse(request, id=None, tag=None, model=None, admin_instance=None, template="limage/browse.html"): imgs = Image.objects.all() o = None formargs = {} try: int(id) except ValueError: return HttpResponse( json.dumps( { "form": "sorry, we can not upload images until you saved your Story at least once!", "images": [], "enable_upload": False, } ), mimetype="application/json", ) if model: o = model.objects.get(id=id) formargs = dict(content_type=ContentType.objects.get_for_model(model), object_id=o.pk) imgs = imgs.filter(**formargs) if tag: imgs = imgs.filter(tags__name=tag) if formargs.get("content_type"): formargs["content_type"] = formargs["content_type"].pk form = ImageForm(initial=formargs) if request.method == "POST": form = ImageForm(request.POST, request.FILES, initial=formargs) if form.is_valid(): form.save() imgs = {"images": [{"url": x.img.url, "id": x.pk} for x in imgs], "form": form.as_p(), "enable_upload": False} return HttpResponse(json.dumps(imgs), mimetype="application/json")
def upload_image(request, project_name, issueset_id, issue_id): """ View for uploading the image and attaching it to an issue. """ project = get_object_or_404(CollabProject, slug=project_name) project_id = project.id issueset = get_object_or_404(IssueSet, id=issueset_id) issue = get_object_or_404(Issue, id=issue_id) if not is_allowed(request, project_id, Issue._meta.verbose_name, 'Editable'): return handle_privilege(request, "You do not have privileges to edit issues!", issueset.get_absolute_url()) # Check if the issue exists in that project AND issue set! if issue.issueset.project.id != project.id or issue.issueset.id != issueset.id: return handle_privilege(request, "The issue does not match the group or issue list!", project.get_absolute_url()) if request.method == 'POST': form = ImageForm(request.POST, request.FILES) if form.is_valid(): # In Django 1.02, I need the following hack. The reason is # that to decide where to upload the file to, it need to # know what issue it is attached to. When I execute # form.save(commit=False), it fails (although not in the # current SVN). form.cleaned_data["issue"] = issue image = form.save(commit=False) image.issue = issue image.save() message = "The image has been added to the issue." request.user.message_set.create(message=message) return HttpResponseRedirect(issue.get_absolute_url()) else: form = ImageForm() return render_to_response('issues/add_image.html', {'form': form, 'issue': issue, 'project': project}, context_instance=RequestContext(request))
def create_stories(request): if request.user.is_authenticated(): if request.POST: current_user = request.user list_form = [] #Get the story form storyform = StoryForm(request.POST,prefix = "Story") #Check if text and image exists if not (request.POST.getlist('text') and request.FILES.getlist('source')): from django.contrib import messages messages.add_message(request, messages.WARNING, 'Please insert at least 1 text and 1 image') return render_page(request,"create_stories.html","custom error") print storyform #Handle insertion for the title. if storyform.is_valid(): story = storyform.save(commit = False) story.user_id = current_user.id story.save() #Handle insertion of the text for f,p in zip(request.POST.getlist('text'),request.POST.getlist('text_position')): text = TextForm(request.POST,{'position' : p,'text': f }) if text.is_valid(): addtext = text.save(commit = False) addtext.storyid_id = story.id addtext.user = current_user addtext.position = p addtext.text = f list_form.append(addtext); else: return render_page(request,"create_stories.html",{'form': text}) #Handle insertion of the image for f,p in zip(request.FILES.getlist('source'),request.POST.getlist('position')): if f.size > 5000000: from django.contrib import messages messages.add_message(request, messages.WARNING, 'Image size should not be more than 5MB.') return render_page(request,"create_stories.html","custom error") form = ImageForm(request.POST, {'source': f }) if form.is_valid(): addimage = form.save(commit = False) addimage.storyid_id = story.id addimage.user = current_user addimage.position = p list_form.append(addimage); else: return render_page(request,"create_stories.html",{'form': form}) #All form has been validated. Save it permanently for item_form in list_form: item_form.save() #Change the story complete to true so user can see it. story.complete = True; story.save(); #Stream to all users who follows. stream_feed(request.user.id,str(request.user.id) + ':' + str(story.storyid)) return HttpResponseRedirect("/stories/read/?s=" + str(story.storyid)) else: return render_page(request,"create_stories.html",{'form': storyform}) else: return render_page(request,"create_stories.html","no error") else: return HttpRespondeRedirect("home.html")