{"id":62387,"date":"2026-09-28T16:40:28","date_gmt":"2026-09-28T23:40:28","guid":{"rendered":"https:\/\/enableit.com\/?page_id=62387"},"modified":"2026-10-03T21:08:48","modified_gmt":"2026-10-04T04:08:48","slug":"calculadora-de-poe","status":"publish","type":"page","link":"https:\/\/enableit.com\/es\/poe-calculator\/","title":{"rendered":"Calculador de PoE y planificador de enlaces de distancia"},"content":{"rendered":"<div class=\"product\"><div class=\"product\">\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"62387\" class=\"elementor elementor-62387\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f8ad47d e-flex e-con-boxed e-con e-parent\" data-id=\"f8ad47d\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9997e82 elementor-widget elementor-widget-html\" data-id=\"9997e82\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<meta charset=\"UTF-8\">\n<!-- Enable-IT Extender Distance and PoE Calculator: paste into an Elementor \"HTML\" widget or a WordPress Custom HTML block. Add data-tab=\"power\" to the eit-calc div to open on the PoE Power Budget tab. -->\n<style>\n\/* Layout: one shared \"cable run\" strip on top, two calculator tabs below, results beside inputs on desktop, stacked on phones. *\/\n:root{\n  --eit-page:#101512; --eit-surface:#18201b; --eit-ink:#e6ece7; --eit-muted:#9aa89f;\n  --eit-line:#2b362f; --eit-accent:#4cbf6b; --eit-accent-soft:#1c3324; --eit-on-accent:#0c140f;\n  --eit-warn:#e0a44a; --eit-warn-soft:#33281a; --eit-bad:#f0786c; --eit-bad-soft:#3a1f1c;\n  --eit-track:#232d27; --eit-dim:#46534a; color-scheme:dark;\n  --eit-display:Arial,Helvetica,sans-serif;\n  --eit-body:Arial,Helvetica,sans-serif;\n  --eit-mono:Arial,Helvetica,sans-serif;\n}\n.eit-calc{color-scheme:dark;font-family:var(--eit-body);color:var(--eit-ink);background:var(--eit-page);font-size:15px;line-height:1.5;\n  max-width:1120px;margin:0 auto;padding:28px 16px 40px;box-sizing:border-box}\n.eit-calc *,.eit-calc *::before,.eit-calc *::after{box-sizing:border-box}\n.eit-calc h1,.eit-calc h2,.eit-calc h3{font-family:var(--eit-display);font-weight:700;letter-spacing:.01em;margin:0;text-wrap:balance;line-height:1.1}\n.eit-calc h1{font-size:clamp(28px,4vw,40px)}\n.eit-calc h2{font-size:22px}\n.eit-calc h3{font-size:19px}\n.eit-calc p{margin:0}\n.eit-lede{color:var(--eit-muted);max-width:62ch;margin-top:6px}\n.eit-head{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:end;justify-content:space-between;margin-bottom:18px}\n.eit-badge{font-family:var(--eit-mono);font-size:12px;color:var(--eit-muted);letter-spacing:.04em;text-transform:uppercase}\n\n\/* Shared run strip *\/\n.eit-run{background:var(--eit-surface);border:1px solid var(--eit-line);border-radius:10px;padding:16px;display:grid;\n  grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr);gap:16px 24px}\n@media (max-width:760px){.eit-run{grid-template-columns:minmax(0,1fr)}}\n.eit-label{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--eit-muted);margin-bottom:6px}\n.eit-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}\n.eit-input,.eit-select{font:inherit;color:var(--eit-ink);background:var(--eit-page);border:1px solid var(--eit-line);border-radius:6px;padding:8px 10px;min-height:40px}\n.eit-input:focus-visible,.eit-select:focus-visible,.eit-calc button:focus-visible,.eit-calc a:focus-visible{outline:2px solid var(--eit-accent);outline-offset:2px}\n.eit-dist{width:9ch;font-family:var(--eit-mono);font-size:18px;font-variant-numeric:tabular-nums}\n.eit-range{flex:1 1 160px;accent-color:var(--eit-accent);min-width:0}\n.eit-seg{display:inline-flex;border:1px solid var(--eit-line);border-radius:6px;overflow:hidden}\n.eit-seg button{font:inherit;font-size:14px;border:0;background:var(--eit-page);color:var(--eit-muted);padding:7px 12px;cursor:pointer;min-height:38px}\n.eit-seg button[aria-pressed=\"true\"]{background:var(--eit-accent);color:var(--eit-on-accent);font-weight:600}\n.eit-cables{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}\n.eit-cable{font:inherit;text-align:left;border:1px solid var(--eit-line);background:var(--eit-page);color:var(--eit-ink);border-radius:8px;padding:9px 11px;cursor:pointer}\n.eit-cable strong{display:block;font-size:14px}\n.eit-cable span{display:block;font-size:12.5px;color:var(--eit-muted);line-height:1.35}\n.eit-cable[aria-pressed=\"true\"]{border-color:var(--eit-accent);background:var(--eit-accent-soft);box-shadow:inset 0 0 0 1px var(--eit-accent)}\n\n\/* IEEE ruler *\/\n.eit-ruler{margin-top:4px}\n.eit-ruler-track{position:relative;height:10px;background:var(--eit-track);border-radius:5px;margin-top:8px;overflow:hidden}\n.eit-ruler-fill{position:absolute;inset:0 auto 0 0;background:var(--eit-accent);border-radius:5px}\n.eit-ruler-ieee{position:absolute;top:0;bottom:0;width:2px;background:var(--eit-bad)}\n.eit-ruler-note{font-size:13px;color:var(--eit-muted);margin-top:8px}\n.eit-ruler-note b{color:var(--eit-ink);font-family:var(--eit-mono);font-weight:500}\n\n\/* Tabs *\/\n.eit-tabs{display:flex;gap:4px;margin:22px 0 0;border-bottom:1px solid var(--eit-line);flex-wrap:wrap}\n.eit-tab{font-family:var(--eit-display);font-weight:600;font-size:20px;letter-spacing:.02em;background:none;border:0;color:var(--eit-muted);\n  padding:8px 14px 10px;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px}\n.eit-tab[aria-selected=\"true\"]{color:var(--eit-ink);border-bottom-color:var(--eit-accent)}\n.eit-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:20px;padding-top:20px}\n@media (max-width:860px){.eit-panel{grid-template-columns:minmax(0,1fr)}}\n.eit-block{display:flex;flex-direction:column;gap:14px;min-width:0}\n\n\/* Device list *\/\n.eit-devices{display:flex;flex-direction:column;gap:6px}\n.eit-dev{display:grid;grid-template-columns:minmax(0,1fr) 64px 76px 30px;gap:6px;align-items:center}\n.eit-dev .eit-input{min-height:36px;padding:6px 8px;width:100%}\n.eit-dev .eit-num{font-family:var(--eit-mono);font-variant-numeric:tabular-nums;text-align:right}\n.eit-dev-h{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--eit-muted);font-weight:600}\n.eit-x{border:0;background:none;color:var(--eit-muted);font-size:20px;cursor:pointer;line-height:1;min-height:36px}\n.eit-x:hover{color:var(--eit-bad)}\n.eit-presets{display:flex;flex-wrap:wrap;gap:6px}\n.eit-chip{font:inherit;font-size:13px;border:1px dashed var(--eit-dim);background:var(--eit-surface);color:var(--eit-ink);border-radius:999px;padding:5px 11px;cursor:pointer}\n.eit-chip:hover{border-style:solid;border-color:var(--eit-accent)}\n.eit-small{font-size:12.5px;color:var(--eit-muted)}\n\n\/* Summary figures *\/\n.eit-sum{background:var(--eit-surface);border:1px solid var(--eit-line);border-radius:10px;padding:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}\n@media (max-width:520px){.eit-sum{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}\n.eit-fig .eit-label{margin-bottom:2px}\n.eit-fig b{font-family:var(--eit-mono);font-weight:500;font-size:24px;font-variant-numeric:tabular-nums;display:block;line-height:1.2}\n.eit-fig small{color:var(--eit-muted);font-size:12.5px}\n\n\/* Model results *\/\n.eit-models{display:flex;flex-direction:column;gap:8px}\n.eit-model{background:var(--eit-surface);border:1px solid var(--eit-line);border-radius:10px;padding:12px 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center}\n.eit-model.is-off{background:transparent;border-style:dashed}\n.eit-model.is-off .eit-mname{color:var(--eit-muted)}\n.eit-mname{font-family:var(--eit-display);font-size:21px;font-weight:700;letter-spacing:.01em}\n.eit-specs{font-family:var(--eit-mono);font-size:12.5px;color:var(--eit-muted);display:flex;flex-wrap:wrap;gap:4px 12px;grid-column:1\/-1}\n.eit-pill{font-size:12px;font-weight:600;border-radius:999px;padding:3px 9px;white-space:nowrap;justify-self:end}\n.eit-pill.ok{background:var(--eit-accent-soft);color:var(--eit-accent)}\n.eit-pill.warn{background:var(--eit-warn-soft);color:var(--eit-warn)}\n.eit-pill.bad{background:var(--eit-bad-soft);color:var(--eit-bad)}\n.eit-meter{grid-column:1\/-1;height:8px;border-radius:4px;background:var(--eit-track);position:relative;overflow:hidden}\n.eit-meter i{position:absolute;inset:0 auto 0 0;border-radius:4px;background:var(--eit-accent)}\n.eit-meter i.warn{background:var(--eit-warn)}\n.eit-meter i.bad{background:var(--eit-bad)}\n.eit-link{grid-column:1\/-1;font-size:13.5px;font-weight:600;color:var(--eit-accent);text-decoration:none}\n.eit-link:hover{text-decoration:underline}\n.eit-empty{border:1px solid var(--eit-line);border-radius:10px;padding:16px;background:var(--eit-surface)}\n.eit-empty p+p{margin-top:6px}\n\n\/* Reach ladder *\/\n.eit-ladder{background:var(--eit-surface);border:1px solid var(--eit-line);border-radius:10px;padding:14px 14px 10px;overflow-x:auto}\n.eit-lrow{display:grid;grid-template-columns:104px minmax(0,1fr) 76px;gap:8px;align-items:center;padding:5px 0;min-width:300px}\n.eit-lname{font-family:var(--eit-mono);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n.eit-lbar{position:relative;height:14px;background:var(--eit-track);border-radius:3px}\n.eit-lbar i{position:absolute;inset:0 auto 0 0;border-radius:3px;background:var(--eit-accent)}\n.eit-lrow.is-off .eit-lbar i{background:var(--eit-dim)}\n.eit-lrow.is-off .eit-lname{color:var(--eit-muted)}\n.eit-lval{font-family:var(--eit-mono);font-size:12px;color:var(--eit-muted);text-align:right;font-variant-numeric:tabular-nums}\n.eit-lmark{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--eit-ink)}\n.eit-lmark.ieee{background:var(--eit-bad);opacity:.8}\n.eit-legend{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12px;color:var(--eit-muted);margin-top:8px}\n.eit-legend span::before{content:\"\";display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px;background:var(--eit-k)}\n\n.eit-foot{margin-top:28px;padding-top:14px;border-top:1px solid var(--eit-line);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;font-size:13px;color:var(--eit-muted)}\n.eit-foot b{color:var(--eit-ink);font-family:var(--eit-mono);font-weight:500;user-select:all}\n.eit-calc [hidden]{display:none!important}\n@media (prefers-reduced-motion:no-preference){.eit-meter i,.eit-lbar i,.eit-ruler-fill{transition:width .25s ease}}\n\/* Theme-proofing: keeps Elementor\/theme global colors from overriding the calculator *\/\n#eit-calc h1,#eit-calc h2,#eit-calc h3{color:#e6ece7 !important;font-family:Arial,Helvetica,sans-serif !important}\n#eit-calc p,#eit-calc label{color:inherit}\n#eit-calc .eit-lede,#eit-calc .eit-small,#eit-calc .eit-ruler-note,#eit-calc .eit-foot{color:#9aa89f}\n#eit-calc button{text-transform:none;letter-spacing:normal;box-shadow:none;background-image:none}\n#eit-calc .eit-tab{background:transparent !important;color:#9aa89f !important}\n#eit-calc .eit-tab[aria-selected=\"true\"]{color:#e6ece7 !important}\n#eit-calc .eit-cable{background:#101512 !important;color:#e6ece7 !important;border:1px solid #2b362f !important}\n#eit-calc .eit-cable[aria-pressed=\"true\"]{background:#1c3324 !important;border-color:#4cbf6b !important}\n#eit-calc .eit-seg button{background:#101512 !important;color:#9aa89f !important;border:0 !important;border-radius:0 !important}\n#eit-calc .eit-seg button[aria-pressed=\"true\"]{background:#4cbf6b !important;color:#0c140f !important}\n#eit-calc .eit-chip{background:#18201b !important;color:#e6ece7 !important;border:1px dashed #46534a !important}\n#eit-calc .eit-x{background:transparent !important;color:#9aa89f !important;border:0 !important}\n#eit-calc .eit-x:hover{color:#f0786c !important}\n#eit-calc input.eit-input{background:#101512 !important;color:#e6ece7 !important}\n#eit-calc input[type=range]{-webkit-appearance:none !important;appearance:none !important;display:block !important;height:24px !important;min-height:24px !important;padding:0 !important;margin:0 !important;border:0 !important;background:transparent !important;box-shadow:none !important;cursor:pointer;opacity:1 !important;visibility:visible !important}\n#eit-calc input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:#2b362f;border:0}\n#eit-calc input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:#2b362f;border:0}\n#eit-calc input[type=range]::-moz-range-progress{height:6px;border-radius:3px;background:#4cbf6b}\n#eit-calc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#4cbf6b;border:3px solid #101512;margin-top:-7px;box-shadow:0 0 0 1px #4cbf6b}\n#eit-calc input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#4cbf6b;border:3px solid #101512;box-shadow:0 0 0 1px #4cbf6b}\n#eit-calc input[type=range]:focus-visible{outline:2px solid #4cbf6b;outline-offset:4px}\n#eit-calc .eit-ruler-track{display:block !important;position:relative !important;height:10px !important;background:#232d27 !important;border-radius:5px;overflow:hidden}\n#eit-calc .eit-ruler-fill{display:block !important;position:absolute !important;top:0;bottom:0;left:0;background:#4cbf6b !important}\n#eit-calc .eit-ruler-ieee{display:block !important;position:absolute !important;top:0;bottom:0;width:2px;background:#f0786c !important}\n#eit-calc .eit-dist{width:9ch !important;flex:0 0 auto}\n#eit-calc .eit-row .eit-range{flex:1 1 160px;width:auto !important;min-width:0}\n#eit-calc #eit-head,#eit-calc .eit-dev .eit-input{width:100%}\n<\/style>\n\n<div class=\"eit-calc\" id=\"eit-calc\">\n  <div class=\"eit-head\">\n    <div>\n      <h1>Enable-IT Extender Distance and PoE Calculator<\/h1>\n      <p class=\"eit-lede\">Enter how far you need to go and the cable you already have to see which extenders reach. Then open PoE Power Budget and add your devices to size the power.<\/p>\n    <\/div>\n  <\/div>\n\n  <section class=\"eit-run\" aria-label=\"Your cable run\">\n    <div>\n      <label class=\"eit-label\" for=\"eit-dist\">Cable run length<\/label>\n      <div class=\"eit-row\">\n        <input class=\"eit-input eit-dist\" id=\"eit-dist\" type=\"number\" min=\"1\" step=\"10\" value=\"1200\" inputmode=\"numeric\">\n        <div class=\"eit-seg\" role=\"group\" aria-label=\"Units\">\n          <button type=\"button\" id=\"eit-u-ft\" aria-pressed=\"true\">ft<\/button>\n          <button type=\"button\" id=\"eit-u-m\" aria-pressed=\"false\">m<\/button>\n        <\/div>\n        <input class=\"eit-range\" id=\"eit-slider\" type=\"range\" min=\"50\" max=\"9000\" step=\"50\" value=\"1200\" aria-label=\"Cable run length slider (feet)\">\n      <\/div>\n      <div class=\"eit-ruler\" aria-hidden=\"true\">\n        <div class=\"eit-ruler-track\"><div class=\"eit-ruler-fill\" id=\"eit-rfill\"><\/div><div class=\"eit-ruler-ieee\" id=\"eit-rieee\"><\/div><\/div>\n      <\/div>\n      <p class=\"eit-ruler-note\" id=\"eit-rnote\"><\/p>\n    <\/div>\n    <div>\n      <span class=\"eit-label\" id=\"eit-cable-l\">Cable you have in place<\/span>\n      <div class=\"eit-cables\" role=\"group\" aria-labelledby=\"eit-cable-l\" id=\"eit-cables\"><\/div>\n    <\/div>\n  <\/section>\n\n  <div class=\"eit-tabs\" role=\"tablist\" aria-label=\"Calculators\">\n    <button class=\"eit-tab\" role=\"tab\" id=\"eit-t-distance\" aria-controls=\"eit-p-distance\" aria-selected=\"true\">Distance &amp; Speed<\/button>\n    <button class=\"eit-tab\" role=\"tab\" id=\"eit-t-power\" aria-controls=\"eit-p-power\" aria-selected=\"false\">PoE Power Budget<\/button>\n  <\/div>\n\n  <!-- POWER -->\n  <section class=\"eit-panel\" role=\"tabpanel\" id=\"eit-p-power\" aria-labelledby=\"eit-t-power\" hidden>\n    <div class=\"eit-block\">\n      <div>\n        <h2>Devices at the far end<\/h2>\n        <p class=\"eit-small\">Use each device's peak draw: night IR, heaters and PTZ motors, not the daytime average.<\/p>\n      <\/div>\n      <div class=\"eit-devices\" id=\"eit-devs\"><\/div>\n      <div>\n        <span class=\"eit-label\">Add a device<\/span>\n        <div class=\"eit-presets\" id=\"eit-presets\"><\/div>\n      <\/div>\n    <\/div>\n    <div class=\"eit-block\">\n      <div class=\"eit-sum\" aria-live=\"polite\" style=\"grid-template-columns:repeat(2,minmax(0,1fr))\">\n        <div class=\"eit-fig\"><span class=\"eit-label\">Peak load<\/span><b id=\"eit-s-peak\">0 W<\/b><small id=\"eit-s-count\"><\/small><\/div>\n        <div class=\"eit-fig\"><span class=\"eit-label\">PoE standard<\/span><b id=\"eit-s-std\">&#8212;<\/b><small id=\"eit-s-stdnote\"><\/small><\/div>\n      <\/div>\n      <h3 id=\"eit-p-title\">Extenders that fit<\/h3>\n      <div class=\"eit-models\" id=\"eit-p-models\"><\/div>\n    <\/div>\n  <\/section>\n\n  <!-- DISTANCE -->\n  <section class=\"eit-panel\" role=\"tabpanel\" id=\"eit-p-distance\" aria-labelledby=\"eit-t-distance\">\n    <div class=\"eit-block\">\n      <div>\n        <h2>What the link needs<\/h2>\n        <p class=\"eit-small\">Pick a minimum speed and whether devices at the far end need power over the same cable.<\/p>\n      <\/div>\n      <div>\n        <span class=\"eit-label\" id=\"eit-spd-l\">Minimum speed<\/span>\n        <div class=\"eit-seg\" role=\"group\" aria-labelledby=\"eit-spd-l\" id=\"eit-spd\">\n          <button type=\"button\" data-v=\"0\" aria-pressed=\"false\">Any<\/button>\n          <button type=\"button\" data-v=\"100\" aria-pressed=\"true\">100 Mbps<\/button>\n          <button type=\"button\" data-v=\"300\" aria-pressed=\"false\">300 Mbps<\/button>\n          <button type=\"button\" data-v=\"1000\" aria-pressed=\"false\">Gigabit<\/button>\n        <\/div>\n      <\/div>\n      <div>\n        <span class=\"eit-label\" id=\"eit-poe-l\">Power at the far end<\/span>\n        <div class=\"eit-seg\" role=\"group\" aria-labelledby=\"eit-poe-l\" id=\"eit-poe\">\n          <button type=\"button\" data-v=\"any\" aria-pressed=\"false\">Either<\/button>\n          <button type=\"button\" data-v=\"yes\" aria-pressed=\"true\">Need PoE<\/button>\n          <button type=\"button\" data-v=\"no\" aria-pressed=\"false\">Data only<\/button>\n        <\/div>\n      <\/div>\n      <div class=\"eit-sum\" style=\"grid-template-columns:repeat(2,minmax(0,1fr))\">\n        <div class=\"eit-fig\"><span class=\"eit-label\">Past the 100 m limit<\/span><b id=\"eit-d-x\">&#8212;<\/b><small>IEEE 802.3 copper max is 328 ft<\/small><\/div>\n        <div class=\"eit-fig\"><span class=\"eit-label\">Repeaters avoided<\/span><b id=\"eit-d-rep\">&#8212;<\/b><small>powered switches every 328 ft<\/small><\/div>\n      <\/div>\n    <\/div>\n    <div class=\"eit-block\">\n      <h3>Reach by model on your cable<\/h3>\n      <div class=\"eit-ladder\" id=\"eit-ladder\"><\/div>\n      <div class=\"eit-legend\">\n        <span style=\"--eit-k:var(--eit-accent)\">Meets your run<\/span>\n        <span style=\"--eit-k:var(--eit-dim)\">Doesn't meet it<\/span>\n        <span style=\"--eit-k:var(--eit-ink)\">Your run<\/span>\n        <span style=\"--eit-k:var(--eit-bad)\">328 ft Ethernet limit<\/span>\n      <\/div>\n      <div class=\"eit-models\" id=\"eit-d-models\"><\/div>\n    <\/div>\n  <\/section>\n\n  <div class=\"eit-foot\">\n    <p>Distances and speeds are maximum ratings. Real throughput drops with length, wire gauge and cable condition.<\/p>\n    <p>Engineering help: <b>(888) 309-0910<\/b> &#183; Mon&#8211;Fri 7AM&#8211;4PM PST<\/p>\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n\/* ============ PRODUCT DATA \\u2014 edit here ============\n   reachFt : max rated distance in feet\n   mbps    : rated throughput\n   poeW    : total PoE output at the far end (null = data only)\n   media   : cable the model runs on: \"pair1\" (1 twisted pair), \"pair2\" (2 pairs), \"pair4\" (4 pairs), \"coax\"\n   rateReach \/ powerReach (optional): [[feet, value], ...] points from the datasheet charts.\n     When present, the calculator interpolates speed \/ watts at the entered distance instead of using the flat rating. *\/\nvar MODELS = [\n  {id:\"821P\",   name:\"821P\",       reachFt:3280, mbps:100,  poeW:71,  media:[\"pair1\"], ports:1, url:\"https:\/\/enableit.com\/product\/821p-poe-extender\/\", note:\"ships with 56 V 120 W DC power adapter\"},\n  {id:\"821Q\",   name:\"821Q\",       reachFt:3280, mbps:100,  poeW:95,  media:[\"pair1\"],        ports:1, url:\"https:\/\/enableit.com\/product\/enable-it-821q-120w-poe-extender\/\"},\n  {id:\"821QP\",  name:\"821Q+\",      reachFt:3280, mbps:100,  poeW:150, media:[\"pair1\"],        ports:1, url:\"https:\/\/enableit.com\/poe-extender\/\", note:\"ships with 56 V 150 W DC power adapter\"},\n  {id:\"821CP\",  name:\"821CP\",      reachFt:3280, mbps:100,  poeW:71,  media:[\"coax\"],         ports:1, url:\"https:\/\/enableit.com\/product\/enable-it-821cp-coax-poe-extender\/\"},\n  {id:\"828W\",   name:\"828W \/ 828WP\", reachFt:2000, mbps:1000, poeW:61, media:[\"pair4\"],       ports:2, url:\"https:\/\/enableit.com\/poe-extender\/\"},\n  {id:\"865X\",   name:\"865X PRO\",   reachFt:2296, mbps:1200, poeW:120,  media:[\"pair2\"],        ports:1, url:\"https:\/\/enableit.com\/product\/865x-pro-gigabit-poe-extender\/\", note:\"ships with 56 V 120 W DC injector\"},\n  {id:\"865XS\",  name:\"865XS PRO\",  reachFt:2296, mbps:1200, poeW:120,  media:[\"pair2\"],        ports:2, url:\"https:\/\/enableit.com\/product\/865xs-pro-gigabit-poe-extender\/\", note:\"120 W shared across ports \\u00b7 ships with 56 V 120 W DC injector\"},\n  {id:\"865Q\",   name:\"865Q PRO\",   reachFt:2306, mbps:1200, poeW:150, media:[\"pair4\"],        ports:2, url:\"https:\/\/enableit.com\/poe-extender\/\"},\n  {id:\"865XC\",  name:\"865XC PRO\",  reachFt:2306, mbps:1500, poeW:61,  media:[\"coax\"],         ports:1, url:\"https:\/\/enableit.com\/product\/865xc-pro-gigabit-coax-poe-extender\/\"},\n  {id:\"865XSC\", name:\"865XSC PRO\", reachFt:3280, mbps:1500, poeW:61,  media:[\"coax\"],         ports:4, poeMaxW:150, url:\"https:\/\/enableit.com\/product\/865xsc-pro-gigabit-coax-poe-extender\/\", note:\"ships with 61 W PoE injector, upgradable to 150 W \\u00b7 power shared across ports\"},\n  {id:\"821W\",   name:\"821W\",       reachFt:3280, mbps:100,  poeW:null, media:[\"pair1\"],       ports:1, url:\"https:\/\/enableit.com\/product\/821w-outdoor-ethernet-extender-kit\/\", note:\"outdoor-rated \\u00b7 ships with 56 V 120 W DC power adapter\"},\n  {id:\"821WP\",  name:\"821WP\",      reachFt:3280, mbps:100,  poeW:71,  media:[\"pair1\"], ports:1, url:\"https:\/\/enableit.com\/product\/enable-it-821wp-outdoor-poe-extender-kit\/\", note:\"outdoor-rated \\u00b7 ships with 56 V 120 W DC power adapter\"},\n  {id:\"821CWP\", name:\"821CWP\",     reachFt:3280, mbps:100,  poeW:71,  media:[\"coax\"],         ports:1, url:\"https:\/\/enableit.com\/product\/821cwp-outdoor-coax-poe-extender\/\", note:\"outdoor-rated \\u00b7 ships with 56 V 120 W DC power adapter\"},\n  {id:\"821QWP\", name:\"821QW+\",     reachFt:3280, mbps:100,  poeW:150, media:[\"pair1\"], ports:1, url:\"https:\/\/enableit.com\/821qw-150w-ultra-poe\/\", note:\"outdoor-rated \\u00b7 ships with 56 V 150 W DC power adapter\"},\n  {id:\"821\",    name:\"821\",        reachFt:3280, mbps:100,  poeW:null, media:[\"pair1\"],       ports:1, url:\"https:\/\/enableit.com\/product\/821-ethernet-lan-extender\/\", note:\"ships with 56 V 120 W DC power adapter\"},\n  {id:\"821C\",   name:\"821C\",       reachFt:3280, mbps:100,  poeW:null, media:[\"coax\"],        ports:1, url:\"https:\/\/enableit.com\/product\/enable-it-821c-coax-ethernet-extender\/\", note:\"ships with 56 V 120 W DC power adapter\"},\n  {id:\"860PRO\", name:\"860 PRO\",    reachFt:9000, mbps:300,  poeW:null, media:[\"pair1\"], ports:1, url:\"https:\/\/enableit.com\/product\/enable-it-860-pro-gigabit-ethernet-extender\/\"},\n  {id:\"860X\",   name:\"860X PRO\",   reachFt:2296, mbps:1200, poeW:null, media:[\"pair2\"],       ports:1, url:\"https:\/\/enableit.com\/product\/enable-it-860x-pro-gigabit-ethernet-extender\/\", note:\"ships with 56 V 120 W DC injector\"},\n  {id:\"860XS\",  name:\"860XS PRO\",  reachFt:2296, mbps:1200, poeW:null, media:[\"pair2\"],       ports:2, url:\"https:\/\/enableit.com\/product\/enable-it-860xs-pro-gigabit-ethernet-extender\/\", note:\"ships with 56 V 120 W DC injector\"},\n  {id:\"860XC\",  name:\"860XC PRO\",  reachFt:3280, mbps:1500, poeW:null, media:[\"coax\"],        ports:1, url:\"https:\/\/enableit.com\/product\/860xc-pro-gigabit-coax-ethernet-extender\/\"},\n  {id:\"860XSC\", name:\"860XSC PRO\", reachFt:3280, mbps:1500, poeW:null, media:[\"coax\"],        ports:1, url:\"https:\/\/enableit.com\/product\/860xsc-pro-coax-ethernet-extender\/\"}\n];\nvar OEM_URL = \"https:\/\/enableit.com\/custom-oem-extender\/\";\n\nvar CABLES = [\n  {id:\"pair1\", t:\"1 pair \/ 2 wires\", d:\"Telephone, Cat3, alarm or 2-wire\", fits:[\"pair1\"]},\n  {id:\"pair2\", t:\"2 pairs \/ 4 wires\", d:\"Older 4-wire phone or partial Cat cable\", fits:[\"pair1\",\"pair2\"]},\n  {id:\"pair4\", t:\"Cat5 \/ 5e \/ 6\", d:\"Full 4-pair Ethernet cable\", fits:[\"pair1\",\"pair2\",\"pair4\"]},\n  {id:\"coax\",  t:\"Coax\", d:\"75 \\u03a9 RG59 \/ RG6 from old CCTV\", fits:[\"coax\"]}\n];\n\n\/* Peak draws. Camera and bridge values come from Enable-IT's PoE Power Budget guide; others are typical \\u2014 edit per datasheet. *\/\nvar PRESETS = [\n  {n:\"IP camera (day only)\", w:12},\n  {n:\"IP camera with night IR\", w:40},\n  {n:\"PTZ camera with heater\", w:90},\n  {n:\"Wireless bridge \/ radio\", w:20},\n  {n:\"Wi-Fi access point\", w:30},\n  {n:\"VoIP phone\", w:7},\n  {n:\"Access control reader\", w:13},\n  {n:\"Other device\", w:15}\n];\n\nvar IEEE_FT = 328, M_PER_FT = 0.3048;\nvar S = {ft:1200, unit:\"ft\", cable:\"pair4\", speed:100, poe:\"yes\",\n  devs:[{n:\"IP camera with night IR\", w:40, q:0},{n:\"Wireless bridge \/ radio\", w:20, q:0}]};\n\nvar $ = function(id){return document.getElementById(id)};\nvar root = $(\"eit-calc\");\nfunction fmtLen(ft){ return S.unit===\"ft\" ? Math.round(ft).toLocaleString()+\" ft\" : Math.round(ft*M_PER_FT).toLocaleString()+\" m\"; }\nfunction fmtW(w){ return (Math.round(w*10)\/10).toLocaleString()+\" W\"; }\nfunction fmtSpd(m){ return m>=1000 ? (m\/1000)+\" Gbps\" : m+\" Mbps\"; }\nfunction interp(pts, x){ if(!pts||!pts.length) return null; pts=pts.slice().sort(function(a,b){return a[0]-b[0]});\n  if(x<=pts[0][0]) return pts[0][1]; for(var i=1;i<pts.length;i++){ if(x<=pts[i][0]){var a=pts[i-1],b=pts[i]; return a[1]+(b[1]-a[1])*(x-a[0])\/(b[0]-a[0]);} } return null; }\nfunction fitsCable(m){ var c=CABLES.filter(function(c){return c.id===S.cable})[0]; return m.media.some(function(x){return c.fits.indexOf(x)>-1}); }\nfunction speedAt(m){ var v=interp(m.rateReach,S.ft); return v==null?m.mbps:v; }\nfunction powerAt(m){ if(m.poeW==null) return null; var v=interp(m.powerReach,S.ft); return v==null?m.poeW:v; }\nfunction track(action,label){ try{ if(window.gtag) window.gtag(\"event\",action,{event_category:\"link_planner\",event_label:label}); }catch(e){} }\nfunction esc(s){ return String(s).replace(\/[&<>\"]\/g,function(c){return {\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\"}[c]}); }\n\n\/* ---- shared run ---- *\/\nfunction renderCables(){\n  $(\"eit-cables\").innerHTML = CABLES.map(function(c){\n    return '<button type=\"button\" class=\"eit-cable\" data-c=\"'+c.id+'\" aria-pressed=\"'+(S.cable===c.id)+'\"><strong>'+c.t+'<\/strong><span>'+c.d+'<\/span><\/button>';\n  }).join(\"\");\n}\nfunction renderRun(){\n  var max = 9000, ft=S.ft;\n  $(\"eit-rfill\").style.width = Math.min(100, ft\/max*100)+\"%\";\n  $(\"eit-rieee\").style.left = (IEEE_FT\/max*100)+\"%\";\n  var x = ft\/IEEE_FT;\n  $(\"eit-rnote\").innerHTML = ft<=IEEE_FT\n    ? \"Within the standard 328 ft (100 m) Ethernet limit. A regular cable run works; an extender helps only if you're reusing phone wire or coax.\"\n    : \"<b>\"+fmtLen(ft)+\"<\/b> is <b>\"+x.toFixed(1)+\"\\u00d7<\/b> the 328 ft (100 m) limit for standard Ethernet and PoE.\";\n}\n\n\/* ---- power ---- *\/\nfunction reqStandard(maxW){\n  if(maxW<=0) return [\"\\u2014\",\"\"];\n  if(maxW<=12.95) return [\"802.3af\",\"PoE, up to 12.95 W per device\"];\n  if(maxW<=25.5) return [\"802.3at\",\"PoE+, up to 25.5 W per device\"];\n  if(maxW<=51) return [\"802.3bt T3\",\"PoE++, up to 51 W per device\"];\n  if(maxW<=71.3) return [\"802.3bt T4\",\"PoE++, up to 71.3 W per device\"];\n  return [\"Beyond bt\",\"Over 71.3 W on one device\"];\n}\nfunction renderDevs(){\n  var h = '<div class=\"eit-dev eit-dev-h\" aria-hidden=\"true\"><span>Device<\/span><span style=\"text-align:right\">Qty<\/span><span style=\"text-align:right\">Peak W<\/span><span><\/span><\/div>';\n  h += S.devs.map(function(d,i){\n    return '<div class=\"eit-dev\">'+\n      '<input class=\"eit-input\" id=\"eit-dn-'+i+'\" data-i=\"'+i+'\" data-k=\"n\" value=\"'+esc(d.n)+'\" aria-label=\"Device name\">'+\n      '<input class=\"eit-input eit-num\" id=\"eit-dq-'+i+'\" data-i=\"'+i+'\" data-k=\"q\" type=\"number\" min=\"0\" step=\"1\" value=\"'+d.q+'\" aria-label=\"Quantity\">'+\n      '<input class=\"eit-input eit-num\" id=\"eit-dw-'+i+'\" data-i=\"'+i+'\" data-k=\"w\" type=\"number\" min=\"0\" step=\"0.5\" value=\"'+d.w+'\" aria-label=\"Peak watts each\">'+\n      '<button type=\"button\" class=\"eit-x\" data-del=\"'+i+'\" aria-label=\"Remove '+esc(d.n)+'\">\\u00d7<\/button><\/div>';\n  }).join(\"\");\n  if(!S.devs.length) h += '<p class=\"eit-small\">No devices yet. Add one below.<\/p>';\n  $(\"eit-devs\").innerHTML = h;\n}\nfunction modelCard(m, status, pillText, meterPct, meterCls, extra){\n  var specs = [fmtLen(m.reachFt)+\" max\", \"up to \"+fmtSpd(m.mbps)];\n  if(m.poeW!=null) specs.push(m.poeMaxW ? m.poeW+\"\\u2013\"+m.poeMaxW+\" W PoE\" : m.poeW+\" W PoE\"); else specs.push(\"data only\");\n  specs.push(m.ports>1?\"up to \"+m.ports+\" devices\":\"1 device\");\n  if(m.note) specs.push(m.note);\n  return '<div class=\"eit-model'+(status===\"off\"?\" is-off\":\"\")+'\">'+\n    '<div class=\"eit-mname\">'+m.name+'<\/div>'+\n    '<span class=\"eit-pill '+(status===\"ok\"?\"ok\":status===\"warn\"?\"warn\":\"bad\")+'\">'+pillText+'<\/span>'+\n    (meterPct!=null ? '<div class=\"eit-meter\" role=\"img\" aria-label=\"'+Math.round(meterPct)+'% of rated power\"><i class=\"'+(meterCls||\"\")+'\" style=\"width:'+Math.min(100,meterPct)+'%\"><\/i><\/div>' : '')+\n    '<div class=\"eit-specs\">'+specs.map(function(s){return '<span>'+s+'<\/span>'}).join(\"\")+(extra?'<span>'+extra+'<\/span>':'')+'<\/div>'+\n    (status!==\"off\" ? '<a class=\"eit-link\" href=\"'+m.url+'\" target=\"_blank\" rel=\"noopener\" data-m=\"'+m.id+'\">View the '+m.name+' kit \\u2192<\/a>' : '')+\n  '<\/div>';\n}\nfunction noFit(msg){\n  return '<div class=\"eit-empty\"><p><strong>'+msg+'<\/strong><\/p><p class=\"eit-small\">Enable-IT builds Custom OEM extenders up to 4,000 ft with the power you need. Call <b>(888) 309-0910<\/b> or see <a class=\"eit-link\" href=\"'+OEM_URL+'\" target=\"_blank\" rel=\"noopener\" data-m=\"OEM\">Custom OEM extenders \\u2192<\/a><\/p><\/div>';\n}\nfunction renderPower(){\n  var peak=0, count=0, maxW=0;\n  S.devs.forEach(function(d){ var q=Math.max(0,+d.q||0), w=Math.max(0,+d.w||0); peak+=q*w; count+=q; if(q>0) maxW=Math.max(maxW,w); });\n  var req = peak, std=reqStandard(maxW);\n  $(\"eit-s-peak\").textContent = fmtW(peak);\n  $(\"eit-s-count\").textContent = count+\" device\"+(count===1?\"\":\"s\");\n  $(\"eit-s-std\").textContent = std[0];\n  $(\"eit-s-stdnote\").textContent = std[1] || \"add a device\";\n  var poeModels = MODELS.filter(function(m){return m.poeW!=null && fitsCable(m)});\n  if(count===0){\n    var reach=poeModels.filter(function(m){return m.reachFt>=S.ft});\n    $(\"eit-p-title\").textContent = reach.length+\" PoE extender\"+(reach.length===1?\"\":\"s\")+\" reach \"+fmtLen(S.ft);\n    $(\"eit-p-models\").innerHTML = '<div class=\"eit-empty\"><p><strong>Add your devices on the left<\/strong><\/p><p class=\"eit-small\">Tap a device type to add it, then set the quantity. The list below narrows to the extenders that can power them.<\/p><\/div>' +\n      reach.map(function(m){ return modelCard(m,\"ok\",\"Reaches \"+fmtLen(S.ft),null,\"\"); }).join(\"\");\n    return;\n  }\n  if(!poeModels.length){ $(\"eit-p-models\").innerHTML = noFit(\"No PoE extender runs on this cable type.\"); $(\"eit-p-title\").textContent=\"Extenders that fit\"; return; }\n  var rows = poeModels.map(function(m){\n    var w=powerAt(m), load=w?req\/w*100:999, reachOk=m.reachFt>=S.ft;\n    var st, pill, cls=\"\";\n    if(count>m.ports){ st=\"off\"; pill=m.ports===1?\"1 device only\":\"Up to \"+m.ports+\" devices\"; }\n    else if(!reachOk){ st=\"off\"; pill=\"Too short: \"+fmtLen(m.reachFt); }\n    else if(peak>w && m.poeMaxW && peak<=m.poeMaxW){ st=\"warn\"; pill=\"Fits with \"+m.poeMaxW+\" W injector\"; cls=\"warn\"; load=req\/m.poeMaxW*100; }\n    else if(peak>w){ st=\"off\"; pill=\"Over by \"+fmtW(peak-(m.poeMaxW||w)); cls=\"bad\"; }\n        else { st=\"ok\"; pill=Math.round(load)+\"% loaded\"; }\n    var extra = \"\";\n    return {m:m, st:st, pill:pill, load:load, cls:cls, extra:extra};\n  });\n  var rank={ok:0,warn:1,off:2};\n  rows = rows.filter(function(r){ return count<=r.m.ports; });\n  rows.sort(function(a,b){ return rank[a.st]-rank[b.st] || (a.st===\"off\" ? b.m.reachFt-a.m.reachFt : b.load-a.load); });\n  var good = rows.filter(function(r){return r.st!==\"off\"});\n  $(\"eit-p-title\").textContent = good.length ? good.length+\" extender\"+(good.length>1?\"s\":\"\")+\" fit at \"+fmtLen(S.ft) : \"Extenders that fit\";\n  var html = good.length ? \"\" : noFit(peak===0 ? \"Add at least one device to size the power budget.\" : count>4 ? \"Standard models power up to 4 devices. For \"+count+\" devices, split them across two or more extenders.\" : \"No standard model covers \"+fmtW(req)+\" at \"+fmtLen(S.ft)+\" on this cable.\");\n  html += rows.map(function(r){ return modelCard(r.m, r.st, r.pill, r.st===\"off\"&&r.pill.indexOf(\"Too short\")===0?null:r.load, r.cls, r.extra); }).join(\"\");\n  $(\"eit-p-models\").innerHTML = html;\n}\n\n\/* ---- distance ---- *\/\nfunction renderDistance(){\n  var ft=S.ft;\n  $(\"eit-d-x\").textContent = ft>IEEE_FT ? (ft\/IEEE_FT).toFixed(1)+\"\\u00d7\" : \"Within\";\n  $(\"eit-d-rep\").textContent = ft>IEEE_FT ? String(Math.ceil(ft\/IEEE_FT)-1) : \"0\";\n  var list = MODELS.filter(fitsCable).map(function(m){\n    var why=[];\n    if(m.reachFt<ft) why.push(\"reach \"+fmtLen(m.reachFt));\n    if(speedAt(m)<S.speed) why.push(\"max \"+fmtSpd(m.mbps));\n    if(S.poe===\"yes\" && m.poeW==null) why.push(\"no PoE\");\n    if(S.poe===\"no\" && m.poeW!=null) why.push(\"adds PoE\");\n    return {m:m, ok:!why.length, why:why};\n  });\n  list.sort(function(a,b){ return (b.ok-a.ok) || (b.m.reachFt-a.m.reachFt) || (b.m.mbps-a.m.mbps); });\n  if(!list.length){ $(\"eit-ladder\").innerHTML='<p class=\"eit-small\">No models for this cable.<\/p>'; $(\"eit-d-models\").innerHTML=\"\"; return; }\n  var scale = Math.max(ft*1.15, Math.max.apply(null,list.map(function(r){return r.m.reachFt})));\n  var mk = function(v,c){ return '<span class=\"eit-lmark '+c+'\" style=\"left:calc('+(v\/scale*100)+'% - 1px)\"><\/span>'; };\n  $(\"eit-ladder\").innerHTML = list.map(function(r){\n    return '<div class=\"eit-lrow'+(r.m.reachFt>=ft?\"\":\" is-off\")+'\"><span class=\"eit-lname\" title=\"'+r.m.name+'\">'+r.m.name+'<\/span>'+\n      '<div class=\"eit-lbar\"><i style=\"width:'+(r.m.reachFt\/scale*100)+'%\"><\/i>'+mk(IEEE_FT,\"ieee\")+mk(ft,\"\")+'<\/div>'+\n      '<span class=\"eit-lval\">'+fmtLen(r.m.reachFt)+'<\/span><\/div>';\n  }).join(\"\");\n  var ok = list.filter(function(r){return r.ok});\n  var html = ok.length ? ok.map(function(r){ var s=speedAt(r.m); return modelCard(r.m,\"ok\",\"Fits \\u00b7 \"+fmtSpd(Math.round(s))+\" rated\"); }).join(\"\")\n    : noFit(\"Nothing in the standard line meets all of that at \"+fmtLen(ft)+\".\");\n  var near = list.filter(function(r){return !r.ok}).slice(0,3);\n  if(ok.length===0 && near.length) html += near.map(function(r){ return modelCard(r.m,\"off\",\"Misses: \"+r.why.join(\", \")); }).join(\"\");\n  $(\"eit-d-models\").innerHTML = html;\n}\n\nfunction renderAll(){ renderRun(); renderPower(); renderDistance(); }\n\n\/* ---- events ---- *\/\nfunction setFt(ft){ S.ft=Math.max(1,Math.min(20000,ft||1)); $(\"eit-slider\").value=Math.min(9000,S.ft);\n  if(document.activeElement!==$(\"eit-dist\")) $(\"eit-dist\").value = S.unit===\"ft\"?Math.round(S.ft):Math.round(S.ft*M_PER_FT); renderAll(); }\n$(\"eit-dist\").addEventListener(\"input\",function(){ var v=parseFloat(this.value); if(!(v>0)) return; S.ft = S.unit===\"ft\"?v:v\/M_PER_FT; $(\"eit-slider\").value=Math.min(9000,S.ft); renderAll(); });\n$(\"eit-slider\").addEventListener(\"input\",function(){ setFt(+this.value); });\nfunction setUnit(u){ S.unit=u; $(\"eit-u-ft\").setAttribute(\"aria-pressed\",u===\"ft\"); $(\"eit-u-m\").setAttribute(\"aria-pressed\",u===\"m\");\n  $(\"eit-dist\").value = u===\"ft\"?Math.round(S.ft):Math.round(S.ft*M_PER_FT); renderAll(); }\n$(\"eit-u-ft\").addEventListener(\"click\",function(){setUnit(\"ft\")});\n$(\"eit-u-m\").addEventListener(\"click\",function(){setUnit(\"m\")});\n$(\"eit-cables\").addEventListener(\"click\",function(e){ var b=e.target.closest(\"[data-c]\"); if(!b) return; S.cable=b.getAttribute(\"data-c\"); renderCables(); renderAll(); });\n$(\"eit-presets\").innerHTML = PRESETS.map(function(p,i){ return '<button type=\"button\" class=\"eit-chip\" data-p=\"'+i+'\">+ '+p.n+' <span class=\"eit-small\">'+p.w+' W<\/span><\/button>'; }).join(\"\");\n$(\"eit-presets\").addEventListener(\"click\",function(e){ var b=e.target.closest(\"[data-p]\"); if(!b) return; var p=PRESETS[+b.getAttribute(\"data-p\")];\n  var ex=S.devs.filter(function(d){return d.n===p.n})[0]; if(ex) ex.q=(+ex.q||0)+1; else S.devs.push({n:p.n,w:p.w,q:1}); renderDevs(); renderPower(); });\n$(\"eit-devs\").addEventListener(\"input\",function(e){ var t=e.target, i=t.getAttribute(\"data-i\"); if(i==null) return; S.devs[+i][t.getAttribute(\"data-k\")] = t.value; renderPower(); });\n$(\"eit-devs\").addEventListener(\"click\",function(e){ var b=e.target.closest(\"[data-del]\"); if(!b) return; S.devs.splice(+b.getAttribute(\"data-del\"),1); renderDevs(); renderPower(); });\nfunction seg(id,key,num){ $(id).addEventListener(\"click\",function(e){ var b=e.target.closest(\"[data-v]\"); if(!b) return;\n  S[key]= num?+b.getAttribute(\"data-v\"):b.getAttribute(\"data-v\");\n  Array.prototype.forEach.call(this.querySelectorAll(\"[data-v]\"),function(x){x.setAttribute(\"aria-pressed\",x===b)}); renderDistance(); }); }\nseg(\"eit-spd\",\"speed\",true); seg(\"eit-poe\",\"poe\",false);\nfunction showTab(t){ [\"power\",\"distance\"].forEach(function(k){ $(\"eit-t-\"+k).setAttribute(\"aria-selected\",k===t); $(\"eit-p-\"+k).hidden = k!==t; }); }\n$(\"eit-t-power\").addEventListener(\"click\",function(){showTab(\"power\"); track(\"tab\",\"power\");});\n$(\"eit-t-distance\").addEventListener(\"click\",function(){showTab(\"distance\"); track(\"tab\",\"distance\");});\nroot.addEventListener(\"click\",function(e){ var a=e.target.closest(\"a[data-m]\"); if(a) track(\"model_click\",a.getAttribute(\"data-m\")); });\nshowTab(\"distance\");\nvar start=root.getAttribute(\"data-tab\"); if(start===\"power\") showTab(\"power\");\nvar h=(location.hash||\"\").replace(\"#\",\"\"); if(h===\"distance\"||h===\"power\") showTab(h);\n\nrenderCables(); renderDevs(); renderAll();\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Enable-IT Extender Distance and PoE Calculator Enter how far you need to go and the cable you already have to see which extenders reach. Then open PoE Power Budget and add your devices to size the power. Cable run length ft m Cable you have in place Distance &amp; Speed PoE Power Budget Devices at&#8230;<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"_kad_post_transparent":"default","_kad_post_title":"hide","_kad_post_layout":"fullwidth","_kad_post_sidebar_id":"","_kad_post_content_style":"unboxed","_kad_post_vertical_padding":"hide","_kad_post_feature":"hide","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":"","bs_cache_bypass_cache":0,"bs_cache_related_page":0},"class_list":["post-62387","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/enableit.com\/es\/wp-json\/wp\/v2\/pages\/62387","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/enableit.com\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/enableit.com\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/enableit.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/enableit.com\/es\/wp-json\/wp\/v2\/comments?post=62387"}],"version-history":[{"count":10,"href":"https:\/\/enableit.com\/es\/wp-json\/wp\/v2\/pages\/62387\/revisions"}],"predecessor-version":[{"id":62556,"href":"https:\/\/enableit.com\/es\/wp-json\/wp\/v2\/pages\/62387\/revisions\/62556"}],"wp:attachment":[{"href":"https:\/\/enableit.com\/es\/wp-json\/wp\/v2\/media?parent=62387"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}