def compile():
  mainContents = (
    <frag>
      <h2>
        OUR CATHOLIC WEDDING
      </h2>
      <article>
        <p>
          We’re excited about our upcoming Catholic wedding! We’d like our guests to understand what exactly we’re getting ourselves into. Here’s a quick overview of some of the special features of Catholic marriage.
        </p>
        <h3>
          <q>Marriage is not a purely human institution</q> <a href="http://www.vatican.va/archive/ccc_css/archive/catechism/p2s2c3a7.htm">(CCC 1603)</a>
        </h3>
        <p>
          As Catholics, we believe that <q>God Himself is the author of matrimony</q> <a href="http://www.vatican.va/archive/hist_councils/ii_vatican_council/documents/vat-ii_const_19651207_gaudium-et-spes_en.html">(Gaudium et spes)</a>. Marriage is a sacred bond, not just a legal contract. During His time on Earth, Jesus Christ upgraded marriage into a genuine sacrament. This means that marriage between two baptized Christians is an <q>efficacious sign of grace</q> by which <q>divine life is dispensed</q> to the spouses <a href="http://www.vatican.va/archive/ccc_css/archive/catechism/p2s1c1a2.htm">(CCC 1131)</a>.
        </p>
        <h3>
          <q>Till death do us part</q>
        </h3>
        <p>
          For Catholics, marriage is an extremely serious commitment. The Catholic Church teaches that a consummated, sacramental marriage only ends when one of the spouses dies. <q>The Church does not have the power</q> to end the marriage any earlier <a href="http://www.vatican.va/archive/ccc_css/archive/catechism/p2s2c3a7.htm">(CCC 1640)</a>. Even if spouses were to get a civil divorce, the sacred marriage bond would remain. As Jesus put it, <q>Whoever divorces his wife and marries another commits adultery against her; and if she divorces her husband and marries another, she commits adultery.</q> <a href="http://usccb.org/bible/mark/10">(Mark 10:11-12)</a>
        </p>
        <h3>
          <q>The two shall become one flesh</q>
        </h3>
        <p>
          The Catholic Church teaches that sex is <q>noble and honorable</q> <a href="http://www.vatican.va/archive/ccc_css/archive/catechism/p3s2c2a6.htm">(CCC 2362)</a>. However, all Catholics, married and unmarried, must practice the virtue of chastity. In this context, <dfn>chastity</dfn> means refusing to overindulge one’s appetite for sex. (Similarly, it’s good to refuse to overindulge one’s appetite for food!)
        </p>
        <p>
          The Catholic Church teaches that chastity comes in different forms. For unmarried people, chastity requires refraining from sex altogether. Within marriage, chaste sex is good and possible. Sex <q>achieves the twofold end of marriage: the good of the spouses themselves and the transmission of life</q> <a href="http://www.vatican.va/archive/ccc_css/archive/catechism/p3s2c2a6.htm">(CCC 2363)</a>. Spouses are right to seek out and enjoy the <q>pleasure and happiness of body and spirit</q> that come with sex <a href="https://www.ewtn.com/library/PAPALDOC/P511029.HTM">(Pope Pius XII, allocution to midwives, 10/29/1951)</a>.
        </p>
        <h3>
          What to expect at our wedding ceremony
        </h3>
        <p>
          Don’t worry if you’re not a practicing Catholic. Our wedding ceremony is open to people of any faith or no faith. Guests are not expected to do anything difficult. The role of guests at the ceremony is simply to supportively witness the wedding.
        </p>
        <p>
          Our wedding will take place during a Catholic Mass (as is traditional). In any Catholic Mass, there are several points where the congregation prays, sings, or says a creed together. Non-Catholic guests are welcome to participate or not participate at these times.
        </p>
        <p>
          Near the end of the Mass, the congregation comes forward to receive Jesus’ body and blood under the appearance of bread and wine (the Eucharist). If you’re not a practicing Catholic, please do not receive the Eucharist. We encourage you to come forward to receive a blessing; please cross your arms over your chest to indicate that you are not receiving the Eucharist. You’re also welcome to simply stay in your seat during this time.
        </p>
        <h3>
          How you can take part in our wedding right now
        </h3>
        <p>
          Please pray for us! We will be praying every Friday evening for our upcoming marriage. We would like to say prayers written by you, our friends and family. Please submit a prayer below so we can include it in our weekly prayers. Additionally, we invite you to pray your prayer every Friday evening too!
        </p>
      </article>
      <iframe src="https://docs.google.com/forms/d/e/1FAIpQLSeXTtqv65mwOCGikRzR64MRf5bo34k5bbSw1qo9kJ1lUwOIsg/viewform?embedded=true" height="691" frameborder="0" marginheight="0" marginwidth="0">Loading...</iframe>
    </frag>
  )
  
  page.compile("our-catholic-wedding/index.html", mainContents, stylesheet="/our-catholic-wedding/index.css", title="Our Catholic Wedding")
예제 #2
0
def compile():
  # Generate JS file with invitation data from CSV file
  invitations = {}
  
  with open("invitation-data.csv") as csvfile:
    with open("idList.txt", "w") as idListFile:
      reader = csv.reader(csvfile)
      first = True
      for row in reader:
        if first:
          first = False
        else:
          id = hashlib.sha1(row[0].encode()).hexdigest()[:8]
          invitations[id] = {}
          
          invitations[id]["ng"] = row[0].split(", ") # Named guests
          assert row[1] in {"Y", "N"}, "Invalid row %s" % str(row)
          invitations[id]["itr"] = (row[1] == "Y") # Invited to rehearsal
          assert row[2] in {"Y", "N"}, "Invalid row %s" % str(row)
          invitations[id]["itrd"] = (row[2] == "Y") # Invited to rehearsal dinner
          invitations[id]["noea"] = int(row[3]) # Number of extras allowed
        
          idListFile.write(id + "\n")
        
  with open("assets/invitation-data2.js", "w") as jsfile:
    jsfile.write("const invitations = " + json.dumps(invitations) + ";")
  
  mainContents = (
    <div id="outerRSVPContainer">
      <div id="rsvpMessage">
        <p>
          RSVP at the bottom of your electronic invitation.
        </p>
        <p>
          Did you lose your invitation link? Find it again by entering your name here.
        </p>
      </div>
      <form onsubmit="event.preventDefault(); findInvitation();" id="findPartyForm">
        <input type="text" id="firstName" placeholder="First name" />
        <input type="text" id="lastName" placeholder="Last name" />
        <input type="submit" value="Find invitation" />
      </form>
      <div id="partialMatchDiv">
        Hmm. We couldn't find an invitation under that <em>exact</em> name. Click on your name if you see it below.
        <ul id="partialMatchList">
        </ul>
        Otherwise, is there any chance we have a different name for you?
      </div>
      <div id="notFoundMessage">
        Hmm. We couldn't find an invitation under that name. Is there any chance we have a different name for you?
      </div>
    </div>
  )
  
  page.compile("rsvp/index.html", mainContents, stylesheet="/rsvp/index.css", scripts=["/assets/invitation-data2.js", "/rsvp/find-invitation-form.js"], title="RSVP")
예제 #3
0
def compile():
  mainContents = (
    <frag>
      <div id="days-to-go">
        <img src="/photos/111-2525.jpg" srcset="/photos/111-2525.jpg 2525w, /photos/111-1803.jpg 1803w, /photos/111-1287.jpg 1287w, /photos/111-919.jpg 919w" sizes="2400px" id="top-img" />
        <span id="days-to-go-text"><span id="countdown">298</span> DAYS TO GO</span>
      </div>
      <div id="bride-and-groom">
        <div id="circle">
          <div class="spouse">
            ALICIA<br />TORRES
          </div>
          <div id="and">
            AND
          </div>
          <div class="spouse">
            WILLIAM<br />HOZA
          </div>
        </div>
      </div>
      <div id="event-basics">
        <div id="event-hashtag">
          &num;CAVEMANANDWIFE2019
        </div>
        <div id="place-and-date">
          <div class="event-fact">
            <div>AUSTIN, TEXAS</div>
          </div>
          <div class="event-fact">
            <div><time datetime="2019-11-08">NOVEMBER 8, 2019</time></div>
          </div>
        </div>
      </div>
      <div id="story">
        <p>
          In the fall of 2016, Alicia was an officer for UT's pro-life student organization, and she posted an advertisement for the org in a Catholic Facebook group. That was William's first semester as a PhD student at UT. He saw the Facebook post, attended the org's first meeting, and met Alicia for the first time.
        </p>
        <p>
          They became friends that semester, participating in org activities together and chatting about ethics, controversial issues, and math. In January of 2017, they went to the LBJ library on their first date. Alicia was so nervous that she asked Paige K. (a bridesmaid) to tell William she was sick and couldn't go. But she did go, and it went great. They went on a few more dates before William asked Alicia to officially be his girlfriend on January 14, 2017.
        </p>
        <p>
          They spent many joyful months growing close and developing a solid, resilient, loving relationship. Using their complementary skills and interests, they launched a small pro-life organization in 2018 ("What's My Pro-Life Line?"). That project is surely just one of many "fruits" their relationship will bear.
        </p>
        <p>
          On their second anniversary, at Alicia's favorite place in Austin, William proposed to Alicia with his late grandmother's engagement ring. Nowadays, Alicia and Paige H. (the maid of honor) are planning their wedding. Meanwhile, William and Alicia are both relieved that William is (mostly) not involved. The couple prays together on a regular basis for their relationship and future marriage, and they are currently reading books to help them prepare for the sacrament.
        </p>
      </div>
      <img id="bottom-photo" src="/photos/97.jpg" srcset="/photos/97-5876.jpg 5876w, /photos/97-4197.jpg 4197w, /photos/97-2997.jpg 2997w, /photos/97-2140.jpg 2140w, /photos/97-1528.jpg 1528w, /photos/97-1091.jpg 1091w, /photos/779.jpg 779w, /photos/97-556.jpg 556w, /photos/97-397.jpg 397w" sizes="(min-width:2000px) 2000px, 100vw" />
    </frag>
  )
  
  page.compile("index.html", mainContents, stylesheet="/index2.css", scripts=["/index.js"])
예제 #4
0
def compile():
  mainContents = (
    <frag>
      <div id="guestbook-link-block">
        <a href="https://airtable.com/shrEtBIDK9uzzDPrp">
          Click here to sign the public guestbook
        </a>
      </div>
      <div id="guestbook-iframe-container">
        <div id="guestbook-loading-text">
          Loading...
        </div>
        <iframe src="https://airtable.com/embed/shrsjEuhDPybMgVwd?backgroundColor=gray"></iframe>
      </div>
    </frag>
  )
  
  page.compile("guestbook/index.html", mainContents, stylesheet="/guestbook/index.css", title="Guestbook")
예제 #5
0
def compile():
  # Intentionally omitted: 31, 33, 3, 50, 72
  nums = [13, 83, 103, 64, 91, 56, 21, 100, 95, 85, 45, 104, 8, 77, 92, 61, 88, 57, 84, 71, 51, 73, 26, 12, 68, 1, 99, 70, 9, 35, 80, 96, 38, 62, 36, 5, 59, 78, 60, 82, 52, 53, 40, 2, 97, 7, 41, 49, 43, 106, 44, 46, 6, 48, 81, 69, 47, 90, 37, 107, 39, 34, 86, 67, 55, 32, 108, 75, 30, 29, 76, 20, 87, 28, 66, 27, 25, 79, 23, 24, 109, 22, 58, 19, 65, 74, 94, 105, 11, 93, 54, 17, 98, 63, 16, 110, 15, 102, 14, 101, 18, 89, 10, 42, 4]
  WAImages = [WAImg(n) for n in nums]
  imgElements = <frag></frag>
  
  for img in tqdm(WAImages, desc="Images"):
    img.generateFiles()
    imgElements.append(img.imgElement())
  
  mainContents = (
    <frag>
      <h2>
        PHOTOS
      </h2>
      <div id="image-data">
        {imgElements}
      </div>
      <div id="gallery">
      </div>
    </frag>
  )
  
  page.compile("photos/index.html", mainContents, title="Photos", stylesheet="/photos/index.css", scripts=["/photos/index.js"])
예제 #6
0
def compile():
  mainContents = (
    <frag>
      <h2>
        SCHEDULE
      </h2>
      <div id="shuttle-info" style="padding:0 10px;">
        Shuttle service will be provided from the <u>ceremony to the reception</u> and from the <u>reception to the Holiday Inn Austin Town Lake</u>.
      </div>
      <div class="schedule-item">
        <div class="schedule-item-basics">
          <div class="schedule-item-name">
            Rehearsal
          </div>
          <div class="schedule-item-datetime">
            (Special invitation required)
          </div>
          <div class="schedule-item-datetime">
            Thursday, November 7, 2019
          </div>
          <div class="schedule-item-datetime">
            4pm
          </div>
          <div class="schedule-item-datetime">
            Casual attire
          </div>
        </div>
        <div class="schedule-item-details">
          <img src="ucc.jpg" class="schedule-photo" />
          <div class="schedule-item-location">
            University Catholic Center<br />
            2010 University Ave<br />
            Austin, TX 78705
          </div>
        </div>
      </div>
      <div class="schedule-item">
        <div class="schedule-item-basics">
          <div class="schedule-item-name">
            Rehearsal Dinner
          </div>
          <div class="schedule-item-datetime">
            (Special invitation required)
          </div>
          <div class="schedule-item-datetime">
            Thursday, November 7, 2019
          </div>
          <div class="schedule-item-datetime">
            6pm
          </div>
          <div class="schedule-item-datetime">
            Dressy casual attire
          </div>
        </div>
        <div class="schedule-item-details">
          <img src="capital-cruises.jpg" class="schedule-photo" />
          <div class="schedule-item-location">
            Capital Cruises<br />
            208 Barton Springs Rd<br />
            Austin, TX 78704
          </div>
        </div>
      </div>
      <div class="schedule-item">
        <div class="schedule-item-basics">
          <div class="schedule-item-name">
            Welcome Party
          </div>
          <div class="schedule-item-datetime">
            (All guests are invited)
          </div>
          <div class="schedule-item-datetime">
            Thursday, November 7, 2019
          </div>
          <div class="schedule-item-datetime">
            7:30pm
          </div>
          <div class="schedule-item-datetime">
            Dressy casual attire
          </div>
        </div>
        <div class="schedule-item-details">
          <img src="capital-cruises.jpg" class="schedule-photo" />
          <div class="schedule-item-location">
            Capital Cruises<br />
            208 Barton Springs Rd<br />
            Austin, TX 78704
          </div>
        </div>
      </div>
      <div class="schedule-item">
        <div class="schedule-item-basics">
          <div class="schedule-item-name">
            Nuptial Mass
          </div>
          <div class="schedule-item-datetime">
            (All guests are invited)
          </div>
          <div>
            Friday, November 8, 2019
          </div>
          <div class="schedule-item-datetime">
            3pm
          </div>
          <div class="schedule-item-datetime">
            Semiformal attire
          </div>
        </div>
        <div class="schedule-item-details">
          <img src="ucc.jpg" class="schedule-photo" />
          <div class="schedule-item-location">
            University Catholic Center<br />
            2010 University Ave<br />
            Austin, TX 78705
          </div>
        </div>
      </div>
      <div class="schedule-item">
        <div class="schedule-item-basics">
          <div class="schedule-item-name">
            Reception
          </div>
          <div class="schedule-item-datetime">
            (All guests are invited)
          </div>
          <div class="schedule-item-datetime">
            Friday, November 8, 2019
          </div>
          <div class="schedule-item-datetime">
            6pm - 10pm
          </div>
          <div class="schedule-item-datetime">
            Semiformal attire
          </div>
        </div>
        <div class="schedule-item-details">
          <img src="abels.jpg" class="schedule-photo" />
          <div class="schedule-item-location">
            Abel's on the Lake<br />
            3825 Lake Austin Blvd<br />
            Austin, TX 78703
          </div>
        </div>
      </div>
    </frag>
  )
  
  page.compile("schedule/index.html", mainContents, stylesheet="/schedule/index2.css", title="Schedule")
예제 #7
0
def compile():
  mainContents = (
    <frag>
      <h2>
        WEDDING PARTY
      </h2>
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="paige-hardy.jpg" />
          <div class="party-name">
            PAIGE HARDY
          </div>
          <div class="party-title">
            MAID OF HONOR
          </div>
          <div class="party-description">
            Alicia's best friend from high school. Rest assured they'll entertain and distract each other during the reception with tic-tac-toe -- just like they did in their high school theology class.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="nicholas.jpg" />
          <div class="party-name">
            NICHOLAS HOZA
          </div>
          <div class="party-title">
            BEST MAN
          </div>
          <div class="party-description">
            William's younger older brother. They shared a room growing up. Some nights Mom would make Nicholas sleep on the sofa so they would stop talking. Other nights they would compete to fall asleep first. The rule was, anyone who remembered the competition had to say so and check if the other was awake.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="paige-kubenka.jpg" />
          <div class="party-name">
            PAIGE KUBENKA
          </div>
          <div class="party-title">
            BRIDESMAID
          </div>
          <div class="party-description">
            Alicia's roommate, guinea pig sitter, and the couple's best third wheel. She lives in daily fear that William and Alicia will name their children after cheeses. (C'mon, Brie is a name!)
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="jimmy.jpg" />
          <div class="party-name">
            JIMMY "HEINRICH" HOZA
          </div>
          <div class="party-title">
            GROOMSMAN
          </div>
          <div class="party-description">
            William's older older brother. As the first child in the family, he gave all the other kids a model to look up to and emulate, e.g., when he left a snake on the kitchen counter and forgot about it.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="emily-hoza.jpg" />
          <div class="party-name">
            EMILY HOZA
          </div>
          <div class="party-title">
            BRIDESMAID
          </div>
          <div class="party-description">
            She married into the Hoza family and survived, so Alicia is (pretty) sure she can do it too. As William's brother's wife, Emily and Alicia are going to be sisters-in-law and no one can tell them differently!
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="matt.jpg" />
          <div class="party-name">
            MATT MORGAN
          </div>
          <div class="party-title">
            GROOMSMAN
          </div>
          <div class="party-description">
            William's friend from college. Ask him an impossible and ridiculous question. He'll probably enjoy the taste of his own medicine.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="cassie.jpg" />
          <div class="party-name">
            CASSIE GUARDIOLA
          </div>
          <div class="party-title">
            BRIDESMAID
          </div>
          <div class="party-description">
            One of Alicia's close friends, she keeps Alicia up-to-date with internet slang and provides much needed love and acceptance when Alicia needs it.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="simon.jpg" />
          <div class="party-name">
            SIMON LUU
          </div>
          <div class="party-title">
            GROOMSMAN
          </div>
          <div class="party-description">
            William's friend from high school. He lives in Maryland, but he wanted to surprise William for his birthday last year, so he convinced Gehn (coming up next) to come along and coordinated with Alicia who threw an amazing surprise party. William never saw any of it coming.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="jenna.jpg" />
          <div class="party-name">
            JENNA SALAZAR
          </div>
          <div class="party-title">
            BRIDESMAID
          </div>
          <div class="party-description">
            She and Alicia clicked from the day they met. She needs to be by Alicia's side throughout the wedding day to laugh at Alicia's jokes.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="gehn.jpg" />
          <div class="party-name">
            GEHN FERGUSON
          </div>
          <div class="party-title">
            GROOMSMAN
          </div>
          <div class="party-description">
            William's friend from high school. One time he and William drove to Portland to get a tour of a factory that made pipes and things. It was pretty cool.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="maura.jpg" />
          <div class="party-name">
            MAURA TORRES
          </div>
          <div class="party-title">
            MOTHER OF THE BRIDE
          </div>
          <div class="party-description">
            Easily the most fun mom of any Alicia has ever met. Alicia is only mildly concerned that she's becoming more like her with each passing year.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="roseanne.jpg" />
          <div class="party-name">
            ROSEANNE HOZA
          </div>
          <div class="party-title">
            MOTHER OF THE GROOM
          </div>
          <div class="party-description">
            She has made William truly vast quantities of customized, delicious, gluten-free food over the years. Sometimes William feels bad and tries to tell her to not go to the trouble, but she's unstoppable.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="alfred.jpg" />
          <div class="party-name">
            ALFRED TORRES
          </div>
          <div class="party-title">
            FATHER OF THE BRIDE
          </div>
          <div class="party-description">
            William's best audience for punny jokes. He's made sure Alicia has never had to worry about moving, changing the oil in her car, or being unprepared for the future.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="bradley.jpg" />
          <div class="party-name">
            BRADLEY HOZA
          </div>
          <div class="party-title">
            FATHER OF THE GROOM
          </div>
          <div class="party-description">
            He taught William how to skillfully craft premium jokes.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="emily-torres.jpg" />
          <div class="party-name">
            EMILY TORRES
          </div>
          <div class="party-title">
            FLOWER GIRL
          </div>
          <div class="party-description">
            Alicia's little sister (or is she her clone?) wants to know "can we get some action at this wedding? Maybe a swimming pool?"
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="katrina.jpg" />
          <div class="party-name">
            KATRINA HOZA
          </div>
          <div class="party-title">
            FLOWER GIRL
          </div>
          <div class="party-description">
            William's niece. Here's a poem she wrote: "I have carrots / I have peas / I have all the western seas." &copy; 2018, all rights reserved
          </div>
        </div>
      </div>
      
      <div class="party-singleton">
        <div class="party-member">
          <img class="party-photo" src="carson.jpg" />
          <div class="party-name">
            CARSON HOZA
          </div>
          <div class="party-title">
            RING BEARER
          </div>
          <div class="party-description">
            William's nephew. He once judged a bird-noise-making competition between William and Alicia.
          </div>
        </div>
      </div>
    </frag>
  )
  
  page.compile("wedding-party/index.html", mainContents, stylesheet="/wedding-party/index.css", title="Wedding Party")
예제 #8
0
def compile():
  mainContents = (
    <frag>
      <h2>
        TRAVEL
      </h2>
      <div class="schedule-item" style="margin-top:50px;">
        <div class="schedule-item-basics">
          <div class="schedule-item-name">
            Austin Charter Services
          </div>
          <div class="schedule-item-datetime">
            Shuttle
          </div>
          <div class="schedule-item-location">
            Unfortunately, parking is limited at all event locations.
            Shuttle service will be provided from the <u>ceremony to the
            reception</u> and, at the end of the reception, from the <u>reception
            to the Holiday Inn Austin Town Lake</u>. That being said, if
            you do end up parking, here are some suggestions.
            <ul style="text-align:left;">
              <li>
                For the <b>rehearsal dinner / welcome party</b>, Capital
                Cruises <a href="http://www.capitalcruises.com/map-directions/">suggests</a> parking
                at the Hyatt Regency Hotel.
              </li>
              <li>
                For the <b>rehearsal / ceremony</b>, consider parking at
                the <a href="https://staustin.org/parking">St. Austin parking
                garage</a> at 500 W. Martin Luther King Blvd.
              </li>
              <li>
                For the <b>reception</b>, you can try parking in the
                overflow parking lot across Lake Austin Boulevard from
                Abel's. Follow signs for "Oyster Landing Additional
                Parking".
              </li>
            </ul>
          </div>
        </div>
        <div class="schedule-item-details">
          <img src="bus.jpg" class="schedule-photo" style="border:1px solid #c0c0c0;" />
        </div>
      </div>
      <div class="schedule-item">
        <div class="schedule-item-basics">
          <div class="schedule-item-name">
            Holiday Inn Austin Town Lake
          </div>
          <div class="schedule-item-datetime">
            Hotel
          </div>
          <div class="schedule-item-location">
            The group rate is $145/night (while rooms are available). To get this rate:
            <ul style="text-align:left;">
              <li>
                To book a room for Thursday and/or Friday night, please use <a href="https://www.holidayinn.com/redirect?path=hd&brandCode=HI&localeCode=en&regionCode=1&hotelCode=AUSTL&_PMID=99801505&GPC=THW&cn=no&viewfullsite=true">this link</a>, which will automatically fill in group code <b>THW</b>. You can also book your room over the phone by calling 1-888-615-0509; say you are a guest at the <b>Torres Hoza Wedding</b>.
              </li>
              <li>
                For other nights, please book your room by calling Lovinia at 512-634-1275. Say you are a guest at the <b>Torres Hoza Wedding</b>.
              </li>
            </ul>
          </div>
        </div>
        <div class="schedule-item-details">
          <img src="hotel.jpg" class="schedule-photo" />
          <div class="schedule-item-location">
            20 North Ih-35<br />
            Austin, TX 78701<br />
          </div>
        </div>
      </div>
      <div class="schedule-item">
        <div class="schedule-item-basics">
          <div class="schedule-item-name">
            Austin-Bergstrom International Airport (AUS)
          </div>
          <div class="schedule-item-datetime">
            Airport
          </div>
          <div class="schedule-item-location">
            This is the closest airport. If you're staying at the Holiday Inn Austin Town Lake, a free shuttle is available 24 hours a day.
          </div>
        </div>
        <div class="schedule-item-details">
          <img src="airport.jpg" class="schedule-photo" />
          <div class="schedule-item-location">
            3600 Presidential Blvd<br />
            Austin, TX 78719
          </div>
        </div>
      </div>
    </frag>
  )
  
  page.compile("travel/index.html", mainContents, stylesheet="/schedule/index2.css", title="Travel")
def compile():
  mainContents = (
    <frag>
      <h2>
        PLACES OF INTEREST
      </h2>
      <iframe src="https://www.google.com/maps/d/embed?mid=1pUpNUiTR31d4H1y7oi_1gWX2teB_cm3f"></iframe>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="peter-pan-mini-golf.png" />
          <div class="party-name">
            PETER PAN MINI-GOLF
          </div>
          <div class="place-location">
            1207 Barton Springs Rd
          </div>
          <div class="place-description">
            We've been on a couple of dates here. Be aware: it's cash-only!
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="cherrywood.png" />
          <div class="party-name">
            CHERRYWOOD COFFEEHOUSE
          </div>
          <div class="place-location">
            1400 E 38th 1/2 St
          </div>
          <div class="place-description">
            Alicia's favorite restaurant! The manager knows us here and has our regular order memorized. Alicia gets the grilled shrimp taco plate, and William gets a gluten-free chicken and cheese sandwich.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="wilder-wood.png" />
          <div class="party-name">
            WILDER WOOD
          </div>
          <div class="place-location">
            1300 E 7th St
          </div>
          <div class="place-description">
            Our go-to gluten-free restaurant. Their original location recently closed, but this new location has a beautiful view of downtown!
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="lbj-library.jpg" />
          <div class="party-name">
            LYNDON B. JOHNSON LIBRARY
          </div>
          <div class="place-location">
            2313 Red River St
          </div>
          <div class="place-description">
            Our first date spot! We got a parking-ticket, but it was worth it.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="blue-cat-cafe.png" />
          <div class="party-name">
            BLUE CAT CAFÉ
          </div>
          <div class="place-location">
            95 Navasota St
          </div>
          <div class="place-description">
            A very Austin kind of place: Alicia once spent an entire day here hanging out with cats and snacking on cafe food.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="boardwalk.jpg" />
          <div class="party-name">
            The Boardwalk at Lady Bird Lake
          </div>
          <div class="place-location">
            1820 S Lakeshore Blvd
          </div>
          <div class="place-description">
            Our proposal spot! Alicia has often called this the best place in the world.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="lone-star-riverboat.png" />
          <div class="party-name">
            Lone Star Riverboat
          </div>
          <div class="place-location">
            208 Barton Springs Rd
          </div>
          <div class="place-description">
            We've had a few dates here, both on their river cruises and on rented kayaks and their unique swan boats!
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="hideout-theater.png" />
          <div class="party-name">
            The Hideout Theatre
          </div>
          <div class="place-location">
            617 Congress Ave
          </div>
          <div class="place-description">
            We've had a few dates here. They do fun and inexpensive improv shows!
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="torchys.png" />
          <div class="party-name">
            Torchy's Tacos
          </div>
          <div class="place-location">
            2801 Guadalupe St. 5-B
          </div>
          <div class="place-description">
            Really, really, good tacos.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="home-slice.png" />
          <div class="party-name">
            Home Slice Pizza
          </div>
          <div class="place-location">
            1415 S Congress Ave
          </div>
          <div class="place-description">
            We're told this place has amazing pizza, but we've never eaten here because an employee described it to us as "a temple of gluten."
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="cream-whiskers.png" />
          <div class="party-name">
            Cream Whiskers
          </div>
          <div class="place-location">
            2222 Rio Grande St B120
          </div>
          <div class="place-description">
            A really cute place with unique cream puffs and board games.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="chick-fil-a.png" />
          <div class="party-name">
            Chick-fil-A
          </div>
          <div class="place-location">
            503 W Martin Luther King Jr Blvd
          </div>
          <div class="place-description">
            William loves Chick-fil-A. We met here for lunch a couple of times a week throughout the summer of 2017 while Alicia worked at TxDOT nearby.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="park.png" />
          <div class="party-name">
            Sir Swante Palm Neighborhood Park
          </div>
          <div class="place-location">
            200 N IH 35 Svrd SB
          </div>
          <div class="place-description">
            We've been here a few times specifically because it's one of the few parks in the area with swings! It also has fun toys that make you very dizzy.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="tower.jpg" />
          <div class="party-name">
            UT Tower
          </div>
          <div class="place-location">
            110 Inner Campus Drive
          </div>
          <div class="place-description">
            If you want to see any part of the UT campus, the tower is the place to go.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="menchies.png" />
          <div class="party-name">
            Menchie's Frozen Yogurt
          </div>
          <div class="place-location">
            1000 E 41st St #255
          </div>
          <div class="place-description">
            Alicia's and her sister Emily's favorite dessert! We go here every other week or so.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="mural.jpg" />
          <div class="party-name" style="text-transform:none">
            "i love you so much" MURAL
          </div>
          <div class="place-location">
            1300 S Congress Ave
          </div>
          <div class="place-description">
            This is a pretty iconic Austin picture spot.
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="hopdoddy.png" />
          <div class="party-name">
            Hopdoddy Burger Bar
          </div>
          <div class="place-location">
            1400 S Congress Ave
          </div>
          <div class="place-description">
            Alicia's favorite burger place! We strongly recommend the parmesan fries.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="san-jose.png" />
          <div class="party-name">
            San Jose Catholic Church
          </div>
          <div class="place-location">
            2435 Oak Crest Ave
          </div>
          <div class="place-description">
            This church has one of our favorite adoration chapels (and it's open 24 hours!)
          </div>
        </div>
      </div>
      
      <div class="party-pair">
        <div class="party-member">
          <img class="party-photo" src="bennu.png" />
          <div class="party-name">
            Bennu Coffee on Congress
          </div>
          <div class="place-location">
            515 S Congress Ave
          </div>
          <div class="place-description">
            This place makes really good literary-themed mochas. It's one of Alicia's favorite study spots.
          </div>
        </div>
        <div class="party-member">
          <img class="party-photo" src="quacks.png" />
          <div class="party-name">
            Quack's 43rd Street Bakery
          </div>
          <div class="place-location">
            411 E 43rd St
          </div>
          <div class="place-description">
            One of Alicia's favorite study spots. This place has adorable baked treats (including really good brownies) and ample parking.
          </div>
        </div>
      </div>
      
      <div class="party-singleton">
        <div class="party-member">
          <img class="party-photo" src="cafe-monet.png" />
          <div class="party-name">
            Cafe Monet Art Studio
          </div>
          <div class="place-location">
            4700 W Guadalupe St #11
          </div>
          <div class="place-description">
            We've had several dates at this paint-your-own-pottery spot.
          </div>
        </div>
      </div>
    </frag>
  )
  
  page.compile("places-of-interest/index.html", mainContents, stylesheet="/places-of-interest/index.css", title="Places of Interest")