{"id":6469,"date":"2022-11-20T13:42:46","date_gmt":"2022-11-20T10:12:46","guid":{"rendered":"https:\/\/sitralweb.com\/iranamlak\/?page_id=6469"},"modified":"2025-10-30T10:17:13","modified_gmt":"2025-10-30T06:47:13","slug":"%d8%a8%d8%b1%da%af%d9%87-%d8%a8%d8%a7-%d9%81%db%8c%d9%84%d8%aa%d8%b1-%d8%ac%d8%b3%d8%aa%d8%ac%d9%88-%d9%86%d9%82%d8%b4%d9%87-%d8%a7%db%8c","status":"publish","type":"page","link":"https:\/\/sitralweb.com\/iranamlak\/%d8%a8%d8%b1%da%af%d9%87-%d8%a8%d8%a7-%d9%81%db%8c%d9%84%d8%aa%d8%b1-%d8%ac%d8%b3%d8%aa%d8%ac%d9%88-%d9%86%d9%82%d8%b4%d9%87-%d8%a7%db%8c\/","title":{"rendered":"\u0628\u0631\u06af\u0647 \u0628\u0627 \u0641\u06cc\u0644\u062a\u0631 \u062c\u0633\u062a\u062c\u0648 \u0646\u0642\u0634\u0647 \u0627\u06cc"},"content":{"rendered":"<div id=\"map\" style=\"display: table;margin:0; width: 100%; height: 600px;\"><\/div>\n\n<div class=\"irmp-search-filters\">\n    <p class=\"irmp-search-title\">\u0645\u0644\u06a9 \u062e\u0648\u062f \u0631\u0627 \u0628\u06cc\u0627\u0628\u06cc\u062f ..!<\/p>\n    <div class=\"irmp-filters-container\">\n                <div class=\"irmp-filter-item\">\n            <select id=\"mantaghe_select\">\n                <option value=\"35.69611746729962_51.393856107237184_3\" selected>\u0645\u0648\u0642\u0639\u06cc\u062a<\/option>\n                                    <option value=\"36.81126377003631_50.86120605468751_9\">\u062a\u0646\u06a9\u0627\u0628\u0646<\/option>\n                                    <option value=\"35.70693497582502_51.427001953125_11\">\u062a\u0647\u0631\u0627\u0646<\/option>\n                                    <option value=\"36.97718674265663_50.57401657104493_13\">\u0686\u0627\u0628\u06a9\u0633\u0631<\/option>\n                                    <option value=\"36.91805817956114_50.65589904785157_12\">\u0631\u0627\u0645\u0633\u0631<\/option>\n                                    <option value=\"37.13382639309833_50.28167724609375_9\">\u0631\u0648\u062f\u0633\u0631<\/option>\n                                    <option value=\"36.72842852891896_51.10599517822266_13\">\u0639\u0628\u0627\u0633 \u0627\u0628\u0627\u062f<\/option>\n                                    <option value=\"37.072107835492446_50.401840209960945_11\">\u06a9\u0644\u0627\u0686\u0627\u06cc<\/option>\n                                    <option value=\"26.532636919570894_53.97239685058594_13\">\u06a9\u06cc\u0634<\/option>\n                                    <option value=\"37.289350362163546_49.64721679687501_9\">\u06af\u06cc\u0644\u0627\u0646<\/option>\n                                    <option value=\"37.21064411993447_50.00427246093751_10\">\u0644\u0627\u0647\u06cc\u062c\u0627\u0646<\/option>\n                                    <option value=\"36.63316209558658_51.43798828125_9\">\u0645\u0627\u0632\u0646\u062f\u0631\u0627\u0646<\/option>\n                                    <option value=\"36.70861402239184_51.19903564453126_11\">\u0645\u062a\u0644 \u0642\u0648<\/option>\n                                    <option value=\"35.7616129_51.3609391_9\">\u0645\u0646\u0637\u0642\u0647 \u062f\u0648<\/option>\n                                    <option value=\"35.7707373_51.4280499_10\">\u0645\u0646\u0637\u0642\u0647 \u0633\u0647<\/option>\n                                    <option value=\"35.8076264_51.4334159_12\">\u0645\u0646\u0637\u0642\u0647 \u06cc\u06a9<\/option>\n                                    <option value=\"36.748650565203555_51.02428436279297_13\">\u0646\u0634\u062a\u0627\u0631\u0648\u062f<\/option>\n                            <\/select>\n        <\/div>\n        <div class=\"irmp-filter-item\">\n            <select id=\"transaction-type\">\n                <option value=\"\" selected>\u0646\u0648\u0639 \u0645\u0639\u0627\u0645\u0644\u0647<\/option>\n                <option value=\"\u062e\u0631\u06cc\u062f \u0648 \u0641\u0631\u0648\u0634\">\u062e\u0631\u06cc\u062f \u0648 \u0641\u0631\u0648\u0634<\/option>\n                <option value=\"\u0631\u0647\u0646 \u0648 \u0627\u062c\u0627\u0631\u0647\">\u0631\u0647\u0646 \u0648 \u0627\u062c\u0627\u0631\u0647<\/option>\n                <option value=\"\u0627\u062c\u0627\u0631\u0647 \u0631\u0648\u0632\u0627\u0646\u0647\">\u0627\u062c\u0627\u0631\u0647 \u0631\u0648\u0632\u0627\u0646\u0647<\/option>\n            <\/select>\n        <\/div>\n        <div class=\"irmp-filter-item\">\n            <select id=\"estate-type\">\n                <option value=\"\" selected>\u0646\u0648\u0639 \u0645\u0644\u06a9<\/option>\n                <option value=\"\u0622\u067e\u0627\u0631\u062a\u0645\u0627\u0646\">\u0622\u067e\u0627\u0631\u062a\u0645\u0627\u0646<\/option>\n                <option value=\"\u062e\u0627\u0646\u0647 \u0648 \u0648\u06cc\u0644\u0627\">\u062e\u0627\u0646\u0647 \u0648 \u0648\u06cc\u0644\u0627<\/option>\n                <option value=\"\u0632\u0645\u06cc\u0646\">\u0632\u0645\u06cc\u0646 \u0648 \u06a9\u0644\u0646\u06af\u06cc<\/option>\n                <option value=\"\u0627\u062f\u0627\u0631\u06cc \u0648 \u062a\u062c\u0627\u0631\u06cc\">\u0627\u062f\u0627\u0631\u06cc \u0648 \u062a\u062c\u0627\u0631\u06cc<\/option>\n            <\/select>\n        <\/div>\n        <div class=\"irmp-filter-item\" style=\"display:none;\">\n            <input placeholder=\"\u062d\u062f\u0627\u0642\u0644 \u0642\u06cc\u0645\u062a \u0627\u0632\" id=\"min-price\" class=\"map-min-input\" type=\"text\">\n        <\/div>\n        <div class=\"irmp-filter-item\" style=\"display:none;\">\n            <input placeholder=\"\u062d\u062f\u0627\u06a9\u062b\u0631 \u0642\u06cc\u0645\u062a \u062a\u0627\" id=\"max-price\" class=\"map-max-input\" type=\"text\">\n        <\/div>\n        <div class=\"irmp-filter-item\" style=\"display:none;\">\n            <input placeholder=\"\u062d\u062f\u0627\u0642\u0644 \u0627\u062c\u0627\u0631\u0647 \u0627\u0632\" id=\"min-rent\" class=\"map-min-input\" type=\"text\">\n        <\/div>\n        <div class=\"irmp-filter-item\" style=\"display:none;\">\n            <input placeholder=\"\u062d\u062f\u0627\u06a9\u062b\u0631 \u0627\u062c\u0627\u0631\u0647 \u062a\u0627\" id=\"max-rent\" class=\"map-max-input\" type=\"text\">\n        <\/div>\n        <div class=\"irmp-filter-item\" style=\"display:none;\">\n            <input placeholder=\"\u062d\u062f\u0627\u0642\u0644 \u0648\u062f\u06cc\u0639\u0647 \u0627\u0632\" id=\"min-deposit\" class=\"map-min-input\" type=\"text\">\n        <\/div>\n        <div class=\"irmp-filter-item\" style=\"display:none;\">\n            <input placeholder=\"\u062d\u062f\u0627\u06a9\u062b\u0631 \u0648\u062f\u06cc\u0639\u0647 \u062a\u0627\" id=\"max-deposit\" class=\"map-max-input\" type=\"text\">\n        <\/div>\n        <div class=\"irmp-filter-item\">\n            <input placeholder=\"\u062d\u062f\u0627\u0642\u0644 \u0645\u062a\u0631\u0627\u0698\" id=\"min-metrazh\" class=\"map-min-input\" type=\"text\">\n        <\/div>\n        \n        <div class=\"irmp-action-buttons\">\n            <div class=\"irmp-search-button\" style=\"display: none;\">\n                <button class=\"irmp-search-btn\" type=\"button\" id=\"search-btn\">\n                    <i class=\"fas fa-search\"><\/i>\n                    \u062c\u0633\u062a\u062c\u0648\n                <\/button>\n            <\/div>\n            <div class=\"irmp-clear-button\">\n                <button class=\"irmp-clear-btn\" type=\"button\" id=\"clear-filters\">\n                    <i class=\"fas fa-times\"><\/i>\n                    \u067e\u0627\u06a9 \u06a9\u0631\u062f\u0646\n                <\/button>\n            <\/div>\n            <div class=\"irmp-close-button\">\n                <button class=\"irmp-close-btn\" type=\"button\" id=\"close-filters\">\n                    <i class=\"fas fa-times-circle\"><\/i>\n                    \u0628\u0633\u062a\u0646\n                <\/button>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n    const toggleButton = document.createElement('button');\n    toggleButton.className = 'irmp-filter-toggle';\n    toggleButton.innerHTML = '<i class=\"fas fa-search\"><\/i>';\n    \n    const overlay = document.createElement('div');\n    overlay.className = 'irmp-filter-overlay';\n    \n    document.body.appendChild(toggleButton);\n    document.body.appendChild(overlay);\n    \n    const filtersContainer = document.querySelector('.irmp-filters-container');\n    const closeButton = document.getElementById('close-filters');\n    const clearButton = document.getElementById('clear-filters');\n    const transactionTypeSelect = document.getElementById('transaction-type');\n    const mantagheSelect = document.getElementById('mantaghe_select');\n    const estateTypeSelect = document.getElementById('estate-type');\n    \n    \/\/ \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0642\u06cc\u0645\u062a\n    const minPriceField = document.getElementById('min-price').parentElement;\n    const maxPriceField = document.getElementById('max-price').parentElement;\n    const minPriceInput = document.getElementById('min-price');\n    const maxPriceInput = document.getElementById('max-price');\n    \n    \/\/ \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0627\u062c\u0627\u0631\u0647\n    const minRentField = document.getElementById('min-rent').parentElement;\n    const maxRentField = document.getElementById('max-rent').parentElement;\n    const minRentInput = document.getElementById('min-rent');\n    const maxRentInput = document.getElementById('max-rent');\n    \n    \/\/ \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0648\u062f\u06cc\u0639\u0647\n    const minDepositField = document.getElementById('min-deposit').parentElement;\n    const maxDepositField = document.getElementById('max-deposit').parentElement;\n    const minDepositInput = document.getElementById('min-deposit');\n    const maxDepositInput = document.getElementById('max-deposit');\n    \n    \/\/ \u0641\u06cc\u0644\u062f \u0645\u062a\u0631\u0627\u0698\n    const minMetrazhInput = document.getElementById('min-metrazh');\n    \n    \/\/ \u062c\u0645\u0639 \u0622\u0648\u0631\u06cc \u0647\u0645\u0647 \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0639\u062f\u062f\u06cc\n    const numberInputs = [minPriceInput, maxPriceInput, minRentInput, maxRentInput, minDepositInput, maxDepositInput, minMetrazhInput];\n    \n    \/\/ \u062a\u0627\u0628\u0639 \u0628\u0631\u0627\u06cc \u0641\u0631\u0645\u062a \u06a9\u0631\u062f\u0646 \u0627\u0639\u062f\u0627\u062f \u0628\u0627 \u062c\u062f\u0627\u06a9\u0646\u0646\u062f\u0647 \u0647\u0632\u0627\u0631\u06af\u0627\u0646\n    function formatNumber(number) {\n        \/\/ \u062d\u0630\u0641 \u0647\u0645\u0647 \u063a\u06cc\u0631 \u0627\u0631\u0642\u0627\u0645\n        let num = number.replace(\/\\D\/g, '');\n        \/\/ \u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u062c\u062f\u0627\u06a9\u0646\u0646\u062f\u0647 \u0647\u0632\u0627\u0631\u06af\u0627\u0646\n        return num.replace(\/\\B(?=(\\d{3})+(?!\\d))\/g, ',');\n    }\n    \n    \/\/ \u062a\u0627\u0628\u0639 \u0628\u0631\u0627\u06cc \u062d\u0630\u0641 \u062c\u062f\u0627\u06a9\u0646\u0646\u062f\u0647\u200c\u0647\u0627\n    function removeFormatting(number) {\n        return number.replace(\/,\/g, '');\n    }\n    \n    \/\/ \u062a\u0627\u0628\u0639 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0631\u0648\u06cc\u062f\u0627\u062f input \u0631\u0648\u06cc \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0639\u062f\u062f\u06cc\n    function handleNumberInput(event) {\n        const input = event.target;\n        const cursorPosition = input.selectionStart;\n        const originalValue = input.value;\n        \n        \/\/ \u062d\u0641\u0638 \u0645\u0648\u0642\u0639\u06cc\u062a \u0645\u06a9\u0627\u0646\u200c\u0646\u0645\u0627 \u0628\u0627 \u062f\u0631 \u0646\u0638\u0631 \u06af\u0631\u0641\u062a\u0646 \u0648\u06cc\u0631\u06af\u0648\u0644\u200c\u0647\u0627\n        const beforeCursor = originalValue.substring(0, cursorPosition);\n        const commaCountBefore = (beforeCursor.match(\/,\/g) || []).length;\n        \n        \/\/ \u0641\u0631\u0645\u062a \u06a9\u0631\u062f\u0646 \u0645\u0642\u062f\u0627\u0631\n        input.value = formatNumber(originalValue);\n        \n        \/\/ \u0645\u062d\u0627\u0633\u0628\u0647 \u0645\u0648\u0642\u0639\u06cc\u062a \u062c\u062f\u06cc\u062f \u0645\u06a9\u0627\u0646\u200c\u0646\u0645\u0627\n        const afterCursor = input.value.substring(0, cursorPosition);\n        const commaCountAfter = (afterCursor.match(\/,\/g) || []).length;\n        const newCursorPosition = cursorPosition + (commaCountAfter - commaCountBefore);\n        \n        \/\/ \u062a\u0646\u0638\u06cc\u0645 \u0645\u062c\u062f\u062f \u0645\u0648\u0642\u0639\u06cc\u062a \u0645\u06a9\u0627\u0646\u200c\u0646\u0645\u0627\n        input.setSelectionRange(newCursorPosition, newCursorPosition);\n    }\n    \n    \/\/ \u062a\u0627\u0628\u0639 \u0628\u0631\u0627\u06cc \u0627\u0639\u0645\u0627\u0644 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0628\u0647 \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0627\u0635\u0644\u06cc map.js\n    function updateMainInputs() {\n        \/\/ \u062d\u0630\u0641 \u0641\u0631\u0645\u062a \u0642\u0628\u0644 \u0627\u0632 \u0627\u0631\u0633\u0627\u0644 \u0628\u0647 \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0627\u0635\u0644\u06cc\n        document.getElementById('min-price').value = removeFormatting(minPriceInput.value);\n        document.getElementById('max-price').value = removeFormatting(maxPriceInput.value);\n        document.getElementById('min-rent').value = removeFormatting(minRentInput.value);\n        document.getElementById('max-rent').value = removeFormatting(maxRentInput.value);\n        document.getElementById('min-deposit').value = removeFormatting(minDepositInput.value);\n        document.getElementById('max-deposit').value = removeFormatting(maxDepositInput.value);\n        \n        \/\/ \u0628\u0627\u0632\u06af\u0631\u062f\u0627\u0646\u062f\u0646 \u0641\u0631\u0645\u062a \u0628\u0647 \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0646\u0645\u0627\u06cc\u0634\u06cc\n        if (minPriceInput.value) minPriceInput.value = formatNumber(minPriceInput.value);\n        if (maxPriceInput.value) maxPriceInput.value = formatNumber(maxPriceInput.value);\n        if (minRentInput.value) minRentInput.value = formatNumber(minRentInput.value);\n        if (maxRentInput.value) maxRentInput.value = formatNumber(maxRentInput.value);\n        if (minDepositInput.value) minDepositInput.value = formatNumber(minDepositInput.value);\n        if (maxDepositInput.value) maxDepositInput.value = formatNumber(maxDepositInput.value);\n        \n        \/\/ \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u062a\u0627\u0628\u0639 autoFetch \u062f\u0631 map.js\n        if (typeof window.autoFetch === 'function') {\n            window.autoFetch();\n        }\n    }\n    \n    \/\/ \u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 event listener \u0628\u0647 \u0647\u0645\u0647 \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0639\u062f\u062f\u06cc\n    numberInputs.forEach(input => {\n        input.addEventListener('input', handleNumberInput);\n        \n        \/\/ \u0647\u0646\u06af\u0627\u0645 \u0628\u0644\u0648\u0631\u060c \u0641\u0631\u0645\u062a \u0631\u0627 \u0627\u0639\u0645\u0627\u0644 \u06a9\u0646\n        input.addEventListener('blur', function() {\n            if(this.value) {\n                this.value = formatNumber(this.value);\n            }\n        });\n    });\n    \n    \/\/ \u062a\u0627\u0628\u0639 debounce \u0628\u0631\u0627\u06cc \u0628\u0647\u06cc\u0646\u0647\u200c\u0633\u0627\u0632\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627\n    function debounce(func, wait) {\n        let timeout;\n        return function executedFunction(...args) {\n            const later = () => {\n                clearTimeout(timeout);\n                func(...args);\n            };\n            clearTimeout(timeout);\n            timeout = setTimeout(later, wait);\n        };\n    }\n    \n    \/\/ \u062a\u0627\u0628\u0639 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0646\u0645\u0627\u06cc\u0634 \u0641\u06cc\u0644\u062f\u0647\u0627 \u0628\u0631 \u0627\u0633\u0627\u0633 \u0646\u0648\u0639 \u0645\u0639\u0627\u0645\u0644\u0647\n    function handleTransactionTypeChange() {\n        const selectedValue = transactionTypeSelect.value;\n        \n        \/\/ \u0627\u0628\u062a\u062f\u0627 \u0647\u0645\u0647 \u0641\u06cc\u0644\u062f\u0647\u0627 \u0631\u0627 \u0645\u062e\u0641\u06cc \u06a9\u0646\u06cc\u0645\n        minPriceField.style.display = 'none';\n        maxPriceField.style.display = 'none';\n        minRentField.style.display = 'none';\n        maxRentField.style.display = 'none';\n        minDepositField.style.display = 'none';\n        maxDepositField.style.display = 'none';\n        \n        \/\/ \u0633\u067e\u0633 \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0645\u0631\u0628\u0648\u0637\u0647 \u0631\u0627 \u0646\u0645\u0627\u06cc\u0634 \u062f\u0647\u06cc\u0645\n        if (selectedValue === '\u062e\u0631\u06cc\u062f \u0648 \u0641\u0631\u0648\u0634') {\n            minPriceField.style.display = 'block';\n            maxPriceField.style.display = 'block';\n        } else if (selectedValue === '\u0631\u0647\u0646 \u0648 \u0627\u062c\u0627\u0631\u0647') {\n            minRentField.style.display = 'block';\n            maxRentField.style.display = 'block';\n            minDepositField.style.display = 'block';\n            maxDepositField.style.display = 'block';\n        } else if (selectedValue === '\u0627\u062c\u0627\u0631\u0647 \u0631\u0648\u0632\u0627\u0646\u0647') {\n            minRentField.style.display = 'block';\n            maxRentField.style.display = 'block';\n        }\n    }\n    \n    \/\/ \u0627\u06cc\u062c\u0627\u062f \u0646\u0633\u062e\u0647 debounced \u0627\u0632 \u062a\u0627\u0628\u0639 \u062c\u0633\u062a\u062c\u0648\n    const debouncedUpdate = debounce(updateMainInputs, 300);\n    \n    \/\/ \u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 event listener \u0628\u0647 \u0647\u0645\u0647 \u0641\u06cc\u0644\u062a\u0631\u0647\u0627\n    function setupFilterListeners() {\n        \/\/ \u0641\u06cc\u0644\u062a\u0631 \u0645\u0648\u0642\u0639\u06cc\u062a - \u0627\u06cc\u0646 \u0642\u0628\u0644\u0627\u064b \u06a9\u0627\u0631 \u0645\u06cc\u200c\u06a9\u0631\u062f\n        mantagheSelect.addEventListener('change', function() {\n            console.log('\u0645\u0648\u0642\u0639\u06cc\u062a \u062a\u063a\u06cc\u06cc\u0631 \u06a9\u0631\u062f');\n            \/\/ \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0645\u0633\u062a\u0642\u06cc\u0645 \u062a\u0627\u0628\u0639 moveMap \u0627\u0632 map.js\n            if (typeof window.moveMap === 'function') {\n                window.moveMap({target: this});\n            }\n        });\n        \n        \/\/ \u0641\u06cc\u0644\u062a\u0631 \u0646\u0648\u0639 \u0645\u0639\u0627\u0645\u0644\u0647\n        transactionTypeSelect.addEventListener('change', function() {\n            console.log('\u0646\u0648\u0639 \u0645\u0639\u0627\u0645\u0644\u0647 \u062a\u063a\u06cc\u06cc\u0631 \u06a9\u0631\u062f:', this.value);\n            handleTransactionTypeChange();\n            \n            \/\/ \u0622\u067e\u062f\u06cc\u062a \u0641\u06cc\u0644\u062a\u0631 \u0627\u0635\u0644\u06cc \u062f\u0631 map.js\n            document.getElementById('transaction-type').value = this.value;\n            debouncedUpdate();\n        });\n        \n        \/\/ \u0641\u06cc\u0644\u062a\u0631 \u0646\u0648\u0639 \u0645\u0644\u06a9\n        estateTypeSelect.addEventListener('change', function() {\n            console.log('\u0646\u0648\u0639 \u0645\u0644\u06a9 \u062a\u063a\u06cc\u06cc\u0631 \u06a9\u0631\u062f:', this.value);\n            \n            \/\/ \u0622\u067e\u062f\u06cc\u062a \u0641\u06cc\u0644\u062a\u0631 \u0627\u0635\u0644\u06cc \u062f\u0631 map.js\n            document.getElementById('estate-type').value = this.value;\n            debouncedUpdate();\n        });\n        \n        \/\/ \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0639\u062f\u062f\u06cc\n        numberInputs.forEach(input => {\n            input.addEventListener('input', function() {\n                \/\/ \u0641\u0642\u0637 \u0632\u0645\u0627\u0646\u06cc \u062c\u0633\u062a\u062c\u0648 \u06a9\u0646 \u06a9\u0647 \u062a\u0627\u06cc\u067e \u06a9\u0631\u062f\u0646 \u062a\u0645\u0627\u0645 \u0634\u062f\u0647 \u0628\u0627\u0634\u062f\n                clearTimeout(this.inputTimeout);\n                this.inputTimeout = setTimeout(() => {\n                    console.log('\u0641\u06cc\u0644\u062f \u0639\u062f\u062f\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u06a9\u0631\u062f:', this.id, this.value);\n                    debouncedUpdate();\n                }, 500);\n            });\n            \n            \/\/ \u0647\u0646\u06af\u0627\u0645 \u062a\u063a\u06cc\u06cc\u0631 \u0645\u0642\u062f\u0627\u0631 \u0647\u0645 \u062c\u0633\u062a\u062c\u0648 \u06a9\u0646\n            input.addEventListener('change', function() {\n                console.log('\u0641\u06cc\u0644\u062f \u0639\u062f\u062f\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u06a9\u0631\u062f (change):', this.id, this.value);\n                debouncedUpdate();\n            });\n        });\n    }\n    \n    \/\/ \u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 \u0645\u0646\u0648\n    toggleButton.addEventListener('click', function() {\n        filtersContainer.classList.add('active');\n        overlay.classList.add('active');\n        toggleButton.style.opacity = '0';\n        toggleButton.style.visibility = 'hidden';\n    });\n    \n    \/\/ \u0628\u0633\u062a\u0646 \u0645\u0646\u0648\n    function closeFilters() {\n        filtersContainer.classList.remove('active');\n        overlay.classList.remove('active');\n        toggleButton.style.opacity = '1';\n        toggleButton.style.visibility = 'visible';\n    }\n    \n    \/\/ \u0628\u0633\u062a\u0646 \u0628\u0627 \u062f\u06a9\u0645\u0647 \u0628\u0633\u062a\u0646\n    closeButton.addEventListener('click', closeFilters);\n    \n    \/\/ \u0628\u0633\u062a\u0646 \u0628\u0627 \u06a9\u0644\u06cc\u06a9 \u0631\u0648\u06cc overlay\n    overlay.addEventListener('click', closeFilters);\n    \n    \/\/ \u067e\u0627\u06a9 \u06a9\u0631\u062f\u0646 \u0641\u06cc\u0644\u062a\u0631\u0647\u0627\n    clearButton.addEventListener('click', function() {\n        mantagheSelect.selectedIndex = 0;\n        transactionTypeSelect.selectedIndex = 0;\n        estateTypeSelect.selectedIndex = 0;\n        \n        \/\/ \u067e\u0627\u06a9 \u06a9\u0631\u062f\u0646 \u0645\u0642\u0627\u062f\u06cc\u0631 \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0639\u062f\u062f\u06cc\n        numberInputs.forEach(input => {\n            input.value = '';\n        });\n        \n        \/\/ \u067e\u0627\u06a9 \u06a9\u0631\u062f\u0646 \u0641\u06cc\u0644\u062f\u0647\u0627\u06cc \u0627\u0635\u0644\u06cc \u062f\u0631 map.js\n        document.getElementById('transaction-type').value = '';\n        document.getElementById('estate-type').value = '';\n        document.getElementById('min-price').value = '';\n        document.getElementById('max-price').value = '';\n        document.getElementById('min-rent').value = '';\n        document.getElementById('max-rent').value = '';\n        document.getElementById('min-deposit').value = '';\n        document.getElementById('max-deposit').value = '';\n        \n        \/\/ \u067e\u0633 \u0627\u0632 \u067e\u0627\u06a9 \u06a9\u0631\u062f\u0646\u060c \u0648\u0636\u0639\u06cc\u062a \u0646\u0645\u0627\u06cc\u0634 \u0641\u06cc\u0644\u062f\u0647\u0627 \u0631\u0627 \u0628\u0647 \u0631\u0648\u0632 \u06a9\u0646\u06cc\u0645\n        handleTransactionTypeChange();\n        \n        \/\/ \u0627\u0646\u062c\u0627\u0645 \u062c\u0633\u062a\u062c\u0648 \u0628\u0631\u0627\u06cc \u0646\u0645\u0627\u06cc\u0634 \u0647\u0645\u0647 \u0646\u062a\u0627\u06cc\u062c\n        setTimeout(function() {\n            if (typeof window.autoFetch === 'function') {\n                window.autoFetch();\n            }\n        }, 100);\n    });\n    \n    \/\/ \u0645\u0642\u062f\u0627\u0631\u062f\u0647\u06cc \u0627\u0648\u0644\u06cc\u0647 \u0648\u0636\u0639\u06cc\u062a \u0646\u0645\u0627\u06cc\u0634 \u0641\u06cc\u0644\u062f\u0647\u0627\n    handleTransactionTypeChange();\n    \n    \/\/ \u062a\u0646\u0638\u06cc\u0645 event listener \u0647\u0627\n    setupFilterListeners();\n});\n<\/script>\n\n<style>\n.irmp-search-filters {\nposition: relative;\nmargin-bottom: 20px;\n}\n.irmp-filter-toggle {\nposition: absolute;\ntop: 50%;\nright: 0;\ntransform: translateY(-50%);\nbackground: #ffffff;\nborder: none;\nwidth: 60px;\nheight: 60px;\ncursor: pointer;\nz-index: 100000000000000000;\ndisplay: flex;\nalign-items: center;\njustify-content: center;\nborder-radius: 30px 0 0 30px;\nbox-shadow: -2px 2px 15px rgba(0, 0, 0, 0.1);\ntransition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);\nopacity: 1;\nvisibility: visible;\n}\n.irmp-filter-toggle:hover {\nbackground: #f8f9fa;\nwidth: 65px;\n}\n.irmp-filter-toggle i {\nfont-size: 20px;\ncolor: #333;\ntransition: all 0.3s ease;\n}\n.page-inner {\n    padding:0!important;\n}\n.irmp-filters-container {\nposition: fixed;\ntop: 0;\nborder-top-left-radius:10px;\nborder-bottom-left-radius:10px;\nright: -320px;\nwidth: 250px;\nheight: 100vh;\nbackground: #ffffff;\nz-index: 99999999999;\npadding: 30px 20px;\noverflow-y: auto;\ntransition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1);\nbox-shadow: -5px 0 25px rgba(0, 0, 0, 0.1);\n}\n.irmp-filters-container.active {\nright: 0;\n}\n\n\n.irmp-search-title {\nfont-size: 18px;\nfont-weight: 700;\ncolor: #333;\nmargin-bottom: 25px;\ntext-align: center;\npadding-bottom: 15px;\nborder-bottom: 2px solid #e0e0e0;\n}\n\n.irmp-filter-item {\nmargin-bottom: 15px;\n}\n\n.irmp-filter-item select {\nwidth: 100%;\npadding: 10px 35px 10px 12px;\nborder: 2px solid #e0e0e0;\nborder-radius: 8px;\nfont-size: 13px;\nfont-family: inherit;\nbackground: white;\nbackground-image: url(\"data:image\/svg+xml;charset=UTF-8,%3csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c\/polyline%3e%3c\/svg%3e\");\nbackground-repeat: no-repeat;\nbackground-position: right 12px center;\nbackground-size: 14px;\nappearance: none;\ntransition: all 0.3s ease;\n}\n.irmp-filter-item input {\nwidth: 100%;\npadding: 10px 35px 10px 12px;\nborder: 2px solid #e0e0e0;\nbox-shadow:none!important;\nmargin-bottom:0!important;\nmargin-top:0!important;\nborder-radius: 8px;\nfont-size: 13px;\nbackground: white;\ntransition: all 0.3s ease;\n}\n.irmp-filter-item select:focus,\n.irmp-filter-item input:focus {\noutline: none;\nborder-color: #666;\nbox-shadow: 0 0 0 3px rgba(0, 0, 0, 0.1);\n}\n.irmp-action-buttons {\nmargin-top: 30px;\ndisplay: flex;\nflex-direction: column;\ngap: 10px;\n}\n\n.irmp-search-button,\n.irmp-clear-button,\n.irmp-close-button {\nwidth: 100%;\n}\n\n.irmp-search-btn,\n.irmp-clear-btn,\n.irmp-close-btn {\nwidth: 100%;\nborder: none;\npadding: 12px;\nborder-radius: 8px;\nfont-size: 14px;\nfont-weight: 600;\ncursor: pointer;\ntransition: all 0.3s ease;\ndisplay: flex;\nalign-items: center;\njustify-content: center;\ngap: 8px;\n}\n.irmp-search-btn {\nbackground: #333;\ncolor: white;\n}\n.irmp-search-btn:hover {\nbackground: #555;\ntransform: translateY(-2px);\nbox-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);\n}\n.irmp-clear-btn {\nbackground: #f8f9fa;\ncolor: #666;\nborder: 2px solid #e0e0e0;\n}\n.irmp-clear-btn:hover {\nbackground: #e9ecef;\nborder-color: #ccc;\n}\n.irmp-close-btn {\nbackground: #dc3545;\ncolor: white;\n}\n.irmp-close-btn:hover {\nbackground: #c82333;\ntransform: translateY(-2px);\nbox-shadow: 0 4px 12px rgba(220, 53, 69, 0.3);\n}\n.irmp-search-btn i,\n.irmp-clear-btn i,\n.irmp-close-btn i {\nfont-size: 16px;\n}\n@media (max-width: 480px) {\n.irmp-filters-container {\nwidth: calc(90% - 50px);\nright: -100%;\n}\n.irmp-filter-toggle {\nwidth: 55px;\nheight: 55px;\n}\n.irmp-filter-toggle:hover {\nwidth: 58px;\n}\n}\n\n\/* \u067e\u0627\u067e\u0627\u067e \u0628\u062f\u0648\u0646 \u0645\u062b\u0644\u062b *\/\n.popup-simple .leaflet-popup {\n    margin-bottom: 0 !important;\n}\n\n.popup-simple .leaflet-popup-content-wrapper {\n    background: transparent;\n    box-shadow: none;\n    padding: 0 !important;\n    margin: 0 !important;\n}\n\n.popup-simple .leaflet-popup-content {\n    margin: 0 !important;\n    width: 260px !important;\n    direction: rtl;\n    text-align: right;\n}\n\n.popup-simple .leaflet-popup-tip-container {\n    display: none !important;\n}\n\n.popup-card {\n    background: #fff;\n    border-radius: 12px;\n    overflow: hidden;\n    box-shadow: 0 4px 12px rgba(0,0,0,0.15);\n}\n\n.popup-image {\n    width: 100%;\n    height: 140px;\n    overflow: hidden;\n    background: #f5f5f5;\n}\n\n.popup-image img {\n    width: 100%;\n    height: 100%;\n    object-fit: cover;\n}\n\n.popup-no-img {\n    width: 100%;\n    height: 100%;\n    background: #f5f5f5;\n}\n\n.popup-details {\n    padding: 12px;\n}\n\n.popup-title {\n    font-size: 14px;\n    font-weight: 600;\n    color: #1e1e1e;\n    margin-bottom: 8px;\n    line-height: 1.4;\n    font-family: 'IRANSans', 'IranSans', Tahoma, sans-serif;\n}\n\n.popup-info-text {\n    font-size: 12px;\n    color: #666;\n    margin-bottom: 10px;\n    line-height: 1.5;\n    font-family: 'IRANSans', 'IranSans', Tahoma, sans-serif;\n}\n\n.popup-btn {\n    display: inline-block;\n    background: #1e1e1e;\n    color: #fff;\n    text-decoration: none;\n    padding: 6px 14px;\n    border-radius: 20px;\n    font-size: 11px;\n    font-weight: 500;\n    transition: background 0.2s;\n    font-family: 'IRANSans', 'IranSans', Tahoma, sans-serif;\n}\n\n.popup-btn:hover {\n    background: #333;\n    color: #fff;\n    text-decoration: none;\n}\n\/* \u062d\u0630\u0641 \u067e\u0633\u200c\u0632\u0645\u06cc\u0646\u0647 \u0648 \u0633\u0627\u06cc\u0647 \u0627\u0636\u0627\u0641\u06cc \u0622\u06cc\u06a9\u0648\u0646\u200c\u0647\u0627 *\/\n.custom-marker, .custom-marker-hover {\n    background: transparent !important;\n    border: none !important;\n    box-shadow: none !important;\n}\n\n.leaflet-marker-icon.custom-marker,\n.leaflet-marker-icon.custom-marker-hover {\n    background: transparent !important;\n    border: none !important;\n}\n\n<\/style>\n    \n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-6469","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/sitralweb.com\/iranamlak\/wp-json\/wp\/v2\/pages\/6469","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sitralweb.com\/iranamlak\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sitralweb.com\/iranamlak\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sitralweb.com\/iranamlak\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sitralweb.com\/iranamlak\/wp-json\/wp\/v2\/comments?post=6469"}],"version-history":[{"count":3,"href":"https:\/\/sitralweb.com\/iranamlak\/wp-json\/wp\/v2\/pages\/6469\/revisions"}],"predecessor-version":[{"id":7353,"href":"https:\/\/sitralweb.com\/iranamlak\/wp-json\/wp\/v2\/pages\/6469\/revisions\/7353"}],"wp:attachment":[{"href":"https:\/\/sitralweb.com\/iranamlak\/wp-json\/wp\/v2\/media?parent=6469"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}