def newPicture(): e = Event('getImage.newPicture') pict = Picture() blibb = request.form['b'] key = request.form['k'] user = get_user_name(key) items = dict() r = pict.create(user, items, blibb) e.save() if r != 'null': return r else: abort(404)
def upload(): current_app.logger.info('Upload Image') login_key = request.form.get('login_key', False) # app_token = request.form.get('app_token', False) app_user = request.form.get('u', False) if login_key: user = get_user_name(login_key) else: user = app_user if 'file' in request.files: file = request.files['file'] if is_image(file.filename): object_id = Picture.create(user, {}, file.filename) elif is_attachment(file.filename): object_id = Attachment.create(user, {}, file.filename) filename = secure_filename(object_id + '-' + file.filename) c = connect_s3() bucket_name = get_config_value('BUCKET') bucket = c.create_bucket(bucket_name) k = Key(bucket) k.key = user + '/' + filename k.set_metadata('owner', user) extension = os.path.splitext(filename)[1] k.content_type = file.content_type current_app.logger.info('Extension: ' + str(extension)) current_app.logger.info('file.content_type: ' + str(file.content_type)) if extension.lower() == '.jpg': k.content_type = 'image/jpeg' if extension.lower() == '.png': k.content_type = 'image/png' if extension.lower() == '.gif': k.content_type = 'image/gif' current_app.logger.info('Extension: ' + str(extension)) current_app.logger.info('file.content_type: ' + str(k.content_type)) k.set_contents_from_string(file.read()) k.make_public() url = 'http://%s/%s' % (bucket_name, k.key) current_app.logger.info( '########## url: ' + str(url) + ' ' + str(bucket) ) if is_image(file.filename): Picture.add_url(object_id, url) elif is_attachment(file.filename): object_id = Attachment.add_url(object_id, file.filename) return jsonify({'upload': url}) return jsonify({'upload': 'error'})
def getImage(pict_id=None, size=160): e = Event('web.content.getImage') r = None if is_valid_id(pict_id): try: img = Picture.dump_image(pict_id) g = file(Picture.get_image_by_size(img, size)) return Response(g, direct_passthrough=True) except IOError: abort(404) e.save() if r != 'null': return json.dumps(r) else: abort(404)
def newBlibb(): name = request.form['bname'] desc = request.form['bdesc'] template = request.form['btemplate'] key = request.form['bkey'] user = get_user_name(key) image_id = request.form['bimage'] slug = request.form['slug'] write_access = request.form['write_access'] read_access = request.form['read_access'] # check if a blibb with that slug already exists blibb = Blibb.get_by_slug(user, slug) # return jsonify(blibb) if not blibb: res = {'error': 'None'} if is_valid_id(image_id): image = Picture.dump_image(image_id) else: image = 'blibb.png' new_id = Blibb.insert(user, name, slug, desc, template, image, read_access, write_access) res = {'id': new_id} else: res = {'error': 'Blibb with that slug already exists'} return jsonify(res)
def getImageByUsername(user_name=None): r = Picture.get_images({'u': user_name}, {'_id': 1, 'b': 1}) current_app.logger.info(r) if r and len(r) > 0: return jsonify({'images': r}) else: abort(404)
def set_picture_data(): e = Event('getImage.set_picture_data') jsonData = request.form['p'] r = Picture.updateJson(jsonData) e.save() if r != 'null': return r else: abort(404)
def get_picture_data(picture_id=None): e = Event('getImage.get_picture_data') r = None if is_valid_id(picture_id): r = Picture.dump_image(picture_id) e.save() if r is not None: return jsonify(r) else: abort(404)
def test_getObjects(self): p = Picture() res = p.getObjects({'u':'ipedrazas'},{'_id','b'}) print res
def add_picture(self, filter, picture_id): if is_valid_id(picture_id): image = Picture.dump_image(picture_id) objects.update(filter, {"$set": {'img': image}}) return picture_id return Message.get('id_not_valid')