In [1]:
list_of_workshops = pd.read_csv("")

In [2]:
wks_title = list_of_workshop['title']

In [3]:
num_people = list_of_workshops["presentors"]

In [4]:


In [5]:


In [6]:
def jumbo_wks(background_img, track_title)
background_img = '/assets/img/network.svg'
track_title='Track 3: Beyond'

wks_jumbotron = """
    <div class="container">
        <div class="jumbotron" style="background-image:url({background_img});background-position:right bottom;background-repeat: no-repeat;">
            <h1>Workshops</h1>
            <p>{track_title}</p>
        </div>
    </div>
    """.format(track_title=track_title,background_img=background_img )

In [7]:
bio_id = '304_ajovellanos'
def presentor_block(presentor_name,short_50, bio_id, year):
  return """
          <div class="col-sm-6 col-md-4">
            <div class="thumbnail">
                <img src="/assets/img/wks/{bio_id}.jpg" height="200" width="319" alt="{presentor_name}">
                <div class="caption">
                  <h3>{presentor_name}</h3>
                  <p>{short_50}</p>
                  <p><a href="/wks/{year}/bios/{bio_id}.html" class="btn btn-primary" role="button">Read Full Bio</a></p>
                </div>
            </div>
          </div>
""".format(presentor_name=presentor_name, short_50 = short_50, bio_id = bio_id, year=year)

In [8]:
def presentor_section(num_presentor, presentor_block):
  presentor_chunk = """<div class="row">"""
  for presentor in range(num_presentor):
    if ((presentor % 3) == 0) & presentor !=0:
      presentor_chunk += """</div> \n <div class="row">"""
      
      presentor_chunk += str(presentor_block[presentor]) #future present_block(function)
      
    else: 
      presentor_chunk += presentor_block[presentor]
  presentor_chunk += """</div>"""
  return presentor_chunk
#add end div
#def for taking first lower(initial), and lower(lastname) to construct different directores
#def for creating short bio

In [9]:
#presentor_block = ['A', 'B', 'C', 'D', 'E']
#presentor_block = ['A', 'B', 'C', 'D', 'E', 'F']
presentor_block = ['A', 'B']
num_presentor = len(presentor_block)
print presentor_section(num_presentor, presentor_block)

In [10]:
track_id = "1"
presentor_first = "Richard Brian"
presentor_last = "Lu"

def presentor_directory (track_id, presentor_first, presentor_last):
  first_names = presentor_first.split(' ')
  first_initials = ""
  for name in first_names:
    first_initials += name[0]
  
  return track_id + first_initials + presentor_last
  
print presentor_directory(track_id, presentor_first, presentor_last)

In [11]:
def short_bio(bio):
  charcount = 0
  wordcount = 0
  for char in bio:
    charcount += 1
    if wordcount < 20:
      if char == ' ':
        wordcount += 1 
    else:
      return bio[:charcount-2] + "..." #return first 20 words of bio
  
  return bio[:50] + "..." #return first 50 chars by default

In [12]:
def presentor_chunk(presentor_img_url, presentor_img_alt_txt, presentor_bio_prev):
  return """
  <div class="col-sm-6 col-md-4">
     <div class="thumbnail">
         <img src="{presentor_img_url}" alt="{presentor_img_alt_txt}">
                  <div class="caption">
                    <h3>Thumbnail label</h3>
                    <p>{presentor_bio_prev}</p>
                    <p><a href="#" class="btn btn-primary" role="button">Read Full Bio</a></p>
                  </div>
      </div>
   </div>""".format(presentor_img_url=presentor_img_url, presentor_img_alt_txt=presentor_img_alt_txt, presentor_bio_prev=presentor_bio_prev)

In [13]:
def wks_info (wks_title, wks_descr, presentor_section):
  return = """
  <div class="container">
        <h2>{wks_title}</h2>
        <br>
        <h4>Description</h4>
        <p>{wks_descr}</p>
        <br>
        <h4>Presenters</h4>
        {presentor_section}
  </div> <!-- /container -->
      """.format(wks_title=wks_title, wks_descr=wks_descr, presentor_section= presentor_section)

In [14]:
def create_wks_page(list_of_workshops, year):
  # Loop through all lines in the file
  year = year
  for x in range(length_of_list):
    background_img = list_of_workshops['background_img'][x]
    track_title = list_of_workshops['track_title'][x]
    wks_title = list_of_workshops['wks_title'][x]
    wks_descr = list_of_workshops['wks_descr'][x]
    presentor_img_url = list_of_workshops['presentor_img_url'][x]
    presentor_img_alt_txt = list_of_workshops['presentor_img_alt_txt'][x]
    presentor_bio_prev = list_of_workshops['presentor_bio_prev'][x]
    presentor_section = presentor_section()
    
    header = """
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="description" content="The Official Website of the New York City Asian American Student Conference">
    <meta name="author" content="Amelia Chu">
    <link rel="icon" href="/assets/favicon.ico">

    <title>NYCAASC | {year} Workshops | {title}</title>

    <!-- Bootstrap core CSS -->
    <link href="/assets/css/bootstrap.min.css" rel="stylesheet">

    <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
    <link href="/assets/css/ie10-viewport-bug-workaround.css" rel="stylesheet">

    <!-- Custom styles for this template -->
    <link href="/assets/css/navbar-fixed-top.css" rel="stylesheet">
    <!-- Custom styles for this template -->
    <link href="/assets/css/nycaasc-custom.css" rel="stylesheet">

    <!-- Just for debugging purposes. Don't actually copy these 2 lines! -->
    <!--[if lt IE 9]><script src="..//assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
    <script src="/assets/js/ie-emulation-modes-warning.js"></script>

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>
""".format(year=year, title=title)
    
    navigator = """
    <!-- Fixed navbar -->
    <nav class="navbar navbar-default navbar-fixed-top">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="/index.html">NYC<font color = "#cf3537">AA</font>SC</a>
        </div>
        <div id="navbar" class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li class="active"><a href="/index.html">Home</a></li>
            <li class="dropdown">
              <a href="/index.html#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Conference <span class="caret"></span></a>
              <ul class="dropdown-menu">
                <li><a href="/theme.html">Theme</a></li>
                <li><a href="/index.html#featuredperformances">Featured Performances + Keynote</a></li>
                <li><a href="/index.html#schedule">Schedule</a></li>
                <li><a href="https://www.eventbrite.com/e/10th-annual-nycaasc-registration-22417219507">Registration</a></li>
                <li role="separator" class="divider"></li>
                <li class="dropdown-header">Support the Conference</li>
                <li><a href="/partners.html">Community Partnerships</a></li>
                <li><a href="/sponsorship.html">Sponsorship Opportunities</a></li>
              </ul>
            </li>
            <li><a href="/events.html">Satellite Events</a></li>
            <li class="dropdown">
              <a href="/index.html#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">About Us <span class="caret"></span></a>
              <ul class="dropdown-menu">
                <li><a href="/mission.html">Mission + History</a></li>
                <li><a href="/currentboard.html">Current Board</a></li>
                <li role="separator" class="divider"></li>
                <li class="dropdown-header">Join Us!</li>
                <li><a href="/apply.html">Apply for Membership</a></li>
                <li><a href="/hslprogram.html">High School Liason Program</a></li>
              </ul>
            </li>
          </ul>
          <ul class="nav navbar-nav navbar-right">
            <li class="social-menu--link"><a href="https://www.facebook.com/nycaascpage"><img src="/assets/img/fb.svg" height="16" width="16" alt="Facebook"></a></li>
            <li class="social-menu--link"><a href="https://twitter.com/nycaasc"><img src="/assets/img/tw.svg" height="16" width="16" alt="Twitter"></a></li>
            <li class="social-menu--link"><a href="https://www.instagram.com/nycaasc"><img src="/assets/img/in.svg" height="16" width="16" alt="Instagram"></a></li>
          </ul>
        </div><!--/.nav-collapse -->
      </div>
    </nav> <!--/navigation-->
    """
    
    wks_page = header + navigator + jumbo_wks(background_img, track_title) + wks_info(wks_title, wks_descr, presentor_section) + wks_presentors(presentor_img_url, presentor_img_alt_txt, presentor_bio_prev)
  
  #path_to_repo is the path where you are storing the NYCAASC website locally
    directory ="{path_to_repo}/wks/{year}/{track_id}/{wks_num}.html".format("path_to_repo=path_to_repo, year=year, track_id=track_id wks_num=wks_num")
    f = open(directory, 'w')
    f.write(wks_page)
    f.close()

In [15]: