def put_favourites(id, **kwargs): if request.method == 'PUT': status = 0 favourite = Favourite.query.filter_by(id=id).first() user_id = request.args.get('user_id') product_id = request.args.get('product_id') if not favourite: favourite = Favourite(user_id=user_id, product_id=product_id) favourite.save() status = 201 else: if user_id is not None: favourite.user_id = user_id if product_id is not None: favourite.product_id = product_id favourite.save() status = 200 Response = jsonify({ 'id': favourite.id, 'user_id': favourite.user_id, 'product_id': favourite.product_id }) Response.headers['Access-Control-Allow-Origin'] = '*' Response.status_code = status return Response
def favourite(car_id): if (car_id == 'undefined'): car_id = request.args.get('id') if request.method == "POST": user = User.query.filter_by(username=g.current_user["user"]).first() user_id = user.id # user_id = g.current_user["user"] #IDK HOW TO GET THIS FROM THE AUTH newFav = Favourite(car_id, user_id) try: db.session.add(newFav) db.session.commit() response = { "message": "Car Successfully Favourited", "car_id": car_id } return jsonify(response), 200 except Exception as e: print(e) response = { "message": "Access token is missing or invalid", } return jsonify(response), 401
def get_fav_games(user_id): user = User.query.get_or_404(user_id) page = request.args.get('page', 1, type=int) per_page = min(request.args.get('per_page', 10, type=int), 100) data = Favourite.to_collection_dict(Favourite.query.filter_by(user=user), \ page, per_page, 'api.get_fav_games', user_id=user_id) return jsonify(data)
def favourite_blog(blog_id): """ 喜欢某篇文章 """ blog = Blog.query.get_or_404(blog_id) favourite = Favourite(user=g.current_user, blog=blog) db.session.add(favourite) db.session.commit() return response()
def bookmark(pid): if Favourite.query.filter_by(id=str(current_user.id) + ':' + str(pid)).first(): flash('The post was already in your collection.') else: fav = Favourite(current_user.id, pid) db.session.add(fav) db.session.commit() flash('The post was added in your collection.') return redirect(url_for('.list_post'))
def ajax_fav(request): user = request.user.get_profile() channel = Channel.objects.get(hash=request.POST["hash"]) fav = Favourite() fav.user = user fav.channel = channel fav.name = request.POST["name"] fav.slug = slugify(fav.name) fav.save() return HttpResponse("OK")
def favourite_blog(): """ 喜欢某篇文章 """ # 没有喜欢权限 if not current_user.can_favourite(): return '403' id = request.args.get('id', None) blog = Blog.query.get_or_404(id) favourite = Favourite(user=current_user, blog=blog) db.session.add(favourite) db.session.commit() return '200'
def get_favourites(): if request.method == 'GET': favourites = Favourite.get_all() results = [] for fav in favourites: obj = { 'id': fav.id, 'user_id': fav.user_id, 'product_id': fav.product_id } results.append(obj) Response = jsonify(results) Response.status_code = 200 return Response
def save_fav(request): try: fav = Favourite.objects.get(id=request.POST["fav_id"]) except: fav = Favourite() user = request.user.get_profile() channel = Channels.objects.get(hash=request.POST["hash"]) fav.user = user fav.channel = channel fav.name = name fav.save() return HttpResponse("YAY")
def favorite(): if not session: abort(403) username = request.json.get("user_id") fav_dict = request.json.get("favorite") if request.method == 'POST': for favorite in fav_dict: fav = Favourite(user_id=username, event_id=favorite) db.session.add(fav) db.session.commit() return jsonify(result='SUCCESS') if request.method == 'DELETE': for favorite in fav_dict: fav = Favourite.query.filter_by(user_id=username, event_id=favorite).first() db.session.delete(fav) db.session.commit() return jsonify(result='SUCCESS') return jsonify(result='FAILURE')
def favourites(imdb_id): user_fav = Favourite.query.filter_by(user_id=current_user.username, imdbID=imdb_id).first() if imdb_id: if user_fav: db.session.delete(user_fav) db.session.commit() else: fmt = 'http://www.omdbapi.com/?i={}&apikey={}'.format( imdb_id, app.config['OMDB_APIKEY']) response = requests.get(fmt) data = response.json() if data['Response'] == 'True': fav_new_item = Favourite(user_id=current_user.username, imdbID=imdb_id, title=data['Title'], poster=data['Poster']) db.session.add(fav_new_item) db.session.commit() else: flash('Cannot add to favourites') favourites = [] favourities_db = Favourite.query.filter_by( user_id=current_user.username).all() for favourite in favourities_db: favourites.append({ 'Title': favourite.title, 'Poster': favourite.poster, 'imdbID': favourite.imdbID }) return render_template('favourites.html', favourites=favourites, user_fav=user_fav)
def get_top5_favourites(): if request.method == 'GET': favourites = Favourite.get_all() result = [] for fav in favourites: count = db.session.query(Favourite).filter( Favourite.product_id == fav.product_id).count() result.append((fav.product_id, count)) result = set(result) result = list(result) result = sorted(result, key=itemgetter(1), reverse=True) result = result[:5] res = [] for item in result: product = db.session.query(Product).get(item[0]) obj = { 'id': product.id, 'name': product.name, 'description': product.description, 'category_id': product.category_id, 'proof': str(product.proof), 'country': product.country, 'available': product.available, 'price': str(product.price), 'picture': product.picture, 'count': item[1] } res.append(obj) Response = jsonify(res) Response.status_code = 200 return Response
password_hash=generate_password_hash('1')) u2 = User(username='******', email='[email protected]', password_hash=generate_password_hash('2')) u3 = User(username='******', email='[email protected]', password_hash=generate_password_hash('3')) db.session.add(u1) db.session.add(u2) db.session.add(u3) db.session.commit() f1 = Favourite( user=u1, imdbID='tt2653342', title='Game of Thrones: Season 2 - Character Profiles', poster= 'https://ia.media-imdb.com/images/M/MV5BMTU1MzU2MDE4MV5BMl5BanBnXkFtZTgwNTc3NzA2MDE@._V1_SX300.jpg' ) f2 = Favourite(user=u1, imdbID='tt6172126', title='Intouchables', poster='N/A') db.session.add(f1) db.session.add(f2) f3 = Favourite( user=u2, imdbID='tt4011326', title='The Witcher 3: The Sorceress of Vengerberg', poster= 'https://ia.media-imdb.com/images/M/MV5BOWJiNGNiMmEtYTc5Mi00NzczLThmZTctOWM1ZTE5ZjE4NTdjXkEyXkFqcGdeQXVyNDgxODc1NQ@@._V1_SX300.jpg' ) f4 = Favourite(user=u2, imdbID='tt6172126', title='Intouchables', poster='N/A') db.session.add(f3)