{"mappings":"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","sources":["src/scripts/contact.js"],"sourcesContent":["\nconst urlParams = new URLSearchParams(window.location.search);\nconst interested_v = urlParams.get('int');\ndocument.getElementById(\"interested\").selectedIndex = interested_v;\n\n\nvar sectionsContact = {\n \"/\": \"Página principal\",\n \"/success-stories/web-agp/\": \"Casos de éxito/AGP\",\n \"/success-stories/mobile-sr/\": \"Casos de éxito/APP Mina\",\n \"/success-stories/cloud-perufarma/\": \"Casos de éxito/Peru Farma\",\n \"/success-stories/cloud-crp/\": \"Casos de éxito/CRP Radios\",\n \"/solutions/\": \"Soluciones\",\n \"/what-we-do/software-development\": \"Que hacemos/Desarrollo de software\",\n \"/what-we-do/cloud\": \"Que hacemos/Computación en nube\",\n \"/what-we-do/software-as-a-service/\": \"Que hacemos/Software as a service\",\n \"/what-we-do/automation/\": \"Que hacemos/Automatización\",\n \"/what-we-do/data-analytics/\": \"Que hacemos/Análisis de datos\",\n \"/what-we-do/cibersecurity/\": \"Que hacemos/Ciberseguridad\",\n \"/what-we-do/training/\": \"Que hacemos/Capacitaciones\",\n \"/what-we-do/licenses/\": \"Que hacemos/licenciamiento\",\n \"/contact/\": \"Contáctanos\",\n \"/landing/\": \"Información\",\n \"/en/\": \"Página principal\",\n \"/en/success-stories/web-agp/\": \"Casos de éxito/AGP\",\n \"/en/success-stories/mobile-sr/\": \"Casos de éxito/APP Mina\",\n \"/en/success-stories/cloud-perufarma/\": \"Casos de éxito/Peru Farma\",\n \"/en/success-stories/cloud-crp/\": \"Casos de éxito/CRP Radios\",\n \"/en/solutions/\": \"Soluciones\",\n \"/en/what-we-do/software-development\": \"Que hacemos/Desarrollo de software\",\n \"/en/what-we-do/cloud\": \"Que hacemos/Computación en nube\",\n \"/en/what-we-do/software-as-a-service/\": \"Que hacemos/Software as a service\",\n \"/en/what-we-do/automation/\": \"Que hacemos/Automatización\",\n \"/en/what-we-do/data-analytics/\": \"Que hacemos/Análisis de datos\",\n \"/en/what-we-do/cibersecurity/\": \"Que hacemos/Ciberseguridad\",\n \"/en/what-we-do/training/\": \"Que hacemos/Capacitaciones\",\n \"/en/what-we-do/licenses/\": \"Que hacemos/licenciamiento\",\n \"/en/contact/\": \"Contáctanos\",\n};\n\n //----- MODAL --------\n var modalSuccess = new bootstrap.Modal(\n document.getElementById(\"modal-success\")\n);\n var closeButtonModal = document.querySelector(\n \"#modal-success .modal-success__close-button\"\n);\ncloseButtonModal.addEventListener(\"click\", () => {\n clearForm();\n modalSuccess.hide();\n});\n\n//----- VALIDAR FORM --------\nvar clearForm = function() {\n let fields = document.getElementsByClassName(\"contact-form__field-item\");\n for (let field of fields) {\n field.querySelector(\"input,select,textarea\").value = \"\";\n }\n};\nvar clearFormValidation = function(e) {\n let fieldItems = e.target.getElementsByClassName(\"contact-form__field-item\");\n for (let fieldItem of fieldItems) {\n fieldItem.classList.remove(\"error\");\n if(fieldItem.getElementsByClassName(\"error\")[0])\n {\n fieldItem.getElementsByClassName(\"error\")[0].remove();//fieldItem.getElementsByClassName(\"error\")[0] ? .remove();\n }\n }\n};\nvar addFormValidation = function(objectValidation, e) {\n clearFormValidation(e);\n let keysObjectValidation = Object.keys(objectValidation);\n for (let keyValidation of keysObjectValidation) {\n let fieldItem = e.target.getElementsByClassName(keyValidation)[0];\n fieldItem.classList.add(\"error\");\n let newSpan = document.createElement(\"span\");\n newSpan.className = \"error\";\n let newText = document.createTextNode(objectValidation[keyValidation][0]);\n newSpan.appendChild(newText);\n fieldItem.appendChild(newSpan);\n }\n};\n\nvar validForm = function(name, email, phone, company, interested, comment, e) {\n let language = document.documentElement.lang;\n let validationSchema = function(language) {\n return {\n name: {\n presence: {\n allowEmpty: false,\n message: language === \"es\" ? \"Nombre es requerido\" : \"Name is required\",\n },\n format: {\n pattern: /^([A-Za-z\\s]*)$/,\n message: language === \"es\" ?\n \"Ingrese un nombre valido\" : \"Enter a valid name\",\n },\n },\n email: {\n presence: {\n allowEmpty: false,\n message: language === \"es\" ? \"Email es requerido\" : \"Email is required\",\n },\n email: {\n message: language === \"es\" ?\n \"Ingrese un email valido\" : \"Enter a valid email\",\n },\n },\n phone: {\n presence: {\n allowEmpty: false,\n message: language === \"es\" ?\n \"Número de teléfono es requerido\" : \"Phone number is required\",\n },\n format: {\n pattern: /^\\+*[1-9][0-9]+$/i,\n message: language === \"es\" ?\n \"Ingrese un número telefono valido\" : \"Enter a valid phone number\",\n },\n length: {\n maximum: 13,\n message: language === \"es\" ?\n \"Debe ser menor a 13 digitos\" : \"Must be less than 13 digits\",\n },\n },\n company: {\n presence: {\n allowEmpty: false,\n message: language === \"es\" ?\n \"Organización es requerido\" : \"Organization is required\",\n },\n format: {\n pattern: /^([A-Za-z\\s]*)$/,\n message: language === \"es\" ?\n \"Ingrese una organización valida\" : \"Enter a valid organization\",\n },\n },\n interested: {\n presence: {\n allowEmpty: false,\n message: language === \"es\" ? \"Interes es requerido\" : \"Interest is required\",\n },\n },\n\n ...(interested === \"Otros\" ? {\n comment: {\n presence: {\n allowEmpty: false,\n message: language === \"es\" ?\n \"Comentario es requerido\" : \"Comment is required\",\n },\n },\n } : {}),\n };\n };\n\n let objValues = { name, email, phone, company, interested, comment };\n clearFormValidation(e);\n\n let validateResultObject = validate(objValues, validationSchema(language), {\n fullMessages: false,\n });\n\n if (!validateResultObject) {\n return true;\n } else {\n addFormValidation(validateResultObject, e);\n return false;\n }\n};\n\n\n//FORM SUBMIT----------------------------------------------------------------------------\nvar contactForm = document.getElementsByClassName(\"contact-form\");\n\nfor (let i = 0; i < contactForm.length; i++) {\n contactForm[i].addEventListener(\"submit\", (e) => {\n e.preventDefault();\n const url = e.target.action;\n const nombres = e.target[\"nombres\"].value;\n const email = e.target[\"email\"].value;\n const phone = e.target[\"phone\"].value;\n const company = e.target[\"company\"].value;\n const interested = e.target[\"interested\"].value;\n const comment = e.target[\"comment\"].value;\n\n if (validForm(nombres, email, phone, company, interested, comment, e)) {\n sendEmail({\n url,\n nombres,\n email,\n phone,\n company,\n interested,\n comment,\n });\n modalSuccess.show();\n }\n });\n};\n\n\n//----------------------------------------------------------------------------\n\nfunction getKeySection(cadena) {\n if (\n cadena === \"\" ||\n cadena === \"/\" ||\n cadena === \"index.html\" ||\n cadena === \"/index.html\"\n ) {\n return \"/\";\n }\n var keysSectionNav = Object.keys(sectionsContact).reverse();\n return keysSectionNav.find((key) => {\n if (key === cadena) {\n return true;\n } else {\n var regExpKey = new RegExp(key);\n var regExpCadena = new RegExp(cadena);\n if (regExpKey.test(cadena)) {\n return true;\n } else if (regExpCadena.test(key)) {\n return true;\n } else {\n return false;\n }\n }\n });\n}\n\nfunction sendEmail({ url, nombres, email, phone, company, interested, comment }) {\n if (!axios) return;\n\n //* función para enviar el email\n const language =\n window.location.pathname.split(\"/\")[1] === \"en\" ? \"en\" : \"es\";\n const href = window.location.href;\n const keySection = getKeySection(window.location.pathname);\n let form = JSON.stringify({\n nombres,\n email,\n phone,\n interested,\n comment,\n section: sectionsContact[keySection],\n url: href,\n company: company,\n type: 1,\n language,\n });\n\n console.log({\n nombres,\n email,\n phone,\n interested,\n comment,\n section: sectionsContact[keySection],\n url: href,\n company: company,\n type: 1,\n language,\n });\n\n axios\n .post(url, form, {\n headers: {\n \"content-type\": \"application/json\",\n },\n })\n .then((response) => console.log(response))\n .catch((error) => console.log(error.response));\n}\n\n"],"names":[],"version":3,"file":"index.e1aa5efc.js.map","sourceRoot":"/__parcel_source_root/"}