{"id":3686,"date":"2020-05-04T09:43:12","date_gmt":"2020-05-04T09:43:12","guid":{"rendered":"https:\/\/door-al.hr\/index.php\/sigurnosni-sustavi\/"},"modified":"2023-03-24T10:31:30","modified_gmt":"2023-03-24T10:31:30","slug":"sicherheitssysteme","status":"publish","type":"page","link":"https:\/\/door-al.hr\/de\/index.php\/sicherheitssysteme\/","title":{"rendered":"Sicherheitssysteme"},"content":{"rendered":"<div id=\"pl-3686\"  class=\"panel-layout\" ><div id=\"pg-3686-0\"  class=\"panel-grid panel-has-style\" ><div class=\"siteorigin-panels-stretch panel-row-style panel-row-style-for-3686-0\" data-stretch-type=\"full-stretched\" ><div id=\"pgc-3686-0-0\"  class=\"panel-grid-cell\" ><div id=\"panel-3686-0-0-0\" class=\"so-panel widget widget_siteorigin-panels-builder panel-first-child panel-last-child\" data-index=\"0\" ><div id=\"pl-w640e27a2c9ff1\"  class=\"panel-layout\" ><div id=\"pg-w640e27a2c9ff1-0\"  class=\"panel-grid panel-has-style\" ><div class=\"panel-row-style panel-row-style-for-w640e27a2c9ff1-0\" ><div id=\"pgc-w640e27a2c9ff1-0-0\"  class=\"panel-grid-cell\" ><div id=\"panel-w640e27a2c9ff1-0-0-0\" class=\"so-panel widget widget_sow-image panel-first-child panel-last-child\" data-index=\"0\" ><div class=\"panel-widget-style panel-widget-style-for-w640e27a2c9ff1-0-0-0\" ><div\n\t\t\t\n\t\t\tclass=\"so-widget-sow-image so-widget-sow-image-default-e4c2d9f6c920\"\n\t\t\t\n\t\t>\n<div class=\"sow-image-container\">\n\t\t<img \n\tsrc=\"https:\/\/door-al.hr\/wp-content\/uploads\/2020\/06\/sigurnost_c-1-1024x554.jpg\" width=\"900\" height=\"487\" srcset=\"https:\/\/door-al.hr\/wp-content\/uploads\/2020\/06\/sigurnost_c-1-1024x554.jpg 1024w, https:\/\/door-al.hr\/wp-content\/uploads\/2020\/06\/sigurnost_c-1-300x162.jpg 300w, https:\/\/door-al.hr\/wp-content\/uploads\/2020\/06\/sigurnost_c-1-768x415.jpg 768w, https:\/\/door-al.hr\/wp-content\/uploads\/2020\/06\/sigurnost_c-1-1536x830.jpg 1536w, https:\/\/door-al.hr\/wp-content\/uploads\/2020\/06\/sigurnost_c-1.jpg 1800w\" sizes=\"(max-width: 900px) 100vw, 900px\" title=\"sigurnost_c\" alt=\"\" \t\tclass=\"so-widget-image\"\/>\n\t<\/div>\n\n<\/div><\/div><\/div><\/div><div id=\"pgc-w640e27a2c9ff1-0-1\"  class=\"panel-grid-cell\" ><div id=\"panel-w640e27a2c9ff1-0-1-0\" class=\"so-panel widget widget_black-studio-tinymce widget_black_studio_tinymce panel-first-child panel-last-child\" data-index=\"1\" ><div class=\"panel-widget-style panel-widget-style-for-w640e27a2c9ff1-0-1-0\" ><div class=\"textwidget\"><div class=\"_2cuy _3dgx _2vxa\">\n<div class=\"_2cuy _3dgx _2vxa\">\n<p>F\u00fcr Ihre Sicherheit, haben wir hochwertige Sicherheitssysteme in das Door-AL Angebot<br \/>\naufgenommen.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Unser Portfolio:<\/strong><\/p>\n<p><div class=\"wt-list wt-list-style-\"><\/p>\n<ul>\n<li><i class=\"fa fa-arrow-circle-right\" style=\"color:#78ac2d\"><\/i> Video\u00fcberwachung<\/li>\n<li><i class=\"fa fa-arrow-circle-right\" style=\"color:#78ac2d\"><\/i> Alarmanlagen<\/li>\n<li><i class=\"fa fa-arrow-circle-right\" style=\"color:#78ac2d\"><\/i> Intelligente Schlie\u00dfsysteme<\/li>\n<li><i class=\"fa fa-arrow-circle-right\" style=\"color:#78ac2d\"><\/i> Anti-Vandalismus-Zahlenschloss<\/li>\n<\/ul>\n<p><\/div><\/p><\/div>\n<\/div>\n<\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><div id=\"pg-3686-1\"  class=\"panel-grid panel-has-style\" ><div class=\"siteorigin-panels-stretch panel-row-style panel-row-style-for-3686-1\" id=\"reference\" data-stretch-type=\"full-stretched\" ><div id=\"pgc-3686-1-0\"  class=\"panel-grid-cell\" ><div id=\"panel-3686-1-0-0\" class=\"so-panel widget widget_quota quota panel-first-child panel-last-child\" data-index=\"1\" ><div class=\"textwidget\">\t<!-- CSS Part Start From Here-->\r\n\t<style>\t\r\n\t\r\n\t* {\r\n\t\tbox-sizing:border-box;\r\n\t}\r\n\r\n\tspan.hidden {\r\n\t\tdisplay: none;\r\n\t}\r\n\t.filtr-item .img-box { transform: scale3d(0.001, 0.001, 1); } \r\n\t\r\n\t.filtr-item .lazyimg  {\r\n\t\ttransition-property: transform, opacity;\r\n\t\ttransition-duration: 0.8s;\r\n\t\ttransform: scale3d(1, 1, 1);\r\n\t\ttransition-delay: 0.8s;\r\n\t}\r\n\tpf_no_more-3740 {\r\n\t\ttransition-delay: 0.8s;\r\n\t}\r\n\t\t\t#all-simplefilter-3740 {\r\n\t\tdisplay:inline;\r\n\t\tpadding-left: 0px !important;\r\n\t}\r\n\t#f-simplefilter-3740 {\r\n\t\tdisplay:inline;\r\n\t\tpadding-left: 0px !important;\r\n\t}\r\n\t\r\n\t.portfolio_wrapper {\r\n\t\tdirection: ltr;\r\n\t}\r\n\t.pf_load_more-3740 {\r\n\t\ttransition: background .3s linear,color .3s linear,border .3s linear,opacity .3s linear;\r\n\t\tpadding: 8px 37px;\r\n\t\tborder: 2px solid #ccc;\r\n\t\tcolor: #ccc;\r\n\t}\r\n\t.pf_load_more-3740:hover {\r\n\t\tborder-color: #B2B5BC;\r\n\t\tcolor: #B2B5BC;\r\n\t}\r\n\t.la-square-loader {\r\n\t\tcolor: #ffffff;\r\n\t}\r\n\t@keyframes .YouTubePopUp-Content {\r\n\t\tfrom {\r\n\t\t\ttransform: translate3d(0, 100%, 0);\r\n\t\t\tvisibility: visible;\r\n\t\t}\r\n\t\tto {\r\n\t\t\ttransform: translate3d(0, 0, 0);\r\n\t\t}\r\n\t}\r\n\t.YouTubePopUp-Content  {\r\n\t\tanimation-name: .YouTubePopUp-Content ;\r\n\t}\r\n\t.YouTubePopUp-Close {\r\n\t\tbackground:url(https:\/\/door-al.hr\/wp-content\/plugins\/portfolio-filter-gallery-premium\/\/img\/close-icon-white.png) no-repeat;\r\n\t\tbackground-size:50px 50px;\r\n\t\t-webkit-background-size:70px 50px;\r\n\t\t-moz-background-size:70px 50px;\r\n\t\t-o-background-size:70px 50px;\r\n\t}\r\n\t\t\/* .simplefilter li {\r\n\t\tmargin-bottom: 12px;\r\n\t} *\/\r\n\t.simplefilter ul li {\r\n\t\tlist-style: none;\r\n\t}\r\n\t\r\n\t\r\n\t\r\n\t\r\n\t\t\t\/* Filter controls *\/\r\n\t\t.simplefilter_3740 {\r\n\t\t\tpadding:0;\r\n\t\t\tmargin: 20px 0px 20px 0px;\r\n\t\t}\r\n\t\t.simplefilter_3740 li {\r\n\t\t\tcolor: white;\r\n\t\t\tmargin-bottom: 5px;\r\n\t\t\tcursor: pointer;\r\n\t\t\tdisplay: inline-block;\r\n\t\t\tfont-weight: normal;\r\n\t\t\tpadding: 5px 20px;\r\n\t\t\tbackground-color: #d7d7e299;\r\n\t\t}\r\n\t\t\r\n\t\t\t\t\r\n\t\t.simplefilter_3740 li {\r\n\t\t\ttransition: background .3s linear,color .3s linear,border .3s linear,opacity .3s linear;\r\n\t\t\t\t\t}\r\n\t\t@media only screen and (min-width: 1000px) {\r\n\t\t\t.simplefilter_3740 li:hover {\r\n\t\t\t\t\t\t\t}\r\n\t\t}\r\n\t\t\t\t.simplefilter_3740 li.active {\r\n\t\t\tbackground-color:  !important;\r\n\t\t\tcolor:#FFFFFF !important;\r\n\t\t}\r\n\t\t\r\n\t\t.wrapper-dropdown-5:after {\r\n\t\tborder-color:  transparent;\r\n\t}\r\n\t.wrapper-dropdown-5.active {\r\n\t\tbackground: ;\r\n\t}\r\n\twrapper-dropdown-5 .dropdown li:hover {\r\n\t\tcolor: ;\r\n\t}\r\n\t.wrapper-dropdown-5.active:after {\r\n\t\tborder-color: #eee transparent;\r\n\t}\r\n\t\r\n\t.wrapper-dropdown-5 .simplefilter_3740 li.active[data-filter] {\r\n        background-color:  !important;\r\n        color: #FFFFFF !important;\r\n    }\r\n\t\r\n\t\r\n\r\n\t.wrapper-dropdown-5 .simplefilter_3740 li {\r\n\t\tdisplay: flex !important;\r\n\t\talign-items: center;\r\n\t\talign-content: center;\r\n\t\tgap: 10px;\r\n\t\tpadding: 1rem !important\r\n\t}\r\n\r\n\t\t\t.filter_gallery_3740 .portfolio_thumbnail {\r\n\t\t\tborder-radius: 0;\r\n\t\t\tdisplay: block;\r\n\t\t\theight: auto !important;\r\n\t\t\tline-height: 1.42857;\r\n\t\t\twidth: 100% !important;\r\n\t\t}\r\n\t\t\/* thumb spacing *\/\r\n\t\t.filter_gallery_3740 .col-xs-1, .filter_gallery_3740 .col-sm-1, .filter_gallery_3740 .col-md-1, .filter_gallery_3740 .col-lg-1,\r\n\t\t.filter_gallery_3740 .col-xs-2, .filter_gallery_3740 .col-sm-2, .filter_gallery_3740 .col-md-2, .filter_gallery_3740 .col-lg-2,\r\n\t\t.filter_gallery_3740 .col-xs-3, .filter_gallery_3740 .col-sm-3, .filter_gallery_3740 .col-md-3, .filter_gallery_3740 .col-lg-3,\r\n\t\t.filter_gallery_3740 .col-xs-4, .filter_gallery_3740 .col-sm-4, .filter_gallery_3740 .col-md-4, .filter_gallery_3740 .col-lg-4,\r\n\t\t.filter_gallery_3740 .col-xs-5, .filter_gallery_3740 .col-sm-5, .filter_gallery_3740 .col-md-5, .filter_gallery_3740 .col-lg-5,\r\n\t\t.filter_gallery_3740 .col-xs-6, .filter_gallery_3740 .col-sm-6, .filter_gallery_3740 .col-md-6, .filter_gallery_3740 .col-lg-6,\r\n\t\t.filter_gallery_3740 .col-xs-7, .filter_gallery_3740 .col-sm-7, .filter_gallery_3740 .col-md-7, .filter_gallery_3740 .col-lg-7,\r\n\t\t.filter_gallery_3740 .col-xs-8, .filter_gallery_3740 .col-sm-8, .filter_gallery_3740 .col-md-8, .filter_gallery_3740 .col-lg-8,\r\n\t\t.filter_gallery_3740 .col-xs-9, .filter_gallery_3740 .col-sm-9, .filter_gallery_3740 .col-md-9, .filter_gallery_3740 .col-lg-9,\r\n\t\t.filter_gallery_3740 .col-xs-10, .filter_gallery_3740 .col-sm-10, .filter_gallery_3740 .col-md-10, .filter_gallery_3740 .col-lg-10,\r\n\t\t.filter_gallery_3740 .col-xs-11, .filter_gallery_3740 .col-sm-11, .filter_gallery_3740 .col-md-11, .filter_gallery_3740 .col-lg-11,\r\n\t\t.filter_gallery_3740.col-xs-12, .filter_gallery_3740 .col-sm-12, .filter_gallery_3740.col-md-12, .filter_gallery_3740.col-lg-12 {\r\n\t\t\tpadding-right: 2px !important;\r\n\t\t\tpadding-left: 2px !important;\r\n\t\t\tpadding-bottom: 2px !important;\r\n\t\t\tpadding-top: 2px !important;\r\n\t\t}\r\n\t\t\/* title box css*\/\r\n\t\t.pfg_title_box_3740 {\r\n\t\t\tposition: relative;\r\n\t\t\tbackground-color: ;\r\n\t\t\tpadding: 40px 20px;\r\n\t\t\tborder: 1px solid #d5d8dd;\r\n\t\t}\r\n\t\t.pfg_title_3740 {\r\n\t\t\tmargin-top: 0;\r\n\t\t\tfont-size: 20px !important;\r\n\t\t\tmargin-bottom: 0;\r\n\t\t\tcolor :  !important;\r\n\t\t}\r\n\t\t.pfg_desc_3740 {\r\n\t\t\tfont-size: 12px;\r\n\t\t\tcolor: #a4a6ac;\r\n\t\t}\r\n\t\t.pfg_desc_more_3740 {\r\n\t\t\tfloat: right\r\n\t\t}\r\n\t\t\/* thumbnail border *\/\r\n\t\t.thumbnail_3740 {\r\n\t\t\tborder: px solid  !important;\r\n\t\t\tpadding: 0px !important;\r\n\t\t}\r\n\t\t\t\t\r\n\t\/* Load Scroll Icon*\/\r\n\t.load-scroll-block, .no-more-posts {\r\n\t\topacity:0;\r\n\t\ttext-align:center;\r\n\t\tfont-weight: bold;\r\n\t}\r\n\t.load-scroll-block.active {\r\n\t\topacity:1;\r\n\t}\r\n\t.no-more-posts.active {\r\n\t\topacity:1;\r\n\t}\r\n\t.lds-ellipsis {\r\n\t  display: inline-block;\r\n\t  position: relative;\r\n\t  width: 80px;\r\n\t  height: 80px;\r\n\t}\r\n\t.lds-ellipsis-3740 div {\r\n\t  position: absolute;\r\n\t  top: 33px;\r\n\t  width: 13px;\r\n\t  height: 13px;\r\n\t  border-radius: 50%;\r\n\t  background: #B2B5BC !important;\r\n\t  animation-timing-function: cubic-bezier(0, 1, 1, 0);\r\n\t}\r\n\t.lds-ellipsis div:nth-child(1) {\r\n\t  left: 8px;\r\n\t  animation: lds-ellipsis1 0.6s infinite;\r\n\t}\r\n\t.lds-ellipsis div:nth-child(2) {\r\n\t  left: 8px;\r\n\t  animation: lds-ellipsis2 0.6s infinite;\r\n\t}\r\n\t.lds-ellipsis div:nth-child(3) {\r\n\t  left: 32px;\r\n\t  animation: lds-ellipsis2 0.6s infinite;\r\n\t}\r\n\t.lds-ellipsis div:nth-child(4) {\r\n\t  left: 56px;\r\n\t  animation: lds-ellipsis3 0.6s infinite;\r\n\t}\r\n\t@keyframes lds-ellipsis1 {\r\n\t  0% {\r\n\t\ttransform: scale(0);\r\n\t  }\r\n\t  100% {\r\n\t\ttransform: scale(1);\r\n\t  }\r\n\t}\r\n\t@keyframes lds-ellipsis3 {\r\n\t  0% {\r\n\t\ttransform: scale(1);\r\n\t  }\r\n\t  100% {\r\n\t\ttransform: scale(0);\r\n\t  }\r\n\t}\r\n\t@keyframes lds-ellipsis2 {\r\n\t  0% {\r\n\t\ttransform: translate(0, 0);\r\n\t  }\r\n\t  100% {\r\n\t\ttransform: translate(24px, 0);\r\n\t  }\r\n\t}\r\n\t\r\n\t\t<\/style>\r\n\t<div id='PortfolioMain' class='portfolio_wrapper pfg-bootstrap' style='' version='7.4.3' data-pfgscrollflage='1'><\/div><script>\r\n\r\n<!--\r\n    (function(jQuery) {\r\n        \"use strict\";\r\n\r\n        \/\/ Global variables (set via PHP)\r\n        var pfGalleryId = '3740';\r\n        var pfTotalImages = parseInt();\r\n        var pfLimit = parseInt(9);\r\n        var nonce = 'a0d8f68c1b';\r\n        var videoAutoPlay = 0;\r\n        var filterImageData = [];\r\n        var filterImageDataStr = JSON.stringify(filterImageData);\r\n        var isMultiFilters = false;\r\n        var multiFiltersLogic = 'or';\r\n\r\n        \/\/ Debounce utility (used for keyup and scroll events)\r\n        function debounce(func, wait, immediate) {\r\n            var timeout;\r\n            return function() {\r\n                var context = this,\r\n                    args = arguments;\r\n                var later = function() {\r\n                    timeout = null;\r\n                    if (!immediate) func.apply(context, args);\r\n                };\r\n                var callNow = immediate && !timeout;\r\n                clearTimeout(timeout);\r\n                timeout = setTimeout(later, wait);\r\n                if (callNow) func.apply(context, args);\r\n            };\r\n        }\r\n\r\n        \/\/ Build Filterizr options based on the current filter\r\n        function getFilterizrOptions(targetFilter) {\r\n            var options = {\r\n                callbacks: {\r\n                    onFilteringStart: function() {},\r\n                    onFilteringEnd: function() {},\r\n                    onShufflingStart: function() {},\r\n                    onShufflingEnd: function() {},\r\n                    onSortingStart: function() {},\r\n                    onSortingEnd: function() {}\r\n                },\r\n                controlsSelector: '.filtr-controls-' + pfGalleryId,\r\n                filter: targetFilter,\r\n                filterOutCss: {\r\n                    top: '0px',\r\n                    left: '0px',\r\n                    opacity: 0.001,\r\n                    transform: ''\r\n                },\r\n                filterInCss: {\r\n                    top: '0px',\r\n                    left: '0px',\r\n                    opacity: 1,\r\n                    transform: ''\r\n                },\r\n                layout: 'sameWidth',\r\n                selector: '.filtr-item',\r\n                setupControls: false\r\n            };\r\n                        return options;\r\n        }\r\n\r\n        function computeFilterMetrics(targetFilter) {\r\n            var filterImageLen = 0,\r\n                numItems = 0;\r\n            if (targetFilter === 'all') {\r\n                filterImageLen = pfTotalImages;\r\n                numItems = jQuery('.all-' + pfGalleryId).length;\r\n            } else {\r\n                \/\/ If multifilter AND logic and more than one filter is selected,\r\n                \/\/ compute the intersection.\r\n                if (isMultiFilters && multiFiltersLogic === \"and\" && targetFilter.length > 1) {\r\n                    var arrays = [];\r\n                    jQuery.each(targetFilter, function(index, key) {\r\n                        if (filterImageData[key]) {\r\n                            arrays.push(filterImageData[key]);\r\n                        }\r\n                    });\r\n                    \/\/ Intersection helper function:\r\n                    function intersection(arrays) {\r\n                        if (arrays.length === 0) return [];\r\n                        return arrays.reduce(function(a, b) {\r\n                            return a.filter(function(x) {\r\n                                return b.indexOf(x) !== -1;\r\n                            });\r\n                        });\r\n                    }\r\n                    var inter = intersection(arrays);\r\n                    filterImageLen = inter.length;\r\n                    \/\/ Count loaded items by selecting elements that have ALL the filter classes\r\n                    \/\/ (e.g., for filters [3,4] use '.3.4')\r\n                    numItems = jQuery('.' + targetFilter.join('.')).length;\r\n                } else {\r\n                    \/\/ For OR logic (or a single filter), sum the counts as before.\r\n                    jQuery.each(targetFilter, function(index, val) {\r\n                        filterImageLen += filterImageData[val].length;\r\n                        numItems += jQuery('.' + val).length;\r\n                    });\r\n                }\r\n            }\r\n            return {\r\n                filterImageLen: filterImageLen,\r\n                numItems: numItems\r\n            };\r\n        }\r\n\r\n        \/\/ Process the AJAX response: insert new items, reinitialize Filterizr, set up lazy images, video popups, lightboxes, etc.\r\n        function processAjaxResponse(response, targetFilter) {\r\n            var options = getFilterizrOptions(targetFilter),\r\n                $filterizd = jQuery('.filter_gallery_' + pfGalleryId).filterizr(options);\r\n\r\n            var $node = jQuery(response).find('.pf_result-' + pfGalleryId);\r\n            $filterizd.filterizr('insertItem', $node).addClass('pfg_animate');\r\n\r\n            \/\/ Bind debounced search\r\n            jQuery('.filtr_search_' + pfGalleryId).off('keyup').on('keyup', debounce(function() {\r\n                var searchVal = jQuery(this).val().toLowerCase();\r\n                $filterizd.filterizr('filter', searchVal);\r\n                $filterizd.filterizr().resize();\r\n            }, 300));\r\n\r\n            $filterizd.filterizr(options).resize();\r\n            jQuery('.filtr-item .img-box').addClass('lazyimg');\r\n\r\n            \/\/ Remove any blank items (if image source is missing)\r\n            jQuery(\".count_attached-\" + pfGalleryId).each(function() {\r\n                if (!jQuery(this).val()) {\r\n                    jQuery(this).parents(\"div.pf_result-\" + pfGalleryId).remove();\r\n                }\r\n            });\r\n\r\n            setTimeout(function() {\r\n                jQuery(\".pf_loader-\" + pfGalleryId).hide();\r\n                jQuery(\".pf_load_more-\" + pfGalleryId).show();\r\n            }, 800);\r\n\r\n            \/\/ Initialize YouTube popup video player\r\n            jQuery(\"a.bla-2-\" + pfGalleryId).YouTubePopUp({\r\n                autoplay: videoAutoPlay\r\n            });\r\n\r\n            \/\/ Set lightbox attributes (for LD, Bootstrap, and Swipebox)\r\n            var lighboxClassName = \"pfg-lightbox-\" + pfGalleryId + \"-\" + targetFilter;\r\n            jQuery('.pfg-lightbox-' + pfGalleryId + '-' + targetFilter)\r\n                .attr('data-lightbox', lighboxClassName)\r\n                .attr('data-gallery', lighboxClassName)\r\n                .attr('rel', lighboxClassName);\r\n        }\r\n\r\n        \/\/ Unified function for both \"load more\" (button click) and \"load more\" (scroll)\r\n        \/\/ 'trigger' should be either \"click\" or \"scroll\"\r\n        \/\/ 'loadType' is used (for example) to check if the button is a \"load all\" button.\r\n        function loadMoreImages(trigger, loadType) {\r\n            var targetFilter;\r\n            if (isMultiFilters) {\r\n                targetFilter = jQuery('.filtr-control-' + pfGalleryId + ' li.filter-active')\r\n                    .map(function() {\r\n                        return jQuery(this).data('multifilter');\r\n                    })\r\n                    .get();\r\n            } else {\r\n                targetFilter = jQuery('.filtr-control-' + pfGalleryId + ' li.active')\r\n                    .map(function() {\r\n                        return jQuery(this).data('filter');\r\n                    })\r\n                    .get();\r\n            }\r\n            if (targetFilter[0] === 'all' || (Array.isArray(targetFilter) && targetFilter.length === 1 && targetFilter[0] === 'All')) {\r\n                targetFilter = 'all';\r\n            }\r\n\r\n            \/\/ For AND logic, we could build a combined string (e.g. \"3.4\")\r\n            \/\/ but since you're sending targetFilter directly, we'll use it as is.\r\n\r\n            var metrics = computeFilterMetrics(targetFilter);\r\n            if (metrics.filterImageLen <= metrics.numItems) {\r\n                jQuery(\".pf_loader-\" + pfGalleryId).hide();\r\n                jQuery(\".pf_load_more-\" + pfGalleryId).hide();\r\n                jQuery(\".pf_no_more-\" + pfGalleryId).show();\r\n                return;\r\n            }\r\n\r\n            var pfLimitStart = metrics.numItems;\r\n            var pfLimitEnd = pfLimitStart + pfLimit; \/\/ pfLimit is defined globally\r\n            if (loadType === 'load_all_button') {\r\n                pfLimitEnd = pfTotalImages;\r\n            }\r\n\r\n            \/\/ Determine filterImageLens (the array of image IDs for the current batch)\r\n            var filterImageLens;\r\n\r\n\r\n            filterImageLens = jQuery(\".count_attached-\" + pfGalleryId).map(function() {\r\n                return jQuery(this).val();\r\n            }).get();\r\n\r\n            var scroll_loader = jQuery('.load-scroll-block');\r\n            \/\/var scroll_no_post = jQuery('.no-more-posts');\r\n            scroll_loader.addClass('active');\r\n            \/\/ scroll_no_post.addClass('active');\r\n\r\n            jQuery(\".pf_load_more-\" + pfGalleryId).hide();\r\n            jQuery(\".pf_loader-\" + pfGalleryId).show();\r\n\r\n            \/\/ Since you're using direct concatenation, we send targetFilter directly.\r\n            jQuery.ajax({\r\n                dataType: 'html',\r\n                type: 'POST',\r\n                url: location.href,\r\n                cache: false,\r\n                data: '&pf_security=' + nonce +\r\n                    '&pf_limit_start=' + pfLimitStart +\r\n                    '&pf_limit_end=' + pfLimitEnd +\r\n                    '&targetFilter=' + targetFilter +\r\n                    '&numItems=' + metrics.numItems +\r\n                    '&filter_image_lens=' + filterImageLens +\r\n                    '&filter_image=' + filterImageDataStr,\r\n                success: function(response) {\r\n\t\t\t\t\tprocessAjaxResponse(response, targetFilter);\r\n\t\t\t\t\tif (trigger === \"scroll\") {\r\n\t\t\t\t\t\tjQuery(\"#PortfolioMain\").attr(\"data-pfgscrollflage\", \"1\");\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\/\/ --- NEW: after new items\/images are in, force Filterizr to recompute layout ---\r\n\t\t\t\t\tvar $gallery = jQuery('.filter_gallery_' + pfGalleryId);\r\n\t\t\t\t\tvar appliedFilter = (targetFilter === 'all' || targetFilter === 'All') ? 'all' : targetFilter;\r\n\r\n\t\t\t\t\tif ($gallery.length && typeof $gallery.imagesLoaded === 'function') {\r\n\t\t\t\t\t\t$gallery.imagesLoaded(function() {\r\n\t\t\t\t\t\t\t$gallery.filterizr('filter', appliedFilter);\r\n\t\t\t\t\t\t\t\/\/ optional: ensure parent wrapper grows if needed\r\n\t\t\t\t\t\t\t$gallery.css('height', 'auto');\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\/\/ fallback if imagesLoaded is missing: small delay then re-layout\r\n\t\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\t\t$gallery.filterizr('filter', appliedFilter);\r\n\t\t\t\t\t\t\t$gallery.css('height', 'auto');\r\n\t\t\t\t\t\t}, 400);\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\r\n                complete: function() {\r\n                    setTimeout(function() {\r\n                        jQuery(\".pf_loader-\" + pfGalleryId).hide();\r\n                        jQuery(\".pf_load_more-\" + pfGalleryId).show();\r\n                        scroll_loader.removeClass('active');\r\n                        \/\/scroll_no_post.removeClass('active');\r\n                    }, 800);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ jQuery plugin to check if an element is in the viewport\r\n        jQuery.fn.isInViewport = function() {\r\n            var elementTop = jQuery(this).offset().top;\r\n            var elementBottom = elementTop + jQuery(this).outerHeight();\r\n            var viewportTop = jQuery(window).scrollTop();\r\n            var viewportBottom = viewportTop + jQuery(window).height();\r\n            return elementBottom > viewportTop && elementTop < viewportBottom;\r\n        };\r\n\r\n        \/\/ ----------------- DOCUMENT READY -----------------\r\n        jQuery(document).ready(function() {\r\n            \/\/ Delay to allow the default filter to be applied.\r\n            \/\/ Load deafult filter is active (Not filter cliked)\r\n            setTimeout(function() {\r\n                var targetFilter;\r\n                                    targetFilter = jQuery('.filtr-control-3740 li.active')\r\n                        .map(function() {\r\n                            return jQuery(this).data('filter');\r\n                        }).get();\r\n                                if (targetFilter[0] === 'all' || (Array.isArray(targetFilter) && targetFilter.length === 1 && targetFilter[0] === 'All')) {\r\n                    targetFilter = 'all';\r\n                }\r\n                var metrics = computeFilterMetrics(targetFilter);\r\n                if (metrics.numItems === 0 && metrics.filterImageLen > 0) {\r\n                    loadMoreImages(\"click\", null);\r\n                }\r\n            }, 500);\r\n\r\n            \/\/ When clicking on any filter control, update the load-more UI after a delay.\r\n            \/\/ Extra: if no items are loaded (filter is blank), automatically load one page.\r\n            \r\n            \/\/ ---------- LOAD MORE BY BUTTON ----------\r\n            \r\n            \/\/ ---------- LOAD MORE BY SCROLL ----------\r\n            \r\n            \/\/ ---------------- GET FILTER FROM SHORTCODE ----------------\r\n                                    jQuery(\"#all\").addClass(\"active\");\r\n                                                jQuery('.fil-head').text('all');\r\n            \r\n            \/\/ Adjust thumbnails after a delay\r\n            setTimeout(function() {\r\n                jQuery(\".thumbnail_3740\").each(function() {\r\n                    var h = jQuery(this).height();\r\n                    var w = jQuery(this).width();\r\n                    jQuery(this).height(h).width(w).resize();\r\n                });\r\n            }, 2500);\r\n\r\n            jQuery(\".loader_img\").hide();\r\n            jQuery(\".lg_load_more\").show();\r\n            jQuery(\".filtr-container\").css(\"opacity\", 1);\r\n            jQuery('.filtr-item .img-box').addClass('lazyimg');\r\n\r\n            var options = getFilterizrOptions('all');\r\n            var filterizd = jQuery('.filter_gallery_3740').filterizr(options);\r\n\r\n            if (jQuery('.portfolio_wrapper').length <= 1) {\r\n                jQuery('.filter_gallery_3740').imagesLoaded(function() {\r\n                    jQuery('.filter_gallery_3740').filterizr(options);\r\n                });\r\n            }\r\n\r\n            \r\n            \r\n            jQuery(\"a.bla-2-\" + pfGalleryId).YouTubePopUp({\r\n                autoplay: videoAutoPlay\r\n            });\r\n\r\n            \t\t\t\t                \/\/ LD Lightbox Options\r\n                lightbox.option({\r\n                    'resizeDuration': 200,\r\n                    'wrapAround': true,\r\n                    'showImageNumberLabel': false\r\n                });\r\n\t\t\t\t                document.addEventListener('DOMContentLoaded', (event) => {\r\n                    document.querySelectorAll('.my-lightbox-toggle').forEach((el) => {\r\n                        el.addEventListener('click', (e) => {\r\n                            e.preventDefault();\r\n                            const options = {\r\n                                keyboard: true,\r\n                                size: 'fullscreen'\r\n                            };\r\n                            if (typeof Lightbox !== 'undefined') {\r\n                                const lightbox = new Lightbox(el, options);\r\n                                lightbox.show();\r\n                            } else {\r\n                                console.error('Lightbox library is not loaded.');\r\n                            }\r\n                        });\r\n                    });\r\n                });\r\n\r\n                jQuery(document).delegate('*[data-gallery=\"navigateTo\"]', 'click', function(event) {\r\n                    event.preventDefault();\r\n                    var lb;\r\n                    return jQuery(this).ekkoLightbox({\r\n                        onShown: function() {\r\n                            lb = this;\r\n                            jQuery(lb.modal_content).on('click', '.modal-footer a', function(e) {\r\n                                e.preventDefault();\r\n                                lb.navigateTo(2);\r\n                            });\r\n                        }\r\n                    });\r\n                });\r\n\r\n                                    jQuery('.filtr-control-3740 [data-filter]').click(function() {\r\n                        var targetFilter = jQuery(this).data('filter');\r\n                        var lighboxClassName = \"pfg-lightbox-3740-\" + targetFilter;\r\n                        jQuery('.pfg-lightbox-3740-' + targetFilter)\r\n                            .attr('data-lightbox', lighboxClassName)\r\n                            .attr('data-gallery', lighboxClassName);\r\n                    });\r\n                    jQuery('.filtr-control-3740 [data-multifilter]').click(function() {\r\n                        var targetFilter = jQuery(this).data('multifilter');\r\n                        var lighboxClassName = \"pfg-lightbox-3740-\" + targetFilter;\r\n                        setTimeout(function() {\r\n                            jQuery(\".filtr-item\").each(function() {\r\n                                if (jQuery(this).css('opacity') == 1) {\r\n                                    jQuery(this).find(\"a\").attr('data-lightbox', lighboxClassName);\r\n                                }\r\n                            });\r\n                        }, 1000);\r\n                    });\r\n                            \r\n            \r\n            \r\n            \/\/ Toggle active classes for filters, multifilters, shuffle, and sort\r\n            jQuery('.filtr-control-3740 li').click(function() {\r\n                jQuery('.filtr-control-3740 li').removeClass('active');\r\n                jQuery(this).addClass('active');\r\n            });\r\n            jQuery('.multifilter li').click(function() {\r\n                jQuery(this).toggleClass('active');\r\n            });\r\n            jQuery('.shuffle-btn').click(function() {\r\n                jQuery('.sort-btn').removeClass('active');\r\n            });\r\n            jQuery('.sort-btn').click(function() {\r\n                jQuery('.sort-btn').removeClass('active');\r\n                jQuery(this).addClass('active');\r\n            });\r\n            \r\n        }); \/\/ end document.ready\r\n    })(jQuery);\r\n\t-->\r\n<\/script>\n<\/div><\/div><\/div><\/div><\/div><div id=\"pg-3686-2\"  class=\"panel-grid panel-has-style\" ><div class=\"siteorigin-panels-stretch panel-row-style panel-row-style-for-3686-2\" id=\"team\" data-stretch-type=\"full\" data-overlay=\"237,237,237\" data-opacity=\"0.9\" ><div id=\"pgc-3686-2-0\"  class=\"panel-grid-cell\" ><div id=\"panel-3686-2-0-0\" class=\"so-panel widget widget_black-studio-tinymce widget_black_studio_tinymce panel-first-child panel-last-child\" data-index=\"2\" ><div class=\"panel-widget-style panel-widget-style-for-3686-2-0-0\" ><div class=\"textwidget\"><div class=\"wt-animate\" style=\"visibility:hidden;-webkit-animation-duration:1s;-webkit-animation-delay:0s;animation-duration:1s;animation-delay:0s;\" data-animation=\"slideInLeft\" data-duration=\"1\" data-delay=\"0\"><img decoding=\"async\" src=\"https:\/\/door-al.hr\/wp-content\/uploads\/2020\/05\/\u0161tambilj1.jpg\" alt=\"staf-counceling-left-image-new\" width=\"822\" height=\"300\" class=\"alignnone size-full wp-image-94\" \/><\/div>\n\n<\/div><\/div><\/div><\/div><div id=\"pgc-3686-2-1\"  class=\"panel-grid-cell\" ><div id=\"panel-3686-2-1-0\" class=\"so-panel widget widget_black-studio-tinymce widget_black_studio_tinymce panel-first-child panel-last-child\" data-index=\"3\" ><div class=\"panel-widget-style panel-widget-style-for-3686-2-1-0\" ><div class=\"textwidget\"><h3 class=\"wt-heading wt-heading-style-2 wt-heading-align-left\" style=\"margin-top:0px; margin-bottom:0px; font-size: 30px; text-transform: uppercase; color: #000; letter-spacing: 0px; \"><span class=\"wt-heading-inner\" style=\"margin-top:0px; margin-bottom:0px; font-size: 30px; text-transform: uppercase; color: #000; letter-spacing: 0px; \">ANGEBOT ANFORDERN<\/span><\/h3><div class=\"wt-spacer\" style=\"height:20px\"><\/div>\n\n<span class=\"so-premium-web-font\" color=\"#fff\" style=\"font-family: Poppins, sans-serif;\" data-web-font-module=\"google\" data-font-info=\"{&quot;font&quot;:&quot;Poppins&quot;,&quot;webfont&quot;:true,&quot;category&quot;:&quot;sans-serif&quot;,&quot;variant&quot;:&quot;regular&quot;,&quot;module&quot;:&quot;google&quot;}\">Gerne erstellen unsere Berater ein unverbindliches Angebot f\u00fcr Sie. Kontaktieren Sie uns.<\/span>\n\n<div class=\"wt-spacer\" style=\"height:20px\"><\/div>\n<a href=\"https:\/\/door-al.hr\/de\/index.php\/kontakt\/\" data-hoverback=\"#a4d049\" data-currentbg=\"rgba(120,172,45, 1)\" data-currentbor=\"#78ac2d\" data-currentcolor=\"#ffffff\" data-hovercolor=\"#fff\" class=\"wt-button wt-button-style-flat\" style=\"color:#ffffff;background:rgba(120,172,45, 1);border-color:#78ac2d;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px\" target=\"_self\"><span style=\"padding:6px 18px;font-size:14px;line-height:24px;border-color:#78ac2d;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;text-shadow:none;-moz-text-shadow:none;-webkit-text-shadow:none\">Angebot anfordern <i class=\"fa fa-angle-double-right\" style=\"font-size:14px;color:#fff\"><\/i><\/span><\/a><\/div><\/div><\/div><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>F\u00fcr Ihre Sicherheit, haben wir hochwertige Sicherheitssysteme in das Door-AL Angebot aufgenommen. &nbsp; Unser Portfolio: Video\u00fcberwachung<a class=\"read-more\" href=\"https:\/\/door-al.hr\/de\/index.php\/sicherheitssysteme\/\">&#8230;<\/a><\/p>\n","protected":false},"author":1,"featured_media":2906,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-3686","page","type-page","status-publish","has-post-thumbnail","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/door-al.hr\/de\/index.php\/wp-json\/wp\/v2\/pages\/3686","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/door-al.hr\/de\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/door-al.hr\/de\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/door-al.hr\/de\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/door-al.hr\/de\/index.php\/wp-json\/wp\/v2\/comments?post=3686"}],"version-history":[{"count":4,"href":"https:\/\/door-al.hr\/de\/index.php\/wp-json\/wp\/v2\/pages\/3686\/revisions"}],"predecessor-version":[{"id":3750,"href":"https:\/\/door-al.hr\/de\/index.php\/wp-json\/wp\/v2\/pages\/3686\/revisions\/3750"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/door-al.hr\/de\/index.php\/wp-json\/wp\/v2\/media\/2906"}],"wp:attachment":[{"href":"https:\/\/door-al.hr\/de\/index.php\/wp-json\/wp\/v2\/media?parent=3686"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}