def create(show_record: ShowRecord, current_user: str = Depends(get_current_user)): """ create a show record """ try: show = Show() show.artist = show_record.artist show.venue = show_record.venue show.city = show_record.city show.date = show_record.date show.festival = show_record.festival show.creator_id = current_user.id db.add(show) db.commit() except sqlalchemy.exc.IntegrityError: return { "code": "error", "message": "User already exists with that username or email" } except Exception as e: print(e) return {"code": "SUCCESS"}
def add_row(): rowid = request.form.get('rowid') date = request.form.get('date') time = parse_time(request.form.get('time')) show_name = request.form.get('show_name') visitors = request.form.get('visitors') vert = request.form.get('vert') if time is None: return make_response(jsonify({'error': 'Invalid time'}), 500) if all(field is None for field in [rowid, date, time, show_name, visitors, vert]): return make_response(jsonify({'error': 'All fields are empty'}), 500) if all(field in [0, '', None] for field in [visitors, time, show_name]): return make_response(jsonify({'error': 'Not enough fields'}), 500) print(rowid, date, time, show_name, visitors, vert) try: date = datetime.datetime.strptime(date, '%Y-%m-%d').date() except ValueError: make_response(jsonify({'error': 'Not a valid date'}), 500) show = Show.query.filter_by(id=rowid).first() if show is None: print("Creating new show") show = Show() try: show.id = int(rowid) except ValueError: pass db.session.add(show) if visitors == "": visitors = "0" try: visitors = int(visitors.strip()) except ValueError: return make_response(jsonify({'error': 'Visitors must be a number'})) time = time.strip() if time.isnumeric() and len(time) == 4: time = time[:2] + ":" + time[2:] elif time.find(':') == 1: time = '0' + time show.date = date show.time = time.strip() show.show = show_name.strip() show.visitors = visitors show.vert = vert.strip() db.session.commit() ret = jsonify({"rowid": show.id, "date": date.strftime("%Y-%m-%d"), "time": time, "show_name": show_name, "visitors": visitors, "vert": vert}) return ret
def txn(name, number, date, page_url, audio_url, mstotal, tracks, img_url="", desc="", credits="", *args, **kwargs): show = Show() show.name = name show.credits = credits show.desc = desc show.number = number show.date = date show.mstotal = mstotal show.audio_url = audio_url show.img_url = img_url show.put() return show
def create_show_submission(): error = False show = Show() try: show.artist_id = request.form['artist_id'] show.venue_id = request.form['venue_id'] show.date = request.form['start_time'] db.session.add(show) db.session.commit() except: error = True db.session.rollback() print(sys.exc_info()) finally: db.session.close() if error: flash('An error occurred. Show could not be listed.') abort(500) else: flash('Show was successfully listed!') return render_template('pages/home.html')