def add_joke_to_twitter_table(conn: Engine, d_joke: dict) -> None: model = "validate_jokes" # d_joke already has the same parameters and column names as in the table d_joke["created_at"] = datetime.datetime.now().isoformat() db.add_record(conn, model, d_joke)
def put_sent_joke_db(conn: Engine, joke_id: int, sent_from: str) -> None: model = "sent_jokes" d_values = { "joke_id": joke_id, "sent_from": sent_from, "created_at": datetime.datetime.now().isoformat() } db.add_record(conn, model, d_values)
def put_joke_db(joke: str, author: str, author_email: str) -> None: conn = db.get_jokes_app_connection() model = "jokes_to_send" d_values = { "joke": joke, "author": author, "author_email": author_email, "rating": None, "tags": None, "created_at": datetime.datetime.now().isoformat(), } db.add_record(conn, model, d_values)
def add_admin_user(conn: Engine, username: str, email: str, hashed_password: str, disabled: bool, scopes: str) -> bool: # conn = db.get_jokes_app_connection() d_user_admin = { "username": username, "email": email, "hashed_password": hashed_password, "disabled": disabled, "scopes": scopes, } db.add_record(conn, "users_admin", d_user_admin) return True
def insert_rating_joke(user_id: str, joke_id: int, rating: float, source: str) -> bool: if check_user_exists(user_id) and check_joke_id_exists(joke_id): conn = db.get_jokes_app_connection() model = "ratings" d_values = { "user_id": user_id, "joke_id": joke_id, "rating": rating, "created_at": datetime.datetime.now().isoformat(), "source": source, } db.add_record(conn, model, d_values) return True else: return False
def add_user_mail(email: str) -> bool: conn = db.get_jokes_app_connection() if not has_db_mail_user(conn, email): s_uuid = str(uuid.uuid1()) d_user_mail = { "email": email, "id_hash": s_uuid, "created_at": datetime.datetime.now().isoformat() } db.add_record(conn, "users_mail", d_user_mail) else: # can be a user resubscribing if has_db_mail_user_deleted( conn, email): # if its true then set deleted_at null sql = "UPDATE public.users_mail SET deleted_at=null WHERE email='{email}';".format( email=email) db.execute_update(conn, sql) else: print("User with email: '{}' already exists. Skipping..".format( email)) return True
def add_user_telegram(user_id: str, first_name: str) -> bool: conn = db.get_jokes_app_connection() if not has_db_telegram_user(conn, user_id): d_user = { "user_id": user_id, "name": first_name, "created_at": datetime.datetime.now().isoformat() } return db.add_record(conn, "users_telegram", d_user) else: # user already created return True