def custom_func(): form = CustomForm(request.form) #Instatiates the form created in forms.py if request.method == 'POST': if form.validate( ) == False: #If any of the inputs are empty and therefore doesn't validate flash('All fields are required.') #Error message flashed to user return render_template('custom.html', form=form) #Resets page with error message else: #Adds user input values to custom dictionary #League Settings Input custom_settings['teams'] = int( request.form['teams']) #Converts string data into\ #integer value; Form validates whether input is a whole number value custom_settings['auction_budget'] = int( request.form['auction_budget']) #Roster Composition custom_settings['qb'] = int(request.form['qb']) input_rb = float( request.form['input_rb']) #Also takes in float values input_wr = float(request.form['input_wr']) input_flex = float(request.form['input_flex']) custom_settings['rb'] = input_rb + (input_flex / 2) custom_settings['wr'] = input_wr + (input_flex / 2) custom_settings['te'] = int(request.form['te']) custom_settings['k'] = int(request.form['k']) custom_settings['defense'] = int(request.form['defense']) custom_settings['bench'] = int(request.form['bench']) #Point Values custom_settings['pass_yds'] = 1 / float(request.form['pass_yds']) custom_settings['pass_tds'] = float(request.form['pass_tds']) custom_settings['interceptions'] = float( request.form['interceptions']) custom_settings['rush_yds'] = 1 / float(request.form['rush_yds']) custom_settings['rush_tds'] = float(request.form['rush_tds']) custom_settings['recs'] = float(request.form['recs']) custom_settings['rec_yds'] = 1 / float(request.form['rec_yds']) custom_settings['rec_tds'] = float(request.form['rec_tds']) custom_settings['two_point'] = float(request.form['two_point']) custom_settings['fl'] = float(request.form['fl']) #Kickers custom_settings['u20'] = float(request.form['u20']) custom_settings['u30'] = float(request.form['u30']) custom_settings['u40'] = float(request.form['u40']) custom_settings['u50'] = float(request.form['u50']) custom_settings['u70'] = float(request.form['u70']) custom_settings['pat'] = float(request.form['pat']) #Defense custom_settings['sack'] = float(request.form['sack']) custom_settings['def_int'] = float(request.form['def_int']) custom_settings['fr'] = float(request.form['fr']) custom_settings['def_td'] = float(request.form['def_td']) custom_settings['spc_td'] = float(request.form['spc_td']) custom_settings['sfty'] = float(request.form['sfty']) custom_qb,custom_rb,custom_wr,custom_te,custom_k,custom_def =\ custom(qb_data, rb_data,wr_data, te_data, k_data, def_data,\ custom_percentiles, custom_settings) #Transforms data into custom results. tables = list( ) #Creates new list for dataframes and render_template function below titles = list() #Creates new list for dataframe titles return render_template('custom.html', tables=[ custom_qb.to_html(classes='custom'), custom_rb.to_html(classes='custom'), custom_wr.to_html(classes='custom'), custom_te.to_html(classes='custom'), custom_k.to_html(classes='custom'), custom_def.to_html(classes='custom') ], titles=[ 'na', 'Quarterbacks', 'Running Backs', 'Wide Receivers', 'Tight Ends', 'Kickers', 'Defenses/Special Teams' ], success=True) elif request.method == 'GET': #Loads page information into web page index /custom return render_template('custom.html', form=form)