Sie sind auf Seite 1von 6

<!

DOCTYPE HTML><html lang="en"><head><title>⚡Fistbolt⚡</title><meta charset="utf-


8" /><meta name="viewport" content="width=device-width,initial-scale=1,user-
scalable=no" /><meta name="description" content="Sean Flannagan helps marketplace
companies make the right products at the right time in the right way." /><meta
property="og:site_name" content="⚡Fistbolt⚡" /><meta property="og:title"
content="⚡Fistbolt⚡" /><meta property="og:type" content="article" /><meta
property="og:image" content="https://fistbolt.com/assets/images/card.jpg?
v87341041699151" /><meta property="og:description" content="Sean Flannagan helps
marketplace companies make the right products at the right time in the right
way." /><meta property="og:url" content="https://fistbolt.com" /><meta
property="twitter:card" content="summary_large_image" /><link
href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,200italic"
rel="stylesheet" type="text/css" /><link rel="icon" type="image/png"
href="assets/images/favicon.png?v87341041699151"
/><style>html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre
,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,
strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,tab
le,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,fig
caption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,v
ideo{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-
align:baseline;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,n
av,section{display:block;}body{line-height:1;}ol,ul{list-
style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q
:after{content:'';content:none;}table{border-collapse:collapse;border-
spacing:0;}body{-webkit-text-size-adjust:none}mark{background-
color:transparent;color:inherit}input::-moz-focus-
inner{border:0;padding:0}input[type="text"],input[type="email"],select,textarea{-
moz-appearance:none;-webkit-appearance:none;-ms-appearance:none;appearance:none}*,
*:before, *:after {box-sizing: border-box;}body {min-width: 320px;min-height:
100vh;line-height: 1.0;word-wrap: break-word;overflow-x: hidden;background-color:
#4A72C2;}strong {color: inherit;font-weight: bolder;}em {font-style: italic;}code
{font-family: "Lucida Console", "Courier New", monospace;font-weight: normal;text-
indent: 0;letter-spacing: 0;font-size: 0.9em;margin: 0 0.25em;padding: 0.25em
0.5em;background-color: rgba(144,144,144,0.25);border-radius: 0.25em;}mark
{background-color: rgba(144,144,144,0.25);}a {-moz-transition: color 0.25s ease,
background-color 0.25s ease, border-color 0.25s ease;-webkit-transition: color
0.25s ease, background-color 0.25s ease, border-color 0.25s ease;-ms-transition:
color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease;transition:
color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease;color:
inherit;text-decoration: underline;}s {text-decoration: line-through;}html {font-
size: 18pt;}#wrapper {-webkit-overflow-scrolling: touch;display: -moz-flex;display:
-webkit-flex;display: -ms-flex;display: flex;-moz-flex-direction: column;-webkit-
flex-direction: column;-ms-flex-direction: column;flex-direction: column;-moz-
align-items: center;-webkit-align-items: center;-ms-align-items: center;align-
items: center;-moz-justify-content: center;-webkit-justify-content: center;-ms-
justify-content: center;justify-content: center;min-height: 100vh;position:
relative;z-index: 2;overflow: hidden;}#main {display: -moz-flex;display: -webkit-
flex;display: -ms-flex;display: flex;position: relative;max-width: 100%;z-index:
1;-moz-align-items: center;-webkit-align-items: center;-ms-align-items:
center;align-items: center;-moz-justify-content: center;-webkit-justify-content:
center;-ms-justify-content: center;justify-content: center;-moz-flex-grow: 0;-
webkit-flex-grow: 0;-ms-flex-grow: 0;flex-grow: 0;-moz-flex-shrink: 0;-webkit-flex-
shrink: 0;-ms-flex-shrink: 0;flex-shrink: 0;text-align: center;-moz-transition:
opacity 1.125s ease 0s,-moz-transform 1.125s ease 0s;-webkit-transition: opacity
1.125s ease 0s,-webkit-transform 1.125s ease 0s;-ms-transition: opacity 1.125s ease
0s,-ms-transform 1.125s ease 0s;transition: opacity 1.125s ease 0s,transform 1.125s
ease 0s;}#main > .inner {position: relative;z-index: 1;border-radius:
inherit;padding: 1.25rem 1rem;max-width: 100%;width: 26rem;}#main > .inner > *
{margin-top: 0.625rem;margin-bottom: 0.625rem;-moz-transition: opacity 1s ease-in-
out 0s;-webkit-transition: opacity 1s ease-in-out 0s;-ms-transition: opacity 1s
ease-in-out 0s;transition: opacity 1s ease-in-out 0s;}#main > .inner > :first-child
{margin-top: 0 !important;}#main > .inner > :last-child {margin-bottom: 0 !
important;}#main > .inner > .full {margin-left: calc(-1rem);width: calc(100% + 2rem
+ 0.4725px);max-width: calc(100% + 2rem + 0.4725px);}#main > .inner > .full:first-
child {margin-top: -1.25rem !important;border-top-left-radius: inherit;border-top-
right-radius: inherit;}#main > .inner > .full:last-child {margin-bottom: -1.25rem !
important;border-bottom-left-radius: inherit;border-bottom-right-radius:
inherit;}#main > .inner > .full.screen {width: 100vw;max-width: 100vw;position:
relative;border-radius: 0 !important;left: 50%;right: auto;margin-left:
-50vw;}body.is-loading #main {opacity: 0;-moz-transform: scale(0.975);-webkit-
transform: scale(0.975);-ms-transform: scale(0.975);transform:
scale(0.975);}body.is-loading #main > .inner > * {opacity: 0;}#main > .inner >
:nth-child(2) {-moz-transition-delay: 0.125s;-webkit-transition-delay: 0.125s;-ms-
transition-delay: 0.125s;transition-delay: 0.125s;}#main > .inner > :nth-child(3)
{-moz-transition-delay: 0.25s;-webkit-transition-delay: 0.25s;-ms-transition-delay:
0.25s;transition-delay: 0.25s;}#main > .inner > :nth-child(4) {-moz-transition-
delay: 0.375s;-webkit-transition-delay: 0.375s;-ms-transition-delay:
0.375s;transition-delay: 0.375s;}#main > .inner > :nth-child(5) {-moz-transition-
delay: 0.5s;-webkit-transition-delay: 0.5s;-ms-transition-delay: 0.5s;transition-
delay: 0.5s;}#main > .inner > :nth-child(6) {-moz-transition-delay: 0.625s;-webkit-
transition-delay: 0.625s;-ms-transition-delay: 0.625s;transition-delay: 0.625s;}h1
br + br, h2 br + br, h3 br + br, p br + br {display: block;content: ' ';margin-top:
0.825rem;}h1 .li, h2 .li, h3 .li, p .li {display: list-item;padding-left:
0.5em;margin: 0.75em 0 0 1em;}#title br + br {margin-top: 1.5rem;}#title {letter-
spacing: -0.075rem;font-size: 4.5em;line-height: 2.5;text-align: inherit;}#text01 a
{color: #FFD458;text-decoration: none;}#text01 a:hover {color: #FFFFFF;}#text04 a
{color: #FFD458;text-decoration: none;}#text04 a:hover {text-decoration:
underline;}#text02 a {color: #FFD458;text-decoration: none;}#text02 a:hover {color:
#FFFFFF;}h1, h2, h3, p {color: #FFFFFF;font-family: 'Source Sans Pro';letter-
spacing: -0.025rem;width: 100%;font-size: 1.125em;line-height: 1.375;font-weight:
200;text-align: left;}hr {width: 100%;position: relative;padding: 0;border:
0;height: 3rem;line-height: 3rem;}hr:before {content: '';display: inline-
block;vertical-align: middle;width: 18%;background-color: #FFFFFF;height: 1px;}form
.inner {display: -moz-inline-flex;display: -webkit-inline-flex;display: -ms-inline-
flex;display: inline-flex;max-width: 100%;-moz-flex-wrap: wrap;-webkit-flex-wrap:
wrap;-ms-flex-wrap: wrap;flex-wrap: wrap;-moz-flex-direction: column;-webkit-flex-
direction: column;-ms-flex-direction: column;flex-direction: column;}form
input[type="text"], form input[type="email"], form textarea, form select {text-
align: left;display: block;background-color: transparent;border: 0;width:
100%;outline: 0;}form textarea {height: 10rem;}form select {background-size:
1rem;background-repeat: no-repeat;text-overflow: ellipsis;-webkit-appearance:
none;}form select option {background-color: white;color: black;}form select::-ms-
expand {display: none;}form .actions {max-width: 100%;}form button {display:
inline-block;background-color: transparent;border: 0;cursor: pointer;text-align:
center;max-width: 100%;white-space: nowrap;-moz-transition: opacity 0.35s ease,
color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease;-webkit-
transition: opacity 0.35s ease, color 0.25s ease, background-color 0.25s ease,
border-color 0.25s ease;-ms-transition: opacity 0.35s ease, color 0.25s ease,
background-color 0.25s ease, border-color 0.25s ease;transition: opacity 0.35s
ease, color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease;}form
button:disabled {opacity: 0.35;cursor: default;-moz-pointer-events: none;-webkit-
pointer-events: none;-ms-pointer-events: none;pointer-events: none;}@-moz-keyframes
button-spinner {0% {-moz-transform: rotate(0deg);-webkit-transform: rotate(0deg);-
ms-transform: rotate(0deg);transform: rotate(0deg);}100% {-moz-transform:
rotate(360deg);-webkit-transform: rotate(360deg);-ms-transform:
rotate(360deg);transform: rotate(360deg);}}@-webkit-keyframes button-spinner {0% {-
moz-transform: rotate(0deg);-webkit-transform: rotate(0deg);-ms-transform:
rotate(0deg);transform: rotate(0deg);}100% {-moz-transform: rotate(360deg);-webkit-
transform: rotate(360deg);-ms-transform: rotate(360deg);transform:
rotate(360deg);}}@-ms-keyframes button-spinner {0% {-moz-transform: rotate(0deg);-
webkit-transform: rotate(0deg);-ms-transform: rotate(0deg);transform:
rotate(0deg);}100% {-moz-transform: rotate(360deg);-webkit-transform:
rotate(360deg);-ms-transform: rotate(360deg);transform: rotate(360deg);}}@keyframes
button-spinner {0% {-moz-transform: rotate(0deg);-webkit-transform: rotate(0deg);-
ms-transform: rotate(0deg);transform: rotate(0deg);}100% {-moz-transform:
rotate(360deg);-webkit-transform: rotate(360deg);-ms-transform:
rotate(360deg);transform: rotate(360deg);}}#form01 .inner > * {margin: 1rem 0 0
0;}#form01
.inner > :first-child {margin: 0;}#form01 .inner {width: 25rem;}#form01
input[type="text"], #form01 input[type="email"], #form01 textarea, #form01 select
{font-size: 1.125em;font-family: 'Source Sans Pro';letter-spacing: -0.025rem;font-
weight: 200;border-radius: 0rem;color: #FFFFFF;border: solid 1px #FFFFFF;}#form01
input[type="text"], #form01 input[type="email"], #form01 select {height:
2.5rem;line-height: 2.5rem;padding: 0 0.875rem;}#form01 textarea {padding:
0.875rem;height: 10rem;}#form01 select {background-image:
url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg'
width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'%3E%3Cpath
d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-
0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-
0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-
0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-
0.4S9.1,12.1,9.4,12.3z' fill='%23FFFFFF' /%3E%3C/svg%3E");background-position:
calc(100% - 0.875rem) center;padding-right: 2.625rem;}#form01 button {height:
2.5rem;line-height: 2.5rem;padding: 0 1.25rem;font-size: 1.125em;font-family:
'Source Sans Pro';letter-spacing: -0.025rem;font-weight: 200;border-radius:
0rem;background-color: #000000;color: #FFFFFF;position: relative;}#form01
button:before {-moz-pointer-events: none;-webkit-pointer-events: none;-ms-pointer-
events: none;pointer-events: none;content: '';display: block;width:
1.875rem;height: 1.875rem;position: absolute;top: 50%;left: 50%;margin: -0.9375rem
0 0 -0.9375rem;-moz-animation: button-spinner 1s infinite linear;-webkit-animation:
button-spinner 1s infinite linear;-ms-animation: button-spinner 1s infinite
linear;animation: button-spinner 1s infinite linear;-moz-transition: opacity 0.25s
ease;-webkit-transition: opacity 0.25s ease;-ms-transition: opacity 0.25s
ease;transition: opacity 0.25s ease;-moz-transition-delay: 0s;-webkit-transition-
delay: 0s;-ms-transition-delay: 0s;transition-delay: 0s;opacity: 0;background-
image:
url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmci
IHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iOTZweCIgaGVpZ2h
0PSI5NnB4IiB2aWV3Qm94PSIwIDAgOTYgOTYiIHpvb21BbmRQYW49ImRpc2FibGUiPjxzdHlsZT5jaXJjbG
Uge2ZpbGw6IHRyYW5zcGFyZW50OyBzdHJva2U6ICNGRkZGRkY7IHN0cm9rZS13aWR0aDogMnB4OyB9PC9zd
HlsZT48ZGVmcz48Y2xpcFBhdGggaWQ9ImNvcm5lciI+PHBvbHlnb24gcG9pbnRzPSIwLDAgNDgsMCA0OCw0
OCA5Niw0OCA5Niw5NiAwLDk2IiAvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjb3J
uZXIpIj48Y2lyY2xlIGN4PSI0OCIgY3k9IjQ4IiByPSIzMiIvPjwvZz48L3N2Zz4=');background-
position: center;background-repeat: no-repeat;background-size: 1.875rem;}#form01
button.waiting {color: transparent;}#form01 button.waiting:before {opacity: 1.0;-
moz-transition-delay: 0.125s;-webkit-transition-delay: 0.125s;-ms-transition-delay:
0.125s;transition-delay: 0.125s;}#form01 input[name="post"] {display: none;}#form01
::-webkit-input-placeholder {color: #FFFFFF;opacity: 0.55;}#form01 :-moz-
placeholder {color: #FFFFFF;opacity: 0.55;}#form01 ::-moz-placeholder {color:
#FFFFFF;opacity: 0.55;}#form01 :-ms-input-placeholder {color: #FFFFFF;opacity:
0.55;}@media (max-width: 1680px) {html {font-size: 13pt;}}@media (max-width:
1280px) {html {font-size: 13pt;}}@media (max-width: 980px) {html {font-size:
11pt;}}@media (max-width: 736px) {html {font-size: 11pt;}#main {text-align:
center;}#main h1, #main h2, #main h3, #main p {text-align: inherit;}#main > .inner
{padding: 1.25rem 1rem;}#main > .inner > * {margin-top: 0.625rem;margin-bottom:
0.625rem;}#main > .inner > .full {margin-left: calc(-1rem);width: calc(100% + 2rem
+ 0.4725px);max-width: calc(100% + 2rem + 0.4725px);}#main > .inner > .full:first-
child {margin-top: -1.25rem !important;}#main > .inner > .full:last-child {margin-
bottom: -1.25rem !important;}#main > .inner > .full.screen {margin-left:
-50vw;}#title {font-size: 3.5em;}#divider01 {height: 2rem;line-height:
2rem;}}@media (max-width: 480px) {#main > .inner > * {margin-top:
0.546875rem;margin-bottom: 0.546875rem;}}@media (max-width: 360px) {#main > .inner
{padding: 0.9375rem 0.75rem;}#main > .inner > * {margin-top: 0.46875rem;margin-
bottom: 0.46875rem;}#main > .inner > .full {margin-left: calc(-0.75rem);width:
calc(100% + 1.5rem + 0.4725px);max-width: calc(100% + 1.5rem + 0.4725px);}#main
> .inner > .full:first-child {margin-top: -0.9375rem !important;}#main > .inner
> .full:last-child {margin-bottom: -0.9375rem !important;}#main > .inner >
.full.screen {margin-left: -50vw;}}</style><noscript><style>body {overflow: auto !
important;}#main {opacity: 1.0 !important;-moz-transform: none !important;-webkit-
transform: none !important;-ms-transform: none !important;transform: none !
important;-moz-transition: none !important;-webkit-transition: none !important;-ms-
transition: none !important;transition: none !important;-moz-filter: none !
important;-webkit-filter: none !important;-ms-filter: none !important;filter:
none !important;}#main > .inner > * {opacity: 1.0 !important;-moz-transform: none !
important;-webkit-transform: none !important;-ms-transform: none !
important;transform: none !important;-moz-transition: none !important;-webkit-
transition: none !important;-ms-transition: none !important;transition: none !
important;-moz-filter: none !important;-webkit-filter: none !important;-ms-filter:
none !important;filter: none !
important;}</style></noscript><script>(function(i,s,o,g,r,a,m)
{i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||
[]).push(arguments)},i[r].l=1*new
Date();a=s.createElement(o),m=s.getElementsByTagName(o)
[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})
(window,document,'script','//www.google-
analytics.com/analytics.js','ga');ga('create', 'UA-65873334-4', 'auto');ga('send',
'pageview');</script></head><body class="is-loading"><div id="wrapper"><div
id="main"><div class="inner"><h1 id="title">⚡✊⚡</h1><p id="text01"><span>Hi,
I&#39;m Sean. </span><br /> <br /> <span>I help build and grow marketplace
companies. ⚡✊⚡ is my consultancy. <a
href="https://www.linkedin.com/in/flannagan">This is my LinkedIn</a>.</span></p><p
id="text04">I&#39;ve learned a lot about building successful marketplaces and love
to help fellow practitioners. I help with everything from product strategy, design
and the development process to user research, analysis and growth, as well as
recruiting. I&#39;m focused on results and believe that <a
href="http://www.deeplinking.net/content/images/2018/02/reality.jpg">reality is a
gateway drug</a>.</p><p id="text02">Building a marketplace? <a
href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;%68%69%40%73%65%61%6e%66%6c%61%6e%6e
%61%67%61%6e%2e%63%6f%6d">Let&#39;s talk</a>.</p><hr id="divider01"><form
id="form01" method="post"><div class="inner"><div class="field"><input type="text"
name="name" id="form01-name" placeholder="Name" maxlength="128" /></div><div
class="field"><input type="email" name="email" id="form01-email"
placeholder="Email" maxlength="128" /></div><div class="field"><input type="text"
name="post" id="form01-post" placeholder="Post" maxlength="128" /></div><div
class="field"><textarea name="message" id="form01-message" placeholder="Message"
maxlength="16384"></textarea></div><div class="actions"><button
type="submit">Submit</button></div></div><input type="hidden" name="id"
value="form01" /></form></div></div></div><script>var on = addEventListener,$ =
function(q) { return document.querySelector(q) },$$ = function(q) { return
document.querySelectorAll(q) },$body = document.body,$inner = $('.inner'),client =
(function() {var o = {browser: 'other',browserVersion: 0,os: 'other',osVersion:
0},ua = navigator.userAgent,a, i;a = [['firefox', /Firefox\/([0-9\.]+)/],
['edge', /Edge\/([0-9\.]+)/],['safari', /Version\/([0-9\.]+).+Safari/],
['chrome', /Chrome\/([0-9\.]+)/],['ie', /Trident\/.+rv:([0-9]+)/]];for (i=0; i <
a.length; i++) {if (ua.match(a[i][1])) {o.browser = a[i][0];o.browserVersion =
parseFloat(RegExp.$1);break;}}a = [['ios', /([0-9_]+) like Mac OS X/, function(v) {
return v.replace('_', '.').replace('_', ''); }],['ios', /CPU like Mac OS X/,
function(v) { return 0 }],['android', /Android ([0-9\.]+)/, null],['mac',
/Macintosh.+Mac OS X ([0-9_]+)/, function(v) { return v.replace('_',
'.').replace('_', ''); }],['windows', /Windows NT ([0-9\.]+)/, null]];for (i=0; i <
a.length; i++) {if (ua.match(a[i][1])) {o.os = a[i][0];o.osVersion =
parseFloat( a[i][2] ? (a[i][2])(RegExp.$1) : RegExp.$1 );break;}}return o;}
()),trigger = function(t) {if (client.browser == 'ie') {var e =
document.createEvent('Event');e.initEvent(t, false, true);dispatchEvent(e);} else
dispatchEvent(new Event(t));};on('load', function() {setTimeout(function()
{$body.className = $body.className.replace(/\bis-loading\b/, 'is-
playing');setTimeout(function() {$body.className = $body.className.replace(/\bis-
playing\b/, 'is-ready');}, 1625);}, 100);});var style, sheet, rule;style =
document.createElement('style');style.appendChild(document.createTextNode(''));docu
ment.head.appendChild(style);sheet = style.sheet;if (client.os == 'android')
{(function() {sheet.insertRule('body::after { }', 0);rule = sheet.cssRules[0];var f
= function() {rule.style.cssText = 'height: ' + (Math.max(screen.width,
screen.height)) + 'px';};on('load', f);on('orientationchange', f);on('touchmove',
f);})();} else if (client.os == 'ios') {(function() {sheet.insertRule('body::after
{ }', 0);rule = sheet.cssRules[0];rule.style.cssText = '-webkit-transform:
scale(1.0)';})();(function() {sheet.insertRule('body.ios-focus-fix::before { }',
0);rule = sheet.cssRules[0];rule.style.cssText = 'height: calc(100% +
60px)';on('focus', function(event) {$body.classList.add('ios-focus-fix');},
true);on('blur', function(event) {$body.classList.remove('ios-focus-fix');},
true);})();} else if (client.browser == 'ie') {(function() {var t, f;f =
function() {var mh, h, s, xx, x, i;x = $('#wrapper');x.style.height = 'auto';if
(x.scrollHeight <= innerHeight)x.style.height = '100vh';xx = $$
('.container.full');for (i=0; i < xx.length; i++) {x = xx[i];s =
getComputedStyle(x);x.style.minHeight = '';x.style.height = '';mh =
s.minHeight;x.style.minHeight = 0;x.style.height = '';h = s.height;if (mh ==
0)continue;x.style.height = (h > mh ? 'auto' : mh);}};(f)();on('resize', function()
{clearTimeout(t);t = setTimeout(f, 250);});on('load', f);})();}function form(id,
settings) {var _this = this;this.id = id;this.mode = settings.mode;this.method =
settings.method;this.success = settings.success;this.preHandler = ('preHandler' in
settings ? settings.preHandler : null);this.failure = ('failure' in settings ?
settings.failure : null);this.optional = ('optional' in settings ?
settings.optional : []);this.events = ('events' in settings ? settings.events :
{});this.$form = $('#' + this.id);this.$form.addEventListener('submit',
function(event) {_this.submit(event);});this.$form.addEventListener('keydown',
function(event) {if (event.keyCode == 13 && event.ctrlKey)
{event.preventDefault();event.stopPropagation();_this.submit(event);}});var x = $
('#' + this.id + ' input[name="' + settings.hid + '"]');if (x) {x.disabled =
true;x.parentNode.style.display = 'none';}this.$submit = $('#' + this.id + '
button[type="submit"]');this.$submit.disabled = false;};form.prototype.notify =
function(type, message) {if (message.match(/^(#[a-zA-Z0-9\_\-]+|[a-z0-9\-\.]+:[a-
zA-Z0-9\~\!\@\#$\%\&\-\_\+\=\;\,\.\?\/\:]+)$/))location.href = message; else
alert((type == 'failure' ? 'Error: ' : '') + message);};form.prototype.getEmail =
function() {var k, $f, $ff;$ff = this.$form.elements;for (k in $ff) {$f = $ff[k];if
($f.type == 'email'&& $f.name == 'email'&& $f.value !== ''&& $f.value !==
null)return $f.value;}return null;};form.prototype.submit = function(event) {var
_this = this,result,handler,fd, k, x, $f, $ff;event.preventDefault();if (this.
$submit.disabled)return;result = true;$ff = this.$form.elements;for (k in $ff) {$f
= $ff[k];if ($f.type != 'text'&& $f.type != 'email'&& $f.type != 'textarea'&&
$f.type != 'select-one')continue;if ($f.disabled)continue;if ($f.value === ''||
$f.value === null) {if (this.optional.indexOf($f.name) !== -1)continue;result =
false;} else {x = '';switch ($f.type) {case 'email':x = "^([a-zA-Z0-9\\_\\-\\.\\+]
+)@([a-zA-Z0-9\\-\\.]+)\\.([a-zA-Z]+)$";break;case 'select':x = "^[a-zA-Z0-9\\-]
$";break;default:case 'text':case 'textarea':x = "^[^\\<\\>]+$";break;}result =
result && $f.value.match(new RegExp(x));}if (!result)break;}if (!result)
{this.notify('failure','Missing and/or invalid fields. Please try
again.');return;}if ('onsubmit' in _this.events)_this.events.onsubmit.apply(this.
$form);if (_this.method != 'ajax') {_this.$form.submit();return;}if (x = $
(':focus'))x.blur();this.$submit.disabled = true;this.
$submit.classList.add('waiting');handler = function(values) {var x, k, data;data =
new FormData(_this.$form);if (values)for (k in values)data.append(k, values[k]);x =
new XMLHttpRequest();x.open('POST', ['', 'post',
_this.mode].join('/'));x.send(data);x.onreadystatechange = function() {var result =
false,message = 'Sorry, something went wrong. Please try again later.',alert =
true,o;if (x.readyState != 4)return;if (x.status == 200) {o =
JSON.parse(x.responseText);if (o) {if ('result' in o)result = (o.result ===
true);if (('message' in o) && o.message)message = o.message;if ('alert' in o)alert
= (o.alert === true);}}_this.$submit.classList.remove('waiting');if (result) {if
('onsuccess' in _this.events)_this.events.onsuccess.apply(this.$form);_this.
$form.reset();if (alert)window.alert(message); else _this.notify('success',
(_this.success ? _this.success : message));} else {if ('onfailure' in
_this.events)_this.events.onfailure.apply(this.$form);if
(alert)window.alert(message); else _this.notify('failure',(_this.failure ?
_this.failure : message));}_this.$submit.disabled = false;};};if (_this.preHandler)
(_this.preHandler)(_this, handler); else (handler)();};new form('form01', {mode:
''contact',method: 'ajax',hid: 'post',success: ' Thanks! Talk to you
soon.',});</script></body></html>

Das könnte Ihnen auch gefallen