Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.73 KB | None | 0 0
  1. <div style="text-align: center;">
  2. <form method="POST" action="https://mybossisme.activehosted.com/proc.php" id="_form_1_" class="_form _form_1 _inline-form _inline-style _dark" novalidate>
  3. <input type="hidden" name="u" value="1" />
  4. <input type="hidden" name="f" value="1" />
  5. <input type="hidden" name="s" />
  6. <input type="hidden" name="c" value="0" />
  7. <input type="hidden" name="m" value="0" />
  8. <input type="hidden" name="act" value="sub" />
  9. <input type="hidden" name="v" value="2" />
  10. <div class="_form-content">
  11. <div class="_form_element _x86659583 _inline-style _clear" >
  12. <div class="_form-title">
  13. Subscribe for Email Updates
  14. </div>
  15. </div>
  16. <div class="_form_element _x23965732 _inline-style _clear" >
  17. <div class="_html-code">
  18. <p>
  19. Build Your Business Like a Boss ... Sign Up For Weekly Updates .
  20. </p>
  21. </div>
  22. </div>
  23. <div class="_form_element _x37595014 _inline-style " >
  24. <label class="_form-label">
  25. First Name
  26. </label>
  27. <div class="_field-wrapper">
  28. <input type="text" name="firstname" placeholder="Type your first name" />
  29. </div>
  30. </div>
  31. <div class="_form_element _x07060612 _inline-style " >
  32. <label class="_form-label">
  33. Email*
  34. </label>
  35. <div class="_field-wrapper">
  36. <input type="text" name="email" placeholder="Type your email" required/>
  37. </div>
  38. </div>
  39. <div class="_button-wrapper _inline-style">
  40. <button id="_form_1_submit" class="_submit" type="submit">
  41. Yes Please!
  42. </button>
  43. </div>
  44. <div class="_clear-element">
  45. </div>
  46. </div>
  47. <div class="_form-thank-you" style="display:none;">
  48. </div>
  49. <div class="_form-branding">
  50. <div class="_marketing-by">
  51. Marketing by
  52. </div>
  53. <a href="http://www.activecampaign.com" class="_logo"></a>
  54. </div>
  55. </form>
  56. </div><script type="text/javascript">
  57. window.cfields = [];
  58. window._show_thank_you = function(id, message, trackcmp_url) {
  59. var form = document.getElementById('_form_' + id + '_'), thank_you = form.querySelector('._form-thank-you');
  60. form.querySelector('._form-content').style.display = 'none';
  61. thank_you.innerHTML = message;
  62. thank_you.style.display = 'block';
  63. if (typeof(trackcmp_url) != 'undefined' && trackcmp_url) {
  64. // Site tracking URL to use after inline form submission.
  65. _load_script(trackcmp_url);
  66. }
  67. if (typeof window._form_callback !== 'undefined') window._form_callback(id);
  68. };
  69. window._show_error = function(id, message, html) {
  70. var form = document.getElementById('_form_' + id + '_'), err = document.createElement('div'), button = form.querySelector('button'), old_error = form.querySelector('._form_error');
  71. if (old_error) old_error.parentNode.removeChild(old_error);
  72. err.innerHTML = message;
  73. err.className = '_error-inner _form_error _no_arrow';
  74. var wrapper = document.createElement('div');
  75. wrapper.className = '_form-inner';
  76. wrapper.appendChild(err);
  77. button.parentNode.insertBefore(wrapper, button);
  78. document.querySelector('[id^="_form"][id$="_submit"]').disabled = false;
  79. if (html) {
  80. var div = document.createElement('div');
  81. div.className = '_error-html';
  82. div.innerHTML = html;
  83. err.appendChild(div);
  84. }
  85. };
  86. window._load_script = function(url, callback) {
  87. var head = document.querySelector('head'), script = document.createElement('script'), r = false;
  88. script.type = 'text/javascript';
  89. script.charset = 'utf-8';
  90. script.src = url;
  91. if (callback) {
  92. script.onload = script.onreadystatechange = function() {
  93. if (!r && (!this.readyState || this.readyState == 'complete')) {
  94. r = true;
  95. callback();
  96. }
  97. };
  98. }
  99. head.appendChild(script);
  100. };
  101. (function() {
  102. if (window.location.search.search("excludeform") !== -1) return false;
  103. var getCookie = function(name) {
  104. var match = document.cookie.match(new RegExp('(^|; )' + name + '=([^;]+)'));
  105. return match ? match[2] : null;
  106. }
  107. var setCookie = function(name, value) {
  108. var now = new Date();
  109. var time = now.getTime();
  110. var expireTime = time + 1000 * 60 * 60 * 24 * 365;
  111. now.setTime(expireTime);
  112. document.cookie = name + '=' + value + '; expires=' + now + ';path=/';
  113. }
  114. var addEvent = function(element, event, func) {
  115. if (element.addEventListener) {
  116. element.addEventListener(event, func);
  117. } else {
  118. var oldFunc = element['on' + event];
  119. element['on' + event] = function() {
  120. oldFunc.apply(this, arguments);
  121. func.apply(this, arguments);
  122. };
  123. }
  124. }
  125. var _removed = false;
  126. var form_to_submit = document.getElementById('_form_1_');
  127. var allInputs = form_to_submit.querySelectorAll('input, select, textarea'), tooltips = [], submitted = false;
  128.  
  129. var getUrlParam = function(name) {
  130. var regexStr = '[?&]' + name + '=([^&#]*)';
  131. var results = new RegExp(regexStr, 'i').exec(window.location.href);
  132. return results != undefined ? decodeURIComponent(results[1]) : false;
  133. };
  134.  
  135. for (var i = 0; i < allInputs.length; i++) {
  136. var regexStr = "field\[(\d+)\]";
  137. var results = new RegExp(regexStr).exec(allInputs[i].name);
  138. if (results != undefined) {
  139. allInputs[i].dataset.name = window.cfields[results[1]];
  140. } else {
  141. allInputs[i].dataset.name = allInputs[i].name;
  142. }
  143. var fieldVal = getUrlParam(allInputs[i].dataset.name);
  144.  
  145. if (fieldVal) {
  146. if (allInputs[i].type == "radio" || allInputs[i].type == "checkbox") {
  147. if (allInputs[i].value == fieldVal) {
  148. allInputs[i].checked = true;
  149. }
  150. } else {
  151. allInputs[i].value = fieldVal;
  152. }
  153. }
  154. }
  155.  
  156. var remove_tooltips = function() {
  157. for (var i = 0; i < tooltips.length; i++) {
  158. tooltips[i].tip.parentNode.removeChild(tooltips[i].tip);
  159. }
  160. tooltips = [];
  161. };
  162. var remove_tooltip = function(elem) {
  163. for (var i = 0; i < tooltips.length; i++) {
  164. if (tooltips[i].elem === elem) {
  165. tooltips[i].tip.parentNode.removeChild(tooltips[i].tip);
  166. tooltips.splice(i, 1);
  167. return;
  168. }
  169. }
  170. };
  171. var create_tooltip = function(elem, text) {
  172. var tooltip = document.createElement('div'), arrow = document.createElement('div'), inner = document.createElement('div'), new_tooltip = {};
  173. if (elem.type != 'radio' && elem.type != 'checkbox') {
  174. tooltip.className = '_error';
  175. arrow.className = '_error-arrow';
  176. inner.className = '_error-inner';
  177. inner.innerHTML = text;
  178. tooltip.appendChild(arrow);
  179. tooltip.appendChild(inner);
  180. elem.parentNode.appendChild(tooltip);
  181. } else {
  182. tooltip.className = '_error-inner _no_arrow';
  183. tooltip.innerHTML = text;
  184. elem.parentNode.insertBefore(tooltip, elem);
  185. new_tooltip.no_arrow = true;
  186. }
  187. new_tooltip.tip = tooltip;
  188. new_tooltip.elem = elem;
  189. tooltips.push(new_tooltip);
  190. return new_tooltip;
  191. };
  192. var resize_tooltip = function(tooltip) {
  193. var rect = tooltip.elem.getBoundingClientRect();
  194. var doc = document.documentElement, scrollPosition = rect.top - ((window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0));
  195. if (scrollPosition < 40) {
  196. tooltip.tip.className = tooltip.tip.className.replace(/ ?(_above|_below) ?/g, '') + ' _below';
  197. } else {
  198. tooltip.tip.className = tooltip.tip.className.replace(/ ?(_above|_below) ?/g, '') + ' _above';
  199. }
  200. };
  201. var resize_tooltips = function() {
  202. if (_removed) return;
  203. for (var i = 0; i < tooltips.length; i++) {
  204. if (!tooltips[i].no_arrow) resize_tooltip(tooltips[i]);
  205. }
  206. };
  207. var validate_field = function(elem, remove) {
  208. var tooltip = null, value = elem.value, no_error = true;
  209. remove ? remove_tooltip(elem) : false;
  210. if (elem.type != 'checkbox') elem.className = elem.className.replace(/ ?_has_error ?/g, '');
  211. if (elem.getAttribute('required') !== null) {
  212. if (elem.type == 'radio' || (elem.type == 'checkbox' && /any/.test(elem.className))) {
  213. var elems = form_to_submit.elements[elem.name];
  214. if (!(elems instanceof NodeList || elems instanceof HTMLCollection) || elems.length <= 1) {
  215. no_error = elem.checked;
  216. }
  217. else {
  218. no_error = false;
  219. for (var i = 0; i < elems.length; i++) {
  220. if (elems[i].checked) no_error = true;
  221. }
  222. }
  223. if (!no_error) {
  224. tooltip = create_tooltip(elem, "Please select an option.");
  225. }
  226. } else if (elem.type =='checkbox') {
  227. var elems = form_to_submit.elements[elem.name], found = false, err = [];
  228. no_error = true;
  229. for (var i = 0; i < elems.length; i++) {
  230. if (elems[i].getAttribute('required') === null) continue;
  231. if (!found && elems[i] !== elem) return true;
  232. found = true;
  233. elems[i].className = elems[i].className.replace(/ ?_has_error ?/g, '');
  234. if (!elems[i].checked) {
  235. no_error = false;
  236. elems[i].className = elems[i].className + ' _has_error';
  237. err.push("Checking %s is required".replace("%s", elems[i].value));
  238. }
  239. }
  240. if (!no_error) {
  241. tooltip = create_tooltip(elem, err.join('<br/>'));
  242. }
  243. } else if (elem.tagName == 'SELECT') {
  244. var selected = true;
  245. if (elem.multiple) {
  246. selected = false;
  247. for (var i = 0; i < elem.options.length; i++) {
  248. if (elem.options[i].selected) {
  249. selected = true;
  250. break;
  251. }
  252. }
  253. } else {
  254. for (var i = 0; i < elem.options.length; i++) {
  255. if (elem.options[i].selected && !elem.options[i].value) {
  256. selected = false;
  257. }
  258. }
  259. }
  260. if (!selected) {
  261. elem.className = elem.className + ' _has_error';
  262. no_error = false;
  263. tooltip = create_tooltip(elem, "Please select an option.");
  264. }
  265. } else if (value === undefined || value === null || value === '') {
  266. elem.className = elem.className + ' _has_error';
  267. no_error = false;
  268. tooltip = create_tooltip(elem, "This field is required.");
  269. }
  270. }
  271. if (no_error && elem.name == 'email') {
  272. if (!value.match(/^[+_a-z0-9-'&=]+(.[+_a-z0-9-']+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,})$/i)) {
  273. elem.className = elem.className + ' _has_error';
  274. no_error = false;
  275. tooltip = create_tooltip(elem, "Enter a valid email address.");
  276. }
  277. }
  278. if (no_error && /date_field/.test(elem.className)) {
  279. if (!value.match(/^dddd-dd-dd$/)) {
  280. elem.className = elem.className + ' _has_error';
  281. no_error = false;
  282. tooltip = create_tooltip(elem, "Enter a valid date.");
  283. }
  284. }
  285. tooltip ? resize_tooltip(tooltip) : false;
  286. return no_error;
  287. };
  288. var needs_validate = function(el) {
  289. return el.name == 'email' || el.getAttribute('required') !== null;
  290. };
  291. var validate_form = function(e) {
  292. var err = form_to_submit.querySelector('._form_error'), no_error = true;
  293. if (!submitted) {
  294. submitted = true;
  295. for (var i = 0, len = allInputs.length; i < len; i++) {
  296. var input = allInputs[i];
  297. if (needs_validate(input)) {
  298. if (input.type == 'text') {
  299. addEvent(input, 'blur', function() {
  300. this.value = this.value.trim();
  301. validate_field(this, true);
  302. });
  303. addEvent(input, 'input', function() {
  304. validate_field(this, true);
  305. });
  306. } else if (input.type == 'radio' || input.type == 'checkbox') {
  307. (function(el) {
  308. var radios = form_to_submit.elements[el.name];
  309. for (var i = 0; i < radios.length; i++) {
  310. addEvent(radios[i], 'click', function() {
  311. validate_field(el, true);
  312. });
  313. }
  314. })(input);
  315. } else if (input.tagName == 'SELECT') {
  316. addEvent(input, 'change', function() {
  317. validate_field(this, true);
  318. });
  319. }
  320. }
  321. }
  322. }
  323. remove_tooltips();
  324. for (var i = 0, len = allInputs.length; i < len; i++) {
  325. var elem = allInputs[i];
  326. if (needs_validate(elem)) {
  327. if (elem.tagName.toLowerCase() !== "select") {
  328. elem.value = elem.value.trim();
  329. }
  330. validate_field(elem) ? true : no_error = false;
  331. }
  332. }
  333. if (!no_error && e) {
  334. e.preventDefault();
  335. }
  336. resize_tooltips();
  337. return no_error;
  338. };
  339. addEvent(window, 'resize', resize_tooltips);
  340. addEvent(window, 'scroll', resize_tooltips);
  341. window._old_serialize = null;
  342. if (typeof serialize !== 'undefined') window._old_serialize = window.serialize;
  343. _load_script("//d3rxaij56vjege.cloudfront.net/form-serialize/0.3/serialize.min.js", function() {
  344. window._form_serialize = window.serialize;
  345. if (window._old_serialize) window.serialize = window._old_serialize;
  346. });
  347. var form_submit = function(e) {
  348. e.preventDefault();
  349. if (validate_form()) {
  350. // use this trick to get the submit button & disable it using plain javascript
  351. document.querySelector('[id^="_form"][id$="_submit"]').disabled = true;
  352. var serialized = _form_serialize(document.getElementById('_form_1_'));
  353. var err = form_to_submit.querySelector('._form_error');
  354. err ? err.parentNode.removeChild(err) : false;
  355. _load_script('https://mybossisme.activehosted.com/proc.php?' + serialized + '&jsonp=true');
  356. }
  357. return false;
  358. };
  359. addEvent(form_to_submit, 'submit', form_submit);
  360. })();
  361.  
  362. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement