diff options
| -rw-r--r-- | cli/app/controllers/upload_controller.py | 4 | ||||
| -rw-r--r-- | cli/app/server/decorators.py | 4 | ||||
| -rw-r--r-- | cli/app/server/helpers.py | 61 | ||||
| -rw-r--r-- | cli/app/sql/models/page.py | 12 | ||||
| -rw-r--r-- | cli/app/sql/models/tile.py | 2 |
5 files changed, 41 insertions, 42 deletions
diff --git a/cli/app/controllers/upload_controller.py b/cli/app/controllers/upload_controller.py index 5463fc6..86f9f29 100644 --- a/cli/app/controllers/upload_controller.py +++ b/cli/app/controllers/upload_controller.py @@ -4,7 +4,7 @@ from werkzeug.datastructures import MultiDict from werkzeug.utils import secure_filename import os import numpy as np -import cv2 as cv +from PIL import Image from app.settings import app_cfg from app.sql.common import db, Session @@ -77,7 +77,7 @@ class UploadView(FlaskView): # decode image try: - im = cv.imdecode(nparr, cv.IMREAD_COLOR) + im = Image.fromarray(nparr) except: return jsonify({ 'status': 'error', 'error': 'Image parse error' }) diff --git a/cli/app/server/decorators.py b/cli/app/server/decorators.py index 62eb839..2e6f9dd 100644 --- a/cli/app/server/decorators.py +++ b/cli/app/server/decorators.py @@ -6,7 +6,7 @@ import os from time import time from datetime import datetime import numpy as np -import cv2 as cv +from PIL import Image from flask import request, jsonify from werkzeug.utils import secure_filename @@ -85,7 +85,7 @@ def store_uploaded_image(param_name, store=False, uploaded_im_path='static/data/ nparr = np.fromstring(file.read(), np.uint8) # decode image - im = cv.imdecode(nparr, cv.IMREAD_COLOR) + im = Image.fromarray(nparr) kwargs['im'] = im if store: diff --git a/cli/app/server/helpers.py b/cli/app/server/helpers.py index d4ba84a..e7aeaa2 100644 --- a/cli/app/server/helpers.py +++ b/cli/app/server/helpers.py @@ -1,6 +1,5 @@ from sqlalchemy import and_ from app.settings import app_cfg -from app.sql.models.media import Media import datetime import dateutil @@ -47,33 +46,33 @@ def parse_crop_arg(args): crop = None return crop -def parse_media_args(args): - criteria = [] - criteria_kwargs = {} - try: - import_id = int(args.get('import_id')) - criteria.append(Media.import_id == import_id) - criteria_kwargs['import_id_1'] = import_id - except: - pass - try: - start_date = str(args.get('start_date')) - start_date = dateutil.parser.parse(start_date) - start_date = start_date.replace(tzinfo=datetime.timezone.utc) - criteria.append(Media.created_at >= start_date) - criteria_kwargs['created_at_1'] = start_date - except: - pass - try: - end_date = str(args.get('end_date')) - end_date = dateutil.parser.parse(end_date) - end_date = end_date.replace(tzinfo=datetime.timezone.utc) - criteria.append(Media.created_at <= end_date) - criteria_kwargs['created_at_2'] = end_date - except: - pass - if len(criteria) > 1: - return criteria, criteria_kwargs - elif len(criteria) == 1: - return criteria, criteria_kwargs - return None, {} +# def parse_media_args(args): +# criteria = [] +# criteria_kwargs = {} +# try: +# import_id = int(args.get('import_id')) +# criteria.append(Media.import_id == import_id) +# criteria_kwargs['import_id_1'] = import_id +# except: +# pass +# try: +# start_date = str(args.get('start_date')) +# start_date = dateutil.parser.parse(start_date) +# start_date = start_date.replace(tzinfo=datetime.timezone.utc) +# criteria.append(Media.created_at >= start_date) +# criteria_kwargs['created_at_1'] = start_date +# except: +# pass +# try: +# end_date = str(args.get('end_date')) +# end_date = dateutil.parser.parse(end_date) +# end_date = end_date.replace(tzinfo=datetime.timezone.utc) +# criteria.append(Media.created_at <= end_date) +# criteria_kwargs['created_at_2'] = end_date +# except: +# pass +# if len(criteria) > 1: +# return criteria, criteria_kwargs +# elif len(criteria) == 1: +# return criteria, criteria_kwargs +# return None, {} diff --git a/cli/app/sql/models/page.py b/cli/app/sql/models/page.py index bad5568..f23db8d 100644 --- a/cli/app/sql/models/page.py +++ b/cli/app/sql/models/page.py @@ -40,9 +40,9 @@ class Page(Base): data['tiles'] = [ tile.toJSON() for tile in self.tiles ] return data -# class PageForm(ModelForm): -# class Meta: -# model = Page -# exclude = ['graph_id', 'settings', 'created_at', 'updated_at'] -# def get_session(): -# return Session() +class PageForm(ModelForm): + class Meta: + model = Page + exclude = ['settings', 'created_at', 'updated_at'] + def get_session(): + return Session() diff --git a/cli/app/sql/models/tile.py b/cli/app/sql/models/tile.py index 85ee1bf..7dfa80b 100644 --- a/cli/app/sql/models/tile.py +++ b/cli/app/sql/models/tile.py @@ -39,6 +39,6 @@ class Tile(Base): class TileForm(ModelForm): class Meta: model = Tile - # exclude = ['graph_id', 'page_id', 'target_page_id', 'settings', 'created_at', 'updated_at'] + exclude = ['settings', 'created_at', 'updated_at'] def get_session(): return Session() |
