from jinja2 import Template

js_template="""
function drawChart137() {
    
  var columns = {{columns}}; 
  var title = "{{title}}";

  return [title, columns];
}
 """

template=Template(js_template)

js_script=template.render(title=title, columns = columns)

from py_mini_racer import py_mini_racer
ctx = py_mini_racer.MiniRacer()
ctx.eval(js_script)
title, columns = ctx.call("drawChart137")

def build_dict(script_list):
  
  wait_times = dict()
  ctx = py_mini_racer.MiniRacer()
  
  for script in script_list:
    #title and columns are in JavaScript format
    title, columns = extract_dates(script.text)
    
    print(title)
    
    js_template="""
      function drawChart137() {

        var columns = {{columns}}; 
        var title = "{{title}}";

        return [title, columns];
      }
       """

    template=Template(js_template)

    #generate JavaScript dynamically and execute it
    js_script=template.render(title=title, columns = columns)


    ctx.eval(js_script)

    #title and columns are Python objects
    title, columns = ctx.call("drawChart137")
    
    #build up wait times dictionary for each ride
    wait_times[title] = columns
    
  return wait_times

wait_times_by_ride = build_dict(all_rides)