1<!doctype html> 2<html lang="en"> 3<head>
4<script id="debugbar_loader" data-time="1790860439.631317" src="https://itb.edu.ec/?debugbar"></script>
4<script id="debugbar_dynamic_script"></script>
4<style id="debugbar_dynamic_style"></style>
4<script class="kint-rich-script">"use strict";(()=>{function m(n){if(!(n instanceof Element))throw new Error("Invalid argument to dedupeElement()");let t=n.ownerDocument,e=E(n);for(let s of t.querySelectorAll(e))n!==s&&s.parentNode.removeChild(s)}function d(n){return n instanceof Element?n.ownerDocument.contains(n):!1}function E(n){if(!(n instanceof Element))throw new Error("Invalid argument to buildClassSelector()");return[n.nodeName,...n.classList].join(".")}function f(n){if(!(n instanceof Element))throw new Error("Invalid argument to selectText()");let t=n.ownerDocument,e=t.getSelection(),s=t.createRange();s.selectNodeContents(n),e.removeAllRanges(),e.addRange(s)}function I(n,t){let e;return function(...s){clearTimeout(e),e=setTimeout(function(){n(...s)},t)}}function x(n){if(!(n instanceof Element))throw new Error("Invalid argument to offsetTop()");return n.offsetTop+(n.offsetParent?x(n.offsetParent):0)}var u=class n{static#e=new Set;static toggleSearchBox(t,e){let s=t.querySelector(".kint-search"),i=t.parentNode;if(s)if(s.classList.toggle("kint-show",e)){if(s.focus(),s.select(),!n.#e.has(s)){let r=i.querySelectorAll("dl").length,o=200;r>1e4&&(o=700),s.addEventListener("keyup",I(n.#t.bind(null,s),o)),n.#e.add(s)}n.#t(s)}else i.classList.remove("kint-search-root")}static#t(t){let e=t.closest(".kint-parent")?.parentNode;if(e)if(t.classList.contains("kint-show")&&t.value.length){let s=e.dataset.lastSearch;if(e.classList.add("kint-search-root"),s!==t.value){e.dataset.lastSearch=t.value,e.classList.remove("kint-search-match");for(let i of e.querySelectorAll(".kint-search-match"))i.classList.remove("kint-search-match");n.#s(e,t.value.toUpperCase())}}else e.classList.remove("kint-search-root")}static#s(t,e){let s=t.cloneNode(!0);for(let c of s.querySelectorAll(".access-path"))c.remove();if(!s.textContent.toUpperCase().includes(e))return;t.classList.add("kint-search-match");let i=t.firstElementChild;for(;i&&i.tagName!=="DT";)i=i.nextElementSibling;if(!i)return;let r=a.getChildContainer(i);if(!r)return;let o,l;for(let c of r.children)c.tagName==="DL"?n.#s(c,e):c.tagName==="UL"&&(c.classList.contains("kint-tabs")?o=c.children:c.classList.contains("kint-tab-contents")&&(l=c.children));if(!(!o||o.length!==l?.length))for(let c=o.length;c--;){let k=!1,F=!1;o[c].textContent.toUpperCase().includes(e)&&(k=!0);let O=l[c].cloneNode(!0);for(let v of O.querySelectorAll(".access-path"))v.remove();if(O.textContent.toUpperCase().includes(e)&&(k=!0,F=!0),k&&o[c].classList.add("kint-search-match"),F)for(let v of l[c].children)v.tagName==="DL"&&n.#s(v,e)}}};var g=class{static sort(t,e){let s=t.dataset.kintTableSort,i=parseInt(s)===e?-1:1,r=t.tBodies[0];[...r.rows].sort(function(o,l){o=o.cells[e].textContent.trim().toLocaleLowerCase(),l=l.cells[e].textContent.trim().toLocaleLowerCase();let c=0;return!isNaN(o)&&!isNaN(l)?(o=parseFloat(o),l=parseFloat(l),c=o-l):isNaN(o)&&!isNaN(l)?c=1:isNaN(l)&&!isNaN(o)?c=-1:c=(""+o).localeCompare(""+l),c*i}).forEach(o=>r.appendChild(o)),i<0?t.dataset.kintTableSort=null:t.dataset.kintTableSort=e}};var a=class n{#e;#t;#s;constructor(t){if(!(t instanceof h))throw new Error("Invalid argument to Rich.constructor()");this.#e=t,this.#e.runOnInit(this.#i.bind(this));let e=new q(this,t);new b(this,t.window,e)}#i(){let t=this.#e.window.document;if(d(this.#t)||(this.#t=t.querySelector("style.kint-rich-style")),this.#t&&m(this.#t),t.querySelector(".kint-rich.kint-file")){this.setupFolder(t);let e=this.#s.querySelector("dd.kint-foldout"),s=Array.from(t.querySelectorAll(".kint-rich.kint-file"));for(let i of s)i.parentNode!==e&&e.appendChild(i);this.#s.classList.add("kint-show")}}addToFolder(t){let e=t.closest(".kint-rich");if(!e)throw new Error("Bad addToFolder");let s=this.#e.window.document;if(this.setupFolder(s),this.folder.contains(t))throw new Error("Bad addToFolder");let i=this.#s.querySelector("dd.kint-foldout"),r=t.closest(".kint-parent, .kint-rich"),o=Array.from(e.querySelectorAll(".kint-folder-trigger"));if(e===r||e.querySelectorAll(".kint-rich > dl").length===1){for(let l of o)l.remove();e.classList.add("kint-file"),i.insertBefore(e,i.firstChild)}else{let l=s.createElement("div");l.classList.add("kint-rich"),l.classList.add("kint-file"),l.appendChild(r.closest(".kint-rich > dl"));let c=e.lastElementChild;c.matches(".kint-rich > footer")&&l.appendChild(c.cloneNode(!0));for(let k of o)k.remove();i.insertBefore(l,i.firstChild)}n.toggle(this.#s.querySelector(".kint-parent"),!0)}setupFolder(t){if(this.#s)d(this.#s)||(this.#s=t.querySelector(".kint-rich.kint-folder"));else{let e=t.createElement("template");e.innerHTML='<div class="kint-rich kint-folder"><dl><dt class="kint-parent"><nav></nav>Kint</dt><dd class="kint-foldout"></dd></dl></div>',this.#s=e.content.firstChild,t.body.appendChild(this.#s)}}get folder(){return d(this.#s)||(this.#s=this.#e.window.document.querySelector(".kint-rich.kint-folder")),this.#s&&m(this.#s),this.#s}isFolderOpen(){let t=this.#s?.querySelector("dd.kint-foldout");if(t)return t.previousSibling.classList.contains("kint-show")}static getChildContainer(t){let e=t.nextElementSibling;for(;e&&!e.matches("dd");
4)e=e.nextElementSibling;return e}static toggle(t,e){let s=n.getChildContainer(t);s&&(e=t.classList.toggle("kint-show",e),n.#n(s,e))}static switchTab(t){t.parentNode.getElementsByClassName("kint-active-tab")[0].classList.remove("kint-active-tab"),t.classList.add("kint-active-tab");let e=t,s=0;for(;e=e.previousElementSibling;)s++;let i=t.parentNode.nextSibling.children;for(let r=i.length;r--;)r===s?(i[r].classList.add("kint-show"),n.#n(i[r],!0)):i[r].classList.remove("kint-show")}static toggleChildren(t,e){let s=n.getChildContainer(t);if(!s)return;e===void 0&&(e=t.classList.contains("kint-show"));let i=Array.from(s.getElementsByClassName("kint-parent"));for(let r of i)r.classList.toggle("kint-show",e)}static toggleAccessPath(t,e){let s=t.querySelector(".access-path");s?.classList.toggle("kint-show",e)&&f(s)}static#n(t,e){if(t.children.length===2&&t.lastElementChild.matches("ul.kint-tab-contents"))for(let s of t.lastElementChild.children)s.matches("li.kint-show")&&(t=s);if(t.children.length===1&&t.firstElementChild.matches("dl")){let s=t.firstElementChild.firstElementChild;s?.classList?.contains("kint-parent")&&n.toggle(s,e)}}},b=class{#e;#t;#s;#i=null;#n=null;#o=0;constructor(t,e,s){this.#e=t,this.#t=s,this.#s=e,this.#s.addEventListener("click",this.#a.bind(this),!0)}#r(){clearTimeout(this.#i),this.#i=setTimeout(this.#l.bind(this),250)}#l(){clearTimeout(this.#i),this.#i=null,this.#n=null,this.#o=0}#c(){let t=this.#n;if(!t.matches(".kint-parent > nav"))return;let e=t.parentNode;if(this.#o===1)a.toggleChildren(e),this.#t.onTreeChanged(),this.#r(),this.#o=2;else if(this.#o===2){this.#l();let s=e.classList.contains("kint-show"),i=this.#e.folder?.querySelector(".kint-parent"),r=Array.from(this.#s.document.getElementsByClassName("kint-parent"));for(let o of r)o!==i&&o.classList.toggle("kint-show",s);this.#t.onTreeChanged(),this.#t.scrollToFocus()}}#a(t){if(this.#o){this.#c();return}let e=t.target;if(!e.closest(".kint-rich"))return;if(e.tagName==="DFN"&&f(e),e.tagName==="TH"){t.ctrlKey||g.sort(e.closest("table"),e.cellIndex);return}if(e.tagName==="LI"&&e.parentNode.className==="kint-tabs"){if(e.className!=="kint-active-tab"){let i=e.closest("dl")?.querySelector(".kint-parent > nav")??e;a.switchTab(e),this.#t.onTreeChanged(),this.#t.setCursor(i)}return}let s=e.closest("dt");if(e.tagName==="NAV")e.parentNode.tagName==="FOOTER"?(this.#t.setCursor(e),e.parentNode.classList.toggle("kint-show")):s?.classList.contains("kint-parent")&&(a.toggle(s),this.#t.onTreeChanged(),this.#t.setCursor(e),this.#r(),this.#o=1,this.#n=e);else if(e.classList.contains("kint-access-path-trigger"))s&&a.toggleAccessPath(s);else if(e.classList.contains("kint-search-trigger"))s?.matches(".kint-rich > dl > dt.kint-parent")&&u.toggleSearchBox(s);else if(e.classList.contains("kint-folder-trigger")){if(s?.matches(".kint-rich > dl > dt.kint-parent"))this.#e.addToFolder(e),this.#t.onTreeChanged(),this.#t.setCursor(s.querySelector("nav")),this.#t.scrollToFocus();else if(e.parentNode.tagName==="FOOTER"){let i=e.closest(".kint-rich").querySelector(".kint-parent > nav, .kint-rich > footer > nav");this.#e.addToFolder(e),this.#t.onTreeChanged(),this.#t.setCursor(i),this.#t.scrollToFocus()}}else e.classList.contains("kint-search")||(e.tagName==="PRE"&&t.detail===3?f(e):e.closest(".kint-source")&&t.detail===3?f(e.closest(".kint-source")):e.classList.contains("access-path")?f(e):e.tagName!=="A"&&s?.classList.contains("kint-parent")&&(a.toggle(s),this.#t.onTreeChanged(),this.#t.setCursor(s.querySelector("nav"))))}},j=65,G=68,A=70,S=72,K=74,D=75,p=76,V=83,P=9,T=13,B=27,L=32,N=37,R=38,C=39,H=40,M=".kint-rich .kint-parent > nav, .kint-rich > footer > nav, .kint-rich .kint-tabs > li:not(.kint-active-tab)",q=class{#e=[];#t=0;#s=!1;#i;#n;constructor(t,e){this.#i=t,this.#n=e.window,this.#n.addEventListener("keydown",this.#c.bind(this),!0),e.runOnInit(this.onTreeChanged.bind(this))}scrollToFocus(){let t=this.#e[this.#t];if(!t)return;let e=this.#i.folder;if(t===e?.querySelector(".kint-parent > nav"))return;let s=x(t);if(this.#i.isFolderOpen()){let i=e.querySelector("dd.kint-foldout");i.scrollTo(0,s-i.clientHeight/2)}else this.#n.scrollTo(0,s-this.#n.innerHeight/2)}onTreeChanged(){let t=this.#e[this.#t];this.#e=[];let e=this.#i.folder,s=e?.querySelector(".kint-parent > nav"),i=this.#n.document;this.#i.isFolderOpen()&&(i=e,this.#e.push(s));let r=Array.from(i.querySelectorAll(M));for(let o of r)o.offsetParent!==null&&o!==s&&this.#e.push(o);if(s&&!this.#i.isFolderOpen()&&this.#e.push(s),this.#e.length===0){this.#s=!1,this.#r();return}t&&this.#e.indexOf(t)!==-1?this.#t=this.#e.indexOf(t):this.#r()}setCursor(t){if(this.#i.isFolderOpen()&&!this.#i.folder.contains(t)||!t.matches(M))return!1;let e=this.#e.indexOf(t);if(e===-1&&(this.onTreeChanged(),e=this.#e.indexOf(t)),e!==-1){if(e!==this.#t)return this.#t=e,this.#r(),!0;this.#e[e]?.classList.remove("kint-weak-focus")}else console.error("setCursor failed to find target in list",t),console.info("Please report this as a bug in Kint at https://github.com/kint-php/kint");return!1}#o(t){if(this.#e.length===0)return this.#t=0,null;for(this.#t+=t;this.#t<0;)this.#t+=this.#e.length;for(;this.#t>=this.#e.length;)this.#t-=this.#e.length;return this.#r(),this.#t}#r(){let t=this.#n.document.querySelector(".kint-focused");t&&(t.classList.remove("kint-focused"),t.classList.remove("kint-weak-focus")),this.#s&&this.#e[this.#t]?.classList.add("kint-focused")}#l(t){let e=t.closest(".kint-rich .kint-parent ~ dd")?.parentNode.querySelector(".kint-parent > nav");e&&(this.setCursor(e),this.scrollToFocus())}#c(t){if(this.#s&&t.keyCode===B&&t.target.matches(".kint-search")){t.target.blur(),this.#r();return}if(t.target!==this.#n.document.body||t.altKey||t.ctrlKey)return;if(t.keyCode===G){if(this.#s)this.#s=!1;else{if(this.#s=!0,this.onTreeChanged(),this.#e.length===0){this.#s=!1;return}this.scrollToFocus()}this.#r(),t.preventDefault();return}else if(t.keyCode===B){this.#s&&(this.#s=!1,this.#r(),t.preventDefault());return}else if(!this.#s)return;t.preventDefault(),d(this.#e[this.#t])||this.onTreeChanged();let e=this.#e[this.#t];if([P,R,D,H,K].includes(t.keyCode)){t.keyCode===P?this.#o(t.shiftKey?-1:1):t.keyCode===R||t.keyCode===D?this.#o(-1):(t.keyCode===H||t.keyCode===K)&&this.#o(1),this.scrollToFocus();return}if(e.tagName==="LI"&&[L,T,C,p,N,S].includes(t.keyCode)){t.keyCode===L||t.keyCode===T?(a.switchTab(e),this.onTreeChanged()):t.keyCode===C||t.keyCode===p?this.#o(1):(t.keyCode===N||t.keyCode===S)&&this.#o(-1),this.scrollToFocus();return}if(e.parentNode.tagName==="FOOTER"&&e.closest(".kint-rich")){if(t.keyCode===L||t.keyCode===T)e.parentNode.classList.toggle("kint-show");else if(t.keyCode===N||t.keyCode===S)if(e.parentNode.classList.contains("kint-show"))e.parentNode.classList.remove("kint-show");else{this.#l(e.closest(".kint-rich"));return}else if(t.keyCode===C||t.keyCode===p)e.parentNode.classList.add("kint-show");else if(t.keyCode===A&&!this.#i.isFolderOpen()&&e.matches(".kint-rich > footer > nav")){let i=e.closest(".kint-rich").querySelector(".kint-parent > nav, .kint-rich > footer > nav");this.#i.addToFolder(e),this.onTreeChanged(),this.setCursor(i),this.scrollToFocus()}return}let s=e.closest(".kint-parent");
4if(s){if(t.keyCode===j){a.toggleAccessPath(s);return}if(t.keyCode===A){!this.#i.isFolderOpen()&&s.matches(".kint-rich:not(.kint-folder) > dl > .kint-parent")&&(this.#i.addToFolder(e),this.onTreeChanged(),this.setCursor(e),this.scrollToFocus());return}if(t.keyCode===V){let i=s.closest(".kint-rich > dl")?.querySelector(".kint-search")?.closest(".kint-parent");if(i){e.classList.add("kint-weak-focus"),u.toggleSearchBox(i,!0);return}}if(t.keyCode===L||t.keyCode===T){a.toggle(s),this.onTreeChanged();return}if([C,p,N,S].includes(t.keyCode)){let i=s.classList.contains("kint-show");if(t.keyCode===C||t.keyCode===p){i&&a.toggleChildren(s,!0),a.toggle(s,!0),this.onTreeChanged();return}else if(i){a.toggleChildren(s,!1),a.toggle(s,!1),this.onTreeChanged();return}else{this.#l(s);return}}}}};var y=class{#e;#t;constructor(t){if(!(t instanceof h))throw new Error("Invalid argument to Plain.constructor()");this.#e=t.window,t.runOnInit(this.#s.bind(this))}#s(){d(this.#t)||(this.#t=this.#e.document.querySelector("style.kint-plain-style")),this.#t&&m(this.#t)}};var w=class{#e;constructor(t){if(!(t instanceof h))throw new Error("Invalid argument to Microtime.constructor()");this.#e=t.window,t.runOnInit(this.#t.bind(this))}#t(){let t={},e=this.#e.document.querySelectorAll("[data-kint-microtime-group]");for(let s of e){let i=s.querySelector(".kint-microtime-lap");if(!i)continue;let r=s.dataset.kintMicrotimeGroup,o=parseFloat(i.textContent),l=parseFloat(s.querySelector(".kint-microtime-avg").textContent);t[r]??={min:o,max:o,avg:l},t[r].min>o&&(t[r].min=o),t[r].max<o&&(t[r].max=o),t[r].avg=l}for(let s of e){let i=s.querySelector(".kint-microtime-lap");if(!i)continue;let r=parseFloat(i.textContent),o=t[s.dataset.kintMicrotimeGroup];if(s.querySelector(".kint-microtime-avg").textContent=o.avg,!(r===o.min&&r===o.max))if(s.classList.add("kint-microtime-js"),r>o.avg){let l=(r-o.avg)/(o.max-o.avg);i.style.background="hsl("+(40-40*l)+", 100%, 65%)"}else{let l=0;o.avg!==o.min&&(l=(o.avg-r)/(o.avg-o.min)),i.style.background="hsl("+(40+80*l)+", 100%, 65%)"}}}};var U=Symbol(),h=class n{static#e=null;#t;#s=[];#i=new Set;static init(t){return n.#e??=new n(t,U),n.#e.#n(),n.#e.runOnLoad(n.#r),n.#e}get window(){return this.#t}constructor(t,e){if(U!==e)throw new Error("Kint constructor is private. Use Kint.init()");if(!(t instanceof Window))throw new Error("Invalid argument to Kint.init()");this.#t=t,this.runOnInit(this.#o.bind(this)),new y(this),new a(this),new w(this)}runOnLoad(t){if(this.#t.document.readyState==="complete")try{t()}catch{}else this.#t.addEventListener("load",t)}runOnInit(t){this.#s.push(t)}#n(){this.#t.document.currentScript&&(this.#i.add(E(window.document.currentScript)),window.document.currentScript.remove())}#o(){for(let t of this.#i.keys())for(let e of this.#t.document.querySelectorAll(t))e.remove()}static#r(){for(let t of n.#e.#s)t()}};window.Kint||(window.Kint=h);window.Kint.init(window);})(); 5</script>
5<style class="kint-rich-style">.kint-rich{--spacing: 4px;--nav-size: 15px;--backdrop-color: rgba(255, 255, 255, 0.9);--main-background: #e0eaef;--secondary-background: #c1d4df;--text-color: #1d1e1e;--variable-name-color: #1d1e1e;--variable-type-color: #0092db;--variable-type-color-hover: #5cb730;--border-color: #b6cedb;--border-color-hover: #0092db;--border: 1px solid var(--border-color);--foldout-max-size: calc(100vh - 100px);--foldout-zindex: 999999;--caret-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 150'><g stroke-width='2' fill='%23FFF'><path d='M1 1h28v28H1zm5 14h18m-9 9V6M1 61h28v28H1zm5 14h18' stroke='%23379'/><path d='M1 31h28v28H1zm5 14h18m-9 9V36M1 91h28v28H1zm5 14h18' stroke='%235A3'/><path d='M1 121h28v28H1zm5 5l18 18m-18 0l18-18' stroke='%23CCC'/></g></svg>");--ap-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><g stroke='%23000' fill='transparent'><path d='M2 8h3m3 3v3M8 2v3m3 3h3M3 8' stroke-width='2' stroke-linecap='round'/><circle stroke-width='1.5' r='4.5' cx='8' cy='8'/></g></svg>");--folder-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M2 2h4l2 2h6v9H2V2h2' stroke-width='2' stroke='%23000' fill='transparent' stroke-linejoin='round'/></svg>");--search-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><g stroke='%23000' fill='transparent'><path d='M2 14l3-3' stroke-linecap='round' stroke-width='3'/><circle stroke-width='2' r='5' cx='9' cy='7'/></g></svg>");font-size:13px;overflow-x:auto;white-space:nowrap;background:var(--backdrop-color);direction:ltr;contain:content}.kint-rich.kint-folder{position:fixed;bottom:0;left:0;right:0;z-index:var(--foldout-zindex);width:100%;margin:0;display:block}.kint-rich.kint-folder dd.kint-foldout{max-height:var(--foldout-max-size);padding-right:calc(var(--spacing)*2);overflow-y:scroll;display:none}.kint-rich.kint-folder dd.kint-foldout.kint-show{display:block}.kint-rich::selection{background:var(--border-color-hover);color:var(--text-color)}.kint-rich .kint-focused{box-shadow:0 0 3px 3px var(--variable-type-color-hover)}.kint-rich .kint-focused.kint-weak-focus{box-shadow:0 0 3px 1px color-mix(in srgb, var(--variable-type-color-hover) 50%, transparent)}.kint-rich,.kint-rich::before,.kint-rich::after,.kint-rich *,.kint-rich *::before,.kint-rich *::after{box-sizing:border-box;border-radius:0;color:var(--text-color);float:none !important;font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif;line-height:15px;margin:0;padding:0;text-align:left}.kint-rich{margin:calc(var(--spacing)*2) 0}.kint-rich dt,.kint-rich dl{width:auto}.kint-rich dt,.kint-rich div.access-path{background:var(--main-background);border:var(--border);color:var(--text-color);display:block;font-weight:bold;list-style:none outside none;overflow:auto;padding:var(--spacing)}.kint-rich dt:hover,.kint-rich div.access-path:hover{border-color:var(--border-color-hover)}.kint-rich>dl dl{padding:0 0 0 calc(var(--spacing)*3)}.kint-rich dt.kint-parent>nav,.kint-rich>footer>nav{background:var(--caret-image) no-repeat scroll 0 0/var(--nav-size) 75px rgba(0,0,0,0);cursor:pointer;display:inline-block;height:var(--nav-size);width:var(--nav-size);margin-right:3px;vertical-align:middle}.kint-rich dt.kint-parent:hover>nav,.kint-rich>footer>nav:hover{background-position:0 25%}.kint-rich dt.kint-parent.kint-show>nav,.kint-rich>footer.kint-show>nav{background-position:0 50%}.kint-rich dt.kint-parent.kint-show:hover>nav,.kint-rich>footer.kint-show>nav:hover{background-position:0 75%}.kint-rich dt.kint-parent.kint-locked>nav{background-position:0 100%}.kint-rich dt.kint-parent+dd{display:none;border-left:1px dashed var(--border-color);contain:strict}.kint-rich dt.kint-parent.kint-show+dd{display:block;contain:content}.kint-rich var,.kint-rich var a{color:var(--variable-type-color);font-style:normal}.kint-rich dt:hover var,.kint-rich dt:hover var a{color:var(--variable-type-color-hover)}.kint-rich dfn{font-style:normal;font-family:monospace;color:var(--variable-name-color)}.kint-rich pre{color:var(--text-color);margin:0 0 0 calc(var(--spacing)*3);padding:5px;overflow-y:hidden;border-top:0;border:var(--border);background:var(--main-background);
5display:block;word-break:normal}.kint-rich .kint-access-path-trigger,.kint-rich .kint-folder-trigger,.kint-rich .kint-search-trigger{background:color-mix(in srgb, var(--text-color) 80%, transparent);border-radius:3px;padding:2px;height:var(--nav-size);width:var(--nav-size);font-size:var(--nav-size);margin-left:5px;font-weight:bold;text-align:center;line-height:1;float:right !important;cursor:pointer;position:relative;overflow:hidden}.kint-rich .kint-access-path-trigger::before,.kint-rich .kint-folder-trigger::before,.kint-rich .kint-search-trigger::before{display:block;content:"";width:100%;height:100%;background:var(--main-background);mask:center/contain no-repeat alpha}.kint-rich .kint-access-path-trigger:hover,.kint-rich .kint-folder-trigger:hover,.kint-rich .kint-search-trigger:hover{background:var(--main-background)}.kint-rich .kint-access-path-trigger:hover::before,.kint-rich .kint-folder-trigger:hover::before,.kint-rich .kint-search-trigger:hover::before{background:var(--text-color)}.kint-rich .kint-access-path-trigger::before{mask-image:var(--ap-image)}.kint-rich .kint-folder-trigger::before{mask-image:var(--folder-image)}.kint-rich .kint-search-trigger::before{mask-image:var(--search-image)}.kint-rich input.kint-search{display:none;border:var(--border);border-top-width:0;border-bottom-width:0;padding:var(--spacing);float:right !important;margin:calc(var(--spacing)*-1) 0;color:var(--variable-name-color);background:var(--secondary-background);height:calc(var(--nav-size) + var(--spacing)*2);width:calc(var(--nav-size)*10);position:relative;z-index:100}.kint-rich input.kint-search.kint-show{display:block}.kint-rich .kint-search-root ul.kint-tabs>li:not(.kint-search-match){background:var(--secondary-background);filter:saturate(0);opacity:.5}.kint-rich .kint-search-root dl:not(.kint-search-match){opacity:.5}.kint-rich .kint-search-root dl:not(.kint-search-match)>dt{background:var(--main-background);filter:saturate(0)}.kint-rich .kint-search-root dl:not(.kint-search-match) dl,.kint-rich .kint-search-root dl:not(.kint-search-match) ul.kint-tabs>li:not(.kint-search-match){opacity:1}.kint-rich div.access-path{background:var(--secondary-background);display:none;margin-top:5px;padding:4px;white-space:pre}.kint-rich div.access-path.kint-show{display:block}.kint-rich footer{padding:0 3px 3px;font-size:9px;background:rgba(0,0,0,0)}.kint-rich footer>.kint-folder-trigger{background:rgba(0,0,0,0)}.kint-rich footer>.kint-folder-trigger::before{background:var(--text-color)}.kint-rich footer nav{height:10px;width:10px;background-size:10px 50px}.kint-rich footer>ol{display:none;margin-left:32px}.kint-rich footer.kint-show>ol{display:block}.kint-rich a{color:var(--text-color);text-shadow:none;text-decoration:underline}.kint-rich a:hover{color:var(--variable-name-color);border-bottom:1px dotted var(--variable-name-color)}.kint-rich ul{list-style:none;padding-left:calc(var(--spacing)*3)}.kint-rich ul:not(.kint-tabs) li{border-left:1px dashed var(--border-color)}.kint-rich ul:not(.kint-tabs) li>dl{border-left:none}.kint-rich ul.kint-tabs{margin:0 0 0 calc(var(--spacing)*3);padding-left:0;background:var(--main-background);border:var(--border);border-top:0}.kint-rich ul.kint-tabs>li{background:var(--secondary-background);border:var(--border);cursor:pointer;display:inline-block;height:calc(var(--spacing)*6);margin:calc(var(--spacing)/2);padding:0 calc(2px + var(--spacing)*2.5);vertical-align:top}.kint-rich ul.kint-tabs>li:hover,.kint-rich ul.kint-tabs>li.kint-active-tab:hover{border-color:var(--border-color-hover);color:var(--variable-type-color-hover)}.kint-rich ul.kint-tabs>li.kint-active-tab{background:var(--main-background);border-top:0;margin-top:-1px;height:27px;line-height:24px}.kint-rich ul.kint-tabs>li:not(.kint-active-tab){line-height:calc(var(--spacing)*5)}.kint-rich ul.kint-tabs li+li{margin-left:0}.kint-rich ul.kint-tab-contents>li{display:none;contain:strict}.kint-rich ul.kint-tab-contents>li.kint-show{display:block;contain:content}.kint-rich dt:hover+dd>ul>li.kint-active-tab{border-color:var(--border-color-hover);color:var(--variable-type-color-hover)}.kint-rich dt>.kint-color-preview{width:var(--nav-size);height:var(--nav-size);display:inline-block;vertical-align:middle;margin-left:10px;border:var(--border);background-color:#ccc;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="%23FFF" d="M0 0h1v2h1V1H0z"/></svg>');background-size:min(20px,100%)}.kint-rich dt>.kint-color-preview:hover{border-color:var(--border-color-hover)}.kint-rich dt>.kint-color-preview>div{width:100%;height:100%}.kint-rich table{border-collapse:collapse;empty-cells:show;border-spacing:0}.kint-rich table *{font-size:12px}.kint-rich table dt{background:none;padding:calc(var(--spacing)/2)}.kint-rich table dt .kint-parent{min-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kint-rich table td,.kint-rich table th{border:var(--border);padding:calc(var(--spacing)/2);vertical-align:center}.kint-rich table th{cursor:alias}.kint-rich table td:first-child,.kint-rich table th{font-weight:bold;background:var(--secondary-background);color:var(--variable-name-color)}.kint-rich table td{background:var(--main-background);white-space:pre}.kint-rich table td>dl{padding:0}.kint-rich table pre{border-top:0;border-right:0}.kint-rich table thead th:first-child{background:none;border:0}.kint-rich table tr:hover>td{box-shadow:0 0 1px 0 var(--border-color-hover) inset}.kint-rich table tr:hover var{color:var(--variable-type-color-hover)}.kint-rich table ul.kint-tabs li.kint-active-tab{height:20px;line-height:17px}.kint-rich pre.kint-source{margin-left:-1px}.kint-rich pre.kint-source[data-kint-filename]:before{display:block;content:attr(data-kint-filename);margin-bottom:var(--spacing);padding-bottom:var(--spacing);border-bottom:1px solid var(--secondary-background)}.kint-rich pre.kint-source>div:before{display:inline-block;content:counter(kint-l);counter-increment:kint-l;border-right:1px solid var(--border-color-hover);padding-right:calc(var(--spacing)*2);margin-right:calc(var(--spacing)*2)}.kint-rich pre.kint-source>div.kint-highlight{background:var(--secondary-background)}.kint-rich .kint-microtime-js .kint-microtime-lap{text-shadow:-1px 0 var(--border-color-hover),0 1px var(--border-color-hover),1px 0 var(--border-color-hover),0 -1px var(--border-color-hover);color:var(--main-background);font-weight:bold}input.kint-note-input{width:100%}.kint-rich{--main-background: #f8f8f8;--secondary-background: #f8f8f8;--variable-type-color: #06f;--variable-type-color-hover: #f00;--border-color: #d7d7d7;--border-color-hover: #aaa;--alternative-background: #fff;--highlight-color: #cfc;--caret-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 150'><path d='M6 7h18l-9 15zm0 30h18l-9 15zm0 45h18l-9-15zm0 30h18l-9-15zm0 12l18 18m-18 0l18-18' fill='%23555'/><path d='M6 126l18 18m-18 0l18-18' stroke-width='2' stroke='%23555'/></svg>")}.kint-rich .kint-focused{box-shadow:0 0 3px 2px var(--variable-type-color-hover)}.kint-rich dt{font-weight:normal}.kint-rich dt.kint-parent{margin-top:4px}.kint-rich dl dl{margin-top:4px;padding-left:25px;border-left:none}.kint-rich>dl>dt{background:var(--secondary-background)}.kint-rich ul{margin:0;padding-left:0}.kint-rich ul:not(.kint-tabs)>li{border-left:0}.kint-rich ul.kint-tabs{background:var(--secondary-background);border:var(--border);border-width:0 1px 1px 1px;padding:4px 0 0 12px;margin-left:-1px;margin-top:-1px}.kint-rich ul.kint-tabs li,.kint-rich ul.kint-tabs li+li{margin:0 0 0 4px}.kint-rich ul.kint-tabs li{border-bottom-width:0;height:calc(var(--spacing)*6 + 1px)}.kint-rich ul.kint-tabs li:first-child{margin-left:0}.kint-rich ul.kint-tabs li.kint-active-tab{border-top:var(--border);background:var(--alternative-background);font-weight:bold;padding-top:0;border-bottom:1px solid var(--alternative-background) !important;margin-bottom:-1px}.kint-rich ul.kint-tabs li.kint-active-tab:hover{border-bottom:1px solid var(--alternative-background)}.kint-rich ul>li>pre{border:var(--border)}.kint-rich dt:hover+dd>ul{border-color:var(--border-color-hover)}.kint-rich pre{background:var(--alternative-background);margin-top:4px;margin-left:25px}.kint-rich .kint-source{margin-left:-1px}.kint-rich .kint-source .kint-highlight{background:var(--highlight-color)}.kint-rich .kint-parent.kint-show>.kint-search{border-bottom-width:1px}.kint-rich table td{background:var(--alternative-background)}.kint-rich table td>dl{padding:0;margin:0}.kint-rich table td>dl>dt.kint-parent{margin:0}.kint-rich table td:first-child,.kint-rich table td,.kint-rich table th{padding:2px 4px}.kint-rich table dd,.kint-rich table dt{background:var(--alternative-background)}.kint-rich table tr:hover>td{box-shadow:none;background:var(--highlight-color)} 6</style> 7 8 <meta charset="utf-8"> 9 <meta name="viewport" content="width=device-width, initial-scale=1"> 10 <meta name="description" content="Instituto Superior Tecnológico Bolivariano de TecnologÃa"> 11 <meta name="author" content="ITB - TIC"> 12 <meta name="generator" content="ITB - TIC"> 13 <title>ITB - Mensaje del Rector</title> 14 <link rel="icon" href="https://itb.edu.ec/statics/imagenes/plantilla/favicon.ico"> 15 <link href="https://itb.edu.ec/statics/vendor/bootstrap523/css/bootstrap.min.css" rel="stylesheet"> 16 <link href="https://itb.edu.ec/statics/vendor/animatecss/animate.min.css" rel="stylesheet"> 17 <link href="https://itb.edu.ec/statics/fonts/fontawesome672/css/all.min.css" rel="stylesheet"> 18 <link href="https://itb.edu.ec/statics/css/estilo.css" rel="stylesheet"> 19 </head> 20<body id="body" style="overflow:hidden;"> 21<div id="content-preloader"> 22 <img src="https://itb.edu.ec/statics/imagenes/main/nadalog.jpg" width="300" height="110" alt="Cargando..."/> 23 <div id="preloader"></div> 24</div> 25 <div id="overlay"></div> 26 <div id="overlaycolor"></div> 27<div class="tpl-snow"></div>
28<script>const _root='https://itb.edu.ec/';const prelodmask = '1';</script>
28 29<header> 30 <nav class="navbar navbar-dark bg-naranja fixed-top" id="navsocial" aria-label="Bar Link"> 31 <div class="container justify-content-end"> 32 <ul class="social-icons-ql"> 33 <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.1s;"> 34 <a href="https://www.tiktok.com/@itb_ec?lang=es" target="_blank"><i class="fa-brands fa-tiktok"></i></a> 35 </li> 36 <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.2s;"> 37 <a href="https://www.instagram.com/itb_ec/" target="_blank"><i class="fa-brands fa-instagram"></i></a> 38 </li> 39 <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.3s;"> 40 <a href="https://www.facebook.com/itb.edu.ec" target="_blank"><i class="fa-brands fa-facebook-f"></i></a> 41 </li> 42 <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.4s;"> 43 <a href="https://x.com/ITBolivariano" target="_blank"><i class="fa-brands fa-x-twitter"></i></a> 44 </li> 45 <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.5s;"> 46 <a href="https://www.youtube.com/c/itbinstitutosuperioruniversitariobolivariano" target="_blank"><i class="fa-brands fa-youtube"></i></a> 47 </li> 48 <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.6s;"> 49 <a href="https://www.linkedin.com/company/itb-ec/?originalSubdomain=ec" target="_blank"><i class="fa-brands fa-linkedin-in"></i></a> 50 </li> 51 </ul> 52 <a href="https://eva.itb.edu.ec/" class="btn btn-sm btn-naranja rounded rounded-pill mb-3 mx-2 wow animate__animated animate__fadeInRight"> Portal estudiantil </a> 53 </div> 54 </nav> 55 <nav class="navbar navbar-expand-lg fixed-top bg-white py-2 py-lg-0" id="navmenu"> 56 <div class="container d-flex justify-content-sm-between justify-content-lg-center px-3 px-lg-0 py-0 py-lg-1 py-xl-0"> 57 <a class="navbar-brand animate__animated animate__fadeInLeft" style="animation-delay:0.2s;" href="https://itb.edu.ec/"> 58 <img src="https://itb.edu.ec/statics/imagenes/plantilla/logo-itb.png" alt="Logo Itb"> 59 </a> 60 <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapseMenu" aria-controls="navbarCollapseMenu" aria-expanded="false" aria-label="Toggle navigation"> 61 <span class="navbar-toggler-icon"></span> 62 </button> 63 <div class="collapse d-lg-flex justify-content-start justify-content-lg-end align-items-center navbar-collapse animate__animated animate__fadeInRight" style="animation-delay:0.3s;" id="navbarCollapseMenu" data-isanmate="false"> 64 <ul class="navbar-nav"> 65 <li class="nav-item dropdown position-static align-content-center"> 66 <a class="nav-link dropdown-toggle d-flex align-items-center pt-3 px-lg-2 py-lg-3 py-xl-4 px-xl-3 active" href="#" id="megaMenu" role="button" data-bs-toggle="dropdown" aria-expanded="false"> 67 Instituto 68 </a> 69 <div class="dropdown-menu no-close w-100" aria-labelledby="megaMenu"> 70 <div class="container-fluid"> 71 <div class="row py-lg-4 px-lg-4"> 72 <div class="d-none d-lg-block col-lg-5"> 73 <h1>Acerca de ITB</h1> 74 <p class="text-justify"> 75 En ITB, nuestra principal prioridad es brindarle una educación de alta calidad en un entorno propicio para su crecimiento 76 como estudiante y futuro profesional. Ofrece a cada estudiante una oportunidad única de convertirse en un pensador original que se enfrenta a los desafÃos del mundo. Más allá de los fundamentos, le brindamos las herramientas
77 para expandir su conocimiento.</p> 78 <div class="d-grid"> 79 <a href="https://itb.edu.ec/Antecedentes" class="btn btn-outline-azul rounded-0 py-3"> OBTÉN MÁS INFORMACIÓN</a> 80 </div> 81 </div> 82 <div class="col-lg-7"> 83 <div class="row"> 84 <div class="d-none d-lg-block col-lg-4"> 85 <div class="card rounded-0 shadow-sm urlclic" data-url="https://itb.edu.ec/Rendicion"> 86 <img src="https://itb.edu.ec/statics/imagenes/plantilla/instituto.webp" class="card-img-top rounded-0" width="200" height="175" alt="Contacto"> 87 <div class="card-body"> 88 <h5 class="card-title">DATOS Y CALIFICACIONES DEL ITB</h5> 89 <p class="card-text"> 90 Con cifras: nuestra identidad y la posición que ocupamos. 91 </p> 92 </div> 93 </div> 94 </div> 95 <div class="col-lg-4 px-2 px-lg-3 py-2"> 96 <h6 class="dropdown-header">Instituto</h6> 97 <a class="dropdown-item " href="https://itb.edu.ec/Antecedentes">Antecedentes</a> 98 <a class="dropdown-item " href="https://itb.edu.ec/Filosofia">Filosofía Institucional</a> 99 <a class="dropdown-item menuactivo" href="https://itb.edu.ec/Mensaje">Mensaje </a> 100 <a class="dropdown-item " href="https://itb.edu.ec/Himno">Himno al ITB</a> 101 <a class="dropdown-item " href="https://itb.edu.ec/Baselegal">Base Legal</a> 102 <a class="dropdown-item " href="https://itb.edu.ec/Trabaja_con_nosotros">Trabaja con Nosotros</a> 103 104 <h6 class="dropdown-header">Estructura</h6> 105 <a class="dropdown-item " href="https://itb.edu.ec/Autoridades">Autoridades</a> 106 <a class="dropdown-item " href="https://itb.edu.ec/Organigrama">Organigrama</a> 107 <a class="dropdown-item " href="https://itb.edu.ec/CoGobierno">Co-Gobierno</a> 108 </div> 109 <div class="col-lg-4 px-2 px-lg-3 py-2"> 110 <h6 class="dropdown-header">Transparencia</h6> 111 <a class="dropdown-item " href="https://itb.edu.ec/Presupuesto">Presupuesto</a> 112 <a class="dropdown-item " href="https://itb.edu.ec/Rendicion">Rendición de Cuentas</a> 113 <a class="dropdown-item " href="https://itb.edu.ec/Remuneracion">Remuneración Mensual</a> 114 <a class="dropdown-item " href="https://itb.edu.ec/Aranceles">Aranceles</a> 115 <a class="dropdown-item " href="https://itb.edu.ec/Balance">Balance General</a> 116 <a class="dropdown-item " href="https://itb.edu.ec/Obligaciones">Cumplimiento de Obligaciones</a> 117 <a class="dropdown-item " href="https://itb.edu.ec/Planificacion">Planificación</a> 118 <a class="dropdown-item " href="https://itb.edu.ec/Auditados">Balances Auditados</a> 119 <a class="dropdown-item " href="https://itb.edu.ec/Aseguramiento_calidad">Sistema de Aseguramiento de la Calidad</a> 120 </div> 121 </div> 122 </div> 123 </div> 124 </div> 125 </div> 126 </li> 127 <li class="nav-item dropdown position-static align-content-center"> 128 <a href="#" id="megaMenu" role="button" data-bs-toggle="dropdown" class="nav-link dropdown-toggle d-flex align-items-center pt-3 px-lg-2 py-lg-3 py-xl-4 px-xl-3 " aria-expanded="false"> 129 Vida estudiantil 130 </a> 131 <div class="dropdown-menu no-close w-100" aria-labelledby="megaMenu"> 132 <div class="container-fluid"> 133 <div class="row py-lg-4 px-lg-4"> 134 <div class="d-none d-lg-block col-lg-5"> 135 <h1>Experiencia del Estudiante</h1>
136 <p class="text-justify"> 137 Incluye toda la atención médica del campus en un solo lugar, 138 brindando fácil acceso para los estudiantes y está diseñado 139 para ser un entorno colaborativo de alto impacto para apoyar 140 el aprendizaje, el bienestar y el éxito de los estudiantes. </p> 141 <div class="d-grid"> 142 <a class="btn btn-outline-azul rounded-0 py-3" href="https://itb.edu.ec/Bienestar"> OBTÉN MÁS INFORMACIÓN</a> 143 </div> 144 </div> 145 <div class="col-lg-7"> 146 <div class="row"> 147 <div class="d-none d-lg-block col-lg-4 "> 148 <div class="card rounded-0 shadow-sm urlclic" data-url="https://itb.edu.ec/Asistencia"> 149 <img src="https://itb.edu.ec/statics/imagenes/plantilla/estudiantil.webp" class="card-img-top rounded-0" width="200" height="175" alt="Contacto"> 150 <div class="card-body"> 151 <h5 class="card-title">SERVICIO DE 152 ASISTENCIA SOCIAL</h5> 153 <p class="card-text"> 154 Brinda apoyo, orientación y acompañamiento a estudiantes y familias, fomentando el bienestar social y académico. 155 </p> 156 </div> 157 </div> 158 </div> 159 <div class="col-lg-4 px-2 px-lg-3 py-2"> 160 <h6 class="dropdown-header">Bienestar estudiantil</h6> 161 <a class="dropdown-item " href="https://itb.edu.ec/Bienestar">Quiénes Somos</a> 162 <a class="dropdown-item " href="https://itb.edu.ec/Informes">Informes</a> 163 <a class="dropdown-item " href="https://itb.edu.ec/Actividades">Actividades Realizadas</a> 164 <a class="dropdown-item " href="https://itb.edu.ec/Arte_Cultura">Arte y Cultura</a> 165 <h6 class="dropdown-header">Servicios y Beneficios</h6> 166 <a class="dropdown-item " href="https://itb.edu.ec/Asistencia">Asistencia Social</a> 167 <a class="dropdown-item " href="https://itb.edu.ec/Cruzroja">Cuenta en la Cruz Roja Ecuatoriana</a> 168 <a class="dropdown-item " href="https://itb.edu.ec/Gym">Gym</a> 169 </div> 170 <div class="col-lg-4 px-2 px-lg-3 py-2"> 171 <a class="dropdown-item " href="https://itb.edu.ec/Observatorio">Observatorio Bolivariano</a> 172 <a class="dropdown-item " href="https://itb.edu.ec/Orientacion">Orientación Vocacional y Profesional</a> 173 <a class="dropdown-item " href="https://itb.edu.ec/Podologia">Podología</a> 174 <a class="dropdown-item " href="https://itb.edu.ec/Psicologico">Psicólogo</a> 175 <a class="dropdown-item " href="https://itb.edu.ec/Suenos">C.D.I. Sueños Bolivarianos</a> 176 </div> 177 </div> 178 </div> 179 </div> 180 </div> 181 </div> 182 </li> 183 <li class="nav-item align-content-center"> 184 <a class="nav-link pt-3 px-lg-2 py-xl-4 py-lg-3 px-xl-3 " href="https://itb.edu.ec/Oferta_academica">Oferta académica</a> 185 </li> 186 <li class="nav-item dropdown position-static align-content-center"> 187 <a class="nav-link dropdown-toggle d-flex align-items-center pt-3 px-lg-2 py-lg-3 py-xl-4 px-xl-3 " href="#" id="megaMenu" role="button" data-bs-toggle="dropdown" aria-expanded="false"> 188 Vinculación 189 </a> 190 <div class="dropdown-menu no-close w-100" aria-labelledby="megaMenu"> 191 <div class="container-fluid"> 192 <div class="row py-lg-4 px-lg-4"> 193 <div class="d-none d-lg-block col-lg-5"> 194 <h1>Vinculación con la Comunidad</h1>
195 <p class="text-justify"> 196 Se esfuerza por eliminar barreras y contribuir a la práctica 197 comunitaria de pertenencia de los estudiantes del ITB; al 198 hacerlo, cultivamos comunidades inclusivas y empoderamos 199 a los estudiantes para que se afirmen en sus identidades y las 200 formas en que se cruzan.</p> 201 <div class="d-grid"> 202 <a class="btn btn-outline-azul rounded-0 py-3" href="https://itb.edu.ec/Vinculacion"> OBTÉN MÁS INFORMACIÓN</a> 203 </div> 204 </div> 205 <div class="col-lg-7"> 206 <div class="row"> 207 <div class="d-none d-lg-block col-lg-4"> 208 <div class="card rounded-0 shadow-sm urlclic" data-url="https://itb.edu.ec/Centro_atencion"> 209 <img src="https://itb.edu.ec/statics/imagenes/plantilla/vinculacion.webp" class="card-img-top rounded-0" width="200" height="175" alt="Contacto"> 210 <div class="card-body"> 211 <h5 class="card-title">CENTRO DE 212 ATENCIÓN MÉDICA</h5> 213 <p class="card-text"> 214 Destinado a brindar servicios de salud, atención preventiva y orientación médica integral para la comunidad universitaria. 215 </p> 216 </div> 217 </div> 218 </div> 219 <div class="col-lg-4 px-2 px-lg-3 py-2"> 220 <h6 class="dropdown-header">Vinculación con la <br> Comunidad</h6> 221 <a class="dropdown-item " href="https://itb.edu.ec/Vinculacion">Quiénes Somos</a> 222 <a class="dropdown-item " href="https://itb.edu.ec/Centro_atencion">Centro de Atención Médica</a> 223 <a class="dropdown-item " href="https://itb.edu.ec/Convenio">Convenios</a> 224 <a class="dropdown-item " href="https://itb.edu.ec/Info_vinculacion">Info-Vínculo</a> 225 <h6 class="dropdown-header">Programas</h6> 226 <a class="dropdown-item " href="https://itb.edu.ec/Salud_comunidad">Salud para la Comunidad</a> 227 <a class="dropdown-item " href="https://itb.edu.ec/Centro_contable">Centro Contable y Tributario</a> 228 </div> 229 <div class="col-lg-4 px-2 px-lg-3 py-2"> 230 <h6 class="dropdown-header">Graduados</h6> 231 <a class="dropdown-item " href="https://itb.edu.ec/Info_graduado">Infórmate Graduado</a> 232 <a class="dropdown-item" href="https://bancodeproblemas.itb.edu.ec/">Banco de Problemas</a> 233 234 </div> 235 </div> 236 </div> 237 </div> 238 </div> 239 </div> 240 </li> 241 <li class="nav-item dropdown position-static align-content-center srcmenuhiden"> 242 <a class="nav-link dropdown-toggle d-flex align-items-center pt-3 px-lg-2 py-lg-3 py-xl-4 px-xl-3 " href="#" id="megaMenu" role="button" data-bs-toggle="dropdown" aria-expanded="false"> 243 Investigación 244 </a> 245 <div class="dropdown-menu no-close w-100" aria-labelledby="megaMenu"> 246 <div class="container-fluid"> 247 <div class="row py-lg-4 px-lg-4"> 248 <div class="d-none d-lg-block col-lg-5"> 249 <h1>Investigación</h1>
250 <p class="text-justify"> 251 Fomentar y sistematizar la investigación multi, inter y 252 transdisciplinar que se realiza en ITB por parte de docentes y 253 estudiantes, en correspondencia con los dominios 254 académicos declarados por la institución y, que tiene como 255 finalidad esencial dar respuesta a los problemas planteados 256 por el entorno social de la región y el país.</p> 257 <div class="d-grid"> 258 <a class="btn btn-outline-azul rounded-0 py-3" href="https://itb.edu.ec/Investigacion"> OBTÉN MÁS INFORMACIÓN</a> 259 </div> 260 </div> 261 <div class="col-lg-7"> 262 <div class="row"> 263 <div class="d-none d-lg-block col-lg-4"> 264 <div class="card rounded-0 shadow-sm urlclic" data-url="https://itb.edu.ec/Proyecto_investigacion"> 265 <img src="https://itb.edu.ec/statics/imagenes/plantilla/investigacion.webp" class="card-img-top rounded-0" width="200" height="175" alt="Contacto"> 266 <div class="card-body"> 267 <h5 class="card-title">PROYECTOS DE 268 INVESTIGACIÓN</h5> 269 <p class="card-text"> 270 Destinados a fomentar la generación de conocimiento, la innovación y el desarrollo científico en beneficio de la comunidad. 271 </p> 272 </div> 273 </div> 274 </div> 275 <div class="col-lg-4 px-2 px-lg-3 py-2"> 276 <h6 class="dropdown-header">Investigación</h6> 277 <a class="dropdown-item " href="https://itb.edu.ec/Investigacion">Quiénes Somos</a> 278 <a class="dropdown-item " href="https://itb.edu.ec/Modelo_politicas">Modelo y Políticas de Investigación</a> 279 <a class="dropdown-item " href="https://itb.edu.ec/Convocatoria">Convocatorias</a> 280 <a class="dropdown-item " href="https://itb.edu.ec/Proyecto_investigacion">Proyectos de Investigación</a> 281 <a class="dropdown-item " href="https://itb.edu.ec/Info_interes">Noticias y Novedades</a> 282 <a class="dropdown-item " href="https://itb.edu.ec/Lineas">Líneas y Programas de Investigación</a> 283 <a class="dropdown-item " href="https://itb.edu.ec/Conocimiento">Transferencia de Conocimiento y Tecnologías</a> 284 <a class="dropdown-item " href="https://itb.edu.ec/Servicios">Servicios Científicos, Técnico y Tecnológicos</a> 285 </div> 286 <div class="col-lg-4 px-2 px-lg-3 py-2"> 287 <a class="dropdown-item " href="https://itb.edu.ec/Semilleros">Semilleros de Investigación e Innovación</a> 288 <h6 class="dropdown-header">Gestión de la Información Científica</h6> 289 <a class="dropdown-item " href="https://itb.edu.ec/Biblioteca_tradicional">Biblioteca Tradicional</a> 290 <a class="dropdown-item " href="https://itb.edu.ec/Biblioteca_virtual">Biblioteca Virtual</a> 291 <a class="dropdown-item " href="https://itb.edu.ec/Divulgacion">Divulgación Científica</a> 292 <a class="dropdown-item" href="https://identidadbolivariana.itb.edu.ec/" target="_blank">Identidad Bolivariana</a> 293 <a class="dropdown-item" href="https://dspace.itb.edu.ec/" target="_blank">Repositorio Digital</a> 294 </div> 295 </div> 296 </div> 297 </div> 298 </div> 299 </div> 300 </li> 301 <li class="nav-item dropdown position-static align-content-center srcmenuhiden"> 302 <a class="nav-link dropdown-toggle d-flex align-items-center pt-3 px-lg-2 py-lg-3 py-xl-4 px-xl-3 " href="#" id="megaMenu" role="button" data-bs-toggle="dropdown" aria-expanded="false"> 303 Contacto 304 </a> 305 <div class="dropdown-menu no-close w-100" aria-labelledby="megaMenu"> 306 <div class="container-fluid"> 307 <div class="row py-lg-4 px-lg-4"> 308 <div class="d-none d-lg-block col-lg-5"> 309 <h1>Admisión y Ayuda</h1>
310 <p class="text-justify"> 311 Nuestras decisiones de admisión se basan en un proceso 312 holÃstico y selectivo, independientemente de las finanzas. 313 Tener la oportunidad de cambiar el mundo no deberÃa 314 depender de tener el dinero para pagar el instituto. La ayuda 315 financiera lÃder en la industria de ITB garantiza que todos los 316 estudiantes de todos los orÃgenes puedan reunirse, aprender 317 juntos y crecer juntos. En pocas palabras: cuando usted se 318 compromete con nosotros, nosotros nos comprometemos con 319 usted.</p> 320 <div class="d-grid"> 321 <a class="btn btn-outline-azul rounded-0 py-3" href="https://itb.edu.ec/Inscripcion"> OBTÉN MÁS INFORMACIÓN</a> 322 </div> 323 </div> 324 <div class="col-lg-7"> 325 <div class="row"> 326 <div class="d-none d-lg-block col-lg-4"> 327 <div class="card rounded-0 shadow-sm urlclic" data-url="https://itb.edu.ec/Sugerencia"> 328 <img src="https://itb.edu.ec/statics/imagenes/plantilla/contacto.webp" class="card-img-top rounded-0" width="200" height="175" alt="Contacto"> 329 <div class="card-body"> 330 <h5 class="card-title">CONTACTO</h5> 331 <p class="card-text"> 332 Ponte en comunicación con nosotros para consultas, información o atención personalizada. 333 </p> 334 </div> 335 </div> 336 </div> 337 <div class="col-lg-4 px-2 px-lg-3 py-2"> 338 <h6 class="dropdown-header">Quiero estudiar en ITB</h6> 339 <a class="dropdown-item " href="https://itb.edu.ec/Inscripcion">Inscripción</a> 340 <h6 class="dropdown-header">Información de contacto</h6> 341 <a class="dropdown-item " href="https://itb.edu.ec/Directorio">Teléfonos</a> 342 <a class="dropdown-item " href="https://itb.edu.ec/Directorio/correos">Correos</a> 343 <h6 class="dropdown-header">Políticas</h6> 344 <a class="dropdown-item " href="https://itb.edu.ec/Politicas/cookies">Política de Cookies</a> 345 <a class="dropdown-item " href="https://itb.edu.ec/Politica_proteccion_datos">Política de Protección de Datos Personales</a> 346 </div> 347 <div class="col-lg-4 px-2 px-lg-3 py-2"> 348 <h6 class="dropdown-header">Tu opinión es importante</h6> 349 <a class="dropdown-item " href="https://itb.edu.ec/Sugerencia">Sugerencias</a> 350 </div> 351 </div> 352 </div> 353 </div> 354 </div> 355 </div> 356 </li> 357 <li class="nav-item position-static d-none" id="searchcontainer"> 358 <div class="nav-link align-content-center"> 359 <input type="search" class="form-control rounded rounded-pill" id="search" placeholder="Buscar por carrera...."> 360 <div id="suggestions" class="autocomplete-suggestions"></div> 361 </div> 362 </li> 363 <li class="nav-item position-static"> 364 <a class="nav-link py-3 px-lg-2 py-xl-4 px-xl-3"> 365 <i class="fas fa-search text-naranja fs-5 " id="searchicon"></i> 366 <i class="fas fa-times text-azul fs-3 d-none" id="closesearchicon"></i> 367 </a> 368 </li> 369 </ul> 370 371 </div> 372 </div> 373 </nav> 374</header>
375<script> 376 document.getElementById('searchicon').addEventListener('click',function(){ 377 document.getElementById('searchcontainer').classList.remove('d-none'); 378 document.getElementById('closesearchicon').classList.remove('d-none'); 379 document.getElementById('searchicon').classList.add('d-none'); 380 document.querySelectorAll('.srcmenuhiden').forEach(element => { 381 element.classList.add('d-none'); 382 }); 383 }); 384 document.getElementById('closesearchicon').addEventListener('click',function(){ 385 document.getElementById('searchcontainer').classList.add('d-none'); 386 document.getElementById('closesearchicon').classList.add('d-none'); 387 document.getElementById('searchicon').classList.remove('d-none'); 388 document.getElementById('search').value = ''; 389 document.querySelectorAll('.srcmenuhiden').forEach(element => { 390 element.classList.remove('d-none'); 391 }); 392 }); 393</script>
393 394<main> 395 <div class="hero-container"> 396 <img src="https://itb.edu.ec/statics/imagenes/instituto/porqueitb.webp" alt="Mensaje del Rector" width="1905" height="450" loading="eager" fetchpriority="high" class="hero-image"> 397 <div class="hero-text" aria-hidden="true"></div> 398 </div> 399 <div class="container-fluid"> 400 <div class="container py-5"> 401 <div class="row"> 402 <div class="anim texto mb-3" data-animate="fadeInUp"> 403 <h6 class="mb-3 fw-bold text-uppercase text-center titulo-encabezado">Instituto</h6> 404 <h3 class="mb-2 titulo-seccion text-center">Mensaje de la Rectora</h3> 405 </div> 406 <div class="container mb-5"> 407 <div class="mensaje clearfix my-5 font-sans"> 408 <div class="float-md-start mx-auto me-md-4 mb-md-3 mb-4 position-relative anim" data-animate="fadeIn"> 409 <div class="shadow rounded overflow-hidden position-relative"> 410 <img src="https://itb.edu.ec/statics/imagenes/instituto/rectora.webp" alt="Imagen de la Rectora" class="img-fluid w-100"> 411 <div class="position-absolute bottom-0 end-0 translate-middle rounded p-3" style="z-index: 1; width: 70%; height: 70%;"></div> 412 </div> 413 <span class="badge bg-verde position-absolute top-0 end-0 mt-3 me-3 px-3 py-2"> 414 PhD. Elena Tolozano Benites 415 </span> 416 </div> 417 <h4 class="border-start border-4 ps-3 mb-4 texto anim" data-animate="fadeInRight">Comunidad Educativa Bolivariana:</h4> 418 <div class="text-justify anim" data-animate="fadeInRight"> 419 <p class="lh-lg texto"> 420 En este mensaje me permito expresar el arduo trabajo realizado en el año, el cual, nos ha permitido consolidar nuestras funciones sustantivas y de apoyo y continuar con el crecimiento institucional socialmente reconocido que nos ha convertido en un referente nacional e internacional en la formación técnica, tecnológica y tecnológica universitaria. 421 </p> 422 <p class="lh-lg texto"> 423 Pero estos logros no serían posible sin el trabajo, el compromiso y la responsabilidad de nuestro equipo, el que con orgullo denominado “la familia bolivariana” que para quienes hacemos el ITB es mucho más que una expresión, es el sentido de pertenencia y participación activa de cada uno de nuestros colaboradores en los logros y responsabilidades que representa la formación integral de profesionales. 424 </p> 425 <p class=" lh-lg texto"> 426 En este mensaje quiero dar las gracias a nuestros profesores, personal administrativo y de apoyo, directivos y estudiantes, estos últimos que son nuestra razón de ser y hacia donde están dirigidos todos nuestros esfuerzos institucionales. Con orgullo podemos decir, que el año en el cual rendimos cuentas en este informe, ha sido el resultado de un proceso de planificación que demuestra, que somos la mejor institución de formación técnica y tecnológica del país, nuestros procesos académicos, bienestar institucional, investigación y vinculación con la sociedad, constituyen el hilo conductor de este informe y el centro de nuestros procesos. 427 </p> 428 </div> 429 </div> 430 <div class="bg-light rounded p-4 text-justify anim" data-animate="fadeInUp"> 431 <p class=" lh-lg texto"> 432 Sirvan estos resultados para seguir trabajando en el próximo año, a la luz de una nueva planificación estratégica, que permita la consolidación de nuestros procesos y sigamos demostrando que como institución somos imparables. Ofreciendo al Ecuador el profesional integro que necesita, nuestro paí
432s y el mundo, con un sentido ciudadano profundo y preparado para enfrentar los desafíos sociales y naturales que se avecinan. Termino este mensaje, con el sentir de pertenencia de la familia Bolivariana: 433 </p> 434 <blockquote class="block border-start border-5 ps-4 mt-4 position-relative"> 435 <i class="fas fa-quote-left position-absolute top-0 start-0 text-naranja opacity-25 fs-1"></i> 436 <p class="fst-italic text-muted texto"> 437 "Pertenecer es una forma de estar con, de relacionarnos con nosotros mismos, con los demás y con el mundo que nos rodea, en nuestros sombríos momentos de desconexión puede ser reconfortante recordar que no solo pertenecemos inherentemente por la virtud de estar aquí ahora, sino que los brazos donde buscamos pertenecer se abren mucho más de los que imaginamos" 438 </p> 439 <footer class="blockquote-footer text-end text-secondary fw-semibold texto">Pogosyan, 2021</footer> 440 </blockquote> 441 </div> 442 </div> 443 </div> 444 </div> 445 </div> 446 <div class="links-float" id="links-float" data-wow-delay="0.1s"> 447 <div class="card rounded-0"> 448 <div class="card-header rounded-0" data-open="true"> 449 <i class="fas"></i> 450 </div> 451 <div class="list-group rounded-0"> 452 <a href="https://itb.edu.ec/Sugerencia" 453 target="_blank" 454 class="list-group-item list-group-item-action rounded-0"> 455 <span class="tooltip-text">Sugerencias</span> 456 <i class="fas fa-envelope"></i> 457 </a> 458 <a href="https://itb.edu.ec/Videos" 459 target="_blank" 460 class="list-group-item list-group-item-action"> 461 <span class="tooltip-text">Videos</span> 462 <i class="fab fa-youtube"></i> 463 </a> 464 <a href="https://itb.edu.ec/Gym" class="list-group-item list-group-item-action"> 465 <span class="tooltip-text">Gimnasio</span> 466 <i class="fas fa-dumbbell"></i> 467 </a> 468 <a href="https://itb.edu.ec/Actividades" class="list-group-item list-group-item-action"> 469 <span class="tooltip-text">Actividades</span> 470 <i class="far fa-newspaper"></i> 471 </a> 472 <a href="https://conducecuador.itb.edu.ec/" target="_blank" class="list-group-item list-group-item-action"> 473 <span class="tooltip-text">Escuela de conducción</span> 474 <i class="fas fa-car"></i> 475 </a> 476 </div> 477 </div> 478 </div> 479 <div class="img-foother"> 480 <img src="https://itb.edu.ec/statics/imagenes/plantilla/ruedabg.gif" alt="Pie de página" loading="lazy" width="80" height="100"> 481 </div> 482 <div class="container-fluid text-white-50 footer pt-5 wow fadeIn" data-wow-delay="0.1s"> 483 <div class="container py-5"> 484 <div class="row g-5"> 485 <div class="col-lg-4 col-md-6"> 486 <img src="https://itb.edu.ec/statics/imagenes/plantilla/logo-white.png" 487 class="img-fluid mb-4" 488 style="max-height:85px" 489 alt="Logo Itb Pie de página"> 490 <p class="mb-2 texto"><i class="fa fa-map-marker-alt me-3"></i> PBX : (04) 5000175 - 2307028 - 5002164 - 3727040</p> 491 <p class="mb-2 texto"><i class="fa fa-phone-alt me-3"></i> 1800 ITB-ITB: 482-482 </p> 492 <p class="mb-2"> 493 <i class="fa fa-envelope me-3"></i> 494 <a href="mailto:[email protected]" data-bs-toggle="tooltip" data-bs-placement="top" title="Novedades Generales" aria-label="Correo InformacÃon/Novedades generales">info</a> | 495 <a href="mailto:[email protected]" data-bs-toggle="tooltip" data-bs-placement="top" title="Novedades Tecnologías" aria-label="Correo Soporte">soporte</a> 496 </p> 497 <div class="d-flex pt-2"> 498 <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp" 499 style="animation-delay:0.1s;" 500 href="https://twitter.com/ITBolivariano" 501 target="_blank" aria-label="Boton Ir a Twiter ITB"><i class="fa-brands fa-x-twitter"></i></a> 502 <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp" 503 style="animation-delay:0.3s;" 504 href="https://www.facebook.com/itb.edu.ec" 505 target="_blank" aria-label="Boton Ir a Facebook ITB"><i class="fab fa-facebook-f"></i></a> 506 <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp" 507 style="animation-delay:0.6s;" 508 href="https://itb.edu.ec/" 509 aria-label="Boton Ir a Google Plus ITB"><i class="fab fa-google-plus-g"></i></a> 510 <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp" 511 style="animation-delay:0.9s;" 512 href="https://www.youtube.com/channel/UCc8EQVMtBoGCIWrnLKkG0cw" 513 target="_blank" aria-label="Boton ir a Youtube ITB"><i class="fab fa-youtube"></i></a> 514 <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp" 515 style="animation-delay:1.2s;" 516 href="https://www.instagram.com/itb_ec/?hl=es-la" 517 target="" aria-label="Boton ir a Instagram ITB"><i class="fab fa-instagram"></i></a> 518 <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp" 519 style="animation-delay:1.5s;" 520 href="https://www.tiktok.com/@itb_ec?lang=es" 521 target="" aria-label="Boton ir a Tiktok ITB"><i class="fab fa-tiktok"></i></a> 522 </div> 523 </div> 524 <div class="col-lg-4 col-md-6"> 525 <a class="btn btn-link text-white-50 texto" href="https://itb.edu.ec/Beca"> Becas</a> 526 <a class="btn btn-link text-white-50 texto" href="https://buckcenter.edu.ec/" target="_blank"> Buckingham English Center S.A</a> 527 <a class="btn btn-link text-white-50 texto" href="https://conducecuador.itb.edu.ec/" target="_blank"> Conduce Ecuador</a> 528 <a class="btn btn-link text-white-50 texto" href="https://itb.edu.ec/Oferta_academica"> Oferta académica</a> 529 <a class="btn btn-link text-white-50 texto" href="https://itb.edu.ec/Directorio"> Directorio Telefoníco</a> 530 <a class="btn btn-link text-white-50 texto" href="https://itb.edu.ec/Vinculacion"> Vinculación</a> 531 <a class="btn btn-link text-white-50 texto" href="https://itb.edu.ec/Biblioteca_virtual"> Efemérides</a> 532 </div> 533 <div class="col-lg-4 col-md-6"> 534 <div class="row"> 535 <div class="col-4"> 536 <ul class="nav flex-column nav-tabs border-0" id="mapaTab" role="tablist"> 537 <li class="nav-item" role="presentation" onclick="cargaMapas()">
538 <span class="active" id="matriz1-tab" data-bs-toggle="tab" data-bs-target="#matriz1" type="button" role="tab" aria-controls="matriz1" aria-selected="true" aria-label="Dirección Sede Matriz"> Matriz</span> 539 </li> 540 <li class="nav-item" role="presentation" onclick="cargaMapas()"> 541 <span class="" id="matriz2-tab" data-bs-toggle="tab" data-bs-target="#matriz2" type="button" role="tab" aria-controls="matriz2" aria-selected="false" aria-label="Dirección Sede Boyacá"> Boyacá</span> 542 </li> 543 <li class="nav-item" role="presentation" onclick="cargaMapas()"> 544 <span class="" id="matriz3-tab" data-bs-toggle="tab" data-bs-target="#matriz3" type="button" role="tab" aria-controls="matriz3" aria-selected="false" aria-label="Dirección Sede Rocafuerte"> Rocafuerte</span> 545 </li> 546 <li class="nav-item " role="presentation" onclick="cargaMapas()"> 547 <span class="" id="matriz4-tab" data-bs-toggle="tab" data-bs-target="#matriz4" type="button" role="tab" aria-controls="matriz4" aria-selected="false" aria-label="Dirección Sede Atarazana"> Teresa Benites Ayala</span> 548 </li> 549 </ul> 550 </div> 551 <div class="col-8"> 552 <div class="tab-content" id="mapTabContent"> 553 <div class="tab-pane fade show active" id="matriz1" role="tabpanel" aria-labelledby="matriz1-tab"> 554 <div class="card bg-transparent mx-lg-3" style="width:16rem;"> 555 <div id="frmmatriz1"><img src="https://itb.edu.ec/statics/imagenes/plantilla/mapa.jpg" class="card-img-top"></div> 556 <div class="card-body"> 557 <p class="card-text texto">Víctor Manuel Rendón 236 y Pedro Carbo.</p> 558 </div> 559 </div> 560 </div> 561 <div class="tab-pane fade" id="matriz2" role="tabpanel" aria-labelledby="matriz2-tab"> 562 <div class="card bg-transparent mx-lg-3" style="width:16rem;"> 563 <div id="frmmatriz2"></div> 564 <div class="card-body"> 565 <p class="card-text texto">Padre Solano No.324 y Boyacá Esquina.</p> 566 </div> 567 </div> 568 </div> 569 <div class="tab-pane fade" id="matriz3" role="tabpanel" aria-labelledby="matriz3-tab"> 570 <div class="card bg-transparent mx-lg-3" style="width:16rem;"> 571 <div id="frmmatriz3"></div> 572 <div class="card-body"> 573 <p class="card-text texto">Roca #101 y Pedro Carbo Esquina.</p> 574 </div> 575 </div> 576 </div> 577 <div class="tab-pane fade" id="matriz4" role="tabpanel" aria-labelledby="matriz4-tab"> 578 <div class="card bg-transparent mx-lg-3" style="width:16rem;"> 579 <div id="frmmatriz4"></div> 580 <div class="card-body"> 581 <p class="card-text texto">Avenida Pedro Menéndez Gilbert y callejón.</p> 582 </div> 583 </div> 584 </div> 585 </div> 586 </div> 587 </div> 588 </div> 589 </div> 590 </div> 591 <div class="container"> 592 <div class="copyright wow animate__animated animate__slideInRight"> 593 <div class="d-flex flex-wrap align-items-center"> 594 <div class="flex-grow-1 text-center text-lg-start mb-2 mb-lg-0 pe-3"> 595 © 2025<a href="#" class="text-decoration-none"> TIC - ITB</a> | Todos los derechos reservados 596 </div> 597 <div class="d-flex flex-column flex-lg-row align-items-center gap-3 me-lg-4"> 598 <div class="footer-menu"> 599 <a href="javascript:void(0);" aria-label="Total de visitas 9 M"><span class="pe-1"><i class="fas fa-users text-white"></i></span>Visitas</a> 600 <a href="javascript:void(0);" data-bs-toggle="tooltip" 601 data-bs-placement="top" 602 title="Total de visitas 9 M" 603 data-purecounter-start="0" 604 data-purecounter-end="9" 605 data-purecounter-duration="4" 606 class="purecounter">9 M</a> 607 </div> 608 </div> 609 </div> 610 </div> 611 </div> 612 </div> 613 <div id="discapacidad" class="discapacidad"> 614 <i class="fas fa-wheelchair"></i> 615 </div> 616 <div id="contenMenudisc" class="conten-menu-discapaciada" style="display:none;"> 617 <div class="card border-0 rounded-0 shadow"> 618 <div class="card-header rounded-0"> 619 <h5 class="mb-0 text-center">Menú de Accesibilidad</h5> 620 </div> 621 <div id="tblMenuDisc" class="card-body pb-0"> 622 <div class="row justify-content-center"> 623 <div class="col-6 mb-2 d-flex align-items-center justify-content-center position-relative"> 624 <a onclick="SetColor();" id="menuColorbtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2"><i class='fas fa-palette me-2 mb-2'></i> <span>Escala de Grises</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a> 625 </div> 626 <div class="col-6 mb-2 d-flex align-items-center justify-content-center position-relative">
627 <a onclick="ChngCursor();" id="menuCursorBtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2"><i class='fas fa-mouse-pointer me-2 mb-2'></i> <span>Ampliar Cursor</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a> 628 </div> 629 <div class="col-6 mb-2 d-flex align-items-center justify-content-center position-relative"> 630 <a onclick="NarradorOff();" id="menuSpeackBtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2"><i class='fas fa-volume-mute me-2 mb-2'></i> <span>Narrador</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a> 631 </div> 632 <div class="col-6 d-flex align-items-center justify-content-center position-relative"> 633 <a onclick="ResaltLink();" id="menuLinksBtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2"><i class='fas fa-link me-2 mb-2'></i> <span>Destacar Links</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a> 634 </div> 635 <div class="col-6 d-flex align-items-center justify-content-center position-relative"> 636 <a onclick="ChngFuente();" id="menuFuenteBtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2"><i class='fas fa-text-height me-2 mb-2'></i> <span>Ampliar Texto</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a> 637 </div> 638 <div class="col-6 d-flex align-items-center justify-content-center position-relative"> 639 <a onclick="ResetFuente();" id="menuReseTxtBtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2 d-none"><i class='fas fa-undo me-2 mb-2'></i> <span>Resetear Fuente</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a> 640 </div> 641 <div class="col-12 my-2"> 642 <a onclick="ResetMenu();" id="menuResetBtn" class="btn h-100 w-100 d-flex justify-content-center align-items-center font-weight-bold d-none text-white py-2"><i class="fa-solid fa-rotate me-2" style="font-size: unset !important;"></i> <span>Restablecer Todo</span></a> 643 </div> 644 </div> 645 </div> 646 </div> 647 </div> 648 <div id="whasapicon" class="whasapicon"> 649 <a href="https://api.whatsapp.com/send?phone=5930968695213&text='Consulta de Información desde Página Web'" target="_blank" aria-label="Contactar por WhatsApp"> 650 <i class="fab fa-whatsapp"></i> 651 </a> 652 </div> 653 <span onclick="goToTop()" id="goTopBtn"> <i class="fa-solid fa-arrow-up fa-2xl"></i> </span> 654 655 <div class="content-cookies fixed-bottom" style="display: none"> 656 <div class="card shadow-lg px-4 py-4 py-sm-0 bg-transparent"> 657 <div class="card-body"> 658 <div class="row justify-content-evenly align-items-center"> 659 <div class="col-sm-6 col-lg-8 col-xl-6 col-xxl-5"> 660 <p class="mb-0 texto">Este sitio web utiliza cookies propias y de terceros para ofrecer una mejor experiencia. Al continuar su navegación, autoriza su uso de acuerdo a nuestra PolÃtica de Privacidad y manejo de cookies.</p> 661 <a href="https://itb.edu.ec/Politicas/cookies" class="text-decoration-underline text-naranja texto link">Revisar polÃtica</a> 662 </div> 663 <div class="col-sm-4 col-lg-3 col-xl-5 col-xxl-4 mt-4 mt-sm-0"> 664 <div class="d-flex flex-xl-row flex-column w-100 gap-2"> 665 <a href="javascript:void(0);" onclick="aceptarCookies();" class="btn w-100 rounded-pill texto bg-naranja">Aceptar todo</a> 666 <a href="javascript:void(0);" onclick="rechazarCookies();" class="btn w-100 rounded-pill texto btn-light">Rechazar todo</a> 667 <a data-bs-toggle="modal" data-bs-target="#cookiesModal" class="btn w-100 rounded-pill texto btn-light">Configuración</a> 668 </div> 669 </div> 670 </div> 671 </div> 672 </div> 673 </div> 674 675 <div class="modal fade" id="cookiesModal" tabindex="-1" aria-labelledby="cookiesModalLabel" aria-hidden="true"> 676 <div class="modal-dialog modal-lg"> 677 <div class="modal-content border-0 bg-transparent texto"> 678 <div class="modal-header justify-content-center"> 679 <h5 class="modal-title" id="cookiesModalLabel">Configuración de cookies</h5> 680 </div> 681 <div class="modal-body p-5 pb-0 bg-white"> 682 <div class="form-check form-switch mb-4"> 683 <input class="form-check-input" type="checkbox" id="todasopcionales"> 684 <label class="form-check-label" for="todasopcionales">Seleccionar todas las cookies opcionales</label> 685 </div> 686 <div class="form-check form-switch"> 687 <input class="form-check-input" type="checkbox" id="necesarias" checked disabled> 688 <label class="form-check-label" for="necesarias">Necesarias (siempre activas)</label> 689 <p>Estas cookies son esenciales para el funcionamiento básico del sitio web. Permiten funciones como la navegación, el acceso a áreas seguras y la correcta visualización del contenido. Sin estas cookies, el sitio no puede funcionar correctamente.</p> 690 </div> 691 <div class="form-check form-switch"> 692 <input class="form-check-input" type="checkbox" id="analiticas"> 693 <label class="form-check-label" for="analiticas">AnalÃticas</label> 694 <p>Estas cookies nos ayudan a comprender cómo los visitantes interactúan con el sitio web mediante la recopilación de información de forma anónima. Usamos estos datos para mejorar continuamente la experiencia del usuario.</p> 695 </div> 696 <div class="form-check form-switch"> 697 <input class="form-check-input" type="checkbox" id="preferencias"> 698 <label class="form-check-label" for="preferencias">De preferencias</label> 699 <p>Estas cookies permiten recordar información que cambia la forma en que el sitio se comporta o
699se muestra, como el menú de accesibilidad.</p> 700 </div> 701 </div> 702 <div class="d-flex justify-content-end gap-2 border-top bg-white p-4"> 703 <button type="button" class="btn rechazar px-3 py-2" onclick="rechazarCookies()" data-bs-dismiss="modal">Rechazar todo</button> 704 <button type="button" class="btn guardar px-3 py-2" onclick="guardarConsentimiento()" data-bs-dismiss="modal">Guardar cambios</button> 705 </div> 706 <div class="modal-footer justify-content-center border-0"> 707 <a type="button" class="btn" data-bs-dismiss="modal" aria-label="Clic para cerrar"><i class="fas fa-times text-white"></i></a> 708 </div> 709 </div> 710 </div> 711 </div> 712 <!-- Bot --> 713 <df-messenger 714 chat-icon="https://itb.edu.ec/statics/imagenes/main/chat.png" 715 intent="WELCOME" 716 chat-title="Agente Virtual ITB-Bot" 717 agent-id="39adfdb1-3055-4fa6-affe-28e150469441" 718 language-code="es" 719 ></df-messenger> 720 <div class="btn-bot" id="chatbot-btn"> 721 <img class="img-fluid" src="https://itb.edu.ec/statics/imagenes/main/chatbot.png"> 722 </div> 723 <style> 724 df-messenger { 725 --df-messenger-bot-message: #f5f5f5; 726 --df-messenger-button-titlebar-color: #2B4781; 727 --df-messenger-chat-background-color: #fafafa; 728 --df-messenger-send-icon: #0E1A39; 729 } 730 </style> 731</main> 732
733<script src="https://itb.edu.ec/statics/vendor/bootstrap523/js/bootstrap.bundle.min.js"></script>
vendor: 1 bytes, line 733
733
734<script src="https://itb.edu.ec/statics/js/jquery371.min.js"></script>
vendor: 1 bytes, line 734
734
735<script src="https://itb.edu.ec/statics/js/main.js"></script>
vendor: 1 bytes, line 735
735
736<script src="https://itb.edu.ec/statics/js/lazysizes.min.js"></script>
vendor: 1 bytes, line 736
736
737<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
737 738
739<script src="https://itb.edu.ec/statics/vendor/gsap-public/minified/gsap.min.js"></script>
vendor: 1 bytes, line 739
739
740<script src="https://itb.edu.ec/statics/vendor/gsap-public/minified/ScrollTrigger.min.js"></script>
vendor: 1 bytes, line 740
740
741<script src="https://itb.edu.ec/statics/vendor/gsap-public/minified/ScrollSmoother.min.js"></script>
741 742<!-- Bot -->
743<script src="https://www.gstatic.com/dialogflow-console/fast/messenger/bootstrap.js?v=1"></script>
743 744 745 <style> 746 .hero-container {position: relative;margin-top: 100px;contain: paint;} 747 .hero-image {width: 100%;height: 450px;aspect-ratio: 16/9;object-fit: cover;will-change: transform; object-position: center 0%;} 748 .hero-text {position: absolute;inset: 0;background: linear-gradient(135deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.5) 100%);pointer-events: none;} 749 /*Cambiar segun la imagen (object position)*/ 750 @media (min-width: 768px) and (max-width: 1399px) { 751 .hero-image {object-position: center;} 752 } 753 @media (max-width: 767px) { 754 .hero-container {margin-top: 70px;height: 350px;} 755 .hero-image {height: 350px;object-position: center} 756 } 757 .mensaje .border-start{border-color: var(--naranja) !important; font-family: "Oswald-Medium", sans-serif; color: #0E1A39} 758 .mensaje h4{margin-left: 448px;} 759 .mensaje img{max-width: 425px;} 760 @media (min-width: 300px) and (max-width: 767px) { 761 .mensaje h4{margin-left: 0px} 762 } 763 .block {border-left: 5px solid var(--naranja) !important;} 764 </style> 765
765<script> 766 gsap.registerPlugin(ScrollTrigger); 767 let hideVideo = getCookie("hideVideo") || !1; 768 let loadContent = !0; 769 window.addEventListener("load", function () { 770 InitMask(); 771 }); 772 function InitMask(){ 773 const overlay = document.getElementById("overlay"); 774 const preloader = document.getElementById("preloader"); 775 const body = document.getElementById("body"); 776 const contentpreloader = document.getElementById("content-preloader"); 777 const tl = gsap.timeline({ ease: "power2.out" }); 778 if (prelodmask == 1) { 779 tl.add(() => { 780 if (preloader) preloader.style.display = "none"; 781 }, 0.3) 782 .add(() => { 783 StartAnimScroll(); 784 }, 0.9) 785 .add(() => { 786 if (overlay) { 787 overlay.style.display = "none"; 788 body.style.overflow = "auto"; 789 } 790 }, 1.5); 791 } else if (prelodmask == 0) { 792 tl.add(() => { 793 if (preloader) preloader.style.display = "none"; 794 }, 0.3) 795 .add(() => { 796 if (contentpreloader) contentpreloader.style.display = "none"; 797 body.style.overflow = "auto"; 798 StartAnimScroll(); 799 }, 1.5); 800 } 801 } 802 window.addEventListener("scroll", (e) => { 803 if (window.scrollY > 200 && loadContent) { 804 loadContent = !1; 805 } 806 }); 807 function StartAnimScroll() { 808 document.querySelectorAll(".anim").forEach((el) => { 809 if (el.hasAttribute("data-animate")) { 810 const animClass = "animate__" + el.getAttribute("data-animate"); 811 ScrollTrigger.create({ trigger: el, start: "top 95%", onEnter: () => el.classList.add("animate__animated", animClass), onLeaveBack: () => el.classList.remove("animate__animated", animClass), once: !1 }); 812 } 813 }); 814 } 815 </script>
vendor: 1 bytes, line 815
815
816<script> 817 // Variables globales 818 var fontSize = [1, 3, 6, 12]; 819 var ultimoElementoNarrado = null; 820 var reproduciendo = false; 821 // **************** Funcionalidad de escala de grises **************** 822 function SetColor(){ 823 var current = getCookie('Color'); 824 var newValue = (current === '1') ? '0' : '1'; 825 setCookie('Color',newValue,1); 826 getColor(); 827 } 828 function getColor() { 829 if(getCookie('Color') === '1') { 830 $("html").addClass("gris"); 831 $("#menuColorbtn").html("<i class='fas fa-palette me-2 mb-2'></i><span>Agregar Color</span><i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>"); 832 document.getElementById('menuColorbtn').classList.add('active'); 833 } else { 834 $("html").removeClass("gris"); 835 $("#menuColorbtn").html("<i class='fas fa-palette me-2 mb-2'></i> <span>Escala de Grises</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>"); 836 document.getElementById('menuColorbtn').classList.remove('active'); 837 } 838 getBtnReset(); 839 } 840 // **************** Funcionalidad de tamaño de fuente **************** 841 function ChngFuente(){ 842 var aumentar = 1; 843 var indice = 0; 844 if(getCookie('fuente')) { 845 var fuente = getCookie('fuente').split(":"); 846 aumentar = parseInt(fuente[0]); 847 indice = parseInt(fuente[1]); 848 } 849 if(aumentar === 1) { 850 indice = indice + 1; 851 aumentar = (indice >= fontSize.length) ? 0 : 1; 852 } else { 853 indice = indice - 1; 854 aumentar = (indice === 0) ? 1 : 0; 855 } 856 indice = (indice >= fontSize.length) ? fontSize.length - 1 : indice; 857 indice = (indice < 0) ? 0 : indice; 858 setCookie('fuente', aumentar + ':' + indice, 1); 859 getFuente(); 860 } 861 function getFuente() { 862 if(getCookie('fuente')) { 863 var elementos = document.querySelectorAll("h1, h2, h3, h4, h5, h6, p, li, a, small, span"); 864 var fuente = getCookie('fuente').split(":"); 865 var indice = parseInt(fuente[1]); 866 867 for (var i = 0; i < elementos.length; i++) { 868 var sizeActual = parseInt(window.getComputedStyle(elementos[i]).fontSize); 869 var newSize = (fuente[0] === '1') ? 870 parseInt(sizeActual + fontSize[indice]): 871 parseInt(sizeActual - fontSize[indice]); 872 elementos[i].style.fontSize = newSize + "px"; 873 } 874 if(fuente[0] === '1') { 875 $("#menuFuenteBtn").html("<i class='fas fa-text-height me-2'></i> <span>Ampliar Texto</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>"); 876 } else { 877 $("#menuFuenteBtn").html("<i class='fas fa-text-height me-2'></i> <span>Reducir Texto</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>"); 878 } 879 if(indice === 0) { 880 $("#menuFuenteBtn").html("<i class='fas fa-text-height me-2'></i> <span>Ampliar Texto</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>"); 881 } 882 if(indice > 0) { 883 $("#menuReseTxtBtn").removeClass("d-none"); 884 } else { 885 $("#menuReseTxtBtn").addClass("d-none"); 886 } 887 $("#menuFuenteBtn").toggleClass("active", indice > 0); 888 getBtnReset(); 889 } 890 } 891 function ResetFuente() { 892 eraseCookie('fuente'); 893 window.location.reload(); 894 } 895 // **************** Funcionalidad de cursor **************** 896 function ChngCursor() { 897 var current = getCookie('cursor'); 898 var newValue = (current === '1') ? '0' : '1'; 899 setCookie('cursor', newValue, 1); 900 getCursor(); 901 } 902 function getCursor() { 903 if(getCookie('cursor') === '1') { 904 $("html").addClass("cursorlg"); 905 $("#menuCursorBtn").html("<i class='fas fa-mouse-pointer me-2 mb-2'></i> <span>Normal Cursor</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>"); 906 $("#menuCursorBtn").addClass("active"); 907 } else { 908 $("html").removeClass("cursorlg"); 909 $("#menuCursorBtn").html("<i class='fas fa-mouse-pointer me-2 mb-2'></i> <span>Ampliar Cursor</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>"); 910 $("#menuCursorBtn").removeClass("active"); 911 } 912 getBtnReset(); 913 } 914 // **************** Funcionalidad de resaltar links **************** 915 function ResaltLink() { 916 var current = getCookie('links'); 917 var newValue = (current === '1') ? '0' : '1';
918 setCookie('links', newValue, 1); 919 getLinks(); 920 } 921 function getLinks() { 922 if(getCookie('links') === '0') { 923 $("#menuLinksBtn") 924 .html("<i class='fas fa-link me-2 mb-2'></i> <span>Normal Links</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>") 925 .addClass("active"); 926 $("a").addClass("resaltado"); 927 } else { 928 $("#menuLinksBtn") 929 .html("<i class='fas fa-link me-2 mb-2'></i> <span>Destacar Links</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>") 930 .removeClass("active"); 931 $("a").removeClass("resaltado"); 932 } 933 getBtnReset(); 934 } 935 // **************** Funcionalidad de narrador **************** 936 function NarradorOff() { 937 var current = getCookie('narrador'); 938 var newValue = (current === 'si') ? 'no' : 'si'; 939 setCookie('narrador', newValue, 1); 940 recibirTexto(); 941 } 942 function recibirTexto() { 943 var puedeNarrar = getCookie('narrador') || 'no'; 944 if (puedeNarrar === 'si') { 945 $("#menuSpeackBtn") 946 .html("<i class='fas fa-volume-up me-2 mb-2'></i> <span>Narrador</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>") 947 .addClass("active"); 948 $(".texto").hover( 949 function() { 950 if (!reproduciendo && $(this).text() !== ultimoElementoNarrado) { 951 decir($(this).text()); 952 ultimoElementoNarrado = $(this).text(); 953 reproduciendo = true; 954 } 955 }, 956 function() { 957 if ($(this).text() === ultimoElementoNarrado) { 958 detenerReproduccion(); 959 } 960 } 961 ); 962 // Configurar eventos para imágenes con atributo alt 963 $("img[alt]").hover( 964 function() { 965 if (!reproduciendo && $(this).attr('alt') !== ultimoElementoNarrado) { 966 decir($(this).attr('alt')); 967 ultimoElementoNarrado = $(this).attr('alt'); 968 reproduciendo = true; 969 } 970 }, 971 function() { 972 if ($(this).attr('alt') === ultimoElementoNarrado) { 973 detenerReproduccion(); 974 } 975 } 976 ); 977 978 // Configurar eventos para elementos con aria-label 979 $("[aria-label]").hover( 980 function() { 981 if (!reproduciendo && $(this).attr('aria-label') !== ultimoElementoNarrado) { 982 decir($(this).attr('aria-label')); 983 ultimoElementoNarrado = $(this).attr('aria-label'); 984 reproduciendo = true; 985 } 986 }, 987 function() { 988 if ($(this).attr('aria-label') === ultimoElementoNarrado) { 989 detenerReproduccion(); 990 } 991 } 992 ); 993 994 } else { 995 $("#menuSpeackBtn") 996 .html("<i class='fas fa-volume-mute me-2 mb-2'></i> <span>Narrador</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>") 997 .removeClass("active"); 998 detenerReproduccion(); 999 } 1000 getBtnReset(); 1001 } 1002 function decir(texto) { 1003 var puedeNarrar = getCookie('narrador') || 'si'; 1004 if (puedeNarrar === 'si') { 1005 var mensaje = new SpeechSynthesisUtterance(texto); 1006 mensaje.lang = 'es-ES'; 1007 mensaje.onend = function() { 1008 reproduciendo = false; 1009 }; 1010 speechSynthesis.speak(mensaje); 1011 } 1012 } 1013 function detenerReproduccion() { 1014 speechSynthesis.cancel(); 1015 reproduciendo = false; 1016 } 1017 // **************** Funcionalidad de reset **************** 1018 function ResetMenu() { 1019 eraseCookie('Color'); 1020 eraseCookie('fuente'); 1021 eraseCookie('cursor'); 1022 eraseCookie('links'); 1023 eraseCookie('narrador'); 1024 window.location.reload(); 1025 } 1026 function getBtnReset() { 1027 var showReset = false;
1028 if(getCookie('Color') || getCookie('fuente') || getCookie('cursor') || getCookie('links') || getCookie('narrador')) { 1029 showReset = true; 1030 } 1031 1032 if(showReset) { 1033 $("#menuResetBtn").removeClass("d-none"); 1034 } else { 1035 $("#menuResetBtn").addClass("d-none"); 1036 } 1037 } 1038 // **************** Inicialización y eventos **************** 1039 $(document).ready(function(){ 1040 // Cargar configuraciones guardadas al iniciar 1041 getColor(); 1042 getFuente(); 1043 getCursor(); 1044 getLinks(); 1045 recibirTexto(); 1046 getBtnReset(); 1047 // Mostrar/ocultar menú al hacer clic en el botón de discapacidad 1048 $(".discapacidad").click(function(e){ 1049 e.stopPropagation(); 1050 $("#contenMenudisc").fadeToggle(300); 1051 }); 1052 // Cerrar menú solo al hacer clic en el botón de cerrar 1053 $("#btnclosemenu").click(function(e){ 1054 e.stopPropagation(); 1055 $("#contenMenudisc").hide(); 1056 }); 1057 // Prevenir que el menú se cierre al hacer clic en una opción 1058 $("#tblMenuDisc li").click(function(e){ 1059 e.stopPropagation(); // Evita que el evento se propague al documento 1060 // El menú permanecerá abierto después de la selección 1061 }); 1062 // Cerrar menú al hacer clic fuera de él 1063 $(document).click(function(e){ 1064 if (!$(e.target).closest("#contenMenudisc").length && !$(e.target).closest(".discapacidad").length){ 1065 $("#contenMenudisc").hide(); 1066 } 1067 }); 1068 // Menú de busqueda de carreras 1069 function debounce(func,wait){ 1070 let timeout; 1071 return function() { 1072 const context = this, args = arguments; 1073 clearTimeout(timeout); 1074 timeout = setTimeout(() => func.apply(context, args), wait); 1075 }; 1076 } 1077 $("#search").on("input",debounce(function(){ 1078 const listaSugerencia = $("#suggestions"); 1079 const animclase = "animate__bounceIn"; 1080 listaSugerencia.hide(); 1081 let query = $(this).val(); 1082 1083 if(listaSugerencia.hasClass(animclase)){ 1084 listaSugerencia.removeClass('animate__animated'); 1085 listaSugerencia.removeClass(animclase); 1086 } 1087 1088 if(query.length > 3){ 1089 $.ajax({ 1090 type: 'POST', 1091 url: _root+'ajaxsapp/ajax', 1092 headers: {'X-Requested-With':'XMLHttpRequest'}, 1093 data: {action:'query_carrera',s:query }, 1094 success: function(data) { 1095 var array = eval(data); 1096 var listado = ""; 1097 $.each(array,function(i,fila){ 1098 const tipo = fila['online']?'Online':'Presencial'; 1099 listado += '<div class="card-lista d-flex align-items-center" data-url="'+_root+fila['url']+'">' + 1100 '<div class="flex-shrink-0">'+ 1101 '<img src="https://itb.edu.ec/'+fila['img']+'" width="50" alt="Carrera"></div>'+ 1102 '<div class="flex-grow-1 ms-3"><strong class="mb-1">'+fila['descripcion']+'</strong>'+ 1103 '</br> <small>'+tipo+'</small><small class="text-muted"> - '+fila['duracion']+'</small>'+ 1104 '</div></div>'; 1105 }); 1106 listaSugerencia.addClass('animate__animated'); 1107 listaSugerencia.addClass(animclase); 1108 listaSugerencia.html(listado).show(); 1109 }, 1110 error: function(xhr,status,error){ 1111 console.log(xhr); 1112 console.log(status); 1113 console.log(error); 1114 } 1115 }); 1116 } else { 1117 $("#suggestions").hide(); 1118 if(listaSugerencia.hasClass(animclase)){ 1119 listaSugerencia.removeClass('animate__animated'); 1120 listaSugerencia.removeClass(animclase); 1121 } 1122 } 1123 },500)); 1124 $(document).on("click",".card-lista",function(){ 1125 $("#search").val($(this).text()); 1126 const url = $(this).data('url'); 1127 if (url){ 1128 $("#content-preloader").removeClass("d-none"); 1129 window.location.href = url; 1130 } 1131 $("#suggestions").hide(); 1132 }); 1133 }); 1134 window.addEventListener('load',function(){
1135 // No todas las paginas incluyen estos elementos del preloader. 1136 const overlayEl = document.getElementById('overlay'); 1137 if (overlayEl) overlayEl.classList.add('overlay-efect'); 1138 const overlayColorEl = document.getElementById('overlaycolor'); 1139 if (overlayColorEl) overlayColorEl.classList.add('overlaycolor-efect'); 1140 const contentPreloaderEl = document.getElementById('content-preloader'); 1141 if (contentPreloaderEl) contentPreloaderEl.classList.add('d-none'); 1142 }); 1143 $("#mapTabContent").hover(function(){ cargaMapas(); }); 1144 $(".urlclic").click(function(){ 1145 const url = $(this).data('url'); 1146 if (url){ 1147 $("#content-preloader").removeClass("d-none"); 1148 window.location.href = url; 1149 } 1150 }); 1151 window.addEventListener('pageshow', function(event) { 1152 if (event.persisted) { 1153 // Mostrar preloader 1154 const preloader = document.getElementById('content-preloader'); 1155 if (preloader) { 1156 preloader.classList.remove('d-none'); 1157 } 1158 window.location.reload(); 1159 } 1160 }); 1161 1162 // **************** Sistema de gestión de cookies **************** 1163 1164 // Verificar y mostrar banner de cookies 1165 $(document).ready(function(){ 1166 if (!getCookie('politicacookies') && !getCookie('cookie_consent')) { 1167 $('.content-cookies').fadeIn(); 1168 } 1169 1170 $('#todasopcionales').change(function(){ 1171 const isChecked = $(this).prop('checked'); 1172 $('#analiticas').prop('checked', isChecked); 1173 $('#preferencias').prop('checked', isChecked); 1174 }); 1175 1176 $('#analiticas, #preferencias').change(function(){ 1177 const allChecked = $('#analiticas').prop('checked') && $('#preferencias').prop('checked'); 1178 $('#todasopcionales').prop('checked', allChecked); 1179 }); 1180 1181 cargarConfiguracionCookies(); 1182 }); 1183 1184 // Aceptar todas las cookies 1185 function aceptarCookies() { 1186 setCookie('politicacookies', '1', 365); 1187 setCookie('cookie_consent', 'all', 365); 1188 setCookie('cookie_analiticas', '1', 365); 1189 setCookie('cookie_preferencias', '1', 365); 1190 $('.content-cookies').fadeOut(); 1191 cargarAnaliticas(); 1192 cargarPreferencias(); 1193 activarMenuPreferencias(); 1194 } 1195 1196 // Rechazar todas las cookies opcionales 1197 function rechazarCookies() { 1198 setCookie('politicacookies', '1', 365); 1199 setCookie('cookie_consent', 'necessary', 365); 1200 eraseCookie('cookie_analiticas'); 1201 eraseCookie('cookie_preferencias'); 1202 $('.content-cookies').fadeOut(); 1203 limpiarCookiesAnaliticas(); 1204 detenerAnaliticas(); 1205 desactivarPreferencias(); 1206 1207 // Cerrar modal si está abierto 1208 $('#cookiesModal').modal('hide'); 1209 } 1210 1211 // Guardar configuración personalizada de cookies 1212 function guardarConsentimiento() { 1213 setCookie('politicacookies', '1', 365); 1214 const analiticas = $('#analiticas').prop('checked'); 1215 const preferencias = $('#preferencias').prop('checked'); 1216 if (analiticas && preferencias) { 1217 setCookie('cookie_consent', 'all', 365); 1218 } else if (!analiticas && !preferencias) { 1219 setCookie('cookie_consent', 'necessary', 365); 1220 } else { 1221 setCookie('cookie_consent', 'custom', 365); 1222 } 1223 if (analiticas) { 1224 setCookie('cookie_analiticas', '1', 365); 1225 cargarAnaliticas(); 1226 } else { 1227 eraseCookie('cookie_analiticas'); 1228 limpiarCookiesAnaliticas(); 1229 detenerAnaliticas(); 1230 } 1231 if (preferencias) { 1232 setCookie('cookie_preferencias', '1', 365); 1233 cargarPreferencias(); 1234 activarMenuPreferencias(); 1235 } else { 1236 eraseCookie('cookie_preferencias'); 1237 desactivarPreferencias(); 1238 } 1239 1240 $('.content-cookies').fadeOut(); 1241 } 1242 1243 function cargarConfiguracionCookies() { 1244 const analiticas = getCookie('cookie_analiticas'); 1245 const preferencias = getCookie('cookie_preferencias'); 1246 1247 $('#analiticas').prop('checked', analiticas === '1'); 1248 $('#preferencias').prop('checked', preferencias === '1'); 1249 1250 const allChecked = (analiticas === '1') && (preferencias === '1'); 1251 $('#todasopcionales').prop('checked', allChecked); 1252 1253 if (analiticas === '1') { 1254 cargarAnaliticas(); 1255 } 1256 if (preferencias === '1') { 1257 cargarPreferencias(); 1258 activarMenuPreferencias(); 1259 } else { 1260 desactivarMenuPreferencias(); 1261 } 1262 } 1263 1264 // Cargar scripts de analÃticas 1265 function cargarAnaliticas() { 1266 if (window.gtagLoaded) return; 1267 1268 // Google Analytics 1269 const script = document.createElement('script'); 1270 script.async = true; 1271 script.src = 'https://www.googletagmanager.com/gtag/js?i
1271d=AW-780440524'; 1272 document.head.appendChild(script); 1273 1274 window.dataLayer = window.dataLayer || []; 1275 function gtag(){ dataLayer.push(arguments); } 1276 window.gtag = gtag; 1277 gtag('js', new Date()); 1278 gtag('config', 'AW-780440524'); 1279 1280 // Facebook Pixel
vendor: 501 bytes, lines 1280-1289
1280 1281 !function(f,b,e,v,n,t,s){ 1282 if(f.fbq)return;n=f.fbq=function(){ n.callMethod ? n.callMethod.apply(n,arguments) : n.queue.push(arguments) }; 1283 if(!f._fbq)f._fbq=n; 1284 n.push=n;n.loaded=!0;n.version='2.0'; 1285 n.queue=[];t=b.createElement(e);t.async=!0; 1286 t.src=v;s=b.getElementsByTagName(e)[0]; 1287 s.parentNode.insertBefore(t,s) 1288 }(window, document,'script','https://connect.facebook.net/en_US/fbevents.js'); 1289 fbq('init', '
1289185165846907852
vendor: 47 bytes, lines 1289-1292
1289'); 1290 fbq('track', 'PageView'); 1291 1292
1292window.gtagLoaded = true; 1293 habilitarMapas(); 1294 // console.log('Cookies analÃticas activadas'); 1295 } 1296 1297 function detenerAnaliticas() { 1298 if (typeof gtag !== 'undefined') { 1299 gtag('consent', 'update', { 1300 ad_storage: 'denied', 1301 analytics_storage: 'denied' 1302 }); 1303 } 1304 if (typeof fbq !== 'undefined') { 1305 fbq('consent', 'revoke'); 1306 fbq = function () {}; 1307 } 1308 } 1309 1310 function limpiarCookiesAnaliticas() { 1311 eraseCookie('_fbp'); 1312 eraseCookie('_fbc'); 1313 eraseCookie('_gcl_au'); 1314 eraseCookie('_ga'); 1315 eraseCookie('_gid'); 1316 eraseCookie('_gat'); 1317 1318 // console.log('Cookies analÃticas eliminadas'); 1319 } 1320 1321 function cargarPreferencias() { 1322 getColor(); 1323 getFuente(); 1324 getCursor(); 1325 getLinks(); 1326 recibirTexto(); 1327 getBtnReset(); 1328 // console.log('Cookies de preferencias activadas'); 1329 } 1330 1331 function desactivarPreferencias() { 1332 eraseCookie('Color'); 1333 eraseCookie('fuente'); 1334 eraseCookie('cursor'); 1335 eraseCookie('links'); 1336 eraseCookie('narrador'); 1337 desactivarMenuPreferencias(); 1338 // console.log('Cookies de preferencias desactivadas'); 1339 } 1340 1341 function desactivarMenuPreferencias() { 1342 const menu = document.getElementById('tblMenuDisc'); 1343 if (!menu) return; 1344 1345 const items = menu.querySelectorAll('a[onclick]'); 1346 1347 items.forEach(item => { 1348 const originalOnclick = item.getAttribute('onclick'); 1349 item.setAttribute('data-original-onclick', originalOnclick); 1350 item.removeAttribute('onclick'); 1351 item.style.cursor = 'not-allowed'; 1352 item.style.opacity = '0.5'; 1353 1354 item.addEventListener('click', function(e) { 1355 e.preventDefault(); 1356 e.stopPropagation(); 1357 1358 const cookiesModal = new bootstrap.Modal(document.getElementById('cookiesModal')); 1359 cookiesModal.show(); 1360 }); 1361 }); 1362 } 1363 1364 function activarMenuPreferencias() { 1365 const menu = document.getElementById('tblMenuDisc'); 1366 if (!menu) return; 1367 1368 const items = menu.querySelectorAll('a[data-original-onclick]'); 1369 items.forEach(item => { 1370 const originalOnclick = item.getAttribute('data-original-onclick'); 1371 if (originalOnclick) { 1372 item.setAttribute('onclick', originalOnclick); 1373 item.removeAttribute('data-original-onclick'); 1374 } 1375 item.style.cursor = ''; 1376 item.style.opacity = ''; 1377 1378 const newItem = item.cloneNode(true); 1379 item.parentNode.replaceChild(newItem, item); 1380 }); 1381 } 1382 1383 function habilitarMapas() { 1384 window.mapasifrm = 0; 1385 // console.log('Mapas habilitados para carga'); 1386 } 1387 1388 $(document).ready(function() { 1389 const necesarias = document.getElementById('necesarias'); 1390 const labelNecesarias = document.querySelector("label[for='necesarias']"); 1391 1392 if (necesarias) { 1393 necesarias.addEventListener('click', e => e.preventDefault()); 1394 necesarias.addEventListener('keydown', e => e.preventDefault()); 1395 } 1396 if (labelNecesarias) { 1397 labelNecesarias.addEventListener('click', e => e.preventDefault()); 1398 } 1399 }); 1400 1401 // Para el chatbot 1402 $('#chatbot-btn').hover(function() { 1403 $(this).hide(); 1404 }); 1405 $('df-messenger').mouseleave(function() { 1406 $('#chatbot-btn').show(); 1407 }); 1408
1409 window.addEventListener('dfMessengerLoaded', function() { 1410 const dfMessenger = document.querySelector('df-messenger'); 1411 const shadowRoot = dfMessenger.shadowRoot; 1412 const style = document.createElement('style'); 1413 style.textContent = ` 1414 button#widgetIcon { 1415 width: 70px !important; 1416 height: 70px !important; 1417 bottom: -5px !important; 1418 } 1419 button#widgetIcon .df-chat-icon{ 1420 width: 50px !important; 1421 height: 50px !important; 1422 } 1423 button#widgetIcon div #closeSvg{ 1424 left: 23px !important; 1425 top: 23px !important; 1426 } 1427 `; 1428 shadowRoot.appendChild(style); 1429 }); 1430 1431 const button = document.getElementById('chatbot-btn'); 1432 button.classList.add('bounce'); 1433 setTimeout(() => { 1434 button.classList.remove('bounce'); 1435 }, 1000); 1436 function animateButton() { 1437 const button = document.getElementById('chatbot-btn'); 1438 button.classList.add('animate'); 1439 setTimeout(() => { 1440 button.classList.remove('animate'); 1441 }, 2000); 1442 } 1443 setInterval(animateButton, 8000); 1444</script>
1444 1445</body> 1446</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.