Ejemplo n.º 1
0
def create_user(name, email, password, confirm):
    error_message = []
    # 4 is not blank
    if len(name) == 0:
        error_message.append('Name cannot be empty')
    if len(email) == 0:
        error_message.append('Email cannot be empty')
    if len(password) == 0:
        error_message.append('Password cannot be empty')
    if len(confirm) == 0:
        error_message.append('Confirm Password cannot be empty')
    # password length more than 6
    if len(password) < 6:
        error_message.append('Password must be at least 6 character')
    # password and confirm is match
    if password != confirm:
        error_message.append('Password not match')

    if len(error_message) == 0:
        db = DbManager()
        try:
            user = User()
            user.name = name
            user.email = email
            encoded = password.encode('UTF-8')
            encrypted = bcrypt.hashpw(encoded, bcrypt.gensalt())
            user.password = password
            db.save(user)
            return user
        except:
            error_message.append('Email already exist')

    return error_message
Ejemplo n.º 2
0
def get_tvshow_by_api_id(api_id):
    db = DbManager()
    try:
        tvshow = db.open().query(TVShow).filter(TVShow.api_id == api_id).one()
        return tvshow
    except:
        tvshow = TVShow()
        url = TVMAZE_GET_URL.format('shows', api_id)
        response = get_request(url)
        tvshow.parse_json(response)
        db.save(tvshow)
        return tvshow
Ejemplo n.º 3
0
def get_tvshow_by_url(tvshow_url):
    DB = DbManager()
    try:
        tvshow = DB.open().query(TVShow).filter(TVShow.url == tvshow_url).one()
        DB.close()
        return tvshow
    except:
        DB = DbManager()
        data = get_request(tvshow_url)
        tvshow = TVShow()
        tvshow.parse_json(data)
        DB.save(tvshow)
        DB.close()
        return tvshow
Ejemplo n.º 4
0
def create_like(user_id, movie_id):
    try:
        db = DbManager()

        movie = db.open().query(Movie).filter(Movie.api_id == movie_id).one()

        like = Like()
        like.user_id = user_id
        like.movie_id = movie.id

        db.save(like)

        return like
    except:
        pass
Ejemplo n.º 5
0
def search_tvshows(keyword):
    # always search from api first because it's all inclusive, search from db probably get less result
    db = DbManager()
    tvshows = []
    url = TVMAZE_SEARCH_URL.format('shows', keyword)
    for results in get_request(url):
        try:
            tvshow = db.open().query(TVShow).filter(
                TVShow.api_id == results['show']['id']).one()
        except:
            tvshow = TVShow()
            tvshow.parse_json(results['show'])
            db.save(tvshow)
        tvshows.append(tvshow)
    return tvshows
Ejemplo n.º 6
0
def like_a_tvshow(user_id, api_id):
    # LIKE A TVSHOW
    # return a Like Model if success, if already exist return None
    tvshow = get_tvshow_by_api_id(api_id)
    db = DbManager()
    try:
        db.open().query(Like).filter(Like.user_id == user_id,
                                     Like.tvshow_id == tvshow.id).one()
        return None
    except:
        like = Like()
        like.user_id = user_id
        like.tvshow_id = tvshow.id
        db.save(like)
        return like
Ejemplo n.º 7
0
def download_data(query):
    db = DbManager()
    datas = json.loads(
        requests.get(
            "http://api.tvmaze.com/search/shows?q={}".format(query)).text)
    for data in datas:
        try:
            savingdata = Film()
            savingdata.parse(data['show'])
            db.save(savingdata)

            print('-> created Film in db')
        except:
            print('data exist')

    db.close()
Ejemplo n.º 8
0
def like_tvshow(user_id, tvshow_id):
    user = get_user_by_id(user_id)

    tvshow_url = TVMAZE_URL.format('shows', tvshow_id)
    tvshow = get_tvshow_by_url(tvshow_url)

    DB = DbManager()
    try:
        exist = DB.open().query(Like).filter(Like.user_id == user_id, Like.tvshow_id == tvshow.id).one()
        return exist
    except:
        like = Like()
        like.user = user
        like.tvshow = tvshow
        DB.save(like)
        return like
Ejemplo n.º 9
0
def create_user(email, name, password):
    db = DbManager()
    user = User()
    user.name = name
    user.email = email
    user.password = password
    return db.save(user)
Ejemplo n.º 10
0
def create_user(fullname, username, email, password):
    db = DbManager()
    user = User()
    user.fullname = fullname
    user.username = username
    user.email = email
    user.password = password
    return db.save(user)
Ejemplo n.º 11
0
def get_show(query):
    db = DbManager()
    url = API_URL.format(query)
    data = get_request(url)
    movies = []

    for obj in data:
        movie = Movie()
        movie.parse_json(obj)

        try:
            db.open().query(Movie).filter(Movie.url == movie.url).one()
        except:
            db.save(movie)

        movies.append(movie)

    return movies
Ejemplo n.º 12
0
def create_quote(user_id, content):
    try:
        db = DbManager()
        quote = Quote()
        quote.user_id = user_id
        quote.content = content
        return db.save(quote)
    except:
        pass
Ejemplo n.º 13
0
def create__like(user_id, show_id):
    db = DbManager()
    like = Like()
    check = db.open().query(Like).filter(Like.user_id == user_id).filter(Like.show_id == show_id).all()
    if len(check) == 0:
        like.show_id = show_id
        like.user_id = user_id
        return db.save(like)

    return False
Ejemplo n.º 14
0
def search_movie(query):
    try:
        db = DbManager()
        url = API_URL.format(query)
        data = get_request(url)
        movies = []

        for obj in data:
            try:
                movie = Movie()
                movie.parse_json(obj)
                db.save(movie)
                movies.append(movie)
            except:
                movies.append(movie)

        return movies
    except:
        pass
Ejemplo n.º 15
0
def create_quote(user_id, content):
    db = DbManager()
    quote = Quote()
    quote.content = content
    quote.user_id = user_id
    return db.save(quote)
Ejemplo n.º 16
0
def update_bill(bill_id, amount, description):
    db = DbManager()
    bill = db.open().query(BillItem).filter(BillItem.id == bill_id).one()
    bill.amount = amount
    bill.description = description
    db.save(bill)
Ejemplo n.º 17
0
def create_task(project_id, description):
    db = DbManager()
    task = Task()
    task.description = description
    task.project_id = project_id
    return db.save(task)
Ejemplo n.º 18
0
def create_project(title):
    db = DbManager()
    project = Project()
    project.title = title
    return db.save(project)
Ejemplo n.º 19
0
def like_film(user_id, film_id):
    db = DbManager()
    like = Like()
    like.user_id = user_id
    like.film_id = film_id
    return db.save(like)