def create(local=False, url=None, short=None, token=None): if local: local_make_response = data_to_object if url is None: return local_make_response(False, {'message': 'Invalid data'}) else: local_make_response = data_to_response if (not ('url' in request.form)): return local_make_response(False, {'message': 'Invalid data'}) url = request.form['url'] if 'short' in request.form: short = request.form['short'] else: short = None if 'token' in request.form: token = request.form['token'] if not (token is None): try: username = db.tokenLookup(request.form['token']) except DBException as err: return local_make_response(False, {'message': err.message}) else: username = None if not (short is None): if not (short.isalnum()): return local_make_response( False, {'message': 'Slug must be alphanumeric.'}) db = DBHandler() if (not validators.url(url)) | ('turang.ga' in url): return local_make_response(False, {'message': 'URL is not valid.'}) newUrl = baseurl try: newUrl += db.urlNew(url, short, username) except DBException as err: return local_make_response(False, {'message': err.message}) else: return local_make_response(True, {'url': newUrl})