Exemplo n.º 1
0
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})
Exemplo n.º 2
0
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})
Exemplo n.º 3
0
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,
        })
Exemplo n.º 4
0
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,
        })
Exemplo n.º 5
0
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
Exemplo n.º 6
0
 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))
Exemplo n.º 7
0
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()
Exemplo n.º 8
0
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()
Exemplo n.º 9
0
Arquivo: views.py Projeto: psultan/OST
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))
Exemplo n.º 10
0
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)
Exemplo n.º 11
0
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")
Exemplo n.º 12
0
Arquivo: views.py Projeto: psultan/OST
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))
Exemplo n.º 13
0
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)
Exemplo n.º 14
0
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
    })
Exemplo n.º 15
0
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})
Exemplo n.º 16
0
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'))
Exemplo n.º 17
0
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),
    )
Exemplo n.º 18
0
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})
Exemplo n.º 19
0
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()
Exemplo n.º 20
0
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")
Exemplo n.º 21
0
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))
Exemplo n.º 22
0
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")