Esempio n. 1
0
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()
Esempio n. 2
0
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()
Esempio n. 3
0
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
Esempio n. 4
0
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()
Esempio n. 5
0
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')
Esempio n. 6
0
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()
Esempio n. 7
0
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()
Esempio n. 8
0
pain_and_gain.actors = [dwayne_johnson, mark_wahlberg]

# 7 - add contact details to actors
matt_contact = ContactDetails("415 555 2671", "Burbank, CA", matt_damon)
dwayne_contact = ContactDetails("423 555 5623", "Glendale, CA", dwayne_johnson)
dwayne_contact_2 = ContactDetails("421 444 2323", "West Hollywood, CA", dwayne_johnson)
mark_contact = ContactDetails("421 333 9428", "Glendale, CA", mark_wahlberg)

# 8 - create stuntmen
matt_stuntman = Stuntman("John Doe", True, matt_damon)
dwayne_stuntman = Stuntman("John Roe", True, dwayne_johnson)
mark_stuntman = Stuntman("Richard Roe", True, mark_wahlberg)

# 9 - persists data
session.add(bourne_identity)
session.add(furious_7)
session.add(pain_and_gain)

session.add(matt_contact)
session.add(dwayne_contact)
session.add(dwayne_contact_2)
session.add(mark_contact)

session.add(matt_stuntman)
session.add(dwayne_stuntman)
session.add(mark_stuntman)

# 10 - commit and close session
session.commit()
session.close()