diff options
author | 2019-04-18 18:48:22 +0300 | |
---|---|---|
committer | 2019-04-24 17:04:43 +0300 | |
commit | da620c17769c0357e4a9137eedbb7cf044cc38d4 (patch) | |
tree | e2008953fa3637cd9da96fece5c2165e703436df /opnfv_testapi/resources | |
parent | 6ade07b42e9ef39dafda4504bc61eb4661b10cde (diff) |
Bug fix for ONAP/OVP portals
During portal review, some errors have been noticed and fixed.
- 'no role', In the 'My Results' page are displayed also results
from other users.
- 'user,reviewer' role, In the 'My Results' page are appeared all
results and not only for the current user.
- 'administrator' role, The applications are not appeared in the
application page
- 'reviewer' role, Reviewers cannot submit votes and after few
seconds a 'time out' is received.
Change-Id: Ia9bc3c4fdcac1b37ac03adff64ff689ca2428c0f
Signed-off-by: Panagiotis Karalis <pkaralis@intracom-telecom.com>
Diffstat (limited to 'opnfv_testapi/resources')
-rw-r--r-- | opnfv_testapi/resources/application_handlers.py | 8 | ||||
-rw-r--r-- | opnfv_testapi/resources/handlers.py | 27 |
2 files changed, 28 insertions, 7 deletions
diff --git a/opnfv_testapi/resources/application_handlers.py b/opnfv_testapi/resources/application_handlers.py index 7d823b8..653e6b5 100644 --- a/opnfv_testapi/resources/application_handlers.py +++ b/opnfv_testapi/resources/application_handlers.py @@ -236,19 +236,19 @@ class ApplicationsGURHandler(GenericApplicationHandler): data = json.loads(self.request.body) item = data.get('item') value = data.get(item) + owner = data.get('owner') logging.debug('%s:%s', item, value) try: - self.update(application_id, item, value) + self.update(application_id, item, value, owner) except Exception as e: logging.error('except:%s', e) return @gen.coroutine - def update(self, application_id, item, value): + def update(self, application_id, item, value, owner): self.json_args = {} self.json_args[item] = value - query = {'_id': objectid.ObjectId(application_id), 'owner': - self.get_secure_cookie(auth_const.OPENID)} + query = {'_id': objectid.ObjectId(application_id), 'owner': owner} db_keys = ['_id', 'owner'] if item == 'approved': if value == 'true': diff --git a/opnfv_testapi/resources/handlers.py b/opnfv_testapi/resources/handlers.py index 559e689..df0cae5 100644 --- a/opnfv_testapi/resources/handlers.py +++ b/opnfv_testapi/resources/handlers.py @@ -79,6 +79,30 @@ class GenericApiHandler(web.RequestHandler): date_range.update({'$gte': str(v)}) elif k == 'to': date_range.update({'$lt': str(v)}) + elif k == 'applications': + role = self.get_secure_cookie(auth_const.ROLE) + logging.info('role:%s', role) + if role: + if role.find("administrator") != -1: + query['$or'] = [ + { + "status": { + "$ne": "private" + } + } + ] + elif k == 'review': + role = self.get_secure_cookie(auth_const.ROLE) + logging.info('role:%s', role) + if role: + if role.find("reviewer") != -1: + query['$or'] = [ + { + "status": { + "$ne": "private" + } + } + ] elif k == 'signed': openid = self.get_secure_cookie(auth_const.OPENID) user = yield dbapi.db_find_one("users", {'openid': openid}) @@ -98,9 +122,6 @@ class GenericApiHandler(web.RequestHandler): } } ] - - if role.find("reviewer") != -1: - query['$or'].append({"status": {"$ne": "private"}}) elif k == 'status': if v.startswith('{'): query[k] = json.loads(v) |