PageSourceSearch

https://www.realtor.ge/theme/js/theme.js?v=36

js realtor.ge collected 2026-10-04 23:00:52 UTC 24,944 bytes, 687 lines download raw bytes

1var documentHeight = 0,
2documentWidth = 0;
3(function ($) {
4
5    documentHeight = $(window).height();
6    documentWidth  = $(window).width();
7
8    var resizeTimer;
9    $(window).resize(function(e) {
10        clearTimeout(resizeTimer);
11        resizeTimer = setTimeout(function() {
12            documentHeight = $(window).height();
13            documentWidth  = $(window).width();
14            $("#ul_address_query").css("height", documentHeight-110);
15        }, 500);
16    });
17
18    $('#btn-adv-clear').click(function(){
19        var _adv = $('#advSearchModal');
20        _adv.find("input[type='checkbox']:checked").prop('checked', false).parent().removeClass('active');
21        _adv.find("input[type='text']").val('');
22    });
23
24    $('button.clean').click(function(){
25        var
26            _this = $(this),
27            _el = _this.parents('.search-item'),
28            _b = _this.parents('.advanced-search-box');
29        if(_this.hasClass('_pt')){
30            _b.find("input[type='checkbox']:checked").prop('checked', false).parent().removeClass('active');
31            _b.find('.property_text').html(text_property_type);
32            $('.search_property_type').trigger('change');
33        }else{
34            _el.find('input').val('');
35            _b.find('.renge_velues').html(' -');
36        }
37    });
38
39    $(document).on('click', '.btn-street-clear', function () {
40        $(this).parents('.street-area').find("input[type='checkbox']:checked").prop('checked', false).parent().removeClass('active');
41    });
42
43    $(document).on('change', 'input.street', function () {
44        $.each($('input.street:checked'), function(i, el) {
45            if($('#district-'+$(el).data('id')).not(':checked')){
46                $('#district-'+$(el).data('id')).prop('checked', true).trigger('change');
47            }
48        });
49    });
50
51    // Advanced Search Revel
52    $(".btn-property-type").on("click", function () {
53        if(!$(this).hasClass("collapsed")){
54            hideAllCollapsed("btn-property-type");
55            $(this).addClass("collapsed");
56            var ps = $(this).position();
57            $("#collapsed-property-type").css("left",ps.left).addClass("show");
58        }else{
59            hideAllCollapsed("all");
60        }
61    });
62
63
64    $(".btn-adv-address").on("click", function () {
65
66        //$('.btn-adv-address span').attr('class', 'lds-dual-ring');
67
68        if(!$(this).hasClass("collapsed")){
69            hideAllCollapsed("btn-adv-address");
70            $(this).addClass("collapsed");
71            $("#collapsed-property-address").addClass("show");
72        }else{
73            hideAllCollapsed("all");
74        }
75        $('#modalAddress').modal({backdrop: 'static', keyboard: false}, 'show');
76    });
77
78    $(".btn-property-price").on("click", function () {
79        if(!$(this).hasClass("collapsed")){
80            hideAllCollapsed("btn-property-price");
81            $(this).addClass("collapsed");
82            var ps = $(this).position();
83            $("#collapsed-property-price").css("left",ps.left).addClass("show");
84        }else{
85            hideAllCollapsed("all");
86        }
87    });
88
89    $(".btn-property-area").on("click", function () {
90        if(!$(this).hasClass("collapsed")){
91            hideAllCollapsed("btn-property-area");
92            $(this).addClass("collapsed");
93            var ps = $(this).position();
94            $("#collapsed-property-area").css("left",ps.left).addClass("show");
95        }else{
96            hideAllCollapsed("all");
97        }
98    });
99
100    $(".advanced-btn").on("click", function () {
101        if(!$(this).hasClass("collapsed")){
102            hideAllCollapsed("advanced-btn");
103            $(this).addClass("collapsed");
104            $("#advanced-search").addClass("show");
105        }else{
106            hideAllCollapsed("all");
107        }
108    });
109
110
111
112    function hideAllCollapsed(n){
113
114        if(n != "btn-property-type"){
115            $(".btn-property-type.collapsed").removeClass("collapsed");
116            $("#collapsed-property-type.show").removeClass("show");
117        }
118        if(n != "btn-adv-address"){
119            $(".btn-adv-address.collapsed").removeClass("collapsed");
120            $("#collapsed-property-address").removeClass("show");
121        }
122        if(n != "btn-property-type"){
123            $(".btn-property-type.collapsed").removeClass("collapsed");
124            $("#collapsed-property-type.show").removeClass("show");
125        }
126
127        if(n != "btn-property-price"){
128            $(".btn-property-price.collapsed").removeClass("collapsed");
129            $("#collapsed-property-price.show").removeClass("show");
130        }
131
132        if(n != "btn-property-area"){
133            $(".btn-property-area.collapsed").removeClass("collapsed");
134            $("#collapsed-property-area.show").removeClass("show");
135        }
136        if(n != "advanced-btn"){
137            $(".advanced-btn.collapsed").removeClass("collapsed");
138            $("#advanced-search.show").removeClass("show");
139        }
140    }
141
142    $(document).click(function() {
143        var container = $(".search-collapsed");
144        if (!container.is(event.target) && !container.has(event.target).length) {
145            hideAllCollapsed("all");
146        }
147    });
148
149    $(".advanced-search-box .close").click(function(){
150        $(this).parents(".advanced-search-box").removeClass("show");
151    });
152
153    $(".btn-next").click(function(e){
154        var _this = $(this);
155        //$(_this).parents(".advanced-search-box").removeClass("show");
156        if(_this.data("selector") == "#collapsed-property-address"){
157            hideAllCollapsed("all");
158            $('#modalAddress').modal('show');
159
160        }else if(_this.data("selector") == "collapsed-property-price"){
161            e.stopPropagation();
162            $("#modalAddress").modal("hide");
163            $(".btn-adv-address.collapsed").removeClass("collapsed");
164            $("#collapsed-property-address").removeClass("show");
165
166            $(".btn-property-price").addClass("collapsed");
167            var ps = $(".btn-property-price").position();
168            $("#collapsed-property-price").css("left",ps.left).addClass("show");
169        } else if(_this.data("selector") == "#collapsed-property-area"){
170
171            hideAllCollapsed("btn-property-area");
172            $(".btn-property-type").addClass("collapsed");
173            var ps = $(".btn-property-area").position();
174            $("#collapsed-property-area").css("left",ps.left).addClass("show");
175
176        }else if(_this.data("selector") == "#advanced_search"){
177            $("#advSearchModal").modal("toggle");
178        }
179
180    });
181
182
183    var search_form = $("#search-form");
184    function setSeatchURI(obj){
185        var
186            _uri = getBaseLang+'/',
187            _values = [];
188        $.each($('.search_property_type:checked'), function(i, el) {
189            _values.push($(el).val());
190        });
191        _uri += obj.transaction_type ? obj.transaction_type : $('.btn_transaction_type.active').data('alias');
192        _uri += '/';
193        _uri += _values.length ? _values.join('_') : '';
194        _uri += '/'
195        search_form.attr('action', _uri);
196
197    }
198
199    setSeatchURI({});
200
201    $('.btn_transaction_type').click(function(){
202        var _alias = $(this).data('alias');
203        setSeatchURI({transaction_type: _alias});
204    });
205
206    $('.search_property_type').change(function(){
207        var _values = [];
208        $.each($('.search_property_type:checked'), function(i, el) {
209            _values.push($(el).val());
210        });
211        setSeatchURI({});
212        if(_values.length){
213            $('.advanced-btn').prop('disabled', false);
214            $('#f_60 .btn-next').prop('disabled', false);
215            $('div.cg').each(function(i, el) {
216                var
217                    _li = $(this),
218                    _is_show = false;
219                $.each(_values, function(i, val) {
220                    var _v = adsCategories[val] ? adsCategories[val] : val;
221                    if(_li.hasClass("cg-"+_v)){
222                        _is_show = true;
223                        return;
224                    }
225                });
226                if(_is_show === true){
227                    _li.css('display', 'block');
228                }else{
229                    if($(el).hasClass('_checkbox-multiple') || $(el).hasClass('_checkbox')){
230                        $(el).find("input[type='checkbox']:checked").prop('checked', false).parent().removeClass('active');
231                    } else if($(el).hasClass('_input_renge')){
232                        $(el).find("input").val('');
233                    }
234                    _li.hide();
235                }
236            });
237
238        }else{
239
240            $('div.cg').each(function(i, el) {
241                var
242                    _li = $(this);
243                if($(el).hasClass('_checkbox-multiple') || $(el).hasClass('_checkbox')){
244                    $(el).find("input[type='checkbox']:checked").prop('checked', false).parent().removeClass('active');
245                } else if($(el).hasClass('_input_renge')){
246                    $(el).find("input").val('');
247                }
248                _li.hide();
249            });
250            //$('ul.h1ads_2st_list > li').hide();
251            $('.advanced-btn').prop('disabled', true);
252            $('#f_60 .btn-next').prop('disabled', true);
253        }
254
255    });
256
257    $('.search_property_type__').change(function(){
258        var _values = [];
259        $.each($('.search_property_type:checked'), function(i, el) {
260            _values.push($(el).val());
261        });
262        setSeatchURI({});
263        if(_values.length){
264            $('#advanced-btn').prop('disabled', false);
265            $('.group-f').each(function(i, el) {
266                var
267                    _li = $(this),
268                    _is_show = false;
269                $.each(_values, function(i, val) {
270                    var _v = adsCategories[val] ? adsCategories[val] : val;
271                    if(_li.hasClass("cg-"+_v)){
272                        _is_show = true;
273                        return;
274                    }
275                });
276                if(_is_show === true){
277                    _li.css('display', 'block');
278                }else{
279                    if($(el).hasClass('_checkbox-multiple') || $(el).hasClass('_checkbox')){
280                        $(el).find("input[type='checkbox']:checked").prop('checked', false).parent().removeClass('active');
281                    } else if($(el).hasClass('_input_renge')){
282                        $(el).find("input").val('');
283                    }
284                    _li.hide();
285                }
286            });
287
288        }else{
289
290            $('.group-f').each(function(i, el) {
291                var
292                    _li = $(this);
293                if($(el).hasClass('_checkbox-multiple') || $(el).hasClass('_checkbox')){
294                    $(el).find("input[type='checkbox']:checked").prop('checked', false).parent().removeClass('active');
295                } else if($(el).hasClass('_input_renge')){
296                    $(el).find("input").val('');
297                }
298                _li.hide();
299            });
300            $('ul.h1ads_2st_list > li').hide();
301            $('#advanced-btn').prop('disabled', true);
302        }
303
304    });
305
306
307    $('.advanced-btn').click(function (e) {
308        $('#advSearchModal').modal('toggle');
309    });
310
311
312    $(document).on('change','input.area', function(){
313        var _this = $(this),
314            _id = _this.data('id');
315        if(_this.is(":checked")){
316            $('input.district[data-parent="'+_id+'"]').prop("checked", true);
317            $('a[aria-controls="area_tab_'+_id+'"] .badge').html($('input.district[data-parent="'+_id+'"]:checked').length);
318        }else{
319            $('input.district[data-parent="'+_id+'"]').prop("checked", false);
320            _this.parents(".area-group").find(".street-area").hide();
321            //_this.parents(".area-group").find("select").selectpicker("val", "");
322            $('a[aria-controls="area_tab_'+_id+'"] .badge').html('');
323        }
324    });
325
326    $(document).on('change','input.district', function(){
327
328        var _this = $(this),
329            _id = _this.data('id'),
330            _parent = _this.data('parent');
331        if(_this.is(":checked")){
332            $("#btn-search-street-"+_id).prop("disabled", false);
333        }else{
334            $("input[name='street["+_id+"][]").prop("checked", false);
335        }
336
337        if($('input.district[data-parent="'+_parent+'"]:checked').length){
338            if($("#area-"+_parent).not(":checked")){
339                $("#area-"+_parent).prop("checked", true);
340            }
341            $('a[aria-controls="area_tab_'+_parent+'"] .badge').html($('input.district[data-parent="'+_parent+'"]:checked').length);
342        } else{
343            if($("#area-"+_parent).is(":checked")){
344                $("#area-"+_parent).prop("checked", false);
345            }
346            $('a[aria-controls="area_tab_'+_parent+'"] .badge').html('');
347        }
348    });
349
350    /*$(".selectpicker-streets.shown").selectpicker({
351        noneSelectedText:text_choose_a_street,
352        selectAllText: text_all,
353        deselectAllText: text_clear,
354        doneButtonText: text_close,
355        actionsBox:true
356    });*/
357
358    $(document).on('click','.btn-search-street', function(){
359
360        var _this = $(this),
361            _id = _this.data('id');
362        $("#street-area-"+_id).show();
363
364        $('#street-area-modal-'+_id).modal({backdrop: 'static', keyboard: false}, 'show');
365        return false;
366
367        if($("button[data-id='street-"+_id+"']").length){
368
369            if($("button[data-id='street-"+_id+"']").attr("aria-expanded") == 'true'){
370                //$("#street-"+_id).selectpicker('toggle');
371            }else{
372                //$("select#street-"+_id).selectpicker('destroy');
373
374                /*$("#street-area-"+_id+" .selectpicker-streets").selectpicker({
375                    noneSelectedText:text_choose_a_street,
376                    selectAllText: text_all,
377                    deselectAllText: text_clear,
378                    doneButtonText: text_close,
379                    actionsBox:true
380                }).on('loaded.bs.select', function (e) {
381                    $(this).selectpicker('toggle');
382                });*/
383
384
385            }
386        }else{
387            $/*("#street-area-"+_id+" .selectpicker-streets").selectpicker({
388                noneSelectedText:text_choose_a_street,
389                selectAllText: text_all,
390                deselectAllText: text_clear,
391                doneButtonText: text_close,
392                actionsBox:true
393            }).on('loaded.bs.select', function (e) {
394                $(this).selectpicker('toggle');
395            });*/
396        }
397
398    });
399    /*$(document).on('loaded.bs.select', '.selectpicker-streets', function (e) {
400        //$(this).selectpicker('toggle');
401    });*/
402    /*$(document).on('hidden.bs.select', '.selectpicker-streets', function (e, clickedIndex, isSelected, previousValue) {
403        var
404            _this = $(this),
405            _val = _this.val(),
406            _id = _this.attr('id');
407        _data_id= _this.data('id');
408
409        if(_val == ''){
410            _this.parents('.street-area').hide();
411            _this.selectpicker('destroy');
412        }else{
413            if($('#district-'+_data_id).not(':checked')){
414                $('#district-'+_data_id).prop('checked', true).trigger('change');
415            }
416            _this.parents('.street-area').show();
417        }
418    });*/
419    /*$(document).on('changed.bs.select', '.selectpicker-streets', function (e, clickedIndex, isSelected, previousValue) {
420
421    });*/
422
423    var searchRequest = null;
424    var minlength = 3;
425    var timer = null;
426    var address_query = $("#address_query");
427    var address_query_result = $("#address_query_result");
428
429    $(document).on('keyup','#address_query',function () {
430        var
431            that = this,
432            value = $(this).val();
433
434        if (value.length >= minlength ) {
435            address_query_result.show();
436            $('.address_query_loader').show();
437            $('#ul_address_query').html('');
438            clearTimeout(timer);
439            timer= setTimeout(function(){
440                if (searchRequest != null) {
441                    searchRequest.abort();
442                }
443
444                searchRequest = $.ajax({
445                    type: "GET",
446                    async:false,
447                    cache:false,
448                    url: getBaseLang+"/query",
449                    dataType: "html",
450                    data: {
451                        'q' : value,
452                        'content' : 'modal'
453                    },
454                    success: function(respo){
455                        $('.address_query_loader').hide();
456                        $('#ul_address_query').html(respo);
457                        $("#ul_address_query").css("height", $(window).height()-110);
458                    }
459                });
460
461            }, 500);
462        }
463    });
464
465    $(document).on('click', '.new_query', function (e) {
466        $('#address_query').val('').prop('disabled', false);
467        $(this).hide();
468    });
469    $(document).on('dblclick', '#address_query', function (e) {
470        $('#address_query').val('').prop('disabled', false);
471        $('.new_query').hide();
472    });
473    $(document).on('click', '.address_query', function (e) {
474        var
475            _this = $(this),
476            _id = _this.data('id'),
477            _parent = _this.data('parent'),
478            _name= _this.data('name'),
479            _type = _this.data('type');
480            _text = _this.text();
481        if(_type == 'select'){
482
483            $("#district-"+_parent).prop('checked', true);
484            $("#street-"+_id).prop('checked', true);
485            //$("input[name='street["+_parent+"][]']").prop('checked', true);
486        }else if(_type == 'input'){
487            $('input#'+_name).prop('checked', true).trigger('change');
488        }
489        $('#address_query').val(_text).prop('disabled', true);
490        $('#input_search_address').val(_text);
491        $('#address_query_result').hide();
492        $('.new_query').show();
493
494    });
495    $(document).on('click', function (e) {
496        if ($(e.target).closest("#address_query_area").length === 0) {
497            address_query_result.hide();
498        }
499    });
500
501    $("#btn-address-clear").click(function(){
502        $("#modalAddress .modal-body").load(getBaseLang+"/address?content=modal");
503    });
504
505    $("input.transactions").change(function(){
506        var
507            _this = $(this),
508            _checked = _this.is(":checked"),
509            _val = _this.val();
510        if(_checked){
511            $("#price_area_"+_val).show();
512        }else{
513            $("#price_area_"+_val).hide();
514        }
515
516    });
517    $("input.agreements").change(function(){
518        var
519            _this = $(this),
520            _checked = _this.is(":checked"),
521            _val = _this.val();
522        if(_checked){
523            $("input[name='price["+_val+"]']").prop('readonly', true);
524            //$("input[name='currency["+_val+"]']").prop('disabled', true);
525            $("input[name='currency["+_val+"]']").parent().addClass('disabled');
526            _this.next().attr("class", "flaticon-check-box");
527        }else{
528            $("input[name='price["+_val+"]']").prop('readonly', false);
529            //$("input[name='currency["+_val+"]']").prop('disabled', false);
530            $("input[name='currency["+_val+"]']").parent().removeClass('disabled');
531            _this.next().attr("class", "flaticon-blank-check-box");
532        }
533    });
534
535    $(".btn-group-multi input").change(function(){
536        var
537            _this = $(this),
538            _checked = _this.is(":checked"),
539            _btn = _this.parent();
540        if(_checked){
541
542
543        }else{
544
545        }
546    });
547
548    $("input.categories").change(function(){
549        var
550            _this = $(this),
551            _cg = _this.val();
552        $(".cg").each(function (i, e) {
553            if ($(this).hasClass("cg-"+_cg)) {
554                $(this).show();
555            } else {
556                $(this).hide()
557            }
558        });
559    });
560    $("#address_region").change(function(){
561
562        $("#address_area").next().find(".filter-option-inner-inner").html('<div class="spinner-border text-muted"></div>');
563        $("#address_streets").next().find(".filter-option-inner-inner").html('<div class="spinner-border text-muted"></div>');
564
565        var
566            _this = $(this),
567            _val = _this.val();
568        $.ajax({
569            type: "POST",
570            url: getBaseLang+"/ajax",
571            dataType: "json",
572            data: {
573                action:"ajax_chooseAddress",
574                group_by: "regions",
575                value:_val
576            },
577            success: function(response) {
578
579                /*$.each(response, function(name, objects) {
580                    var
581                        _select = $("select#address_"+name),
582                        _options ="";
583                    //_select.selectpicker("destroy");
584
585                    $.each(objects, function(i, v) {
586                        if(v.type == "optgroup"){
587                            _options+="<optgroup label=\""+v.text+"\">";
588                            $.each(v.options, function(ii, vv) {
589                                _options+="<option value=\""+vv.value+"\">"+vv.text+"</option>";
590                            });
591                            _options+="</optgroup>";
592                        }
593                        else{
594                            _options+="<option value=\""+v.id+"\">"+v.title+"</option>";
595                        }
596                    });
597                    _select.html(_options);
598                    //_select.selectpicker();
599                    //_select.selectpicker('refresh');
600                    //_select.val("");
601                });*/
602
603            }
604        });
605    });
606    $("#address_area").change(function(){
607        $("#address_streets").next().find(".filter-option-inner-inner").html('<div class="spinner-border text-muted"></div>');
608        var _region = $("#address_region").val();
609        var
610            _this = $(this),
611            _val = _this.val();
612        $.ajax({
613            type: "POST",
614            url: getBaseLang+"/ajax",
615            dataType: "json",
616            data: {
617                action:"ajax_chooseAddress",
618                group_by: "area",
619                region:_region,
620                value:_val
621            },
622            success: function(response) {
623                var _show_street = false;
624                $.each(response, function(name, objects) {
625                    var
626                        _select = $("#address_"+name),
627                        _options = "";
628
629                    /*if(objects.length == 1){
630                     _select.prop('disabled', true);
631                     }else{
632                     _select.prop('disabled', false);
633                     }*/
634                    $.each(objects, function(i, v) {
635                        _options+="<option value=\""+i+"\">"+v+"</option>";
636                    });
637                    //_select.html(_options);
638                    //_select.selectpicker('refresh');
639                });
640
641                if(response.streets && response.streets.length > 1){
642                    alert(response.streets.length);
643                }
644
645
646            }
647        });
648    });
649
650    $(document).on('keyup', '#street_area .bs-searchbox input', function () {
651        var
652            that = this,
653            value = $(this).val();
654
655        if (value.length >= minlength ) {
656
657
658            clearTimeout(timer);
659            timer= setTimeout(function(){
660                if (searchRequest != null) {
661                    searchRequest.abort();
662                }
663
664                searchRequest = $.ajax({
665                    type: "GET",
666                    async:false,
667                    cache:false,
668                    url: getBaseLang+"/query",
669                    dataType: "html",
670                    data: {
671                        'q' : value,
672                        'content' : 'modal'
673                    },
674                    success: function(respo){
675                        console.log(respo);
676                    }
677                });
678
679            }, 500);
680        }
681    });
682
683
684    $(document).on('click tap touchstart', '.modal-close', function () {
685        $($(this).data('id')).modal('hide');
686    });
687})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.