Exemple #1
0
    def images_order(self, id):
        gallery = Gallery.load(self.db, id)

        gallery.images = json.loads(request.POST['images_order'])
        gallery.store(self.db);
        
        return 'OK'
Exemple #2
0
    def delete_image(self, id):
        gallery = Gallery.load(self.db, id)
        
        gallery.images.remove(request.GET['image'])
        gallery.store(self.db)

        return 'OK'
Exemple #3
0
    def upload_image(self, id):
        error = None

        image = request.POST['Filedata']
        if hasattr(image, 'file'):
            gallery = Gallery.load(self.db, id)

            im_filename = store_image(image.file)
            gallery.images.append(im_filename)
            gallery.store(self.db)

            im_obj = PILImage.open(image_path(im_filename))
            
            ret = {
                'status': '1',
                'name': image.filename,
                'width': im_obj.size[0],
                'height': im_obj.size[1],
                'mime': im_obj.format,
                }
        else:
            ret = {
                'status': '0',
                'error': 'Invalid Upload',
                }

        return json.dumps(ret)
Exemple #4
0
    def delete_gallery(self, id):
        gallery = Gallery.load(self.db, id)

        gallery.delete(self.db)

        flash("Gallery successfully deleted.")
        redirect(url(controller='admin', action='galleries'))
Exemple #5
0
    def do_edit_gallery(self, id=None, redirect_to_gallery=False):
        if not id:
            gallery = Gallery()
        else:
            gallery = Gallery.load(self.db, id)

            
        gallery.name = request.POST['name']
        gallery.text = request.POST['text']
        gallery.tags = [tag.strip().lower() for tag in request.POST['tags'].split(',')]
        gallery.tags = filter(lambda t: t != '', gallery.tags)

        # cover image
        if hasattr(request.POST['cover_image'], 'file'):
            if gallery.cover:
                remove_image(gallery.cover)
            
            gallery.cover = store_image(request.POST['cover_image'].file)

        # Video stuff
        for video in request.POST.getall('delete_video'):
            gallery.videos.remove(video)

        videos = [video.strip() for video in
                  request.POST['videos'].split(',')]
        videos = filter(lambda v: v != '', videos)

        if gallery.videos:
            gallery.videos.extend(videos)
        else:
            gallery.videos = videos
        

        gallery.date = date(int(request.POST['year']),
                            int(request.POST['month']),
                            1)

        gallery.store(self.db)

        flash("Gallery successfully edited.")
        if redirect_to_gallery:
            redirect(url(controller='admin', action='edit_gallery', id=gallery.id))
        else:
            redirect(url(controller='admin', action='galleries'))
Exemple #6
0
 def edit_gallery(self, id):
     c.gallery = Gallery.load(self.db, id)
     return render('/admin/edit_gallery.mako')
Exemple #7
0
 def images_delete_list(self, id):
     c.gallery = Gallery.load(self.db, id)
     
     return render('/admin/images_list.mako')