def user_data_list( user_id ): list = [] data_stores = fetch_EnkiModelRestAPIDataStore_by_user_id( user_id ) for data_store in data_stores: app_name = '' app = EnkiModelApp.get_by_id( int( data_store.app_id )) if app: app_name = app.name list.append([ data_store.app_id, app_name, data_store.data_type, data_store.data_id, data_store.data_payload, data_store.read_access, data_store.time_expires ]) return list
def user_data_list(user_id): list = [] data_stores = fetch_EnkiModelRestAPIDataStore_by_user_id(user_id) for data_store in data_stores: app_name = '' app = EnkiModelApp.get_by_id(int(data_store.app_id)) if app: app_name = app.name list.append([ data_store.app_id, app_name, data_store.data_type, data_store.data_id, data_store.data_payload, data_store.read_access, data_store.time_expires ]) return list
def check_secret( user_id, auth_token, app_secret ): if EnkiModelRestAPITokenVerify.exist_by_user_id_token_app_secret( user_id, auth_token, app_secret ): # the user verify token contains the same secret as was sent in the request return True else: # retrieve the app_id from the verify token and check if the corresponding registered app has a new secret token_verify = EnkiModelRestAPITokenVerify.get_by_user_id_token( user_id, auth_token ) if token_verify: app = EnkiModelApp.get_by_id( int( token_verify.app_id )) if app and app.secret == app_secret: # update the user's verify token app_secret token_verify.app_secret = app.secret token_verify.put() return True return False
def post_reauthenticated(self, params): app_secret_set = params.get('app_secret_set') app_name = params.get('app_name') error_message = '' data = [] app_success = '' if app_secret_set: secret = enki.librestapi.generate_auth_token() app = EnkiModelApp.get_by_id(int(app_secret_set)) app.secret = secret app.put() self.add_infomessage('success', MSG.SUCCESS(), MSG.NEW_SECRET_GENERATED()) app_success = str(app.key.id()) data = enki.librestapi.apps_list(self.user_id) else: data = enki.librestapi.apps_list(self.user_id) if not app_name: error_message = MSG.NAME_NEEDED() elif (len(app_name) > enki.librestapi.APP_MAX_NAME_LENGTH): error_message = MSG.APP_NAME_TOO_LONG( str(enki.librestapi.APP_MAX_NAME_LENGTH)) elif EnkiModelApp.exist_by_name(app_name): error_message = MSG.APP_NAME_ALREADY_EXISTS() elif (EnkiModelApp.count_by_user_id(self.user_id) >= enki.librestapi.APP_MAX): error_message = MSG.APP_EXCEED_ALLOWED() else: secret = enki.librestapi.generate_auth_token() app = EnkiModelApp(user_id=self.user_id, name=app_name, secret=secret) app.put() data.append( [app_name, str(app.key.id()), secret, app.time_created]) self.add_infomessage('success', MSG.SUCCESS(), MSG.APP_CREATED()) app_success = str(app.key.id()) self.render_tmpl( 'apps.html', active_menu='profile', error=error_message, data=data, app_success=app_success, app_max=enki.librestapi.APP_MAX, app_max_name_length=enki.librestapi.APP_MAX_NAME_LENGTH, )
def check_secret(user_id, auth_token, app_secret): if EnkiModelRestAPITokenVerify.exist_by_user_id_token_app_secret( user_id, auth_token, app_secret): # the user verify token contains the same secret as was sent in the request return True else: # retrieve the app_id from the verify token and check if the corresponding registered app has a new secret token_verify = EnkiModelRestAPITokenVerify.get_by_user_id_token( user_id, auth_token) if token_verify: app = EnkiModelApp.get_by_id(int(token_verify.app_id)) if app and app.secret == app_secret: # update the user's verify token app_secret token_verify.app_secret = app.secret token_verify.put() return True return False