/*!
  * Reqwest! A x-browser general purpose XHR connection manager
  * copyright Dustin Diaz 2011
  * https://github.com/ded/reqwest
  * license MIT
  */
!function(window){function serial(a){var b=a.name;if(a.disabled||!b)return"";b=enc(b);switch(a.tagName.toLowerCase()){case"input":switch(a.type){case"reset":case"button":case"image":case"file":return"";case"checkbox":case"radio":return a.checked?b+"="+(a.value?enc(a.value):!0)+"&":"";default:return b+"="+(a.value?enc(a.value):!0)+"&"}break;case"textarea":return b+"="+enc(a.value)+"&";case"select":return b+"="+enc(a.options[a.selectedIndex].value)+"&"}return""}function enc(a){return encodeURIComponent(a)}function reqwest(a,b){return new Reqwest(a,b)}function init(o,fn){function error(a){o.error&&o.error(a),complete(a)}function success(resp){o.timeout&&clearTimeout(self.timeout)&&(self.timeout=null);var r=resp.responseText;switch(type){case"json":resp=eval("("+r+")");break;case"js":resp=eval(r);break;case"html":resp=r}fn(resp),o.success&&o.success(resp),complete(resp)}function complete(a){o.complete&&o.complete(a)}this.url=typeof o=="string"?o:o.url,this.timeout=null;var type=o.type||setType(this.url),self=this;fn=fn||function(){},o.timeout&&(this.timeout=setTimeout(function(){self.abort(),error()},o.timeout)),this.request=getRequest(o,success,error)}function setType(a){return/\.json$/.test(a)?"json":/\.jsonp$/.test(a)?"jsonp":/\.js$/.test(a)?"js":/\.html?$/.test(a)?"html":/\.xml$/.test(a)?"xml":"js"}function Reqwest(a,b){this.o=a,this.fn=b,init.apply(this,arguments)}function getRequest(a,b,c){if(a.type!="jsonp"){var d=xhr();return d.open(a.method||"GET",typeof a=="string"?a:a.url,!0),setHeaders(d,a),d.onreadystatechange=readyState(d,b,c),a.before&&a.before(d),d.send(a.data||null),d}var e=doc.createElement("script");window[getCallbackName(a)]=generalCallback,e.type="text/javascript",e.src=a.url,e.async=!0;var f=function(){a.success&&a.success(lastValue),lastValue=undefined,head.removeChild(e)};e.onload=f,e.onreadystatechange=function(){e.readyState=="loaded"&&f()},head.appendChild(e)}function generalCallback(a){lastValue=a}function getCallbackName(a){var b=a.jsonpCallback||"callback";if(a.url.slice(-(b.length+2))==b+"=?"){var c="reqwest_"+uniqid++;return a.url=a.url.substr(0,a.url.length-1)+c,c}var d=new RegExp(b+"=([\\w]+)");return a.url.match(d)[1]}function setHeaders(a,b){var c=b.headers||{};c.Accept="text/javascript, text/html, application/xml, text/xml, */*",c["X-Requested-With"]=c["X-Requested-With"]||"XMLHttpRequest";if(b.data){c["Content-type"]="application/x-www-form-urlencoded";for(var d in c)c.hasOwnProperty(d)&&a.setRequestHeader(d,c[d],!1)}}function readyState(a,b,c){return function(){a&&a.readyState==4&&(twoHundo.test(a.status)?b(a):c(a))}}var twoHundo=/^20\d$/,doc=document,byTag="getElementsByTagName",head=doc[byTag]("head")[0],xhr="XMLHttpRequest"in window?function(){return new XMLHttpRequest}:function(){return new ActiveXObject("Microsoft.XMLHTTP")},uniqid=0,lastValue;Reqwest.prototype={abort:function(){this.request.abort()},retry:function(){init.call(this,this.o,this.fn)}},reqwest.serialize=function(a){var b=a[byTag]("input"),c=a[byTag]("select"),d=a[byTag]("textarea");return(v(b).chain().toArray().map(serial).value().join("")+v(c).chain().toArray().map(serial).value().join("")+v(d).chain().toArray().map(serial).value().join("")).replace(/&$/,"")},reqwest.serializeArray=function(a){for(var b=this.serialize(a).split("&"),c=0,d=b.length,e=[],f;c<d;c++)b[c]&&(f=b[c].split("="))&&e.push({name:f[0],value:f[1]});return e};var old=window.reqwest;reqwest.noConflict=function(){return window.reqwest=old,this},window.reqwest=reqwest}(this),!function(a,b){function l(a){return n(a,"pfx")}function m(a,b){for(var c in a)if(f[a[c]]!==undefined)return b=="pfx"?a[c]:!0;return!1}function n(a,b){var d=a.charAt(0).toUpperCase()+a.substr(1),e=(a+" "+c.domPrefixes.join(d+" ")+d).split(" ");return m(e,b)}function o(a,b,c,d){var e,f,g,h=document.createElement("div");if(parseInt(c,10))while(c--)g=document.createElement("div"),g.id=d?d[c]:mod+(c+1),h.appendChild(g)}function p(){b.testStyles=o;var a={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",msTransition:"msTransitionEnd",transition:"transitionEnd"},d=c.transitionEnd=a[l("transition")]}function q(){var a=document.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)=="http://www.w3.org/2000/svg"}function r(d){d.preventDefault();if(this.id==="goback"){c.isCardFlippingToForm=!1,h.addEventListener(c.transitionEnd,function(a){j.style.display="none",g.hasChildNodes()&&(k.className="original",h.addEventListener(c.transitionEnd,function(){},!1))},!1),h.className="click panel";return}c.isCardFlippingToForm=!0,h.className="click panel flip",b.innerWidth>640&&h.addEventListener(c.transitionEnd,function(b){c.isCardFlippingToForm&&(i.focus(),a.forms[0].reset()),h.addEventListener(c.transitionEnd,function(){},!1)},!1)}function s(){return"token="+a.getElementById("token").value+"&email="+a.getElementById("email").value+"&name="+a.getElementById("name").value+"&message="+a.getElementById("message").value}function t(d){d.preventDefault();var e={url:"/touchme",type:"html",method:"POST",data:s(),before:function(b){console.log("before");var d=a.createElement("p"),e=a.createTextNode("Sending...");d.id="sending",d.appendChild(e),k.className="fade_out",k.addEventListener(c.transitionEnd,function(a){j.appendChild(d),j.style.display="block",k.removeEventListener(c.transitionEnd,function(){},!1)},!1)},success:function(b){a.getElementById("sending").style.display="none";var c=a.createElement("p"),d=a.createTextNode(b);if(d.data.indexOf("@")>-1){var e=d.data.lastIndexOf("@"),f=d.splitText(e),g=a.createElement("br"),h=a.createElement("br");f.deleteData(0,1),c.appendChild(d),c.appendChild(g),c.appendChild(h),c.appendChild(f),j.appendChild(c),j.style.display="block"}else c.appendChild(d),j.appendChild(c),j.style.display="block"},failure:function(a){b.console&&b.console.error&&console.error(a),alert("Something went wrong in your browser. :(")},headers:{"x-subprint-key":"good"}};reqwest(e)}function u(){a.body.className="slick"}function v(){!q()&&(a.querySelector("header").className="svg_fallback"),c.nav.forEach(function(b,d){a.getElementById(c.nav[d]).addEventListener("click",r,!1)}),a.getElementById("goback").addEventListener("click",r,!1),a.querySelector("form").addEventListener("submit",t,!1),!!b.applicationCache&&b.applicationCache.addEventListener("updateready",b.applicationCache.swapCache,!1),p(),i.addEventListener("focus",function(a){c.isCardFlippingToForm=!1},!1)}var c={nav:["nav_ios","nav_android","nav_html5"]},d="subprint",e=document.createElement(d),f=e.style,g=a.getElementById("response_container"),h=a.getElementById("flip_container"),i=a.getElementById("email"),j=a.getElementById("response_container"),k=a.getElementById("show_form_container");c.domPrefixes="Webkit Moz O ms Khtml".split(" "),c.transitionEnd="",c.isCardFlippingToForm=!1,a.addEventListener("DOMContentLoaded",v,!1),b.onload=function(){u()}}(document,window)
