{"id":58476,"date":"2026-08-31T10:28:53","date_gmt":"2026-08-31T08:28:53","guid":{"rendered":"https:\/\/duratis.com\/?page_id=58476"},"modified":"2026-09-16T09:57:44","modified_gmt":"2026-09-16T07:57:44","slug":"dura-holsters-compatibility","status":"publish","type":"page","link":"https:\/\/duratis.com\/de\/dura-holsters-compatibility\/","title":{"rendered":"Dura Holsters Compatibility"},"content":{"rendered":"\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<title>Duratis \u2014 Dura Holsters Compatibility<\/title>\n<style>\n  *{box-sizing:border-box;margin:0;padding:0}\n  body{font-family:'Segoe UI',system-ui,sans-serif;background:#F0F0F0;min-height:100vh}\n  a{color:inherit;text-decoration:none}\n\n  .topbar{background:#1F1F1F;padding:0 28px;height:52px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}\n  .logo{font-size:20px;font-weight:500;color:#fff;letter-spacing:.02em}\n  .logo span{color:#ED232E}\n  .conn-pill{display:flex;align-items:center;gap:7px;font-size:12px;padding:5px 14px;border-radius:20px;cursor:pointer;border:none !important;font-family:inherit;transition:background .15s}\n  .conn-pill.demo{background:#444;color:#ccc}\n  .conn-pill.ok{background:#1a6b3a;color:#e6f4ec}\n  .conn-pill.err{background:#7a1f1f;color:#fce8e8}\n  .conn-pill i{font-size:13px}\n\n  .setup-bar{background:#fff;border-bottom:1px solid #e0e0e0;padding:14px 28px;display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}\n  .setup-bar.hidden{display:none}\n  .fg{display:flex;flex-direction:column;gap:5px}\n  .fg label{font-size:11px;color:#666;text-transform:uppercase;letter-spacing:.08em;font-weight:600}\n  .fg input{padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:13px;font-family:inherit;width:380px;outline:none}\n  .fg input:focus{border-color:#ED232E}\n  .fg .hint{font-size:11px;color:#999;margin-top:3px}\n  .btn-connect{background:#ED232E !important;color:#fff !important;border:none !important;padding:9px 20px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;font-family:inherit;white-space:nowrap;height:38px}\n  .btn-connect:hover{background:#c91d28 !important}\n  .btn-connect:disabled{opacity:.5;cursor:not-allowed}\n\n  .main{max-width:1400px;margin:0 auto;padding:24px 28px}\n\n  .filters-card{background:#fff;border-radius:12px;padding:16px 20px;margin-bottom:16px;display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end;box-shadow:0 1px 3px rgba(0,0,0,.08)}\n  .ff{display:flex;flex-direction:column;gap:5px}\n  .ff label{font-size:11px;color:#666;text-transform:uppercase;letter-spacing:.08em;font-weight:600}\n  .ff select{padding:7px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;font-family:inherit;background:#fff;outline:none;cursor:pointer;min-width:145px}\n  .ff select:focus{border-color:#ED232E}\n  .legend{display:flex;gap:10px;align-items:center;margin-left:auto}\n  .bp{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:4px 10px;border-radius:20px}\n  .bp.promo{background:#e6f4ec;color:#1a6b3a}\n  .bp.leg{background:#eee;color:#555}\n\n  .alert-banner{background:#fff8e1;border:1px solid #f5c542;border-radius:10px;padding:12px 18px;margin-bottom:14px;display:none;align-items:center;gap:10px;font-size:13px;color:#5c4200}\n  .alert-banner.show{display:flex}\n  .adot{width:8px;height:8px;background:#ED232E;border-radius:50%;flex-shrink:0;animation:pulse 1.5s infinite}\n  @keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}\n\n  .stats-row{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}\n  .sc{background:#fff;border-radius:10px;padding:12px 18px;min-width:130px;box-shadow:0 1px 3px rgba(0,0,0,.08)}\n  .sl{font-size:11px;color:#888;text-transform:uppercase;letter-spacing:.07em;font-weight:600}\n  .sv{font-size:24px;font-weight:600;color:#1F1F1F;margin-top:2px}\n  .sv.red{color:#ED232E}\n\n  .table-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.08)}\n  .table-wrap{overflow-x:auto}\n  table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}\n  thead tr{background:#1F1F1F}\n  thead th{color:#fff;padding:8px 6px;text-align:left;font-weight:500;white-space:nowrap;font-size:11px;letter-spacing:.03em;position:sticky;top:0;z-index:10;background:#1F1F1F}\n  thead th.hc{text-align:center;min-width:58px}\n  .hc-link{display:inline-flex;align-items:center;color:#fff !important;text-decoration:none;font-size:10px;font-weight:400;margin-top:2px}\n  .hc-link:visited{color:#fff !important}\n  .hc-link:hover{color:#ED232E !important;text-decoration:underline}\n  thead th.model-th{position:sticky;left:0;z-index:11;background:#1F1F1F}\n  tbody tr{border-bottom:1px solid #F0F0F0;transition:background .1s}\n  tbody tr:last-child{border-bottom:none}\n  tbody tr:hover{background:#FAFAFA}\n  tbody tr:hover .edit-btn{background:#e0e0e0}\n  tbody tr.rnew{background:#fff8e1}\n  tbody tr.rnew:hover{background:#fff1c4}\n  td{padding:7px 8px;color:#333;vertical-align:middle;font-size:12.5px}\n  td.model-col{font-weight:600;position:sticky;left:0;background:#fff;z-index:5;box-shadow:2px 0 4px -2px rgba(0,0,0,.08)}\n  tbody tr:hover td.model-col{background:#FAFAFA}\n  tbody tr.rnew td.model-col{background:#fff8e1}\n  tbody tr.edit-row td.model-col{background:#fffbf0}\n  .yb{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:#ED232E;border-radius:50%}\n  .yb svg{width:12px;height:12px;fill:none;stroke:#fff;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}\n  .new-tag{background:#f5c542;color:#5c4200;font-size:10px;font-weight:700;padding:2px 7px;border-radius:10px;margin-left:6px;vertical-align:middle}\n  .add-btn{font-size:11px;padding:3px 10px;border-radius:6px;cursor:pointer;background:#ED232E !important;color:#fff !important;border:none !important;margin-left:6px;font-family:inherit;font-weight:600}\n  .add-btn:disabled{opacity:.5;cursor:not-allowed}\n  .reject-btn{font-size:11px;padding:3px 8px;border-radius:6px;cursor:pointer;background:#f5f5f5 !important;color:#999 !important;border:1px solid #ddd !important;margin-left:4px;font-family:inherit}\n  .reject-btn:hover{background:#fce8e8 !important;color:#c00 !important;border-color:#fcc !important}\n  .reject-btn:disabled{opacity:.5;cursor:not-allowed}\n  .add-btn:hover{background:#c91d28 !important}\n  .edit-btn{font-size:10px;padding:2px 6px;border-radius:4px;cursor:pointer;background:#f0f0f0 !important;color:#666 !important;border:1px solid #ccc !important;margin-left:4px;font-family:inherit}\n  .edit-btn:hover{background:#e0e0e0 !important;color:#1F1F1F !important}\n  .edit-row td{background:#fffbf0!important}\n  .hol-cell{text-align:center;cursor:pointer;user-select:none}\n  .hol-cell:hover .yb{opacity:.7}\n  .hol-cell.editable:hover{background:#fff3f3}\n  .hol-empty.editable:hover{background:#fff3f3}\n  .save-btn{font-size:11px;padding:3px 10px;border-radius:6px;cursor:pointer;background:#1a6b3a !important;color:#fff !important;border:none !important;margin-left:4px;font-family:inherit;font-weight:600}\n  .cancel-edit-btn{font-size:11px;padding:3px 8px;border-radius:6px;cursor:pointer;background:transparent !important;color:#999 !important;border:1px solid #ddd !important;margin-left:4px;font-family:inherit}\n  .saving-indicator{font-size:11px;color:#1a6b3a;margin-left:8px}\n  .badge-p{display:inline-flex;align-items:center;gap:4px;background:#e6f4ec;color:#1a6b3a;font-size:10px;font-weight:700;padding:3px 9px;border-radius:10px}\n  .badge-l{display:inline-flex;align-items:center;gap:4px;background:#eee;color:#555;font-size:10px;font-weight:600;padding:3px 9px;border-radius:10px}\n  .empty{text-align:center;padding:48px;color:#aaa;font-size:14px}\n\n  .footer{background:#ED232E;padding:12px 28px;display:flex;justify-content:space-between;align-items:center;margin-top:24px;border-radius:12px}\n  .footer span{color:rgba(255,255,255,.9);font-size:12px}\n\n  .toast{position:fixed;bottom:20px;right:20px;background:#7a1f1f;color:#fce8e8;padding:12px 18px;border-radius:8px;font-size:13px;box-shadow:0 4px 20px rgba(0,0,0,.25);z-index:9999999;display:none;max-width:340px}\n  .toast.show{display:block}\n  .toast.ok{background:#1a6b3a;color:#e6f4ec}\n\n  \/* Modal *\/\n  .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;z-index:999999}\n  .modal-overlay.show{display:flex}\n  .modal{background:#fff;border-radius:16px;padding:28px;max-width:400px;width:90%;box-shadow:0 8px 40px rgba(0,0,0,.2)}\n  .modal h3{font-size:16px;font-weight:600;margin-bottom:8px;color:#1F1F1F}\n  .modal p{font-size:13px;color:#666;margin-bottom:20px;line-height:1.6}\n  .modal-btns{display:flex;gap:10px}\n  .modal-btns button{flex:1;padding:10px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;border:1px solid #ddd;font-family:inherit;transition:opacity .15s}\n  .modal-btns button:hover{opacity:.85}\n  .modal-btns button:disabled{opacity:.4;cursor:not-allowed}\n  .mbp{background:#1a6b3a;color:#e6f4ec;border-color:#1a6b3a!important}\n  .mbl{background:#f5f5f5;color:#333}\n  .mbc{background:none;color:#999;max-width:80px}\n  .dims-close-x{position:absolute !important;top:14px !important;right:14px !important;width:28px !important;height:28px !important;border-radius:50% !important;border:none !important;background:#F3F3F3 !important;color:#555 !important;display:flex !important;align-items:center !important;justify-content:center !important;cursor:pointer !important;font-size:15px !important;line-height:1 !important;padding:0 !important;margin:0 !important;appearance:none !important;-webkit-appearance:none !important;box-shadow:none !important}\n  .dims-close-x:hover{background:#e5e5e5 !important;color:#1F1F1F !important}\n  .dims-close-btn{display:block !important;width:100% !important;background:#fff !important;color:#1F1F1F !important;border:1px solid #ddd !important;border-radius:8px !important;padding:10px 16px !important;font-size:13px !important;font-weight:600 !important;font-family:inherit !important;cursor:pointer !important;appearance:none !important;-webkit-appearance:none !important;box-shadow:none !important;text-decoration:none !important}\n  .dims-close-btn:hover{background:#f5f5f5 !important;border-color:#ccc !important}\n\n  .btn-add-model{background:#ED232E !important;color:#fff !important;border:none !important;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;font-family:inherit;margin-left:8px;white-space:nowrap}\n  .btn-add-model:hover{background:#c91d28 !important}\n  .dims-info-link{background:none !important;border:1px solid #ddd !important;color:#666 !important;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;white-space:nowrap}\n  .dims-info-link:hover{background:#f5f5f5 !important;color:#1F1F1F !important}\n  .dims-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:10px}\n  .dims-table th{text-align:left;padding:8px 10px;background:#F7F7F7;color:#666;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.05em}\n  .dims-table td{padding:8px 10px;border-bottom:1px solid #F0F0F0}\n  .dims-cell{color:#666;font-size:11.5px;white-space:normal;max-width:110px;line-height:1.4}\n  .dims-cell.dims-empty{color:#ccc}\n  .add-model-modal{background:#fff;border-radius:16px;padding:28px;max-width:480px;width:95%;box-shadow:0 8px 40px rgba(0,0,0,.2);max-height:90vh;overflow-y:auto}\n  .add-model-modal h3{font-size:16px;font-weight:600;margin-bottom:16px;color:#1F1F1F}\n  .form-row{display:flex;gap:12px;margin-bottom:12px;flex-wrap:wrap}\n  .form-group{display:flex;flex-direction:column;gap:5px;flex:1;min-width:140px}\n  .form-group label{font-size:11px;color:#666;text-transform:uppercase;letter-spacing:.07em;font-weight:600}\n  .form-group input,.form-group select{padding:8px 10px;border:1px solid #ddd;border-radius:8px;font-size:13px;font-family:inherit;outline:none}\n  .form-group input:focus,.form-group select:focus{border-color:#ED232E}\n  .holster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 16px}\n  .hol-toggle{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:12px;font-family:inherit;background:#fff;transition:all .15s}\n  .hol-toggle.active{background:#fce8e8;border-color:#ED232E;color:#ED232E;font-weight:600}\n  .hol-toggle.active::before{content:\"\u2713 \";font-weight:700}\n  .form-actions{display:flex;gap:10px;justify-content:flex-end}\n  .btn-save-model{background:#1a6b3a !important;color:#fff !important;border:none !important;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;font-family:inherit}\n  .btn-save-model:hover{opacity:.88}\n  .btn-save-model:disabled{opacity:.5;cursor:not-allowed}\n  .btn-cancel-model{background:#f5f5f5 !important;color:#666 !important;border:1px solid #ddd !important;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit}\n  .btn-delete-model{background:#fff !important;color:#c00 !important;border:1px solid #f5c5c5 !important;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;font-weight:600;margin-right:auto}\n  .btn-delete-model:hover{background:#fce8e8 !important;border-color:#e79 !important}\n  .btn-delete-model:disabled{opacity:.5;cursor:not-allowed}\n  @media(max-width:600px){\n    .main{padding:16px}\n    .fg input{width:100%}\n  }\n\n  \/* \u2500\u2500 Widok kart \u2014 prze\u0142\u0105czane z JS na podstawie RZECZYWISTEJ szeroko\u015bci\n     kontenera (.main), nie szeroko\u015bci okna przegl\u0105darki. WordPress cz\u0119sto\n     wstawia t\u0119 stron\u0119 w w\u0119\u017csz\u0105 kolumn\u0119 tre\u015bci ni\u017c ca\u0142e okno, wi\u0119c @media\n     (kt\u00f3ry sprawdza tylko okno) nie wystarcza\u0142 \u2014 tabela i tak wymaga\u0142a\n     przewijania w bok, mimo szerokiego okna. \u2500\u2500 *\/\n  .cards-wrap{display:none}\n  .device-card{background:#fff;border-radius:12px;padding:14px 16px;margin-bottom:10px;box-shadow:0 1px 3px rgba(0,0,0,.08)}\n  .device-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}\n  .device-card-title{font-weight:600;font-size:15px;color:#1F1F1F}\n  .device-card-sub{font-size:12px;color:#888;margin-top:2px}\n  .device-card-dims{font-size:12px;color:#666;margin-top:10px;padding-top:10px;border-top:1px solid #F0F0F0}\n  .device-card-holsters{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}\n  .hol-chip{background:#e6f4ec;color:#1a6b3a !important;font-size:11px;font-weight:600;padding:5px 11px;border-radius:20px;display:inline-flex;align-items:center;gap:4px;text-decoration:none;cursor:pointer}\n  .hol-chip:visited{color:#1a6b3a}\n  .hol-chip:hover{background:#d4ecdf}\n  .hol-chip-none{color:#bbb !important;font-size:12px;font-style:italic;padding:4px 0}\n  .main.is-narrow .table-card{display:none}\n  .main.is-narrow .cards-wrap{display:block}\n<\/style>\n\n\n\n<div class=\"main\">\n  <div class=\"filters-card\">\n    <div class=\"ff\"><label>Segment<\/label>\n      <select id=\"seg-f\" onchange=\"rebuildBrandFilter();render()\">\n        <option value=\"\">All segments<\/option>\n        <option value=\"Payment\">Payment (POS)<\/option>\n        <option value=\"Data Capture\">Data Capture<\/option>\n      <\/select>\n    <\/div>\n    <div class=\"ff\"><label>Brand<\/label><select id=\"brand-f\" onchange=\"render()\"><option value=\"\">All brands<\/option><\/select><\/div>\n    <div class=\"ff\"><label>Holster<\/label>\n      <select id=\"compat-f\" onchange=\"render()\">\n        <option value=\"\">All holsters<\/option>\n        <option value=\"pocketM\">Pocket M<\/option>\n        <option value=\"pocketL\">Pocket L<\/option>\n        <option value=\"pouchS\">Pouch S<\/option>\n        <option value=\"pouchM\">Pouch M<\/option>\n        <option value=\"pouchL\">Pouch L<\/option>\n        <option value=\"pistol\">Pistol<\/option>\n      <\/select>\n    <\/div>\n    <button class=\"dims-info-link\" onclick=\"openDimsInfo()\" style=\"margin-left:auto\">\u2139\ufe0f Holster Dimensions<\/button>\n  <\/div>\n\n  <div class=\"stats-row\">\n    <div class=\"sc\"><div class=\"sl\">Total models<\/div><div class=\"sv\" id=\"s-all\">\u2014<\/div><\/div>\n  <\/div>\n\n  <div class=\"table-card\">\n    <div class=\"table-wrap\">\n      <table>\n        <thead><tr>\n          <th class=\"model-th\" style=\"min-width:115px\">Model<\/th>\n          <th class=\"col-segment\" style=\"min-width:72px\">Segment<\/th><th class=\"col-marka\" style=\"min-width:92px\">Brand<\/th><th class=\"col-wymiary\" style=\"min-width:85px\">Dimensions (mm)<\/th>\n          <th class=\"hc\"><div>Pocket M<\/div><a href=\"https:\/\/duratis.com\/duratis-product\/dura-pocket-holster-size-m\/\" target=\"_blank\" rel=\"noopener\" class=\"hc-link\">View product<svg aria-hidden=\"true\" viewBox=\"0 0 24 24\" width=\"10\" height=\"10\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-left:3px;vertical-align:-1px\"><path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"><\/path><polyline points=\"15 3 21 3 21 9\"><\/polyline><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"><\/line><\/svg><\/a><\/th><th class=\"hc\"><div>Pocket L<\/div><a href=\"https:\/\/duratis.com\/duratis-product\/dura-pocket-holster-size-l\/\" target=\"_blank\" rel=\"noopener\" class=\"hc-link\">View product<svg aria-hidden=\"true\" viewBox=\"0 0 24 24\" width=\"10\" height=\"10\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-left:3px;vertical-align:-1px\"><path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"><\/path><polyline points=\"15 3 21 3 21 9\"><\/polyline><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"><\/line><\/svg><\/a><\/th>\n          <th class=\"hc\"><div>Pouch S<\/div><a href=\"https:\/\/duratis.com\/duratis-product\/dura-pouch-holster-size-s\/\" target=\"_blank\" rel=\"noopener\" class=\"hc-link\">View product<svg aria-hidden=\"true\" viewBox=\"0 0 24 24\" width=\"10\" height=\"10\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-left:3px;vertical-align:-1px\"><path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"><\/path><polyline points=\"15 3 21 3 21 9\"><\/polyline><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"><\/line><\/svg><\/a><\/th><th class=\"hc\"><div>Pouch M<\/div><a href=\"https:\/\/duratis.com\/duratis-product\/dura-pouch-holster-size-m\/\" target=\"_blank\" rel=\"noopener\" class=\"hc-link\">View product<svg aria-hidden=\"true\" viewBox=\"0 0 24 24\" width=\"10\" height=\"10\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-left:3px;vertical-align:-1px\"><path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"><\/path><polyline points=\"15 3 21 3 21 9\"><\/polyline><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"><\/line><\/svg><\/a><\/th>\n          <th class=\"hc\"><div>Pouch L<\/div><a href=\"https:\/\/duratis.com\/duratis-product\/dura-pouch-holster-size-l\/\" target=\"_blank\" rel=\"noopener\" class=\"hc-link\">View product<svg aria-hidden=\"true\" viewBox=\"0 0 24 24\" width=\"10\" height=\"10\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-left:3px;vertical-align:-1px\"><path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"><\/path><polyline points=\"15 3 21 3 21 9\"><\/polyline><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"><\/line><\/svg><\/a><\/th><th class=\"hc\"><div>Pistol<\/div><a href=\"https:\/\/duratis.com\/duratis-product\/dura-pistol-holster-for-mobile-computers-with-pistol-trigger\/\" target=\"_blank\" rel=\"noopener\" class=\"hc-link\">View product<svg aria-hidden=\"true\" viewBox=\"0 0 24 24\" width=\"10\" height=\"10\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-left:3px;vertical-align:-1px\"><path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"><\/path><polyline points=\"15 3 21 3 21 9\"><\/polyline><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"><\/line><\/svg><\/a><\/th>\n        <\/tr><\/thead>\n        <tbody id=\"tbody\"><\/tbody>\n      <\/table>\n    <\/div>\n  <\/div>\n\n  <div class=\"cards-wrap\" id=\"cards\"><\/div>\n\n  <div class=\"footer\">\n    <span>duratis.com &nbsp;|&nbsp; info@duratis.com &nbsp;|&nbsp; +48 668 164 082<\/span>\n  <\/div>\n<\/div>\n\n<div class=\"modal-overlay\" id=\"dims-info-modal\" onclick=\"if(event.target===this) closeDimsInfo()\">\n  <div class=\"modal\" style=\"max-width:440px;position:relative\">\n    <button type=\"button\" class=\"dims-close-x\" onclick=\"closeDimsInfo()\" aria-label=\"Close\">\u2715<\/button>\n    <h3>\ud83d\udcd0 Maximum Internal Holster Dimensions<\/h3>\n    <p style=\"margin-bottom:12px\">Height \u00d7 Width \u00d7 Depth (mm) \u2014 the maximum device size that fits inside each holster.<\/p>\n    <table class=\"dims-table\">\n      <tr><th>Holster<\/th><th>Dimensions (mm)<\/th><\/tr>\n      <tr><td>Pocket M<\/td><td>170 \u00d7 85 \u00d7 40<\/td><\/tr>\n      <tr><td>Pocket L<\/td><td>210 \u00d7 85 \u00d7 60<\/td><\/tr>\n      <tr><td>Pouch S<\/td><td>200 \u00d7 90 \u00d7 40<\/td><\/tr>\n      <tr><td>Pouch M<\/td><td>270 \u00d7 90 \u00d7 65<\/td><\/tr>\n      <tr><td>Pouch L<\/td><td>240 \u00d7 90 \u00d7 60<\/td><\/tr>\n      <tr><td>Pistol<\/td><td>170 \u00d7 90 \u00d7 35<\/td><\/tr>\n    <\/table>\n    <div class=\"modal-btns\" style=\"margin-top:16px\">\n      <button type=\"button\" class=\"dims-close-btn\" onclick=\"closeDimsInfo()\">Close<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n\n<div class=\"toast\" id=\"toast\"><\/div>\n\n<script>\nconst CHECK = '<svg viewBox=\"0 0 24 24\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg>';\n\nfunction showToast(msg, ok){\n  const t = document.getElementById('toast');\n  t.textContent = msg;\n  t.className = 'toast show' + (ok ? ' ok' : '');\n  clearTimeout(t._timer);\n  t._timer = setTimeout(()=>{ t.classList.remove('show'); }, ok ? 3000 : 6000);\n}\n\n\/\/ \u2500\u2500 Demo data (202 models) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nconst DEMO_DATA = [\n  [\"Data Capture\",\"Zebra\",\"TC15\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC20\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC20K\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC21\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC22\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC25\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC26\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC27\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC51\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC52\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC53\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC55\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC56\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC57\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC58\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"TC73\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"EC30\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"EC50\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Zebra\",\"EC55\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA300\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA320\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA500\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA500 Plus\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA500P\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA510\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA520\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA602\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA630\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA630 Plus\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA630T\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"EA660\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"PA726\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"PA730\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"PA760\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Unitech\",\"PA768\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"BP30\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"BM180\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"EF400\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"EF500\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"EF501\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"EF550\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"EF550R\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"EF551\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"HF550\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"HF550X\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"VF550\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"VX500\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"S10\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"S20\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"S50\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Bluebird\",\"S70\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM30\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM45\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM66\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM67\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM68\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM70\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM75\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM80\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM84\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM85\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM86\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM90\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Point Mobile\",\"PM95\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"C6000\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"C61\",\"W obiegu\",0,0,0,1,0,0],\n  [\"Data Capture\",\"Chainway\",\"C66\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"C70\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"C71\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"C72\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"C75\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"C90\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"MC21\",\"Promowany\",0,1,0,1,0,0],\n  [\"Data Capture\",\"Chainway\",\"MC50\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"MC51\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"MC62\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Chainway\",\"MC95\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Honeywell\",\"CT30XP\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Honeywell\",\"CT32\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Honeywell\",\"CT37\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Honeywell\",\"CT45\/CT45XP\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Honeywell\",\"CT47\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Honeywell\",\"CT60\/CT60XP\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Honeywell\",\"EDA52\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Honeywell\",\"EDA56\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Honeywell\",\"EDA57\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Honeywell\",\"EDA5S\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Sunmi\",\"L3\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Sunmi\",\"L2s\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Sunmi\",\"L2Ks\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Sunmi\",\"L2H\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Urovo\",\"CT48\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Urovo\",\"CT58S\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Urovo\",\"DT40\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Urovo\",\"DT50\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Urovo\",\"DT610\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Urovo\",\"DT66\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Urovo\",\"RT30\",\"Promowany\",0,0,0,1,0,0],\n  [\"Data Capture\",\"Urovo\",\"RT40R\",\"Promowany\",0,0,0,1,0,0],\n  [\"Data Capture\",\"Newland\",\"MT65\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Newland\",\"MT67\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Newland\",\"MT90\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Newland\",\"MT93\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Newland\",\"MT95\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Newland\",\"NFT10\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Newland\",\"Carelink M10\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Newland\",\"N7\",\"W obiegu\",0,0,0,1,0,0],\n  [\"Data Capture\",\"Datalogic\",\"Memor 11\",\"W obiegu\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Datalogic\",\"Memor 12\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Datalogic\",\"Memor 17\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Datalogic\",\"Memor 17HC\",\"Promowany\",1,0,1,0,0,0],\n  [\"Data Capture\",\"Datalogic\",\"Memor 30\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Datalogic\",\"Memor 35\",\"Promowany\",1,0,1,0,0,1],\n  [\"Data Capture\",\"Datalogic\",\"Memor K\",\"W obiegu\",1,0,1,0,0,0],\n  [\"Data Capture\",\"Datalogic\",\"Memor K20\",\"Promowany\",1,0,1,0,0,0],\n  [\"Data Capture\",\"Datalogic\",\"Memor K25\",\"Promowany\",1,0,1,0,0,0],\n  [\"Data Capture\",\"iMin\",\"Lark 1\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Sunmi\",\"V3\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"V3H\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"V2 Pro\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"V2s PLUS\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"V2s\",\"W obiegu\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"L3\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Sunmi\",\"M3\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Sunmi\",\"P3 Air\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Sunmi\",\"P3\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"P3H\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"P3H DUAL\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"P3KH\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"P2 LITE SE\",\"W obiegu\",1,0,1,0,0,0],\n  [\"Payment\",\"Sunmi\",\"P2 SE\",\"W obiegu\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"P2\",\"W obiegu\",0,1,0,1,0,0],\n  [\"Payment\",\"Sunmi\",\"P2 PRO\",\"W obiegu\",0,1,0,1,0,0],\n  [\"Payment\",\"Ingenico\",\"AXIUM DX4000\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"Ingenico\",\"AXIUM DX6000\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"Ingenico\",\"AXIUM DX8000\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"Ingenico\",\"AXIUM EX4000\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Ingenico\",\"AXIUM EX6000\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Ingenico\",\"AXIUM EX8000\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Ingenico\",\"LINK 2500\",\"W obiegu\",1,0,1,0,0,0],\n  [\"Payment\",\"Ingenico\",\"MOVE 2500\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Ingenico\",\"MOVE 2600\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Ingenico\",\"MOVE 3500\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Ingenico\",\"MOVE 5000\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"PAX\",\"A50\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"PAX\",\"A50S\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"PAX\",\"A77\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"PAX\",\"A6650\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"PAX\",\"A920\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"PAX\",\"A920 PRO\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"PAX\",\"A920 MAX\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"PAX\",\"A960\",\"Promowany\",0,1,0,1,1,0],\n  [\"Payment\",\"PAX\",\"A8900\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"PAX\",\"A910S\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"PAX\",\"A8500\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"PAX\",\"A99\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Castles Technology\",\"S1F4\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"Castles Technology\",\"S1F4 PRO\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"Castles Technology\",\"S1F3\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Castles Technology\",\"S1F2\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Castles Technology\",\"V3M3\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"Castles Technology\",\"S1E4 PRO\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Castles Technology\",\"S1E2\",\"W obiegu\",1,0,1,0,0,0],\n  [\"Payment\",\"Castles Technology\",\"S1MINI\",\"W obiegu\",1,0,1,0,0,0],\n  [\"Payment\",\"Castles Technology\",\"S1MINI2\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Castles Technology\",\"S1E\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Castles Technology\",\"S1E-L\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Castles Technology\",\"S1E2-L\",\"W obiegu\",0,0,0,0,0,0],\n  [\"Payment\",\"Castles Technology\",\"S1F2-L\",\"W obiegu\",0,0,0,0,0,0],\n  [\"Payment\",\"Verifone\",\"T650m\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Verifone\",\"e235\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Verifone\",\"e280s\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Verifone\",\"e285\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Verifone\",\"Carbon Mobile 5\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Verifone\",\"V640m\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Verifone\",\"V660p\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"Verifone\",\"V210\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Verifone\",\"V200t\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Verifone\",\"V240m\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Verifone\",\"T650p\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Verifone\",\"Victa Mobile\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Verifone\",\"Victa Portable\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"iMin\",\"Swift 2 Ultra\",\"Promowany\",0,0,0,1,0,0],\n  [\"Payment\",\"iMin\",\"Swift 2 Pro\",\"Promowany\",0,0,0,1,0,0],\n  [\"Payment\",\"iMin\",\"Swift 2\",\"Promowany\",0,0,0,1,0,0],\n  [\"Payment\",\"iMin\",\"Swift 1 Pro\",\"W obiegu\",0,0,0,1,0,0],\n  [\"Payment\",\"Newland NPT\",\"N950K\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"Newland NPT\",\"N950S\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"Newland NPT\",\"N950\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Newland NPT\",\"N910 Pro\",\"Promowany\",0,1,0,0,1,0],\n  [\"Payment\",\"Newland NPT\",\"N910\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Newland NPT\",\"S90\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Newland NPT\",\"N750\",\"W obiegu\",1,0,1,0,0,0],\n  [\"Payment\",\"Ciontek\",\"CS10\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Ciontek\",\"CS30\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Ciontek\",\"CS50\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Landi\",\"M10SE\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Landi\",\"M20SE\",\"Promowany\",1,0,1,0,0,0],\n  [\"Payment\",\"Landi\",\"M20\",\"Promowany\",0,1,0,1,0,0],\n  [\"Payment\",\"Landi\",\"P20\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Landi\",\"L20\",\"W obiegu\",0,1,0,0,1,0],\n  [\"Payment\",\"Landi\",\"P30\",\"W obiegu\",0,1,0,0,1,0],\n];\n\nlet allData = DEMO_DATA.map(r=>({\n  segment:r[0],brand:r[1],model:r[2],\n  pocketM:r[4],pocketL:r[5],pouchS:r[6],pouchM:r[7],pouchL:r[8],pistol:r[9],\n  dimensions:''\n}));\n\nconst HOLSTERS = ['pocketM','pocketL','pouchS','pouchM','pouchL','pistol'];\nconst HOLSTER_LABELS = ['Pocket M','Pocket L','Pouch S','Pouch M','Pouch L','Pistol'];\nconst HOLSTER_URLS = {\n  pocketM: 'https:\/\/duratis.com\/duratis-product\/dura-pocket-holster-size-m\/',\n  pocketL: 'https:\/\/duratis.com\/duratis-product\/dura-pocket-holster-size-l\/',\n  pouchS:  'https:\/\/duratis.com\/duratis-product\/dura-pouch-holster-size-s\/',\n  pouchM:  'https:\/\/duratis.com\/duratis-product\/dura-pouch-holster-size-m\/',\n  pouchL:  'https:\/\/duratis.com\/duratis-product\/dura-pouch-holster-size-l\/',\n  pistol:  'https:\/\/duratis.com\/duratis-product\/dura-pistol-holster-for-mobile-computers-with-pistol-trigger\/',\n};\n\n\/\/ \u2500\u2500 Maksymalne wymiary wewn\u0119trzne kabur (mm) \u2014 z okna \"Wymiary kabur\" \u2500\u2500\nconst HOLSTER_MAX_DIMS = {\n  pocketM: [170, 85, 40],\n  pocketL: [210, 85, 60],\n  pouchS:  [200, 90, 40],\n  pouchM:  [270, 90, 65],\n  pouchL:  [240, 90, 60],\n  pistol:  [170, 90, 35],\n};\nconst HOLSTER_ABBR = {\n  pocketM: 'PktM', pocketL: 'PktL', pouchS: 'PchS',\n  pouchM: 'PchM', pouchL: 'PchL', pistol: 'Pist',\n};\n\n\/\/ Wyci\u0105ga 3 liczby z tekstu wymiar\u00f3w (obs\u0142uguje separatory x, \u00d7, *, przecinki dziesi\u0119tne)\nfunction parseDeviceDims(str){\n  if(!str) return null;\n  const nums = String(str).match(\/\\d+(?:[.,]\\d+)?\/g);\n  if(!nums || nums.length < 3) return null;\n  return nums.slice(0,3).map(n => parseFloat(n.replace(',', '.'))).sort((a,b) => b-a);\n}\n\n\/\/ Sprawdza czy urz\u0105dzenie (posortowane wymiary) mie\u015bci si\u0119 w kaburze \u2014 orientacyjnie\nfunction fitsHolster(deviceSorted, holsterKey){\n  const h = [...HOLSTER_MAX_DIMS[holsterKey]].sort((a,b) => b-a);\n  return [0,1,2].every(i => deviceSorted[i] <= h[i]);\n}\n\n\/\/ Zwraca list\u0119 kabur (kluczy), w kt\u00f3re urz\u0105dzenie si\u0119 orientacyjnie mie\u015bci\nfunction computeFittingHolsters(dimStr){\n  const d = parseDeviceDims(dimStr);\n  if(!d) return null;\n  return HOLSTERS.filter(key => fitsHolster(d, key));\n}\n\nfunction openDimsInfo(){\n  document.getElementById('dims-info-modal').classList.add('show');\n}\nfunction closeDimsInfo(){\n  document.getElementById('dims-info-modal').classList.remove('show');\n}\ndocument.addEventListener('keydown', e => {\n  if(e.key === 'Escape') closeDimsInfo();\n});\n\nfunction rebuildBrandFilter(){\n  const sel = document.getElementById('brand-f');\n  const cur = sel.value;\n  const seg = document.getElementById('seg-f').value;\n  sel.innerHTML = '<option value=\"\">All brands<\/option>';\n  const filtered = seg ? allData.filter(d=>d.segment===seg) : allData;\n  [...new Set(filtered.map(d=>d.brand))].sort().forEach(b=>{\n    const o = document.createElement('option');\n    o.value = b; o.textContent = b; sel.appendChild(o);\n  });\n  sel.value = [...sel.options].some(o=>o.value===cur) ? cur : '';\n}\n\n\/\/ \u2500\u2500 Render \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nfunction render(){\n  const seg = document.getElementById('seg-f').value;\n  const brand = document.getElementById('brand-f').value;\n  const compat = document.getElementById('compat-f').value;\n\n  const filtered = allData.filter(d=>{\n    if(seg ? d.segment !== seg : false) return false;\n    if(brand ? d.brand !== brand : false) return false;\n    if(compat ? !d[compat] : false) return false;\n    return true;\n  }).sort((a,b) =>\n    a.brand.localeCompare(b.brand) ||\n    a.model.localeCompare(b.model, undefined, {numeric:true, sensitivity:'base'})\n  );\n\n  const tbody = document.getElementById('tbody');\n  tbody.innerHTML = '';\n\n  if(filtered.length === 0){\n    tbody.innerHTML = '<tr><td colspan=\"10\"><div class=\"empty\">No models match the selected filters<\/div><\/td><\/tr>';\n  } else {\n    filtered.forEach(d=>{\n      const tr = document.createElement('tr');\n\n      const modelHtml = `<td class=\"model-col\">${d.model}<\/td>`;\n\n      let holHtml = '';\n      HOLSTERS.forEach(h=>{\n        holHtml += `<td style=\"text-align:center\">${d[h]?`<div class=\"yb\">${CHECK}<\/div>`:''}<\/td>`;\n      });\n\n      \/\/ Wymiary \u2014 tylko surowa warto\u015b\u0107, bez podpowiedzi dopasowania\n      const dimsHtml = d.dimensions\n        ? `<td class=\"dims-cell col-wymiary\">${d.dimensions}<\/td>`\n        : `<td class=\"dims-cell col-wymiary dims-empty\">\u2014<\/td>`;\n\n      tr.innerHTML = `${modelHtml}<td class=\"col-segment\">${d.segment}<\/td><td class=\"col-marka\">${d.brand}<\/td>${dimsHtml}${holHtml}`;\n      tbody.appendChild(tr);\n    });\n  }\n\n  document.getElementById('s-all').textContent = filtered.length;\n  renderCards(filtered);\n}\n\n\/\/ \u2500\u2500 Widok kart \u2014 u\u017cywany tylko na w\u0105skich ekranach (patrz CSS @media max-width:700px) \u2500\u2500\nfunction renderCards(filtered){\n  const wrap = document.getElementById('cards');\n  wrap.innerHTML = '';\n\n  if(filtered.length === 0){\n    wrap.innerHTML = '<div class=\"empty\">No models match the selected filters<\/div>';\n    return;\n  }\n\n  filtered.forEach(d=>{\n    const card = document.createElement('div');\n    card.className = 'device-card';\n\n    const compatible = HOLSTERS.filter(h => d[h]);\n    const holstersHtml = compatible.length\n      ? `<div class=\"device-card-holsters\">${compatible.map(h => `<a href=\"${HOLSTER_URLS[h]}\" target=\"_blank\" rel=\"noopener\" class=\"hol-chip\">\u2713 ${HOLSTER_LABELS[HOLSTERS.indexOf(h)]}<svg aria-hidden=\"true\" viewBox=\"0 0 24 24\" width=\"10\" height=\"10\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-left:3px;vertical-align:-1px\"><path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"><\/path><polyline points=\"15 3 21 3 21 9\"><\/polyline><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"><\/line><\/svg><\/a>`).join('')}<\/div>`\n      : `<div class=\"hol-chip-none\">No holsters assigned<\/div>`;\n\n    const dimsHtml = d.dimensions\n      ? `<div class=\"device-card-dims\">Dimensions: ${d.dimensions}<\/div>`\n      : '';\n\n    card.innerHTML = `\n      <div class=\"device-card-top\">\n        <div>\n          <div class=\"device-card-title\">${d.model}<\/div>\n          <div class=\"device-card-sub\">${d.brand} \u2022 ${d.segment}<\/div>\n        <\/div>\n      <\/div>\n      ${holstersHtml}\n      ${dimsHtml}\n    `;\n    wrap.appendChild(card);\n  });\n}\n\nrebuildBrandFilter();\nrender();\n\n\/\/ Auto-connect przy starcie\nconst SHEET_ID = '1kzq6wNCaWsbGlrJ12-Ap364JaH6mqEeLDB6UHd3a-P8';\nconst REFRESH_MS = 60000; \/\/ co ile od\u015bwie\u017ca\u0107 dane w tle \u2014 60 sekund\n\nasync function loadData() {\n  try {\n    const res = await fetch(`https:\/\/docs.google.com\/spreadsheets\/d\/${SHEET_ID}\/gviz\/tq?tqx=out:json&sheet=Baza+modeli`);\n    if(!res.ok) throw new Error('HTTP '+res.status);\n    const text = await res.text();\n    const json = JSON.parse(text.replace(\/^[^{]+\/,'').replace(\/[^}]+$\/,''));\n    allData = [];\n    (json.table.rows||[]).forEach(r=>{\n      const c = r.c;\n      if(!c||!c[2]||!c[2].v) return;\n      if(String(c[2].v).trim()===\"Model\"||String(c[0]?.v||\"\").trim()===\"Segment\") return;\n      const yn = v => {\n        if(!v) return 0;\n        const s = String(v.v).trim().toUpperCase();\n        return ['\u2713','\u2714','\u2705','\u221a','TRUE','TAK','X','1'].includes(s) ? 1 : 0;\n      };\n      allData.push({\n        segment:String(c[0]?.v||'').trim(), brand:String(c[1]?.v||'').trim(), model:String(c[2]?.v||'').trim(),\n        pocketM:yn(c[4]),pocketL:yn(c[5]),pouchS:yn(c[6]),\n        pouchM:yn(c[7]),pouchL:yn(c[8]),pistol:yn(c[9]),\n        dimensions:c[11]?.v||''\n      });\n    });\n    rebuildBrandFilter(); \/\/ zachowuje aktualnie wybrany filtr marki, je\u015bli nadal istnieje\n    render();\n  } catch(e) {\n    console.warn('Od\u015bwie\u017cenie danych nie powiod\u0142o si\u0119:', e.message);\n    \/\/ Celowo ciche niepowodzenie \u2014 je\u015bli jedno od\u015bwie\u017cenie zawiedzie (np. chwilowy\n    \/\/ problem sieciowy), strona po prostu pokazuje ostatnio wczytane dane i spr\u00f3buje\n    \/\/ ponownie przy kolejnym cyklu (REFRESH_MS), zamiast pokazywa\u0107 b\u0142\u0105d odwiedzaj\u0105cemu.\n  }\n}\n\nloadData(); \/\/ pierwsze wczytanie przy otwarciu strony\nsetInterval(loadData, REFRESH_MS); \/\/ i potem cyklicznie, w tle, bez prze\u0142adowania strony\n\n\/\/ \u2500\u2500 Prze\u0142\u0105czanie tabela\/karty na podstawie REALNEJ szeroko\u015bci kontenera \u2500\u2500\n\/\/ (nie okna przegl\u0105darki \u2014 patrz komentarz w CSS przy .main.is-narrow).\n\/\/ Pr\u00f3g 1150px dobrany tak samo jak wcze\u015bniej: to szeroko\u015b\u0107, przy kt\u00f3rej\n\/\/ tabela z 10 kolumnami zaczyna wymaga\u0107 przewijania w bok.\n\/\/ Pr\u00f3g 768px \u2014 standardowa granica \"telefon vs. komputer\" (m.in. z Bootstrapa).\n\/\/ Typowa kolumna tre\u015bci WordPress na komputerze jest szersza ni\u017c to, nawet\n\/\/ w w\u0105skich \"boxed\" motywach \u2014 a telefony w pionie s\u0105 w\u0119\u017csze. Je\u015bli mimo to\n\/\/ na jakim\u015b komputerze\/tablecie zobaczysz karty tam, gdzie chcesz tabel\u0119\n\/\/ (albo odwrotnie), to jedna liczba do zmiany.\nconst CARD_BREAKPOINT = 768;\nconst mainEl = document.querySelector('.main');\n\nfunction updateLayoutMode() {\n  const width = mainEl.getBoundingClientRect().width;\n  mainEl.classList.toggle('is-narrow', width < CARD_BREAKPOINT);\n}\n\nif (window.ResizeObserver) {\n  new ResizeObserver(updateLayoutMode).observe(mainEl);\n} else {\n  \/\/ Rzadki, starszy przypadek bez ResizeObserver \u2014 nas\u0142uch na resize okna\n  \/\/ jako zapasowe rozwi\u0105zanie (mniej precyzyjne, ale lepsze ni\u017c nic).\n  window.addEventListener('resize', updateLayoutMode);\n}\nupdateLayoutMode(); \/\/ ustawienie od razu przy starcie, przed pierwszym zdarzeniem resize\n<\/script>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Duratis \u2014 Dura Holsters Compatibility Segment All segmentsPayment (POS)Data Capture BrandAll brands Holster All holstersPocket MPocket LPouch SPouch MPouch LPistol \u2139\ufe0f Holster Dimensions Total models \u2014 Model Segment Brand Dimensions (mm) Pocket M View product Pocket L View product Pouch S View product Pouch M View product Pouch L View product Pistol View product duratis.com [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-58476","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Dura Holsters Compatibility - Duratis Accessories | Cases, Mounts, Screen &amp; Keypad Protectors<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/duratis.com\/de\/dura-holsters-compatibility\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dura Holsters Compatibility - Duratis Accessories | Cases, Mounts, Screen &amp; Keypad Protectors\" \/>\n<meta property=\"og:description\" content=\"Duratis \u2014 Dura Holsters Compatibility Segment All segmentsPayment (POS)Data Capture BrandAll brands Holster All holstersPocket MPocket LPouch SPouch MPouch LPistol \u2139\ufe0f Holster Dimensions Total models \u2014 Model Segment Brand Dimensions (mm) Pocket M View product Pocket L View product Pouch S View product Pouch M View product Pouch L View product Pistol View product duratis.com [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/duratis.com\/de\/dura-holsters-compatibility\/\" \/>\n<meta property=\"og:site_name\" content=\"Duratis Accessories | Cases, Mounts, Screen &amp; Keypad Protectors\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/duratis\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-16T07:57:44+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/duratis.com\\\/dura-holsters-compatibility\\\/\",\"url\":\"https:\\\/\\\/duratis.com\\\/dura-holsters-compatibility\\\/\",\"name\":\"Dura Holsters Compatibility - Duratis Accessories | Cases, Mounts, Screen &amp; Keypad Protectors\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/duratis.com\\\/#website\"},\"datePublished\":\"2026-08-31T08:28:53+00:00\",\"dateModified\":\"2026-09-16T07:57:44+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/duratis.com\\\/dura-holsters-compatibility\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/duratis.com\\\/dura-holsters-compatibility\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/duratis.com\\\/dura-holsters-compatibility\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/duratis.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dura Holsters Compatibility\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/duratis.com\\\/#website\",\"url\":\"https:\\\/\\\/duratis.com\\\/\",\"name\":\"Duratis Accessories | Custom-made Cases, Holsters, Mounts, Screen & Keypad Protectors\",\"description\":\"We make accessories for payment terminals, mobile scanners, mobile computers and other devices.\",\"publisher\":{\"@id\":\"https:\\\/\\\/duratis.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/duratis.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/duratis.com\\\/#organization\",\"name\":\"Duratis\",\"url\":\"https:\\\/\\\/duratis.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/duratis.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/duratis.com\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/duratis-logo.svg\",\"contentUrl\":\"https:\\\/\\\/duratis.com\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/duratis-logo.svg\",\"width\":270,\"height\":61,\"caption\":\"Duratis\"},\"image\":{\"@id\":\"https:\\\/\\\/duratis.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/duratis\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/duratis-accessories\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCgCWiGf6mJ-MMSx3M1gfdeg\\\/featured\"],\"legalName\":\"Unito Sp. z o.o. Sp. k.\",\"description\":\"Duratis is a European manufacturer of accessories for POS payment terminals, Data Capture devices and other devices used in business.\",\"email\":\"info@duratis.com\",\"telephone\":\"+48 668 164 082\",\"vatID\":\"PL5862296099\",\"taxID\":\"5862296099\",\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"KRS\",\"value\":\"0000551492\"},\"address\":{\"@type\":\"PostalAddress\",\"streetAddress\":\"Rewerenda 28\",\"postalCode\":\"80-209\",\"addressLocality\":\"Chwaszczyno\",\"addressCountry\":\"PL\"},\"contactPoint\":{\"@type\":\"ContactPoint\",\"contactType\":\"sales\",\"email\":\"info@duratis.com\",\"telephone\":\"+48 668 164 082\",\"url\":\"https:\\\/\\\/duratis.com\\\/contact\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Dura Holsters Compatibility - Duratis Accessories | Cases, Mounts, Screen &amp; Keypad Protectors","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/duratis.com\/de\/dura-holsters-compatibility\/","og_locale":"de_DE","og_type":"article","og_title":"Dura Holsters Compatibility - Duratis Accessories | Cases, Mounts, Screen &amp; Keypad Protectors","og_description":"Duratis \u2014 Dura Holsters Compatibility Segment All segmentsPayment (POS)Data Capture BrandAll brands Holster All holstersPocket MPocket LPouch SPouch MPouch LPistol \u2139\ufe0f Holster Dimensions Total models \u2014 Model Segment Brand Dimensions (mm) Pocket M View product Pocket L View product Pouch S View product Pouch M View product Pouch L View product Pistol View product duratis.com [&hellip;]","og_url":"https:\/\/duratis.com\/de\/dura-holsters-compatibility\/","og_site_name":"Duratis Accessories | Cases, Mounts, Screen &amp; Keypad Protectors","article_publisher":"https:\/\/www.facebook.com\/duratis\/","article_modified_time":"2026-09-16T07:57:44+00:00","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/duratis.com\/dura-holsters-compatibility\/","url":"https:\/\/duratis.com\/dura-holsters-compatibility\/","name":"Dura Holsters Compatibility - Duratis Accessories | Cases, Mounts, Screen &amp; Keypad Protectors","isPartOf":{"@id":"https:\/\/duratis.com\/#website"},"datePublished":"2026-08-31T08:28:53+00:00","dateModified":"2026-09-16T07:57:44+00:00","breadcrumb":{"@id":"https:\/\/duratis.com\/dura-holsters-compatibility\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/duratis.com\/dura-holsters-compatibility\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/duratis.com\/dura-holsters-compatibility\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/duratis.com\/"},{"@type":"ListItem","position":2,"name":"Dura Holsters Compatibility"}]},{"@type":"WebSite","@id":"https:\/\/duratis.com\/#website","url":"https:\/\/duratis.com\/","name":"Duratis Zubeh\u00f6r | Ma\u00dfgeschneiderte Taschen, Holster, Halterungen, Bildschirm- und Tastaturschutz","description":"Wir stellen Zubeh\u00f6r f\u00fcr Zahlungsterminals, mobile Scanner, mobile Computer und andere Ger\u00e4te her.","publisher":{"@id":"https:\/\/duratis.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/duratis.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/duratis.com\/#organization","name":"Duratis","url":"https:\/\/duratis.com\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/duratis.com\/#\/schema\/logo\/image\/","url":"https:\/\/duratis.com\/wp-content\/uploads\/2024\/08\/duratis-logo.svg","contentUrl":"https:\/\/duratis.com\/wp-content\/uploads\/2024\/08\/duratis-logo.svg","width":270,"height":61,"caption":"Duratis"},"image":{"@id":"https:\/\/duratis.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/duratis\/","https:\/\/www.linkedin.com\/company\/duratis-accessories\/","https:\/\/www.youtube.com\/channel\/UCgCWiGf6mJ-MMSx3M1gfdeg\/featured"],"legalName":"Unito Sp. z o.o. Sp. k.","description":"Duratis is a European manufacturer of accessories for POS payment terminals, Data Capture devices and other devices used in business.","email":"info@duratis.com","telephone":"+48 668 164 082","vatID":"PL5862296099","taxID":"5862296099","identifier":{"@type":"PropertyValue","propertyID":"KRS","value":"0000551492"},"address":{"@type":"PostalAddress","streetAddress":"Rewerenda 28","postalCode":"80-209","addressLocality":"Chwaszczyno","addressCountry":"PL"},"contactPoint":{"@type":"ContactPoint","contactType":"sales","email":"info@duratis.com","telephone":"+48 668 164 082","url":"https:\/\/duratis.com\/contact\/"}}]}},"_links":{"self":[{"href":"https:\/\/duratis.com\/de\/wp-json\/wp\/v2\/pages\/58476","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/duratis.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/duratis.com\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/duratis.com\/de\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/duratis.com\/de\/wp-json\/wp\/v2\/comments?post=58476"}],"version-history":[{"count":13,"href":"https:\/\/duratis.com\/de\/wp-json\/wp\/v2\/pages\/58476\/revisions"}],"predecessor-version":[{"id":58503,"href":"https:\/\/duratis.com\/de\/wp-json\/wp\/v2\/pages\/58476\/revisions\/58503"}],"wp:attachment":[{"href":"https:\/\/duratis.com\/de\/wp-json\/wp\/v2\/media?parent=58476"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}