def addUser(username, refresh_token, playlist_id_short=None, playlist_id_medium=None, playlist_id_long=None): session = Session() id_exists = session.query(User.id).filter_by(username=username).scalar() # new user if id_exists == None: user = User(username=username, refresh_token=refresh_token, playlist_id_short=playlist_id_short, playlist_id_medium=playlist_id_medium, playlist_id_long=playlist_id_long) session.add(user) logging.info('New auto user: '******'Auto user updated: ' + user.username) # only update playlist IDs that are new if playlist_id_short != None: user.playlist_id_short = playlist_id_short if playlist_id_medium != None: user.playlist_id_medium = playlist_id_medium if playlist_id_long != None: user.playlist_id_long = playlist_id_long session.commit() session.close()
def add_user(bot, update): root_from_set = config['TELEGRAM']['Root_users'] root_from_set = root_from_set.split(',') is_root = False for id in root_from_set: if str(id) == str(update.message.chat_id): is_root = True if not is_root: return False text = update.message.text text = text.replace('/addUser ', '') text = text.split(' ') adding_chat_it = text[0] try: adding_user_name = text[1] except IndexError: adding_user_name = '' session = Session() q = session.query(TrustedChats).filter( TrustedChats.chat_id == str(adding_chat_it)) if q.count(): bot.send_message(chat_id=update.message.chat_id, text="This user already in base.") bot.send_message(chat_id=update.message.chat_id, text="Bitch") else: myobject = TrustedChats(chat_id=str(adding_chat_it), name=adding_user_name) session.add(myobject) session.commit() bot.send_message(chat_id=update.message.chat_id, text="User was added.") session.close()
def search_db(sender, data): simple.hide_item("Create Document from Template") session = Session() vars = session.query(Variable).order_by(Variable.name.asc()) with simple.window(f"Search in DB ({data.split('_')[0]})", **default_window()): core.add_text("All variables") for var in vars: core.add_input_text( f"{var.name}_name_search", label="", width=150, enabled=False, default_value=var.name, ) core.add_same_line(spacing=10) core.add_input_text( f"{var.name}_content_search", label="", width=300, enabled=False, default_value=var.content, ) core.add_same_line(spacing=10) core.add_button( f"{var.name}_update_button_search", label="Use this value", callback=use_value, callback_data=((data, var.content)), ) core.add_button( "button_db_close", label="Close Window", callback=close_popup, )
def is_trusted(tchatid): session = Session() q = session.query(TrustedChats).filter( TrustedChats.chat_id == str(tchatid)) session.close() if q.count(): return True return False
def timed_job(): session = Session() users = session.query(Users) for u in users: if datetime.datetime.now() >= u.time_remind: viber.send_messages(u.viber_id, [TextMessage(text="Пора учить слова", keyboard=KEYBOARD, tracking_data='tracking_data')]) session.close()
def save_or_update_db(sender, data): session = Session() name = core.get_value(data[0]) content = core.get_value(data[1]) args = argparse.Namespace(name=name, content=content, tag=None) db_var = session.query(Variable).filter(Variable.name == name).first() if db_var: update_variable(args) else: add_variable(args)
def updatePlaylists(): session = Session() # attempt to update each user's playlists for user in session.query(User): is_active = False # authorize the application with Spotify API payload = refreshToken(user.refresh_token) # if user account has been removed or authorization revoked, user is deleted if payload == None: session.delete(user) else: access_token = payload[0] playlist = user.playlist_id_short if playlist != None: # if the playlist has not been deleted if (dbClearPlaylist(access_token, playlist) != None): uri_list = dbGetTopTracksURI(access_token, 'short_term', 50) dbAddTracksPlaylist(access_token, playlist, uri_list) is_active = True else: user.playlist_id_short = None playlist = user.playlist_id_medium if playlist != None: if (dbClearPlaylist(access_token, playlist) != None): uri_list = dbGetTopTracksURI(access_token, 'medium_term', 50) dbAddTracksPlaylist(access_token, playlist, uri_list) is_active = True else: user.playlist_id_medium = None playlist = user.playlist_id_long if playlist != None: if (dbClearPlaylist(access_token, playlist) != None): uri_list = dbGetTopTracksURI(access_token, 'long_term', 50) dbAddTracksPlaylist(access_token, playlist, uri_list) is_active = True else: user.playlist_id_long = None # if no playlists could be updated, then remove user if not is_active: session.delete(user) session.commit() session.close() logging.info('Updated TopTracks Playlists')
def add(id, name): session = Session() q = session.query(TrustedChats).filter(TrustedChats.chat_id == str(id)) if q.count(): click.secho(click.style('ChatId must be unique.', fg='red', blink=True), err=True) click.secho("Use \"list\" to see all trusted chat ids.") else: myobject = TrustedChats(chat_id=str(id), name=name) session.add(myobject) session.commit() click.echo('ChatId {} was added.'.format(id)) session.close()
def list(only_chat_ids): session = Session() q = session.query(TrustedChats).all() if only_chat_ids: res = [] for id in q: res.append(id.chat_id) click.echo(res) return True for id in q: if id.name is None: click.echo("Chat ID: {}".format(id.chat_id)) else: click.echo("Chat ID: {}, Name: {}".format(id.chat_id, id.name)) session.close()
def add_var_line(var, parent): session = Session() db_var = session.query(Variable).filter(Variable.name == var.name).first() default = "" if db_var: default = db_var.content core.add_input_text( f"{var.name}_name", label="", width=150, enabled=False, default_value=var.name, parent=parent, ) core.add_same_line(spacing=10, parent=parent) if db_var and db_var.content and len(db_var.content) > 80: height = 80 multiline = True else: height = 0 multiline = False core.add_input_text( f"{var.name}_input", label="", width=300, default_value=default, parent=parent, multiline=multiline, height=height, ) core.add_same_line(spacing=10, parent=parent) core.add_button( f"{var.name}_search_button", label="Search in DB", callback=search_db, callback_data=f"{var.name}_input", parent=parent, ) core.add_same_line(spacing=10, parent=parent) core.add_button( f"{var.name}_update_button", label="Save/Update", callback=save_or_update_db, callback_data=(f"{var.name}_name", f"{var.name}_input"), parent=parent, )
def edit_db(): simple.hide_item("Create Document from Template") session = Session() vars = session.query(Variable).order_by(Variable.name.asc()) with simple.window("Edit Variable DB", **default_window()): core.add_text("All variables") for var in vars: with simple.group(f"{var.name}_group"): core.add_input_text( f"{var.name}_name_db", label="", width=150, enabled=False, default_value=var.name, ) core.add_same_line(spacing=10) core.add_input_text( f"{var.name}_content_db", label="", width=300, default_value=get_content(var.content), ) core.add_same_line(spacing=10) core.add_button( f"{var.name}_update_button_db", label="Update", callback=save_or_update_db, callback_data=(f"{var.name}_name_db", f"{var.name}_content_db"), ) core.add_same_line(spacing=10) core.add_button( f"{var.name}_delete_button_db", label="Delete", callback=remove_variable_gui, callback_data=argparse.Namespace(name=var.name), ) core.add_button( "close_button_db", label="Close Window", callback=close_popup, )
from main import Session, engine, User local_session = Session(bind=engine) user_to_update = local_session.query(User).filter( User.username == 'jona').first() user_to_update.username = "******" user_to_update.email = "*****@*****.**" local_session.commit()
from main import User, Session, engine local_session = Session(bind=engine) #returns all objects # users=local_session.query(User).all()[:3] # for user in users: # print(user.username) #query for one object jona = local_session.query(User).filter(User.username == "jona").first() print(jona)
from main import Session,engine,User local_session=Session(bind=engine) user_to_delete=local_session.query(User).filter(User.username=="jonathan").first() local_session.delete(user_to_delete) local_session.commit()
from actors import Actor from main import Base, Session from contact_details import ContactDetails from movie import Movie from datetime import date session = Session() all_movies = session.query(Movie).all() print('\n### All movies') for movie in all_movies: print(f'{movie.title} was released on {movie.release_date}') print('') # get movies after 15-01-01 recent_movies = session.query(Movie).filter( Movie.release_date > date(2015, 1, 1)).all() print('\n### Recent movies') for movie in recent_movies: print(f'{movie.title} was released on {movie.release_date}') print('') # movies with the rock! rock_movies = session.query(Movie).join( Actor, Movie.actors).filter(Actor.name == 'Dwayne Johnson').all() print('\n### Rock movies') for movie in rock_movies: print(f'The Rock starred in {movie.title}')