diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/assets/amy.jpg | bin | 71038 -> 0 bytes | |||
-rw-r--r-- | src/assets/bg.png | bin | 78660 -> 0 bytes | |||
-rw-r--r-- | src/assets/favicon.ico | bin | 327262 -> 0 bytes | |||
-rw-r--r-- | src/assets/logo-simple.png | bin | 63173 -> 0 bytes | |||
-rw-r--r-- | src/assets/logo.png | bin | 113640 -> 0 bytes | |||
-rw-r--r-- | src/html/index.html | 657 | ||||
-rw-r--r-- | src/js/iconify.min.js | 13 | ||||
-rw-r--r-- | src/js/index.js | 85 | ||||
-rw-r--r-- | src/js/smtp.js | 2 | ||||
-rw-r--r-- | src/scss/index.scss | 144 |
10 files changed, 0 insertions, 901 deletions
diff --git a/src/assets/amy.jpg b/src/assets/amy.jpg Binary files differdeleted file mode 100644 index 8618911..0000000 --- a/src/assets/amy.jpg +++ /dev/null diff --git a/src/assets/bg.png b/src/assets/bg.png Binary files differdeleted file mode 100644 index 6251881..0000000 --- a/src/assets/bg.png +++ /dev/null diff --git a/src/assets/favicon.ico b/src/assets/favicon.ico Binary files differdeleted file mode 100644 index 8ba4c15..0000000 --- a/src/assets/favicon.ico +++ /dev/null diff --git a/src/assets/logo-simple.png b/src/assets/logo-simple.png Binary files differdeleted file mode 100644 index f4b350b..0000000 --- a/src/assets/logo-simple.png +++ /dev/null diff --git a/src/assets/logo.png b/src/assets/logo.png Binary files differdeleted file mode 100644 index da51050..0000000 --- a/src/assets/logo.png +++ /dev/null diff --git a/src/html/index.html b/src/html/index.html deleted file mode 100644 index 78cc7fc..0000000 --- a/src/html/index.html +++ /dev/null @@ -1,657 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> - <head> - <meta charset="utf-8" /> - <meta http-equiv="X-UA-Compatible" content="IE=edge" /> - <meta name="viewport" content="width=device-width, initial-scale=1" /> - <meta property="og:type" content="website" /> - <meta property="og:site_name" content="Carpenter Tutoring" /> - <meta property="og:title" content="Carpenter Tutoring" /> - <meta property="og:description" content="" /> - <meta property="og:url" content="" /> - <meta property="og:image" content="" /> - <title>Carpenter Tutoring</title> - <link rel="stylesheet" href="index.css" /> - </head> - - <body class="has-navbar-fixed-top is-size-4-desktop"> - <!-- navigation --> - <nav class="navbar is-fixed-top"> - <div class="navbar-brand"> - <a class="navbar-item" href="#"> - <img src="logo-simple.png" /> - </a> - <a role="button" class="navbar-burger" data-target="navMenu"> - <span></span> - <span></span> - <span></span> - </a> - </div> - <div class="navbar-menu" id="navMenu"> - <div class="navbar-start"></div> - <div class="navbar-end"> - <a class="navbar-item" href="#offerings"> - Offerings - </a> - <a class="navbar-item" href="#about"> - About - </a> - <a class="navbar-item" href="#contact"> - Contact Me - </a> - </div> - </div> - </nav> - - <!-- title, slogan, phone --> - <section class="section has-text-right has-banner"> - <div class="banner"> - <div class="container"> - <h1 class="title is-2 has-text-shadow"> - CARPENTER TUTORING - </h1> - <h2 class="subtitle is-3 has-text-shadow"> - <b>Discovering <em>your</em> path to success</b> - </h2> - <div class="buttons is-right"> - <a - class="button is-large is-rounded is-link" - href="tel:1-757-335-7555" - > - Call (757) 335-7555 - </a> - <a class="button is-large is-rounded is-primary" href="#contact"> - Contact me by email - </a> - </div> - </div> - </div> - </section> - - <!-- intro blurb, logo --> - <section class="section quiet"> - <div class="container"> - <div class="columns"> - <div class="column"> - <div class="content"> - <p> - Welcome, and thank you for your interest in Carpenter Tutoring! - </p> - <p> - Carpenter Tutoring is a private tutoring service based in - Suffolk, Virginia. I offer in-person sessions throughout the - Hampton Roads area and remote sessions anywhere in the country. - Most of my offerings are one-on-one, and group sessions and - classes are also available. - </p> - <p> - Prices vary based on content area and delivery method but - typically range around $30 per hour for group sessions and - $50-60 per hour for one-on-one sessions. That being said, I - never want cost to be a prohibitive factor. All prices are - negotiable, and I offer flexible payment arrangements when - needed. No matter your budget, I am confident that we can find - an arrangement that will provide your student services without - creating financial strain. - </p> - <p> - I invite you to scroll down to learn more about the services I - offer, my background, and some of my policies. Thank you for - visiting, and please do not hesitate to reach out with any - questions. I would be thrilled to assist you! - </p> - </div> - </div> - <div class="column is-one-third"> - <div class="box"> - <figure class="image"> - <img src="amy.jpg" /> - </figure> - </div> - </div> - </div> - </div> - </section> - - <!-- offerings --> - <section class="section" id="offerings"> - <div class="container"> - <div class="columns"> - <div class="column is-one-fourth"> - <div - id="offering-1" - class="box offering darkgreen" - onclick="showOffering(this)" - > - <div class="content has-text-centered"> - <p> - <em>Subject Tutoring</em> - </p> - <p>Tutoring for specific courses or disciplines.</p> - <p> - <em><u>Learn more...</u></em> - </p> - </div> - </div> - </div> - - <div class="column is-one-fourth"> - <div - id="offering-2" - class="box offering darkerteal" - onclick="showOffering(this)" - > - <div class="content has-text-centered"> - <p> - <em>Time Management</em> - </p> - <p> - Personalized plans for managing academics, extracurriculars, - and other commitments. - </p> - <p> - <em><u>Learn more...</u></em> - </p> - </div> - </div> - </div> - - <div class="column is-one-fourth"> - <div - id="offering-3" - class="box offering darkgreen" - onclick="showOffering(this)" - > - <div class="content has-text-centered"> - <p> - <em>Study Skills</em> - </p> - <p>Learn how to make the most of your study time.</p> - <p> - <em><u>Learn more...</u></em> - </p> - </div> - </div> - </div> - - <div class="column is-one-fourth"> - <div - id="offering-4" - class="box offering darkerteal" - onclick="showOffering(this)" - > - <div class="content has-text-centered"> - <p> - <em>Academic Coaching </em> - </p> - <p> - Time management and study skills blended with continuing - accountability. - </p> - <p> - <em><u>Learn more...</u></em> - </p> - </div> - </div> - </div> - </div> - </div> - - <div class="container"> - <div class="columns"> - <div class="column is-one-fourth"> - <div - id="offering-5" - class="box offering green" - onclick="showOffering(this)" - > - <div class="content has-text-centered"> - <p><em>College Prep</em></p> - <p> - ACT & SAT preparation and assistance with college - application essays. - </p> - <p> - <em><u>Learn more...</u></em> - </p> - </div> - </div> - </div> - - <div class="column is-one-fourth"> - <div - id="offering-6" - class="box offering darkteal" - onclick="showOffering(this)" - > - <div class="content has-text-centered"> - <p><em>College-Level Writing</em></p> - <p> - Get a head start on meeting professors' expectations. - </p> - <p> - <em><u>Learn more...</u></em> - </p> - </div> - </div> - </div> - - <div class="column is-one-fourth"> - <div - id="offering-7" - class="box offering green" - onclick="showOffering(this)" - > - <div class="content has-text-centered"> - <p><em>Group Webinars</em></p> - <p> - Participate in general workshops and pre-planned courses from - the comfort of home. - </p> - <p> - <em><u>Learn more...</u></em> - </p> - </div> - </div> - </div> - - <div class="column is-one-fourth"> - <div - id="offering-8" - class="box offering darkteal" - onclick="showOffering(this)" - > - <div class="content has-text-centered"> - <p><em>Parent Consultations</em></p> - <p> - For parents seeking advice for facilitating their child's - learning. - </p> - <p> - <em><u>Learn more...</u></em> - </p> - </div> - </div> - </div> - </div> - </div> - </section> - - <!-- about pic and text --> - <section class="section quiet" id="about"> - <div class="container"> - <div class="columns is-vcentered"> - <div class="column is-one-third"> - <figure class="image"> - <img src="logo.png" /> - </figure> - </div> - <div class="column"> - <div class="content"> - <p> - School is tricky, and there is no universal pathway to success. - I started Carpenter Tutoring for those seeking a little help - finding their way. - </p> - <p> - I received my B.A. from The College of William and Mary in 2018 - and received my M.Ed. from W&M in 2020. As an - undergraduate, I worked and was trained as a tutor at W&M's - peer tutoring center, the Tribe TutorZone. During this period, I - conducted over 150 one-on-one appointments with W&M students - in 26 different content areas. I earned lifetime Advanced Tutor - Certification, the highest level W&M can grant, through the - College Reading and Learning Association, and I was trained as a - time management consultant. I took on leadership roles within - the TutorZone until I was working alongside its director. As a - graduate student, I became one of the Graduate Assistants - helping oversee the TutorZone as well as an academic coach to - students with high need for academic support. - </p> - <p> - I loved getting to work with the Tribe TutorZone tutors, but I - realized that I missed being the tutor. There's just nothing - like watching the light bulb of understanding go off or seeing - students who had struggled with material master it! With that - realization, I decided to dedicate my life to my passion: - helping students of all ages learn, succeed, and believe in - themselves. - </p> - <p> - My instructional approach focuses on meeting students where they - are and supporting them through any hesitations or discomforts - from which academic difficulties may arise. Whether your student - only has to brush up on a few concepts or is resistant to - completing coursework, I will come to each session with - patience, understanding, and just the right amount of - discipline. I truly believe that excellent educational - relationships begin with mutual respect, and I work to build - meaningful relationships with all of my clients. - </p> - <p> - Thank you for considering Carpenter Tutoring. - </p> - </div> - </div> - </div> - </div> - </section> - - <!-- contact box, additional contact and tutoring info --> - <section class="section" id="contact"> - <div class="container"> - <div class="columns"> - <div class="column is-one-third"> - <div class="box"> - <form name="inquiry"> - <div class="field"> - <div class="control has-icons-left"> - <span class="icon"> - <i class="iconify" data-icon="mdi-account"></i> - </span> - <input - name="name" - class="input is-rounded" - type="text" - placeholder="name" - /> - </div> - </div> - <div class="field"> - <div class="control has-icons-left"> - <span class="icon"> - <i class="iconify" data-icon="mdi-email"></i> - </span> - <input - name="from" - class="input is-rounded" - type="text" - placeholder="email address" - /> - </div> - </div> - <div class="field"> - <div class="control"> - <textarea - name="body" - class="textarea" - placeholder="question/comment" - spellcheck="true" - ></textarea> - </div> - </div> - <div class="field is-grouped is-grouped-right"> - <div class="control"> - <button class="button is-rounded is-primary" type="submit"> - <span class="icon"> - <i class="iconify" data-icon="mdi-check"></i> - </span> - <span> - Submit - </span> - </button> - </div> - </div> - - <div - id="errorBox" - class="notification is-danger" - style="display: none;" - ></div> - <div - id="successBox" - class="notification is-success" - style="display: none;" - > - Message sent! - </div> - </form> - </div> - </div> - - <div class="column"> - <div class="box"> - <div class="content"> - <ul> - <li> - <strong>Payment methods</strong> I accept payments in-person - through cash or checks made out to Amy Carpenter or through - PayPal. If you select to pay through PayPal, there is an - additional $1.50 processing fee per transaction. - </li> - <li> - <strong>Travel policy</strong> I travel to locations - throughout the Hampton Roads area, including: Suffolk, - Chesapeake, Norfolk, Virginia Beach, Isle of Wight, Newport - News, Yorktown, and Williamsburg. If you live outside of - these areas but are only interested in in-person - appointments, please contact me to make arrangements. - </li> - <li> - <strong>Remote sessions</strong> Remote sessions are - conducted from my home in Suffolk. I generally use - <a href="https://zoom.us/">Zoom</a>, which requires students - to download a free client on their computer or a free app on - their phone or tablet. I am happy to accommodate if you - prefer a different service. - </li> - <li> - <strong>Cancellation policy</strong> - Appointments can be cancelled up to 24 hours before the - start of the appointment free of charge. Appointments - cancelled within the 24-hour window and not rescheduled in - the near future will incur a late cancellation fee of $20. - Appointments for which no notice of cancellation is given - will be charged full price. All cancellation fees will be - waived for cancellations caused by emergencies. - </li> - </ul> - </div> - </div> - </div> - </div> - </div> - </section> - - <!-- footer, copyright, problems --> - <footer class="footer"> - <div class="content has-text-centered"> - <p> - © 2020 Carpenter Tutoring, LLC. All rights reserved. - </p> - <p> - Something wrong? - <a href="mailto:webmaster@carpentertutoring.com"> - Tell the webmaster. - </a> - </p> - </div> - </footer> - - <!-- offering modals, hidden by default --> - <div id="offering-1-modal" class="modal fadeIn"> - <div class="modal-background" onclick="hideOffering(this)"></div> - <div class="modal-content"> - <div class="box offering darkgreen"> - <div class="content"> - <ul> - <li>All levels of reading/Language Arts/English</li> - <li>All levels of Latin</li> - <li>Math through Algebra II/Geometry</li> - <li> - Introductory Biology, Physics, and Chemistry (not at the honors - or AP level) - </li> - <li>Writing skills</li> - </ul> - </div> - </div> - </div> - <button - class="modal-close is-large" - onclick="hideOffering(this)" - ></button> - </div> - - <div id="offering-2-modal" class="modal fadeIn"> - <div class="modal-background" onclick="hideOffering(this)"></div> - <div class="modal-content"> - <div class="box offering darkerteal"> - <div class="content"> - <p> - Learn how to balance all of the demands in your life. Time - Management sessions are tailored to your needs and can include - building an hour-by-hour schedule of your week, creating a - long-term plan for assignments and responsibilities, and - discussing time and stress management techniques. - </p> - </div> - </div> - </div> - <button - class="modal-close is-large" - onclick="hideOffering(this)" - ></button> - </div> - - <div id="offering-3-modal" class="modal fadeIn"> - <div class="modal-background" onclick="hideOffering(this)"></div> - <div class="modal-content"> - <div class="box offering darkgreen"> - <div class="content"> - <p> - Study Skills sessions will allow students to develop a toolkit for - successful study habits. Learn about techniques to fight mental - fatigue and tools for mental recall. Study Skills sessions also - cover ways to address motivation, attention, and avoidance. Topics - will be tailored for your specific needs. - </p> - </div> - </div> - </div> - <button - class="modal-close is-large" - onclick="hideOffering(this)" - ></button> - </div> - - <div id="offering-4-modal" class="modal fadeIn"> - <div class="modal-background" onclick="hideOffering(this)"></div> - <div class="modal-content"> - <div class="box offering darkerteal"> - <div class="content"> - <p> - Academic Coaching offers all the benefits of Study Skills and Time - Management appointments plus ongoing planning and accountability - support. As an Academic Coach, I keep track of your student's - upcoming assignments and assessments and help craft a schedule - week to week for them to accomplish their goals. Students come - away as more independent and confident planners and - self-advocates. - </p> - </div> - </div> - </div> - <button - class="modal-close is-large" - onclick="hideOffering(this)" - ></button> - </div> - - <div id="offering-5-modal" class="modal fadeIn"> - <div class="modal-background" onclick="hideOffering(this)"></div> - <div class="modal-content"> - <div class="box offering green"> - <div class="content"> - <p> - Prepare for standardized college entrance exams with one-on-one - content instruction and practice testing. Additionally, learn how - to write an attention-grabbing personal essay for college - applications, and receive guidance on institution-specific - supplemental essays. - </p> - </div> - </div> - </div> - <button - class="modal-close is-large" - onclick="hideOffering(this)" - ></button> - </div> - - <div id="offering-6-modal" class="modal fadeIn"> - <div class="modal-background" onclick="hideOffering(this)"></div> - <div class="modal-content"> - <div class="box offering darkteal"> - <div class="content"> - <p> - Learn how to shift high-school level writing to that which will be - expected in college. Topics covered include moving beyond the - five-paragraph essay, writing research papers, and choosing a - topic for essays with open prompts. In-session exercises will - allow students to implement these skills in real time with - immediate feedback. - </p> - </div> - </div> - </div> - <button - class="modal-close is-large" - onclick="hideOffering(this)" - ></button> - </div> - - <div id="offering-7-modal" class="modal fadeIn"> - <div class="modal-background" onclick="hideOffering(this)"></div> - <div class="modal-content"> - <div class="box offering green"> - <div class="content"> - <p> - Join a small group of peers online to learn and grow together. - One-session webinars include overviews of time management - techniques and study skills and are best suited to high school and - college students. Pre-planned courses, including SAT Prep, ACT - Prep, and College Transition, meet once per week for five weeks at - a time. Pay $30 per session or save 10% and buy as a package for - $135! Webinars will be hosted through password-protected Zoom - meetings. Participants will receive the Zoom link and weekly - password through e-mail. - </p> - </div> - </div> - </div> - <button - class="modal-close is-large" - onclick="hideOffering(this)" - ></button> - </div> - - <div id="offering-8-modal" class="modal fadeIn"> - <div class="modal-background" onclick="hideOffering(this)"></div> - <div class="modal-content"> - <div class="box offering darkteal"> - <div class="content"> - <p> - After I have worked with your student for a few sessions, you may - request a Parent Consultation during which I will discuss the - strengths and areas for improvement I have seen in your child and - the ways you may be able to help. All parents want to help their - children succeed, but sometimes the way we offer that assistance - is not the way children want to receive it. Learn how to meet your - child where they are and support them in ways which resonate with - their unique needs. These sessions are not tell-alls of what your - student and I discuss during our sessions, as I feel that trust is - central to successful tutoring relationships. - </p> - </div> - </div> - </div> - <button - class="modal-close is-large" - onclick="hideOffering(this)" - ></button> - </div> - - <script src="app.js" type="text/javascript"></script> - </body> -</html> diff --git a/src/js/iconify.min.js b/src/js/iconify.min.js deleted file mode 100644 index 65fbd4f..0000000 --- a/src/js/iconify.min.js +++ /dev/null @@ -1,13 +0,0 @@ -/** - * (c) Vjacheslav Trushkin <cyberalien@gmail.com> - * - * For the full copyright and license information, please view the license.txt or license.gpl.txt - * files at https://github.com/iconify/iconify - * - * Licensed under Apache 2.0 or GPL 2.0 at your option. - * If derivative product is not compatible with one of licenses, you can pick one of licenses. - * - * @license Apache 2.0 - * @license GPL 2.0 - */ -"use strict";if(void 0===self.Iconify&&(self.Iconify={isReady:!1},self.SimpleSVG=self.Iconify,function(e,t){var i,n,o,r,s,a,c,l,u,d,f,h,p,v,g,b,m,y,w,_,x,O,j,I,A,E,k,C,M,L,S,N,P,T,F,R,D,H,V,G,Q,z,B,q,Y,J,U,W,$,K,X,Z,ee,te,ie,ne,oe,re={config:{},version:"1.0.4"};function se(e,t){var i;return t=t||{bubbles:!1,cancelable:!1,detail:void 0},(i=document.createEvent("CustomEvent")).initCustomEvent(e,t.bubbles,t.cancelable,t.detail),i}function ae(){document.removeEventListener("DOMContentLoaded",ae),window.removeEventListener("load",ae),o.DOMReadyCallback()}function ce(t,i,e){var n=t;if("_"!==t.slice(0,1)){if(void 0===u[t]){if(!e||void 0===u["_"+t])return;n="_"+t}switch(n){case"API":case"SVGAttributes":Object.keys(i).forEach(function(e){null===i[t]?delete u[n][e]:u[n][e]=i[e]});break;default:u[n]=i}}}function le(e,t){return function(e,t){switch(e){case"rotate":return t=parseInt(t),isNaN(t)?null:t;case"width":case"height":case"inlineHeight":case"inlineTop":case"verticalAlign":return t=parseFloat(t),isNaN(t)?null:t;case"vFlip":case"hFlip":return!!t;case"body":case"parent":return"string"==typeof t?t:null}return t}("rotate",e+t)}function ue(e,t){return!!e!=!!t}function de(e){var i=Object.create(null);return(void 0===e._defaults?[e,v]:[e,e._defaults,v]).forEach(function(t){Object.keys(t).forEach(function(e){"object"!=typeof t[e]&&void 0===i[e]&&(i[e]=t[e])})}),void 0===i.inlineTop&&(i.inlineTop=i.top),void 0===i.inlineHeight&&(i.inlineHeight=i.height),void 0===i.verticalAlign&&(i.height%7==0&&i.height%8!=0?i.verticalAlign=-.143:i.verticalAlign=-.125),i}function fe(){return this._icons=Object.create(null),this._aliases=Object.create(null),this._resolved=Object.create(null),this._add=function(e,t,i){var n=e?"_aliases":"_icons";void 0===this._resolved[t.prefix]?(this._resolved[t.prefix]=Object.create(null),this._icons[t.prefix]=Object.create(null),this._aliases[t.prefix]=Object.create(null)):(delete this._icons[t.prefix][t.icon],delete this._aliases[t.prefix][t.icon]),this._resolved[t.prefix][t.icon]=!1,this[n][t.prefix][t.icon]=i},this._resolveIcon=function(e){var t,i,n,o,r,s;if(void 0===this._resolved[e.prefix]||void 0===this._resolved[e.prefix][e.icon])return null;if(!1!==this._resolved[e.prefix][e.icon])return this._resolved[e.prefix][e.icon];if(void 0!==this._icons[e.prefix][e.icon])return this._resolved[e.prefix][e.icon]=de(this._icons[e.prefix][e.icon]);for(i=0,t=this._aliases[e.prefix][e.icon],n=Object.create(null),Object.keys(t).forEach(function(e){"parent"!==e&&(n[e]=t[e])}),o=t.parent;;){if(5<++i||void 0===this._resolved[e.prefix][o])return this._resolved[e.prefix][e.icon]=null;if(r=void 0===this._icons[e.prefix][o],s=this[r?"_aliases":"_icons"][e.prefix][o],Object.keys(s).forEach(function(e){if(void 0!==n[e])switch(e){case"rotate":n[e]=le(n[e],s[e]);break;case"hFlip":case"vFlip":n[e]=ue(n[e],s[e])}else"parent"!==e&&(n[e]=s[e])}),!r)break;o=s.parent}return this._resolved[e.prefix][e.icon]=de(n)},this.addCollection=function(n){var o=this,r=Object.create(null);g.forEach(function(e){void 0!==n[e]?r[e]=n[e]:void 0!==v[e]&&(r[e]=v[e])}),void 0!==n.icons&&Object.keys(n.icons).forEach(function(e){var t=p(e,n.prefix),i=n.icons[e];void 0!==i.body&&(i._defaults=r,o._add(!1,t,i))}),void 0!==n.aliases&&Object.keys(n.aliases).forEach(function(e){var t=p(e,n.prefix),i=n.aliases[e];if(void 0!==i.parent){if(void 0===n.prefix){if(i.parent.slice(0,t.prefix.length)!==t.prefix)return;i.parent=i.parent.slice(t.prefix.length+1)}o._add(!0,t,i)}})},this.addIcon=function(e,t,i){var n=void 0!==t.parent,o=p(e,i);if(n&&void 0===i){if(t.parent.slice(0,o.prefix.length)!==o.prefix)return;t.parent=t.parent.slice(o.prefix.length+1)}this._add(n,o,t)},this.exists=function(e,t){var i=p(e,t);return void 0!==this._resolved[i.prefix]&&void 0!==this._resolved[i.prefix][i.icon]},this.getIcon=function(e,t){var i=p(e,t);return this._resolveIcon(i)},this.copyIcon=function(e,t){var i,n=this.getIcon(e,t);return null===n?null:(i=Object.create(null),Object.keys(n).forEach(function(e){i[e]=n[e]}),i)},this.list=function(e){var i,n;return void 0!==e?void 0===this._resolved[e]?[]:Object.keys(this._resolved[e]):(i=[],n=this._resolved,Object.keys(n).forEach(function(t){i=i.concat(Object.keys(n[t]).map(function(e){return""===t&&-1===e.indexOf("-")?e:t+":"+e}))}),i)},this}function he(){w&&(w=!1,m.scanDOM())}function pe(e,t,i){var n,o,r,s,a;if(1===t)return e;if(i=void 0===i?100:i,"number"==typeof e)return Math.ceil(e*t*i)/i;if("string"!=typeof e)return e;if(null===(n=e.split(j))||!n.length)return e;for(o=[],r=n.shift(),s=I.test(r);;){if(s?(a=parseFloat(r),isNaN(a)?o.push(r):o.push(Math.ceil(a*t*i)/i)):o.push(r),void 0===(r=n.shift()))return o.join("");s=!s}}function ve(e,t,i){var n,o,r;for(n=0;n<t.length;n++)if(void 0!==e[o=t[n]])switch(typeof(r=e[o])){case"boolean":return r;case"number":return!!r;case"string":switch(r.toLowerCase()){case"1":case"true":case o:return!0;case"0":case"false":case"":return!1}}return i}function ge(e,t,i){var n,o;for(n=0;n<t.length;n++)if(void 0!==e[o=t[n]])return e[o];return i}function be(){var s=N.loaderMaxURLSize,o=Object.create(null);function a(e,t){var i,n=o[e];"function"!=typeof n?(n=n.replace("{icons}",t.join(",")),(i=document.createElement("script")).setAttribute("type","text/javascript"),i.setAttribute("src",n),i.setAttribute("async",!0),document.head.appendChild(i)):n.call(L,e,t)}function c(e){var t=void 0===N.API[e]?N.defaultAPI:N.API[e];return"function"==typeof t?(o[e]=t,!1):-1===t.indexOf("{icons}")?(o[e]=t,null):(t=t.replace("{prefix}",e).replace("{callback}","Iconify._loaderCallback"),(o[e]=t).replace("{icons}","").length)}Object.keys(T).forEach(function(i){var n=c(i),o=!1===n,r=[];if(null===n)return a(i,[]),void(F[i]=!0);T[i].forEach(function(e,t){o||(n+=e.length+1,s<=n&&(a(i,r),r=[],n=c(i)+e.length+1)),r.push(e)}),r.length&&a(i,r),F[i]=void 0===F[i]?T[i]:F[i].concat(T[i]),delete T[i]}),D=!1}function me(e,t,i){return i||S.domready||N.loadBeforeDOMReady?(void 0===T[e]||-1===T[e].indexOf(t))&&(void 0===F[e]||!0!==F[e]&&-1===F[e].indexOf(t))&&(void 0===T[e]&&(T[e]=[]),T[e].push(t),D||(D=!0,window.setTimeout(be,0)),1):(o=t,void 0===R[n=e]&&(R[n]=Object.create(null)),R[n][o]=!0,void 0===S._loaderDOMReady&&(S._loaderDOMReady=S.DOMReadyCallback,S.DOMReadyCallback=function(){S._loaderDOMReady(),Object.keys(R).forEach(function(t){Object.keys(R[t]).forEach(function(e){L.iconExists(e,t)||me(t,e,!0)})})}),1);var n,o}function ye(){var e;!1!==U&&U.length?(e=U,U=!1,Q.scanDOM(e)):U=!1}function we(e){e.forEach(function(e){var t;if(!1===U&&(U=[],window.setTimeout(ye,0)),e.addedNodes)for(t=0;t<e.addedNodes.length;t++)U.push(e.addedNodes[t])})}function _e(){q.observe(void 0===z._root?document.querySelector("body"):z._root,W)}function xe(e,t){var i;return"<?"===e.slice(0,2)&&(i=e.indexOf(">"),e=e.slice(i+1)),e=-1!==(i=(e=e.replace("viewbox=","viewBox=").replace("preserveaspectratio=","preserveAspectRatio=")).indexOf("</"))?e.replace("</",t+"</"):e.replace("/>",">"+t+"</svg>")}i=re,"function"!=typeof window.CustomEvent&&(se.prototype=window.Event.prototype,window.CustomEvent=se),i.event=function(e,t){document.dispatchEvent(new CustomEvent(e,t))},n=e,r=(o=re).config,s=null,o.DOMReadyCallback=function(){o.domready=!0,o.nextInitItem()},o.initTimeout=function(e){function t(){if(null!==s){if(!1!==s.callback())return s.stop(),void o.nextInitItem();s.counter++,10!==s.counter&&25!==s.counter||(window.clearInterval(s.id),s.id=window.setInterval(t,10===s.counter?250:1e3))}}null!==s&&s.stop(),s={id:window.setInterval(t,100),counter:0,callback:e,stop:function(){window.clearInterval(s.id),s=null},nextTick:t}},o.domready=!1,o.ready=!1,o.initQueue=[],o.readyQueue=[],o.nextInitItem=function(){var e;if(!o.ready){if(o.initQueue.length)e=o.initQueue.shift();else{if(!o.domready)return void o.initTimeout(function(){return!o.domready&&document.body&&o.scanDOM(),o.domready});if(!o.readyQueue.length)return o.ready=n.isReady=!0,o.event(r._readyEvent),void o.scanDOM();e=o.readyQueue.shift()}!1!==e()&&o.nextInitItem()}},o.addStylesheet=function(e){var t;return document.head&&document.body?((t=document.createElement("style")).type="text/css",t.innerHTML="span.iconify, i.iconify, iconify-icon { display: inline-block; width: 1em; }",null!==document.head.firstChild?document.head.insertBefore(t,document.head.firstChild):document.head.appendChild(t),!0):!!o.domready||(e||o.initTimeout(o.addStylesheet.bind(null,!0)),!1)},o.initQueue.push(o.addStylesheet.bind(null,!1)),n.ready=function(e){n.isReady?window.setTimeout(e):document.addEventListener(r._readyEvent,e)},window.setTimeout(function(){"complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?o.domready=!0:(document.addEventListener("DOMContentLoaded",ae),window.addEventListener("load",ae)),o.nextInitItem()}),(a=re.config).SVGAttributes=Object.create(null),a._imageClass="iconify",a._loadingClass="svg-loading",a._iconAttribute="data-icon",a._rotateAttribute="data-rotate",a._flipAttribute="data-flip",a._inlineModeAttribute="data-inline",a._alignAttribute="data-align",a._appendAttribute="data-icon-append",a._appendedClass="svg-appended",a._readyEvent="IconifyReady",a._webComponentsPolyfill="https://cdnjs.cloudflare.com/ajax/libs/webcomponentsjs/0.7.24/webcomponents-lite.min.js",a._classListPolyfill="https://cdnjs.cloudflare.com/ajax/libs/classlist/1.1.20150312/classList.min.js",function(t){t.defaultAPI="https://api.iconify.design/{prefix}.js?icons={icons}",t.API=Object.create(null),t.loaderMaxURLSize=500,t.loadBeforeDOMReady=!(document&&document.body),t._loaderEvent="IconifyAddedIcons",t.sessionStorage=!0;try{t.localStorage=!!(window&&window.localStorage&&window.localStorage.length)}catch(e){t.localStorage=!1}}(re.config),c=e,l=t,u=re.config,c.setConfig=function(e,t){ce(e,t,!1)},c.setCustomAPI=function(e,t){switch(typeof e){case"string":0;break;case"object":if(e instanceof Array){0;break}default:return}e.forEach(function(e){null===t?delete u.API[e]:u.API[e]=t})},c.getConfig=function(e){return void 0===u[e]?void 0===u["_"+e]?null:u["_"+e]:u[e]},["SimpleSVG","Iconify"].forEach(function(e){var t;void 0!==l[e+"Config"]&&"object"==typeof l[e+"Config"]&&(t=l[e+"Config"],Object.keys(t).forEach(function(e){ce(e,t[e],!0)}))}),f=(d=re).config,h=t,d.initQueue.push(function(){var e={observer:!1,classList:!1},t={observer:!1,classList:!1};function i(e){var t;return!e.length||(document.head?((t=document.createElement("script")).setAttribute("src",e),t.setAttribute("type","text/javascript"),document.head.appendChild(t),!0):d.domready)}function n(){if("classList"in document.createElement("div"))return 1;t.classList||(t.classList=i(f._classListPolyfill))}function o(){return h.MutationObserver&&h.WeakMap||t.observer||(t.observer=i(f._webComponentsPolyfill)),1}return e.classList=!n(),e.observer=!o(),!e.classList&&!e.observer||(d.initTimeout(function(){return!(e.observer&&!o()||e.classList&&!n())}),!1)}),re.getPrefix=function(e,t){var i;return"string"==typeof t&&""!==t?{prefix:t,icon:e}:2===(i=e.split(":")).length?{prefix:i[0],icon:i[1]}:1<(i=e.split("-")).length?{prefix:t=i.shift(),icon:i.join("-")}:{prefix:"",icon:e}},p=re.getPrefix,v={left:0,top:0,width:16,height:16,rotate:0,vFlip:!1,hFlip:!1},g=["left","top","width","height","body","rotate","vFlip","hFlip","inlineTop","inlineHeight","verticalAlign"],fe.mergeFlip=ue,fe.mergeRotation=le,fe.blankIcon=function(){return de({body:"",width:16,height:16})},re.Storage=fe,b=e,y=t,w=!1,_=new(m=re).Storage,b.addCollection=function(e,t){_.addCollection(e),w||!0===t||(w=!0,window.setTimeout(he,0))},b.addIcon=function(e,t,i){_.addIcon(e,t),w||!0===i||(w=!0,window.setTimeout(he,0))},b.iconExists=_.exists.bind(_),b.getIcon=_.copyIcon.bind(_),b.listIcons=_.list.bind(_),["SimpleSVG","Iconify"].forEach(function(e){void 0!==y[e+"Preload"]&&y[e+"Preload"]instanceof Array&&y[e+"Preload"].forEach(function(e){"object"==typeof e&&void 0!==e.icons&&b.addCollection(e)})}),x=re.Storage,O=re.config,j=/(-?[0-9.]*[0-9]+[0-9.]*)/g,I=/^-?[0-9.]*[0-9]+[0-9.]*$/g,A=["width","height","inline"],E=["title"],k=0,re.SVG=function(w){return w=w||x.blankIcon(),this.item=w,this.height=function(e,t,i){return void 0===e?t?this.item.inlineHeight:this.item.height:pe(e,(t?this.item.inlineHeight:this.item.height)/this.item.width,i)},this.width=function(e,t,i){return void 0===e?this.item.width:pe(e,this.item.width/(t?this.item.inlineHeight:this.item.height),i)},this.defaultAttributes=function(){return{xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink","aria-hidden":"true",focusable:"false"}},this.preserveAspectRatio=function(e,t,i){var n="";switch(e){case"left":n+="xMin";break;case"right":n+="xMax";break;default:n+="xMid"}switch(t){case"top":n+="YMin";break;case"bottom":n+="YMax";break;default:n+="YMid"}return n+=!0===i?" slice":" meet"},this.htmlspecialchars=function(e){switch(typeof e){case"boolean":case"number":return e+"";case"string":return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}return""},this.attributes=function(t){var e,i,n,o,r,s,a,c,l,u,d,f,h,p=this,v={horizontal:"center",vertical:"middle",crop:!1},g={rotate:w.rotate,hFlip:w.hFlip,vFlip:w.vFlip},b="",m=this.defaultAttributes(),y=[];if(s=ve(t="object"==typeof t?t:Object.create(null),[O._inlineModeAttribute,"inline"],!0),u=ve(t,[O._appendAttribute],!1),e={left:w.left,top:s?w.inlineTop:w.top,width:w.width,height:s?w.inlineHeight:w.height},"string"==typeof t[O._flipAttribute]&&t[O._flipAttribute].split(/[\s,]+/).forEach(function(e){switch(e=e.toLowerCase()){case"horizontal":g.hFlip=!g.hFlip;break;case"vertical":g.vFlip=!g.vFlip}}),void 0!==t[O._rotateAttribute])if("number"==typeof(c=t[O._rotateAttribute]))g.rotate+=c;else if("string"==typeof c)if(""===(d=c.replace(/^-?[0-9.]*/,"")))c=parseInt(c),isNaN(c)||(g.rotate+=c);else if(d!==c){switch(l=!1,d){case"%":l=25;break;case"deg":l=90}l&&(c=parseInt(c.slice(0,c.length-d.length)),isNaN(c)||(g.rotate+=Math.round(c/l)))}switch(g.hFlip?g.vFlip?g.rotate+=2:(y.push("translate("+(e.width+e.left)+" "+(0-e.top)+")"),y.push("scale(-1 1)"),e.top=e.left=0):g.vFlip&&(y.push("translate("+(0-e.left)+" "+(e.height+e.top)+")"),y.push("scale(1 -1)"),e.top=e.left=0),g.rotate%4){case 1:h=e.height/2+e.top,y.unshift("rotate(90 "+h+" "+h+")"),0===e.left&&0===e.top||(h=e.left,e.left=e.top,e.top=h),e.width!==e.height&&(h=e.width,e.width=e.height,e.height=h);break;case 2:y.unshift("rotate(180 "+(e.width/2+e.left)+" "+(e.height/2+e.top)+")");break;case 3:h=e.width/2+e.left,y.unshift("rotate(-90 "+h+" "+h+")"),0===e.left&&0===e.top||(h=e.left,e.left=e.top,e.top=h),e.width!==e.height&&(h=e.width,e.width=e.height,e.height=h)}return i=ge(t,["data-width","width"],null),n=ge(t,["data-height","height"],null),null===i&&null===n&&(n="1em"),null!==i&&null!==n?(o=i,r=n):null!==i?r=pe(o=i,e.height/e.width):o=pe(r=n,e.width/e.height),!1!==o&&(m.width="auto"===o?e.width:o),!1!==r&&(m.height="auto"===r?e.height:r),s&&0!==w.verticalAlign&&(b+="vertical-align: "+w.verticalAlign+"em;"),"string"==typeof t[O._alignAttribute]&&t[O._alignAttribute].toLowerCase().split(/[\s,]+/).forEach(function(e){switch(e){case"left":case"right":case"center":v.horizontal=e;break;case"top":case"bottom":case"middle":v.vertical=e;break;case"crop":v.crop=!0;break;case"meet":v.crop=!1}}),b+="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);",m.style=b+(void 0===t.style?"":t.style),m.preserveAspectRatio=this.preserveAspectRatio(v.horizontal,v.vertical,v.crop),m.viewBox=e.left+" "+e.top+" "+e.width+" "+e.height,a=function(i){var e,n,t=/\sid="(\S+)"/g,o=[];function r(e,t,i){for(var n=0;-1!==(n=i.indexOf(e,n));)i=i.slice(0,n)+t+i.slice(n+e.length),n+=t.length;return i}for(;e=t.exec(i);)o.push(e[1]);return o.length&&(n="IconifyId-"+Date.now().toString(16)+"-"+(16777216*Math.random()|0).toString(16)+"-",o.forEach(function(e){var t=n+k;k++,i=r('="'+e+'"','="'+t+'"',i),i=r('="#'+e+'"','="#'+t+'"',i),i=r("(#"+e+")","(#"+t+")",i)})),i}(this.item.body),y.length&&(a='<g transform="'+y.join(" ")+'">'+a+"</g>"),f=Object.create(null),Object.keys(t).forEach(function(e){void 0===m[e]&&(-1!==E.indexOf(e)?a="<"+e+">"+p.htmlspecialchars(t[e])+"</"+e+">"+a:-1===A.indexOf(e)&&(f[e]=t[e]))}),{attributes:m,elementAttributes:f,body:a,append:u}},this},M=(C=re).config._loadingClass,C.newImage=function(e,t,i){return{element:e,icon:t,parser:i,loading:e.classList.contains(M)}},C.parsedImage=function(e,t){return{element:e,icon:t}},C.getImageAttributes=function(t){var e,i,n=Object.create(null);if(!t.element.hasAttributes())return n;for(e=0;e<t.element.attributes.length;e++)i=t.element.attributes[e],n[i.name]=i.value;return t.parser&&void 0!==t.parser.filterAttributes&&(n=t.parser.filterAttributes(t,n)),void 0!==n.class&&(n.class=n.class.split(" ").filter(function(e){return e!==M}),t.parser&&void 0!==t.parser.filterClasses&&(n.class=t.parser.filterClasses(t,n.class)),n.class=n.class.join(" ")),void 0!==t.attributes&&Object.keys(t.attributes).forEach(function(e){n[e]=t.attributes[e]}),n},function(n,f,e){var s=e._imageClass,t=e._loadingClass,i=e._appendedClass,a=e._iconAttribute,o=e._inlineModeAttribute,r=":not(svg):not(."+i+")",c=":not(."+t+")",l="."+t,h={iconify:{selector:"."+s,selectorAll:"."+s+r,selectorNew:"."+s+r+c,selectorLoading:"."+s+r+l,icon:function(e){var t,i=e.getAttribute(a);if("string"==typeof i)return i;for(var n=0;n<e.classList.length;n++)if(5<(t=e.classList[n]).length&&"icon:"===t.slice(0,5))return t.slice(5);return""},filterClasses:function(e,t){var i,n,o;for(n=0;n<t.length;n++)"icon-"===(i=t[n]).slice(0,5)&&2===(i=i.slice(5).split(":")).length&&(o="data-"+i[0],void 0===e.attributes&&(e.attributes=Object.create(null)),e.attributes[o]=i[1]);return t}}},p=Object.keys(h);n.addFinder=function(e,t){void 0===t.selectorAll&&(t.selectorAll=t.selector+r),void 0===t.selectorNew&&(t.selectorNew=t.selector+r+c),void 0===t.selectorLoading&&(t.selectorLoading=t.selector+r+l),h[e]=t,p=Object.keys(h),n.isReady&&n.scanDOM()},n.addTag=function(e,i,t){n.addFinder("tag-"+e,{selector:e,icon:null==t?h.iconify.icon:t,filterAttributes:function(e,t){return void 0===t[o]&&(t[o]=i),t},filterClasses:h.iconify.filterClasses})};try{"object"==typeof Reflect&&"object"==typeof customElements&&Object.setPrototypeOf&&(Object.setPrototypeOf(u.prototype,HTMLElement.prototype),Object.setPrototypeOf(u,HTMLElement),customElements.define("iconify-icon",u))}catch(e){}function u(){return Reflect.construct(HTMLElement,[],u)}n.addTag("iconify-icon",!1),f.findNewImages=function(c,l){var u=[],d=[];return(c=void 0===c?void 0===e._root?document.body:e._root:c)&&p.forEach(function(e){var t,i,n,o,r=h[e],s=!0===l?r.selectorLoading:!1===l?r.selectorNew:r.selectorAll,a=c.querySelectorAll(s);for(t=0;t<a.length;t++)i=a[t],(n=r.icon(i))&&-1===d.indexOf(i)&&(d.push(i),o=f.newImage(i,n,r),u.push(o))}),u},f.findParsedImages=function(e){var t,i,n,o=[],r=e.querySelectorAll("svg."+s);for(t=0;t<r.length;t++)(n=(i=r[t]).getAttribute(a))&&o.push(f.parsedImage(i,n));return o}}(e,re,re.config),L=e,N=(S=re).config,P=t,T=Object.create(null),F=Object.create(null),R=Object.create(null),H={session:!(D=!1),local:!0},V={session:0,local:0},L._loaderCallback=function(i){var n=!1;"object"==typeof i&&(["local","session"].forEach(function(t){var e;if(!n&&H[t]&&N[t+"Storage"]){e=P[t+"Storage"];try{V[t]||e.setItem("iconify-version",S.version),e.setItem("iconify"+V[t],JSON.stringify(i)),n=!0,V[t]++,e.setItem("iconify-count",V[t])}catch(e){H[t]=!1}}}),L.addCollection(i),S.event(N._loaderEvent))},S.loadImage=function(e,t){var i=S.getPrefix(e.icon);return!!L.iconExists(i.icon,i.prefix)||(!1!==t&&me(i.prefix,i.icon,!1)&&e.element.classList.add(N._loadingClass),!1)},L.preloadImages=function(e){var t,i=!1;return e.forEach(function(e){t=S.getPrefix(e),L.iconExists(t.icon,t.prefix)||(me(t.prefix,t.icon,!0),i=!0)}),i},["local","session"].forEach(function(t){var e,i,n;try{if("object"!=typeof(e=P[t+"Storage"]))return void(H[t]=!1);if(e.getItem("iconify-version")!==S.version)return;if("number"!=typeof(n=parseInt(e.getItem("iconify-count")))||isNaN(n))return;for(;;){if(V[t]>=n)return;if("string"!=typeof(i=e.getItem("iconify"+V[t])))return;"object"==typeof(i=JSON.parse(i))&&L.addCollection(i),V[t]++}}catch(e){H[t]=!1}}),G=e,z=(Q=re).config,B=t,Y=0,W={childList:!(U=!1),subtree:!(J=q=null)},G.pauseObserving=function(){null!==q&&(Y||(J=q.takeRecords(),q.disconnect())),Y++},G.resumeObserving=function(){null!==q?Y&&(--Y||(_e(),null!==J&&J.length&&we(J))):Y--},G.isObserverPaused=function(){return null===q||!!Y},Q.readyQueue.push(function(){return q=new B.MutationObserver(we),Y||_e(),!0}),$=e,X=(K=re).config,Z=X._iconAttribute,ee=X._loadingClass,te=X._imageClass,ie=X._appendedClass,K.renderSVG=function(t){var e,i,n,o,r,s,a=K.getImageAttributes(t),c=$.getIcon(t.icon);a[Z]=t.icon,e=new K.SVG(c),n=document.createElement("svg"),r=e.attributes(a),Object.keys(r.attributes).forEach(function(e){try{n.setAttribute(e,r.attributes[e])}catch(e){}}),Object.keys(r.elementAttributes).forEach(function(e){try{(r.append?t.element:n).setAttribute(e,r.elementAttributes[e])}catch(e){}}),t.loading&&(n.classList.remove(ee),r.append&&t.element.classList.remove(ee)),n.classList.add(te),s=xe(n.outerHTML,r.body),(o=document.createElement("span")).innerHTML=s,i=o.childNodes[0],r.append?(t.element.classList.add(ie),t.element.appendChild(i)):(t.element.parentNode.replaceChild(i,t.element),t.element=i),delete t.parser,delete t.loading},$.getSVGObject=function(e,t){return!!$.iconExists(e)&&new K.SVG($.getIcon(e)).attributes(t,!1)},$.getSVG=function(e,t){var i,n;return!1!==(n=$.getSVGObject(e,t))&&(i=document.createElement("svg"),Object.keys(n.attributes).forEach(function(e){try{i.setAttribute(e,n.attributes[e])}catch(e){}}),xe(i.outerHTML,n.body))},ne=e,(oe=re).scanDOM=function(){var t=!1;function e(){oe.findNewImages().forEach(function(e){oe.loadImage(e)&&(t||(t=!0,ne.pauseObserving()),oe.renderSVG(e))})}if(oe.ready)e();else try{e()}catch(e){}t&&ne.resumeObserving()},ne.scanDOM=oe.scanDOM,ne.getVersion=function(){return oe.version}}(self.Iconify,self)),"object"==typeof exports)try{exports.__esModule=!0,exports.default=self.Iconify}catch(e){}
\ No newline at end of file diff --git a/src/js/index.js b/src/js/index.js deleted file mode 100644 index 8f3a987..0000000 --- a/src/js/index.js +++ /dev/null @@ -1,85 +0,0 @@ -const showOffering = function(element) { - const offeringModal = document.getElementById(element.id + "-modal"); - offeringModal.classList.add("is-active"); -} - -const hideOffering = function(element) { - element.parentElement.classList.remove("is-active"); -} - -/* - * Adds an event listener to all burgers to toggle navbar menu on click. - * TODO: would be better off as a single function and onclicks inlined in html - */ -document.addEventListener('DOMContentLoaded', function () { - const $navbarBurgers = Array.prototype.slice.call(document.querySelectorAll('.navbar-burger'), 0); - - if ($navbarBurgers.length > 0) { - // add a click event on each of them - $navbarBurgers.forEach(function(el) { - el.addEventListener('click', function () { - // get the target from the 'data-target' attribute - const target = el.dataset.target; - const $target = document.getElementById(target); - - // toggle the 'is-active' class on both the 'navbar-burger' and the 'navbar-menu' - el.classList.toggle('is-active'); - $target.classList.toggle('is-active'); - }); - }); - } -}); - -const disableErrorBox = function() { - document.getElementById("errorBox").style.display = "none"; -} - -const disableSuccessBox = function() { - document.getElementById("successBox").style.display = "none"; -} - -const enableErrorBox = function(message) { - const errorBox = document.getElementById("errorBox"); - let aTag = document.createElement('a'); - aTag.setAttribute("href", "mailto:amy@carpentertutoring.com"); - aTag.innerText = message + " Click here to send through your mail client."; - while (errorBox.hasChildNodes()) { errorBox.removeChild(errorBox.lastChild); } - errorBox.appendChild(aTag); - errorBox.style.display = "block"; -} - -const enableSuccessBox = function() { - document.getElementById("successBox").style.display = "block"; -} - -/* - * Adds mail sender to form submit. - */ -document.forms.inquiry.onsubmit = function() { - disableErrorBox(); - disableSuccessBox(); - const form = document.forms.inquiry; - const name = form.elements.name.value; - const fromEmail = form.elements.from.value; - const body = form.elements.body.value; - - Email.send({ - SecureToken : "cec9bc04-de48-48fd-b1ad-a95cffb41468", - To : "amy@carpentertutoring.com", - From : fromEmail, - Subject : "Tutoring Inquiry from " + name, - Body : body, - }).then(message => { - if (message == "OK") { - form.reset(); - enableSuccessBox(); - } - else { - enableErrorBox(message); - } - } - ); - - return false; -} - diff --git a/src/js/smtp.js b/src/js/smtp.js deleted file mode 100644 index 09b1a0d..0000000 --- a/src/js/smtp.js +++ /dev/null @@ -1,2 +0,0 @@ -/* SmtpJS.com - v3.0.0 */
-var Email = { send: function (a) { return new Promise(function (n, e) { a.nocache = Math.floor(1e6 * Math.random() + 1), a.Action = "Send"; var t = JSON.stringify(a); Email.ajaxPost("https://smtpjs.com/v3/smtpjs.aspx?", t, function (e) { n(e) }) }) }, ajaxPost: function (e, n, t) { var a = Email.createCORSRequest("POST", e); a.setRequestHeader("Content-type", "application/x-www-form-urlencoded"), a.onload = function () { var e = a.responseText; null != t && t(e) }, a.send(n) }, ajax: function (e, n) { var t = Email.createCORSRequest("GET", e); t.onload = function () { var e = t.responseText; null != n && n(e) }, t.send() }, createCORSRequest: function (e, n) { var t = new XMLHttpRequest; return "withCredentials" in t ? t.open(e, n, !0) : "undefined" != typeof XDomainRequest ? (t = new XDomainRequest).open(e, n) : t = null, t } };
\ No newline at end of file diff --git a/src/scss/index.scss b/src/scss/index.scss deleted file mode 100644 index d8c7330..0000000 --- a/src/scss/index.scss +++ /dev/null @@ -1,144 +0,0 @@ -@charset "utf-8"; - -// Google Fonts -@import url("https://fonts.googleapis.com/css?family=Architects+Daughter|Indie+Flower|PT+Sans&display=swap"); - -// Palette -$darkteal: rgb(0, 100, 108); -$green: rgb(88, 169, 143); -$darkerteal: rgb(29, 133, 137); -$gray: rgb(157, 210, 211); -$teal: rgb(58, 165, 166); -$cyan: rgb(156, 210, 210); -$darkgray: rgb(127, 177, 181); -$darkgreen: rgb(59, 136, 114); -$yellow: rgb(186, 214, 187); - -// Update Bulma's global variables -$primary: $teal; -$link: $darkteal; -// $info: $cyan -$success: $green; -// $warning: $yellow -// $danger: $red -// $dark: $grey-darker -// $text: $grey-dark -$family-sans-serif: "PT Sans", sans-serif; -// $hr-background-color: $primary; -$title-color: $darkteal; -$title-family: "Architects Daughter", cursive; -$subtitle-color: $darkteal; -$subtitle-family: "Indie Flower", cursive; -//$body-font-size: 1.8rem; -// $body-background-color: $isabelline; - -// Import only what you need from Bulma -@import "../../node_modules/bulma/sass/utilities/_all.sass"; -@import "../../node_modules/bulma/sass/base/_all.sass"; -@import "../../node_modules/bulma/sass/elements/_all.sass"; -@import "../../node_modules/bulma/sass/form/_all.sass"; -@import "../../node_modules/bulma/sass/components/_all.sass"; -@import "../../node_modules/bulma/sass/layout/_all.sass"; -@import "../../node_modules/bulma/sass/grid/_all.sass"; - -.offering { - color: white; -} -.offering .content u { - cursor: pointer; -} -.column .offering { - border: 1em solid $darkgray; -} -.darkteal { - background-color: $darkteal; -} -.green { - background-color: $green; -} -.darkerteal { - background-color: $darkerteal; -} -.darkgray { - background-color: $darkgray; -} -.darkgreen { - background-color: $darkgreen; -} - -.blurb { - background-color: white; - clip-path: polygon( - 0% 0%, - 100% 0%, - 100% 75%, - 75% 75%, - 75% 100%, - 50% 75%, - 0% 75% - ); -} - -.banner { - right: 100%; - padding-top: 5%; - padding-bottom: 5%; - padding-right: 5%; - - // gradient - background: -moz-linear-gradient( - left, - rgba(255, 255, 255, 0) 0%, - rgba(255, 255, 255, 1) 50% - ); - background: -webkit-linear-gradient( - left, - rgba(255, 255, 255, 0) 0%, - rgba(255, 255, 255, 1) 50% - ); - background: linear-gradient( - to right, - rgba(255, 255, 255, 0) 0%, - rgba(255, 255, 255, 1) 50% - ); - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 ); -} - -.has-banner { - //margin-top: 0px !important; - //margin-bottom: 0px !important; - padding-top: 0px !important; - padding-bottom: 0px !important; - padding-right: 0px !important; - padding-left: 10% !important; -} - -.quiet { - background-color: white; -} - -.fawnseh { - font-family: "Architects Daughter", cursive; -} - -.has-text-shadow { - text-shadow: 0px 0px 4px #ffffff; -} - -@keyframes fadeIn { - 0% { - opacity: 0; - } - 100% { - opacity: 1; - } -} - -.fadeIn { - animation-name: fadeIn; - animation-duration: 0.3s; -} - -body { - background-image: url("/bg.png"); -} |