Пример #1
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion
    try:
        seeking_venue = False
        seeking_description = ''
        if 'seeking_venue' in request.form:
            seeking_venue = request.form['seeking_venue'] == 'y'
        if 'seeking_description' in request.form:
            seeking_description = request.form['seeking_description']
        new_artist = Artist(
            name=request.form['name'],
            genres=request.form['genres'],
            city=request.form['city'],
            state=request.form['state'],
            phone=request.form['phone'],
            website=request.form['website'],
            image_link=request.form['image_link'],
            facebook_link=request.form['facebook_link'],
            seeking_venue=seeking_venue,
            seeking_description=seeking_description,
        )
        Artist.insert(new_artist)
        # on successful db insert, flash success
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except SQLAlchemyError as e:
        # TODO: on unsuccessful db insert, flash an error instead.
        # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
        flash('An error occurred. Artist ' + request.form['name'] +
              'could not be listed. ')

    return render_template('pages/home.html')
Пример #2
0
def create_artist_submission():
    """insert form data as a new artist record in db 
    """
    form = ArtistForm(request.form)
    if form.is_submitted():
        print("Form successfully submitted")

    if form.validate_on_submit():
        try:
            new_artist = Artist(
                name=request.form["name"],
                city=request.form["city"],
                state=request.form["state"],
                phone=request.form["phone"],
                facebook_link=request.form["facebook_link"],
                genres=request.form.getlist("genres"),
                image_link=request.form["image_link"],
                website_link=request.form["website_link"],
                seeking_venue=bool(request.form["seeking_venue"]),
                seeking_description=request.form["seeking_description"],
            )

            Artist.insert(new_artist)
            flash("Artist" + request.form["name"] +
                  " was successfully listed!")

        except SQLAlchemyError as e:
            db.session.rollback()
            print(e)
            flash("OOPS!! Artist " + request.form["name"] + " was not listed!")
        finally:
            db.session.close()
    return render_template("pages/home.html")
Пример #3
0
def create_artist_submission():
    try:
        form = ArtistForm(request.form)

        artist = Artist(
            name=form.name.data,
            city=form.city.data,
            state=form.state.data,
            phone=form.phone.data,
            website=form.website.data,
            image_link=form.image_link.data,
            genres=', '.join(form.genres.data),
            facebook_link=form.facebook_link.data,
            seeking_venue=bool(form.seeking_venue.data),
            seeking_description=form.seeking_description.data,
        )
        artist.insert()

        flash(f'Artist {request.form["name"]} was successfully listed!')
    except Exception as e:
        flash(
            f'An error occurred. Artist {request.form["name"]} could not be listed.')
        print('Error', e)
    finally:
        return render_template('pages/home.html')
Пример #4
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion
    try:
        description = ''
        seeking = False
        if 'seeking_venue' in request.form:
            seeking = True
            if 'seeking_description' in request.form:
                description = request.form['seeking_description']

        artist = Artist(
            name=request.form['name'],
            city=request.form['city'],
            state=request.form['state'],
            phone=request.form['phone'],
            genres=request.form.getlist('genres'),
            image_link=request.form['image_link'],
            facebook_link=request.form['facebook_link'],
            website=request.form['site_link'],
            seeking_description=description,
            seeking_venue=seeking,
        )
        artist.insert()
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except:
        rollback()
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')
    finally:
        close()

    return render_template('pages/home.html')
Пример #5
0
 def create_artist_submission():
     # called upon submitting the new artist listing form
     # inserts form data as a new Venue record in the db, instead
     # modifies data to be the data object returned from db insertion
     form = ArtistForm()
     try:
         artist = Artist(
             name=form.name.data,
             genres=form.genres.data,
             city=form.city.data,
             state=form.state.data,
             phone=form.phone.data,
             website=form.website.data,
             facebook_link=form.facebook_link.data,
             seeking_venue=form.seeking_venue.data,
             seeking_description=form.seeking_description.data,
             image_link=form.image_link.data,
         )
         artist.insert()
         flash('Artist ' + form.name.data + ' was successfully listed!')
     except:
         artist.rollback()
         flash('An error occurred. Artist ' + form.name.data +
               ' could not be listed.')
     finally:
         artist.close()
     return render_template('pages/home.html')
Пример #6
0
def create_artist_submission():

    form = ArtistForm()
    data = request.form
    try:
        seeking_venue = None
        if 'seeking_venue' in request.form:
            seeking_venue = request.form['seeking_venue'] == 'y'

        new_artist = Artist(
            name=data.get("name"),
            genres=data.getlist("genres[]"),
            city=data.get("city"),
            state=data.get("state"),
            phone=data.get("phone"),
            website=data.get("website_link"),
            seeking_venue=seeking_venue,
            facebook_link=data.get("facebook_link"),
            seeking_description=data.get("seeking_description"),
            image_link=data.get("image_link"))
        Artist.insert(new_artist)
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except SQLAlchemyError as e:
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')

    return render_template('pages/home.html')
Пример #7
0
def create_artist_submission():
  form = ArtistForm()
  try:
    artist = Artist(
      name = form.name.data,
      city = form.city.data,
      state = form.state.data,
      phone=form.phone.data, 
      genres = form.genres.data,
      seeking_venue=form.seeking_venue.data,
      seeking_description = form.seeking_description.data,
      facebook_link =form.facebook_link.data,
      image_link = form.image_link.data,
      website = form.website.data,
    )

    artist.insert()
    flash('Artist ' + request.form['name'] + ' was successfully added!', 'success')
  except:
    db.session.rollback()
    flash('An error occurred. Artist ' + request.form['name'] + ' could not be added.', 'error')
  finally:
    db.session.close()

  return render_template('pages/home.html')
Пример #8
0
def create_artist_submission():
  # called upon submitting the new artist listing form
  error = False

  form = ArtistForm()

  try:
    artist = Artist(
      name=form.name.data,
      genres=form.genres.data,
      city=form.city.data,
      state=form.state.data,
      phone=form.phone.data,
      #image_link=request.form['image_link'],
      facebook_link=form.facebook_link.data,
      upcoming_shows_count=0,
      past_shows_count=0
    )
    artist.insert()
  except:
    error = True
    print(sys.exc_info())
    db.session.rollback()
  #finally:
    #db.session.close()
  
  if error:
    abort (400)
    flash('An error occured')
  else:
    # on successful db insert, flash success
    flash('Artist ' + artist.name + ' was successfully listed!')
  
  # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
  return render_template('pages/home.html')
Пример #9
0
def create_artist_submission():
  # called upon submitting the new artist listing form
  # TODO: insert form data as a new Venue record in the db, instead
  # TODO: modify data to be the data object returned from db insertion
  form = ArtistForm(request.form)

  try:
    artist = Artist()

    artist.name = request.form.get('name')
    artist.city = request.form.get('city')
    artist.state = request.form.get('state')
    artist.phone = request.form.get('phone')
    artist.genres = form.genres.data
    artist.image_link = request.form.get('image_link', None)
    artist.facebook_link = request.form.get('facebook_link', None)
    artist.website = request.form.get('website', None)
    artist.seeking_venue = boolean_check(request.form.get('seeking_venue', None))
    artist.seeking_description = request.form.get('seeking_description', False)

    artist.insert()

    # on successful db insert, flash success
    flash('Artist ' + request.form['name'] + ' was successfully listed!')
  except:
    flash('An error occurred. Artist ' + request.form['name'] + ' could not be listed.')
  # TODO: on unsuccessful db insert, flash an error instead.
  # e.g., flash('An error occurred. Venue ' + data.name + ' could not be listed.')
  return render_template('pages/home.html')
Пример #10
0
def create_artist_submission():
    try:
        seeking_venue = False
        seeking_description = ''
        if 'seeking_venue' in request.form:
            seeking_venue = request.form['seeking_venue'] == 'y'
        if 'seeking_description' in request.form:
            seeking_description = request.form['seeking_description']
        new_artist = Artist(name=request.form['name'],
                            genres=request.form.getlist('genres'),
                            city=request.form['city'],
                            state=request.form['state'],
                            phone=request.form['phone'],
                            website=request.form['website'],
                            facebook_link=request.form['facebook_link'],
                            image_link=request.form['image_link'],
                            seeking_venue=seeking_venue,
                            seeking_description=seeking_description)
        Artist.insert(new_artist)
        # on successful db insert, flash success
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except SQLAlchemyError as e:
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')

    return render_template('pages/home.html')
Пример #11
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    print('Received artist', request.form)
    seeking_venue = False
    if 'seeking_venue' in request.form:
        print("Seeking_venue", request.form['seeking_venue'])
        seeking_venue = request.form['seeking_venue'] == 'y'
    try:
        artist = Artist(
            name=request.form['name'],
            city=request.form['city'],
            state=request.form['state'],
            phone=request.form['phone'],
            genres=request.form.getlist('genres'),
            image_link=request.form['image_link'],
            website=request.form['website'],
            facebook_link=request.form['facebook_link'],
            seeking_venue=seeking_venue,
            seeking_description=request.form['seeking_description'])
        Artist.insert(artist)
        flash('Artist ' + artist.name + ' was successfully listed!')
    except SQLAlchemyError as e:
        flash('Artist could not be listed!')

    # DONE: insert form data as a new Artist record in the db, instead
    # DONE: modify data to be the data object returned from db insertion

    # on successful db insert, flash success
    # DONE: on unsuccessful db insert, flash an error instead.
    # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
    return render_template('pages/home.html')
Пример #12
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion

    form = ArtistForm()
    data = request.form
    try:
        seeking_venue = None
        if 'seeking_venue' in request.form:
            seeking_venue = request.form['seeking_venue'] == 'y'

        new_artist = Artist(
            name=data.get("name"),
            genres=data.getlist("genres[]"),
            city=data.get("city"),
            state=data.get("state"),
            phone=data.get("phone"),
            website=data.get("website_link"),
            seeking_venue=seeking_venue,
            facebook_link=data.get("facebook_link"),
            seeking_description=data.get("seeking_description"),
            image_link=data.get("image_link"))
        Artist.insert(new_artist)

        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except SQLAlchemyError as e:
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')

    # TODO: on unsuccessful db insert, flash an error instead.
    # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
    return render_template('pages/home.html')
Пример #13
0
def create_artist_submission():
    try:

        new_artist = Artist(
            name=request.form['name'],
            genres=request.form['genres'],
            city=request.form['city'],
            state=request.form['state'],
            phone=request.form['phone'],
            website=request.form['website'],
            image_link=request.form['image_link'],
            facebook_link=request.form['facebook_link'],
            seeking_venue=request.form['seeking_venue'],
            seeking_description=request.form['seeking_description'],
        )
        if (new_artist.seeking_venue == 'y'):
            new_artist.seeking_venue = True
        elif (new_artist.seeking_venue == 'n'):
            new_artist.seeking_venue = False
        Artist.insert(new_artist)
        flash('Artist ' + request.form['name'] + ' was successfully Created!')
    except SQLAlchemyError as e:

        flash('An error occurred. Artist ' + request.form['name'] +
              'List Not Created')

    return render_template('pages/home.html')
Пример #14
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion
    form = ArtistForm(request.form)
    if form.validate():
        try:
            seeking_venue = False
            seeking_description = ''
            if 'seeking_venue' in request.form:
                seeking_venue = request.form['seeking_venue'] == 'y'
            if 'seeking_description' in request.form:
                seeking_description = request.form['seeking_description']
            artist_details = Artist(
                name=request.form['name'],
                genres=request.form.getlist('genres'),
                city=request.form['city'],
                state=request.form['state'],
                phone=request.form['phone'],
                website=request.form['website_link'],
                facebook_link=request.form['facebook_link'],
                image_link=request.form['image_link'],
                seeking_venue=seeking_venue,
                seeking_description=seeking_description)
            Artist.insert(artist_details)
            # on successful db insert, flash success
            flash('Artist ' + request.form['name'] +
                  ' was successfully listed!')
        except:
            flash('An error occurred. Venue ' + request.form['name'] +
                  ' could not be listed.')
    return render_template('pages/home.html')
Пример #15
0
    def create_artist(payload):
        # Get values from request
        body = request.get_json()
        name = body.get('name', None)
        phone = body.get('phone', '')
        styles = body.get('styles', '')
        image_link = body.get('image_link', '')
        instagram_link = body.get('instagram_link', '')
        email = body.get('email', '')

        new_artist = Artist(name=name,
                            phone=phone,
                            styles=styles,
                            image_link=image_link,
                            instagram_link=instagram_link,
                            email=email)

        # Update database with new artist object
        try:
            new_artist.insert()
        except:
            abort(422)

        # Find the new artist by getting the last instance of an artist
        # matching the new_artist object name
        posted_artist = Artist.query.filter(
            Artist.name == new_artist.name).order_by(Artist.id).all()[-1]

        formatted_artist = posted_artist.format()
        total_artists = len(Artist.query.all())
        return jsonify({
            'success': True,
            'artist': formatted_artist,
            'total_artists': total_artists
        })
Пример #16
0
    def test_delete_artist_w_token(self):
        print('Testing to Delete one artist in specific Mod Token: ')
        artist = Artist(name="Alex Grey", style="Artist", age="69")
        artist.insert()

        res = self.client().delete(
            '/artists/' + str(artist.id),
            headers={"Authorization": "Bearer {}".format(self.mod)})
        deleted_artist = Artist.query.get(artist.id)

        self.assertEqual(res.status_code, 200)
        self.assertEqual(deleted_artist, None)
Пример #17
0
 def add_artist(payload):
     req_data_dict = json.loads(request.data)
     app.logger.debug("Got request", req_data_dict)
     if "name" not in req_data_dict or "age" not in req_data_dict or "gender" not in req_data_dict:
         abort(400)
     name = req_data_dict["name"]
     age = req_data_dict["age"]
     gender = req_data_dict["gender"]
     artist = Artist(name=name, age=age, gender=gender)
     artist.insert()
     artist_single = [artist.long()]
     return jsonify({'success': True, 'actors': artist_single})
Пример #18
0
    def test_patch_artist_w_token(self):
        print('Testing to Patch one Video in specific with Mod Token: ')
        artist = Artist(name="Jake Mesa", style="Disk Jockey", age="19")
        artist.insert()

        res = self.client().patch(
            '/artists/' + str(artist.id),
            headers={"Authorization": "Bearer {}".format(self.mod)},
            json={"style": "magician"})
        data = json.loads(res.data)

        self.assertEqual(res.status_code, 200)
        self.assertTrue(data['success'])
        self.assertEqual(data['artists']['style'], 'magician')
Пример #19
0
def post_artists(jwt):
    body = request.get_json()
    if (body is None):
        abort(422)
    name = body.get('name')
    portfolio_link = body.get('portfolio_link')
    if (name is None or portfolio_link is None):
        abort(422)
    artist = Artist(name=name, portfolio_link=portfolio_link)

    try:
        artist.insert()
    except Exception:
        abort(422)
    return jsonify({'success': True, 'artist': artist.format()})
Пример #20
0
def create_artist_submission():
    form = ArtistForm(request.form)

    facebook_link = form.facebook_link.data\
        if form.facebook_link.data != "" else None
    image_link = form.image_link.data\
        if form.image_link.data != "" else None
    website = form.website.data\
        if form.website.data != "" else None
    seeking_venue = True\
        if form.seeking_description.data != "" else False
    seeking_description = form.seeking_description.data\
        if form.seeking_description.data != "" else None

    if form.validate_on_submit():

        error = False
        print(form.genres.data)
        try:
            artist = Artist(name=form.name.data,
                            city=form.city.data,
                            state=form.state.data,
                            phone=form.phone.data,
                            genres=",".join(form.genres.data),
                            facebook_link=facebook_link,
                            image_link=image_link,
                            website=website,
                            seeking_venue=seeking_venue,
                            seeking_description=seeking_description)
            artist.insert()
        except Exception:
            error = True
            db.session.rollback()
            print(exc_info())
        finally:
            db.session.close()
            if error:
                flash('An error occurred. Artist ' + str(form.name.data) +
                      'could not be listed.')
            else:
                flash('Artist ' + str(form.name.data) + ' was successfully\
                      listed!')

        return render_template('pages/home.html')

    else:
        flash('Please ensure all details provided are valid')
        return render_template('forms/new_artist.html', form=form)
Пример #21
0
def create_artist_submission():
    seeking = request.form['seeking_venue']
    if seeking == 'y':
        seeking_venue = True
    else:
        seeking_venue = False

    newArtistData = Artist(
        seeking_venue=seeking_venue,
        name=request.form['name'],
        genres=request.form.getlist('genres'),
        city=request.form['city'],
        state=request.form['state'],
        phone=request.form['phone'],
        website=request.form['website'],
        image_link=request.form['image_link'],
        facebook_link=request.form['facebook_link'],
        seeking_description=request.form['seeking_description'])

    if Artist.insert(newArtistData):
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    else:
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')

    return redirect(url_for('show_artist', artist_id=newArtistData.id))
Пример #22
0
    def post_artist(jwt):
        data = request.get_json()
        name = data.get('name', None)

        artist = Artist(name=name)

        if name is None:
            abort(400)

        try:
            artist.insert()
            return jsonify({
                'success': True,
                'artist': artist.format()
            }), 201
        except Exception:
            abort(500)
Пример #23
0
    def post_artists():

        name = request.json.get("name", None)
        age = request.json.get("age", None)
        gender = request.json.get("gender", None)

        if name is None:
            abort(422)

        new_artist = Artist(name=name, age=age, gender=gender)
        new_artist.insert()

        return jsonify({
            "success": True,
            "status_code": 200,
            "status_message": "OK",
            "artist": new_artist.attributes()
        })
Пример #24
0
def create_artist_submission():
    form = ArtistForm(request.form)
    try:
        artist = Artist(
            name=form.name.data,
            genres=json.dumps(form.genres.data),  # array json
            city=form.city.data,
            state=form.state.data,
            phone=form.phone.data,
            facebook_link=form.facebook_link.data,
            image_link=form.image_link.data,
        )
        artist.insert()
        # on successful db insert, flash success
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except Exception as e:
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')
    return render_template('pages/home.html')
Пример #25
0
    def create_artist(*args, **kwargs):
        """Creates a Artist.

        Returns:
            response: json, status_code
        """
        try:
            body = request.get_json()
            artist = Artist(name=body.get('name'),
                            phone_number=body.get('phone_number'),
                            email=body.get('email'),
                            event=body.get('event'),
                            website=body.get('website'),
                            instagram_link=body.get('instagram_link'),
                            image_link=body.get('image_link'))
            artist.insert()
            return jsonify({"success": True, "artists": artist.format()}), 201
        except Exception as e:
            app.logger.error(e)
            abort(422)
Пример #26
0
 def add_artist(payload):
     req_data_dict = json.loads(request.data)
     app.logger.debug("Got request", req_data_dict)
     errno = 0
     try:
         if "name" not in req_data_dict or "age" not in req_data_dict or \
           "gender" not in req_data_dict:
             errno = 400
             abort(errno)
         name = req_data_dict["name"]
         age = req_data_dict["age"]
         gender = req_data_dict["gender"]
         artist = Artist(name=name, age=age, gender=gender)
         artist.insert()
         artist_single = [artist.long()]
         return jsonify({'success': True, 'actors': artist_single})
     except Exception as e:
         app.logger.error("add_artist:Got exception {}".format(e))
         if errno == 0:
             abort(422)
         else:
             abort(errno)
Пример #27
0
    def create_artist(payload):

        try:

            name = request.get_json()['name']
            country = request.get_json()['country']

            new_artist = Artist(
                name=name,
                country=country
            )

            new_artist.insert()

            return jsonify({
                'success': True,
                'name': new_artist.name,
                'country': new_artist.country
            })

        except:

            abort(422)
Пример #28
0
def create_artist_submission():

    error = False

    name = request.form.get('name')
    city = request.form.get('city')
    state = request.form.get('state')
    phone = request.form.get('phone')
    image_link = request.form.get('image_link')
    genres = request.form.getlist('genres')
    facebook_link = request.form.get('facebook_link')

    seeking_venue = False
    if 'seeking_venue' in request.form:
        seeking_venue = request.form['seeking_venue'] == 'y'

    seeking_description = request.form.get('seeking_description')

    website = request.form.get('website')

    try:
        a = Artist(name, city, state, phone, image_link, facebook_link,
                   website, seeking_venue, seeking_description, genres)
        a.insert()

    except:
        error = True
        db.session.rollback()

    if error:
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')
    else:
        flash('Artist ' + request.form['name'] + ' was successfully listed!')

    return render_template('pages/home.html')
Пример #29
0
    def create_artist():

        body = request.json

        artist_name = body['name']
        artist_age = body['age']
        artist_style = body['style']

        try:
            new_artist = Artist(
                name=artist_name, age=artist_age, style=artist_style)
            print('Post initialized')
            new_artist.insert()

        except Exception as e:
            print(e)
            print("something went wrong")
            print(e.args)
            abort(400)

        return jsonify({
            "success": True,
            "artists": new_artist.format()
        }), 200
Пример #30
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion
    try:
        artist = Artist(name=request.form.get('name'),
                        city=request.form.get('city'),
                        state=request.form.get('state'),
                        genres=request.form.get('genres'),
                        phone=request.form.get('phone'),
                        facebook_link=request.form.get('facebook_link'))
        artist.insert()
        flash('Artist ' + Artist.query.filter_by(name=request.form['name']).first().name + ' was successfully listed!')
    except:
        db.session.rollback()
        flash('An error occurred. Artist' + request.form['name'] + ' could not be listed.')
    # TODO: modify data to be the data object returned from db insertion

    # on successful db insert, flash success
    # TODO: on unsuccessful db insert, flash an error instead.
    # see: http://flask.pocoo.org/docs/1.0/patterns/flashing/
    finally:
        db.session.close()
        return render_template('pages/home.html')