events.js 152 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805
  1. var pois = null;
  2. var poisall = null;
  3. var drawingManager = null;
  4. var activePoly = null;
  5. var markers = Array();
  6. var filterCategory = '';
  7. var isScrollEnabled = true;
  8. var itemHTML = '';
  9. var allShapes = [];
  10. var disableLazyLoad = false;
  11. function showLocationSearchLayer(obj) {
  12. $('.location-search-layer').show();
  13. }
  14. function hideLocationSearchLayer(obj) {
  15. if (filterCategory==='') {
  16. //$('.location-search-layer').hide();
  17. }
  18. else {
  19. return false;
  20. }
  21. }
  22. function searchSuggession(obj) {
  23. var act = $(obj).val();
  24. var lastKeyword = '';
  25. var kws = [];
  26. if (act.length>2) {
  27. kws = act.split(",");
  28. lastKeyword = kws[kws.length-1];
  29. $.get('/main/suggession/'+lastKeyword,function(resp) {
  30. $('.suggession').html(resp);
  31. });
  32. if (!$('.suggession').is(':visible')) {
  33. $('.suggession').show();
  34. }
  35. }
  36. else {
  37. $('.suggession').html('');
  38. $('.suggession').hide();
  39. return false;
  40. }
  41. }
  42. function set_suggess_item(key) {
  43. if (key!=='') {
  44. var act = $('#search_location').val();
  45. var kws = [];
  46. var fill = '';
  47. kws = act.split(",");
  48. kws[kws.length-1]=key;
  49. fill = kws.join(',');
  50. $('#search_location').val(fill+',');
  51. }
  52. else {
  53. return false;
  54. }
  55. }
  56. var fsMode = false;
  57. function switchFullScreen(obj) {
  58. if (fsMode==false) {
  59. fsMode = true;
  60. $('.results-block').toggle();
  61. $('.filter-bar').toggle();
  62. $('#headline').toggle();
  63. $('#menu').toggle();
  64. $('.map-block').css('margin-top','0px');
  65. $('#circleButton').css('top','0px');
  66. $('#fullButton').css('top','0px');
  67. $('#dsBtn').toggle();
  68. $('#fsBtnLabel').html('Normál nézet');
  69. }
  70. else {
  71. fsMode = false;
  72. $('.results-block').toggle();
  73. $('.filter-bar').toggle();
  74. $('#headline').toggle();
  75. $('#menu').toggle();
  76. $('.map-block').css('margin-top','162px');
  77. $('#fullButton').css('top','162px');
  78. $('#circleButton').css('top','162px');
  79. $('#dsBtn').toggle();
  80. $('#fsBtnLabel').html('Teljes képernyő');
  81. }
  82. }
  83. function post(path, params, method='post') {
  84. const form = document.createElement('form');
  85. form.method = method;
  86. form.action = path;
  87. for (const key in params) {
  88. if (params.hasOwnProperty(key)) {
  89. const hiddenField = document.createElement('input');
  90. hiddenField.type = 'hidden';
  91. hiddenField.name = key;
  92. hiddenField.value = params[key];
  93. form.appendChild(hiddenField);
  94. }
  95. }
  96. document.body.appendChild(form);
  97. form.submit();
  98. }
  99. function search_from_main() {
  100. var keyw = new Array();
  101. var ertekesites = $('#ertekesites').val();
  102. $('.sugessionTags').children('.sugessionTag').each(function() {
  103. keyw.push($(this).attr('data-value'));
  104. });
  105. //filterCategory = '/'+ertekesites+'/'+$('#tipus').val();
  106. filterCategory = '/map/search/filter';
  107. filterCategory+= '/?from=/&city='+keyw+'&ertekesites='+ertekesites+'&jelleg='+$('#tipus').val()+'&iranyar_min='+$('#armin').val()+'&iranyar_max='+$('#armax').val()+'&meret_netto_min='+$('#sizemin').val()+'&meret_netto_max='+$('#sizemax').val()+'&szoba_min='+$('#szoba_min').val()+'&szoba_max='+$('#szoba_max').val();
  108. window.location.href = filterCategory;
  109. /*if (keyw.length>0) {
  110. window.location = filterCategory+'filter/?from=/&city='+keyw+'&ertekesites='+$('#ertekesites').val()+'&jelleg='+$('#tipus').val()+'&iranyar_min='+$('#armin').val()+'&iranyar_max='+$('#armax').val()+'&meret_netto_min='+$('#sizemin').val()+'&meret_netto_max='+$('#sizemax').val()+'&szoba_min='+$('#szoba_min').val()+'&szoba_max='+$('#szoba_max').val();
  111. }
  112. else {
  113. return false;
  114. }*/
  115. }
  116. function search_from_main_mobil() {
  117. var keyw = new Array();
  118. $('.sugessionTagsMobile').children('.sugessionTag').each(function() {
  119. keyw.push($(this).attr('data-value'));
  120. });
  121. filterCategory = '/map/search/';
  122. window.location = filterCategory+'filter/?from=/&city='+keyw+'&ertekesites='+$('#ertekesites_mobil').val()+'&jelleg='+$('#tipus_mobil').val()+'&iranyar_min='+$('#armin_mobil').val()+'&iranyar_max='+$('#armax_mobil').val()+'&meret_netto_min='+$('#sizemin_mobil').val()+'&meret_netto_max='+$('#sizemax_mobil').val()+'&szoba_min='+$('#szoba_min_mobil').val()+'&szoba_max='+$('#szoba_max_mobil').val();
  123. }
  124. function save_search() {
  125. $.get('/profile/favorites/addsearch/',function(resp) {
  126. if (resp==='ok') {
  127. $('.success-bar').html('<i class="fas fa-check-circle"></i> A keresést sikeresen mentette...');
  128. $('.success-bar').toggle();
  129. var shtimer = setInterval(function() {
  130. $('.success-bar').toggle();
  131. clearInterval(shtimer);
  132. },3000);
  133. }
  134. else if (resp==='login') {
  135. login_modal();
  136. $('.error-bar').html('<i class="fas fa-exclamation-circle"></i> A keresés mentéséhez be kell lépnie...');
  137. $('.error-bar').toggle();
  138. var shtimer = setInterval(function() {
  139. $('.error-bar').toggle();
  140. clearInterval(shtimer);
  141. },3000);
  142. }
  143. else {
  144. $('.error-bar').html('<i class="fas fa-exclamation-circle"></i> Keresés hozzáadása nem lehetséges...');
  145. $('.error-bar').toggle();
  146. var shtimer = setInterval(function() {
  147. $('.error-bar').toggle();
  148. clearInterval(shtimer);
  149. },3000);
  150. }
  151. });
  152. }
  153. function account_modal() {
  154. $('#accountbox').toggle();
  155. }
  156. function show_authed_modal() {
  157. uglipop({
  158. class: 'register-popup',
  159. source: 'html',
  160. content: '<h3 class="popup-header">Köszönjük regisztrációját<a class="close-modal" href="javascript:;" onclick="close_modal()"><i class="fas fa-times-circle"></i></a></h3>\n\
  161. <div class="popup-content">\n\
  162. <p>Ön sikeresen jóváhagyta regisztrációját. Ezt követően felhasználó nevével és jelszavával léphet be rendszerünkbe.</p>\n\
  163. </div>'
  164. });
  165. }
  166. function register_modal() {
  167. $('#accountbox').hide();
  168. uglipop({
  169. class: 'register-popup',
  170. source: 'html',
  171. content: '<h3 class="popup-header">Fiók létrehozása<a class="close-modal" href="javascript:;" onclick="close_modal()"><i class="fas fa-times-circle"></i></a></h3>\n\
  172. <div class="popup-content">\n\
  173. <div class="error-message">Kérjük ellenőrizze a megadott mezőket: </div>\n\
  174. <div class="error-email">A megadott email cím már hozzá van rendelve egy felhasználónkhoz!</div>\n\
  175. <form id="register_form" action="/register" method="post">\n\
  176. <div class="form-group padded"><input type="text" name="first_name" id="first_name" class="input-text" placeholder="Vezetékneved"></div>\n\
  177. <div class="form-group padded"><input type="text" name="last_name" id="last_name" class="input-text" placeholder="Keresztneved"></div>\n\
  178. <div class="form-group padded"><input onblur="check_email($(this))" type="email" name="email" id="regemail" class="input-text" placeholder="Email címed"></div>\n\
  179. <div class="form-group padded"><input type="password" name="pass1" id="pass1" placeholder="Kiválasztott jelszó" class="input-text"></div>\n\
  180. <div class="form-group padded"><input type="password" name="pass2" id="pass2" placeholder="Jelszó megismétlése" class="input-text"></div>\n\
  181. <div class="form-group min-padded"><input type="checkbox" name="accepted" id="accepted" class="input-checkbox"> <label class="small-label min-label-height" style="font-weight: bold;">Elfogadom az adatkezelési tájékoztatót</label></div>\n\
  182. <div class="form-group min-padded" style="margin-top: -4px;"><input type="checkbox" name="newsletter" id="newsletter" class="input-checkbox" style="margin-top: 7px;"> <label class="small-label min-label-height" style="margin-top: 4px;">Szeretnék hírlevelet kapni</label></div>\n\
  183. <div class="clear"></div>\n\
  184. <div class="form-group-full"><button type="button" name="submit_register" onclick="register()" class="btn-black">Regisztrálok</button></div>\n\
  185. <div class="form-group-full"><a class="btn-link" href="javascript:;" onclick="login_modal()">Rendelkezel már hozzáféréssel? Itt bejelentkezhetsz</a></div>\n\
  186. </form>\n\
  187. </div>'
  188. });
  189. }
  190. function login_modal() {
  191. $('#accountbox').hide();
  192. uglipop({
  193. class: 'login-popup',
  194. source: 'html',
  195. content: '<h3 class="popup-header">Belépés a fiókba<a class="close-modal" href="javascript:;" onclick="close_modal()"><i class="fas fa-times-circle"></i></a></h3>\n\
  196. <div class="popup-content-small">\n\
  197. <div class="error-login">Sikertelen bejelentkezés! A megadott belépési adatok hibásak...</div>\n\
  198. <form id="login_form" action="#" method="post" onsubmit="return login(event)">\n\
  199. <div class="form-group-full"><input type="email" id="email1" name="username" class="input-text" placeholder="Email cím"></div>\n\
  200. <div class="form-group-full"><input type="password" id="pass1" name="pass" class="input-text" placeholder="Jelszó"></div>\n\
  201. <div class="clear"></div>\n\
  202. <div class="form-group-full"><input type="checkbox" name="keepmeloggedin" id="keepmeloggedin" value="y"> Emlékezz rám!</div>\n\
  203. <div class="form-group-full"><button type="submit" name="submit_login" class="btn-black">Belépés</button></div>\n\
  204. <div class="form-group-full"><a class="btn-link" href="javascript:;" onclick="reminder_modal()">Elfelejtett jelszó</a> | <a class="btn-link" href="javascript:;" onclick="register_modal()">Regisztráció</a></div>\n\
  205. </form>\n\
  206. </div>'
  207. });
  208. }
  209. function reminder_modal() {
  210. $('#accountbox').hide();
  211. uglipop({
  212. class: 'login-popup',
  213. source: 'html',
  214. content: '<h3 class="popup-header">Jelszóemlékeztető<a class="close-modal" href="javascript:;" onclick="close_modal()"><i class="fas fa-times-circle"></i></a></h3>\n\
  215. <div class="popup-content-small">\n\
  216. <div class="error-reminder">Sikertelen jelszóemlékzetető küldés. Kérjük ellenőrizd a megadott email címet!</div>\n\
  217. <div class="success-message">Sikeres jelszóemlékeztető küldés!</div>\n\
  218. <form id="reminder_form" action="/reminder" method="post">\n\
  219. <div class="form-group-full">Kérjük add meg a regisztrációnál használt email címedet és mi elküldjük a jelszóemlékeztetőt!</div>\n\
  220. <div class="form-group-full"><input type="email" name="email" id="regemail" class="input-text" placeholder="Email címed"></div>\n\
  221. <div class="clear"></div>\n\
  222. <div class="form-group-full"><button type="button" name="submit_login" onclick="send_reminder()" class="btn-black">Jelszóemlékeztető küldése</button></div>\n\
  223. <div class="form-group-full"><a class="btn-link" href="javascript:;" onclick="login_modal()">Vissza a bejelentkezéshez</a></div>\n\
  224. </form>\n\
  225. </div>'
  226. });
  227. }
  228. function close_modal() {
  229. document.getElementById('uglipop_overlay_wrapper').style.display = 'none';
  230. document.getElementById('uglipop_overlay').style.display = 'none';
  231. document.getElementById('uglipop_content_fixed').style.display = 'none';
  232. }
  233. function show_filter_modal(obj) {
  234. $(obj).show();
  235. }
  236. function hide_filter_modal(obj) {
  237. $(obj).hide();
  238. }
  239. function apply_map_filter(obj) {
  240. $(obj).hide();
  241. }
  242. function initPropMap() {
  243. var lat = $('#propmap').attr('data-lat');
  244. var lon = $('#propmap').attr('data-lon');
  245. var zoom = $('#propmap').attr('data-zoom');
  246. var noise = $('#propmap').attr('data-noise');
  247. var map = new google.maps.Map(document.getElementById('propmap'),{
  248. zoom: 14,
  249. center: new google.maps.LatLng(lat,lon)
  250. });
  251. if (noise!='y') {
  252. var marker = new google.maps.Marker({
  253. position: new google.maps.LatLng(lat,lon),
  254. icon: '/uix/images/marker.png',
  255. map: map
  256. });
  257. }
  258. else {
  259. var myCircle = new google.maps.Circle({
  260. strokeColor: '#2eac59',
  261. strokeOpacity: 0.8,
  262. strokeWeight: 2,
  263. fillColor: '#2eac59',
  264. fillOpacity: 0.35,
  265. map: map,
  266. center: new google.maps.LatLng(lat,lon),
  267. radius: 700
  268. });
  269. }
  270. }
  271. //Sample constant JSON resultset
  272. var data = {
  273. "pois": [
  274. {"name":"Teszt 01", "desc":"(1) Sed sodales quis eros in feugiat. Maecenas eu luctus eros. Pellentesque interdum libero non luctus bibendum. Integer in nunc pharetra, hendrerit urna vel, viverra massa. Fusce quis sapien ex.", "URL":"http://www.index.hu", "lat":"47.539950", "lng":"19.140520"},
  275. {"name":"Teszt 02", "desc":"(2) Sed sodales quis eros in feugiat. Maecenas eu luctus eros. Pellentesque interdum libero non luctus bibendum. Integer in nunc pharetra, hendrerit urna vel, viverra massa. Fusce quis sapien ex.", "URL":"http://www.origo.hu", "lat":"47.539450", "lng":"19.143663"},
  276. {"name":"Teszt 03", "desc":"(3) Sed sodales quis eros in feugiat. Maecenas eu luctus eros. Pellentesque interdum libero non luctus bibendum. Integer in nunc pharetra, hendrerit urna vel, viverra massa. Fusce quis sapien ex.", "URL":"http://www.sg.hu", "lat":"47.538458", "lng":"19.143084"},
  277. {"name":"Teszt 04", "desc":"(4) Sed sodales quis eros in feugiat. Maecenas eu luctus eros. Pellentesque interdum libero non luctus bibendum. Integer in nunc pharetra, hendrerit urna vel, viverra massa. Fusce quis sapien ex.", "URL":"http://www.google.com", "lat":"47.542927", "lng":"19.141732"},
  278. {"name":"Teszt 05", "desc":"(5) Sed sodales quis eros in feugiat. Maecenas eu luctus eros. Pellentesque interdum libero non luctus bibendum. Integer in nunc pharetra, hendrerit urna vel, viverra massa. Fusce quis sapien ex.", "URL":"http://www.amazon.com", "lat":"47.540906", "lng":"19.134211"},
  279. {"name":"Teszt 06", "desc":"(6) Sed sodales quis eros in feugiat. Maecenas eu luctus eros. Pellentesque interdum libero non luctus bibendum. Integer in nunc pharetra, hendrerit urna vel, viverra massa. Fusce quis sapien ex.", "URL":"http://www.prog.hu", "lat":"47.546142", "lng":"19.134973"},
  280. {"name":"Teszt 07", "desc":"(7) Sed sodales quis eros in feugiat. Maecenas eu luctus eros. Pellentesque interdum libero non luctus bibendum. Integer in nunc pharetra, hendrerit urna vel, viverra massa. Fusce quis sapien ex.", "URL":"http://www.youtube.com", "lat":"47.548748", "lng":"19.127635"},
  281. {"name":"Teszt 08", "desc":"(8) Sed sodales quis eros in feugiat. Maecenas eu luctus eros. Pellentesque interdum libero non luctus bibendum. Integer in nunc pharetra, hendrerit urna vel, viverra massa. Fusce quis sapien ex.", "URL":"http://www.ingatlan.com", "lat":"47.553846", "lng":"19.130081"}
  282. ]
  283. };
  284. function numberWithCommas(x) {
  285. return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ".");
  286. }
  287. function setListOrderReloader(order) {
  288. if (order!=='') {
  289. $.get('/property/search/reorder/',{order: order},function(resp) {
  290. window.location.reload();
  291. });
  292. }
  293. else {
  294. return false;
  295. }
  296. }
  297. function setAgentListOrderReloader(order) {
  298. if (order!=='') {
  299. $.get('/rockhome-tanacsadok/reorder/change/',{order: order},function(resp) {
  300. window.location.reload();
  301. });
  302. }
  303. else {
  304. return false;
  305. }
  306. }
  307. function setOfficeListOrderReloader(order) {
  308. if (order!=='') {
  309. $.get('/rockhome-irodak/reorder/change/',{order: order},function(resp) {
  310. window.location.reload();
  311. });
  312. }
  313. else {
  314. return false;
  315. }
  316. }
  317. function generateSlug(text) {
  318. if (text!='') {
  319. text = text.toLowerCase();
  320. text = text.replace(/ /g,'-');
  321. text = text.replace(/á/g,'a');
  322. text = text.replace(/é/g,'e');
  323. text = text.replace(/í/g,'i');
  324. text = text.replace(/ó/g,'o');
  325. text = text.replace(/ö/g,'o');
  326. text = text.replace(/ő/g,'o');
  327. text = text.replace(/ú/g,'u');
  328. text = text.replace(/ü/g,'u');
  329. text = text.replace(/ű/g,'u');
  330. text = text.replace('budapest-01','budapest-i-kerulet');
  331. text = text.replace('budapest-02','budapest-ii-kerulet');
  332. text = text.replace('budapest-03','budapest-iii-kerulet');
  333. text = text.replace('budapest-04','budapest-iv-kerulet');
  334. text = text.replace('budapest-05','budapest-v-kerulet');
  335. text = text.replace('budapest-06','budapest-vi-kerulet');
  336. text = text.replace('budapest-07','budapest-vii-kerulet');
  337. text = text.replace('budapest-08','budapest-viii-kerulet');
  338. text = text.replace('budapest-09','budapest-ix-kerulet');
  339. text = text.replace('budapest-10','budapest-x-kerulet');
  340. text = text.replace('budapest-11','budapest-xi-kerulet');
  341. text = text.replace('budapest-12','budapest-xii-kerulet');
  342. text = text.replace('budapest-13','budapest-xiii-kerulet');
  343. text = text.replace('budapest-14','budapest-xiv-kerulet');
  344. text = text.replace('budapest-15','budapest-xv-kerulet');
  345. text = text.replace('budapest-16','budapest-xvi-kerulet');
  346. text = text.replace('budapest-17','budapest-xvii-kerulet');
  347. text = text.replace('budapest-18','budapest-xviii-kerulet');
  348. text = text.replace('budapest-19','budapest-xix-kerulet');
  349. text = text.replace('budapest-20','budapest-xx-kerulet');
  350. text = text.replace('budapest-21','budapest-xxi-kerulet');
  351. text = text.replace('budapest-22','budapest-xxii-kerulet');
  352. text = text.replace('budapest-23','budapest-xxiii-kerulet');
  353. return text;
  354. }
  355. else {
  356. return false;
  357. }
  358. }
  359. function setListOrder(order) {
  360. if (order!=='') {
  361. var itemHTML = '';
  362. var szobak = 0;
  363. $.getJSON('/map/search/reorder/',{order: order},function(resp) {
  364. if (resp.code=='01') {
  365. pois = resp.pois;
  366. }
  367. $.each(pois,function(key,poi) {
  368. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  369. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  370. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  371. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  372. itemHTML += '<div class="result-details">';
  373. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  374. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  375. if (poi.meret_telek!=='0') {
  376. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  377. }
  378. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  379. itemHTML += '<span class="address">'+poi.name+'</span>';
  380. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  381. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  382. itemHTML += '</div>';
  383. itemHTML += '</div>';
  384. });
  385. itemHTML += '<div class="clear"></div>';
  386. $.get('/map/lazy/check/',function(resp) {
  387. itemHTML += resp;
  388. $('.result-list-thin').html(itemHTML);
  389. });
  390. });
  391. }
  392. else {
  393. return false;
  394. }
  395. }
  396. function addClearButton(controlDiv,map) {
  397. var controlUI = document.getElementById('trashButton');
  398. controlDiv.appendChild(controlUI);
  399. controlUI.addEventListener('click', function() {
  400. $.post('/map/clearpolygon/',function(resp) {
  401. window.location.reload();
  402. });
  403. });
  404. }
  405. function addDrawButton(controlDiv,map) {
  406. var controlUI = document.getElementById('polyButton');
  407. controlDiv.appendChild(controlUI);
  408. controlUI.addEventListener('click', function() {
  409. for (var i=0; i < allShapes.length; i++) {
  410. allShapes[i].setMap(null);
  411. }
  412. allShapes = [];
  413. if (activePoly!==null) {
  414. activePoly.setMap(null);
  415. while (markers.length) {
  416. markers.pop().setMap(null);
  417. }
  418. }
  419. drawingManager.setDrawingMode(google.maps.drawing.OverlayType.POLYGON);
  420. });
  421. }
  422. function addCircleButton(controlDiv,map) {
  423. var controlUI = document.getElementById('circleButton');
  424. controlDiv.appendChild(controlUI);
  425. controlUI.addEventListener('click', function() {
  426. for (var i=0; i < allShapes.length; i++) {
  427. allShapes[i].setMap(null);
  428. }
  429. allShapes = [];
  430. activePoly = null;
  431. while (markers.length) {
  432. markers.pop().setMap(null);
  433. }
  434. drawingManager.setDrawingMode(google.maps.drawing.OverlayType.CIRCLE);
  435. });
  436. }
  437. function addMoveButton(controlDiv,map) {
  438. var controlUI = document.getElementById('moveButton');
  439. controlDiv.appendChild(controlUI);
  440. controlUI.addEventListener('click', function() {
  441. drawingManager.setDrawingMode(null);
  442. });
  443. }
  444. function getDefaultPropertyList(origin) {
  445. var itemHTML = '';
  446. var szobak = 0;
  447. $.getJSON('/map/search/all/',{},function(resp) {
  448. if (resp.code=='01') {
  449. pois = resp.pois;
  450. }
  451. $.each(pois,function(key,poi) {
  452. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  453. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  454. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  455. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  456. itemHTML += '<div class="result-details">';
  457. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  458. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  459. if (poi.meret_telek!=='0') {
  460. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  461. }
  462. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  463. itemHTML += '<span class="address">'+poi.name+'</span>';
  464. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  465. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  466. itemHTML += '</div>';
  467. itemHTML += '</div>';
  468. });
  469. itemHTML += '<div class="clear"></div>';
  470. $('#properties_count').html(resp.count.toString());
  471. $.get('/map/lazy/check/',function(resp) {
  472. itemHTML += resp;
  473. $('.result-list-thin').html(itemHTML);
  474. });
  475. });
  476. }
  477. function lazyShowMore(obj) {
  478. if (disableLazyLoad==false) {
  479. isScrollEnabled = false;
  480. $(obj).remove();
  481. var itemHTML = $('.result-list-thin').html();
  482. var szobak = 0;
  483. var ujak = null;
  484. $.getJSON('/map/lazy/load/',function(resp) {
  485. if (resp.code=='01') {
  486. ujak = resp.pois;
  487. }
  488. $.each(ujak,function(key,poi) {
  489. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  490. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  491. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  492. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  493. itemHTML += '<div class="result-details">';
  494. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  495. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  496. if (poi.meret_telek!=='0') {
  497. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  498. }
  499. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  500. itemHTML += '<span class="address">'+poi.name+'</span>';
  501. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  502. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  503. itemHTML += '</div>';
  504. itemHTML += '</div>';
  505. });
  506. itemHTML += '<div class="clear"></div>';
  507. $.get('/map/lazy/check/',function(resp) {
  508. itemHTML += resp;
  509. isScrollEnabled = true;
  510. $('.result-list-thin').html(itemHTML);
  511. if ($(window).width()>500) {
  512. $('#content').css('height',$('.result-list-thin').height()+360);
  513. $('#map').css('height',$('.result-list-thin').height()+160);
  514. }
  515. else {
  516. $('#content').css('height',$('.result-list-thin').height()+145);
  517. $('#map').css('height',$('.result-list-thin').height()+160);
  518. }
  519. });
  520. });
  521. }
  522. }
  523. function lazyShowMoreGrid() {
  524. var acturl = window.location.href;
  525. if (acturl.indexOf("://rockhome.hu/rockhome-irodak/")==-1) {
  526. isScrollEnabled = false;
  527. if (screen.width>1000) {
  528. $.get('/property/lazyLoad/',function(resp) {
  529. $('.showmore').remove();
  530. $('.result-list').append(resp);
  531. isScrollEnabled = true;
  532. });
  533. }
  534. else {
  535. $.get('/property/lazyLoad/justmobile',function(resp) {
  536. $('.showmore').remove();
  537. $('.result-list-thin').append(resp);
  538. isScrollEnabled = true;
  539. });
  540. }
  541. }
  542. }
  543. function showGridView() {
  544. window.location='/property/search';
  545. }
  546. function showMapView() {
  547. window.location='/map';
  548. }
  549. function sleep(milliseconds) {
  550. var start = new Date().getTime();
  551. for (var i = 0; i < 1e7; i++) {
  552. if ((new Date().getTime() - start) > milliseconds){
  553. break;
  554. }
  555. }
  556. }
  557. //Google maps initialization
  558. function initMapStored() {
  559. //getDefaultPropertyList('stored');
  560. var geocoder = new google.maps.Geocoder();
  561. //Init map div
  562. var map = new google.maps.Map(document.getElementById('map'),{
  563. zoom: 8,
  564. disableDefaultUI: true,
  565. zoomControl: true,
  566. zoomControlOptions: {
  567. position: google.maps.ControlPosition.LEFT_TOP
  568. },
  569. center: {lat: 46.897913, lng: 20.540236}
  570. });
  571. /*geocoder.geocode({'address': "Paris"}, function(results, status) {
  572. if (status === 'OK') {
  573. map.setCenter(results[0].geometry.location);
  574. }
  575. });*/
  576. var centerControlDiv = document.createElement('div');
  577. var centerControl3 = new addMoveButton(centerControlDiv, map);
  578. if (storedLats==='' && storedLngs==='') {
  579. var centerControl2 = new addDrawButton(centerControlDiv, map);
  580. }
  581. var centerControl1 = new addClearButton(centerControlDiv, map);
  582. centerControlDiv.index = 1;
  583. map.controls[google.maps.ControlPosition.TOP_CENTER].push(centerControlDiv);
  584. var counter = 0;
  585. if (storedLats!=='' && storedLngs!=='') {
  586. var coords = [];
  587. var pointObject = {};
  588. var myLats = JSON.parse(storedLats);
  589. var myLngs = JSON.parse(storedLngs);
  590. for (var i=0;i<myLats.length;i++) {
  591. pointObject = {lat: parseFloat(myLats[i]), lng: parseFloat(myLngs[i])};
  592. coords.push(pointObject);
  593. }
  594. var poly = new google.maps.Polygon({
  595. paths: coords,
  596. fillColor: '#ff0000',
  597. fillOpacity: 0.5,
  598. strokeWeight: 2,
  599. clickable: false,
  600. editable: false,
  601. zIndex: 1
  602. });
  603. }
  604. activePoly = poly;
  605. //Get polygon path
  606. var points = poly.getPath();
  607. var lats = [];
  608. var lngs = [];
  609. var cord = null;
  610. var isInside = false;
  611. //Get polygon points
  612. points.b.forEach(function(row,i) {
  613. lats.push(row.lat());
  614. lngs.push(row.lng());
  615. });
  616. //Set max and min points to build rectangle
  617. var LATmin = Math.min.apply(Math,lats);
  618. var LATmax = Math.max.apply(Math,lats);
  619. var LNGmin = Math.min.apply(Math,lngs);
  620. var LNGmax = Math.max.apply(Math,lngs);
  621. var itemHTML = '';
  622. var popHTML = '';
  623. var szobak = 0;
  624. //sleep(2000);
  625. $.getJSON('/map/search/polygon/',{
  626. lat_min: LATmin,
  627. lat_max: LATmax,
  628. lon_min: LNGmin,
  629. lon_max: LNGmax
  630. },function(resp) {
  631. if (resp.code=='01') {
  632. pois = resp.pois;
  633. poisall = resp.poisall;
  634. counter = 0;
  635. }
  636. //Roll all JSON data to check POIs
  637. $.each(poisall,function(key,poi) {
  638. //Create google maps coordinate
  639. cord = new google.maps.LatLng(poi.lat,poi.lng);
  640. //Check inside the polygon
  641. //isInside = google.maps.geometry.poly.containsLocation(cord,poly);
  642. counter++;
  643. //Add info popup
  644. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  645. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  646. popHTML = '<div class="result-item horizontal-item mobilebox" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';" style="margin-bottom: 0px; margin-left: 0px;">';
  647. popHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\');"></figure>';
  648. popHTML += '<div class="result-details">';
  649. popHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  650. popHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  651. if (poi.meret_telek!=='0') {
  652. popHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  653. }
  654. popHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  655. popHTML += '<span class="address">'+poi.name+'</span>';
  656. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  657. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  658. popHTML += '</div>';
  659. popHTML += '</div>';
  660. var infowindow = new google.maps.InfoWindow({
  661. content: popHTML
  662. });
  663. //Add marker
  664. var marker = new google.maps.Marker({
  665. position: cord,
  666. map: map,
  667. title: poi.name,
  668. icon: '/uix/images/marker.png'
  669. });
  670. //Bind click event to marker to open modal
  671. marker.addListener('click',function() {
  672. infowindow.open(map,marker);
  673. });
  674. markers.push(marker);
  675. });
  676. $('#properties_count').html(counter);
  677. if (counter>0) {
  678. $('.error-message').hide();
  679. }
  680. else {
  681. $('.error-message').show();
  682. }
  683. $.each(pois,function(key,poi) {
  684. //Create google maps coordinate
  685. cord = new google.maps.LatLng(poi.lat,poi.lng);
  686. //Check inside the polygon
  687. //isInside = google.maps.geometry.poly.containsLocation(cord,poly);
  688. //if (isInside) {
  689. //Add info popup
  690. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  691. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  692. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  693. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  694. itemHTML += '<div class="result-details">';
  695. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  696. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  697. if (poi.meret_telek!=='0') {
  698. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  699. }
  700. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  701. itemHTML += '<span class="address">'+poi.name+'</span>';
  702. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  703. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  704. itemHTML += '</div>';
  705. itemHTML += '</div>';
  706. //}
  707. });
  708. itemHTML += '<div class="clear"></div>';
  709. $.get('/map/lazy/check/',function(resp) {
  710. itemHTML += resp;
  711. $('.result-list-thin').html(itemHTML);
  712. if ($(window).width()>500) {
  713. $('#content').css('height',$('.result-list-thin').height()+360);
  714. $('#map').css('height',$('.result-list-thin').height()+160);
  715. }
  716. else {
  717. $('#content').css('height',$('.result-list-thin').height()+145);
  718. $('#map').css('height',$('.result-list-thin').height()+160);
  719. }
  720. });
  721. });
  722. //Draw initialized map
  723. poly.setMap(map);
  724. }
  725. function initOfficeMap() {
  726. var map = new google.maps.Map(document.getElementById('map'),{
  727. zoom: 7,
  728. disableDefaultUI: true,
  729. zoomControl: true,
  730. zoomControlOptions: {
  731. position: google.maps.ControlPosition.LEFT_TOP
  732. },
  733. center: {lat: 47.200013, lng: 19.740236},
  734. styles: [
  735. {
  736. "featureType": "administrative",
  737. "elementType": "labels.text.fill",
  738. "stylers": [
  739. {
  740. "color": "#444444"
  741. }
  742. ]
  743. },
  744. {
  745. "featureType": "administrative.country",
  746. "elementType": "geometry",
  747. "stylers": [
  748. {
  749. "visibility": "on"
  750. }
  751. ]
  752. },
  753. {
  754. "featureType": "administrative.province",
  755. "elementType": "geometry",
  756. "stylers": [
  757. {
  758. "visibility": "off"
  759. }
  760. ]
  761. },
  762. {
  763. "featureType": "administrative.province",
  764. "elementType": "labels.text",
  765. "stylers": [
  766. {
  767. "visibility": "off"
  768. }
  769. ]
  770. },
  771. {
  772. "featureType": "administrative.locality",
  773. "elementType": "geometry",
  774. "stylers": [
  775. {
  776. "visibility": "off"
  777. }
  778. ]
  779. },
  780. {
  781. "featureType": "administrative.locality",
  782. "elementType": "geometry.fill",
  783. "stylers": [
  784. {
  785. "visibility": "off"
  786. }
  787. ]
  788. },
  789. {
  790. "featureType": "administrative.locality",
  791. "elementType": "geometry.stroke",
  792. "stylers": [
  793. {
  794. "visibility": "off"
  795. }
  796. ]
  797. },
  798. {
  799. "featureType": "administrative.locality",
  800. "elementType": "labels.text",
  801. "stylers": [
  802. {
  803. "visibility": "on"
  804. }
  805. ]
  806. },
  807. {
  808. "featureType": "landscape",
  809. "elementType": "all",
  810. "stylers": [
  811. {
  812. "color": "#f2f2f2"
  813. }
  814. ]
  815. },
  816. {
  817. "featureType": "poi",
  818. "elementType": "all",
  819. "stylers": [
  820. {
  821. "visibility": "off"
  822. }
  823. ]
  824. },
  825. {
  826. "featureType": "road",
  827. "elementType": "all",
  828. "stylers": [
  829. {
  830. "saturation": -100
  831. },
  832. {
  833. "lightness": 45
  834. }
  835. ]
  836. },
  837. {
  838. "featureType": "road.highway",
  839. "elementType": "all",
  840. "stylers": [
  841. {
  842. "visibility": "simplified"
  843. }
  844. ]
  845. },
  846. {
  847. "featureType": "road.arterial",
  848. "elementType": "labels.icon",
  849. "stylers": [
  850. {
  851. "visibility": "off"
  852. }
  853. ]
  854. },
  855. {
  856. "featureType": "transit",
  857. "elementType": "all",
  858. "stylers": [
  859. {
  860. "visibility": "off"
  861. }
  862. ]
  863. },
  864. {
  865. "featureType": "water",
  866. "elementType": "all",
  867. "stylers": [
  868. {
  869. "color": "#d1d7d9"
  870. },
  871. {
  872. "visibility": "on"
  873. }
  874. ]
  875. }
  876. ]
  877. });
  878. $.getJSON('/rockhome-irodak/getrawlist',function(resp) {
  879. var items = resp.list;
  880. items.forEach(function(row) {
  881. var popHTML = '';
  882. popHTML+= '<div class="agent-item" style="background-color: transparent !important; height: 125px !important;" onclick="window.location=\'/rockhome-irodak/'+row['id']+'-iroda\'">';
  883. popHTML+= '<figure style="background-image: url(https://prod.rockhome.hu/pictures/iroda/'+row['azonosito']+'.jpg)"></figure>';
  884. popHTML+= '<div class="namecard">';
  885. popHTML+= '<h4>'+row['nev']+'</h4>';
  886. popHTML+= '<small>'+row['iranyitoszam']+'. '+row['varos']+', '+row['utca_hazszam']+'</small>';
  887. popHTML+= '<span><a href="call:'+row['telefon']+'">'+row['telefon']+'</a></span>';
  888. popHTML+= '<span><a href="mailto:'+row['email']+'">'+row['email']+'</a></span>';
  889. popHTML+= '</div>';
  890. popHTML+= '</div>';
  891. var infowindow = new google.maps.InfoWindow({
  892. content: popHTML
  893. });
  894. cord = new google.maps.LatLng(row['latitude'],row['longitude']);
  895. var marker = new google.maps.Marker({
  896. position: cord,
  897. map: map,
  898. title: row['nev'],
  899. icon: '/uix/images/marker.png'
  900. });
  901. marker.addListener('click',function() {
  902. infowindow.open(map,marker);
  903. });
  904. markers.push(marker);
  905. });
  906. });
  907. }
  908. //Google maps initialization
  909. function initMap(viewchage) {
  910. getDefaultPropertyList('first');
  911. var geocoder = new google.maps.Geocoder();
  912. //Init map div
  913. var map = new google.maps.Map(document.getElementById('map'),{
  914. zoom: 8,
  915. disableDefaultUI: true,
  916. zoomControl: true,
  917. zoomControlOptions: {
  918. position: google.maps.ControlPosition.LEFT_TOP
  919. },
  920. center: {lat: 46.897913, lng: 20.540236}
  921. });
  922. /*geocoder.geocode({'address': "Paris"}, function(results, status) {
  923. if (status === 'OK') {
  924. map.setCenter(results[0].geometry.location);
  925. }
  926. });*/
  927. var centerControlDiv = document.createElement('div');
  928. var centerControl3 = new addMoveButton(centerControlDiv, map);
  929. var centerControl2 = new addDrawButton(centerControlDiv, map);
  930. var centerControl4 = new addCircleButton(centerControlDiv, map);
  931. var centerControl1 = new addClearButton(centerControlDiv, map);
  932. centerControlDiv.index = 1;
  933. map.controls[google.maps.ControlPosition.TOP_CENTER].push(centerControlDiv);
  934. var counter = 0;
  935. //Init drawing tools and polygon properties
  936. drawingManager = new google.maps.drawing.DrawingManager({
  937. drawingMode: null,
  938. drawingControl: false,
  939. drawingControlOptions: {
  940. position: google.maps.ControlPosition.TOP_CENTER,
  941. drawingModes: ['polygon','circle']
  942. },
  943. polygonOptions: {
  944. fillColor: '#ff0000',
  945. fillOpacity: 0.5,
  946. strokeWeight: 2,
  947. clickable: false,
  948. editable: true,
  949. zIndex: 1
  950. }
  951. });
  952. //Add default result list
  953. $.getJSON('/map/search/reload/',function(resp) {
  954. if (resp.pois!=null) {
  955. pois = resp.pois;
  956. poisall = resp.poisall;
  957. $('#properties_count').html(poisall.length);
  958. if (pois.length>0) {
  959. $('.error-message').hide();
  960. }
  961. else {
  962. $('.error-message').show();
  963. }
  964. counter = 0;
  965. }
  966. //Roll all JSON data to check POIs
  967. $.each(poisall,function(key,poi) {
  968. //Create google maps coordinate
  969. cord = new google.maps.LatLng(poi.lat,poi.lng);
  970. //Check inside the polygon
  971. //isInside = google.maps.geometry.poly.containsLocation(cord,activePoly);
  972. //if (isInside) {
  973. counter++;
  974. //Add info popup
  975. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  976. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  977. popHTML = '<div class="result-item horizontal-item mobilebox" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';" style="margin-bottom: 0px; margin-left: 0px;">';
  978. popHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\');"></figure>';
  979. popHTML += '<div class="result-details">';
  980. popHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  981. popHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  982. if (poi.meret_telek!=='0') {
  983. popHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  984. }
  985. popHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  986. popHTML += '<span class="address">'+poi.name+'</span>';
  987. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  988. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  989. popHTML += '</div>';
  990. popHTML += '</div>';
  991. var infowindow = new google.maps.InfoWindow({
  992. content: popHTML
  993. });
  994. //Add marker
  995. var marker = new google.maps.Marker({
  996. position: cord,
  997. map: map,
  998. title: poi.name,
  999. icon: '/uix/images/marker.png'
  1000. });
  1001. //Bind click event to marker to open modal
  1002. marker.addListener('click',function() {
  1003. infowindow.open(map,marker);
  1004. });
  1005. markers.push(marker);
  1006. //}
  1007. });
  1008. $('#properties_count').html(counter);
  1009. if (counter==0) {
  1010. $('#properties_count').parent('h3').html('<div class="error-message" style="display: block; margin-bottom: 30px;"><h2>Nincs találat : (</h2> Jelenleg nincs a megadott keresési feltételeknek megfelelő ingatlan az adatbázisunkban. Kérjük adjon meg más keresési paramétereket!</div>');
  1011. }
  1012. if (counter>0) {
  1013. if (counter>0) {
  1014. $('.error-message').hide();
  1015. }
  1016. else {
  1017. $('.error-message').show();
  1018. }
  1019. $.each(pois,function(key,poi) {
  1020. //Create google maps coordinate
  1021. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1022. //Check inside the polygon
  1023. //isInside = google.maps.geometry.poly.containsLocation(cord,activePoly);
  1024. //if (isInside) {
  1025. //Add info popup
  1026. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1027. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1028. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  1029. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  1030. itemHTML += '<div class="result-details">';
  1031. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1032. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1033. if (poi.meret_telek!=='0') {
  1034. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1035. }
  1036. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1037. itemHTML += '<span class="address">'+poi.name+'</span>';
  1038. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1039. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1040. itemHTML += '</div>';
  1041. itemHTML += '</div>';
  1042. //}
  1043. });
  1044. }
  1045. itemHTML += '<div class="clear"></div>';
  1046. $.get('/map/lazy/check/',function(resp) {
  1047. if (counter>5) {
  1048. itemHTML += resp;
  1049. }
  1050. $('.result-list-thin').html(itemHTML);
  1051. if ($(window).width()>500) {
  1052. $('#content').css('height',$('.result-list-thin').height()+360);
  1053. $('#map').css('height',$('.result-list-thin').height()+160);
  1054. }
  1055. else {
  1056. $('#content').css('height',$('.result-list-thin').height()+145);
  1057. $('#map').css('height',$('.result-list-thin').height()+160);
  1058. }
  1059. });
  1060. });
  1061. //End on default result list
  1062. //Add event listener for drawing complete signal
  1063. google.maps.event.addListener(drawingManager,'polygoncomplete',function(poly) {
  1064. activePoly = poly;
  1065. allShapes.push(poly);
  1066. for (var i = 0; i < markers.length; i++) {
  1067. markers[i].setMap(null);
  1068. }
  1069. markers = [];
  1070. google.maps.event.addListener(activePoly.getPath(),'insert_at',function() {
  1071. //Get polygon path
  1072. var points = activePoly.getPath();
  1073. var lats = [];
  1074. var lngs = [];
  1075. var cord = null;
  1076. var isInside = false;
  1077. //Get polygon points
  1078. points.b.forEach(function(row,i) {
  1079. lats.push(row.lat());
  1080. lngs.push(row.lng());
  1081. });
  1082. //Set max and min points to build rectangle
  1083. var LATmin = Math.min.apply(Math,lats);
  1084. var LATmax = Math.max.apply(Math,lats);
  1085. var LNGmin = Math.min.apply(Math,lngs);
  1086. var LNGmax = Math.max.apply(Math,lngs);
  1087. var popHTML = '';
  1088. var szobak = 0;
  1089. $.getJSON('/map/search/polygon/',{lat_min: LATmin, lat_max: LATmax, lon_min: LNGmin, lon_max: LNGmax},function(resp) {
  1090. if (resp.code=='01') {
  1091. pois = resp.pois;
  1092. poisall = resp.poisall;
  1093. $('#properties_count').html(poisall.length);
  1094. counter = 0;
  1095. }
  1096. //Roll all JSON data to check POIs
  1097. $.each(poisall,function(key,poi) {
  1098. //Create google maps coordinate
  1099. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1100. //Check inside the polygon
  1101. isInside = google.maps.geometry.poly.containsLocation(cord,activePoly);
  1102. if (isInside) {
  1103. counter++;
  1104. //Add info popup
  1105. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1106. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1107. popHTML = '<div class="result-item horizontal-item mobilebox" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';" style="margin-bottom: 0px; margin-left: 0px;">';
  1108. popHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\');"></figure>';
  1109. popHTML += '<div class="result-details">';
  1110. popHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1111. popHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1112. if (poi.meret_telek!=='0') {
  1113. popHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1114. }
  1115. popHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1116. popHTML += '<span class="address">'+poi.name+'</span>';
  1117. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1118. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1119. popHTML += '</div>';
  1120. popHTML += '</div>';
  1121. var infowindow = new google.maps.InfoWindow({
  1122. content: popHTML
  1123. });
  1124. //Add marker
  1125. var marker = new google.maps.Marker({
  1126. position: cord,
  1127. map: map,
  1128. title: poi.name,
  1129. icon: '/uix/images/marker.png'
  1130. });
  1131. //Bind click event to marker to open modal
  1132. marker.addListener('click',function() {
  1133. infowindow.open(map,marker);
  1134. });
  1135. markers.push(marker);
  1136. }
  1137. });
  1138. $('#properties_count').html(counter);
  1139. if (counter>0) {
  1140. $('.error-message').hide();
  1141. }
  1142. else {
  1143. $('.error-message').show();
  1144. }
  1145. $.each(pois,function(key,poi) {
  1146. //Create google maps coordinate
  1147. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1148. //Check inside the polygon
  1149. isInside = google.maps.geometry.poly.containsLocation(cord,activePoly);
  1150. if (isInside) {
  1151. //Add info popup
  1152. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1153. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1154. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  1155. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  1156. itemHTML += '<div class="result-details">';
  1157. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1158. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1159. if (poi.meret_telek!=='0') {
  1160. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1161. }
  1162. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1163. itemHTML += '<span class="address">'+poi.name+'</span>';
  1164. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1165. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1166. itemHTML += '</div>';
  1167. itemHTML += '</div>';
  1168. }
  1169. });
  1170. itemHTML += '<div class="clear"></div>';
  1171. $.get('/map/lazy/check/',function(resp) {
  1172. itemHTML += resp;
  1173. $('.result-list-thin').html(itemHTML);
  1174. if ($(window).width()>500) {
  1175. $('#content').css('height',$('.result-list-thin').height()+360);
  1176. $('#map').css('height',$('.result-list-thin').height()+160);
  1177. }
  1178. else {
  1179. $('#content').css('height',$('.result-list-thin').height()+145);
  1180. $('#map').css('height',$('.result-list-thin').height()+160);
  1181. }
  1182. });
  1183. });
  1184. });
  1185. drawingManager.setDrawingMode(null);
  1186. drawingManager.setOptions({
  1187. drawingControl: false
  1188. });
  1189. //Get polygon path
  1190. var points = poly.getPath();
  1191. var lats = [];
  1192. var lngs = [];
  1193. var cord = null;
  1194. var isInside = false;
  1195. //Get polygon points
  1196. //console.log(points.j);
  1197. points.j.forEach(function(row,i) {
  1198. lats.push(row.lat());
  1199. lngs.push(row.lng());
  1200. });
  1201. $.post('/map/storepolygon/',{lats: lats, lngs: lngs},function() {
  1202. console.log('Polygon stored');
  1203. storedLats = lats;
  1204. storedLngs = lngs;
  1205. });
  1206. //Set max and min points to build rectangle
  1207. var LATmin = Math.min.apply(Math,lats);
  1208. var LATmax = Math.max.apply(Math,lats);
  1209. var LNGmin = Math.min.apply(Math,lngs);
  1210. var LNGmax = Math.max.apply(Math,lngs);
  1211. var itemHTML = '';
  1212. var popHTML = '';
  1213. var szobak = 0;
  1214. $.getJSON('/map/search/polygon/',{lat_min: LATmin, lat_max: LATmax, lon_min: LNGmin, lon_max: LNGmax},function(resp) {
  1215. if (resp.code=='01') {
  1216. pois = resp.pois;
  1217. poisall = resp.poisall;
  1218. counter = 0;
  1219. }
  1220. //Roll all JSON data to check POIs
  1221. $.each(poisall,function(key,poi) {
  1222. //Create google maps coordinate
  1223. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1224. //Check inside the polygon
  1225. isInside = google.maps.geometry.poly.containsLocation(cord,poly);
  1226. if (isInside) {
  1227. counter++;
  1228. //Add info popup
  1229. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1230. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1231. popHTML = '<div class="result-item horizontal-item mobilebox" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';" style="margin-bottom: 0px; margin-left: 0px;">';
  1232. popHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\');"></figure>';
  1233. popHTML += '<div class="result-details">';
  1234. popHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1235. popHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1236. if (poi.meret_telek!=='0') {
  1237. popHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1238. }
  1239. popHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1240. popHTML += '<span class="address">'+poi.name+'</span>';
  1241. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1242. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1243. popHTML += '</div>';
  1244. popHTML += '</div>';
  1245. var infowindow = new google.maps.InfoWindow({
  1246. content: popHTML
  1247. });
  1248. //Add marker
  1249. var marker = new google.maps.Marker({
  1250. position: cord,
  1251. map: map,
  1252. title: poi.name,
  1253. icon: '/uix/images/marker.png'
  1254. });
  1255. //Bind click event to marker to open modal
  1256. marker.addListener('click',function() {
  1257. infowindow.open(map,marker);
  1258. });
  1259. markers.push(marker);
  1260. }
  1261. });
  1262. $('#properties_count').html(counter);
  1263. if (counter>0) {
  1264. $('.error-message').hide();
  1265. }
  1266. else {
  1267. $('.error-message').show();
  1268. }
  1269. $.each(pois,function(key,poi) {
  1270. //Create google maps coordinate
  1271. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1272. //Check inside the polygon
  1273. isInside = google.maps.geometry.poly.containsLocation(cord,poly);
  1274. if (isInside) {
  1275. //Add info popup
  1276. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1277. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1278. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  1279. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  1280. itemHTML += '<div class="result-details">';
  1281. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1282. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1283. if (poi.meret_telek!=='0') {
  1284. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1285. }
  1286. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1287. itemHTML += '<span class="address">'+poi.name+'</span>';
  1288. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1289. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1290. itemHTML += '</div>';
  1291. itemHTML += '</div>';
  1292. }
  1293. });
  1294. itemHTML += '<div class="clear"></div>';
  1295. $.get('/map/lazy/check/',function(resp) {
  1296. itemHTML += resp;
  1297. $('.result-list-thin').html(itemHTML);
  1298. if ($(window).width()>500) {
  1299. $('#content').css('height',$('.result-list-thin').height()+360);
  1300. $('#map').css('height',$('.result-list-thin').height()+160);
  1301. }
  1302. else {
  1303. $('#content').css('height',$('.result-list-thin').height()+145);
  1304. $('#map').css('height',$('.result-list-thin').height()+160);
  1305. }
  1306. });
  1307. });
  1308. });
  1309. //Add event listener for circle complete signal
  1310. google.maps.event.addListener(drawingManager,'circlecomplete',function(circle) {
  1311. disableLazyLoad = true;
  1312. activeCircle = circle;
  1313. allShapes.push(circle);
  1314. //console.log(allShapes);
  1315. for (var i = 0; i < markers.length; i++) {
  1316. markers[i].setMap(null);
  1317. }
  1318. markers = [];
  1319. drawingManager.setDrawingMode(null);
  1320. drawingManager.setOptions({
  1321. drawingControl: false
  1322. });
  1323. //Get radius path
  1324. var cord = null;
  1325. var isInside = false;
  1326. var itemHTML = '';
  1327. var popHTML = '';
  1328. var szobak = 0;
  1329. $.getJSON('/map/search/circle/',function(resp) {
  1330. if (resp.code=='01') {
  1331. pois = resp.pois;
  1332. poisall = resp.poisall;
  1333. counter = 0;
  1334. }
  1335. //Roll all JSON data to check POIs
  1336. $.each(pois,function(key,poi) {
  1337. isInside = false;
  1338. //Create google maps coordinate
  1339. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1340. //Check inside the circle
  1341. if (google.maps.geometry.spherical.computeDistanceBetween(cord,activeCircle.getCenter()) <= activeCircle.getRadius()) {
  1342. isInside = true;
  1343. } else {
  1344. isInside = false;
  1345. }
  1346. if (isInside==true) {
  1347. counter++;
  1348. //console.log('OK for #'+counter);
  1349. //Add info popup
  1350. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1351. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1352. popHTML = '<div class="result-item horizontal-item mobilebox" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';" style="margin-bottom: 0px; margin-left: 0px;">';
  1353. popHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\');"></figure>';
  1354. popHTML += '<div class="result-details">';
  1355. popHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1356. popHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1357. if (poi.meret_telek!=='0') {
  1358. popHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1359. }
  1360. popHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1361. popHTML += '<span class="address">'+poi.name+'</span>';
  1362. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1363. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1364. popHTML += '</div>';
  1365. popHTML += '</div>';
  1366. //Add marker
  1367. var marker = new google.maps.Marker({
  1368. position: cord,
  1369. map: map,
  1370. title: poi.name,
  1371. icon: '/uix/images/marker.png'
  1372. });
  1373. var infowindow = new google.maps.InfoWindow({
  1374. content: popHTML
  1375. });
  1376. //Bind click event to marker to open modal
  1377. marker.addListener('click',function() {
  1378. infowindow.open(map,marker);
  1379. });
  1380. markers.push(marker);
  1381. }
  1382. else {
  1383. //console.log('BAD for #'+counter);
  1384. }
  1385. });
  1386. $('#properties_count').html(counter);
  1387. if (counter>0) {
  1388. $('.error-message').hide();
  1389. }
  1390. else {
  1391. $('.error-message').show();
  1392. }
  1393. $.each(pois,function(key,poi) {
  1394. //Create google maps coordinate
  1395. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1396. //Check inside the circle
  1397. if (google.maps.geometry.spherical.computeDistanceBetween(cord,activeCircle.getCenter()) <= activeCircle.getRadius()) {
  1398. isInside = true;
  1399. } else {
  1400. isInside = false;
  1401. }
  1402. if (isInside) {
  1403. //Add info popup
  1404. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1405. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1406. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  1407. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  1408. itemHTML += '<div class="result-details">';
  1409. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1410. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1411. if (poi.meret_telek!=='0') {
  1412. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1413. }
  1414. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1415. itemHTML += '<span class="address">'+poi.name+'</span>';
  1416. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1417. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1418. itemHTML += '</div>';
  1419. itemHTML += '</div>';
  1420. }
  1421. });
  1422. itemHTML += '<div class="clear"></div>';
  1423. //alert('ok');
  1424. //$.get('/map/lazy/check/',function(resp) {
  1425. //itemHTML += resp;
  1426. $('.result-list-thin').html(itemHTML);
  1427. if ($(window).width()>500) {
  1428. $('#content').css('height',$('.result-list-thin').height()+360);
  1429. $('#map').css('height',$('.result-list-thin').height()+160);
  1430. }
  1431. else {
  1432. $('#content').css('height',$('.result-list-thin').height()+145);
  1433. $('#map').css('height',$('.result-list-thin').height()+160);
  1434. }
  1435. //});
  1436. //}
  1437. });
  1438. });
  1439. //Draw initialized map
  1440. drawingManager.setMap(map);
  1441. }
  1442. //Google maps initialization
  1443. function initMap2(viewchage) {
  1444. getDefaultPropertyList('first');
  1445. var geocoder = new google.maps.Geocoder();
  1446. //Init map div
  1447. var map = new google.maps.Map(document.getElementById('map'),{
  1448. zoom: 8,
  1449. disableDefaultUI: true,
  1450. zoomControl: true,
  1451. zoomControlOptions: {
  1452. position: google.maps.ControlPosition.LEFT_TOP
  1453. },
  1454. center: {lat: 46.897913, lng: 20.540236}
  1455. });
  1456. /*geocoder.geocode({'address': "Paris"}, function(results, status) {
  1457. if (status === 'OK') {
  1458. map.setCenter(results[0].geometry.location);
  1459. }
  1460. });*/
  1461. var centerControlDiv = document.createElement('div');
  1462. var centerControl3 = new addMoveButton(centerControlDiv, map);
  1463. var centerControl2 = new addDrawButton(centerControlDiv, map);
  1464. var centerControl4 = new addCircleButton(centerControlDiv, map);
  1465. var centerControl1 = new addClearButton(centerControlDiv, map);
  1466. centerControlDiv.index = 1;
  1467. map.controls[google.maps.ControlPosition.TOP_CENTER].push(centerControlDiv);
  1468. var counter = 0;
  1469. //Init drawing tools and polygon properties
  1470. drawingManager = new google.maps.drawing.DrawingManager({
  1471. drawingMode: null,
  1472. drawingControl: false,
  1473. drawingControlOptions: {
  1474. position: google.maps.ControlPosition.TOP_CENTER,
  1475. drawingModes: ['polygon','circle']
  1476. },
  1477. polygonOptions: {
  1478. fillColor: '#ff0000',
  1479. fillOpacity: 0.5,
  1480. strokeWeight: 2,
  1481. clickable: false,
  1482. editable: true,
  1483. zIndex: 1
  1484. }
  1485. });
  1486. //Add default result list
  1487. $.getJSON('/map/search/reload/',function(resp) {
  1488. if (resp.pois!=null) {
  1489. pois = resp.pois;
  1490. poisall = resp.poisall;
  1491. $('#properties_count').html(poisall.length);
  1492. if (pois.length>0) {
  1493. $('.error-message').hide();
  1494. }
  1495. else {
  1496. $('.error-message').show();
  1497. }
  1498. counter = 0;
  1499. }
  1500. //Roll all JSON data to check POIs
  1501. $.each(poisall,function(key,poi) {
  1502. //Create google maps coordinate
  1503. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1504. //Check inside the polygon
  1505. //isInside = google.maps.geometry.poly.containsLocation(cord,activePoly);
  1506. //if (isInside) {
  1507. counter++;
  1508. //Add info popup
  1509. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1510. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1511. popHTML = '<div class="result-item horizontal-item mobilebox" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';" style="margin-bottom: 0px; margin-left: 0px;">';
  1512. popHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\');"></figure>';
  1513. popHTML += '<div class="result-details">';
  1514. popHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1515. popHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1516. if (poi.meret_telek!=='0') {
  1517. popHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1518. }
  1519. popHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1520. popHTML += '<span class="address">'+poi.name+'</span>';
  1521. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1522. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1523. popHTML += '</div>';
  1524. popHTML += '</div>';
  1525. var infowindow = new google.maps.InfoWindow({
  1526. content: popHTML
  1527. });
  1528. //Add marker
  1529. var marker = new google.maps.Marker({
  1530. position: cord,
  1531. map: map,
  1532. title: poi.name,
  1533. icon: '/uix/images/marker.png'
  1534. });
  1535. //Bind click event to marker to open modal
  1536. marker.addListener('click',function() {
  1537. infowindow.open(map,marker);
  1538. });
  1539. markers.push(marker);
  1540. //}
  1541. });
  1542. $('#properties_count').html(counter);
  1543. if (counter==0) {
  1544. $('#properties_count').parent('h3').html('<div class="error-message" style="display: block; margin-bottom: 30px;"><h2>Nincs találat : (</h2> Jelenleg nincs a megadott keresési feltételeknek megfelelő ingatlan az adatbázisunkban. Kérjük adjon meg más keresési paramétereket!</div>');
  1545. }
  1546. if (counter>0) {
  1547. if (counter>0) {
  1548. $('.error-message').hide();
  1549. }
  1550. else {
  1551. $('.error-message').show();
  1552. }
  1553. $.each(pois,function(key,poi) {
  1554. //Create google maps coordinate
  1555. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1556. //Check inside the polygon
  1557. //isInside = google.maps.geometry.poly.containsLocation(cord,activePoly);
  1558. //if (isInside) {
  1559. //Add info popup
  1560. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1561. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1562. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  1563. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  1564. itemHTML += '<div class="result-details">';
  1565. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1566. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1567. if (poi.meret_telek!=='0') {
  1568. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1569. }
  1570. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1571. itemHTML += '<span class="address">'+poi.name+'</span>';
  1572. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1573. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1574. itemHTML += '</div>';
  1575. itemHTML += '</div>';
  1576. //}
  1577. });
  1578. }
  1579. itemHTML += '<div class="clear"></div>';
  1580. $.get('/map/lazy/check/',function(resp) {
  1581. if (counter>5) {
  1582. itemHTML += resp;
  1583. }
  1584. $('.result-list-thin').html(itemHTML);
  1585. if ($(window).width()>500) {
  1586. $('#content').css('height',$('.result-list-thin').height()+360);
  1587. $('#map').css('height',$('.result-list-thin').height()+160);
  1588. }
  1589. else {
  1590. $('#content').css('height',$('.result-list-thin').height()+145);
  1591. $('#map').css('height',$('.result-list-thin').height()+160);
  1592. }
  1593. });
  1594. });
  1595. //End on default result list
  1596. //Add event listener for drawing complete signal
  1597. google.maps.event.addListener(drawingManager,'polygoncomplete',function(poly) {
  1598. activePoly = poly;
  1599. allShapes.push(poly);
  1600. for (var i = 0; i < markers.length; i++) {
  1601. markers[i].setMap(null);
  1602. }
  1603. markers = [];
  1604. google.maps.event.addListener(activePoly.getPath(),'insert_at',function() {
  1605. //Get polygon path
  1606. var points = activePoly.getPath();
  1607. var lats = [];
  1608. var lngs = [];
  1609. var cord = null;
  1610. var isInside = false;
  1611. //Get polygon points
  1612. points.b.forEach(function(row,i) {
  1613. lats.push(row.lat());
  1614. lngs.push(row.lng());
  1615. });
  1616. //Set max and min points to build rectangle
  1617. var LATmin = Math.min.apply(Math,lats);
  1618. var LATmax = Math.max.apply(Math,lats);
  1619. var LNGmin = Math.min.apply(Math,lngs);
  1620. var LNGmax = Math.max.apply(Math,lngs);
  1621. var popHTML = '';
  1622. var szobak = 0;
  1623. $.getJSON('/map/search/polygon/',{lat_min: LATmin, lat_max: LATmax, lon_min: LNGmin, lon_max: LNGmax},function(resp) {
  1624. if (resp.code=='01') {
  1625. pois = resp.pois;
  1626. poisall = resp.poisall;
  1627. $('#properties_count').html(poisall.length);
  1628. counter = 0;
  1629. }
  1630. //Roll all JSON data to check POIs
  1631. $.each(poisall,function(key,poi) {
  1632. //Create google maps coordinate
  1633. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1634. //Check inside the polygon
  1635. isInside = google.maps.geometry.poly.containsLocation(cord,activePoly);
  1636. if (isInside) {
  1637. counter++;
  1638. //Add info popup
  1639. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1640. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1641. popHTML = '<div class="result-item horizontal-item mobilebox" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';" style="margin-bottom: 0px; margin-left: 0px;">';
  1642. popHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\');"></figure>';
  1643. popHTML += '<div class="result-details">';
  1644. popHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1645. popHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1646. if (poi.meret_telek!=='0') {
  1647. popHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1648. }
  1649. popHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1650. popHTML += '<span class="address">'+poi.name+'</span>';
  1651. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1652. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1653. popHTML += '</div>';
  1654. popHTML += '</div>';
  1655. var infowindow = new google.maps.InfoWindow({
  1656. content: popHTML
  1657. });
  1658. //Add marker
  1659. var marker = new google.maps.Marker({
  1660. position: cord,
  1661. map: map,
  1662. title: poi.name,
  1663. icon: '/uix/images/marker.png'
  1664. });
  1665. //Bind click event to marker to open modal
  1666. marker.addListener('click',function() {
  1667. infowindow.open(map,marker);
  1668. });
  1669. markers.push(marker);
  1670. }
  1671. });
  1672. $('#properties_count').html(counter);
  1673. if (counter>0) {
  1674. $('.error-message').hide();
  1675. }
  1676. else {
  1677. $('.error-message').show();
  1678. }
  1679. $.each(pois,function(key,poi) {
  1680. //Create google maps coordinate
  1681. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1682. //Check inside the polygon
  1683. isInside = google.maps.geometry.poly.containsLocation(cord,activePoly);
  1684. if (isInside) {
  1685. //Add info popup
  1686. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1687. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1688. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  1689. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  1690. itemHTML += '<div class="result-details">';
  1691. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1692. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1693. if (poi.meret_telek!=='0') {
  1694. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1695. }
  1696. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1697. itemHTML += '<span class="address">'+poi.name+'</span>';
  1698. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1699. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1700. itemHTML += '</div>';
  1701. itemHTML += '</div>';
  1702. }
  1703. });
  1704. itemHTML += '<div class="clear"></div>';
  1705. $.get('/map/lazy/check/',function(resp) {
  1706. itemHTML += resp;
  1707. $('.result-list-thin').html(itemHTML);
  1708. if ($(window).width()>500) {
  1709. $('#content').css('height',$('.result-list-thin').height()+360);
  1710. $('#map').css('height',$('.result-list-thin').height()+160);
  1711. }
  1712. else {
  1713. $('#content').css('height',$('.result-list-thin').height()+145);
  1714. $('#map').css('height',$('.result-list-thin').height()+160);
  1715. }
  1716. });
  1717. });
  1718. });
  1719. drawingManager.setDrawingMode(null);
  1720. drawingManager.setOptions({
  1721. drawingControl: false
  1722. });
  1723. //Get polygon path
  1724. var points = poly.getPath();
  1725. var lats = [];
  1726. var lngs = [];
  1727. var cord = null;
  1728. var isInside = false;
  1729. //Get polygon points
  1730. //console.log(points.j);
  1731. points.j.forEach(function(row,i) {
  1732. lats.push(row.lat());
  1733. lngs.push(row.lng());
  1734. });
  1735. $.post('/map/storepolygon/',{lats: lats, lngs: lngs},function() {
  1736. console.log('Polygon stored');
  1737. storedLats = lats;
  1738. storedLngs = lngs;
  1739. });
  1740. //Set max and min points to build rectangle
  1741. var LATmin = Math.min.apply(Math,lats);
  1742. var LATmax = Math.max.apply(Math,lats);
  1743. var LNGmin = Math.min.apply(Math,lngs);
  1744. var LNGmax = Math.max.apply(Math,lngs);
  1745. var itemHTML = '';
  1746. var popHTML = '';
  1747. var szobak = 0;
  1748. $.getJSON('/map/search/polygon/',{lat_min: LATmin, lat_max: LATmax, lon_min: LNGmin, lon_max: LNGmax},function(resp) {
  1749. if (resp.code=='01') {
  1750. pois = resp.pois;
  1751. poisall = resp.poisall;
  1752. counter = 0;
  1753. }
  1754. //Roll all JSON data to check POIs
  1755. $.each(poisall,function(key,poi) {
  1756. //Create google maps coordinate
  1757. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1758. //Check inside the polygon
  1759. isInside = google.maps.geometry.poly.containsLocation(cord,poly);
  1760. if (isInside) {
  1761. counter++;
  1762. //Add info popup
  1763. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1764. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1765. popHTML = '<div class="result-item horizontal-item mobilebox" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';" style="margin-bottom: 0px; margin-left: 0px;">';
  1766. popHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\');"></figure>';
  1767. popHTML += '<div class="result-details">';
  1768. popHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1769. popHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1770. if (poi.meret_telek!=='0') {
  1771. popHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1772. }
  1773. popHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1774. popHTML += '<span class="address">'+poi.name+'</span>';
  1775. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1776. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1777. popHTML += '</div>';
  1778. popHTML += '</div>';
  1779. var infowindow = new google.maps.InfoWindow({
  1780. content: popHTML
  1781. });
  1782. //Add marker
  1783. var marker = new google.maps.Marker({
  1784. position: cord,
  1785. map: map,
  1786. title: poi.name,
  1787. icon: '/uix/images/marker.png'
  1788. });
  1789. //Bind click event to marker to open modal
  1790. marker.addListener('click',function() {
  1791. infowindow.open(map,marker);
  1792. });
  1793. markers.push(marker);
  1794. }
  1795. });
  1796. $('#properties_count').html(counter);
  1797. if (counter>0) {
  1798. $('.error-message').hide();
  1799. }
  1800. else {
  1801. $('.error-message').show();
  1802. }
  1803. $.each(pois,function(key,poi) {
  1804. //Create google maps coordinate
  1805. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1806. //Check inside the polygon
  1807. isInside = google.maps.geometry.poly.containsLocation(cord,poly);
  1808. if (isInside) {
  1809. //Add info popup
  1810. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1811. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1812. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  1813. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  1814. itemHTML += '<div class="result-details">';
  1815. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1816. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1817. if (poi.meret_telek!=='0') {
  1818. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1819. }
  1820. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1821. itemHTML += '<span class="address">'+poi.name+'</span>';
  1822. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1823. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1824. itemHTML += '</div>';
  1825. itemHTML += '</div>';
  1826. }
  1827. });
  1828. itemHTML += '<div class="clear"></div>';
  1829. $.get('/map/lazy/check/',function(resp) {
  1830. itemHTML += resp;
  1831. $('.result-list-thin').html(itemHTML);
  1832. if ($(window).width()>500) {
  1833. $('#content').css('height',$('.result-list-thin').height()+360);
  1834. $('#map').css('height',$('.result-list-thin').height()+160);
  1835. }
  1836. else {
  1837. $('#content').css('height',$('.result-list-thin').height()+145);
  1838. $('#map').css('height',$('.result-list-thin').height()+160);
  1839. }
  1840. });
  1841. });
  1842. });
  1843. //Add event listener for circle complete signal
  1844. google.maps.event.addListener(drawingManager,'circlecomplete',function(circle) {
  1845. disableLazyLoad = true;
  1846. activeCircle = circle;
  1847. allShapes.push(circle);
  1848. //console.log(allShapes);
  1849. for (var i = 0; i < markers.length; i++) {
  1850. markers[i].setMap(null);
  1851. }
  1852. markers = [];
  1853. drawingManager.setDrawingMode(null);
  1854. drawingManager.setOptions({
  1855. drawingControl: false
  1856. });
  1857. //Get radius path
  1858. var cord = null;
  1859. var isInside = false;
  1860. var itemHTML = '';
  1861. var popHTML = '';
  1862. var szobak = 0;
  1863. $.getJSON('/map/search/circle/',function(resp) {
  1864. if (resp.code=='01') {
  1865. pois = resp.pois;
  1866. poisall = resp.poisall;
  1867. counter = 0;
  1868. }
  1869. //Roll all JSON data to check POIs
  1870. $.each(pois,function(key,poi) {
  1871. isInside = false;
  1872. //Create google maps coordinate
  1873. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1874. //Check inside the circle
  1875. if (google.maps.geometry.spherical.computeDistanceBetween(cord,activeCircle.getCenter()) <= activeCircle.getRadius()) {
  1876. isInside = true;
  1877. } else {
  1878. isInside = false;
  1879. }
  1880. if (isInside==true) {
  1881. counter++;
  1882. //console.log('OK for #'+counter);
  1883. //Add info popup
  1884. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1885. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1886. popHTML = '<div class="result-item horizontal-item mobilebox" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';" style="margin-bottom: 0px; margin-left: 0px;">';
  1887. popHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\');"></figure>';
  1888. popHTML += '<div class="result-details">';
  1889. popHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1890. popHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1891. if (poi.meret_telek!=='0') {
  1892. popHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1893. }
  1894. popHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1895. popHTML += '<span class="address">'+poi.name+'</span>';
  1896. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1897. //popHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1898. popHTML += '</div>';
  1899. popHTML += '</div>';
  1900. //Add marker
  1901. var marker = new google.maps.Marker({
  1902. position: cord,
  1903. map: map,
  1904. title: poi.name,
  1905. icon: '/uix/images/marker.png'
  1906. });
  1907. var infowindow = new google.maps.InfoWindow({
  1908. content: popHTML
  1909. });
  1910. //Bind click event to marker to open modal
  1911. marker.addListener('click',function() {
  1912. infowindow.open(map,marker);
  1913. });
  1914. markers.push(marker);
  1915. }
  1916. else {
  1917. //console.log('BAD for #'+counter);
  1918. }
  1919. });
  1920. $('#properties_count').html(counter);
  1921. if (counter>0) {
  1922. $('.error-message').hide();
  1923. }
  1924. else {
  1925. $('.error-message').show();
  1926. }
  1927. $.each(pois,function(key,poi) {
  1928. //Create google maps coordinate
  1929. cord = new google.maps.LatLng(poi.lat,poi.lng);
  1930. //Check inside the circle
  1931. if (google.maps.geometry.spherical.computeDistanceBetween(cord,activeCircle.getCenter()) <= activeCircle.getRadius()) {
  1932. isInside = true;
  1933. } else {
  1934. isInside = false;
  1935. }
  1936. if (isInside) {
  1937. //Add info popup
  1938. szobak = parseInt(poi.szoba_egesz)+parseInt(poi.szoba_fel);
  1939. if (poi.tipus=='tarsashazi') { var mytipus = 'lakas'; } else { var mytipus = poi.tipus; }
  1940. itemHTML += '<div class="result-item horizontal-item" onclick="window.location=\'/'+poi.ertekesites+'/'+mytipus+'/'+generateSlug(poi.telepules)+'/'+poi.id+'-'+poi.ertekesites+'-'+mytipus+'-'+poi.iranyitoszam+'-'+generateSlug(poi.telepules)+'-'+generateSlug(poi.utcanev)+'\';">';
  1941. itemHTML += '<figure class="result-details" style="background-image: url(\''+propertySlideURL(poi.indexkep)+'\'); width: 200px;"></figure>';
  1942. itemHTML += '<div class="result-details">';
  1943. itemHTML += '<pre class="price">'+numberWithCommas(poi.iranyar)+' <span class="currency">FT</span></pre>';
  1944. itemHTML += '<span class="size">'+poi.meret_brutto+' m<sup>2</sup></span><br>';
  1945. if (poi.meret_telek!=='0') {
  1946. itemHTML += '<span class="site">'+poi.meret_telek+' m<sup>2</sup></span><br>';
  1947. }
  1948. itemHTML += '<span class="rooms">'+szobak.toString()+' szoba</span><br>';
  1949. itemHTML += '<span class="address">'+poi.name+'</span>';
  1950. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_contact(\''+poi.id+'\')"><i class="fas fa-envelope"></i> Contact</a>';
  1951. //itemHTML += '<a class="tool-icon" href="javascript:;" onclick="property_favorite(\''+poi.id+'\')"><i class="fas fa-heart"></i> Favorite</a>';
  1952. itemHTML += '</div>';
  1953. itemHTML += '</div>';
  1954. }
  1955. });
  1956. itemHTML += '<div class="clear"></div>';
  1957. //alert('ok');
  1958. //$.get('/map/lazy/check/',function(resp) {
  1959. //itemHTML += resp;
  1960. $('.result-list-thin').html(itemHTML);
  1961. if ($(window).width()>500) {
  1962. $('#content').css('height',$('.result-list-thin').height()+360);
  1963. $('#map').css('height',$('.result-list-thin').height()+160);
  1964. }
  1965. else {
  1966. $('#content').css('height',$('.result-list-thin').height()+145);
  1967. $('#map').css('height',$('.result-list-thin').height()+160);
  1968. }
  1969. //});
  1970. //}
  1971. });
  1972. });
  1973. //Draw initialized map
  1974. drawingManager.setMap(map);
  1975. }
  1976. function slider(obj) {
  1977. var image_list = $(obj).attr('data-images');
  1978. var images = image_list.split(',');
  1979. var text_list = $(obj).attr('data-texts');
  1980. var texts = text_list.split('|');
  1981. var index = 0;
  1982. if (images[index]!=='' && texts[index]!=='') {
  1983. $(obj).animate({opacity: 0}, 0).css("background-image", "url("+images[index]+")").animate({opacity: 1}, 1000);
  1984. $(obj).children('h1').html(texts[index]);
  1985. index++;
  1986. }
  1987. if (images.length>2) {
  1988. var sliderTimer = setInterval(function() {
  1989. if (images[index]!=='' && texts[index]!=='') {
  1990. $(obj).animate({opacity: 0}, 0).css("background-image", "url("+images[index]+")").animate({opacity: 1}, 1000);
  1991. $(obj).children('h1').html(texts[index]);
  1992. index++;
  1993. }
  1994. else {
  1995. index = 0;
  1996. $(obj).animate({opacity: 0}, 0).css("background-image", "url("+images[index]+")").animate({opacity: 1}, 1000);
  1997. $(obj).children('h1').html(texts[index]);
  1998. index++;
  1999. }
  2000. },8000);
  2001. }
  2002. }
  2003. function news(obj) {
  2004. var image_list = $(obj).attr('data-images');
  2005. var images = image_list.split(',');
  2006. var text_list = $(obj).attr('data-texts');
  2007. var texts = text_list.split('|');
  2008. var sub_list = $(obj).attr('data-subtexts');
  2009. var subs = sub_list.split('|');
  2010. var btntext_list = $(obj).attr('data-buttontexts');
  2011. var btntext = btntext_list.split('|');
  2012. var btnurl_list = $(obj).attr('data-buttonurls');
  2013. var btnurl = btnurl_list.split('|');
  2014. var index = 0;
  2015. if (images[index]!=='' && texts[index]!=='') {
  2016. $(obj).animate({opacity: 0}, 0).css("background-image", "url("+images[index]+")").animate({opacity: 1}, 1000);
  2017. $(obj).children('article').children('h3').html(texts[index]);
  2018. $(obj).children('article').children('.lead').html(subs[index]);
  2019. $(obj).children('article').children('.details').children('button').html(btntext[index]);
  2020. $(obj).children('article').children('.details').children('button').attr('onclick','window.location=\''+btnurl[index]+'\'');
  2021. index++;
  2022. }
  2023. if (images.length>2) {
  2024. var sliderTimer2 = setInterval(function() {
  2025. if (images[index]!=='' && texts[index]!=='') {
  2026. $(obj).animate({opacity: 0}, 0).css("background-image", "url("+images[index]+")").animate({opacity: 1}, 1000);
  2027. $(obj).children('article').children('h3').html(texts[index]);
  2028. $(obj).children('article').children('.lead').html(subs[index]);
  2029. $(obj).children('article').children('.details').children('button').html(btntext[index]);
  2030. $(obj).children('article').children('.details').children('button').attr('onclick','window.location=\''+btnurl[index]+'\'');
  2031. index++;
  2032. }
  2033. else {
  2034. index = 0;
  2035. $(obj).animate({opacity: 0}, 0).css("background-image", "url("+images[index]+")").animate({opacity: 1}, 1000);
  2036. $(obj).children('article').children('h3').html(texts[index]);
  2037. $(obj).children('article').children('.lead').html(subs[index]);
  2038. $(obj).children('article').children('.details').children('button').html(btntext[index]);
  2039. $(obj).children('article').children('.details').children('button').attr('onclick','window.location=\''+btnurl[index]+'\'');
  2040. index++;
  2041. }
  2042. },8000);
  2043. }
  2044. }
  2045. function ajax_page_load(obj) {
  2046. window.location=$(obj).attr('data-href');
  2047. return true;
  2048. }
  2049. function check_email(obj) {
  2050. $.post('/auth/check/email',{address: $(obj).val()},function(resp) {
  2051. if (resp==='ok') {
  2052. $('.error-email').hide();
  2053. $(obj).removeClass('error');
  2054. }
  2055. else {
  2056. $('.error-email').show();
  2057. $(obj).addClass('error');
  2058. }
  2059. });
  2060. }
  2061. function save_pass() {
  2062. var isError = false;
  2063. if ($('#new_pass').val()!='' && $('#new_pass2').val()!='' && $('#new_pass').val()==$('#new_pass2').val()) {
  2064. isError = false;
  2065. $.post('/profile/settings/newpass',{pass: $('#new_pass').val()},function(resp) {
  2066. $('.error-pass').hide();
  2067. $('.success-settings').show();
  2068. });
  2069. }
  2070. else if (($('#new_pass').val()!='' || $('#new_pass2').val()!='') && $('#new_pass').val()!=$('#new_pass2').val()) {
  2071. isError = true;
  2072. $('.success-settings').hide();
  2073. $('.error-pass').show();
  2074. }
  2075. }
  2076. function save_settings() {
  2077. var subs = 'n';
  2078. var isError = false;
  2079. if ($('#subscribe').is(':checked')) subs = 'y';
  2080. if ($('#new_pass').val()!='' && $('#new_pass2').val()!='' && $('#new_pass').val()==$('#new_pass2').val()) {
  2081. isError = false;
  2082. $.post('/profile/settings/newpass',{pass: $('#new_pass').val()},function(resp) {
  2083. $('.error-pass').hide();
  2084. });
  2085. }
  2086. else if (($('#new_pass').val()!='' || $('#new_pass2').val()!='') && $('#new_pass').val()!=$('#new_pass2').val()) {
  2087. isError = true;
  2088. $('.error-pass').show();
  2089. }
  2090. if (validateEmail($('#email').val())===false) {
  2091. isError = true;
  2092. }
  2093. if (isError===false) {
  2094. //console.log(subs);
  2095. $.post('/profile/settings/save',{
  2096. fname: $('#firstname').val(),
  2097. lname: $('#lastname').val(),
  2098. username: $('#username').val(),
  2099. email: $('#email').val(),
  2100. //street: $('#street').val(),
  2101. //city: $('#city').val(),
  2102. //state: $('#state').val(),
  2103. //zip: $('#zip').val(),
  2104. //country: $('#country').val(),
  2105. subscribe: subs
  2106. },function(resp) {
  2107. window.scrollTo(0,0);
  2108. $('.success-settings').show();
  2109. });
  2110. }
  2111. else {
  2112. $('#email').addClass('error');
  2113. window.location.hash='jumper';
  2114. }
  2115. }
  2116. function login(e) {
  2117. e.preventDefault();
  2118. var username = $('#email1').val();
  2119. var pass = $('#pass1').val();
  2120. var keepmeloggedin = 'n';
  2121. if ($('#keepmeloggedin').is(':checked')) keepmeloggedin = 'y';
  2122. $.post('/auth/login/',{username: username, pass: pass, keepmeloggedin: keepmeloggedin},function(resp) {
  2123. if (resp==='Sikeres bejelentkezés') {
  2124. $('.error-login').hide();
  2125. $('.success-bar').html('<i class="fas fa-check-circle"></i> Sikeres bejelentkezés...');
  2126. $('.success-bar').toggle();
  2127. var shtimer = setInterval(function() {
  2128. $('.success-bar').toggle();
  2129. clearInterval(shtimer);
  2130. var loc = window.location.href;
  2131. if (loc.indexOf('authed')>-1) {
  2132. window.location='/';
  2133. }
  2134. else {
  2135. window.location.reload();
  2136. }
  2137. },2000);
  2138. return false;
  2139. }
  2140. else {
  2141. $('.error-login').show();
  2142. return false;
  2143. }
  2144. });
  2145. }
  2146. function send_reminder() {
  2147. var email = $('#regemail').val();
  2148. if (email!=='') {
  2149. $.post('/auth/reminder/send',{email: email},function(resp) {
  2150. if (resp==='error') {
  2151. $('.error-reminder').show();
  2152. }
  2153. else {
  2154. $('.error-reminder').hide();
  2155. $('.success-message').show();
  2156. $('.popup-content').html('A megadott email címre elküldtük a jelszóemlékeztetőt.');
  2157. }
  2158. });
  2159. }
  2160. else {
  2161. $('.error-reminder').show();
  2162. var ct = setInterval(function() {
  2163. $('.error-reminder').fadeOut();
  2164. clearInterval(ct);
  2165. },3000);
  2166. }
  2167. }
  2168. function validateEmail(email) {
  2169. var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
  2170. return re.test(email);
  2171. }
  2172. function register() {
  2173. var fname = $('#first_name').val();
  2174. var lname = $('#last_name').val();
  2175. var email = $('#regemail').val();
  2176. //var gender = $('#gender').val();
  2177. var pass1 = $('#pass1').val();
  2178. var pass2 = $('#pass2').val();
  2179. var accepted = 0;
  2180. var newsletter = 0;
  2181. if ($('#accepted').is(':checked')) {
  2182. accepted = 1;
  2183. }
  2184. if ($('#newsletter').is(':checked')) {
  2185. newsletter = 1;
  2186. }
  2187. //var rememberme = $('#rememberme').is(':checked');
  2188. if (pass1!=='' && pass2!=='' && pass1==pass2 && fname!='' && lname!=='' && validateEmail(email) && accepted==1) {
  2189. $.post('/auth/register/',{
  2190. pass: pass1,
  2191. fname: fname,
  2192. lname: lname,
  2193. email: email,
  2194. newsletter: newsletter,
  2195. accepted: accepted
  2196. },function(resp) {
  2197. if (resp=='error') {
  2198. $('.error-message').show();
  2199. $('.error-message').html('A megadott email cím már szerepel rendszerünkben!');
  2200. var ct = setInterval(function() {
  2201. $('.error-message').fadeOut();
  2202. clearInterval(ct);
  2203. },3000);
  2204. }
  2205. else {
  2206. $('.popup-content').html(resp);
  2207. $('.form-group-gray').html('A belépéshez kérjük kattints az email címedre elküldött jóváhagyó linkre!');
  2208. }
  2209. });
  2210. }
  2211. else {
  2212. $('.error-message').show();
  2213. $('.error-message').html('Kérjük ellenőrizd a megadott mezőket: ');
  2214. if (pass1==='' || pass2==='' || pass1!==pass2) {
  2215. $('#pass1').addClass('error');
  2216. $('#pass2').addClass('error');
  2217. $('.error-message').append('<br>- A megadott jelszavak egyezőségét!');
  2218. }
  2219. else {
  2220. $('#pass1').removeClass('error');
  2221. $('#pass2').removeClass('error');
  2222. }
  2223. if (accepted==0) {
  2224. $('#accepted').parent('div').children('label').css('color','#ff0000');
  2225. $('.error-message').append('<br>- El kell fogadnod az adatkezelési szabályokat!');
  2226. }
  2227. else {
  2228. $('#accepted').parent('div').children('label').css('color','#555555');
  2229. }
  2230. if (fname==='') {
  2231. $('#first_name').addClass('error');
  2232. $('.error-message').append('<br>- A vezetékneved!');
  2233. }
  2234. else {
  2235. $('#first_name').removeClass('error');
  2236. }
  2237. if (lname==='') {
  2238. $('#last_name').addClass('error');
  2239. $('.error-message').append('<br>- A keresztneved!');
  2240. }
  2241. else {
  2242. $('#last_name').removeClass('error');
  2243. }
  2244. if (!validateEmail(email)) {
  2245. $('#regemail').addClass('error');
  2246. $('.error-message').append('<br>- Az email címed!');
  2247. }
  2248. else {
  2249. $('#regemail').removeClass('error');
  2250. }
  2251. var ct = setInterval(function() {
  2252. $('.error-message').fadeOut();
  2253. clearInterval(ct);
  2254. },3000);
  2255. }
  2256. }
  2257. function send_property_contact() {
  2258. var url = $('#contactFRM').attr('action');
  2259. var ctype = $('input[name=contact_type]:checked').val();
  2260. var fname = $('#firstname').val();
  2261. var lname = $('#lastname').val();
  2262. var email = $('#email').val();
  2263. var phone = $('#phone').val();
  2264. var message = $('#message').val();
  2265. if (url!=='' && ctype!=='' && fname!=='' && lname!=='' && phone!=='') {
  2266. $.post(url,{
  2267. fname: fname,
  2268. lname: lname,
  2269. email: email,
  2270. phone: phone,
  2271. ctype: ctype,
  2272. message: message
  2273. },function(resp) {
  2274. $('.success-message').html('Üzenetedet továbbítottuk. Köszönjük megkeresésed!');
  2275. $('.success-message').show();
  2276. });
  2277. }
  2278. else {
  2279. $('.error-message').html('Hiányos mezők: ');
  2280. if (ctype=='') {
  2281. $('input[name=contact_type]').addClass('error');
  2282. $('.error-message').append('kapcsolat típus, ');
  2283. }
  2284. else {
  2285. $('input[name=contact_type]').removeClass('error');
  2286. }
  2287. if (fname=='') {
  2288. $('#firstname').addClass('error');
  2289. $('.error-message').append('vezetéknév, ');
  2290. }
  2291. else {
  2292. $('#firstname').removeClass('error');
  2293. }
  2294. if (lname=='') {
  2295. $('#lastname').addClass('error');
  2296. $('.error-message').append('keresztnév, ');
  2297. }
  2298. else {
  2299. $('#lastname').removeClass('error');
  2300. }
  2301. if (phone=='') {
  2302. $('#phone').addClass('error');
  2303. $('.error-message').append('telefonszám, ');
  2304. }
  2305. else {
  2306. $('#phone').removeClass('error');
  2307. }
  2308. $('.error-message').show();
  2309. var ct = setInterval(function() {
  2310. $('.error-message').fadeOut();
  2311. clearInterval(ct);
  2312. },3000);
  2313. }
  2314. }
  2315. function send_agent_message() {
  2316. var url = $('#contactFRM').attr('action');
  2317. var ctype = $('input[name=contact_type]:checked').val();
  2318. var fname = $('#firstname').val();
  2319. var lname = $('#lastname').val();
  2320. var email = $('#email').val();
  2321. var phone = $('#phone').val();
  2322. var message = $('#message').val();
  2323. if (url!='' && ctype!='' && fname!='' && lname!='' && phone!='') {
  2324. $.post(url,{
  2325. fname: fname,
  2326. lname: lname,
  2327. email: email,
  2328. phone: phone,
  2329. ctype: ctype,
  2330. message: message
  2331. },function(resp) {
  2332. //$('.popup-content').html(resp);
  2333. //$('.form-group-gray').html('Üzenetét továbbítottuk. Köszönjük megkeresését!');
  2334. $('.success-message').html('Üzenetedet továbbítottuk. Köszönjük megkeresésed!');
  2335. $('.success-message').show();
  2336. $('#firstname').val('');
  2337. $('#lastname').val('');
  2338. $('#email').val('');
  2339. $('#phone').val('');
  2340. $('#message').val('');
  2341. });
  2342. }
  2343. else {
  2344. $('.error-message').html('Hiányos mezők: ');
  2345. if (ctype=='') {
  2346. $('input[name=contact_type]').addClass('error');
  2347. $('.error-message').append('kapcsolat típus, ');
  2348. }
  2349. else {
  2350. $('input[name=contact_type]').removeClass('error');
  2351. }
  2352. if (fname=='') {
  2353. $('#firstname').addClass('error');
  2354. $('.error-message').append('vezetéknév, ');
  2355. }
  2356. else {
  2357. $('#firstname').removeClass('error');
  2358. }
  2359. if (lname=='') {
  2360. $('#lastname').addClass('error');
  2361. $('.error-message').append('keresztnév, ');
  2362. }
  2363. else {
  2364. $('#lastname').removeClass('error');
  2365. }
  2366. if (phone=='') {
  2367. $('#phone').addClass('error');
  2368. $('.error-message').append('telefonszám, ');
  2369. }
  2370. else {
  2371. $('#phone').removeClass('error');
  2372. }
  2373. $('.error-message').show();
  2374. var ct = setInterval(function() {
  2375. $('.error-message').fadeOut();
  2376. clearInterval(ct);
  2377. },3000);
  2378. }
  2379. }
  2380. function send_office_contact() {
  2381. var url = $('#contactFRM').attr('action');
  2382. var ctype = $('input[name=contact_type]:checked').val();
  2383. var fname = $('#firstname').val();
  2384. var lname = $('#lastname').val();
  2385. var email = $('#email').val();
  2386. var phone = $('#phone').val();
  2387. var message = $('#message').val();
  2388. if (url!=='' && ctype!=='' && fname!=='' && lname!=='' && phone!=='') {
  2389. $.post(url,{
  2390. fname: fname,
  2391. lname: lname,
  2392. email: email,
  2393. phone: phone,
  2394. ctype: ctype,
  2395. message: message
  2396. },function(resp) {
  2397. $('.success-message').html('Üzenetedet továbbítottuk. Köszönjük megkeresésed!');
  2398. $('.success-message').show();
  2399. $('#firstname').val('');
  2400. $('#lastname').val('');
  2401. $('#email').val('');
  2402. $('#phone').val('');
  2403. $('#message').val('');
  2404. });
  2405. }
  2406. else {
  2407. $('.error-message').html('Hiányos mezők: ');
  2408. if (ctype=='') {
  2409. $('input[name=contact_type]').addClass('error');
  2410. $('.error-message').append('kapcsolat típus, ');
  2411. }
  2412. else {
  2413. $('input[name=contact_type]').removeClass('error');
  2414. }
  2415. if (fname=='') {
  2416. $('#firstname').addClass('error');
  2417. $('.error-message').append('vezetéknév, ');
  2418. }
  2419. else {
  2420. $('#firstname').removeClass('error');
  2421. }
  2422. if (lname=='') {
  2423. $('#lastname').addClass('error');
  2424. $('.error-message').append('keresztnév, ');
  2425. }
  2426. else {
  2427. $('#lastname').removeClass('error');
  2428. }
  2429. if (phone=='') {
  2430. $('#phone').addClass('error');
  2431. $('.error-message').append('telefonszám, ');
  2432. }
  2433. else {
  2434. $('#phone').removeClass('error');
  2435. }
  2436. $('.error-message').show();
  2437. var ct = setInterval(function() {
  2438. $('.error-message').fadeOut();
  2439. clearInterval(ct);
  2440. },3000);
  2441. }
  2442. }
  2443. function add_agent_to_favorite(agent_id,obj) {
  2444. $.post('/profile/favorites/addagent',{agent_id: agent_id},function(resp) {
  2445. if (resp==='ok') {
  2446. $('.success-bar').html('<i class="fas fa-check-circle"></i> A tanácsadót sikeresen felvetted a kedvenceid közé...');
  2447. $('.success-bar').toggle();
  2448. $(obj).css('color','red');
  2449. $(obj).css('cursor','initial');
  2450. $(obj).html('<i class="fas fa-heart"></i> Hozzáadva');
  2451. var shtimer = setInterval(function() {
  2452. $('.success-bar').toggle();
  2453. clearInterval(shtimer);
  2454. },3000);
  2455. }
  2456. else if (resp==='login') {
  2457. login_modal();
  2458. $('.error-bar').html('<i class="fas fa-exclamation-circle"></i> A kedvencekhez csak belépett felhasználóként tudsz felvenni elemeket...');
  2459. $('.error-bar').toggle();
  2460. var shtimer = setInterval(function() {
  2461. $('.error-bar').toggle();
  2462. clearInterval(shtimer);
  2463. },3000);
  2464. }
  2465. else {
  2466. $('.error-bar').html('<i class="fas fa-exclamation-circle"></i> A tanácsadó már szerepel a kedvenceid között...');
  2467. $('.error-bar').toggle();
  2468. var shtimer = setInterval(function() {
  2469. $('.error-bar').toggle();
  2470. clearInterval(shtimer);
  2471. },3000);
  2472. }
  2473. });
  2474. }
  2475. function add_office_to_favorite(office_id) {
  2476. $.post('/profile/favorites/addoffice',{office_id: office_id},function(resp) {
  2477. if (resp==='ok') {
  2478. $('.success-bar').html('<i class="fas fa-check-circle"></i> Az irodát sikeresen felvetted a kedvenceid közé...');
  2479. $('.success-bar').toggle();
  2480. $('#addtofavorites').html('<i class="fas fa-heart"></i> Hozzáadva');
  2481. $('#addtofavorites').css('color','#ff0000');
  2482. $('#addtofavorites').css('cursor','initial');
  2483. var shtimer = setInterval(function() {
  2484. $('.success-bar').toggle();
  2485. clearInterval(shtimer);
  2486. },3000);
  2487. }
  2488. else if (resp==='login') {
  2489. login_modal();
  2490. $('.error-bar').html('<i class="fas fa-exclamation-circle"></i> A kedvencekhez csak belépett felhasználóként tudsz felvenni elemeket...');
  2491. $('.error-bar').toggle();
  2492. var shtimer = setInterval(function() {
  2493. $('.error-bar').toggle();
  2494. clearInterval(shtimer);
  2495. },3000);
  2496. }
  2497. else {
  2498. $('.error-bar').html('<i class="fas fa-exclamation-circle"></i> Az iroda már szerepel a kedvenceid között...');
  2499. $('.error-bar').toggle();
  2500. var shtimer = setInterval(function() {
  2501. $('.error-bar').toggle();
  2502. clearInterval(shtimer);
  2503. },3000);
  2504. }
  2505. });
  2506. }
  2507. function add_property_to_favorite(property_id) {
  2508. $.post('/profile/favorites/add',{property_id: property_id},function(resp) {
  2509. if (resp==='ok') {
  2510. $('.success-bar').html('<i class="fas fa-check-circle"></i> Az ingatlant sikeresen felvetted a kedvenceid közé...');
  2511. $('.success-bar').toggle();
  2512. $('#addtofavorites').html('<i class="fas fa-heart"></i> Hozzáadva');
  2513. $('#addtofavorites').css('color','#ff0000');
  2514. $('#addtofavorites').css('cursor','initial');
  2515. var shtimer = setInterval(function() {
  2516. $('.success-bar').toggle();
  2517. clearInterval(shtimer);
  2518. },3000);
  2519. }
  2520. else if (resp==='login') {
  2521. login_modal();
  2522. $('.error-bar').html('<i class="fas fa-exclamation-circle"></i> A kedvencekhez csak belépett felhasználóként tudsz felvenni elemeket...');
  2523. $('.error-bar').toggle();
  2524. var shtimer = setInterval(function() {
  2525. $('.error-bar').toggle();
  2526. clearInterval(shtimer);
  2527. },3000);
  2528. }
  2529. else {
  2530. $('.error-bar').html('<i class="fas fa-exclamation-circle"></i> Az ingatlan már szerepel a kedvenceid között...');
  2531. $('.error-bar').toggle();
  2532. var shtimer = setInterval(function() {
  2533. $('.error-bar').toggle();
  2534. clearInterval(shtimer);
  2535. },3000);
  2536. }
  2537. });
  2538. }
  2539. function propertySlideURL(filename) {
  2540. return 'https://prod.rockhome.hu'+filename;
  2541. /*if (filename!=='' && typeof filename !== 'undefined') {
  2542. var maindir = filename.substring(1,4);
  2543. var subdir = filename.substring(1,6);
  2544. var url = 'https://prod.rockhome.hu/pictures/ingatlan/'+maindir+'/'+subdir+'/'+filename;
  2545. return url;
  2546. }
  2547. else {
  2548. return false;
  2549. }*/
  2550. }
  2551. function propertySlideshow() {
  2552. var indexImage = $('.slider-picture').attr('data-src');
  2553. if (indexImage!=='' && indexImage!==null && typeof indexImage!=='undefined') {
  2554. var imageURL = propertySlideURL(indexImage);
  2555. var img = '';
  2556. $('.slider-picture').css('background-image','url('+imageURL+')');
  2557. $('.image-thumbs').children('img').each(function() {
  2558. img = propertySlideURL($(this).attr('src'));
  2559. $(this).attr('src',img);
  2560. $(this).on('click',function() {
  2561. $('.slider-picture').css('background-image','url('+$(this).attr('src')+')');
  2562. $('.slider-picture').parent('a').attr('href',$(this).attr('src'));
  2563. $('.image-thumb').removeClass('active-thumb');
  2564. $(this).addClass('active-thumb');
  2565. active = $(this);
  2566. });
  2567. });
  2568. }
  2569. else {
  2570. return false;
  2571. }
  2572. }
  2573. function search_small(origin) {
  2574. var city = $('#city').val();
  2575. var name = $('#name').val();
  2576. var requestURL = origin;
  2577. var parameterURL = '?';
  2578. if (city!='' && city!='undefined') parameterURL += 'city='+city+'&';
  2579. if (name!='' && name!='undefined') parameterURL += 'name='+name+'&';
  2580. if (origin.indexOf('/rockhome-irodak/properties')>-1) {
  2581. $.get(requestURL+parameterURL+'from='+origin,function(resp) {
  2582. $('.result-list').html(resp);
  2583. });
  2584. }
  2585. else if (origin.indexOf('/rockhome-tanacsadok/iroda')>-1) {
  2586. window.location = requestURL+parameterURL+'from='+origin;
  2587. /*$.get(requestURL+parameterURL+'from='+origin,function(resp) {
  2588. $('.result-list').html(resp);
  2589. });*/
  2590. }
  2591. else {
  2592. window.location = requestURL+parameterURL+'from='+origin;
  2593. }
  2594. }
  2595. function search(origin) {
  2596. var ertekesites = $('#ertekesites').val();
  2597. var jelleg = $('#jelleg').val();
  2598. var city = $('#city').val();
  2599. var iranyar_min = $('#iranyar_min').val();
  2600. var iranyar_max = $('#iranyar_max').val();
  2601. var meret_netto_min = $('#meret_netto_min').val();
  2602. var meret_netto_max = $('#meret_netto_max').val();
  2603. var altipus = $('#altipus').val();
  2604. var jogi_statusz = $('#jogi_statusz').val();
  2605. var szoba_min = $('#szoba_min').val();
  2606. var szoba_max = $('#szoba_max').val();
  2607. var kilatas = $('#kilatas').val();
  2608. var futes = $('#futes').val();
  2609. var ovezet = $('#ovezet').val();
  2610. var tajolas = $('#tajolas').val();
  2611. var allapot = $('#allapot').val();
  2612. var kornyek = $('#kornyek').val();
  2613. var telek_min = $('#telek_min').val();
  2614. var telek_max = $('#telek_max').val();
  2615. var epites_eve_min = $('#epites_eve_min').val();
  2616. var epites_eve_max = $('#epites_eve_max').val();
  2617. var ferohely_garazs_min = $('#ferohely_garazs_min').val();
  2618. var ferohely_garazs_max = $('#ferohely_garazs_max').val();
  2619. var name = $('#name').val();
  2620. var kulon_nyilo_szobak = 0;
  2621. if ($('#kulon_nyilo_szobak').is(':checked')) kulon_nyilo_szobak=1;
  2622. var terasz = 0;
  2623. if ($('#terasz').is(':checked')) terasz=1;
  2624. var erkely = 0;
  2625. if ($('#erkely').is(':checked')) erkely=1;
  2626. var pince = 0;
  2627. if ($('#pince').is(':checked')) pince=1;
  2628. var tarolo = 0;
  2629. if ($('#tarolo').is(':checked')) tarolo=1;
  2630. var garazs = 0;
  2631. if ($('#garazs').is(':checked')) garazs=1;
  2632. var ferohely_fedettbeallo = 0;
  2633. if ($('#ferohely_fedettbeallo').is(':checked')) ferohely_fedettbeallo=1;
  2634. var kertkapcsolatos = 0;
  2635. if ($('#kertkapcsolatos').is(':checked')) kertkapcsolatos=1;
  2636. var viz = 0;
  2637. if ($('#viz').is(':checked')) viz=1;
  2638. var gaz = 0;
  2639. if ($('#gaz').is(':checked')) gaz=1;
  2640. var villany = 0;
  2641. if ($('#villany').is(':checked')) villany=1;
  2642. var csatorna = 0;
  2643. if ($('#csatorna').is(':checked')) csatorna=1;
  2644. var lift = 0;
  2645. if ($('#lift').is(':checked')) lift=1;
  2646. var requestURL = origin;
  2647. var parameterURL = '?';
  2648. if (ertekesites!='' && ertekesites!='undefined') parameterURL += 'ertekesites='+ertekesites+'&';
  2649. if (jelleg!='' && jelleg!='undefined') parameterURL += 'jelleg='+jelleg+'&';
  2650. if (city!='' && city!='undefined') parameterURL += 'city='+city+'&';
  2651. if (iranyar_min!='' && iranyar_min!='undefined') parameterURL += 'iranyar_min='+iranyar_min+'&';
  2652. if (iranyar_max!='' && iranyar_max!='undefined') parameterURL += 'iranyar_max='+iranyar_max+'&';
  2653. if (meret_netto_min!='' && meret_netto_min!='undefined') parameterURL += 'meret_netto_min='+meret_netto_min+'&';
  2654. if (meret_netto_max!='' && meret_netto_max!='undefined') parameterURL += 'meret_netto_max='+meret_netto_max+'&';
  2655. if (altipus!='' && altipus!='undefined') parameterURL += 'altipus='+altipus+'&';
  2656. if (jogi_statusz!='' && jogi_statusz!='undefined') parameterURL += 'jogi_statusz='+jogi_statusz+'&';
  2657. if (szoba_min!='' && szoba_min!='undefined') parameterURL += 'szoba_min='+szoba_min+'&';
  2658. if (szoba_max!='' && szoba_max!='undefined') parameterURL += 'szoba_max='+szoba_max+'&';
  2659. if (kilatas!='' && kilatas!='undefined') parameterURL += 'kilatas='+kilatas+'&';
  2660. if (futes!='' && futes!='undefined') parameterURL += 'futes='+futes+'&';
  2661. if (ovezet!='' && ovezet!='undefined') parameterURL += 'ovezet='+ovezet+'&';
  2662. if (tajolas!='' && tajolas!='undefined') parameterURL += 'tajolas='+tajolas+'&';
  2663. if (allapot!='' && allapot!='undefined') parameterURL += 'allapot='+allapot+'&';
  2664. if (kornyek!='' && kornyek!='undefined') parameterURL += 'kornyek='+kornyek+'&';
  2665. if (telek_min!='' && telek_min!='undefined') parameterURL += 'telek_min='+telek_min+'&';
  2666. if (telek_max!='' && telek_max!='undefined') parameterURL += 'telek_max='+telek_max+'&';
  2667. if (epites_eve_min!='' && epites_eve_min!='undefined') parameterURL += 'epites_eve_min='+epites_eve_min+'&';
  2668. if (epites_eve_max!='' && epites_eve_max!='undefined') parameterURL += 'epites_eve_max='+epites_eve_max+'&';
  2669. if (ferohely_garazs_min!='' && ferohely_garazs_min!='undefined') parameterURL += 'ferohely_garazs_min='+ferohely_garazs_min+'&';
  2670. if (ferohely_garazs_max!='' && ferohely_garazs_max!='undefined') parameterURL += 'ferohely_garazs_max='+ferohely_garazs_max+'&';
  2671. if (kulon_nyilo_szobak==1) parameterURL += 'kulon_nyilo_szobak='+kulon_nyilo_szobak+'&';
  2672. if (terasz==1) parameterURL += 'terasz='+terasz+'&';
  2673. if (erkely==1) parameterURL += 'erkely='+erkely+'&';
  2674. if (pince==1) parameterURL += 'pince='+pince+'&';
  2675. if (tarolo==1) parameterURL += 'tarolo='+tarolo+'&';
  2676. if (garazs==1) parameterURL += 'garazs='+garazs+'&';
  2677. if (ferohely_fedettbeallo==1) parameterURL += 'ferohely_fedettbeallo='+ferohely_fedettbeallo+'&';
  2678. if (kertkapcsolatos==1) parameterURL += 'kertkapcsolatos='+kertkapcsolatos+'&';
  2679. if (viz==1) parameterURL += 'viz='+viz+'&';
  2680. if (gaz==1) parameterURL += 'gaz='+gaz+'&';
  2681. if (villany==1) parameterURL += 'villany='+villany+'&';
  2682. if (csatorna==1) parameterURL += 'csatorna='+csatorna+'&';
  2683. if (lift==1) parameterURL += 'lift='+lift+'&';
  2684. if (name!='' && name!='undefined') parameterURL += 'name='+name+'&';
  2685. if (origin.indexOf('/rockhome-irodak/properties')>-1) {
  2686. $.get(requestURL+parameterURL+'from='+origin,function(resp) {
  2687. $('.result-list').html(resp);
  2688. });
  2689. }
  2690. else if (origin.indexOf('/rockhome-tanacsadok/properties')>-1) {
  2691. $.get(requestURL+parameterURL+'from='+origin,function(resp) {
  2692. $('.result-list').html(resp);
  2693. });
  2694. }
  2695. else {
  2696. window.location = requestURL+parameterURL+'from='+origin;
  2697. }
  2698. }
  2699. function search_by_agent(origin) {
  2700. var ertekesites = $('#ertekesites').val();
  2701. var jelleg = $('#jelleg').val();
  2702. var city = $('#city').val();
  2703. var iranyar_min = $('#iranyar_min').val();
  2704. var iranyar_max = $('#iranyar_max').val();
  2705. var meret_netto_min = $('#meret_netto_min').val();
  2706. var meret_netto_max = $('#meret_netto_max').val();
  2707. $.post('/rockhome-tanacsadok/properties/filter/',{
  2708. ertekesites: ertekesites,
  2709. jelleg: jelleg,
  2710. city: city,
  2711. iranyar_min: iranyar_min,
  2712. iranyar_max: iranyar_max,
  2713. meret_netto_min: meret_netto_min,
  2714. meret_netto_max: meret_netto_max,
  2715. origin: origin,
  2716. from: '/rockhome-tanacsadok/show/'+origin+'/'
  2717. },function(response) {
  2718. if (response=='') {
  2719. $('.result-list').html('<div class="error-message" style="display: block; width: 86%;"><h3>Nincs találat : (</h3> Jelenleg nincs a megadott keresési feltételeknek megfelelő ingatlan az adatbázisunkban. Kérjük adjon meg más keresési paramétereket!</div>');
  2720. }
  2721. else {
  2722. $('.result-list').html(response);
  2723. }
  2724. });
  2725. }
  2726. function search_by_office(origin) {
  2727. var ertekesites = $('#ertekesites').val();
  2728. var jelleg = $('#jelleg').val();
  2729. var city = $('#city').val();
  2730. var iranyar_min = $('#iranyar_min').val();
  2731. var iranyar_max = $('#iranyar_max').val();
  2732. var meret_netto_min = $('#meret_netto_min').val();
  2733. var meret_netto_max = $('#meret_netto_max').val();
  2734. var szoba_min = $('#szoba_min').val();
  2735. var szoba_max = $('#szoba_max').val();
  2736. $.post('/rockhome-irodak/properties/filter/',{
  2737. ertekesites: ertekesites,
  2738. jelleg: jelleg,
  2739. city: city,
  2740. iranyar_min: iranyar_min,
  2741. iranyar_max: iranyar_max,
  2742. meret_netto_min: meret_netto_min,
  2743. meret_netto_max: meret_netto_max,
  2744. szoba_min: szoba_min,
  2745. szoba_max: szoba_max,
  2746. origin: origin,
  2747. from: '/rockhome-irodak/show/'+origin+'/'
  2748. },function(response) {
  2749. if (response=='') {
  2750. $('.result-list').html('<div class="error-message" style="display: block; width: 86%;"><h3>Nincs találat : (</h3> Jelenleg nincs a megadott keresési feltételeknek megfelelő ingatlan az adatbázisunkban. Kérjük adjon meg más keresési paramétereket!</div>');
  2751. }
  2752. else {
  2753. $('.result-list').html(response);
  2754. }
  2755. });
  2756. }
  2757. function set_search_filter_category(action,obj) {
  2758. filterCategory = action;
  2759. $('.icon-item').css('background-color','transparent');
  2760. $(obj).css('background-color','#999');
  2761. }
  2762. function clearMainSearch() {
  2763. $('.icon-item').css('background-color','transparent');
  2764. filterCategory = '';
  2765. $('.location-search-layer').hide();
  2766. $('#search_location').val('');
  2767. }
  2768. function showHideDetailSearch() {
  2769. if ($('.detailed-filter').is(':visible')) {
  2770. $('#gogogo').show();
  2771. $('#showhideDetailSearch').html('Részletes keresés');
  2772. $('.detailed-filter').toggle();
  2773. $('#dsBtn').html('Részletes');
  2774. $('#dsBtn').css('margin-top','160px');
  2775. }
  2776. else {
  2777. $('#gogogo').hide();
  2778. $('#showhideDetailSearch').html('Bezárás');
  2779. $('.detailed-filter').toggle();
  2780. $('#dsBtn').html('Elrejt');
  2781. var marg = $('.detailed-filter').height()+170;
  2782. $('#dsBtn').css('margin-top',marg+'px');
  2783. }
  2784. }
  2785. function showHideSearch(obj) {
  2786. if ($('.filter-bar').is(':visible')) {
  2787. $('.filter-bar').hide();
  2788. $('#nsBtn').html('Keresés');
  2789. $('.showhideDetailSearch').show();
  2790. $('#showhideDetailClose').hide();
  2791. }
  2792. else {
  2793. $('.filter-bar').show();
  2794. $('#nsBtn').html('Elrejt');
  2795. $('.showhideDetailSearch').hide();
  2796. $('#showhideDetailClose').show();
  2797. }
  2798. }
  2799. function setDetailedForm(obj,origin) {
  2800. var tipus = $(obj).val();
  2801. if (tipus!=='') {
  2802. $.get('/property/setdetailed/show/?tipus='+tipus+'&origin='+origin,function(resp) {
  2803. $('.detailed-filter').html(resp);
  2804. $('#altipus').selectize({
  2805. });
  2806. $('#kilatas').selectize({
  2807. });
  2808. $('#futes').selectize({
  2809. });
  2810. $('#tajolas').selectize({
  2811. });
  2812. $('#kornyek').selectize();
  2813. $('#allapot').selectize();
  2814. $('#ovezet').selectize();
  2815. if ($('.detailed-filter').is(':visible')) {
  2816. }
  2817. else {
  2818. //$('#dsBtn').trigger('click');
  2819. }
  2820. });
  2821. }
  2822. else {
  2823. return false;
  2824. }
  2825. }
  2826. function loadDetailedForm(tipus) {
  2827. if (tipus!=='') {
  2828. $.get('/property/detailed/show/?tipus='+tipus+'&origin='+page,function(resp) {
  2829. $('.detailed-filter').html(resp);
  2830. $('#altipus').selectize();
  2831. $('#kilatas').selectize();
  2832. $('#futes').selectize();
  2833. $('#tajolas').selectize();
  2834. $('#kornyek').selectize();
  2835. $('#allapot').selectize();
  2836. $('#ovezet').selectize();
  2837. //$('#dsBtn').trigger('click');
  2838. });
  2839. }
  2840. else {
  2841. return false;
  2842. }
  2843. }
  2844. function clear_search() {
  2845. $.get('/property/clearsearch/',function(resp) {
  2846. window.location = '/property/search';
  2847. /*if (redirectURL=='' || redirectURL==undefined) {
  2848. window.location = '/property/search';
  2849. }
  2850. else {
  2851. if (redirectURL.indexOf('map')>0) {
  2852. window.location = '/map';
  2853. }
  2854. else {
  2855. window.location = '/property/search';
  2856. }
  2857. }*/
  2858. });
  2859. }
  2860. function hideMenu() {
  2861. $('.submenu').hide();
  2862. }
  2863. function showHideMenu(event,main,obj) {
  2864. event.stopPropagation();
  2865. hideMenu();
  2866. var parental = $(main).attr('data-sub');
  2867. var corrector = 0;
  2868. if (parental=='#ingatlan-submenu') {
  2869. corrector = 80;
  2870. }
  2871. else if (parental=='#services-submenu') {
  2872. corrector = 65;
  2873. }
  2874. else if (parental=='#connect-submenu') {
  2875. corrector = 20;
  2876. }
  2877. var leftPos = 0;
  2878. var pos = $(main).position();
  2879. leftPos = Math.round(pos.left)+corrector;
  2880. $(obj).children('.thicker').css('margin-left',leftPos+'px');
  2881. $(obj).toggle();
  2882. }
  2883. function next_thumb() {
  2884. var active = null;
  2885. var next = null;
  2886. $('.image-thumb').each(function() {
  2887. if ($(this).hasClass('active-thumb')) {
  2888. active = $(this);
  2889. }
  2890. });
  2891. $(active).removeClass('active-thumb');
  2892. next = $(active).closest('a').next().find('.image-thumb');
  2893. if ($(next).attr('src')!==undefined) {
  2894. $(next).addClass('active-thumb');
  2895. $('.slider-picture').css('background-image','url('+$(next).attr('src')+')');
  2896. }
  2897. else {
  2898. next = $('.image-thumbs img').first();
  2899. $(next).addClass('active-thumb');
  2900. $('.slider-picture').css('background-image','url('+$(next).attr('src')+')');
  2901. }
  2902. }
  2903. function prev_thumb() {
  2904. var active = null;
  2905. var next = null;
  2906. $('.image-thumb').each(function() {
  2907. if ($(this).hasClass('active-thumb')) {
  2908. active = $(this);
  2909. }
  2910. });
  2911. $(active).removeClass('active-thumb');
  2912. next = $(active).closest('a').prev().find('.image-thumb');
  2913. if ($(next).attr('src')!==undefined) {
  2914. $(next).addClass('active-thumb');
  2915. $('.slider-picture').css('background-image','url('+$(next).attr('src')+')');
  2916. }
  2917. else {
  2918. next = $('.image-thumbs img').last();
  2919. $(next).addClass('active-thumb');
  2920. $('.slider-picture').css('background-image','url('+$(next).attr('src')+')');
  2921. }
  2922. }
  2923. function setMapHeight() {
  2924. var maxHeight = $(window).height();
  2925. //maxHeight = maxHeight-165;
  2926. listMaxHeight = maxHeight-350;
  2927. $('.map-block').css('min-height',maxHeight+'px');
  2928. $('.map-block').css('height',maxHeight+'px');
  2929. $('.map-block').css('max-height',maxHeight+'px');
  2930. $('body').css('overflow-y','hidden');
  2931. $('.result-list-thin').css('min-height',listMaxHeight-0+'px');
  2932. $('.result-list-thin').css('height',listMaxHeight-0+'px');
  2933. $('.result-list-thin').css('max-height',listMaxHeight-0+'px');
  2934. $('.result-list-thin').css('padding-bottom','100px');
  2935. $('.result-list-thin').css('overflow-y','scroll');
  2936. //$('.result-list-thin').append('<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>');
  2937. }
  2938. function next_scroll() {
  2939. var leftPos = $('.thumbs-container').scrollLeft();
  2940. $(".thumbs-container").animate({scrollLeft: '+=500'}, 500);
  2941. }
  2942. function prev_scroll() {
  2943. var leftPos = $('.thumbs-container').scrollLeft();
  2944. $(".thumbs-container").animate({scrollLeft: '-=500'}, 500);
  2945. }
  2946. function share_property(propertyID) {
  2947. if (propertyID!='') {
  2948. uglipop({
  2949. class: 'share-popup',
  2950. source: 'html',
  2951. content: '<h3 class="popup-header">Ingatlan küldése emailben <a class="close-modal" href="javascript:;" onclick="close_modal()"><i class="fas fa-times-circle"></i></a></h3>\n\
  2952. <div class="popup-content-small" style="width: 92.4%;">\n\
  2953. <div class="error-login">Kérjük végezd el a reCaptcha validációt!</div>\n\
  2954. <form id="share_form" action="#" method="post" onsubmit="return share(event)">\n\
  2955. <input type="hidden" id="property_id" name="property_id" value="'+propertyID+'">\n\
  2956. <div class="elfsight-app-92b52e33-ea43-4c16-aa8a-b492150dc81a"></div>\n\
  2957. <div class="form-group-full"><label>Név *</label><input type="text" id="sharenev" name="nev" required="true" class="input-text" placeholder="A személy teljes neve"></div>\n\
  2958. <div class="form-group-full"><label>Email *</label><input type="email" id="shareemail" name="email" required="true" class="input-text" placeholder="A személy email címe"></div>\n\
  2959. <div class="form-group-full" style="margin-left: 25px;"><div id="revalidate" class="g-recaptcha" data-sitekey="6LespnkUAAAAAGCD4LxSKwADNqbzSiTR1SON0lMn"></div></div>\n\
  2960. <div class="clear"></div>\n\
  2961. <div class="form-group-full"><button type="submit" name="submit_share" class="btn-black">Küldés</button></div>\n\
  2962. </form>\n\
  2963. </div>'
  2964. });
  2965. grecaptcha.render('revalidate', {
  2966. 'sitekey' : '6LespnkUAAAAAGCD4LxSKwADNqbzSiTR1SON0lMn'
  2967. });
  2968. }
  2969. else {
  2970. return false;
  2971. }
  2972. }
  2973. function share(e) {
  2974. e.preventDefault();
  2975. var nev = $('#sharenev').val();
  2976. var email = $('#shareemail').val();
  2977. var propertyID = $('#property_id').val();
  2978. if (grecaptcha.getResponse()!='') {
  2979. $.post('/property/share/'+propertyID,{nev: nev, email: email, propertyID: propertyID},function(resp) {
  2980. if (resp==='sent') {
  2981. close_modal();
  2982. $('.error-login').hide();
  2983. $('.success-bar').html('<i class="fas fa-check-circle"></i> Sikeres email küldés...');
  2984. $('.success-bar').toggle();
  2985. var shtimer = setInterval(function() {
  2986. $('.success-bar').toggle();
  2987. clearInterval(shtimer);
  2988. },2000);
  2989. return false;
  2990. }
  2991. else {
  2992. $('.error-login').show();
  2993. return false;
  2994. }
  2995. });
  2996. }
  2997. else {
  2998. $('.error-login').show();
  2999. return false;
  3000. }
  3001. }
  3002. function start_main_search(obj) {
  3003. if ($('#search_keyword').val()!='') {
  3004. $('#search-form').submit();
  3005. }
  3006. }
  3007. function globalSearch(event,obj) {
  3008. var char = event.which || event.keyCode;
  3009. if (char==13 && $(obj).val()!='') {
  3010. window.location = '/search/index/?keyword='+$(obj).val();
  3011. }
  3012. else {
  3013. var keyword = $(obj).val();
  3014. if (keyword.length>1) {
  3015. $.get('/search/ajax/'+keyword,function(resp) {
  3016. $('#responsePreview').html(resp);
  3017. $('#responsePreview').show();
  3018. });
  3019. }
  3020. else {
  3021. $('#responsePreview').html('');
  3022. $('#responsePreview').hide();
  3023. return false;
  3024. }
  3025. }
  3026. }
  3027. function globalSearch2(event,obj) {
  3028. var char = event.which || event.keyCode;
  3029. if (char==13) {
  3030. window.location = '/search/index/?keyword='+$(obj).val();
  3031. }
  3032. else {
  3033. var keyword = $(obj).val();
  3034. if (keyword.length>1) {
  3035. $.get('/search/ajax/'+keyword,function(resp) {
  3036. $('#responsePreview').html(resp);
  3037. $('#responsePreview').show();
  3038. });
  3039. }
  3040. else {
  3041. $('#responsePreview').html('');
  3042. $('#responsePreview').hide();
  3043. return false;
  3044. }
  3045. }
  3046. }
  3047. function hideSuggests() {
  3048. $('#responsePreview').html('');
  3049. $('#responsePreview').hide();
  3050. return true;
  3051. }
  3052. function showSuggests() {
  3053. var keyword = $('#start_search').val();
  3054. if (keyword.length>1) {
  3055. $.get('/search/ajax/'+keyword,function(resp) {
  3056. $('#responsePreview').html(resp);
  3057. $('#responsePreview').show();
  3058. });
  3059. }
  3060. else {
  3061. $('#responsePreview').html('');
  3062. $('#responsePreview').hide();
  3063. return false;
  3064. }
  3065. }
  3066. function set_ertekesites_tipus(tipus) {
  3067. $('.ertekesites-check').removeClass('check-active');
  3068. $('#ertekesites').val(tipus);
  3069. if (tipus=='elado') {
  3070. $('#elado').addClass('check-active');
  3071. $('.currency-label').html('M Ft');
  3072. }
  3073. else {
  3074. $('#kiado').addClass('check-active');
  3075. $('.currency-label').html('E Ft');
  3076. }
  3077. }
  3078. function set_ertekesites_tipus_mobile(tipus) {
  3079. $('.ertekesites-check').removeClass('check-active');
  3080. $('#ertekesites_mobil').val(tipus);
  3081. if (tipus=='elado') {
  3082. $('#elado_mobile').addClass('check-active');
  3083. $('.currency-label').html('M Ft');
  3084. }
  3085. else {
  3086. $('#kiado_mobile').addClass('check-active');
  3087. $('.currency-label').html('E Ft');
  3088. }
  3089. }
  3090. function print_property(obj,id) {
  3091. var pos = $(obj).position();
  3092. var left = pos.left;
  3093. var top = pos.top;
  3094. $('#printpop').css('top',top);
  3095. $('#printpop').css('left',left);
  3096. $('#printpop').html('<ul><li><a href="javascript:;" onclick="print_property_portrai(\''+id+'\')">Álló nézet</a></li><li><a href="javascript:;" onclick="print_property_landscape(\''+id+'\')">Fekvő nézet</a></li></ul>');
  3097. $('#printpop').show();
  3098. }
  3099. function print_property_portrai(id) {
  3100. $('#printpop').hide();
  3101. if (id!='') {
  3102. $.get('/property/pdfexport/'+id+'/',function(resp) {
  3103. var myWindow=window.open('','','width=1000,height=600');
  3104. myWindow.document.write(resp);
  3105. setTimeout(function() {
  3106. myWindow.document.close();
  3107. myWindow.focus();
  3108. myWindow.print();
  3109. myWindow.close();
  3110. },500);
  3111. });
  3112. }
  3113. else {
  3114. return false;
  3115. }
  3116. }
  3117. function print_property_landscape(id) {
  3118. $('#printpop').hide();
  3119. if (id!='') {
  3120. $.get('/property/pdfexport/'+id+'/?landscape=y',function(resp) {
  3121. var myWindow=window.open('','','width=1000,height=600');
  3122. myWindow.document.write(resp);
  3123. setTimeout(function() {
  3124. myWindow.document.close();
  3125. myWindow.focus();
  3126. myWindow.print();
  3127. myWindow.close();
  3128. },500);
  3129. });
  3130. }
  3131. else {
  3132. return false;
  3133. }
  3134. }
  3135. function print_office(id) {
  3136. if (id!='') {
  3137. uglipop({
  3138. class: 'register-popup',
  3139. source: 'html',
  3140. content: '<div style="text-align: center;">\n\
  3141. <img src="/static/images/loading.gif" style="width: 100px;">\n\
  3142. <strong style="font-size: 18px; color: white; text-transform: uppercase; display: block;">Dokumentum létrehozása folyamatban...</strong>\n\
  3143. </div>'
  3144. });
  3145. $.get('/rockhome-irodak/pdfexport/'+id,function(filename) {
  3146. close_modal();
  3147. window.open('/'+filename);
  3148. });
  3149. }
  3150. else {
  3151. return false;
  3152. }
  3153. }
  3154. function print_agent(id) {
  3155. if (id!='') {
  3156. uglipop({
  3157. class: 'register-popup',
  3158. source: 'html',
  3159. content: '<div style="text-align: center;">\n\
  3160. <img src="/static/images/loading.gif" style="width: 100px;">\n\
  3161. <strong style="font-size: 18px; color: white; text-transform: uppercase; display: block;">Dokumentum létrehozása folyamatban...</strong>\n\
  3162. </div>'
  3163. });
  3164. $.get('/rockhome-tanacsadok/pdfexport/'+id,function(filename) {
  3165. close_modal();
  3166. window.open('/'+filename);
  3167. });
  3168. }
  3169. else {
  3170. return false;
  3171. }
  3172. }
  3173. function set_search_focus() {
  3174. if ($('.input-search').is(':visible')) {
  3175. }
  3176. else {
  3177. $('.input-search').animate({width:'toggle'},350,function() {
  3178. $('.input-search').css('display','block');
  3179. $('.input-search').focus();
  3180. });
  3181. }
  3182. }
  3183. function hide_search_focus() {
  3184. if ($('.input-search').val()=='') {
  3185. $('.input-search').animate({width:'toggle'},285);
  3186. }
  3187. }
  3188. function showMobileMenu(obj) {
  3189. if ($(obj).children('ul').is(':visible')) {
  3190. $('.mobile-submenu').hide();
  3191. $(obj).children('a').children('i').addClass('fa-angle-right');
  3192. $(obj).children('a').children('i').removeClass('fa-angle-down');
  3193. }
  3194. else {
  3195. $('.mobile-submenu').hide();
  3196. $(obj).children('ul').toggle();
  3197. $(obj).children('a').children('i').removeClass('fa-angle-right');
  3198. $(obj).children('a').children('i').addClass('fa-angle-down');
  3199. }
  3200. }
  3201. function showPagesSubmenu(obj) {
  3202. if (obj) {
  3203. var blocks = $(obj).parent('ul');
  3204. if ($(blocks).hasClass('menu-state-hidden')) {
  3205. $('.menu-state-show').children('.submenu-hidden').hide();
  3206. $('.menu-state-show').children('.submenu-title').children('span').html('+');
  3207. $(blocks).children('.submenu-hidden').show();
  3208. $(blocks).removeClass('menu-state-hidden');
  3209. $(blocks).addClass('menu-state-show');
  3210. $(obj).children('span').html('-');
  3211. }
  3212. else {
  3213. $(blocks).children('.submenu-hidden').hide();
  3214. $(blocks).removeClass('menu-state-show');
  3215. $(blocks).addClass('menu-state-hidden');
  3216. $(obj).children('span').html('+');
  3217. }
  3218. }
  3219. else {
  3220. return false;
  3221. }
  3222. }
  3223. function setCookie(cname, cvalue, exdays) {
  3224. var d = new Date();
  3225. d.setTime(d.getTime() + (exdays*24*60*60*1000));
  3226. var expires = "expires="+ d.toUTCString();
  3227. document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
  3228. }
  3229. function getCookie(cname) {
  3230. var name = cname + "=";
  3231. var decodedCookie = decodeURIComponent(document.cookie);
  3232. var ca = decodedCookie.split(';');
  3233. for (var i = 0; i <ca.length; i++) {
  3234. var c = ca[i];
  3235. while (c.charAt(0) == ' ') {
  3236. c = c.substring(1);
  3237. }
  3238. if (c.indexOf(name) == 0) {
  3239. return c.substring(name.length, c.length);
  3240. }
  3241. }
  3242. return "";
  3243. }
  3244. function accept_GDPR() {
  3245. setCookie('rockhome_gdpr','accepted',30);
  3246. $('#gdpr').hide();
  3247. }
  3248. $(document).ready(function() {
  3249. var gdprCookie = getCookie('rockhome_gdpr');
  3250. if (gdprCookie!='accepted') {
  3251. $('#gdpr').show();
  3252. }
  3253. $('html').click(function() {
  3254. hideMenu();
  3255. hideSuggests();
  3256. });
  3257. /*$('.result-list-thin').on('scroll', function() {
  3258. if ($(this).scrollTop() + $(this).outerHeight() >= $(this)[0].scrollHeight-1 && isScrollEnabled) {
  3259. lazyShowMore($('button[name=show_more]'));
  3260. }
  3261. });*/
  3262. //alert(page);
  3263. if (page=='index') {
  3264. $(document).on('scroll', function() {
  3265. if (screen.width>1000) {
  3266. if ($(document).scrollTop() >= $('.result-list').innerHeight()-400 && isScrollEnabled && storedCat.indexOf('arcsokkent')==-1) {
  3267. lazyShowMoreGrid($('button[name=show_more]'));
  3268. }
  3269. }
  3270. else {
  3271. if ($(document).scrollTop() >= $('.result-list-thin').innerHeight()-400 && isScrollEnabled && storedCat.indexOf('arcsokkent')==-1) {
  3272. lazyShowMoreGrid($('button[name=show_more]'));
  3273. }
  3274. }
  3275. });
  3276. }
  3277. if (page=='index') {
  3278. //slider($('#slide_banner'));
  3279. //news($('#news'));
  3280. //var pos = $('#search_location').position();
  3281. //var ntop = pos.top+168;
  3282. //$('.location-search-layer').css('top',ntop);
  3283. //$('.location-search-layer').css('left',pos.left);
  3284. //$('.suggession').css('width',$('#search_location').width());
  3285. //$('.suggession').css('top',pos.top-50);
  3286. //$('.suggession').css('left',pos.left);
  3287. filterCategory = storedCat;
  3288. if (storedCat.indexOf('/property/search/filter/')>-1) {
  3289. $('.property').css('background-color','#999');
  3290. }
  3291. else if (storedCat.indexOf('/rockhome-tanacsadok/search/filter/')>-1) {
  3292. $('.agents').css('background-color','#999');
  3293. }
  3294. else if (storedCat.indexOf('/rockhome-irodak/search/filter/')>-1) {
  3295. $('.offices').css('background-color','#999');
  3296. }
  3297. }
  3298. else if (page=='map') {
  3299. //var pos2 = $('#filter_filter').position();
  3300. //var nleft2 = pos2.left;
  3301. //$('#detailsicon').css('left',nleft2);
  3302. $('body').css('overflow-y','hidden !important');
  3303. setMapHeight();
  3304. }
  3305. $('#city').selectize();
  3306. $('#altipus').selectize();
  3307. $('#kilatas').selectize();
  3308. $('#futes').selectize();
  3309. $('#ovezet').selectize();
  3310. $('#search_location').selectize();
  3311. $('#tajolas').selectize();
  3312. $('#kornyek').selectize();
  3313. $('#allapot').selectize();
  3314. $('#name').selectize();
  3315. loadDetailedForm(detailType);
  3316. propertySlideshow();
  3317. });
  3318. $(window).resize(function() {
  3319. if (page=='index') {
  3320. var pos = $('#search_location').position();
  3321. var ntop = pos.top+168;
  3322. $('.location-search-layer').css('top',ntop);
  3323. $('.location-search-layer').css('left',pos.left);
  3324. }
  3325. else if (page=='map') {
  3326. var pos2 = $('#filter_filter').position();
  3327. var nleft2 = pos2.left;
  3328. $('#detailsicon').css('left',nleft2);
  3329. setMapHeight();
  3330. }
  3331. });