CINXE.COM

Developer Sales | EdgeProp.sg

<!DOCTYPE html> <html lang="en-SG" xml:lang="en-SG" dir="ltr" prefix="content: http://purl.org/rss/1.0/modules/content/ dc: http://purl.org/dc/terms/ foaf: http://xmlns.com/foaf/0.1/ og: http://ogp.me/ns# rdfs: http://www.w3.org/2000/01/rdf-schema# sioc: http://rdfs.org/sioc/ns# sioct: http://rdfs.org/sioc/types# skos: http://www.w3.org/2004/02/skos/core# xsd: http://www.w3.org/2001/XMLSchema#"> <head profile="http://www.w3.org/1999/xhtml/vocab"> <meta name="robots" content="index, follow" /> <meta name="googlebot" content="index, follow" /> <link rel="canonical" href="https://www.edgeprop.sg/market-watch/developer-sales" /> <!-- instant article --> <meta property="fb:pages" content="960109617356286" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:site" content="@edgepropsg" /> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1.0, maximum-scale=5.0, user-scalable=yes"> <!--[if IE]><![endif]--> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="icon" href="https://dkc9trqgco1sw.cloudfront.net/favicon.ico" type="image/vnd.microsoft.icon" /> <meta name="apple-itunes-app" content="app-id=1069299307" /> <meta property="fb:app_id" content="883195735069026" /> <title>Developer Sales | EdgeProp.sg</title> <script src="https://code.jquery.com/jquery-1.10.0.min.js" integrity="sha256-2+LznWeWgL7AJ1ciaIG5rFP7GKemzzl+K75tRyTByOE=" crossorigin="anonymous"></script> <link type="text/css" rel="stylesheet" href="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/css/css_lQaZfjVpwP_oGNqdtWCSpJT1EMqXdMiU84ekLLxQnc4.css?mYLYtZUNHClA261PCHFg6eFZ5T8o9wJg" media="all" /> <link type="text/css" rel="stylesheet" href="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/css/css_6zemUaNACzZ5sPLowbJJP0jVAcgeofg1dmXJdb1dfGY.css?ug5x.9zdC1HN82ncQqz_1SE8q5aP4xYS" media="all" /> <link type="text/css" rel="stylesheet" href="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/css/css_4j_3TvqhsGX9C4B6QKL1SSaUtfAe1bYzPwchx5gTdX4.css?Vys2UieiVkflXB31ENGpnoB_6Qvzf2Gb" media="all" /> <link type="text/css" rel="stylesheet" href="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/css/css_bp30zKjJs2ZuApiVcGqYbMMILl9zuP1zN5K_z1KV8Aw.css?vq0bJq0faUTs1mhAOnZiNyBgw8rmmeaY" media="all" /> <!-- HTML5 element support for IE6-8 --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]--> <!-- fix issue on facebook login issue (#_=_ is appended to the url) --> <script type="text/javascript"> if (window.location.hash && window.location.hash == '#_=_') { if (window.history && history.pushState) { window.history.pushState("", document.title, window.location.pathname); } else { // Prevent scrolling by storing the page's current scroll offset var scroll = { top: document.body.scrollTop, left: document.body.scrollLeft }; window.location.hash = ''; // Restore the scroll offset, should be flicker free document.body.scrollTop = scroll.top; document.body.scrollLeft = scroll.left; } } </script> <script src="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/js/js_N7gwB55Fu-lnVeW5Gx-c2USCUgSEfzm4K65ZkZA-aCg.js?7VWUDDQr4umlk7rg3EjITV5E53C5ymNW"></script> <script src="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/js/js_Atg8NSrDU40B7uFuAdqCD7_rAlf07x4ehhCFTifN5lA.js?kkdgOL1vlpzcke2NxuGyU3RKfhi9r2tB"></script> <script> function autoResize(ele,autoresize) { autoresize = autoresize || false; var newheight; var newwidth; var parentWidth; var parentHeight; //console.log(ele); if (document.getElementById){ newheight=ele.contentWindow.document.body.scrollHeight; newwidth=ele.contentWindow.document.body.scrollWidth; parentWidth = ele.parentNode.parentElement.scrollWidth; parentHeight = ele.parentNode.parentElement.scrollHeight; } //console.log(document.getElementById(id).parentNode.parentElement); //console.log(parentHeight); //alert(parentWidth); ele.height = (newheight) + "px"; ele.width = (newwidth) + "px"; ele.style.height = (newheight) + "px"; ele.style.width = (newwidth) + "px"; if (parentWidth > newwidth) { /* document.getElementById(id).height= (newheight) + "px"; document.getElementById(id).width= (newwidth) + "px"; document.getElementById(id).style.height= (newheight) + "px"; document.getElementById(id).style.width= (newwidth) + "px";*/ } else{ /* document.getElementById(id).height= (newheight * parentWidth/newwidth) + "px"; document.getElementById(id).width= (parentWidth) + "px"; document.getElementById(id).style.height= (newheight * parentWidth/newwidth) + "px"; document.getElementById(id).style.width= (parentWidth) + "px";*/ ele.style.marginLeft = "-15px"; ele.style.marginRight = "-15px"; } rpsInit(window.self, document, ele, newwidth); } function downloadJSAtOnload() { $('iframe.zone264').attr('src','/?option=ads_script&country=sg&zone_id=264');$('iframe.zone266').attr('src','/?option=ads_script&country=sg&zone_id=266');$('iframe.zone268').attr('src','/?option=ads_script&country=sg&zone_id=268');$('iframe.zone269').attr('src','/?option=ads_script&country=sg&zone_id=269');$('iframe.zone918').attr('src','/?option=ads_script&country=sg&zone_id=918');$('iframe.zone577').attr('src','/?option=ads_script&country=sg&zone_id=577');$('iframe.zone894').attr('src','/?option=ads_script&country=sg&zone_id=894');$('iframe.zone919').attr('src','/?option=ads_script&country=sg&zone_id=919');$('iframe.zone891').attr('src','/?option=ads_script&country=sg&zone_id=891');$('iframe.zone896').attr('src','/?option=ads_script&country=sg&zone_id=896');$('iframe.zone895').attr('src','/?option=ads_script&country=sg&zone_id=895');$('iframe.zone350').attr('src','/?option=ads_script&country=sg&zone_id=350');}</script> <script src="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/js/js_05D25cd_T8CkhFwdURl5Ff4uNbqvtJc5Be-W_H6I8c0.js?mrkTScdV5sTayiK_vw2ZrroVrbZfHTxS"></script> <script src="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/js/js_VvWCwBkZ8Imi2GzGdmXZvUAoVptGR5dIktOlv9_Ll9M.js?v4t4T56chTK4K1jD.clw74cJ99cq0dNt"></script> <script>jQuery.extend(Drupal.settings, {"basePath":"\/","pathPrefix":"","ajaxPageState":{"theme":"property_theme","theme_token":"8YiogncBKZUGjFAZ3i17_t8FBphh3H5GZC2oKHr6628","js":{"0":1,"sites\/all\/modules\/custom\/property\/modules\/property_bookmark\/scrolltofixed-min.js":1,"sites\/all\/modules\/custom\/property\/modules\/property_bookmark\/enquire-cart.js":1,"sites\/all\/modules\/custom\/property\/modules\/property_bookmark\/bookmark.js":1,"sites\/all\/themes\/bootstrap\/js\/bootstrap.js":1,"sites\/all\/modules\/contrib\/jquery_update\/replace\/jquery\/1.10\/jquery.min.js":1,"misc\/jquery.once.js":1,"misc\/drupal.js":1,"sites\/all\/modules\/contrib\/jquery_dollar\/jquery_dollar.js":1,"sites\/all\/themes\/property_theme\/js\/ads_responsive.js":1,"sites\/all\/modules\/contrib\/fancybox\/fancybox.js":1,"sites\/all\/libraries\/fancybox\/source\/jquery.fancybox.pack.js":1,"sites\/all\/libraries\/fancybox\/lib\/jquery.mousewheel-3.0.6.pack.js":1,"sites\/all\/modules\/analytic\/js\/select2.full.js":1,"sites\/all\/modules\/analytic\/js\/jquery.validate\/jquery.validate.min.js":1,"1":1,"sites\/all\/modules\/custom\/property\/modules\/property_bookmark\/jquery-cookie.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/affix.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/alert.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/button.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/carousel.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/collapse.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/dropdown.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/modal.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/tooltip.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/popover.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/scrollspy.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/tab.js":1,"sites\/all\/themes\/property_theme\/bootstrap\/js\/transition.js":1,"sites\/all\/themes\/property_theme\/..\/..\/modules\/analytic\/js\/jquery.colorbox.min.js":1,"sites\/all\/themes\/property_theme\/js\/common.js":1,"sites\/all\/themes\/property_theme\/addons\/back-to-top\/js\/modernizr.js":1,"sites\/all\/themes\/property_theme\/addons\/back-to-top\/js\/main.js":1},"css":{"modules\/system\/system.base.css":1,"sites\/all\/modules\/contrib\/date\/date_api\/date.css":1,"sites\/all\/modules\/contrib\/date\/date_popup\/themes\/datepicker.1.7.css":1,"modules\/field\/theme\/field.css":1,"modules\/node\/node.css":1,"sites\/all\/modules\/contrib\/views\/css\/views.css":1,"sites\/all\/modules\/contrib\/ckeditor\/css\/ckeditor.css":1,"sites\/all\/modules\/contrib\/ctools\/css\/ctools.css":1,"sites\/all\/libraries\/fancybox\/source\/jquery.fancybox.css":1,"sites\/all\/modules\/analytic\/css\/select2.css":1,"sites\/all\/themes\/property_theme\/css_v3\/style.css":1,"sites\/all\/themes\/property_theme\/..\/..\/modules\/analytic\/css\/colorbox\/colorbox.css":1,"sites\/all\/themes\/property_theme\/addons\/back-to-top\/css\/backtotop.css":1}},"fancybox":[],"user_js_uid":0,"urlIsAjaxTrusted":{"\/market-watch\/developer-sales":true},"js":{"tokens":[]},"bootstrap":{"anchorsFix":1,"anchorsSmoothScrolling":1,"formHasError":1,"popoverEnabled":1,"popoverOptions":{"animation":1,"html":0,"placement":"right","selector":"","trigger":"click","triggerAutoclose":1,"title":"","content":"","delay":0,"container":"body"},"tooltipEnabled":0,"tooltipOptions":{"animation":1,"html":0,"placement":"auto left","selector":"","trigger":"hover focus","delay":0,"container":"body"}}});</script> <!-- Facebook Pixel Code --> <script> !function (f, b, e, v, n, t, s) { if (f.fbq) return; n = f.fbq = function () { n.callMethod ? n.callMethod.apply(n, arguments) : n.queue.push(arguments) }; if (!f._fbq) f._fbq = n; n.push = n; n.loaded = !0; n.version = '2.0'; n.queue = []; t = b.createElement(e); t.async = !0; t.src = v; s = b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t, s) }(window, document, 'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '1684483305119944'); fbq('track', "PageView"); </script> <noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1684483305119944&ev=PageView&noscript=1" /></noscript> <!-- End Facebook Pixel Code --> <!-- Facebook Trackers --> <script> (function () { var _fbq = window._fbq || (window._fbq = []); if (!_fbq.loaded) { var fbds = document.createElement('script'); fbds.async = true; fbds.src = '//connect.facebook.net/en_US/fbds.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(fbds, s); _fbq.loaded = true; } })(); window._fbq = window._fbq || []; window._fbq.push(['track', '6023081380059', {'value': '0.00', 'currency': 'USD'}]); </script> <noscript><img height="1" width="1" alt="" style="display:none" src="https://www.facebook.com/tr?ev=6023081380059&amp;cd[value]=0.00&amp;cd[currency]=USD&amp;noscript=1" /></noscript> <script> (function () { var _fbq = window._fbq || (window._fbq = []); if (!_fbq.loaded) { var fbds = document.createElement('script'); fbds.async = true; fbds.src = '//connect.facebook.net/en_US/fbds.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(fbds, s); _fbq.loaded = true; } _fbq.push(['addPixelId', '728677163927654']); })(); window._fbq = window._fbq || []; window._fbq.push(['track', 'PixelInitialized', {}]); </script> <noscript><img height="1" width="1" alt="" style="display:none" src="https://www.facebook.com/tr?id=728677163927654&amp;ev=PixelInitialized" /></noscript> <!-- End Facebook Trackers --> <!-- Google Conversion Tracking --> <script type="text/javascript" src="https://www.googleadservices.com/pagead/conversion_async.js" charset="utf-8"></script> <script> function trackAdwordsConversion(conversion_label) { window.google_trackConversion({ google_conversion_id: 942613164, google_conversion_language: "en", google_conversion_format: "3", google_conversion_color: "ffffff", google_conversion_label: conversion_label, google_remarketing_only: false }); } </script> <!-- End Google Conversion Tracking --> <!-- Google Analytics --> <script async src="https://www.googletagmanager.com/gtag/js?id=UA-10796381-6"></script> <script> // (function (i, s, o, g, r, a, m) { // i['GoogleAnalyticsObject'] = r; // i[r] = i[r] || function () { // (i[r].q = i[r].q || []).push(arguments) // }, i[r].l = 1 * new Date(); // a = s.createElement(o), // m = s.getElementsByTagName(o)[0]; // a.async = 1; // a.src = g; // m.parentNode.insertBefore(a, m) // })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga'); // // ga('create', '', 'auto'); // ga('send', 'pageview'); window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'UA-10796381-6'); function sendGaPageView(page, title) { // ga('send', 'pageview', { // 'page': page, // 'title': title // }); gtag('event', 'page_view', { 'page_title': document.title, 'page_location': window.location.pathname, 'send_to': 'UA-10796381-6' }) } function sendGaEvent(category, action, label, value) { var eventValues = {}; if (value) { eventValues = { 'event_category': category, 'event_label': label, 'value': value }; // ga('send', 'event', category, action, label, value); } else if (label) { eventValues = { 'event_category': category, 'event_label': label }; // ga('send', 'event', category, action, label); } else { eventValues = { 'event_category': category }; // ga('send', 'event', category, action); } gtag('event', action, eventValues) } function sendGaEcommerce(transactionData, listingData, typeOfDeduction, siteUrl){ var price = 50 if(typeOfDeduction && typeOfDeduction.indexOf("RENT") > -1){ price = 30 } // ga('require', 'ecommerce'); // ga('ecommerce:addTransaction', { // id: transactionData.transaction_id_number, // Transaction ID. Required. // revenue: price, // Grand Total. Required. // }); // ga('ecommerce:addItem', { // id: transactionData.transaction_id_number, // Transaction ID. Required. // name: typeOfDeduction, // Product name. In EP case, change to type of transaction (reason, avoid cluttered info in e-commerce record). Required. // sku: listingData.listingId, // Listing ID. Optional // // category: this.props.devSummary.hostname + "/" + listingDetails.site_url, // Category. In EP case, change to page // category: siteUrl, // Category. In EP case, change to page // price: price, // Unit price. // quantity: 1, // }); // ga('ecommerce:send'); // ga('ecommerce:clear'); /* USE GTAG INSTEAD OF GA*/ gtag('event', 'purchase', { "transaction_id": transactionData.transaction_id_number, //Transaction ID "affiliation": typeOfDeduction, //The store or affiliation from which this transaction occurred. Optional "value": price, //Value (i.e. revenue). Optional "currency": "SGD", "items": [ { "id": listingData.listingId, //The product ID or SKU "name": typeOfDeduction, //The name of the product "category": siteUrl, // Category. In EP case, change to page url instead "quantity": 1, //1 deduction = 1 QTY "price": price // Unit price } ] }); } function sendGaSearchTermTracking(searchQuery){ if(searchQuery){ gtag('event', 'page_view', { 'page_path': '/project/?keyword='+searchQuery, 'send_to': 'UA-10796381-6' }) // ga('send', 'pageview', '/project/?keyword='+searchQuery); } } </script> <!-- End Google Analytics --> <!-- Internal Analytics --> <script> (function (w, d, l) { var _tepq = window._tepq || (window._tepq = []); if (!_tepq.loaded) { var e = w._tepq || (w._tepq = []); if (e.push !== Array.prototype.push) { return; } e.push = function (c, a, p, r, u) { var sessionid = getCookie('_tepa'); if (sessionid.length === 0) { random = Math.floor(Math.random() * (10000000 - 1000000 + 1)) + 1000000; sessionid = 'TEP.1.' + random + '.' + (new Date().getTime()); } if(!p){ p = '[]'; } var url = u || (l.href + ''); setCookie('_tepa', sessionid, 365 * 2); // $.post('https://analytics.theedgeproperty.com.sg/c', { // 's': sessionid, // 'u': '', // 'c': c, // 'a': a, // 'p': p, // 'r': r, // 'h': url, // 'w': d.referrer // }); }; e.objectToJson = function (obj) { return JSON.stringify(obj); }; e.queryParamsToJson = function (str) { var obj = str.replace(/(^\?)/, '').split("&").map(function (n) { return n = n.split("="), this[n[0]] = n[1], this }.bind({}))[0]; return this.objectToJson(obj); }; _tepq.loaded = true; } })(window, document, location); window._tepq = window._tepq || []; window._tepq.push('page', 'view'); var anlaytic_log_q = []; for (var key in anlaytic_log_q) { var row = anlaytic_log_q[key]; window._tepq.push(row.category, row.action, row.params, row.response); } </script> <!-- End Internal Analytics --> <!-- Awesome font --> <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"> <!-- End awesome font --> <!-- Google Web Fonts --> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> <!-- End Google Web Fonts --> <!-- Double Click --> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script> window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { googletag.defineSlot('/102900458/New_Exit_Intent', [1, 1], 'div-gpt-ad-1562053785649-0').addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.pubads().collapseEmptyDivs(); googletag.enableServices(); }); </script> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script> window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { var mapping = [[970, 90], [300, 250]]; if(navigator.userAgent.match(/Mobile|Windows Phone|Lumia|Android|webOS|iPhone|iPod|Blackberry|PlayBook|BB10|Opera Mini|\bCrMo\/|Opera Mobi/i) ) { mapping = mapping[1]; }else{ mapping = mapping[0]; } googletag.defineSlot('/102900458/EC_Billboard_Ad_Unit', mapping, 'div-gpt-ad-1667383976075-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.pubads().addEventListener('slotRenderEnded', function (event){ var getElem = document.getElementById('billboard_adunit_text'); try{ if (event.isEmpty) { getElem.style.display = 'none'; } else { getElem.style.display = 'block'; } } catch (err){} var getContainer = document.getElementById("div-gpt-ad-1667383976075-0"); try{ if(getContainer.style.display == "none"){ getElem.style.display = 'none'; } } catch (err){} }); googletag.enableServices(); }); </script> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script> window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { var mapping = [[320, 100], [970, 250]]; if(navigator.userAgent.match(/Mobile|Windows Phone|Lumia|Android|webOS|iPhone|iPod|Blackberry|PlayBook|BB10|Opera Mini|\bCrMo\/|Opera Mobi/i) ) { mapping = mapping[0]; }else{ mapping = mapping[1]; } googletag.defineSlot('/102900458/super_leaderboard', mapping, 'div-gpt-ad-1667807684495-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.pubads().addEventListener('slotRenderEnded', function (event){ var getElem = document.getElementById('super_leaderboard_adunit_text'); try{ if (event.isEmpty) { getElem.style.display = 'none'; } else { getElem.style.display = 'block'; } } catch(err){} var getContainer = document.getElementById("div-gpt-ad-1667807684495-0"); try{ if(getContainer.style.display == "none"){ getElem.style.display = 'none'; } } catch(err){} }); googletag.enableServices(); }); </script> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script> window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { googletag.defineSlot('/102900458/Leaderboard_Agent', [[728, 90], [300, 37], [520, 64], [400, 49]], 'div-gpt-ad-1584113487716-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.enableServices(); }); </script> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script> window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { googletag.defineSlot('/102900458/Medium_Rectangle_Agent', [300, 250], 'div-gpt-ad-1584115547906-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.enableServices(); }); </script> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script> window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { var mapping = [[960, 160], [300, 50], [300, 300]]; if (navigator.userAgent.match(/Tablet|iPad/i)) { // tablet mapping = mapping[1]; } else if(navigator.userAgent.match(/Mobile|Windows Phone|Lumia|Android|webOS|iPhone|iPod|Blackberry|PlayBook|BB10|Opera Mini|\bCrMo\/|Opera Mobi/i) ) { // mobile mapping = mapping[2]; } else { // desktop mapping = mapping[0]; } googletag.defineSlot('/102900458/Leaderboard_ROS', mapping, 'div-gpt-ad-1573622587973-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.enableServices(); }); </script> <!--script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script--> <script> window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { googletag.defineSlot('/102900458/mrec_1', [300, 250], 'div-gpt-ad-1667480890800-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.pubads().addEventListener('slotRenderEnded', function (event) { var getElem = document.getElementById("mrec_1_text"); try{ if (event.isEmpty) { getElem.style.display = 'none'; } else { getElem.style.display = 'block'; } } catch(err){ } var mrec1elem = document.getElementById("div-gpt-ad-1667480890800-0"); var getElemTalBannerText = document.getElementById("half_page_2_text"); var getElemTalBanner = document.getElementById("div-gpt-ad-1668145389350-0"); try{ var elem = document.getElementById("google_ads_iframe_/102900458/mrec_1_0"); elem.innerHTML; mrec1elem.style.display = 'block'; } catch(err){ try{ getElem.style.display = 'none'; mrec1elem.style.display = 'none'; } catch(err){ } } }); googletag.enableServices(); }); window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { googletag.defineSlot('/102900458/mrec_2', [300, 250], 'div-gpt-ad-1667973679096-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.pubads().addEventListener('slotRenderEnded', function (event) { var getElem = document.getElementById("mrec_2_text"); var mrec2elem = document.getElementById("div-gpt-ad-1667973679096-0"); try{ if (event.isEmpty) { getElem.style.display = 'none'; mrec2elem.style.display = 'none'; } else { getElem.style.display = 'block'; mrec2elem.style.display = 'block'; } } catch(err){ console.log("mrec 2 has err: " + err); } var getElemTalBannerText = document.getElementById("half_page_2_text"); var getElemTalBanner = document.getElementById("div-gpt-ad-1668145389350-0"); try{ var elem = document.getElementById("google_ads_iframe_/102900458/mrec_2_0"); elem.innerHTML; mrec2elem.style.display = 'block'; } catch(err){ try{ getElem.style.display = 'none'; mrec2elem.style.display = 'none'; } catch(err){ } } }); googletag.enableServices(); }); window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { googletag.defineSlot('/102900458/TallerBanner_Article', [300, 600], 'div-gpt-ad-1668145389350-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.pubads().addEventListener('slotRenderEnded', function (event) { var getElem = document.getElementById("half_page_2_text"); var getElemTalBanner = document.getElementById("div-gpt-ad-1668145389350-0"); if (event.isEmpty) { try{ //getElemTalBanner.style.display = 'none'; } catch(err){ } } try{ if (!event.isEmpty) { getElem.style.display = 'block'; } //if(getElemTalBanner.style.display == 'none'){ //console.log("here 6"); //getElem.style.display = 'none'; //} } catch(err){ } var getElemMrec1 = document.getElementById("mrec_1_text"); var getElemMrec2 = document.getElementById("mrec_2_text"); try{ if((getElemMrec1 != null && getElemMrec1.style.display == "block") || (getElemMrec2 != null && getElemMrec2.style.display == "block")){ //getElemTalBanner.style.display = 'none'; //getElem.style.display = 'none'; } else if(getElem.style.display == 'none'){ //getElemTalBanner.style.display = 'none'; //getElem.style.display = 'none'; }else{ //getElemTalBanner.style.display = 'block'; //getElem.style.display = 'block'; } } catch(err){ } try{ var elem = document.getElementById("google_ads_iframe_/102900458/TallerBanner_Article_0"); elem.innerHTML; getElemTalBanner.style.display = 'block'; } catch(err){ try{ getElemTalBanner.style.display = 'none'; getElem.style.display = 'none'; } catch(err){ } } }); googletag.enableServices(); }); </script> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script> window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { googletag.defineSlot('/102900458/all_pages_exit_intent', [800, 600], 'div-gpt-ad-1671606877825-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.pubads().addEventListener('slotRenderEnded', function (event){ var getElem = document.getElementById('all_pages_exit_intent'); if (event.isEmpty) { getElem.style.display = 'none'; } else { getElem.style.display = 'block'; } }); googletag.enableServices(); }); </script> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script> window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { var mapping = [[970, 250], [300, 300]]; if (navigator.userAgent.match(/Tablet|iPad/i)) { // tablet mapping = mapping[1]; } else if(navigator.userAgent.match(/Mobile|Windows Phone|Lumia|Android|webOS|iPhone|iPod|Blackberry|PlayBook|BB10|Opera Mini|\bCrMo\/|Opera Mobi/i) ) { // mobile mapping = mapping[1]; } else { // desktop mapping = mapping[0]; } googletag.defineSlot('/102900458/Billboard_Banner_ROS', mapping, 'div-gpt-ad-1657867609676-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.enableServices(); }); </script> <script type='text/javascript'> var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; (function () { var gads = document.createElement('script'); gads.async = true; gads.type = 'text/javascript'; var useSSL = 'https:' == document.location.protocol; gads.src = (useSSL ? 'https:' : 'http:') + '//www.googletagservices.com/tag/js/gpt.js'; var node = document.getElementsByTagName('script')[0]; node.parentNode.insertBefore(gads, node); })(); </script> <script type='text/javascript'> var adslots = {}; googletag.cmd.push(function () { var mapping = googletag.sizeMapping(). addSize([1000, 200], [[960, 160], [300, 250]]). addSize([760, 200], [[728, 90], [576, 96]]). addSize([540, 100], [[520, 64]]). addSize([428, 100], [[400, 49], [300, 300]]). addSize([0, 0], [[300, 37], [1, 1], [300, 300]]). build(); var mapping2 = googletag.sizeMapping(). addSize([1000, 200], [[960, 160]]). addSize([760, 200], [[576, 96]]). addSize([540, 100], [[300, 300]]). addSize([0, 0], [[300, 300]]). /*addSize([540, 100], [[300, 50]]). addSize([0, 0], [[300, 50]]).*/ build(); var en_bloc_dfp = googletag.sizeMapping(). addSize([1000, 200], [[960, 160], [300, 250]]). addSize([760, 200], [[728, 90], [576, 96]]). addSize([540, 100], [[520, 64]]). addSize([428, 100], [[400, 49], [300, 300]]). addSize([0, 0], [[300, 37], [1, 1], [300, 300]]). build(); //EnBloc //gptadslots[1]= googletag.defineSlot('/102900458/EnBloc_Banner', [[300, 250], [300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb-enbloc').defineSizeMapping(en_bloc_dfp).addService(googletag.pubads()); googletag.defineSlot('/102900458/EnBloc_Banner', [[300, 250], [300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb-enbloc').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).setCollapseEmptyDiv(true).addService(googletag.pubads()); googletag.defineSlot('/102900458/LLeaderboard_SGLiving', [[300, 37], [400, 49], [520, 64], [728, 90]], 'div-gpt-ad-1477911745996-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).setCollapseEmptyDiv(true).addService(googletag.pubads()); // googletag.defineSlot('/102900458/Leaderboard_Agent', [[300, 37], [400, 49], [520, 64], [728, 90]], 'div-gpt-ad-1459309800653-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).setCollapseEmptyDiv(true).addService(googletag.pubads()); googletag.defineSlot('/102900458/Leaderboard_Bottom', [[300, 37], [400, 49], [520, 64], [728, 90]], 'div-gpt-ad-1459309847435-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).setCollapseEmptyDiv(true).addService(googletag.pubads()); googletag.defineSlot('/102900458/Leaderboard_Home', [[300, 37], [400, 49], [520, 64], [728, 90]], 'div-gpt-ad-1460601118766-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).setCollapseEmptyDiv(true).addService(googletag.pubads()); googletag.defineSlot('/102900458/Leaderboard_newlaunches', [[728, 90], [300, 37], [400, 49], [520, 64]], 'div-gpt-ad-1459309928127-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).setCollapseEmptyDiv(true).addService(googletag.pubads()); googletag.defineSlot('/102900458/ListingsLeaderboard', [[300, 37], [728, 90], [400, 49], [520, 64]], 'div-gpt-ad-1461205494055-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).setCollapseEmptyDiv(true).addService(googletag.pubads()); // googletag.defineSlot('/102900458/Medium_Rectangle_Agent', [300, 250], 'div-gpt-ad-1457919705239-5').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Medium_Rectangle_New_Launches', [300, 250], 'div-gpt-ad-1457919705239-6').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Medium_Rectangle_1_Home', [300, 250], 'div-gpt-ad-1457919705239-7').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Medium_Rectangle_1_ROS', [[1, 1], [300, 300]], 'div-gpt-ad-1503558342590-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Medium_Rectangle_2_Home', [300, 250], 'div-gpt-ad-1457919705239-9').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Medium_Rectangle_2_ROS', [300, 300], 'div-gpt-ad-1503558626002-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/TEP_Pullout_Home', [300, 80], 'div-gpt-ad-1457919705239-11').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/ListingsMedRec', [300, 250], 'div-gpt-ad-1461205581047-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/InArticleMidRec', [300, 250], 'div-gpt-ad-1464072188720-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/InArticleLeaderboard', [728, 90], 'div-gpt-ad-1464081242790-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Intl_Medium_Rectangle_1_ROS', [[1, 1], [300, 300]], 'div-gpt-ad-1509002967276-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Intl_Medium_Rectangle_2_ROS', [300, 300], 'div-gpt-ad-1509003152965-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Square_Article', [300, 300], 'div-gpt-ad-1501834960271-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Square2_Article', [300, 300], 'div-gpt-ad-1501835394063-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/TallerBanner_Article', [300, 600], 'div-gpt-ad-1501835428701-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); adslots['article_lb_0'] = googletag.defineSlot('/102900458/Banner_Article', [[300, 250], [300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).addService(googletag.pubads()); adslots['article_lb_1'] = googletag.defineSlot('/102900458/Banner_Article', [[300, 250],[300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb-1').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).addService(googletag.pubads()); adslots['article_lb_2'] = googletag.defineSlot('/102900458/Banner_Article', [[300, 250], [300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb-2').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).addService(googletag.pubads()); adslots['article_lb2_0'] = googletag.defineSlot('/102900458/Banner_Article2', [[300, 250], [300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb2-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).addService(googletag.pubads()); adslots['article_lb2_1'] = googletag.defineSlot('/102900458/Banner_Article2', [[300, 250], [300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb2-1').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).addService(googletag.pubads()); adslots['article_lb2_2'] = googletag.defineSlot('/102900458/Banner_Article2', [[300, 250], [300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb2-2').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).addService(googletag.pubads()); adslots['article_lb3_0'] = googletag.defineSlot('/102900458/Banner_Article3', [[300, 250], [300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb3-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).addService(googletag.pubads()); adslots['article_lb3_1'] = googletag.defineSlot('/102900458/Banner_Article3', [[300, 250], [300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb3-1').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).addService(googletag.pubads()); adslots['article_lb3_2'] = googletag.defineSlot('/102900458/Banner_Article3', [[300, 250], [300, 300], [300, 50], [576, 96], [960, 160]], 'article-lb3-2').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping).addService(googletag.pubads()); googletag.defineSlot('/102900458/ArticleTakeover', [1, 1], 'div-gpt-ad-1505377064203-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Skyline1', [1, 1], 'div-gpt-ad-1505722079264-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Skyline2', [1, 1], 'div-gpt-ad-1505724894518-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Skyline3', [1, 1], 'div-gpt-ad-1505725091371-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Skyline4', [1, 1], 'div-gpt-ad-1505725182006-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Skyline5', [1, 1], 'div-gpt-ad-1505725419823-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Skyline6', [1, 1], 'div-gpt-ad-1505725485972-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Skyline7', [1, 1], 'div-gpt-ad-1505787488474-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); googletag.defineSlot('/102900458/Skyline8', [1, 1], 'div-gpt-ad-1505725626493-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").addService(googletag.pubads()); //googletag.defineSlot('/102900458/Leaderboard_ROS', [[300, 50], [576, 96], [960, 160]], 'div-gpt-ad-1506045496047-0').defineSizeMapping(mapping2).setCollapseEmptyDiv(false).addService(googletag.pubads()); // googletag.defineSlot('/102900458/Leaderboard_ROS', [[300, 300], [576, 96], [960, 160]], 'div-gpt-ad-1506045496047-0').setTargeting("host", "www.edgeprop.sg").setTargeting("url", "/market-watch/developer-sales").defineSizeMapping(mapping2).addService(googletag.pubads()); googletag.pubads().collapseEmptyDivs(); //googletag.pubads().enableSingleRequest(); //googletag.pubads().enableAsyncRendering(); googletag.enableServices(); }); </script> <!-- End Double Click --> </head> <body class="html not-front not-logged-in one-sidebar sidebar-second page-market-watch page-market-watch-developer-sales country_sg" > <!-- Facebook SDK for Like widget --> <div id="fb-root"></div> <script> (function (d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v2.5"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk')); </script> <!-- Google Tag Manager - DataLayer --> <script> var dataLayer = window.dataLayer = window.dataLayer || []; </script> <!-- End Google Tag Manager - DataLayer --> <!-- Google Tag Manager --> <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-KK22FQ" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <script> (function (w, d, s, l, i) { w[l] = w[l] || []; w[l].push({'gtm.start': new Date().getTime(), event: 'gtm.js'}); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = '//www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-KK22FQ'); </script> <!-- End Google Tag Manager --> <div id="skip-link"> <a href="#main-content" class="element-invisible element-focusable">Skip to main content</a> </div> <style> @import url("/sites/all/themes/property_theme/css_v3/header_footer_style.css?v=004"); @import url('https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700'); /*nav.navbar.navbar-default ul.navbar-nav li.menu-item a { padding: 15px 4.5px 15px; }*/ .nav-cast{ height: 70vh !important; } .header-menu-item-label{ background-color: #ff5122; padding-left: .5rem; padding-right: .5rem; border-radius: .4rem; font-size: 10px; line-height: inherit; box-sizing: border-box; margin-left: 3px; } .header-menu-item-label-mobile-arrow{ display: inline-block; float: right; } .header-menu-item-label-mobile{ position: absolute; padding-left: .5rem; padding-right: .5rem; border-radius: .4rem; font-size: 10px; line-height: inherit; box-sizing: border-box; margin-left: 185px; margin-top: -20px; float: right; } input.language-radio:before { width: 14px; height: 14px; border-radius: 18px; position: absolute; margin-top: 0px; margin-left: -1px; background-color: #ffffff; content: ''; display: inline-block; visibility: visible; border: 1px solid #BFBEBE; } input.language-radio:checked:after { width: 10px; height: 10px; border-radius: 12px; position: absolute; margin-top: 2px; margin-left: 1px; background-color: #FF5222; content: ''; display: inline-block; visibility: visible; } input.language-radio { pointer-events: none; } .dropdown-header-label { margin: 15px 0px; height: 32px; width: 100%; font-family: Poppins; color: #13649D; font-size: 18px; font-weight: 500; } .tablet-show { display: none !important; } .menu-item { position: relative; margin-left: 10px; } .side-menu-red-dot { display: block; position: absolute; width: 6px; height: 6px; border-radius: 50%; background: #D0021B; top: 6px; right: -7px; } .menu-red-dot { display: block; position: absolute; width: 6px; height: 6px; border-radius: 50%; background: #D0021B; right: 0px; top: 13px; } .menu-red-dot--mobile { right: 8px; top: 0px; } .menu-red-dot--desktop { right: 0px; top: 13px; } .hide{ display: none !important; } .new_launch-suggestions { background: #343a40; color: white; padding: 2px; width: 50%; } .new_launch-suggestions-options { display: grid; margin: 5px 5px; padding: 5px; cursor: pointer; } .new_launch-suggestions-options:hover { background: #6c757d; } .selected-project-id-new-launces { background-color: #6c757d; } .tag-selected-wrapper { width: 100%; height: auto; padding: 0 5px 5px; background-color: white; border: none; border-radius: 4px; margin-top: 5px; } #tag_other { width: 100%; height: 35px; padding: 0 5px 5px; background-color: white; border: 1px solid lightgrey; border-radius: 4px; margin-top: -6px; padding: 11px; } .tag-project-selected-item-wrapper, .tag-other-selected-item-wrapper, .tag-quick-suggestion-item-wrapper { background-color: #e4e4e4; color: black; border: 1px solid #aaa; border-radius: 4px; margin-right: 5px; margin-top: 5px; padding: 0 5px; display: inline-block; } .tag-selected-delete{ margin-left: 3px; } .tag-selected-delete, .tag-selected-item{ display: inline-block; } .tag-suggestion-item:hover, .tag-suggestion-item.selected { background-color: #488ccc; color: #fff; } .tag-selected-delete:hover, .tag-suggestion-item { cursor: pointer; } .tag-selected-delete:hover{ opacity: 0.8; } .tag-suggestion-wrapper-float { max-height: 200px; position: absolute; z-index: 1; border-radius: 4px; background-color: white; box-shadow: 4px 5px 8px rgba(0,0,0,0.22),0 3px 8px rgba(0,0,0,0.3); box-sizing: border-box; overflow: hidden; overflow-x: hidden; overflow-y: auto; } #tag_suggestions{ width: 48%; padding: 10px; display: none; } #tag_other_suggestions{ width: 97%; padding: 10px; display: none; } /* handle field tag others */ .form-item.form-item-field-tags-und.form-type-textfield.form-autocomplete.form-group, .form-item.form-item-field-tags-proj-name-und-0-value.form-type-textfield.form-group{ margin-bottom: 5px; } .desc-tag_project{ display: inline-block; white-space: break-spaces; margin-top: 3px; margin-bottom: 17px; } /* Tablets media queries */ @media (min-width: 768px) and (max-width: 1280px) { .tablet-hide { display: none !important; } .tablet-show { display: block !important; } } @media (min-width: 768px) and (max-width: 1280px) and (orientation: landscape) { .tablet-hide { display: none !important; } .tablet-show { display: block !important; } } @media (min-width: 992px) and (max-width: 1113px) { .home-button-nav { display: none !important; } .tab-view-logo { width: 80px; } } </style> <script> function logout(name){ for (i = 0; i < name.length; i++) { document.cookie = name[i] + '=;expires=Thu, 01 Jan 1970 00:00:01 GMT;'; document.cookie = name[i] + '=;expires=Thu, 01 Jan 1970 00:00:01 GMT;path=/;' + "; domain=.edgeprop.sg"; $.removeCookie(name[i], { path: "/" }); } // callback(); } // start timer const timerValue = 60; var countDown = ''; var timer = timerValue; var c = function () { $('.count-down').html(timer); $('.count-down-label').show(); $('.resend-label').hide(); if (--timer < 0) { timer = 0; $('.count-down-label').hide(); $('.resend-label').show(); // $('.count-down-label').html('Did\'nt receive a code? <a class=\'resend-btn\'><font color=\'#13649D\'> Resend</font></a>'); clearInterval(countDown); } }; var stopCountDown = function () { clearInterval(countDown); timer = timerValue; }; </script> <!-- /102900458/all_pages_exit_intent --> <div id="all_pages_exit_intent" style="position:absolute;"></div> <!-- /102900458/New_Exit_Intent from Generate Tags--> <div id='div-gpt-ad-1562053785649-0' style='width: 1px; height: 1px;'> <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1562053785649-0'); }); </script> </div> <iframe src="https://www.edgeprop.my/iframe/gaframe.php" height="0" width="0" style="display:none;visibility:hidden"></iframe> <nav class="navbar navbar-default" role="navigation" style="" > <div class="container-fluid"> <div class="navbar-header"> <div class="row" style="margin-right: 0px;"> <div class="col-lg-12 col-md-12 col-sm-4 col-xs-4 tab-view-logo"> <div class="main_logo"> <a href="/" id="logo"> <img src="https://sg.tepcdn.com/web4/public/img/new-logo.png" style="height: 30px"> </a> </div> <!-- <a class="navbar-brand" href="#"> <img src="/web4/public/img/new-logo.png"> </a>--> </div> <div class="col-sm-8 col-xs-8" id="togglebutton"> <button id="hamburger-mobile" style="margin-right:0;margin-top:0;padding: 14.5px 10px !important;" type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <div id="hamburger-collapsed" style="display: block;"> <div class="menu-red-dot"></div> <img class="drawer-icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_more.png"/> </div> <div id="hamburger-expanded" style="display: none;"> <span>×<span> </div> </button> <button style="margin-right:0;margin-top:0;padding: 14px 10px !important;" type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-2"> <a href="/property-news" class="" style="font-family:'Poppins' sans-serif !important;text-align: center;color:#fff; font-size:15px; font-weight:300;">News<!--img class="mobile-icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_articles.png"/--></a> </button> <button style="margin-right:0;margin-top:0;padding: 14px 10px !important; color: #fff" type="button" class="navbar-toggle" data-toggle="collapse" data-target=".nav-tools" id="toggle-tools" aria-expanded=false> <div style="font-family:'Poppins' sans-serif !important;font-weight: 300;font-size:15px; display: inline">Analytics</div> <i class="fa fa-caret-down" aria-hidden="true" style="display:inline;vertical-align:middle; padding-left: 3px; color:#1779ba "></i> <!--img class="mobile-icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_tools.png"/--> <div class="collapse navbar-collapse nav-tools" id="tools" style="max-height: 100vh;top: 50px;right:-70px;"> <ul class="nav navbar-nav mobile-menu hidden-lg hidden-md" style="padding: 0 !important;"> <li class="menu-item dropdown-header"> <a href="/pricing-plan" class="mobile-button"> Subscription Packages </a> </li> <li class="menu-item dropdown-header dropdown" style="font-weight: 600;padding:0;background-color:#275075;margin-left:25px;"> Free Tools </li> <li class="menu-item sub-menu-item"> <a href="/ocbc_calculator" style="padding: 5px 10px; display: none;"> <dl style="margin-bottom: 0px;"> <dt>OCBC Affordability Calculator</dt> <!--<dd><small>Understand how much you can afford before buying a property</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/gooddeal" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Is it a Good Deal?<img style="width:15%;margin-left:5px;display:inline-block;" src="https://sg.tepcdn.com/public/usr/8bua27/9e5072-new-header-icon.png"></dt> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/affordability-calculator" style="padding: 5px 10px; display: none;"> <dl style="margin-bottom: 0px;"> <dt>Affordability Calculator</dt> <!--<dd><small>Check how much you can borrow to buy a home</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="https://get.edgeprop.sg/property-calculators/" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Property Calculators</dt> <!--<dd><small>Calculators for all your property related needs</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/en-bloc-calculator" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>En Bloc Calculator</dt> <!--<dd><small>Save more on your home plan</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/hdb-tenure" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>MY HDB Lease</dt> <!--<dd><small>Save more on your home plan</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="https://www.edgeprop.sg/condo-apartment" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Research</dt> <!--<dd><small>Comprehensive report &amp; price trends of all types of properties</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/edgefairvalue" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Edge Fair Value<img style="width:25%;margin-left:5px;display:inline-block;" src="https://sg.tepcdn.com/public/usr/8bua27/1226bb-popular-header-icon.png"></dt> <!--<dd><small>Find properties listed below market price</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/heatmap" style="padding: 5px 10px;"><dl style="margin-bottom: 0px;"> <dt>Heatmap</dt> <!--<dd><small>Interactive map to see the most and least popular neighborhoods</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/market-trends" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Market Trend</dt> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/watchlist" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Watchlist</dt> <!--<dd><small>Keep track of your favourite properties &amp; make better decision</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/amenities" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Amenities Check</dt> <!--<dd><small>Check nearby amenities from any location in Singapore</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/market-watch/developer-sales" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Market Watch</dt> </dl> </a> </li> <!-- <li class="menu-item sub-menu-item"> <a href="/affordability-calculator" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Affordability Calculator</dt> <dd><small>Understand how much you can afford before buying a property</small></dd> </dl> </a> </li> --> <li class="menu-item dropdown-header dropdown" style="font-weight: 600;padding:0;background-color:#275075;margin-left:25px;"> Premium Tools </li> <li class="menu-item sub-header"> Presentation Tool </li> <li class="menu-item sub-menu-item"> <a href="/landlens" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>LandLens<img style="width:27%;margin-left:5px;display:inline-block;" src="https://sg.tepcdn.com/public/usr/8bua27/0a2576-advanced-header-icon.png"></dt> <!--<dd><small>Our enterprise-level solution for users looking for the most advanced research and visualisation tool</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/inspector" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Inspector<img style="width:25%;margin-left:5px;display:inline-block;" src="https://sg.tepcdn.com/public/usr/8bua27/1226bb-popular-header-icon.png"></dt> <!--<dd><small>The latest tool to inspect landed</small></dd>--> </dl> </a> </li> <li class="menu-item sub-header"> Research and Analytics Tools </li> <li class="menu-item sub-menu-item"> <a href="/analytic/tower" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Tower View</dt> <!--<dd><small>View prices arranged in storeys &amp; stacks, first of a kind!</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/street" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Street View</dt> <!--<dd><small>Discover property transactions along any street in Singapore</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/landsales" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Land Sales</dt> </dl> </a> </li> <li class="menu-item sub-header"> Prospecting </li> <li class="menu-item sub-menu-item"> <a href="/analytic/featuredenquiries" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Featured Enquiries</dt> <!--<dd><small>Check what type of properties homeowners or tenants are looking for</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/fsbo" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>FSBO</dt> <!--<dd><small>Listings posted by owners</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/hdbmop" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>HDB MOP</dt> <!--<dd><small>Check all HDB units where MOP has lapsed</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/lease-expiry" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Lease Expiry</dt> <!--<dd><small>Target districts and condos with the highest number of expiring leases</small></dd>--> </dl> </a> </li> <li class="menu-item sub-header"> I have a buyer </li> <li class="menu-item sub-menu-item"> <a href="/analytic/all_listings" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>All Listings</dt> <!--<dd><small>Search for every single listing from all major portals. Send free enquires and SMSs</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/locationscan" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Location Scan</dt> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/shortlist" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Shortlist Projects &amp; Transactions</dt> <!--<dd><small>Find projects matching your investment criteria</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/compare" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Compare Project</dt> <!--<dd><small>Build a comparison portfolio in clicks</small></dd>--> </dl> </a> </li> <li class="menu-item sub-header"> I have a seller </li> <li class="menu-item sub-menu-item"> <a href="/analytic/pricer" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Pricer</dt> <!--<dd><small>Trouble pricing? Let Pricer justify the right price</small></dd>--> </dl> </a> </li> <li class="menu-item sub-menu-item"> <a href="/analytic/latest" style="padding: 5px 10px;"> <dl style="margin-bottom: 0px;"> <dt>Latest Transactions<img style="width:25%;margin-left:5px;display:inline-block;" src="https://sg.tepcdn.com/public/usr/8bua27/1226bb-popular-header-icon.png"></dt> <!--<dd><small>Stay up-to-date, have the latest transactions at your fingertips</small></dd>--> </dl> </a> </li> </ul> </div> </button> <!-- <button style="margin-right:0;margin-top:0;padding: 14.5px 10px !important; color: #fff" type="button" class="navbar-toggle" data-toggle="collapse" data-target=".nav-cast" id="toggle-cast" aria-expanded=false> <div style="font-family:'Poppins' sans-serif !important;font-weight: 300;font-size:15px; display: inline">Cast</div> <i class="fa fa-caret-down" aria-hidden="true" style="display:inline;vertical-align:middle; padding-left: 3px; color:#1779ba "></i> img class="mobile-icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_tools.png"/--> <!-- </button> --> </div> </div> </div> <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1" style="max-height: 857px;"> <ul class="nav navbar-nav navbar-right main-menu hidden-sm hidden-xs"> <li class="menu-item home-button-nav"> <a href="/" class="" style="text-align: center;font-weight:300;margin-right:10px;"> <!--<i class="fa fa-home fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> <!--img class="icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_home.png"/--> Home </a> </li> <li class="menu-item"> <a href="#" class="dropdown-toggle" id="saleDropdown" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" style="font-weight: 300;"> <!--<i class="fa fa-bars fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> Sale <i class="fa fa-caret-down" aria-hidden="true" style="vertical-align: middle !important; padding-left: 3px; color:#1779ba "></i> </a> <ul class="dropdown-menu" id="saleDropdownContent" role="menu" style="background-color: #ffffff;left: 0px; padding: 0; width:160px;"> <li><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/condo-apartment-for-sale"> Condo </a></li> <li><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/landed-for-sale"> Landed </a></li> <li><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/hdb-for-sale"> HDB </a></li> <li><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/commercial-for-sale"> Commercial </a></li> <li class=""><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/industrial-for-sale"> Industrial </a></li> </ul> </li> <li class="menu-item"> <a href="#" class="dropdown-toggle" id="rentDropdown" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> <!--<i class="fa fa-bars fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> Rent <i class="fa fa-caret-down" aria-hidden="true" style="vertical-align: middle !important; padding-left: 3px; color:#1779ba;"></i> </a> <ul class="dropdown-menu" id="rentDropdownContent" role="menu" style="background-color: #ffffff;left: 0px; width: 70px; padding: 0;width:160px;"> <li class=""><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/property-for-room-rental"> Room Rental </a></li> <li class=""><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/condo-apartment-for-rent"> Condo </a></li> <li class=""><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/landed-for-rent"> Landed </a></li> <li class=""><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/hdb-for-rent"> HDB </a></li> <li class=""><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/commercial-for-rent"> Commercial </a></li> <li class=""><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5" href="/industrial-for-rent"> Industrial </a></li> </ul> </li> <li class="menu-item"> <a href="#" class="dropdown-toggle" id="newLaunchesDropdown" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> <!--<i class="fa fa-home fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> <!--img class="icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_home.png"/--> New Launches <i class="fa fa-caret-down" aria-hidden="true" style="vertical-align: middle !important; padding-left: 3px; color:#1779ba;"></i> </a> <ul class="dropdown-menu" id="newLaunchesDropdownContent" role="menu" style="background-color: #ffffff;left: 0px; width: 70px; padding: 0;width:160px;"> <li class=""><a href="/new-launches" style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5"> All New Launches </a></li> <li class=""><a href="/executive-condo" style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5"> Executive Condo </a></li> <li class=""><a href="/overseas" style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important;width: auto;float: left;color: #4a4a4a;margin: 7px 0 10px 15px;cursor: pointer;line-height:1.5"> Overseas </a></li> </ul> </li> <!-- <li class="menu-item tablet-hide"> --> <!-- <a href="/overseas" class="" style="text-align: center;"> --> <!--<i class="fa fa-home fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> <!--img class="icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_home.png"/--> <!-- Overseas --> <!-- </a> --> <!-- </li> --> <li class="menu-item"> <a href="#" class="dropdown-toggle" id="analyticDropdown"data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> <!--<i class="fa fa-calculator fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> <!--img class="icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_tools.png"/--> Analytics <i class="fa fa-caret-down" aria-hidden="true" style="vertical-align: middle !important; padding-left: 3px; color:#1779ba "></i> </a> <ul class="dropdown-menu tools multi-column columns-3" id="analyticDropdownContent"> <div class="row table-row"> <div class="col-sm-4 free-tools"> <ul class="multi-column-dropdown"> <li class="dropdown-header" style="color:#4a4a4a;font-weight: 600;"> Free Tools </li> <li class="">&nbsp;</li> <li class="" style="display: none"> <a href="/ocbc_calculator"><dl><dt>OCBC Affordability Calculator</dt><dd>Understand how much you can afford before buying a property</dd></dl></a> </li> <li> <a href="/gooddeal"> <dl> <dt> Is it a Good Deal? <img style="width:15%;margin-left:5px;display:inline-block;" src="https://sg.tepcdn.com/public/usr/8bua27/9e5072-new-header-icon.png"> </dt> <dd> Assess your purchase price using a combination of EdgeProp tools </dd> </dl> </a> </li> <li class=""> <a href="/affordability-calculator"><dl><dt>Affordability Calculator</dt><dd><small>Check how much you can borrow to buy a home</small></dd></dl></a> </li> <li class=""> <a href="https://get.edgeprop.sg/property-calculators/"><dl><dt>Property Calculators</dt><dd>Calculators for all your property related needs</dd></dl></a> </li> <li> <a href="/en-bloc-calculator"><dl><dt>En Bloc Calculator</dt><dd>Find out if your condo will be the next en-bloc</dd></dl></a> </li> <li> <a href="/hdb-tenure"><dl><dt>My HDB Lease</dt><dd>Find out how many years left before you surrender your HDB</dd></dl></a> </li> <!--<li class=""> <a href="/content/mortgage"><dl><dt>Mortage Calculator</dt><dd><small>Save more on your home plan</small></dd></dl></a> </li>--> <li class=""> <a href="https://www.edgeprop.sg/condo-apartment"><dl><dt>Research</dt><dd>Comprehensive report & price trends of all types of properties</dd></dl></a> </li> <li class=""> <a href="/analytic/edgefairvalue"><dl><dt>Edge Fair Value<img style="width:25%;margin-left:5px;display:inline-block;" src="https://sg.tepcdn.com/public/usr/8bua27/1226bb-popular-header-icon.png"></dt><dd>Find properties listed below market price</dd></dl></a> </li> <li class=""> <a href="/analytic/heatmap"><dl><dt>Heatmap</dt><dd>Interactive map to see the most and least popular neighbourhoods</dd></dl></a> </li> <li class=""> <a href="/market-trends"><dl><dt>Market Trends</dt><dd>What's trending in property market</dd></dl></a> </li> <!-- <li class=""> <a href="/analytic/watchlist"><dl><dt>Watchlist</dt><dd>Keep track of your favourite properties & make better decision</dd></dl></a> </li> --> <li class=""> <a href="/analytic/amenities"><dl><dt>Amenities Check</dt><dd>Check nearby amenities from any location in Singapore</dd></dl></a> </li> <li> <a href="/market-watch/developer-sales"> <dl> <dt> Market Watch </dt> <dd> What's transacting in the property market </dd> </dl> </a> </li> </ul> </div> <div class="col-sm-4"> <ul class="multi-column-dropdown"> <li class="dropdown-header" style="font-weight: 600;"> Premium Tools </li> <li> <div class="dropdown-header-label">Presentation Tool</div> </li> <li class=""> <a href="/landlens"><dl><dt>LandLens<img style="width:25%;margin-left:5px;display:inline-block;" src="https://sg.tepcdn.com/public/usr/8bua27/0a2576-advanced-header-icon.png"></dt><dd>Our enterprise-level solution for users looking for the most advanced research and visualisation tool</dd></dl></a> </li> <li class=""> <a href="/analytic/inspector"><dl><dt>Inspector<img style="width:25%;margin-left:5px;display:inline-block;" src="https://sg.tepcdn.com/public/usr/8bua27/1226bb-popular-header-icon.png"></dt><dd>The latest tool to inspect landed</dd></dl></a> </li> <li> <div class="dropdown-header-label">Research and Analytics Tools</div> </li> <li class=""> <a href="/analytic/tower"><dl><dt>Tower View</dt><dd>View prices arranged in storeys & stacks, first of its kind! Includes floor plan</dd></dl></a> </li> <li class=""> <a href="/analytic/street"><dl><dt>Street View</dt><dd>Street View</dt><dd>Discover property transactions along any street in Singapore</dd></dl></a> </li> <li class=""> <a href="/analytic/landsales"><dl><dt>Land Sales</dt><dd>Stay ahead of the curve. Be the first to work out developer's selling price</dd></dl></a> </li> <li> <div class="dropdown-header-label">Prospecting</div> </li> <li class=""> <a href="/analytic/featuredenquiries"><dl><dt>Featured Enquiries</dt><dd>Real daily leads from buyers and tenants</dd></dl></a> </li> <li class=""> <a href="/analytic/fsbo"><dl><dt>FSBO</dt><dd>Real daily leads from owners and landlords</dd></dl></a> </li> <li class=""> <a href="/analytic/hdbmop"><dl><dt>HDB MOP</dt><dd>Check all HDB units where MOP has lapsed</dd></dl></a> </li> <li class=""> <a href="/analytic/lease-expiry"><dl><dt>Lease Expiry</dt><dd>Target districts and condos with the highest number of expiring leases</dd></dl></a> </li> </ul> </div> <div class="col-sm-4"> <ul class="multi-column-dropdown"> <li> <a href="/pricing-plan" class="button">Subscription Packages</a> </li> <li> <div class="dropdown-header-label">I have a buyer</div> </li> <li class=""> <a href="/analytic/all_listings"><dl><dt>All Listings</dt><dd>Search for every single listing from all major portals. Send free enquires and SMSes</dd></dl></a> </li> <li class=""> <a href="/analytic/locationscan"><dl><dt>Location Scan</dt><dd>Instantly have a bird's eye view on all projects near a location</dd></dl></a> </li> <li class=""> <a href="/analytic/shortlist"><dl><dt>Shortlist Projects & Transactions</dt><dd>Find projects matching your investment criteria</dd></dl></a> </li> <li class=""> <a href="/analytic/compare"><dl><dt>Compare Projects</dt><dd>Build a comparison portfolio in clicks</dd></dl></a> </li> <li> <div class="dropdown-header-label">I have a seller</div> </li> <li class=""> <a href="/analytic/pricer"><dl><dt>Pricer</dt><dd>Trouble pricing listing? Let Pricer justify the right price</dd></dl></a> </li> <li class=""> <a href="/analytic/latest"><dl><dt>Latest Transactions<img style="width:25%;margin-left:5px;display:inline-block;" src="https://sg.tepcdn.com/public/usr/8bua27/1226bb-popular-header-icon.png"></dt><dd>Stay up-to-date, have the latest transactions at your fingertips</dd></dl></a> </li> </ul> </div> </div> </ul> </li> <li class="menu-item tablet-hide"> <a href="/property-news" class="" style="text-align: center;"> <!--<i class="fa fa-newspaper-o fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> <!--img class="icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_articles.png"/--> Property News </a> </li> <li class="menu-item tablet-show"> <a href="/property-news" class="" style="text-align: center;"> <!--<i class="fa fa-newspaper-o fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> <!--img class="icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_articles.png"/--> News </a> </li> <li class="menu-item tablet-hide"> <div class="menu-red-dot"></div> <a href="https://buddy.edgeprop.sg" class="" style="text-align: center;"> <!--<i class="fa fa-newspaper-o fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> <!--img class="icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_articles.png"/--> Ask Buddy </a> </li> <li class="menu-item tablet-show"> <div class="menu-red-dot"></div> <a href="https://buddy.edgeprop.sg" class="" style="text-align: center;"> <!--<i class="fa fa-newspaper-o fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> <!--img class="icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_articles.png"/--> Ask Buddy </a> </li> <li class="menu-item"> <a href="#" class="dropdown-toggle" id="agentDropdown" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" style="font-weight: 300;"> <!--<i class="fa fa-bars fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> Agent <i class="fa fa-caret-down" aria-hidden="true" style="vertical-align: middle !important; padding-left: 3px; color:#1779ba "></i> </a> <ul class="dropdown-menu" id="agentDropdownContent" role="menu" style="background-color: #f5f5f5;left: 0px; padding: 0; width:140px;"> <li><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important" href="/agent-product"> I'm an Agent </a></li> <li><a style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important" href="/property-agents"> Find Agent </a></li> </ul> </li> <li class="menu-item"> <a class="left_reg dropdown-toggle" id="languageDropdown" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" href="#" style="font-weight: 300;"> <i style="font-size:20px;color:;margin-right:8px;" class="fa fa fa-globe icon" aria-hidden="true"></i> <span style="vertical-align: top;" id="lang-indicator">EN</span> <i class="fa fa-caret-down" aria-hidden="true" style="vertical-align: middle !important; padding-left: 3px; color:#1779ba "></i> </a> <ul class="dropdown-menu" id="languageDropdownContent" role="menu" style="background-color: #f5f5f5; top: 50px; left: -40px; padding: 0;"> <li> <a class="en_language" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> <input class="language-radio" type="radio"/> &nbsp; EN - English </a> </li> <li> <a class="cn_language" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> <input class="language-radio" type="radio"/> &nbsp; CN - 中文 </a> </li> </ul> </li> <li class="menu-item"> <a class="left_reg dropdown-toggle" id="registerDropdown" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" href="#" style="font-weight: 300;"> Register <i class="fa fa-caret-down" aria-hidden="true" style="vertical-align: middle !important; padding-left: 3px; color:#1779ba "></i> </a> <ul class="dropdown-menu" id="registerDropdownContent" role="menu" style="background-color: #f5f5f5; top: 50px; left: 0px; padding: 0;"> <li> <a class="user_register_popup" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> User </a> </li> <li> <a class="agent_register_popup" style="color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> Agent </a> </li> </ul> </li> <li class="menu-item"> <a class="left_reg dropdown-toggle" id="loginDropdown" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" href="#" style="font-weight: 300;"> Login <i class="fa fa-caret-down" aria-hidden="true" style="vertical-align: middle !important; padding-left: 3px; color:#1779ba "></i> </a> <ul class="dropdown-menu" id="loginDropdownContent" role="menu" style="background-color: #f5f5f5; top: 50px; left: -40px; padding: 0;"> <li> <a class="user_login_popup" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> User </a> </li> <li> <a class="agent_login_popup" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> Agent </a> </li> <!-- <li> <a class="test" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> LOGIN AGENT </a> </li> <li> <a class="test2" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> OTP Verification </a> </li> --> <!-- <li> <a class="agent_otp_verificationlogin" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> OTP Veri Login </a> </li> <li> <a class="agent_otp_success" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> OTP Success </a> </li> <li> <a class="agent_otp_failed" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> OTP Failed </a> </li> <li> <a class="agent_login_success" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> Login Success </a> </li> <li> <a class="agent_signup_success" style="cursor:pointer;color: #4a4a4a; padding: 6px 15px;font-weight:400 !important;font-size:13px !important"> SignUp Success </a> </li> --> </ul> </li> <li class="menu-item"> <a href="#" class="hamburger-menu-toggle" id="hamburgerDropdownToggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> <!--<i class="fa fa-bars fa-2x" aria-hidden="true" style="vertical-align: middle !important;"></i>--> <img class="drawer-icons" src="https://sg.tepcdn.com/web4/public/img/icons/menu_more.png"/> </a> <ul class="dropdown-menu property-search" id="dropdown-side-menu" role="menu" style="top: 42px !important;padding-top: 10px;width:288px;margin-right:-23px;overflow-y:scroll;height:auto;padding-bottom:12px;z-index:999;"> <!--li class="dropdown-header"><a href="#"></a></li> <li class=""><a href="/property-search?listing_type=sale">For Sale</a></li> <li class=""><a href="/property-search?listing_type=rental">For Rent</a></li> <li class=""><a href="/property-search?listing_type=rental&rental_type=room">For Room Rental</a></li--> <!--li class="dropdown-submenu"><a href="/singapore"></a></li> <li class="dropdown-submenu"><a href="/property-search?listing_type=sale"></a></li> <li class="dropdown-submenu"><a href="/analytic/main"></a></li> <li class="dropdown-submenu"><a href="/property-near-mrt"></a></li> <li class="dropdown-submenu"><a href="/property-near-school"></a></li--> <li class="dropdown-header"><a href="/condo-apartment">Condo</a></li> <!--li class="dropdown-submenu"><a href="/condo-directory"></a></li> <li class="dropdown-submenu"><a href="/property-search?listing_type=sale&property_type=9,103,107,105,106,104"></a></li--> <!--<li class=""><a href="/property-search?listing_type=sale&property_type=10,11,12">By Map</a></li>--> <li class="dropdown-header"><a href="/hdb">HDB</a></li> <!--li class="dropdown-submenu"><a href="/hdb-directory"></a></li> <li class="dropdown-submenu"><a href="/property-search?listing_type=sale&property_type=13,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,99,100,96,101,102,97,98"></a></li--> <!--<li class=""><a href="/property-search?listing_type=sale&property_type=14,15,16,17,18,19,20">By Map</a></li>--> <li class="dropdown-header"><a href="/landed-house">Landed</a></li> <li class="dropdown-header"><a href="/commercial">Commercial</a></li> <li class="dropdown-header"><a href="/industrial">Industrial</a></li> <li class="dropdown-header"><a href="/cast">Cast</a></li> <!--li class="dropdown-header"></li> <li class="dropdown-submenu"><a href="/agent-product"></a></li> <li class="dropdown-submenu"><a href="/property-agents"></a></li> <li class="dropdown-header"><a href="/overseas"></a></li--> <li class="dropdown-header"><a href="/content/mortgage">Mortgage</a></li> <li class="dropdown-header"><a href="/events">Upcoming Events</a></li> <li class="dropdown-header"><a href="/en-bloc">En Bloc</a></li> <li class="dropdown-header"><a href="/property-news/special-feature">Special Feature</a></li> <li class="dropdown-header"><a href="/online-newspaper">Online Newspaper</a></li> <li class="dropdown-header"><a href="https://www.theedgesingapore.com">The Edge SG</a></li> </ul> </li> </ul> <ul class="nav navbar-nav mobile-menu hidden-lg hidden-md"> <li class="dropdown-header" style="padding-left: 10px;" onclick="sideMobileHeaderClick('arrow-non-login')"> Login <div id="arrow-non-login" class="header-menu-item-label-mobile-arrow" data-jsx="927365350" style="display: inline-block;"> <img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/> </div> </li> <li><a class="user_login_popup" style="color: #fff;padding-top:0;" href="#">User</a></li> <li><a class="agent_login_popup" style="color: #fff;padding-top:0;" href="#">Agent</a></li> <li class="dropdown-header" style="padding-left: 10px;" onclick="sideMobileHeaderClick('arrow-non-register')"> Register <div id="arrow-non-register" class="header-menu-item-label-mobile-arrow" data-jsx="927365350" style="display: inline-block;"> <img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/> </div> </li> <li><a class="user_register_popup" style="color: #fff;padding-top:0;" href="#">User</a></li> <li><a class="agent_register_popup" style="color: #fff;padding-top:0;" href="#">Agent</a></li> <li class="dropdown-header" style="padding-left: 10px;" onclick="sideMobileHeaderClick('arrow-buy')"> Buy <div id="arrow-buy" class="header-menu-item-label-mobile-arrow" data-jsx="927365350" style="display: inline-block;"> <img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/> </div> </li> <li class="dropdown-submenu sub-buy"><a href="/condo-apartment-for-sale">Condo</a></li> <li class="dropdown-submenu sub-buy"><a href="/landed-for-sale">Landed</a></li> <li class="dropdown-submenu sub-buy"><a href="/hdb-for-sale">HDB</a></li> <li class="dropdown-submenu sub-buy"><a href="/commercial-for-sale">Commercial</a></li> <li class="dropdown-submenu sub-buy"><a href="/industrial-for-sale">Industrial</a></li> <li class="dropdown-header" style="padding-left: 10px;" onclick="sideMobileHeaderClick('arrow-rent')"> Rent <div id="arrow-rent" class="header-menu-item-label-mobile-arrow" data-jsx="927365350" style="display: inline-block;"> <img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/> </div> </li> <li class="dropdown-submenu sub-rent"><a href="/property-for-room-rental">Room Rental</a></li> <li class="dropdown-submenu sub-rent"><a href="/condo-apartment-for-rent">Condo</a></li> <li class="dropdown-submenu sub-rent"><a href="/landed-for-rent">Landed</a></li> <li class="dropdown-submenu sub-rent"><a href="/hdb-for-rent">HDB</a></li> <li class="dropdown-submenu sub-rent"><a href="/commercial-for-rent">Commercial</a></li> <li class="dropdown-submenu sub-rent"><a href="/industrial-for-rent">Industrial</a></li> <li class="dropdown-header" style="padding-left: 10px;" onclick="sideMobileHeaderClick('arrow-new-launches')"> New Launches <div id="arrow-new-launches" class="header-menu-item-label-mobile-arrow" data-jsx="927365350" style="display: inline-block;"> <img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/> </div> </li> <li class="dropdown-submenu sub-new-launches"><a href="/new-launches">All New Launches</a></li> <li class="dropdown-submenu sub-new-launches"><a href="/executive-condo">Executive Condo</a></li> <li class="dropdown-submenu sub-new-launches"><a href="/overseas">Overseas</a></li> <li class="dropdown-header" style="padding-left: 10px;"> <a href="/cast">Cast <!--a href="#" class="castlinks" data-toggle="collapse" data-target=".nav-cast" id="toggle-cast" aria-expanded=false--> <!--div class="header-menu-item-label-mobile" data-jsx="927365350" style="display: inline-block;">New</div--> </a> </li> <li class="dropdown-header" onclick="sideMobileHeaderClick('arrow-agent')"> Agent <div id="arrow-agent" class="header-menu-item-label-mobile-arrow" data-jsx="927365350" style="display: inline-block;"> <img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/> </div> </li> <li class="dropdown-submenu sub-agent"><a href="/agent-product">I'm an Agent</a></li> <li class="dropdown-submenu sub-agent"><a href="/property-agents">Find Agent</a></li> <li class="dropdown-header" style="padding-left: 10px;" onclick="sideMobileHeaderClick('arrow-languages')"> Languages <div id="arrow-languages" class="header-menu-item-label-mobile-arrow" data-jsx="927365350" style="display: inline-block;"> <img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/> </div> </li> <li class="dropdown-submenu sub-language"><a class="en_language"><input class="language-radio" type="radio"/> &nbsp; EN - English</a></li> <li class="dropdown-submenu sub-language"><a class="cn_language"><input class="language-radio" type="radio"/> &nbsp; CN - 中文</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="/condo-apartment">Condo</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="/hdb">HDB</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="/landed-house">Landed</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="/commercial">Commercial</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="/industrial">Industrial</a></li> <li class="dropdown-header" style="padding-left: 10px; display: inline-block;"><div class="side-menu-red-dot"></div><a href="https://buddy.edgeprop.sg">Ask Buddy</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="/content/mortgage">Mortgage</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="/events">Upcoming Events</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="/en-bloc">En Bloc</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="/property-news/special-feature">Special Feature</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="/online-newspaper">Online Newspaper</a></li> <li class="dropdown-header" style="padding-left: 10px;"><a href="https://www.theedgesingapore.com">The Edge SG</a></li> <!--li class="dropdown-header" style="padding-left: 10px;"> <a href="/new-launches"></a> </li> <li class="dropdown-header" style="padding-left: 10px;"> <a href="/overseas"></a> </li> <li class="dropdown-header" style="padding-left: 10px;"></li--> <!-- <li class="dropdown-submenu"><a href="/property-search?listing_type=sale">For Sale</a></li> <li class="dropdown-submenu"><a href="/property-search?listing_type=rental">For Rent</a></li> <li class="dropdown-submenu"><a href="/property-search?listing_type=rental&rental_type=room">For Room Rental</a></li> --> <!--li class="dropdown-submenu"><a href="/singapore"></a></li> <li class="dropdown-submenu"><a href="/property-search?listing_type=sale"></a></li> <li class="dropdown-submenu"><a href="/analytic/main"></a></li> <li class="dropdown-submenu"><a href="/property-near-mrt"></a></li> <li class="dropdown-submenu"><a href="/property-near-school"></a></li--> <!--<li class=""><a href="/property-search?listing_type=sale&property_type=10,11,12">By Map</a></li>--> <!--<li class=""><a href="/property-search?listing_type=sale&property_type=14,15,16,17,18,19,20">By Map</a></li>--> </ul> </div> <div class="collapse navbar-collapse nav-cast " id="cast" style="height: 70vh !important; min-height:80vh !important; display:none !important;"> <ul class="nav navbar-nav mobile-menu hidden-lg hidden-md" style="padding: 0 !important; pull-left;height: 70vh !important; min-height:80vh !important;"> <li id="livestreamBack" class="menu-item sub-menu-item" style="padding: 5px 10px 5px 0px !important;background-color: rgb(39, 80, 117);"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;"> <img src="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/styles/listing_gallery_full/public/1892228161586700183ic_arrow_back.png" data-jsx="1834057000" style="width: 45px; display: block;"> </dt> </dl> </li> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast" style="padding: 5px 10px;left: 0px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">Cast</dt> </dl> </a> </li> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast/featured/trending" style="padding: 5px 10px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">Trending</dt> </dl> </a> </li> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast/channels" style="padding: 5px 10px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">Channels</dt> </dl> </a> </li> <hr> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast/categories/hdb" style="padding: 5px 10px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">HDB</dt> </dl> </a> </li> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast/categories/condo" style="padding: 5px 10px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">Condo</dt> </dl> </a> </li> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast/categories/landed" style="padding: 5px 10px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">Landed</dt> </dl> </a> </li> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast/categories/new-launch" style="padding: 5px 10px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">New Launch</dt> </dl> </a> </li> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast/categories/commercial" style="padding: 5px 10px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">Commercial</dt> </dl> </a> </li> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast/categories/industrial" style="padding: 5px 10px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">Industrial</dt> </dl> </a> </li> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast/categories/education" style="padding: 5px 10px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">Education</dt> </dl> </a> </li> <li class="menu-item sub-menu-item" style="padding: 5px 10px 5px 10px !important;background-color: rgb(39, 80, 117);"> <a href="/cast/categories/interior-design" style="padding: 5px 10px;text-align: left;"> <dl style="margin-bottom: 0px;"> <dt style="font-size: 16px;font-weight: 300;">Interior Design</dt> </dl> </a> </li> </ul> </div> <!--placeholder for old mobile pro tools dropdown--> </div> </nav> <div> <div > <div > <div> </div> <div> <div class="region region-leaderboard"> <section id="block-block-22" class="block block-block clearfix"> <!-- /102900458/Leaderboard_ROS --> <div id='div-gpt-ad-1506045496047-0'> <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1506045496047-0'); }); </script> </div> </section> </div> </div> <div class="hidden-sm hidden-xs col-md-2 col-lg-2"> <div style="margin-top:15px;" class="fb-like" data-href="https://www.facebook.com/edgepropsg/" data-width="50" data-layout="box_count" data-action="like" data-show-faces="false" data-share="false"></div> </div> </div> </div> </div> <style> .blockUI.blockMsg.blockPage .registration-agent-wall div.message, .validateTips{ display:none; } .increasedzindexclass { z-index: 999999; } a#link_login:hover{ text-decoration: underline!important; cursor:pointer; } #agent_registration_form_popup .row { /* margin: 0 !important; */ } #registration_form .checkbox label { padding-left: 0; } .tac-parent-wrapper { padding-left: 45px !important; } .tac-wrapper { display: inline-flex; align-items: center; } .tac-checkbox { margin-right: 8px; } .tac-checkbox input[type="checkbox"] { position: inherit; margin-left: 0; } .tac-text h6 { margin: 0 !important; line-height: unset; } .submit-row-wrapper { padding-right: 30px !important; text-align: right; } .submit-row-wrapper button { cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 50%; max-width: 233px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; } .submit-row-wrapper h6 { width: 50%; max-width: 233px; margin-left: auto; text-align: center; } .no-pad-left-user-register { padding-left: 0; } .no-pad-right-user-register { padding-right: 0; } #registration_form { display: inline; } .spacing-mobile-user-register { margin-top: 0px; } .form-control-user-register { border-radius: 5px; height: 30px; padding: 18px 10px; } .country-code .select2-container .select2-selection--single{ height: 38px; } .country-code .select2-selection__rendered{ line-height: 38px; } .country-code .select2-selection__arrow{ height: 38px; } .country-code .select2-container--default .select2-selection--single .select2-selection__rendered{ line-height: 38px; } .country-code .select2-container--default .select2-selection--single .select2-selection__arrow{ height: 38px; } @media only screen and (min-width: 0px) and (max-width: 991px) { .submit-row-wrapper { padding-right: 0.5rem !important; text-align: center; } .spacing-mobile-user-register { margin-top: 20px; } .submit-row-wrapper button { width: 70%; max-width: 183px; } .submit-row-wrapper h6 { width: 70%; max-width: 183px; margin: 0 auto; text-align: center; } .cea-no-padding { padding: 0 !important; } .no-pad-left-user-register, .no-pad-right-user-register { padding: 0; } .input-user-pn { width: 100%; } .reg-popup { max-height: calc(100vh - 24px); overflow: auto; overflow-x: hidden; top: 406px !important; } } .register-spinner-user{ display: none; position: absolute; width: 100%; background-color: gray; border-radius: 100px; padding: 5px 20px; opacity: .4; } </style> <div id="registration_form" style="display:none" class="container"> <div> </div> <div class="row registration"> <div class="col-md-12 col-sm-12 col-xs-12 "> <a id='close_btn_form_regis' onclick="wall.wallDown();" class="pull-right" style="color:#000; text-decoration:none; cursor:pointer;">X</a> <!-- <div class="row"> <div class="col-md-12 col-sm-12 col-xs-12"> <button id="btn_close" onclick="wall.wallDown();" type="button" class="btn btn-link btn-lg pull-right" style="margin-top: 15px; margin-bottom: 15px; margin-right: 0px; padding: 0px; height: 22px; width: 22px;"> <span class="glyphicon glyphicon-remove" aria-hidden="true"></span> </button> </div> </div> --> <div class="row"> <!-- <div class="col-md-6 col-sm-8 col-xs-9"><h2 id="form_title"></h2></div> --> <div class="col-md-6 col-xs-12"><font color="#034f84"><h4><font face="Poppins"><b id='form_title' class="col-md-12">User Registration</b></font></h4></font></div><br><br><br> <!-- <div class="title">Agent Registration</div> --> <!-- <div class="col-md-6 col-sm-8 col-xs-9"><h2>Agent Dashboard </h2></div> --> </div> <form role="form" id="agent_registration_form_popup" method="post" action="/property_user_reg_popup_submit"> <!-- <form role="form" id="agent_registration_form_popup" method="post"> --> <input type="hidden" id="form_id" name="form_id" value="agent_registration_form_popup"> <input type="hidden" id="is_agent" name="is_agent" value=""> <input type="hidden" id="dest" name="dest" value="/market-watch/developer-sales"> <input type="hidden" id="is_otp_enabled" name="is_otp_enabled" value="1"> <div class="row"> <div class="agent_details col-md-12"> <div class="col-md-12"> <div class="col-md-6 col-sm-12 col-xs-12 cea-no-padding" style="padding-left:0px;"> <div class="form-group"> <label class="pull-left" for="agent_cea">CEA Number</label> <label id="agent_cea-error" class="error pull-right" for="agent_cea"></label> <input type="text" class="form-control form-control-user-register" id="agent_cea" name="agent_cea" placeholder="CEA Number"/> </div> </div> <div class="col-md-6 col-sm-12 col-xs-12 cea-no-padding" style="padding-right:0px;"> <div class="form-group"> <label class="pull-left" for="agent_license">Agency License Number</label> <label id="agent_license-error" class="error pull-right" for="agent_license"></label> <input type="text" class="form-control form-control-user-register" id="agent_license" name="agent_license" style="background-color:lightgrey" readonly="readonly" /> </div> </div> </div> <div class="col-md-12"> <div class="form-group"> <label class="pull-left" for="agent_agency">Agency Name</label> <label id="sel_agent_agency-error" class="error pull-right" for="sel_agent_agency"></label> <input type="text" class="form-control form-control-user-register" id="agent_agency" name="agent_agency" style="display: none;"/> <select class="form-control" id="sel_agent_agency" name="sel_agent_agency" style="height:37px;"> <option value="">Please select Agency Name.</option> <option value='L3010954F'>123GOT REALTY PTE. LTD.</option><option value='L3010867A'>168 REALTY PTE. LTD.</option><option value='L3010373D'>1PSF PTE. LIMITED</option><option value='L3010810H'>1WORLD PROPERTIES PTE. LTD.</option><option value='L3008995F'>2000 NETWORK REALTY PTE LTD</option><option value='L3010859J'>360 TOTAL PROPERTY SOLUTIONS LLP</option><option value='L3010676H'>3IN1 REALTY LLP</option><option value='L3010915E'>3L REALTORS PTE. LTD.</option><option value='L3009789E'>3V REALTY CONSULTANTS</option><option value='L3004790A'>5 STAR PROPERTIES & MANAGEMENT</option><option value='L3010641E'>8 INTERNATIONAL REAL ESTATE PTE. LTD.</option><option value='L3004967E'>88 REAL ESTATE</option><option value='L3006467E'>A & G REAL ESTATE PTE LTD</option><option value='L3010340H'>A STAR REAL ESTATE PTE LTD</option><option value='L3004352H'>A V CONSULTANTS PTE LTD</option><option value='L3009380G'>A'FLUENCE PROFESSIONALS PTE. LTD.</option><option value='L3008795A'>A-PLUS PROPERTIES</option><option value='L3005382E'>AAKLAND PROPERTY CONSULTANTS</option><option value='L3009067K'>AAM REALTY INTERNATIONAL PTE LTD</option><option value='L3009521I'>AAN PTE. LTD.</option><option value='L3009627I'>ABACUS PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3010660A'>ABBA REALTY PTE. LTD.</option><option value='L3009563E'>ABSOLUTE REALTY PTE. LTD.</option><option value='L3010710A'>ABUNDANT AGENCY</option><option value='L3008991D'>AC NETWORK PTE LTD</option><option value='L3003736H'>ACCENT PROPERTIES</option><option value='L3010402A'>ACE HOME NETWORK LLP</option><option value='L3007660J'>ACEPAC AGENCY PTE LTD</option><option value='L3006126B'>ACES ASSETS MANAGEMENT PTE LTD</option><option value='L3004879E'>ACQUIRE PROPERTIES</option><option value='L3006880I'>ACRES INTERNATIONAL</option><option value='L3008962K'>ACRES PROPERTY MANAGEMENT SERVICES</option><option value='L3009365A'>ACRES REALTY</option><option value='L3006263I'>ACT LINK REALTY</option><option value='L3007166F'>ACTIVE REALTY PTE LTD</option><option value='L3005421I'>ACTS REALTY</option><option value='L3010477C'>ADAGIO INTERNATIONAL PTE. LTD.</option><option value='L3005394B'>ADDFIELD PROPERTIES</option><option value='L3005579A'>ADEPT PROPERTY</option><option value='L3003690F'>ADHOME REALTY</option><option value='L3002922F'>ADMER REALTY (S) PTE LTD</option><option value='L3008456J'>ADMIRALTY DEVELOPMENT MANAGEMENT PTE LTD</option><option value='L3010334C'>ADVANCE LINK PROPERTIES PTE LTD</option><option value='L3010847G'>ADVANCED PROPERTY INVESTMENTS</option><option value='L3010592C'>ADVANTAGE REALTY PTE. LTD.</option><option value='L3007594C'>AEP REALTY</option><option value='L3010313J'>AF HOLDINGS PTE. LTD.</option><option value='L3010463C'>AFFLUENCE AGENCY PTE. LTD.</option><option value='L3007847J'>AFFLUENT REALTY</option><option value='L3005211H'>AFRA PROPERTIES & MANAGEMENT</option><option value='L3008990I'>AGENT CENTRE PTE LTD</option><option value='L3010822A'>AGILITY PARTNERS PTE. LTD.</option><option value='L3005450B'>AGLEAM REALTY</option><option value='L3000606G'>AIK SIEW TONG LTD</option><option value='L3010795J'>AIMS APAC PROPERTY MANAGEMENT PTE. LTD.</option><option value='L3006766A'>AIRLAND PROPERTIES MANAGEMENT</option><option value='L3008992J'>AISAY PROPERTY INTERNATIONAL</option><option value='L3009259J'>AISING INVESTMENTS PTE LTD</option><option value='L3010496Z'>AK REALTY PTE. LTD.</option><option value='L3010423D'>AKG REALTY PTE. LTD.</option><option value='L3006792I'>AL HOUSING</option><option value='L3010673C'>ALAN MARY & ASSOCIATES PTE. LTD.</option><option value='L3007625A'>ALAN TAY REALTY NETWORK</option><option value='L3009744B'>ALCHEMY ASSETS ASIA PTE. LTD.</option><option value='L3005570B'>ALCO PROPERTIES</option><option value='L3010928G'>ALEVATION REALTORS PRIVATE LIMITED</option><option value='L3006185E'>ALISTER & LEE PROPERTIES</option><option value='L3010404H'>ALL PROPERTY SOLUTIONS SINGAPORE PTE. LTD.</option><option value='L3008019A'>ALLENBY PROPERTY & SERVICES</option><option value='L3010888D'>ALLIANCE PROPERTY GROUPS</option><option value='L3009351C'>ALLIANCE REALTY MANAGEMENT PTE. LTD.</option><option value='L3001776G'>ALLISON ENTERPRISES PTE LTD</option><option value='L3002572I'>ALLSTAR REALTY ASSOCIATES</option><option value='L3008384K'>ALLVIEW MARKETING NETWORK</option><option value='L3010752G'>ALPHA REAL ESTATE PTE. LTD.</option><option value='L3009640C'>ALSOVEC PROPERTY NETWORK PTE. LTD.</option><option value='L3010711Z'>ALTECH PROPERTIES CONSULTANT</option><option value='L3010794B'>ALTECH PROPERTIES CONSULTANT PTE. LTD.</option><option value='L3010894I'>ALTITUDE REAL ESTATE LLP</option><option value='L3007790F'>ALWIN REALTY</option><option value='L3003886G'>AMAC APPRAISALS & PROPERTY CONSULTANTS PTE LTD</option><option value='L3006732K'>AMAX REALTY PTE LTD</option><option value='L3008211B'>AMAZON PROPERTIES</option><option value='L3006194F'>AMBEL PROPERTY MANAGEMENT & CONSULTANTS PTE LTD</option><option value='L3010410B'>AMICO MANAGEMENT SERVICES PTE. LTD.</option><option value='L3009322J'>AMOZ REAL ESTATE</option><option value='L3007299I'>AMPLE INTERNATIONAL PTE LTD</option><option value='L3002798I'>AMWAYS REALTY AGENCY</option><option value='L3006206G'>ANABA REALTY CONSULTANTS</option><option value='L3008891G'>ANCIENT NATURE HOME PROPERTIES</option><option value='L3004510F'>ANCLA REALTY PTE LTD</option><option value='L3009573A'>ANDERSON PROPERTY CONSULTANTS PTE LTD</option><option value='L3003615B'>ANDREW FOO REAL ESTATE AGENCY</option><option value='L3007219H'>ANDRIC PROPERTIES</option><option value='L3006940K'>ANG & ASSOCIATES REALTY PTE LTD</option><option value='L3006578D'>ANGIE HOMELINK</option><option value='L3010736E'>ANGSANA PROPERTY SERVICES PTE. LTD.</option><option value='L3010732B'>ANJ SINGAPORE PROPERTIES PTE. LTD.</option><option value='L3008669G'>ANNEC PROPERTY SERVICES</option><option value='L3010416A'>ANOINTED CAPSTONE PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3010889B'>ANTBRACE PTE. LTD.</option><option value='L3010617B'>ANTHILL REALTORS PTE LTD</option><option value='L3007343A'>ANZ REALTY</option><option value='L3009441D'>APAC PROPERTIES PTE LTD</option><option value='L3009377I'>APEX LINK PROPERTIES PTE LTD</option><option value='L3010764J'>APM PROPERTY MANAGEMENT PTE. LTD.</option><option value='L3008940G'>APPLEONE SERVICES PTE LTD</option><option value='L3009524E'>APPRAISAL GROUP PROPERTY CONSULTANTS PTE LTD</option><option value='L3009780F'>APTITUDE REAL ESTATE ADVISORY PTE LTD</option><option value='L3010670I'>ARA LOGOS PROPERTY MANAGEMENT PTE LTD</option><option value='L3010507I'>ARC PROPERTIES</option><option value='L3010893J'>ARCADIA CONSULTING PTE. LTD.</option><option value='L3007413J'>AREA PROPERTY</option><option value='L3010616D'>AREA REAL ESTATE PTE. LTD.</option><option value='L3008248J'>ARECO INTERNATIONAL PTE LTD</option><option value='L3004556D'>ARIA HOUSING PTE LTD</option><option value='L3006719F'>ARIES PROPERTY SERVICES</option><option value='L3009859C'>ARISEN PROPERTIES PTE. LTD.</option><option value='L3009468E'>ARISTOCRAT REAL ESTATE PTE. LTD.</option><option value='L3005144F'>ARIZON HOUSING</option><option value='L3010322Z'>ARK PROPERTY SOLUTIONS PTE. LTD.</option><option value='L3010380G'>ARK REAL ESTATE PRIVATE LIMITED</option><option value='L3009450E'>ARK REALTY PTE. LTD.</option><option value='L3009371F'>ARKS HOMES PRIVATE LIMITED</option><option value='L3010618J'>ARRAY REALTY PTE LTD</option><option value='L3007706A'>ART REALTY PTE LTD</option><option value='L3007208F'>ARTHUR HOUSING</option><option value='L3009843D'>AS REALTY</option><option value='L3010560E'>ASCEND PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3010892B'>ASCENDAS SERVICES PTE LTD</option><option value='L3010393I'>ASCENDO MARKETING PRIVATE LIMITED</option><option value='L3006947I'>ASCENT PROPERTIES & INVESTMENT</option><option value='L3009724J'>ASCENT REALTY PTE. LTD.</option><option value='L3007916B'>ASHBURTON REALTY</option><option value='L3004916H'>ASHLEY REALTY</option><option value='L3010804C'>ASHRON PROPERTY NETWORK</option><option value='L3010773Z'>ASIA BAY CAPITAL PTE. LTD.</option><option value='L3009169I'>ASIA BREEZE PTE LTD</option><option value='L3009345I'>ASIA GROUP PTE. LTD.</option><option value='L3009488H'>ASIA HOMES</option><option value='L3008342D'>ASIA PREMIER PROPERTY CONSULTANTS PTE LTD</option><option value='L3008068H'>ASIA PROPERTIES CONSULTANT</option><option value='L3005386G'>ASIA PROPERTY NETWORK PTE LTD</option><option value='L3007306B'>ASIA USA REALTY (SINGAPORE) ASIAHOMES.COM PTE LTD</option><option value='L3007354C'>ASIA-ELITE REALTY NETWORK PTE LTD</option><option value='L3010519B'>ASIAGATE REALTY PTE LTD</option><option value='L3009821K'>ASIALINK REALTY PTE. LTD.</option><option value='L3010741A'>ASIAMALLS MANAGEMENT PTE. LTD.</option><option value='L3010339D'>ASIAN APPRAISAL COMPANY PRIVATE LIMITED</option><option value='L3009364F'>ASIAN HOMESEARCH PTE. LTD.</option><option value='L3010623G'>ASIANPRIME PROPERTIES PTE LTD</option><option value='L3010841H'>ASIANPRIME REALTY PTE. LTD.</option><option value='L3008444B'>ASIAPAC PROPERTY CONSULTANTS</option><option value='L3010330J'>ASIAPAC REAL ESTATE SERVICES PTE LTD</option><option value='L3005745E'>ASPAC PROPERTY CONSULTANTS PTE LTD</option><option value='L3007571D'>ASPECT REALTY</option><option value='L3010765I'>ASSET INVESTMENT BROKERS PTE. LTD.</option><option value='L3010497H'>ASSET PROPERTY PRIVATE LIMITED</option><option value='L3009654A'>ASSETS CONSULTANCY ENTERPRISE PTE. LTD.</option><option value='L3006653A'>ASSETS DEVELOPMENT REALTY</option><option value='L3010809D'>ASSETS DEVELOPMENT REALTY PTE. LTD.</option><option value='L3009823A'>ASSOCIATED PROPERTY CONSULTANTS PTE LTD</option><option value='L3010904Z'>ASSURED REALTY NETWORKS</option><option value='L3010890F'>ASTRA REALTY PTE. LTD.</option><option value='L3007743K'>ASTRO REAL ESTATE</option><option value='L3010552D'>ASTRO REAL ESTATE ALLIANCE PTE. LTD.</option><option value='L3008064F'>AT21 PROPERTIES PTE LTD</option><option value='L3001195K'>ATCORON TRADES</option><option value='L3010786A'>ATEXEN PROPERTIES AND INVESTMENT PTE.LTD.</option><option value='L3003536C'>ATLANTIC REALTY MANAGEMENT SERVICES</option><option value='L3010698I'>ATOM REALTY</option><option value='L3010817E'>ATTIC REALTY & PROPERTY CONSULTANTS</option><option value='L3009668J'>ATTIC REALTY PTE. LTD.</option><option value='L3010748I'>AUCTIONJIA PTE. LTD.</option><option value='L3009328B'>AUDANTE REALTY PTE. LTD.</option><option value='L3010356D'>AUSSIEPROPERTY.COM</option><option value='L3010629F'>AUSWELL GROUP (SINGAPORE) PTE. LTD.</option><option value='L3010955D'>AUTUMN PROPERTY PTE. LTD.</option><option value='L3010615F'>AVANT GARDE REALTY PTE LTD</option><option value='L3010056E'>AVERON SERVICES</option><option value='L3003801I'>AVILITE INDUSTRIES & PROPERTIES PTE LTD</option><option value='L3007023G'>AVIS PROPERTY CONSULTANTS PTE LTD</option><option value='L3010647D'>AW PROPERTY GROUP</option><option value='L3007408K'>AWJ PROPERTIES</option><option value='L3009661A'>AXIS REALTY PTE. LTD.</option><option value='L3001628I'>B & B PTE LTD</option><option value='L3007036J'>B & I ASSOCIATES</option><option value='L3003766G'>B K HOUSING AGENT</option><option value='L3010694F'>B-LOT SINGAPORE PTE. LTD.</option><option value='L3006043A'>B. G. KENG REALTY</option><option value='L3008601E'>BAI JIA LI REALTY</option><option value='L3008777J'>BAIRD INTERNATIONAL ALLIANCE PROPERTY SERVICES</option><option value='L3008700G'>BALD EAGLE PROPERTIES</option><option value='L3002941C'>BANYAN PROPERTIES & MANAGEMENT PTE LTD</option><option value='L3002759I'>BARNWELL ENTERPRISES PTE LTD</option><option value='L3006330K'>BAY PROPERTIES PTE LTD</option><option value='L3010454D'>BEATUS SERVICES PTE. LTD.</option><option value='L3004562I'>BEE BEE TAN & ASSOCIATES PTE LTD</option><option value='L3010566D'>BEE PROPERTY CONSULTANTS</option><option value='L3005103E'>BELL M PROPERTIES PTE LTD</option><option value='L3010637G'>BENHAM AND REEVES RESIDENTIAL LETTINGS (SINGAPORE) PTE LTD</option><option value='L3009753C'>BERKEN REALTY</option><option value='L3003359H'>BERNARD VALUERS & REAL ESTATE CONSULTANTS PTE LTD</option><option value='L3009514I'>BERTON REALTY LLP</option><option value='L3010916C'>BESPOKE PROPERTIES PTE. LTD.</option><option value='L3005522A'>BESTDEAL PROPERTY MANAGEMENT</option><option value='L3005521F'>BESTDEAL REALTY</option><option value='L3007569A'>BESTFIELD PROPERTY</option><option value='L3007128A'>BESTLINK REALTY NETWORK PTE LTD</option><option value='L3008702H'>BESTMARK PROPERTY SERVICES</option><option value='L3010367Z'>BEYOND REALTY</option><option value='L3000848H'>BILLOW HOUSING AGENCY</option><option value='L3008335D'>BITUMEN REALTY</option><option value='L3003000E'>BJ PROPERTY & ASSOCIATES</option><option value='L3009482E'>BLACK DIAMOND REAL ESTATE GROUP PTE LTD</option><option value='L3010395E'>BLACK OPAL PTE. LTD.</option><option value='L3008353F'>BLESSED PROPERTY SERVICES</option><option value='L3004798E'>BLESSLY INVESTMENT PTE LTD</option><option value='L3010844B'>BLU WATER PROPERTIES PTE. LTD.</option><option value='L3009015H'>BLU WATER PROPERTY CONSULTANTS</option><option value='L3010874D'>BLUENEST PTE. LTD.</option><option value='L3010851E'>BNP PARIBAS REAL ESTATE (SINGAPORE) PTE. LTD.</option><option value='L3005492I'>BOON'S CONCEPT</option><option value='L3007492E'>BOS PROPERTY CONSULTANT</option><option value='L3008137K'>BOSWELL PROPERTY CONSULTANT PTE LTD</option><option value='L3010803E'>BOWEN DISTRIBUTION PTE LTD</option><option value='L3010766G'>BR PROPERTY SALES (SINGAPORE) PTE. LTD.</option><option value='L3006785I'>BRADCO PROPERTY CONSULTANTS PTE LTD</option><option value='L3008632J'>BRIGHTON REALTY & SERVICES</option><option value='L3010899Z'>BRILLIANCE CAPITAL PTE. LTD.</option><option value='L3010331I'>BROOKE INTERNATIONAL (RESIDENTIAL) PTE LTD</option><option value='L3006709J'>BT & ASSOCIATES</option><option value='L3008447I'>BUDGET REALTY</option><option value='L3006986I'>BUILDERS REAL ESTATE AGENCY</option><option value='L3002561G'>BURLINGTON REALTY CO</option><option value='L3009541A'>BUSINESS LOCATIONS PRIVATE LIMITED</option><option value='L3009182C'>BUSINESSSUITE PTE LTD</option><option value='L3006564F'>C & L VALUERS PTE LTD</option><option value='L3010448Z'>C L REALTY LLP</option><option value='L3007139C'>C&H PROPERTIES PTE LTD</option><option value='L3004729F'>C&H REALTY PTE LTD</option><option value='L3007948B'>C&W SERVICES (S) PTE LTD</option><option value='L3010911B'>C-SUITE REAL ESTATE PTE. LTD.</option><option value='L3003864C'>CAL AGENCY</option><option value='L3007465B'>CAMTOP PROPERTY (SINGAPORE)</option><option value='L3007003D'>CANA PTE. LTD.</option><option value='L3006908I'>CANDOR PROPERTY SERVICES</option><option value='L3006384D'>CANNES REALTY PTE LTD</option><option value='L3008190K'>CANOPY REAL ESTATE PTE LTD</option><option value='L3010791H'>CAPITAL S8 PTE. LTD.</option><option value='L3010768C'>CAPITALAND COMMERCIAL MANAGEMENT PTE. LTD.</option><option value='L3010546Z'>CAPITALAND MARKETING & PROPERTY SERVICES PTE. LTD.</option><option value='L3010761F'>CAPITALAND RETAIL MANAGEMENT PTE LTD</option><option value='L3010439J'>CAPITALINK PROPERTY PTE. LTD.</option><option value='L3010905H'>CAPRE MANAGEMENT PTE. LTD.</option><option value='L3009718E'>CAPSTONE PROPERTY ASIA MANAGEMENT PTE. LTD.</option><option value='L3008953J'>CARENCE PTE LTD</option><option value='L3009212F'>CARMEL REALTY LLP</option><option value='L3010675Z'>CARRACK PTE. LTD.</option><option value='L3005109H'>CARTEL CONSULTANTS</option><option value='L3010655E'>CARTUS CORPORATION PTE. LTD.</option><option value='L3006974A'>CASRICH INVESTMENT PTE LTD</option><option value='L3006038B'>CAVALIER REAL ESTATE</option><option value='L3004613J'>CBD REALTY SERVICES</option><option value='L3002163I'>CBRE PTE. LTD.</option><option value='L3010008E'>CBRE REALTY ASSOCIATES PTE LTD</option><option value='L3008138F'>CCN REALTY PTE. LTD.</option><option value='L3005431E'>CCS PROPERTIES</option><option value='L3010485D'>CELESTIAL PROPERTY CONSULTANCY (PRIVATE) LIMITED</option><option value='L3010502H'>CELLINI PROPERTY CONSULTANTS PRIVATE LIMITED</option><option value='L3010336Z'>CENTALINE (SINGAPORE) PROPERTY AGENCY PTE. LIMITED</option><option value='L3007830E'>CENTRAL BLUE</option><option value='L3010486B'>CENTRAL REAL ESTATE PRIVATE LIMITED</option><option value='L3010669E'>CENTURY 21 (ASPAC) REALTY PTE. LTD.</option><option value='L3010489G'>CENTURY 21 PTE LTD</option><option value='L3010589C'>CENTURY 99 INTERNATIONAL PTE. LTD.</option><option value='L3007078F'>CHACHA REALTY</option><option value='L3010361J'>CHAMBER ASSETS MANAGEMENT PTE. LTD.</option><option value='L3009839K'>CHAMBERS INTERNATIONAL PROPERTY CONSULTANTS PTE LTD</option><option value='L3008274G'>CHAMP MILLENNIUM PTE LTD</option><option value='L3008423D'>CHAMPAGNE PROPERTIES PTE LTD</option><option value='L3006195A'>CHANE REALTY PTE LTD</option><option value='L3001089I'>CHANSTER ENTERPRISES PTE LTD</option><option value='L3010604J'>CHASE EVANS (SINGAPORE) PTE. LTD.</option><option value='L3009129C'>CHEDI INTERNATIONAL</option><option value='L3009457C'>CHELSEA PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3004495G'>CHENG & LEW INVESTMENTS PTE LTD</option><option value='L3009419I'>CHESNEY REAL ESTATE PTE. LTD.</option><option value='L3010832I'>CHESS REAL ESTATE CONSULTANCY PTE. LTD.</option><option value='L3010559A'>CHESTERTON SINGAPORE PTE LTD</option><option value='L3009072J'>CHEW REALTY</option><option value='L3007135A'>CHOICE HOMES REALTY</option><option value='L3009109K'>CHOICE PROPERTIES PTE LTD</option><option value='L3008127D'>CHOME PROPERTY SERVICES</option><option value='L3010400E'>CHRIS INTERNATIONAL</option><option value='L3009164A'>CHRIS-J PROPERTY CONSULTANTS</option><option value='L533830593A'>CHRISTMAS HOMES PTE LTD</option><option value='L3006318A'>CHRONICLES REALTY</option><option value='L3010358J'>CHUNGHO PROPERTY CONSULTANTS PTE LTD</option><option value='L3010494C'>CIMS REALTY PTE. LTD.</option><option value='L3005179B'>CIRCLE ELF REALTY</option><option value='L3009610D'>CITI COMMERCIAL PTE. LTD.</option><option value='L3010066B'>CITI PROPERTY PTE LTD</option><option value='L3004660E'>CITILAND REAL ESTATE</option><option value='L3010845J'>CITILAND REALTY</option><option value='L3005370H'>CITIMAX DEVELOPMENT PTE LTD</option><option value='L3009778C'>CITIONE PROPERTIES</option><option value='L3009611J'>CITIPROP (S) PTE LTD</option><option value='L3009616G'>CITIPROP PROPERTY MANAGEMENT PTE LTD</option><option value='L3010501Z'>CITISCAPE PROPERTIES</option><option value='L3003878A'>CITIVIEW PROPERTIES</option><option value='L3007155D'>CITY REAL ESTATE PTE LTD</option><option value='L3005698F'>CITYARK ESTATE SERVICES</option><option value='L3005352F'>CITYBEST PROPERTIES</option><option value='L3006928A'>CITYCOVE PROPERTIES PTE LTD</option><option value='L3007118E'>CITYGARDEN PROPERTY SERVICES PTE LTD</option><option value='L3010925B'>CITYHILL REALTY</option><option value='L3009454G'>CITYHOMES PTE. LTD.</option><option value='L3010403Z'>CK REAL ESTATE PTE. LTD.</option><option value='L3004325E'>CKS PROPERTY CONSULTANTS PTE LTD</option><option value='L3002179H'>CLAVIN PROPERTIES PTE LTD</option><option value='L3009355E'>CLD INTERNATIONAL PTE. LTD.</option><option value='L3010509E'>CLINCH REALTY EQUITY AND ASSET MANAGEMENT PTE. LTD.</option><option value='L3006802I'>CLS PROPERTY MANAGEMENT SERVICES</option><option value='L3010443I'>CML PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3010753E'>CN REAL ESTATE & ADVISORY SERVICES PTE. LTD.</option><option value='L3006892F'>CNC INTERNATIONAL PROPERTY PTE LTD</option><option value='L3010770E'>CNC PROPERTIES</option><option value='L3010769A'>COASSETS REAL ESTATE (CARE) PTE. LTD.</option><option value='L3009498D'>COLIN CHOO PROPERTIES</option><option value='L3009246G'>COLLEEN SAND PROPERTIES LLP</option><option value='L3004691J'>COLLIERS INTERNATIONAL (SINGAPORE) PTE LTD</option><option value='L3006099F'>COLOSSIANS REAL ESTATE PTE LTD</option><option value='L3009609G'>COMPASS EXPATS PTE. LTD.</option><option value='L3009133G'>COMPASS HOLDINGS PTE LTD</option><option value='L3005577K'>COMPASS PROPERTIES PTE LTD</option><option value='L3010688A'>CONNECTION REAL ESTATE PTE. LTD.</option><option value='L3008813G'>CONSULTANT SURVEYORS PTE LTD</option><option value='L3010602D'>CONTACTS REALTY</option><option value='L3003206B'>CONTINENTAL REALTY PTE LTD</option><option value='L3010715B'>CORNERSTONE REAL ESTATE ADVISERS LLP</option><option value='L3010044A'>CORPORATE LOCATIONS (S) PTE LTD</option><option value='L3010469B'>CORPORATE LOCATORS (SEA) PTE. LTD.</option><option value='L3008887C'>CORPORATE VISIONS PTE LTD</option><option value='L3006650E'>COSFORD CONSULTANTS</option><option value='L3006497D'>COSGROVE REALTY</option><option value='L3010048D'>COSMOPOLITAN REAL ESTATE PTE LTD</option><option value='L3009183I'>COSYHOME REALTY</option><option value='L3007366K'>COUNTRYWIDE PROPERTY NETWORK</option><option value='L3009456H'>COVENTRY AND SEAH PTE. LTD.</option><option value='L3010828J'>CPG FACILITIES MANAGEMENT PTE LTD</option><option value='L3009501F'>CREAMY PROPERTY CONSULTANTS</option><option value='L3009043F'>CREDENCE PROPERTIES</option><option value='L3009268K'>CREST ONE REALTY PTE. LTD.</option><option value='L3010886H'>CRESTBRICK PTE. LTD.</option><option value='L3010731D'>CREV CONSULTANCY (PTE.) LTD.</option><option value='L3007908G'>CRM PROPERTY CONSULTANT</option><option value='L3009313I'>CROSS CONNECTIONS NETWORK PTE LTD</option><option value='L3008716F'>CROSS REALTY PTE LTD</option><option value='L3010879E'>CROSSLINKS REALTY PTE. LTD.</option><option value='L3008800D'>CROWN WORLDWIDE PTE LTD</option><option value='L3003966A'>CRYSTAL FOREST REALTY</option><option value='L3008090C'>CS 2000 HOUSING PTE LTD</option><option value='L3010808F'>CS PROP PTE. LTD.</option><option value='L3010525G'>CSI-PACIFIC INVESTMENT PTE. LTD.</option><option value='L3010061A'>CT ENVY ESTATE INVESTMENT</option><option value='L3010512E'>CURVERMAC CONSULTING ASIA PRIVATE LIMITED</option><option value='L3007333E'>CUSHMAN & WAKEFIELD (S) PTE LTD</option><option value='L3007360H'>CYBERHOMES ESTATE AGENCIES PTE. LTD.</option><option value='L3006698D'>CYNTHIA KUA REALTY</option><option value='L3007826A'>CYPRESS MONTEREY PROPERTIES</option><option value='L3002697F'>D M REALTY & ENTERPRISES CO</option><option value='L3002205I'>DAGOLD PROPERTIES</option><option value='L3003407B'>DALVEY PROPERTY MANAGEMENT</option><option value='L3010060C'>DANG INTERNATIONAL CONSULTANTS</option><option value='L3007829H'>DANLIM PROPERTIES & ASSOCIATES</option><option value='L3010481A'>DANSUE PROPERTIES</option><option value='L3009774A'>DB ACE PROPERTY PTE LTD</option><option value='L3010746B'>DC PROPERTY PARTNER</option><option value='L3009581G'>DCA MANAGEMENT PTE. LTD.</option><option value='L3004081J'>DE CELLER MARKETING</option><option value='L3007207K'>DE CHOICE AGENCY</option><option value='L3010609A'>DE REALTY PTE LTD</option><option value='L3005713E'>DE XUAN MARKETING</option><option value='L3010835C'>DEAL DILIGENCE PTE. LTD.</option><option value='L3010881G'>DEAL65</option><option value='L3009361J'>DEANS REALTORS PTE. LTD.</option><option value='L3000484B'>DELAND CO</option><option value='L3009852E'>DELIGHT PROPERTY CONSULTANTS</option><option value='L3007927D'>DENARII PROPERTIES</option><option value='L3006280E'>DENIS REALTY & MANAGEMENT</option><option value='L3003109A'>DENNIS HOUSING AGENCY</option><option value='L3005183F'>DENNIS WEE REALTY PTE LTD</option><option value='L3004162J'>DENNISON PROPERTIES</option><option value='L3010934A'>DEREK LING REALTY</option><option value='L3009215B'>DEREK TAN REALTY PTE LTD</option><option value='L3003908D'>DESS PROPERTY CENTRE</option><option value='L3009835I'>DEV PROPERTIES</option><option value='L3003575C'>DG PROPERTIES</option><option value='L3009135H'>DIAMOND REALTY</option><option value='L3008108G'>DICKSON PROPERTY CONSULTANTS PTE LTD</option><option value='L3010590G'>DIMENSION REALTY GROUP PTE LTD</option><option value='L3007887E'>DIMSUM PROPERTY CONSULTANTS PTE LTD</option><option value='L3006259E'>DISTRICT 65 PTE LTD</option><option value='L3009477F'>DK ASSOCIATES PTE. LTD.</option><option value='L3010431E'>DLY REALTY</option><option value='L3003700F'>DOLLARS HOUSING AGENCY</option><option value='L3010939B'>DOLLARS REALTY LLP</option><option value='L3010882E'>DOMICILE PTE. LTD.</option><option value='L3009019J'>DP PROPERTY SERVICES</option><option value='L3008696J'>DRAGON PROPERTIES</option><option value='L3010634B'>DREAM BUILDERS REALTY PTE LTD</option><option value='L3009341G'>DREAM CENTRE REALTY PTE. LTD.</option><option value='L3009600H'>DREAMLOFT PROPERTIES PTE LTD</option><option value='L3010953H'>DRUCE & CO PTE. LTD.</option><option value='L3006955D'>DWT PTE. LTD.</option><option value='L3007143G'>DX REALTY</option><option value='L3010855H'>DYNAMIC ASSET CONSULTANCY PTE. LTD.</option><option value='L3004889A'>DYNAMIC REALTY SINGAPORE</option><option value='L3006637K'>DYNASTY PROPERTY PTE LTD</option><option value='L3009192J'>E HOUSING SINGAPORE PTE LTD</option><option value='L3010687C'>E M REAL ESTATE PRIVATE LIMITED</option><option value='L3008269H'>E PROPERTY CONSULTANTS & MANAGEMENT SERVICES</option><option value='L3009770J'>E&K REALTY PTE. LTD.</option><option value='L3009257I'>E-REALTY CONSULTANTS</option><option value='L3009309E'>E. MILLENNIUM INVESTMENTS PTE. LTD.</option><option value='L3009373G'>EAGLES REAL ESTATE PTE. LTD.</option><option value='L3009105I'>EASTGATE REALTY PTE LTD</option><option value='L3006885F'>EASTVIEW INTERNATIONAL GROUP PTE. LTD.</option><option value='L3010686E'>EASTWEST PROPERTIES PTE LTD</option><option value='L3008026A'>EASTWIND PROPERTY MANAGEMENT</option><option value='L3010461G'>EASTWOOD ESTATES SERVICES LLP</option><option value='L3007943E'>EC 10 PTE LTD</option><option value='L3009759F'>ECG PROPERTY PTE. LTD.</option><option value='L3010714D'>EDA CONSULTANCY PTE. LTD.</option><option value='L3010418H'>EDEN REAL ESTATE CONSULTANCY</option><option value='L3006301G'>EDMUND TIE & COMPANY (SEA) PTE LTD</option><option value='L3009319A'>EDUHOME NETWORK</option><option value='L3010596F'>EL PROPERTY NETWORK PTE LTD</option><option value='L3010013A'>ELA PROPERTY SERVICES</option><option value='L3004553H'>ELCHDAN PROPERTIES CONSULTANTS & MANAGERS</option><option value='L3007766J'>ELECTRONIC REALTY ASSOCIATES PTE LTD</option><option value='L3010607E'>ELEMENT PROPERTIES PTE LTD</option><option value='L3008831I'>ELITE REALTY PROFESSIONALS</option><option value='L3009515D'>ELITEHILL REAL ESTATE PTE. LTD.</option><option value='L3007454K'>ELIX REALTY PTE LTD</option><option value='L3005160G'>ELLYN-JENTER & ASSOCIATES</option><option value='L3010408J'>ELTRUST INVESTMENTS PTE. LTD.</option><option value='L3009546I'>ELYON REALTORS</option><option value='L3009828I'>EMAX REAL ESTATE CONSULTANTS LLP</option><option value='L3008639H'>EMC PROPERTY SERVICES</option><option value='L3007056B'>EMPIRE HOMES INTERNATIONAL</option><option value='L3008405B'>ENGIE PROPERTY SERVICES PTE. LTD.</option><option value='L3009294H'>ENGLOBE REALTY PTE. LTD.</option><option value='L3010341F'>EP REALTY PTE LTD</option><option value='L3009255H'>EPILAND</option><option value='L3004008G'>EQUAL HOUSING</option><option value='L3010863I'>EQUITY PROPERTY ADVISORS PTE. LTD.</option><option value='L3010729B'>ERA INTERNATIONAL</option><option value='L3002382K'>ERA REALTY NETWORK PTE LTD</option><option value='L3006006B'>ERN REALTY PTE. LTD.</option><option value='L3009728A'>ESA PROPERTY LLP</option><option value='L3006533A'>ESAINT INTERNATIONAL PROPERTY CONSULTANTS</option><option value='L3006701F'>ESMOND REALTY</option><option value='L3009427D'>ESNICHE REAL ESTATE CONSULTANTS PTE. LTD.</option><option value='L3010819A'>ESPERO PROPERTIES</option><option value='L3004902J'>ESTATE EXCHANGE CONSULTING</option><option value='L3005133D'>ESTATE RESOURCES MANAGEMENT</option><option value='L3010521D'>ESTATES 31 LLP</option><option value='L3010957J'>ESTAVON GLOBAL REALTY PTE. LTD.</option><option value='L3008975C'>ESTEEM PROPERTY NETWORK</option><option value='L3009240D'>ESTHER REALTY LLP</option><option value='L3003179F'>EUROHOME PROPERTY CO</option><option value='L3010506J'>EVAN & ASSOCIATES PTE. LTD.</option><option value='L3009554D'>EVERBRIGHT CAPITAL PTE. LTD.</option><option value='L3009421A'>EVERGREEN PROPERTIES</option><option value='L3007651I'>EVERST REALTY & MANAGEMENT SERVICES</option><option value='L3010923F'>EVERTON ESTATE PTE. LTD.</option><option value='L3010726H'>EXCEL ACTIVE PROPERTIES (S) LLP</option><option value='L3010818C'>EXCEL ACTIVE PROPERTIES PTE. LTD.</option><option value='L3002988G'>EXCELLENCE REALTY</option><option value='L3009389F'>EXCLUSIVE REAL ESTATE PTE. LTD.</option><option value='L3010037I'>EXECUTIVE HOMES (PTE.) LTD.</option><option value='L3007851C'>EXECUTIVE MANORS (S) PTE LTD</option><option value='L3010570B'>EXON PROPERTY PTE LTD</option><option value='L3009648G'>EXPAT PROPERTIES LLP</option><option value='L3009487B'>EXPAT REALTOR PTE. LTD.</option><option value='L3007248A'>FA REALTY PTE LTD</option><option value='L3006864H'>FABER PROPERTY PTE LTD</option><option value='L3007416F'>FABERLAND REALTY PTE LTD</option><option value='L3007547H'>FAIR EURO REALTY PTE LTD</option><option value='L3009811D'>FAITH PROPERTY NETWORK LLP</option><option value='L3006823G'>FAMILY REALTY PTE LTD</option><option value='L3010811F'>FAR EAST REAL ESTATE AGENCY PTE. LTD.</option><option value='L3010498F'>FAZAPRO PRIVATE LIMITED</option><option value='L3008668A'>FE REALTY</option><option value='L3008094E'>FER PROPERTIES PTE LTD</option><option value='L3010950C'>FERACITY PTE. LTD.</option><option value='L3009213A'>FINCHLEY REALTY LLP</option><option value='L3009429E'>FINDAPLACE (S) PTE. LTD</option><option value='L3010626A'>FIRST CENTURY REALTY NETWORK PTE. LTD.</option><option value='L3010919H'>FIRST HOMES REAL ESTATE</option><option value='L3009817G'>FIRST HOMES REALTY PTE. LTD.</option><option value='L3007085F'>FIRST JSC PROPERTY CONSULTANT & SERVICES</option><option value='L3001591H'>FIRST REALTY PTE LTD</option><option value='L3010638E'>FNM PROPERTY</option><option value='L3010946E'>FNM PROPERTY</option><option value='L3010652J'>FOCUS PROJECT MARKETING PTE. LTD.</option><option value='L3005262E'>FOOK LOONG ENTERPRISE</option><option value='L3010468D'>FORELAND REALTY NETWORK SINGAPORE PTE. LTD.</option><option value='L3004692E'>FORT REALTY INTERNATIONAL PTE. LTD.</option><option value='L3010381E'>FORTE REAL ESTATE PTE. LTD.</option><option value='L3010503F'>FORTRESS REAL ESTATE</option><option value='L3002062F'>FORWARD PROPERTIES PTE LTD</option><option value='L3004979B'>FOSTER REALTY PTE LTD</option><option value='L3005766C'>FOUR SEASONS REALTY</option><option value='L3001780K'>FOURSOME HOLDINGS PTE LTD</option><option value='L3008595G'>FRANCIS TAN REALTY</option><option value='L3010843D'>FRASERS PROPERTY COMMERCIAL MANAGEMENT PTE. LTD.</option><option value='L3010672E'>FRASERS PROPERTY MANAGEMENT SERVICES PTE. LTD.</option><option value='L3010853A'>FRASERS PROPERTY RETAIL MANAGEMENT PTE. LTD.</option><option value='L3009403J'>FRIENDLY REAL ESTATE AGENCY PTE. LTD.</option><option value='L3004475D'>FU JIA REALTY</option><option value='L3009360D'>FUJIYA ASSOCIATES PTE. LTD.</option><option value='L3010620B'>FULLERTON REAL ESTATE PTE. LTD.</option><option value='L3008894C'>FULLHOUSE REAL ESTATE PTE LTD</option><option value='L3006021H'>FULTRA PROPERTY SERVICES</option><option value='L3010583D'>G REALTY PTE LTD</option><option value='L3001817A'>G W BENNETTE</option><option value='L3009519F'>G.A REALTY PTE LTD</option><option value='L3010490J'>GAB-LINK MANAGEMENT SERVICES</option><option value='L3010375J'>GAIN CITY CONSULTANTS</option><option value='L3010428E'>GALAXIA GROUP</option><option value='L3009632H'>GARETH KYLE CONSULTANTS</option><option value='L3002434G'>GATEWAY PROPERTY CONSULTANTS PTE LTD</option><option value='L3004169H'>GATSBY PROPERTIES</option><option value='L3010528A'>GC HOME COLLECTIONS PTE. LTD.</option><option value='L3008343J'>GEC PROPERTIES PTE LTD</option><option value='L3010949Z'>GEC PROPERTIES PTE. LTD.</option><option value='L3009039B'>GENESIS GOSHEN REALTY PTE. LTD.</option><option value='L3005813B'>GENESIS REALTY</option><option value='L3009092B'>GENTRADE CAPITAL</option><option value='L3009844J'>GEORGE LOW COMPANY</option><option value='L3010829I'>GEX REAL ESTATE PTE. LTD.</option><option value='L3007840A'>GIANT PROPERTIES</option><option value='L3007546B'>GINZA REAL ESTATE PTE LTD</option><option value='L3009494B'>GL REALTY</option><option value='L3004276E'>GLAMO PROPERTIES</option><option value='L3007898G'>GLEDHILL PROPERTIES</option><option value='L3009796E'>GLO PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3010679B'>GLOBAL ALLIANCE PROPERTY PTE. LTD.</option><option value='L3010614H'>GLOBAL ENTERPRISE EXCHANGE PTE LTD</option><option value='L3009287H'>GLOBAL ESTATE MANAGEMENT PTE LTD</option><option value='L3009861F'>GLOBAL PROPERTY STRATEGIC ALLIANCE PTE. LTD.</option><option value='L3010856F'>GLOBAL REAL ESTATE EXCHANGE PTE. LTD.</option><option value='L3010564H'>GLOBALNEX REAL ESTATE PTE. LTD.</option><option value='L3009834C'>GLOBIC PROPERTY CONSULTANCY SERVICES</option><option value='L3006751H'>GLORY HARVEST PTE LTD</option><option value='L3005166J'>GLOW REALTY CONSULTANTS</option><option value='L3006731E'>GLW GOLDWELL PTE LTD</option><option value='L3010332G'>GO PROPERTIES</option><option value='L3010827B'>GOLD APEX REALTY PTE. LTD.</option><option value='L3001702K'>GOLD ROOT HOUSING AGENCY</option><option value='L3006155F'>GOLD-LINK REALTY PTE LTD</option><option value='L3001955C'>GOLDEN BRILLIANCE ENTERPRISES</option><option value='L3002319D'>GOLDEN ESTATES AGENCY</option><option value='L3010657A'>GOLDEN NICHE REALTY (1996) PRIVATE LIMITED</option><option value='L3002398J'>GOLDEN PARK ESTATE AGENCY</option><option value='L3006303H'>GOLDEN PROPERTY</option><option value='L3002485D'>GOLDEN SPACE AGENCY</option><option value='L3009585I'>GOLDENTULIP LLP</option><option value='L3005930F'>GOLDWORTH (PTE) LTD</option><option value='L3010640G'>GOLPROP PTE. LTD.</option><option value='L3008453C'>GOOD NEWS PROPERTIES</option><option value='L3007437D'>GOOD-DAY PROPERTIES</option><option value='L3002800E'>GOODWILL CONSULTANT CO</option><option value='L3010664D'>GOPROP REALTY PTE. LTD.</option><option value='L3010897C'>GOSHEN GROUP PTE. LTD.</option><option value='L3006322E'>GPA REALTY & MANAGEMENT</option><option value='L3007764I'>GRACIOUS LIVING PROPERTIES</option><option value='L3006113J'>GREAT ISLAND REAL ESTATE AGENCY PTE LTD</option><option value='L3004625G'>GREAT LAND REALTY</option><option value='L3009402D'>GREATSTAR REALTY PTE. LTD.</option><option value='L3010472B'>GREENFIELDS PROPERTY</option><option value='L3005548G'>GREENHILL PROPERTY CONSULTANTS PTE LTD</option><option value='L3010778J'>GREENHUB VENTURES PTE. LTD.</option><option value='L3007420J'>GREENWOOD REALTY CONSULTANTS</option><option value='L3005241G'>GREGORY TAN REALTY PTE LTD</option><option value='L3010433A'>GREYLOFT REALTY LLP</option><option value='L3009485A'>GRIFFIN PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3008221I'>GRIFINS DOMAIN PTE. LTD.</option><option value='L3002826K'>GROUP ONE PTE LTD</option><option value='L3008297F'>GRUPPO REALTY LLP</option><option value='L3010005J'>GW REALTY CONSULTANTS</option><option value='L3010653I'>H & B ASSETS</option><option value='L3008984D'>H Y PROPERTIES</option><option value='L3010848E'>HALCYON HOMES PTE. LTD.</option><option value='L3003006H'>HALL'S REALTY</option><option value='L3008300H'>HAMPTON PROPERTY GROUP PTE LTD</option><option value='L3010896E'>HAOHAOGUO REALTY PTE. LTD.</option><option value='L3002909A'>HARVEST REALTY CONSULTANTS PTE LTD</option><option value='L3010427G'>HBA RESOURCE SERVICES</option><option value='L3006255C'>HE'SABLE SUPPLIES</option><option value='L3009401I'>HEBRON REAL ESTATE AGENCY</option><option value='L3010799C'>HEDGE REAL ESTATE PTE. LTD.</option><option value='L3010864G'>HELICONIA PROPERTY NETWORK PTE. LTD.</option><option value='L3010696B'>HEMMINGTON REAL ESTATE</option><option value='L3003858I'>HENG FATT PROPERTY PTE LTD</option><option value='L3007802G'>HG PROPERTY CONSULTANTS PTE LTD</option><option value='L3003460B'>HIGHWAY REALTY</option><option value='L3010917A'>HILL & CROSS REAL ESTATE PTE. LTD.</option><option value='L3005687D'>HILL GOLD PTE LTD</option><option value='L3002178B'>HILLCROFT PROPERTIES PTE LTD</option><option value='L3004532J'>HILTON REALTY & INTERIORS</option><option value='L3010643A'>HIS SINGAPORE REALTORS PTE LTD</option><option value='L3009613K'>HISTORICAL LAND PTE. LTD.</option><option value='L3010745D'>HJ REAL ESTATE PTE. LTD.</option><option value='L3009100A'>HM REALTY PTE LTD</option><option value='L3001049C'>HOE-TAN CO (PTE) LTD</option><option value='L3007098I'>HOME 21</option><option value='L3009746C'>HOME ABUNDANCE PTE LTD</option><option value='L3006144D'>HOME EQUITY (S) PTE LTD</option><option value='L3010713F'>HOME GURU ASIA</option><option value='L3009385D'>HOME GURU PTE LTD</option><option value='L3010606G'>HOME HUNT PTE LTD</option><option value='L3010961I'>HOME OF THE ELITES PTE. LTD.</option><option value='L3009658C'>HOMEBLISS REALTY PTE. LTD.</option><option value='L3009143C'>HOMEBUYERS ENTERPRISE</option><option value='L3009376C'>HOMECO SERVICES</option><option value='L3005679I'>HOMELAND MANAGEMENT SERVICES PTE LTD</option><option value='L3007200B'>HOMELODGE REALTY CONSULTANTS</option><option value='L3010944I'>HOMELODGE REALTY PTE. LTD.</option><option value='L3007107C'>HOMEMART HOUSING AGENCIES</option><option value='L3004807J'>HOMEMATCH PROPERTIES</option><option value='L3007823E'>HOMENET 21 PROPERTY</option><option value='L3007381F'>HOMESTAR REALTY</option><option value='L3003531F'>HOMETOWN PROPERTIES</option><option value='L3003593E'>HOMEVIEW REALTY</option><option value='L3007466H'>HOMEWILL REALTY NETWORK</option><option value='L3004905F'>HOMEX AGENCY</option><option value='L3009809A'>HORIZON REAL ESTATES PTE. LTD.</option><option value='L3010779I'>HOSPITALITY STRATEGIES ASIA PACIFIC PTE. LTD.</option><option value='L3007876C'>HOUSE & HOME PROPERTY PTE. LTD.</option><option value='L3006504H'>HOUSE EXPRESS</option><option value='L3009601C'>HOUSES IN SINGAPORE</option><option value='L3009248H'>HOUSING88 PTE. LTD.</option><option value='L3009397A'>HQ REALTY NETWORK</option><option value='L3008575D'>HRL PROPERTIES PTE LTD</option><option value='L3002226G'>HSR INTERNATIONAL REALTORS PTE LTD</option><option value='L3005720E'>HTP CONSULTANTS</option><option value='L3008899K'>HUTTONS ASIA PTE. LTD.</option><option value='L3008937I'>HUTTONS INTERNATIONAL PTE LTD</option><option value='L3010877I'>HUTTONS PTE. LTD.</option><option value='L3008767C'>HY REALTY SERVICES</option><option value='L3009704G'>HY YANG REALTY & CONSULTANCY PTE LTD</option><option value='L3006412F'>HYATT REALTY</option><option value='L3009717J'>I-HOMESEARCH</option><option value='L3009204K'>ICON CONNECTION</option><option value='L3010587G'>ICONIC REALTY PTE LTD</option><option value='L3010661Z'>IDEAL REALTY PTE. LTD.</option><option value='L3008692H'>IDO REALTY SERVICES</option><option value='L3010429C'>IEC SINGAPORE</option><option value='L3010608C'>ILLUMA PROPERTY INTERNATIONAL PTE LTD</option><option value='L3006523E'>IMS PROPERTY</option><option value='L3010636I'>IN.PROPERTY RELOCATIONS AND REAL ESTATE SERVICES</option><option value='L3010690C'>INFEX PTE. LTD.</option><option value='L3010952Z'>INFINITY HOMES PTE. LTD.</option><option value='L3010384Z'>INJ KAT</option><option value='L3006575H'>INNO NETWORK ENTERPRISE</option><option value='L3009804D'>INRECO REALTY SERVICES</option><option value='L3010573G'>INSPIREON REAL ESTATE PTE LTD</option><option value='L3010036J'>INTEGRAL PROPERTIES LLP</option><option value='L3005650G'>INTER-STATE REALTY (PTE) LTD</option><option value='L3002630J'>INTERFIRST PROPERTIES PTE LTD</option><option value='L3006972K'>INTERLINK REALTY</option><option value='L3010350E'>INTERNATIONAL PROPERTIES CONSULTANT LLP</option><option value='L3009265D'>INTERNATIONAL PROPERTY ADVISOR PTE LTD</option><option value='L3009269F'>INTERNATIONAL PROPERTY GROUP PTE. LTD.</option><option value='L3010924D'>INTREPID REALTY</option><option value='L3010006I'>ION RESOURCES & CONSULTANCY SERVICES</option><option value='L3010023I'>IP REAL ESTATE INVESTMENTS PTE LTD</option><option value='L3010792F'>IP REALTY PTE. LTD.</option><option value='L3007969K'>IPROPS REALTY PTE LTD</option><option value='L3007268D'>IRENE LOW REALTY</option><option value='L3009705B'>IRP PTE. LTD.</option><option value='L3008624D'>IS21 PROPERTY & MANAGEMENT CONSULTANCY PTE LTD</option><option value='L3009387E'>ISABEL REDRUP AGENCY PTE. LTD.</option><option value='L3007934D'>ISLANDGATE REAL ESTATE</option><option value='L3010632F'>IVY LEE REALTY GROUP PTE. LTD.</option><option value='L3005248E'>IZ CONSULTANCY & SERVICES</option><option value='L3004913A'>IZUMI SPRING MARKETING PTE LTD</option><option value='L3006628J'>J AND J REAL ESTATES</option><option value='L3010555I'>J ASIA HOMES PTE LTD</option><option value='L3005768D'>J CORPORATE (S) PTE LTD</option><option value='L3009116K'>J HUNTERS CONSULTANTS PTE LTD</option><option value='L3004183H'>J R REALTORS</option><option value='L3006321J'>J SMITH PROPERTIES NETWORK</option><option value='L3009586D'>J W REALTY</option><option value='L3010689Z'>J YIREH REALTY PTE. LTD.</option><option value='L3007938F'>J&E PROPERTIES PTE LTD</option><option value='L3008088K'>J&O REALTY</option><option value='L3008551J'>J.A.N.E. REALTY</option><option value='L3010918Z'>J.KARPENTER REAL ESTATE LLP</option><option value='L3010929E'>J.S REALTORS PTE. LTD.</option><option value='L3008553K'>JACDENIS REALTY</option><option value='L3004409A'>JADE HOUSING</option><option value='L3010035B'>JALIN REALTY INTERNATIONAL PTE LTD</option><option value='L3006662B'>JAMES PAUL PROPERTIES</option><option value='L3010789F'>JAS REALTY PTE. LTD.</option><option value='L3006217I'>JC PROPERTIES (S) PTE LTD</option><option value='L3007949H'>JCC PROPERTIES</option><option value='L3009433I'>JCL REAL ESTATE CONSULTANTS</option><option value='L3007971C'>JCP REALTY PTE LTD</option><option value='L3006254H'>JEAN-KO REALTY PTE LTD</option><option value='L3004077F'>JEFF REALTY</option><option value='L3002343K'>JENNINGS HOMES REALTY</option><option value='L3008709F'>JERRYTAN RESIDENTIAL PTE LTD</option><option value='L3009166B'>JET REALTY PTE LTD</option><option value='L3010800J'>JET REALTY SERVICES</option><option value='L3009290F'>JFP PROPERTIES PTE. LTD.</option><option value='L3006365G'>JH REALTY</option><option value='L3010898A'>JIA PROPERTY PTE. LTD.</option><option value='L3010417Z'>JIE SHENG HOUSING AGENCY PTE. LTD.</option><option value='L3004616F'>JING YANG REALTY</option><option value='L3009349K'>JINSON PROPERTY PTE. LTD.</option><option value='L3009539I'>JIREH PROPERTIES PTE. LTD.</option><option value='L3010565F'>JK PROPERTIES</option><option value='L3005054E'>JKL & ASSOCIATES</option><option value='L3006942A'>JKL CONSULTANTS</option><option value='L3009639F'>JL PROPERTY AND MANAGEMENT</option><option value='L3006517K'>JL PROPERTY PTE LTD</option><option value='L3009765K'>JL REALTY SERVICES</option><option value='L3009612E'>JLAND REALTY INVESTMENT LIMITED LIABILITY PARTNERSHIP</option><option value='L3010456J'>JNK REALTORS PTE. LTD.</option><option value='L3007326E'>JONES LANG LASALLE PROPERTY CONSULTANTS PTE LTD</option><option value='L3005911I'>JONES REAL ESTATE AGENCY PTE LTD</option><option value='L3010557E'>JONSEN REALTY PTE LTD</option><option value='L3004623F'>JOVINCE & ASSOCIATES</option><option value='L3004279A'>JOYCE PROPERTY LINKS</option><option value='L3006161K'>JOYFUL REALTY</option><option value='L3007892D'>JOYMAKERS REAL ESTATE</option><option value='L3010447A'>JPORE ESTATE PTE. LTD.</option><option value='L3010406D'>JS HOME CONSULTANTS PTE. LTD.</option><option value='L3010763B'>JT GLOBAL REALTY PTE. LTD.</option><option value='L3010591E'>JUBILEE REAL ESTATE LLP</option><option value='L3005457K'>JULIE HOUSING PTE LTD</option><option value='L3008275B'>JUSCO REALTY</option><option value='L3008666K'>K & C ASSOCIATES PTE LTD</option><option value='L3008824I'>K & Q REALTY PTE LTD</option><option value='L3001874C'>K E AGENCIES</option><option value='L3004829C'>K L HEE REAL ESTATE</option><option value='L3002455E'>K M L ENTERPRISES</option><option value='L3010775F'>K.C. DAT REALTY PTE. LTD.</option><option value='L3009822F'>KACE SINGAPORE REAL ESTATE PTE. LTD.</option><option value='L3010462E'>KAH ENG PROPERTY</option><option value='L3005363H'>KAIZER INTERNATIONAL PROPERTY PTE LTD</option><option value='L3010398Z'>KANE FOSTER REALTY PTE LTD</option><option value='L3002045J'>KARTAR SINGH REALTY PTE LTD</option><option value='L3007011J'>KAT'S REALTY</option><option value='L3002431K'>KATHRYN'S LIVING ENTERPRISES</option><option value='L3003155A'>KAYCTAN BUSINESSOLUTIONS PTE LTD</option><option value='L3005170C'>KBH HOUSING AGENCY</option><option value='L3009303B'>KD REALTY LLP</option><option value='L3007173F'>KEATS REALTY</option><option value='L3008371H'>KELTON & WHEELER INTERNATIONAL PTE LTD</option><option value='L3010484F'>KELVIN & FRANK REID PTE. LTD.</option><option value='L3010338F'>KENSFIELD HOUSING AGENCY</option><option value='L3010691A'>KEPPEL LAND INTERNATIONAL LIMITED</option><option value='L3010788H'>KEPPEL LAND REAL ESTATE SERVICES PTE. LTD.</option><option value='L3009359G'>KEY FOLIO PTE LTD</option><option value='L3010774H'>KEY LINK PROPERTY CONSULTANCY</option><option value='L3008430D'>KF PROPERTY NETWORK PTE LTD</option><option value='L3005428G'>KIMHILL ESTATE MANAGEMENT</option><option value='L3009671H'>KINGDOM ESTATE PTE. LTD.</option><option value='L3009011F'>KINGDOMS REALTY</option><option value='L3010582F'>KINGS GROUP</option><option value='L3010947C'>KINGS GROUP</option><option value='L3001634C'>KINGSFIELD-ASIA ESTATES AGENCY</option><option value='L3010553B'>KINGSLEY REALTY</option><option value='L3009589K'>KINGSMAN PROPERTIES PTE LTD</option><option value='L3007072C'>KINGSWILLY PROPERTIES</option><option value='L3010415C'>KIONG CHAI WOON & COMPANY PRIVATE LIMITED</option><option value='L3006774G'>KJ REALTY</option><option value='L3009602I'>KNIGHT FRANK PROPERTY ASSET MANAGEMENT PTE LTD</option><option value='L3005536J'>KNIGHT FRANK PTE LTD</option><option value='L3010900G'>KNOCKEDD PTE. LTD.</option><option value='L3010716J'>KNOX REALTY PTE. LTD.</option><option value='L3008362G'>KOEYUKO REALTY</option><option value='L3010933C'>KOEYUKO REALTY</option><option value='L3004669D'>KOJIN REALTY</option><option value='L3007468I'>KOLOURS CONSULTANCY SERVICES</option><option value='L3006378J'>KONG QUST REALTY (S) PTE LTD</option><option value='L3008061J'>KPC PROPERTIES PTE LTD</option><option value='L3009800B'>KPN PROPERTIES LLP</option><option value='L3009660F'>KRISVALE REAL ESTATE PTE. LTD.</option><option value='L3010010G'>KTNC REAL ESTATE CONSULTANTS PTE. LTD.</option><option value='L3009437K'>KTZ REALTY LLP</option><option value='L3009758K'>KWAN REALTY</option><option value='L3009787D'>KYLOU PROPERTIES PTE. LTD.</option><option value='L3008803K'>L A AGENCY & MANAGEMENT</option><option value='L3005695J'>L & W REALTY</option><option value='L3008736I'>L J PROPERTY CONSULTANTS</option><option value='L3009801H'>L&V REALTY</option><option value='L3009595E'>L.MEGAN PROPERTIES PTE. LTD.</option><option value='L3005699A'>LAND & SPACE PROPERTY CONSULTANTS</option><option value='L3009305C'>LAND EL-HOME PTE. LTD.</option><option value='L3004482D'>LAND RESOURCES REALTY PTE LTD</option><option value='L3010396C'>LAND-SELECT REALTY PTE LTD</option><option value='L3002232A'>LANDALE PTE LTD</option><option value='L3010520F'>LANDASIA PROPERTY</option><option value='L3009107J'>LANDBANK PROPERTY PTE LTD</option><option value='L3010563Z'>LANDBEST PROPERTY PTE LTD</option><option value='L3010535D'>LANDEL PROPERTY CONSULTANTS</option><option value='L3006702A'>LANDERS REAL ESTATE</option><option value='L3009162K'>LANDFORM REALTY PTE LTD</option><option value='L3008979E'>LANDHAVEN REALTY</option><option value='L3010459E'>LANDHUB PROPERTY PTE LTD</option><option value='L3008970F'>LANDIS MANAGEMENT</option><option value='L3005364C'>LANDMARK HOUSING</option><option value='L3009697C'>LANDMARK PROPERTY ADVISERS PTE. LTD.</option><option value='L3010440D'>LANDMAX PROPERTY PTE LTD</option><option value='L3008536D'>LANDPLUS PROPERTY NETWORK PTE LTD</option><option value='L3009842I'>LANDQUEST PROPERTY LLP</option><option value='L3006710G'>LANDRIDGE PROPERTIES</option><option value='L3010718G'>LANDS WAY REAL ESTATE PTE.LTD.</option><option value='L3002644H'>LANDVILLE ENTERPRISES (1992)</option><option value='L3010492G'>LANDVIN PTE. LTD.</option><option value='L3009256C'>LANDVISTA PROPERTY NETWORK LLP</option><option value='L3009583H'>LATITUDES REALTY</option><option value='L3010543E'>LAW PROPERTY MANAGEMENT</option><option value='L3006379E'>LCY REALTY</option><option value='L3009416B'>LE MACHE D'ESTA PROPERTY N MANAGEMENT</option><option value='L3010750J'>LEAPTON MANAGEMENT</option><option value='L3010302E'>LEAW HOUSING AGENCY</option><option value='L3010368H'>LEE RAY PROPERTY SERVICES</option><option value='L3009439A'>LEE REALTORS LLP</option><option value='L3010938D'>LEE YING</option><option value='L3010821C'>LENDLEASE RETAIL PTE. LTD.</option><option value='L3008689J'>LENGSERNCHEW HOUSING AGENCY</option><option value='L3002376F'>LEO PROPERTY MANAGEMENT PTE LTD</option><option value='L3007415K'>LEOHAM PROPERTIES</option><option value='L3010009C'>LESLIECHAN & CO PTE LTD</option><option value='L3009484F'>LHG PROPERTIES PTE LTD.</option><option value='L3009199H'>LI-RESI PTE LTD</option><option value='L3007138H'>LIANCO INTERNATIONAL PROPERTY PTE LTD</option><option value='L3004676D'>LIEW PROPERTIES</option><option value='L3010630Z'>LIGHTHOUSE PROPERTY CONSULTANTS PTE LTD</option><option value='L3009449H'>LILIAN LIM REALTY PTE. LTD.</option><option value='L3010510I'>LIM REAL ESTATE</option><option value='L3009465I'>LIMAN PROPERTY AGENCY</option><option value='L3010457I'>LINCOLNS PROPERTY PTE LTD</option><option value='L3003036G'>LINDTRAC SERVICES PTE LTD</option><option value='L3005245I'>LING MARKETING SERVICES</option><option value='L3009032D'>LING PROPERTY CONSULTANTS PTE LTD</option><option value='L3006424C'>LINKO PROPERTIES</option><option value='L3010762D'>LIST INTERNATIONAL REALTY PTE. LTD.</option><option value='L3005928C'>LIT REALTY MANAGEMENT</option><option value='L3005926B'>LITE REALTY PTE LTD</option><option value='L3007240H'>LKC REALTY NETWORK</option><option value='L3010805A'>LOCALLY HOME PTE. LTD.</option><option value='L3005253D'>LOCK PROPERTY CONSULTANTS PTE LTD</option><option value='L3005746K'>LOCUS PROPERTY SERVICES</option><option value='L3003065K'>LOGGINS ENTERPRISE</option><option value='L3006788E'>LONDONGOLD REALTY</option><option value='L3008732G'>LPK REALTY (1982) PTE LTD</option><option value='L3005741C'>LPW MANAGEMENT ASSOCIATES</option><option value='L3008945D'>LS REAL ESTATE GROUP</option><option value='L3008397C'>LSE REALTY</option><option value='L3009716D'>LUCAS REALTY PTE. LTD.</option><option value='L3010857D'>LUXE CAPITAL GROUP LLP</option><option value='L3010595H'>LUXE PROPERTY GROUP PTE LTD</option><option value='L3010790Z'>LUXE PROPERTY PTE. LTD.</option><option value='L3010413G'>LUXE REAL ESTATE</option><option value='L3010854Z'>LUXEQUBE PTE. LTD.</option><option value='L3009529B'>LUXUS PROPERTY INVESTMENT PTE. LTD.</option><option value='L3006559G'>LYM REALTY</option><option value='L3008708K'>LYN PARTNERSHIPS PTE LTD</option><option value='L3003621G'>M K LEE MANAGEMENT SERVICES</option><option value='L3010518D'>M REALTY INVESTMENTS PTE. LTD.</option><option value='L3010913I'>M&H REALTY</option><option value='L3008707E'>M-PEAK PROPERTY CONSULTANTS</option><option value='L3010343B'>M.REN REAL ESTATE</option><option value='L3007385H'>M2 PROPERTY PTE LTD</option><option value='L3010355F'>M3 PROPERTY</option><option value='L3009534A'>MAHTANI HOMES</option><option value='L3008283H'>MANDATE REAL ESTATE PTE LTD</option><option value='L3010870A'>MAPLETREE COMMERCIAL PROPERTY MANAGEMENT PTE. LTD.</option><option value='L3010869H'>MAPLETREE COMMERCIAL TRUST MANAGEMENT LTD.</option><option value='L3010866C'>MAPLETREE FACILITIES SERVICES PTE. LTD.</option><option value='L3010868Z'>MAPLETREE INDUSTRIAL TRUST MANAGEMENT LTD.</option><option value='L3010872H'>MAPLETREE LOGISTICS TRUST MANAGEMENT LTD.</option><option value='L3010871Z'>MAPLETREE PROPERTY MANAGEMENT PTE. LTD.</option><option value='L3003112J'>MAPS TRADING & MARKETING SERVICES</option><option value='L3009086H'>MAR PROPERTY NETWORK PTE. LTD.</option><option value='L3010532Z'>MAR REALTY PRIVATE LIMITED</option><option value='L3005642A'>MARC PROPERTY SERVICES</option><option value='L3010658Z'>MARK HO PROPERTY</option><option value='L3010777B'>MASCOT AND COMPANY</option><option value='L3010744F'>MASTER REAL ESTATE PTE. LTD.</option><option value='L3010887F'>MATRIX PROPERTIES PTE. LTD.</option><option value='L3010437D'>MAVIS WONG PROPERTY CONSULTANCY</option><option value='L3010891D'>MAVIS WONG REALTY</option><option value='L3010730F'>MAX PROPERTY</option><option value='L3008468G'>MAXFIELD REALTORS</option><option value='L3006730J'>MAXIMUM REALTY</option><option value='L3008900A'>MAY HOMELINK SERVICES</option><option value='L3008314F'>MAY REALTY NETWORK</option><option value='L3005690B'>MBC REALTY NETWORK</option><option value='L3005097G'>MBER CAPITAL PTE LTD</option><option value='L3007768K'>MBFP AGENCY PTE LTD</option><option value='L3006213G'>MCDOWELL REALTY NETWORK</option><option value='L3010755A'>MCG REAL ESTATE PTE. LTD.</option><option value='L3009496C'>MCKINSEY MORRIS (SINGAPORE) PTE. LTD.</option><option value='L3009207G'>ME PROPERTIES</option><option value='L3008572H'>MEGAHOMES PROPERTIES</option><option value='L3008974H'>MEGALINK HOME SERVICES PTE LTD</option><option value='L3010588E'>MEGAMAX GLOBAL PTE. LTD.</option><option value='L3009425C'>MEGAN REALTY CONSULTANTS PRIVATE LIMITED</option><option value='L3009194K'>MELCO PROPERTY COLLECTION SINGAPORE PTE. LTD.</option><option value='L3007481C'>MELSA MANAGEMENT SERVICES</option><option value='L3002381E'>MERICAN ENTERPRISES</option><option value='L3004867H'>MERIDIAN REALTY</option><option value='L3004766E'>METES & BOUNDS MARKETING</option><option value='L3010446C'>METTA CONSULTANTS PTE LTD</option><option value='L3010735G'>MEYZER INTERNATIONAL REALTOR PTE. LTD.</option><option value='L3010407B'>MEYZER REAL ESTATE PTE LTD</option><option value='L3009366G'>MG GLOBAL PTE. LTD.</option><option value='L3010666J'>MICASA PROPERTY CONSULTANTS PTE. LTD</option><option value='L3010309B'>MICHAEL G S GOH PROPERTY</option><option value='L3005558C'>MICHAEL J PRICE INTERNATIONAL PTE LTD</option><option value='L3010488I'>MICROLINK PROPERTY CONSULTANTS PTE LTD</option><option value='L3009285G'>MIDAS HOME INVESTMENT PTE. LTD.</option><option value='L3001511G'>MIDFIELD REALTY PTE LTD</option><option value='L3002527D'>MIDO REALTY CO</option><option value='L3008978J'>MIKA PROPERTY SERVICES</option><option value='L3010442J'>MILESTONE REALTY SERVICES</option><option value='L3010354H'>MILLION HOUSING ENTERPRISE (PRIVATE) LIMITED.</option><option value='L3002076D'>MILLIONTRA ENTERPRISES PTE LTD</option><option value='L3009186E'>MINDLINK GROUPS PTE LTD</option><option value='L3009690E'>MINISTRY OF PROPERTIES PTE. LTD.</option><option value='L3010425J'>MINIT PROPERTIES PTE LTD</option><option value='L3007957C'>MIP REALTY PTE LTD</option><option value='L3010648B'>MIRACLES INVESTMENT GROUP PTE. LTD.</option><option value='L3010524I'>MIRACLES REALTY GROUP PTE. LTD.</option><option value='L3007931H'>MIRAGE PROPERTIES</option><option value='L3010580Z'>MISSION NETWORK</option><option value='L3003386K'>MIYAKE HOUSING</option><option value='L3009653F'>MJP ASIA</option><option value='L3010303C'>ML REALTY</option><option value='L3010550H'>MLI PROPERTY COLLECTION PTE LTD</option><option value='L3003019K'>MONDANIA PTE LTD</option><option value='L3010849C'>MORE GLOBAL HOLDINGS PTE. LTD.</option><option value='L3010548F'>MORE PROPERTY PTE. LTD.</option><option value='L3010397A'>MORGAN PROPERTY INTERNATIONAL PTE LTD</option><option value='L3010942B'>MORGAN PROPERTY INTERNATIONAL PTE. LTD.</option><option value='L3003741G'>MOUNT EVEREST PROPERTIES PTE LTD</option><option value='L3010880I'>MPSL PTE. LTD.</option><option value='L3010445E'>MR BOLEH REALTY PTE LTD</option><option value='L3006711B'>MULTI-REDEVELOPMENT INTERNATIONAL (MRI) PROPERTIES</option><option value='L3005452C'>MULTILINK REALTY</option><option value='L3005900G'>MULTIPLEX REALTY CONSULTANTS PTE LTD</option><option value='L3009740K'>MUTUAL BENEFITS REALTY PTE. LTD.</option><option value='L3009168C'>MY HOMES PTE. LTD.</option><option value='L3009075F'>MY PROPERTY</option><option value='L3010014Z'>MY REALTOR REAL ESTATE CONSULTANCY</option><option value='L3007621J'>MY REALTY</option><option value='L3010576A'>MYRIAD REALTY PTE LTD</option><option value='L3009415G'>NAPSHOT PROPERTIES PTE. LTD.</option><option value='L3008882F'>NASSAU PTE LTD</option><option value='L3010514A'>NATIONWIDE REAL ESTATE PTE. LTD.</option><option value='L3010783G'>NATSAR REALTY PTE. LTD.</option><option value='L3010051D'>NAZ PROPERTIES</option><option value='L3010479Z'>NBI REALTY LLP</option><option value='L3008790D'>NEIGHBOURHOOD PROPERTIES SERVICES</option><option value='L3010593A'>NESTSTAC PTE LTD</option><option value='L3010659H'>NETS REALTY PTE. LTD.</option><option value='L3004468D'>NETWORTH PROPERTY</option><option value='L3009726K'>NEW ASIA PROPERTIES PTE. LTD.</option><option value='L3010719E'>NEW CENTURY INTERNATIONAL PROPERTY PTE.LTD.</option><option value='L3006576C'>NEW GENERATION REALTY</option><option value='L3007545G'>NEWHOUSE PROPERTIES PTE LTD</option><option value='L3005195C'>NEWLIFE PROPERTY CONSULTANTS</option><option value='L3006218D'>NEWLINK DEVELOPMENT</option><option value='L3008249E'>NEWMAN & ASSOCIATES PTE. LTD.</option><option value='L3004309D'>NEWMAN & GOH PROPERTY CONSULTANTS PTE LTD</option><option value='L3008829F'>NEWSMAN REALTY PTE LTD</option><option value='L3003057E'>NEXT PROPERTIES</option><option value='L3007428C'>NICA REALTY</option><option value='L3006260B'>NICE REAL ESTATE</option><option value='L3009325F'>NICHE REALTY CONSULTANTS</option><option value='L3007427H'>NIKI REALTY NETWORK</option><option value='L3003576I'>NIKKO REALTY</option><option value='L3009201D'>NIXON REAL ESTATE PTE LTD</option><option value='L3006454B'>NKH PROPERTIES</option><option value='L3007364J'>NRS PROPERTY CONSULTANTS PTE LTD</option><option value='L3006036A'>NRS REAL ESTATE PTE. LTD.</option><option value='L3010536B'>NS (SINGAPORE) PTE LTD</option><option value='L3008244H'>O&T PROPERTIES</option><option value='L3002966C'>OCCIDENTAL REAL ESTATE PTE LTD</option><option value='L3004062B'>OCTAGON PROPERTIES SERVICES PTE LTD</option><option value='L3010831J'>OFFICE RECCE PTE. LTD.</option><option value='L3005581D'>OHB REAL ESTATE CONSULTANTS & SERVICES PTE LTD</option><option value='L3010739Z'>OHMYHOME PTE. LTD.</option><option value='L3006045B'>OK PROPERTY PTE LTD</option><option value='L3009669E'>OK.BC REALESTATE MANAGEMENT & CONSULTANTS SERVICES</option><option value='L3008986E'>OKI-LAND REALTY CONSULTANT PTE LTD</option><option value='L3008366I'>OLIVE TREE PROPERTY CONSULTANT</option><option value='L3001423G'>OLIVE TREE REALTY PTE LTD</option><option value='L3010793D'>ONE GLOBAL PROPERTY SERVICES (SINGAPORE) PTE. LTD.</option><option value='L3010695D'>ONE MARINA INTEGRATED SOLUTIONS PTE. LTD.</option><option value='L3009458I'>ONE MOBILITY</option><option value='L3010504D'>ONE NODE EQUITY PTE. LTD.</option><option value='L3008143E'>ONE REALTY NETWORK</option><option value='L3010619I'>ONEHOME PROPERTY PTE LTD</option><option value='L3004726J'>OON REAL ESTATE</option><option value='L3010749G'>OPTIMA PROPERTIES PTE. LTD.</option><option value='L3007563I'>ORANGE REALTY SERVICES</option><option value='L3009250K'>ORANGETEE & TIE PTE. LTD.</option><option value='L3010781J'>ORANGETEE ADVISORY PTE. LTD.</option><option value='L3010742Z'>ORANGETEE OVERSEAS PROPERTIES PTE. LTD.</option><option value='L3009623G'>ORCHID REALTY PTE. LTD.</option><option value='L3007509C'>ORIENT KING REALTY PTE LTD</option><option value='L3003909J'>ORIENT PROPERTY MANAGEMENT PTE LTD</option><option value='L3009356K'>ORIENTAL REALTY PTE. LTD.</option><option value='L3006857H'>ORION PROPERTY CONSULTANTS PTE LTD</option><option value='L3010838H'>OSEL LAND PTE. LTD.</option><option value='L3007960A'>OTTPN PTE LTD</option><option value='L3010825F'>OUE COMMERCIAL PROPERTY MANAGEMENT PTE. LTD.</option><option value='L3005683B'>P C SOLUTIONS</option><option value='L3001555D'>P N L REAL ESTATE</option><option value='L3007255A'>PACIFIC HOMES RELOCATION</option><option value='L3004395J'>PACIFIC NETWORK (SINGAPORE) PTE LTD</option><option value='L3004848K'>PAL REALTY</option><option value='L3006924J'>PALACE REALTY PTE LTD</option><option value='L3007729K'>PAN ASIA LAND</option><option value='L3010391B'>PAN ASIA PROPERTY GROUP PTE LTD</option><option value='L3005153G'>PANOVIEW REALTY</option><option value='L3005530G'>PARC REAL ESTATE</option><option value='L3009179E'>PARKLAND REAL ESTATE PTE LTD</option><option value='L3005453I'>PATRICK TAN PROPERTIES</option><option value='L3005029C'>PAVILION PROPERTY NEGOTIATORS PTE LTD</option><option value='L3008531G'>PDM PROPERTY DEVELOPMENT AND MANAGEMENT CONSULTANTS</option><option value='L3010495A'>PEAK REALTY PTE. LTD.</option><option value='L3009187K'>PEARSON PROPERTIES PTE. LTD.</option><option value='L3009444K'>PEGASON PROPERTIES LLP</option><option value='L3010876J'>PEGASUS PROPERTY SOLUTIONS PTE. LTD.</option><option value='L3010578H'>PENIEL PROPERTY PTE LTD</option><option value='L3005424E'>PENIEL REALTY SERVICES</option><option value='L3009641I'>PENNY CHIA PROPERTIES LLP</option><option value='L3002848D'>PENNYLANE PROPERTIES PTE LTD</option><option value='L3008171C'>PENROSE PROPERTY SERVICES</option><option value='L3007076E'>PENTAGON PROPERTY CONSULTANTS PTE LTD</option><option value='L3002436H'>PENTHOUSING PTE. LTD.</option><option value='L3010720I'>PERENNIAL (SINGAPORE) RETAIL MANAGEMENT PTE. LTD.</option><option value='L3008013I'>PETRA PROPERTY</option><option value='L3009196A'>PHDC INVESTMENTS PTE LTD</option><option value='L3007924H'>PHILANN PROPERTY & ASSOCIATES</option><option value='L3010784E'>PHOEBE QUEK REALTY PTE. LTD.</option><option value='L3009236K'>PICARDY REALTY PRIVATE LIMITED</option><option value='L3009352I'>PICK-A-PROPERTY REAL ESTATE</option><option value='L3009591C'>PIERRE INTERNATIONAL REALTY</option><option value='L3007087G'>PINETREE MARKETING & CONSULTANCY</option><option value='L3010760H'>PING PROPERTY PTE. LTD.</option><option value='L3010914G'>PIVOTAL REALTY</option><option value='L3005551E'>PJ PLANNING & DEVELOPMENT PTE LTD</option><option value='L3010474I'>PLACE2PLACE</option><option value='L3003841D'>PLACES PROPERTY CONSULTANTS PTE LTD</option><option value='L3010727F'>PLATINUM GLOBAL PROPERTIES PTE. LTD.</option><option value='L3010958I'>PLB REALTY PTE. LTD.</option><option value='L3010621J'>PLENITUDE REALTY PTE LTD</option><option value='L3003778D'>PMC SERVICES PTE LTD</option><option value='L3008602K'>PND PROPERTY AND DEVELOPMENT PTE LTD</option><option value='L3010612A'>POISE REAL ESTATE PTE. LTD.</option><option value='L3008615C'>POLARIS REALTY</option><option value='L3003025E'>POTHOUSE REAL ESTATE AGENCY</option><option value='L3009264I'>PRECEDENT REALTY LLP</option><option value='L3009691K'>PREFERRED PROPERTIES</option><option value='L3008164C'>PREMIER HOMES PTE LTD</option><option value='L3009712B'>PREMIERE REALTY PTE. LTD.</option><option value='L3009274E'>PREMIUM HOMES PTE. LTD.</option><option value='L3009754I'>PREMIUM PROPERTIES PTE. LTD.</option><option value='L3010016F'>PREMIUM REALTY CONSULTANCY PTE. LTD.</option><option value='L3009663B'>PRESIDENTIAL REAL ESTATE PTE. LTD.</option><option value='L3006163A'>PRESIDIO REALTY PTE LTD</option><option value='L3010912J'>PRESTIGE INVESTMENT ADVISORY PTE. LTD.</option><option value='L3005181E'>PRESTIGE PROPERTIES SERVICES</option><option value='L3010349A'>PRESTIGE REALTY GLOBAL PTE.LTD.</option><option value='L3010951A'>PRIME ASSET PROPERTY</option><option value='L3010649J'>PRIME ASSET PROPERTY PTE LTD</option><option value='L3006980F'>PRIME ESTATE CONSULTANTS</option><option value='L3008752J'>PRIME MANAGEMENT SERVICES</option><option value='L3007048G'>PRIME-D PROPERTY</option><option value='L3004776A'>PRIMELAND PROPERTY</option><option value='L3007074D'>PRIMELINK REALTY INTERNATIONAL PTE LTD</option><option value='L3010401C'>PRIMESHIELD PTE LTD</option><option value='L3005294E'>PRIMEVIEW PROPERTIES PTE LTD</option><option value='L3006233J'>PRINCETON ENTERPRISE PTE LTD</option><option value='L3004092A'>PRISCILLA LEE PROPERTIES</option><option value='L3008814B'>PRISTINE PROPERTIES PTE LTD</option><option value='L3007701D'>PRO-M PROPERTY PTE LTD</option><option value='L3005120A'>PROLINK REAL ESTATE</option><option value='L3004863F'>PROMAX MARKETING SERVICES</option><option value='L3006007H'>PROMOTIONAL PLUS MARKETING</option><option value='L3005085J'>PROP-NICHE REALTY PTE LTD</option><option value='L3009711G'>PROP-TODAY INVESTMENT</option><option value='L3010754C'>PROP-TODAY INVESTMENTS PTE. LTD.</option><option value='L3010776D'>PROPERLINK SERVICES PRIVATE LIMITED</option><option value='L3005884B'>PROPERTIES CONNECTIONS</option><option value='L3010558C'>PROPERTY 365 PTE. LTD.</option><option value='L3005161B'>PROPERTY ADVISORY INTERNATIONAL PTE LTD</option><option value='L3010806Z'>PROPERTY AGENT SINGAPORE PTE. LTD.</option><option value='L3009404E'>PROPERTY COLLECTION</option><option value='L3006538I'>PROPERTY IMAGE</option><option value='L3008654C'>PROPERTY INC. PTE LTD</option><option value='L3005228B'>PROPERTY LOCATERS PTE LTD</option><option value='L3010782I'>PROPERTY MAGNUM PTE. LTD.</option><option value='L3010941D'>PROPERTY MASTER REALTY PTE. LTD.</option><option value='L3005941H'>PROPERTY PLANNER PTE LTD</option><option value='L3009675J'>PROPERTY QUEST CONSULTANCY</option><option value='L3002122H'>PROPERTY RESOURCES</option><option value='L3005841K'>PROPERTY SOLUTION SERVICES</option><option value='L3010487J'>PROPERTY VISION & MANAGEMENT PTE LTD</option><option value='L3009362E'>PROPERTY-LINKS SERVICES</option><option value='L3009752H'>PROPERTYBANK PTE. LTD.</option><option value='L3009582B'>PROPERTYMART LLP</option><option value='L3010862J'>PROPERTYPAGE</option><option value='L3010599J'>PROPERTYSTAR REAL ESTATE GROUP PTE LTD</option><option value='L3006354E'>PROPEX PROPERTY EXCHANGE PTE LTD</option><option value='L3010926J'>PROPEX PROPERTY SERVICES</option><option value='L3004851I'>PROPFILE REALTY & AGENCY</option><option value='L3009172G'>PROPLINK CONSULTANT</option><option value='L3010743H'>PROPLINK CONSULTANT LLP</option><option value='L3010873F'>PROPMALL REALTY SOLUTIONS PRIVATE LIMITED</option><option value='L3009165G'>PROPMAX REAL ESTATE SERVICES PTE LTD</option><option value='L3010584B'>PROPNEX INTERNATIONAL PTE LTD</option><option value='L3008022J'>PROPNEX REALTY PTE. LTD.</option><option value='L3010858B'>PROPSELLER PTE. LTD.</option><option value='L3010480C'>PROPTRUST PTE LTD</option><option value='L3008957A'>PROREAL REALTY</option><option value='L3003597G'>PROSPECT REALTY</option><option value='L3004371E'>PROSPERCO INTERNATIONAL PROPERTY CONSULTANTS PTE LTD</option><option value='L3007684D'>PS ESTATE PTE LTD</option><option value='L3010813B'>PSG INTERNATIONAL REALTY PTE. LTD.</option><option value='L3008102D'>PTO PROPERTY SERVICES PTE. LTD.</option><option value='L3010517F'>PURELAND (S) REALTY</option><option value='L3008809C'>QIANYUE PROPERTY</option><option value='L3001365F'>QIEW HOCK HENG ENTERPRISE</option><option value='L3006421G'>QUALITY REAL ESTATE SERVICES</option><option value='L3010438B'>QUILLION GLOBAL PRIVATE LIMITED</option><option value='L3010956B'>QUINVEST CHAMBERS INTERNATIONAL PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3009459D'>QXSTATE ASIA PTE. LTD.</option><option value='L3009851J'>R & S REAL ESTATE CONSULTANTS</option><option value='L3009568B'>R H PROPERTY PTE LTD</option><option value='L3009552C'>R K REALTY PTE. LTD.</option><option value='L3009480D'>RAFFLES DEVELOPMENTS PTE. LTD.</option><option value='L3010683J'>RAFFLES QUAY ASSET MANAGEMENT PTE LTD</option><option value='L3005359D'>RAFFLES REALTY PTE LTD</option><option value='L3009466D'>RAINBOW PROPERTY CONSULTANTS</option><option value='L3010943J'>RAINMAKER LAND PTE. LTD.</option><option value='L3008660H'>RAINTREE HOUSING</option><option value='L3006936G'>RAY INTERNATIONAL PROPERTY CONSULTANTS PTE LTD</option><option value='L3009548J'>RAY INTERNATIONAL REAL ESTATE PTE. LTD.</option><option value='L3010598B'>RAYSON TAN REALTY PTE. LTD.</option><option value='L3010681D'>RE TRAINING & CONSULTANCY PTE LTD</option><option value='L3010734I'>RE2.0 PTE. LTD.</option><option value='L3009026J'>REA REALTY NETWORK PTE LTD</option><option value='L3009226D'>READING PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3009603D'>REAL CENTRE INTERNATIONAL PTE. LTD.</option><option value='L3009763J'>REAL CENTRE PROPERTIES PTE. LTD.</option><option value='L3008581I'>REAL CHANCE PROPERTY CONSULTANTS</option><option value='L3010542G'>REAL ESTATE ALLIANCE PTE LTD</option><option value='L3006119B'>REAL ESTATE BROKERS PTE LTD</option><option value='L3006531K'>REAL ESTATE MANAGEMENT & CONSULTANTS SERVICES PTE LTD</option><option value='L3010684I'>REAL ESTATE MATTERS</option><option value='L3009142H'>REAL GLOBAL PTE LTD</option><option value='L3010508G'>REAL VICTORY PROPERTIES PTE LTD</option><option value='L3010772A'>REALINK SG PROPERTY</option><option value='L3007342F'>REALMATCH SERVICES</option><option value='L3009799A'>REALNET PTE. LTD.</option><option value='L3007741J'>REALPLUS PROPERTY NETWORK</option><option value='L3008563G'>REALSTAR PREMIER GROUP PRIVATE LIMITED</option><option value='L3009810I'>REALTORS INN</option><option value='L3008570G'>REALTORS STAR PROPERTY PTE LTD</option><option value='L3004085A'>REALTY AGENCY PTE LTD</option><option value='L3010850G'>REALTY INTERNATIONAL CHARTERED SERVICES</option><option value='L3006521D'>REALTY MASTER</option><option value='L3010962G'>REALTY ONE GROUP LIFE STYLE PTE. LTD.</option><option value='L3005313F'>Realty Seeker</option><option value='L3006855G'>REALTY SUMMIT</option><option value='L3007705F'>REALTYONE SINGAPORE PTE LTD</option><option value='L3010026C'>REAPFIELD PROPERTY CONSULTANTS PTE LTD</option><option value='L3001845J'>REAT INTERNATIONAL</option><option value='L3010345I'>REDDOT PROPERTY PTE. LTD.</option><option value='L3006840C'>REENS MARKETING SERVICES</option><option value='L3008734H'>REGAL ASSET CONSULTANTS PTE LTD</option><option value='L3010807H'>REGAL INTERNATIONAL ASSETS PTE. LTD.</option><option value='L3006121E'>REGAL PROPERTY</option><option value='L3010758F'>REGALIA PROPERTIES PTE. LTD.</option><option value='L3010571J'>REGENCE INVESTMENTS CONSULTANCY PTE. LTD.</option><option value='L3007629C'>REGENCY ASSETS INT'L</option><option value='L3010324F'>REGENT ASSOCIATES PLTD</option><option value='L3010304A'>REGION PROPERTY CONSULTANCY & MANAGEMENT SERVICES PTE LTD</option><option value='L3009673I'>REGIUS PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3010537J'>RELIANCE PROPERTY NETWORK PTE LTD</option><option value='L3010326B'>RELIANT REALTY</option><option value='L3006127H'>RELIC PROPERTY CONSULTANTS</option><option value='L3010678D'>REN REALTY (PRIVATE LIMITED)</option><option value='L3007205J'>RENE REALTY</option><option value='L3010662H'>RENN PROPERTY PTE. LTD.</option><option value='L3006477A'>RENNU MAHAJAN & REALTORS</option><option value='L0000081G'>Renren Property Services Pte Ltd</option><option value='L3009523J'>RENTALS & SALES</option><option value='L3005917A'>REP MANAGEMENT SERVICES</option><option value='L3006825H'>RER CONSULT PTE LTD</option><option value='L3004558E'>RESICOM AGENCY</option><option value='L3009710A'>RESIDENTAGENT.SG PTE. LTD.</option><option value='L3009175C'>RESIHUB PROPERTY</option><option value='L3006981A'>REUNION PROPERTIES PTE LTD</option><option value='L3009536B'>REYFERN REAL ESTATE CONSULTANCY PTE LTD</option><option value='L3006907C'>RH HOUSING AGENCY PTE LTD</option><option value='L3007523C'>RHEMA PROPERTIES</option><option value='L3010680F'>RHT CHESTERTONS PTE LTD</option><option value='L3010820E'>RHT CHESTERTONS SINGAPORE PTE. LTD</option><option value='L3010883C'>RHT REALTY PTE LTD</option><option value='L3007177H'>RI AND ASSOCIATES</option><option value='L3010624E'>RICHARD JANY REAL ESTATE PTE. LTD.</option><option value='L3006781G'>RICHFORD PROPERTY</option><option value='L3008448D'>RICHLINK PROPERTIES</option><option value='L3010733J'>RICHMOND CAPITAL INVESTMENTS PTE. LTD.</option><option value='L3002458A'>RICHOMES ENTERPRISE</option><option value='L3009733K'>RIDGELAND INTERNATIONAL</option><option value='L3004990F'>RIGHTMANN PROPERTIES & CONSULTANTS</option><option value='L3008706J'>RING REALTY</option><option value='L3001898H'>RINTO ASSOCIATES</option><option value='L3007376G'>RIPTON REALTY PTE LTD</option><option value='L3006095D'>RISING REALTY & SERVICES PTE LTD</option><option value='L3005158D'>RITRAK PROPERTIES & MANAGEMENT</option><option value='L3009853K'>RITZ PROPERTIES PTE LTD</option><option value='L3009369C'>RJV PROPERTIES PTE. LTD.</option><option value='L3010692Z'>RMY GLOBAL PTE. LTD.</option><option value='L3010039E'>RNS PROPERTY MANAGEMENT SERVICES</option><option value='L3009163F'>ROBELLZ D. SINGAPORE PTE LTD</option><option value='L3007212J'>ROBERT KHAN & CO PTE LTD</option><option value='L3010642C'>ROBIN PROPERTY SERVICES</option><option value='L3009838E'>ROCHDALE REALTY PTE. LTD.</option><option value='L3007144B'>RONALD WEE REALTY PTE LTD</option><option value='L3009293B'>ROYAL BROKERS REALTY PTE. LTD.</option><option value='L3001370E'>ROYAL HOUSING ENTERPRISE</option><option value='L3009832B'>ROYAL PROPERTIES GROUP LLP</option><option value='L3005927H'>ROYALLAND REAL ESTATE</option><option value='L3006420A'>RS PROPERTIES</option><option value='L3006082A'>RTS PROPERTY SERVICES</option><option value='L3010529Z'>RUS REAL ESTATE AGENTS LLP</option><option value='L3006148F'>S J K PROPERTIES</option><option value='L3004418B'>S M REALTY</option><option value='L3006326G'>S N PROPERTY NETWORK</option><option value='L3006548E'>S S T MATTAR CO</option><option value='L3007283J'>S T ESTATE AGENCY</option><option value='L3007060F'>S Y ESTATES</option><option value='L3006598G'>S&E REALTY & MANAGEMENT</option><option value='L3009588E'>S2M PROPERTY LLP</option><option value='L3010826D'>SABANA PROPERTY MANAGEMENT PTE. LTD.</option><option value='L3009342B'>SAET ENTERPRISE</option><option value='L3010539G'>SAFFRON PROPERTY INT PTE LTD</option><option value='L3010816G'>SAKAL REAL ESTATE PARTNERS PTE. LTD.</option><option value='L3010756Z'>SAKURAM AGENCY</option><option value='L3008855C'>SAMLYN REALTY</option><option value='L3004565E'>SANDHURST REALTY</option><option value='L3009270C'>SATO PROPERTY LLP</option><option value='L3009638K'>SAVE REALTY & PARTNERS</option><option value='L3009688B'>SAVILLS (SINGAPORE) PTE. LTD.</option><option value='L3007487F'>SAVILLS RESIDENTIAL PTE LTD</option><option value='L3001036K'>SBS REALTY SERVICES PTE LTD</option><option value='L3010547H'>Scotia Real Estate Group Pte Ltd</option><option value='L3010441B'>SCOUT PROPERTY</option><option value='L3008352K'>SCTAN REAL ESTATE</option><option value='L3010728D'>SE ALLIANCE MANAGEMENT PTE LTD</option><option value='L3009106D'>SE REALTY PTE LTD</option><option value='L3006644K'>SEAVON PROPERTIES</option><option value='L3005739K'>SELECTUS MANAGEMENT SERVICES</option><option value='L3006181C'>SELPRO REAL ESTATE</option><option value='L3008930K'>SENG PROPERTY & SERVICES</option><option value='L3007127F'>SENGCO REALTY</option><option value='L3010861B'>SENTURION REAL ESTATE PRIVATE LIMITED</option><option value='L3009735A'>SEPE (SINGAPORE) PTE. LTD.</option><option value='L3010526E'>SG COMMERCIAL MANAGEMENT PTE LTD</option><option value='L3009469K'>SG CONDO PTE. LTD.</option><option value='L3009670B'>SG PROPERTY INTERNATIONAL</option><option value='L3010814J'>SGD REALTY PTE LTD</option><option value='L3010837Z'>SGP REALTY LP</option><option value='L3004650I'>SGS REAL ESTATE</option><option value='L3002688E'>SHANG PROPERTIES PTE LTD</option><option value='L3010797G'>SHAPEZ INTERNATIONAL PROPERTY SERVICES</option><option value='L3010377G'>SHEEN REALTY PTE. LTD.</option><option value='L3010685G'>SHEILA PANSY & HUANG ZI ZHENG REAL ESTATE PTE. LTD.</option><option value='L3010047F'>SHELTON REALTY SERVICES PTE LTD</option><option value='L3010601F'>SHENTON REALTY HOMES PTE. LTD.</option><option value='L3008766H'>SHIN PROPERTY SERVICES PTE LTD</option><option value='L3010751I'>SHINE PROPERTY@65</option><option value='L3007688F'>SHINOKEN & HECKS PTE LTD</option><option value='L3005986K'>SHL REALTY PTE LTD</option><option value='L3007358E'>SHOURI REALTY CONSULTANTS</option><option value='L3010884A'>SHOWSUITE CONSULTANCY PTE. LTD.</option><option value='L3010312B'>SIDNEY WONG REALTY</option><option value='L3003110I'>SIERRA PROPERTIES</option><option value='L3010436F'>SILVERTREE PROPERTY PTE LTD</option><option value='L3007991F'>SIMON WEILS</option><option value='L3010846I'>SIMPLE SIMON HOMES PTE. LTD.</option><option value='L3008059G'>SIMPLY HOMES</option><option value='L3005069I'>SIN-GLOBE REAL ESTATE</option><option value='L3005758H'>SINCERE REALTY</option><option value='L3007110A'>SING KONG REAL ESTATE</option><option value='L3006437F'>SINGAHOME PROPERTY CONSULTANCY</option><option value='L3007604C'>SINGALAND INTERNATIONAL PTE LTD</option><option value='L3009643J'>SINGAPORE ESTATE AGENCY PTE LTD</option><option value='L3004535F'>SINGAPORE MULTIPLE LISTING SERVICES PTE LTD</option><option value='L3009535G'>SINGAPORE OFFICE SEARCH</option><option value='L3009353D'>SINGAPORE PROPERTIES AND ASSETS NETWORK LLP</option><option value='L3000680E'>SINGAPORE REAL ESTATE AGENCY</option><option value='L3010430G'>SINGAPORE REALTY SOLUTIONS PTE LTD</option><option value='L3009234J'>SINGAPORE RESIDENTIAL PROPERTIES PTE. LIMITED</option><option value='L3010785C'>SINGAPORE SPACE PTE. LTD.</option><option value='L3006627D'>SINGLAND REALTY NETWORK</option><option value='L3010411J'>SINGMALL MANAGEMENT CONSULTANCY</option><option value='L3009687G'>SINGPLACE PTE LTD</option><option value='L3010017D'>SJ ESTATE LLP</option><option value='L3009252A'>SK INTERNATIONAL PROPERTY CONSULTANTS</option><option value='L3007378H'>SK REALTY PTE LTD</option><option value='L3007234C'>SKS REALTY</option><option value='L3010936H'>SKV INTERNATIONAL PROPERTY CONSULTANTS</option><option value='L3010757H'>SKY EMINENCE PRIVATE LIMITED</option><option value='L3008836F'>SKY VIEW PROPERTIES</option><option value='L3007282D'>SKYCOMM REALTY PTE LTD</option><option value='L3010516H'>SKYLAND PROPERTY PTE. LTD.</option><option value='L3009567G'>SKYSUITE PROPERTIES PTE. LTD.</option><option value='L3009018D'>SLP INTERNATIONAL PROPERTY CONSULTANTS PTE LTD</option><option value='L3009793I'>SLP SCOTIA PTE LTD</option><option value='L3006193K'>SMART PROPERTIES</option><option value='L3005974C'>SMT PROPERTY SERVICES</option><option value='L3010895G'>SN REAL ESTATE PTE. LTD.</option><option value='L3010605I'>SOFIE REALTY SERVICES PTE. LTD.</option><option value='L3002093K'>SOH KOK FOO PTE LTD</option><option value='L3009393J'>SOL PTE. LTD.</option><option value='L3010767E'>SOLID ROCK PROPERTIES PTE LTD</option><option value='L3010771C'>SOLITAIRE PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3001144C'>SOON LEE HOLDINGS PTE LTD</option><option value='L3010513C'>SOUTH EAST PROPERTY PTE LTD</option><option value='L3010815I'>SOVEREIGN REALTY PTE. LTD.</option><option value='L3009713H'>SP HOUSING & REALTY</option><option value='L3010325D'>SPACES & PLACES</option><option value='L3009532K'>SPACEZ REAL ESTATE PRIVATE LIMITED</option><option value='L3004057C'>SPECIALIST REALTY & MANAGEMENT PTE LTD</option><option value='L3003182D'>SPEED SYSTEM HOUSING</option><option value='L3010015H'>SPEEDO PROPERTY SERVICES</option><option value='L3010759D'>SPH RETAIL PROPERTY MANAGEMENT SERVICES PTE. LTD.</option><option value='L3010420Z'>SPRINGHOMES PROPERTY NETWORK</option><option value='L3010444G'>SPRUCE REALTY PTE LTD</option><option value='L3010058A'>SQFT GLOBAL PROPERTIES SINGAPORE PTE. LTD.</option><option value='L3010360B'>SQUARE FEET REALTY LLP</option><option value='L3010611C'>SQUARE YARDS SINGAPORE PTE. LIMITED</option><option value='L3006852K'>SRA REALTY NETWORK PTE LTD</option><option value='L3003444A'>SRE GLOBAL PTE LTD</option><option value='L3010921Z'>SRI CAPITAL MARKET PTE. LTD.</option><option value='L3010738A'>SRI PTE. LTD.</option><option value='L3007717C'>SRS REALTY NETWORK PTE LTD</option><option value='L3009615A'>ST PLUS PROPERTIES PTE. LTD.</option><option value='L3006544C'>ST REALTY</option><option value='L3010737C'>STAMFORD INTERNATIONAL REALTY PTE. LTD.</option><option value='L3009438F'>STANDARD REAL ESTATE PTE LTD</option><option value='L3009327G'>STAR BRIGHT REALTY</option><option value='L3010466H'>STAR MARK REALTY PTE LTD</option><option value='L3009292G'>STAR PROJECT PTE. LTD.</option><option value='L3010839F'>STAR REALTY NETWORK</option><option value='L3010351C'>STARHILL PROPERTY PTE LTD</option><option value='L3007682C'>STARLITE PROPERTY INTERNATIONAL</option><option value='L3010028Z'>STARTS SINGAPORE PTE LTD</option><option value='L3003309F'>STEADFAST PROPERTY MANAGEMENT</option><option value='L3010329G'>STEPHEN OOI REALTORS INTERNATIONAL</option><option value='L3010556G'>STERLING PROPERTY CONSULTANTS PTE LTD</option><option value='L3007267I'>STEVEN CHIA AND ASSOCIATES PROPERTY AGENCIES</option><option value='L3010903A'>STOREYS PTE. LTD.</option><option value='L3006396A'>STRATA AMC PTE. LTD.</option><option value='L3008128J'>STRATEGIC PROPERTY NETWORK</option><option value='L3007801A'>STRATUM PROPERTIES PTE LTD</option><option value='L3010656C'>STRAWBERRY STAR LETTINGS AND SALES PTE. LIMITED</option><option value='L3007165K'>STRONG REALTY PTE LTD</option><option value='L3006816G'>SUCCESS REALTY NETWORK</option><option value='L3010798E'>SUITEHUT PRIVATE LIMITED</option><option value='L3003863H'>SULTAN PROPERTIES</option><option value='L3010682B'>SUMITOMO REALTY & DEVELOPMENT SINGAPORE PTE. LTD.</option><option value='L3007955B'>SUMMIT PLANNERS PROPERTIES PTE LTD</option><option value='L3010544C'>SUNCHEST PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3007197K'>SUNHILL PROPERTY MANAGEMENT</option><option value='L3002675B'>SUNNYLAND INVESTMENT PTE LTD</option><option value='L3006297J'>SUNSHINE PROPERTIES</option><option value='L3005598I'>SUNWIN PROPERTIES PTE LTD</option><option value='L3005312K'>SUPREMEHOME PROPERTIES</option><option value='L3010802G'>SVC REAL ESTATE ADVISORY PTE. LTD.</option><option value='L3010930I'>SWANZ REALTY PTE. LTD.</option><option value='L3004659H'>SWITZE PROPERTIES</option><option value='L3008408I'>SYMPHONY HOMES PTE LTD</option><option value='L3009445F'>T PROPERTY LINK PTE. LTD.</option><option value='L3004132K'>T.C.N. PROPERTY AGENCIES</option><option value='L3004866B'>T.G.S. REAL ESTATE</option><option value='L3005853H'>TAN KOK ENG PROPERTY CONSULTANTS PTE LTD</option><option value='L3009785C'>TANGERINE@SOL</option><option value='L3008087E'>TANIA PROPERTIES SERVICES PTE LTD</option><option value='L3009224C'>TASANI REALTY PRIVATE LIMITED</option><option value='L3009826H'>TASHI PROPERTY NETWORK</option><option value='L3006704B'>TASK REAL ESTATE SERVICES</option><option value='L3006881D'>TBP REALTY</option><option value='L3009396F'>TCN CONSULTANTS</option><option value='L3007680B'>TDM PROPERTIES PTE LTD</option><option value='L3008178A'>TEAKHWA REAL ESTATE PTE LTD</option><option value='L3003003A'>TEAMY PROPERTIES PTE LTD</option><option value='L3008771G'>TELIGEN PROPERTIES</option><option value='L3009794D'>TEMBUSU PROPERTIES PTE. LTD.</option><option value='L3010482Z'>TENANT CS PRIVATE LIMITED</option><option value='L3001211E'>TEO HOUSE & LAND AGENCY</option><option value='L3009153J'>TERRITORY PROPERTIES PTE LTD</option><option value='L3005490H'>TEXAN PROPERTY PTE LTD</option><option value='L3006760I'>TGSK PROPERTIES</option><option value='L3004301K'>THAM & NG PROPERTIES</option><option value='L3009857B'>THE EDGE REALTY</option><option value='L3001630A'>THE MINT PROPERTY CO PTE LTD</option><option value='L3006630B'>THE ONE PROPERTY SERVICES</option><option value='L3009824G'>THE PALM REAL ESTATE PTE LTD</option><option value='L3010585J'>THE PROPERTY CONSORTIUM PTE. LTD.</option><option value='L3007769F'>THE PROPERTY FORCE</option><option value='L3009112I'>THE PROPERTY SPECIALIST.COM PTE LTD</option><option value='L3009098E'>THE REAL SPECIALISTS PTE. LTD.</option><option value='L3006932E'>THE REALTY EXCHANGE PTE LTD</option><option value='L3009604J'>THE REALTY NAVIGATOR PTE. LTD.</option><option value='L3010625C'>THE REALTY SPECIALISTS PTE. LTD.</option><option value='L3010920A'>THEME A PROPERTIES PTE. LTD.</option><option value='L3009354J'>THL PROPERTY MANAGEMENT SERVICES</option><option value='L3006724E'>TIEN-I REALTY</option><option value='L3010812D'>TIEN-I REALTY PTE. LTD.</option><option value='L3009398G'>TIJAYA HOLDINGS PTE. LTD.</option><option value='L3009379J'>TIMOTHY TAN REALTY</option><option value='L3010353Z'>TINGO PROPERTY NETWORKS</option><option value='L3006920H'>TIPTOP REALTY</option><option value='L3010631H'>TITAN REAL ESTATES PTE. LTD.</option><option value='L3009553I'>TJ & LIN INTERNATIONAL</option><option value='L3009500K'>TKG PROPERTY PTE. LTD.</option><option value='L3010712H'>TMG REALTY PTE. LTD.</option><option value='L3010717I'>TMJ AGENCY</option><option value='L3008753E'>TOKIO PROPERTY SERVICES PTE LTD</option><option value='L3010922H'>TOP LEADERS GROUP PRIVATE LIMITED</option><option value='L3007841G'>TOP LEADERS REALTY PTE LTD</option><option value='L3008514K'>TOP PROPERTIES</option><option value='L3005518H'>TOWN & COUNTRY PROPERTIES PTE LTD</option><option value='L3003229A'>TOWN REALTOR SGP PTE LTD</option><option value='L3009436E'>TRADING PLACES REALTY PTE LTD</option><option value='L3010885Z'>TRAINADO COMPANY LLP</option><option value='L3001960B'>TRANSLAND ASSOCIATES</option><option value='L3009334G'>TRANSLAND HOMES & PROPERTIES</option><option value='L3005026G'>TRANSWORLD REALTY PTE LTD</option><option value='L3005824D'>TREASURE HOMES AGENCY</option><option value='L3008744D'>TREASURE REAL ESTATE PTE LTD</option><option value='L3009772K'>TREND REALTY</option><option value='L3010830B'>TRENDSTEQ PTE. LTD.</option><option value='L3002284D'>TREVOSE HOUSING</option><option value='L3004582A'>TRICIA DAVIS PROPERTY CONSULTANTS</option><option value='L3006438A'>TRILINK REALTY</option><option value='L3010387D'>TRILLION PROPERTY PTE LTD</option><option value='L3010515Z'>TRILLION REALTY PTE. LTD.</option><option value='L3009797K'>TRIPLE ONE PROPERTIES ASSOCIATES</option><option value='L3008528I'>TRIPLE ONE PROPERTIES PTE LTD</option><option value='L3010945G'>TRIPLE ONE PROPERTY</option><option value='L3009694G'>TRISTAR PROPERTIES PTE. LTD.</option><option value='L3002155C'>TROPICAL REALTY PTE LTD</option><option value='L3010875B'>TRUEVINE REALTY PTE. LTD.</option><option value='L3006626I'>TRUST TRADING & HOUSING</option><option value='L3005686I'>TRUSTWELL REALTY PTE LTD</option><option value='L3007434H'>TTT MANAGEMENT SERVICES</option><option value='L3009674D'>TUBA REAL ESTATE</option><option value='L3006469F'>TUSCANY REALTY PTE LTD</option><option value='L3009598A'>TYF REALTY PTE. LTD.</option><option value='L3009493G'>TZN PTE LTD</option><option value='L3010458G'>UEMS SOLUTIONS PTE LTD</option><option value='L3005114G'>UNICORN REALTY PTE LTD</option><option value='L3002452I'>UNIHOME AGENCY</option><option value='L3008006I'>UNITECHNO REALTY PTE LTD</option><option value='L3009513C'>UNITED LANDBANK REALTY PTE. LTD.</option><option value='L3004346C'>UNITED REAL ESTATE SERVICES</option><option value='L3009372A'>UNITY PROPERTY PTE. LTD.</option><option value='L3001084A'>UNIVERSAL REALTY (PRIVATE) LIMITED</option><option value='L3009406F'>URBAN FRONT REAL ESTATE PTE LTD</option><option value='L3010834E'>URBANSCOUTS REALTY PTE. LTD.</option><option value='L3009781A'>UTOPIA PROPERTIES PRIVATE LIMITED</option><option value='L3008636A'>VALLEY REALTY</option><option value='L3001651J'>VALMARK PROPERTIES (ESTD 1979)</option><option value='L3002288F'>VANDA REALTY PTE LTD</option><option value='L3009381B'>VANESSA TERK PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3006458D'>VANTAGE VALUERS & PROPERTY CONSULTANTS PTE LTD</option><option value='L3010671G'>VAS REALTY SERVICES</option><option value='L3010960J'>VELOCITY PTE. LTD.</option><option value='L3003267F'>VENTURE GLOBAL REAL ESTATE</option><option value='L3010603B'>VENTURE INTERNATIONAL PROPERTIES PTE. LTD.</option><option value='L3009695B'>VERITAS PROPERTIES PTE LTD</option><option value='L3007479K'>VERON'S REAL ESTATE AGENCY PTE LTD</option><option value='L3010860D'>VESPER HOMES PTE. LTD.</option><option value='L3008796G'>VESTASIA PTE LTD</option><option value='L3010045Z'>VESTOR REALTY PTE LTD</option><option value='L3010460I'>VG REAL ESTATE</option><option value='L3009258D'>VIBES REALTY</option><option value='L3009655G'>VICTOR REALTY PTE. LTD.</option><option value='L3002008K'>VIEW ENTERPRISE PTE LTD</option><option value='L3006005G'>VIEWPOINT PROPERTY SERVICES</option><option value='L3010610E'>VIGERS REAL ESTATE PTE. LTD.</option><option value='L3001930C'>VILLA INVESTMENTS PTE LTD</option><option value='L3010032H'>VILLA PROPERTY CONSULTANTS PTE LTD</option><option value='L3002741I'>VIN PROPERTIES</option><option value='L3005341D'>VINE REAL ESTATE AGENCY</option><option value='L3006646A'>VIOLET REALTY</option><option value='L3010823Z'>VIP REALTORS PTE. LTD.</option><option value='L3007186I'>VISA PROPERTY PTE LTD</option><option value='L3009395K'>VISION PROPERTIES PTE. LTD.</option><option value='L3010852C'>VISION TEN PTE. LTD.</option><option value='L3010780B'>VIVA REAL ESTATE ASSET MANAGEMENT PTE. LTD.</option><option value='L3007228I'>VST REALTY</option><option value='L3010362I'>VSTAR REAL ESTATE GROUP PTE. LTD.</option><option value='L3010471D'>VVIP INTERNATIONAL PTE LTD</option><option value='L3005777E'>VVM ENTERPRISE</option><option value='L3006617H'>W K PROPERTIES PTE LTD</option><option value='L3009779I'>WALLINGTONS INTERNATIONAL PTE. LTD.</option><option value='L3010907D'>WANG PROPERTY SERVICES PTE. LTD.</option><option value='L3009847F'>WAREN PLUS PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3009617B'>WAREN REAL ESTATES (PTE.) LIMITED</option><option value='L3008549G'>WATEREAL & LANDS PTE LTD</option><option value='L3004587I'>WATERFORD PROPERTIES</option><option value='L3010840Z'>WATERFORD PROPERTIES PTE. LTD.</option><option value='L3009205F'>WATERLIGHT</option><option value='L3006277G'>WATTEN REALTY PTE LTD</option><option value='L3008656D'>WAYNES REAL ESTATE</option><option value='L3010577Z'>WE PROPERTIES PTE. LTD.</option><option value='L3010551F'>WEALTHY GLOBAL PTE LTD</option><option value='L3009642D'>WEB REALTORS PTE. LTD.</option><option value='L3006905B'>WEIDA REALTY</option><option value='L3004804C'>WEIDAR REAL ESTATE MARKETING</option><option value='L3010677F'>WELLCITY (1998) PTE. LTD.</option><option value='L3008029H'>WELLDUN REALTY SERVICES</option><option value='L3002620C'>WELLHOME REAL ESTATE BUSINESS COMPANY</option><option value='L3009044A'>WEMEC PROPERTIES</option><option value='L3002984E'>WENG HONG LI TRADING CO</option><option value='L3009145D'>WEST LAND</option><option value='L3009769B'>WESTON GLOBAL REALTY PTE. LTD.</option><option value='L3010932E'>WESTON VISION REALTY PTE. LTD.</option><option value='L3009517E'>WGR GLOBAL PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3010538I'>WGR PROPERTY CONSULTANTS PTE. LTD.</option><option value='L3005791E'>WHITE REALTY PTE. LTD.</option><option value='L3008289K'>WHITE SUN PROPERTIES</option><option value='L3008999H'>WILD WILD WEST PROPERTIES PTE LTD</option><option value='L3007257B'>WIN WIN PROPERTY</option><option value='L3010628H'>WINFIELD REAL ESTATE SERVICES</option><option value='L3007383G'>WINPLUS REALTY NETWORK</option><option value='L3010018B'>WINWORLD REAL ESTATE</option><option value='L3010948A'>WIPLUS REALTY SERVICES PTE. LTD.</option><option value='L3010668G'>WISE GURU PTE. LTD.</option><option value='L3006721I'>WISE PROPERTY CONSULTANTS PTE LTD</option><option value='L3007681H'>WISELY 98 PTE LTD</option><option value='L3003882E'>WISMA AGENCIES</option><option value='L3010836A'>WISMA AGENCIES PTE. LTD.</option><option value='L3008763A'>WJ LLOYDS PROPERTIES</option><option value='L3007392H'>WJ LLOYDS REALTORS (S) PTE LTD</option><option value='L3010320C'>WKL REALTY</option><option value='L3007576A'>WN PROPERTY PTE LTD</option><option value='L3010959G'>WORLDBIZ REALTY PTE. LTD.</option><option value='L3010062Z'>WORLDWIDE PROPERTY SOLUTIONS PTE LTD</option><option value='L3008403A'>WRITE REALTY PTE LTD</option><option value='L3004221F'>WRJ & ASSOCIATES</option><option value='L3010370Z'>WTG CONSULTANTS PTE LTD</option><option value='L3010371H'>WTG PROPERTY PTE LTD</option><option value='L3008051C'>WWW.SINGAPORE-REAL-ESTATE.COM PTE LTD</option><option value='L3010796I'>WYNDHAM CAPITAL PTE. LTD.</option><option value='L3008330G'>X-TRACO PROPERTY MANAGEMENT SERVICES</option><option value='L3009683E'>YANLY PROPERTY CONSULTANTS</option><option value='L3006988J'>YASUDA REAL ESTATE NETWORK</option><option value='L3004237E'>YEO & YEO PROPERTIES PTE LTD</option><option value='L3010865E'>YES 21 PROPERTY AGENTS LLP</option><option value='L3006782B'>YES PROPERTY PTE LTD</option><option value='L3010674A'>YETO ESTATE PTE. LTD.</option><option value='L3009066E'>YGMH CONSULTANTS & MANAGEMENT</option><option value='L3009776B'>YHB SERVICES PTE. LTD.</option><option value='L3007242I'>YIJIA REALTY</option><option value='L3009846K'>YK REALTY CONSULTANTS</option><option value='L3007648K'>YKS REALTY SERVICES</option><option value='L3004917C'>YKY 1991 PTE. LTD.</option><option value='L3007878D'>YNH REALTY</option><option value='L3010569I'>YOUNIQUE PROPERTY CONSULTANTS PTE LTD</option><option value='L3010064F'>YOUR ESTATE SPECIALIST LLP</option><option value='L3003345J'>YOUR HOME FINDER</option><option value='L3010787Z'>YTL STARHILL GLOBAL PROPERTY MANAGEMENT PTE. LTD.</option><option value='L3010572I'>ZENITH REAL ESTATE SERVICES PTE. LTD.</option><option value='L3006416H'>ZEST PROPERTY SERVICES PTE LTD</option><option value='L3010483H'>ZHONG HUAN REALTY & MANAGEMENT LLP</option><option value='L3008608C'>ZONELINK HOME SERVICES</option><option value='L3004603C'>ZRP REAL ESTATE & SERVICES</option> </select> </div> </div> <div class="col-md-12"> <div class="form-group"> <label class="pull-left" for="agent_designation">Job Designation</label> <label id="agent_designation-error" class="error pull-right" for="agent_designation"></label> <input type="text" class="form-control form-control-user-register" id="agent_designation" name="agent_designation" /> </div> </div> </div> </div> <div class="row"> <div class="col-md-12"> <div class="col-md-6"> <input type="hidden" id="get_phone_number"> <input type="hidden" id="get_country_code"> <div class="form-group"> <div class="row spacing-mobile spacing-mobile-user-register"> <div class="col-md-12 col-xs-12"> <label class="pull-left" for="agent_first_name" style="display:block; font-weight: normal !important;"><font weight="normal" face="Poppins">Name</font></label> </div> <div class="col-md-6 col-xs-6"> <!-- <label id="agent_first_name-error" class="error pull-right" for="agent_first_name"></label> --> <input type="text" class="form-control form-control-user-register" id="agent_first_name" name="agent_first_name" placeholder="First Name" /> <label style='font-weight: normal; width: 100%;' id="agent_first_name-error"" class="error pull-right" for="agent_first_name"></label> </div> <div class="col-md-6 col-xs-6"> <!-- <label id="agent_last_name-error" class="error pull-right" for="agent_last_name"></label> --> <input type="text" class="form-control form-control-user-register" id="agent_last_name" name="agent_last_name" style="margin-left:-1px" placeholder="Last Name"/> <label style='font-weight: normal; width: 100%;' id="agent_last_name-error"" class="error pull-right" for="agent_last_name"></label> </div> </div> </div> <div class="form-group"> <!-- <label class="pull-left" for="agent_password">Password</label>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <label for="confirm_password">Confirm Password</label> --> <!-- <span class="input-group-btn" style="width:100px;"></span> --> </div> <!-- <div class="form-group"> <label class="pull-left" for="agent_password">Password</label> <label id="agent_password-error" class="error pull-right" for="agent_password"></label> <input type="password" class="form-control form-control-user-register" id="agent_password" name="agent_password" /> </div> <div class="form-group"> <label class="pull-left" for="confirm_password">Confirm Password</label> <label id="confirm_password-error" class="error pull-right" for="confirm_password"></label> <input type="password" class="form-control form-control-user-register" id="confirm_password" name="confirm_password"/> </div> --> <div class="form-group"> <label class="pull-left" for="agent_email"><font face="Poppins">Email Address</font></label> <input type="email" class="form-control form-control-user-register" id="agent_email" name="agent_email" /> <label style='font-weight: normal; width: 100%;' id="agent_email-error" class="error pull-right" for="agent_email"></label> </div> </div> <div class="col-md-6"> <div class="form-group"> <div class="row" style="margin: 0;"> <div class="col-sm-12 col-md-6 no-pad-left no-pad-left-user-register"> <div class="col-sm-12 col-md-12" style="padding:0px"> <label class="pull-left" for="state" style="font-weight: normal !important;"><font face="Poppins">Country Code</font></label> </div> <div class="form-group country-code"> <select class='select-country-code-register select-phone-number-otp form-control' tabindex='-1' aria-hidden='true' name='state' style="height:38px"> <option value='+65' selected='selected'>Singapore (+65)</option> </select> <input type='hidden' class='input-phone-number-register'> <!-- <input type="text" class="form-control form-control-user-register" id="agent_phone" name="agent_phone" placeholder="+65 XXX XXXXXX "/> --> <!-- <label style='font-weight: normal; width: 100%;' id="agent_phone-error" class="error pull-right" for="agent_phone"></label> --> </div> </div> <div class="col-sm-12 col-md-6 no-pad-right no-pad-right-user-register"> <div class="col-sm-12 col-md-12" style="padding:0px;font-weight: normal !important;"> <label class="pull-left" for="agent_phone" style="font-weight: normal !important;"><font face="Poppins">Mobile Number</font></label> </div> <div class='input-group agent_phone input-user-pn'> <div class='input-group-addon' id='register-country-code-addon'>+65</div> <input type="text" class="form-control form-control-user-register" id="agent_phone" name="agent_phone" placeholder="Mobile Number"/> <!-- <input type='text' class='form-control' id='input-col2' placeholder='Mobile Number'> --> </div> <input type='hidden' value='login' name='source_otp_request'> <!-- <div class="form-group agent_phone"> --> <!-- <input type="text" class="form-control form-control-user-register" id="agent_phone" name="agent_phone" placeholder="+65 XXX XXXXXX "/> --> <label style='font-weight: normal; width: 100%;' id="agent_phone-error" class="error pull-right" for="agent_phone"></label> <!-- </div> --> </div> </div> </div> <div class="form-group"> <div class="row" style="margin: 0;"> <!-- <label class="pull-left" for="agent_password">Password</label> <label class="pull-left" for="confirm_password">Confirm Password</label> --> <div class="col-sm-12 col-md-6 no-pad-left no-pad-left-user-register"> <span class="pull-left" for="agent_password"><font face="Poppins">Password</font></span> <input type="password" class="form-control form-control-user-register" id="agent_password" name="agent_password" placeholder="Password"/> <label style='font-weight: normal; width: 100%;' id="agent_password-error" class="error pull-right" for="agent_password"></label> </div> <div class="col-sm-12 col-md-6 no-pad-right no-pad-right-user-register"> <span for="confirm_password"><font face="Poppins">Confirm Password</font></span> <input type="password" class="form-control form-control-user-register" id="confirm_password" name="confirm_password" placeholder="Confirm Password"/> <label style='font-weight: normal; width: 100%;' id="confirm_password-error" class="error pull-right" for="confirm_password"></label> </div> </div> </div> </div> </div> </div> <div class="row "> <div id="tacWrapper" class="col-md-12 col-sm-12 col-xs-12 tac-parent-wrapper"> <div class="subscribe" class="col-md-12"> <div class="checkbox"> <label> <div class="tac-wrapper"> <div class="tac-checkbox"> <input id="chk_confirm" name="chk_confirm" class="reg_checkbox" type="checkbox" value="1"> </div> <div class="tac-text"> <h6>By creating an account, you confirm that you accept the <a href="/content/terms-use">Terms and Conditions</a> and <a href="/content/pdpa">Privacy Policy</a></h6> </div> </div> </label> <label id="chk_confirm-error" class="error" for="chk_confirm"></label> </div> </div> </div> <div class="col-md-12 col-sm-12 col-xs-12"> <div class="tnc_check centered" class="col-md-12"> <br> <div class="col-md-12 col-sm-12 col-xs-12 submit-row-wrapper"> <button id="btn_create" type="submit" class="btn btn-lg btn-default form-submit" style="position:relative;padding:0px;"> <div class="register-spinner-user"> <i class="fa fa-spinner fa-spin" style="font-size: 2em;" aria-hidden="true"></i> </div> <p style="margin:10px 30px;">Create Account</p> </button> <h6>Already registered? <a href="#" id="link_login" onclick="">Login Here</a></h6> </div> <br> <div style="position: relative;"> </div> </div> </div> </div> <!-- <div class="row"> <div class="col-md-12 col-sm-12 col-xs-12"> <div class="form-group already_registered"> <h5>Already registered? <a id="link_login" onclick="">Login Here</a></h5> </div> </div> </div> --> </form> </div> </div> </div> <script> $(document).ready(function(){ var country_code = { "results": [{"text":"Afghanistan (+93)","id":"+93","code":"AF"},{"text":"Albania (+355)","id":"+355","code":"AL"},{"text":"Algeria (+213)","id":"+213","code":"DZ"},{"text":"AmericanSamoa (+1684)","id":"+1684","code":"AS"},{"text":"Andorra (+376)","id":"+376","code":"AD"},{"text":"Angola (+244)","id":"+244","code":"AO"},{"text":"Anguilla (+1264)","id":"+1264","code":"AI"},{"text":"Antarctica (+672)","id":"+672","code":"AQ"},{"text":"Antigua and Barbuda (+1268)","id":"+1268","code":"AG"},{"text":"Argentina (+54)","id":"+54","code":"AR"},{"text":"Armenia (+374)","id":"+374","code":"AM"},{"text":"Aruba (+297)","id":"+297","code":"AW"},{"text":"Australia (+61)","id":"+61","code":"AU"},{"text":"Austria (+43)","id":"+43","code":"AT"},{"text":"Azerbaijan (+994)","id":"+994","code":"AZ"},{"text":"Bahamas (+1242)","id":"+1242","code":"BS"},{"text":"Bahrain (+973)","id":"+973","code":"BH"},{"text":"Bangladesh (+880)","id":"+880","code":"BD"},{"text":"Barbados (+1246)","id":"+1246","code":"BB"},{"text":"Belarus (+375)","id":"+375","code":"BY"},{"text":"Belgium (+32)","id":"+32","code":"BE"},{"text":"Belize (+501)","id":"+501","code":"BZ"},{"text":"Benin (+229)","id":"+229","code":"BJ"},{"text":"Bermuda (+1441)","id":"+1441","code":"BM"},{"text":"Bhutan (+975)","id":"+975","code":"BT"},{"text":"Bolivia, Plurinational State of Bolivia (+591)","id":"+591","code":"BO"},{"text":"Bonaire, Sint Eustatius and Saba (+599)","id":"+599","code":"BQ"},{"text":"Bosnia and Herzegovina (+387)","id":"+387","code":"BA"},{"text":"Botswana (+267)","id":"+267","code":"BW"},{"text":"Bouvet Island (+55)","id":"+55","code":"BV"},{"text":"Brazil (+55)","id":"+55","code":"BR"},{"text":"British Indian Ocean Territory (+246)","id":"+246","code":"IO"},{"text":"Brunei Darussalam (+673)","id":"+673","code":"BN"},{"text":"Bulgaria (+359)","id":"+359","code":"BG"},{"text":"Burkina Faso (+226)","id":"+226","code":"BF"},{"text":"Burundi (+257)","id":"+257","code":"BI"},{"text":"Cambodia (+855)","id":"+855","code":"KH"},{"text":"Cameroon (+237)","id":"+237","code":"CM"},{"text":"Canada (+1)","id":"+1","code":"CA"},{"text":"Cape Verde (+238)","id":"+238","code":"CV"},{"text":"Cayman Islands (+1345)","id":"+1345","code":"KY"},{"text":"Central African Republic (+236)","id":"+236","code":"CF"},{"text":"Chad (+235)","id":"+235","code":"TD"},{"text":"Chile (+56)","id":"+56","code":"CL"},{"text":"China (+86)","id":"+86","code":"CN"},{"text":"Christmas Island (+61)","id":"+61","code":"CX"},{"text":"Cocos (Keeling) Islands (+61)","id":"+61","code":"CC"},{"text":"Colombia (+57)","id":"+57","code":"CO"},{"text":"Comoros (+269)","id":"+269","code":"KM"},{"text":"Congo (+242)","id":"+242","code":"CG"},{"text":"Congo, The Democratic Republic of Congo (+243)","id":"+243","code":"CD"},{"text":"Cook Islands (+682)","id":"+682","code":"CK"},{"text":"Costa Rica (+506)","id":"+506","code":"CR"},{"text":"Cote d'Ivoire (+225)","id":"+225","code":"CI"},{"text":"Croatia (+385)","id":"+385","code":"HR"},{"text":"Cuba (+53)","id":"+53","code":"CU"},{"text":"Curaçao (+5999)","id":"+5999","code":"CW"},{"text":"Cyprus (+357)","id":"+357","code":"CY"},{"text":"Czech Republic (+420)","id":"+420","code":"CZ"},{"text":"Denmark (+45)","id":"+45","code":"DK"},{"text":"Djibouti (+253)","id":"+253","code":"DJ"},{"text":"Dominica (+1767)","id":"+1767","code":"DM"},{"text":"Dominican Republic (+1849)","id":"+1849","code":"DO"},{"text":"Ecuador (+593)","id":"+593","code":"EC"},{"text":"Egypt (+20)","id":"+20","code":"EG"},{"text":"El Salvador (+503)","id":"+503","code":"SV"},{"text":"Equatorial Guinea (+240)","id":"+240","code":"GQ"},{"text":"Eritrea (+291)","id":"+291","code":"ER"},{"text":"Estonia (+372)","id":"+372","code":"EE"},{"text":"Ethiopia (+251)","id":"+251","code":"ET"},{"text":"Falkland Islands (Malvinas) (+500)","id":"+500","code":"FK"},{"text":"Faroe Islands (+298)","id":"+298","code":"FO"},{"text":"Fiji (+679)","id":"+679","code":"FJ"},{"text":"Finland (+358)","id":"+358","code":"FI"},{"text":"France (+33)","id":"+33","code":"FR"},{"text":"French Guiana (+594)","id":"+594","code":"GF"},{"text":"French Polynesia (+689)","id":"+689","code":"PF"},{"text":"French Southern and Antarctic Lands (+262)","id":"+262","code":"TF"},{"text":"Gabon (+241)","id":"+241","code":"GA"},{"text":"Gambia (+220)","id":"+220","code":"GM"},{"text":"Georgia (+995)","id":"+995","code":"GE"},{"text":"Germany (+49)","id":"+49","code":"DE"},{"text":"Ghana (+233)","id":"+233","code":"GH"},{"text":"Gibraltar (+350)","id":"+350","code":"GI"},{"text":"Greece (+30)","id":"+30","code":"GR"},{"text":"Greenland (+299)","id":"+299","code":"GL"},{"text":"Grenada (+1473)","id":"+1473","code":"GD"},{"text":"Guadeloupe (+590)","id":"+590","code":"GP"},{"text":"Guam (+1671)","id":"+1671","code":"GU"},{"text":"Guatemala (+502)","id":"+502","code":"GT"},{"text":"Guernsey (+44)","id":"+44","code":"GG"},{"text":"Guinea (+224)","id":"+224","code":"GN"},{"text":"Guinea-Bissau (+245)","id":"+245","code":"GW"},{"text":"Guyana (+592)","id":"+592","code":"GY"},{"text":"Haiti (+509)","id":"+509","code":"HT"},{"text":"Heard Island and McDonald Islands (+672)","id":"+672","code":"HM"},{"text":"Holy See (Vatican City State) (+379)","id":"+379","code":"VA"},{"text":"Honduras (+504)","id":"+504","code":"HN"},{"text":"Hong Kong (+852)","id":"+852","code":"HK"},{"text":"Hungary (+36)","id":"+36","code":"HU"},{"text":"Iceland (+354)","id":"+354","code":"IS"},{"text":"India (+91)","id":"+91","code":"IN"},{"text":"Indonesia (+62)","id":"+62","code":"ID"},{"text":"Iran, Islamic Republic of Persian Gulf (+98)","id":"+98","code":"IR"},{"text":"Iraq (+964)","id":"+964","code":"IQ"},{"text":"Ireland (+353)","id":"+353","code":"IE"},{"text":"Isle of Man (+44)","id":"+44","code":"IM"},{"text":"Israel (+972)","id":"+972","code":"IL"},{"text":"Italy (+39)","id":"+39","code":"IT"},{"text":"Jamaica (+1876)","id":"+1876","code":"JM"},{"text":"Japan (+81)","id":"+81","code":"JP"},{"text":"Jersey (+44)","id":"+44","code":"JE"},{"text":"Jordan (+962)","id":"+962","code":"JO"},{"text":"Kazakhstan (+77)","id":"+77","code":"KZ"},{"text":"Kenya (+254)","id":"+254","code":"KE"},{"text":"Kiribati (+686)","id":"+686","code":"KI"},{"text":"Korea, Democratic People's Republic of Korea (+850)","id":"+850","code":"KP"},{"text":"Korea, Republic of South Korea (+82)","id":"+82","code":"KR"},{"text":"Kosovo, Republic of Kosovo (+383)","id":"+383","code":"XK"},{"text":"Kuwait (+965)","id":"+965","code":"KW"},{"text":"Kyrgyzstan (+996)","id":"+996","code":"KG"},{"text":"Laos (+856)","id":"+856","code":"LA"},{"text":"Latvia (+371)","id":"+371","code":"LV"},{"text":"Lebanon (+961)","id":"+961","code":"LB"},{"text":"Lesotho (+266)","id":"+266","code":"LS"},{"text":"Liberia (+231)","id":"+231","code":"LR"},{"text":"Libyan Arab Jamahiriya (+218)","id":"+218","code":"LY"},{"text":"Liechtenstein (+423)","id":"+423","code":"LI"},{"text":"Lithuania (+370)","id":"+370","code":"LT"},{"text":"Luxembourg (+352)","id":"+352","code":"LU"},{"text":"Macao (+853)","id":"+853","code":"MO"},{"text":"Macedonia (+389)","id":"+389","code":"MK"},{"text":"Madagascar (+261)","id":"+261","code":"MG"},{"text":"Malawi (+265)","id":"+265","code":"MW"},{"text":"Malaysia (+60)","id":"+60","code":"MY"},{"text":"Maldives (+960)","id":"+960","code":"MV"},{"text":"Mali (+223)","id":"+223","code":"ML"},{"text":"Malta (+356)","id":"+356","code":"MT"},{"text":"Marshall Islands (+692)","id":"+692","code":"MH"},{"text":"Martinique (+596)","id":"+596","code":"MQ"},{"text":"Mauritania (+222)","id":"+222","code":"MR"},{"text":"Mauritius (+230)","id":"+230","code":"MU"},{"text":"Mayotte (+262)","id":"+262","code":"YT"},{"text":"Mexico (+52)","id":"+52","code":"MX"},{"text":"Micronesia, Federated States of Micronesia (+691)","id":"+691","code":"FM"},{"text":"Moldova (+373)","id":"+373","code":"MD"},{"text":"Monaco (+377)","id":"+377","code":"MC"},{"text":"Mongolia (+976)","id":"+976","code":"MN"},{"text":"Montenegro (+382)","id":"+382","code":"ME"},{"text":"Montserrat (+1664)","id":"+1664","code":"MS"},{"text":"Morocco (+212)","id":"+212","code":"MA"},{"text":"Mozambique (+258)","id":"+258","code":"MZ"},{"text":"Myanmar (+95)","id":"+95","code":"MM"},{"text":"Namibia (+264)","id":"+264","code":"NA"},{"text":"Nauru (+674)","id":"+674","code":"NR"},{"text":"Nepal (+977)","id":"+977","code":"NP"},{"text":"Netherlands (+31)","id":"+31","code":"NL"},{"text":"Netherlands Antilles (+599)","id":"+599","code":"AN"},{"text":"New Caledonia (+687)","id":"+687","code":"NC"},{"text":"New Zealand (+64)","id":"+64","code":"NZ"},{"text":"Nicaragua (+505)","id":"+505","code":"NI"},{"text":"Niger (+227)","id":"+227","code":"NE"},{"text":"Nigeria (+234)","id":"+234","code":"NG"},{"text":"Niue (+683)","id":"+683","code":"NU"},{"text":"Norfolk Island (+672)","id":"+672","code":"NF"},{"text":"Northern Mariana Islands (+1670)","id":"+1670","code":"MP"},{"text":"Norway (+47)","id":"+47","code":"NO"},{"text":"Oman (+968)","id":"+968","code":"OM"},{"text":"Pakistan (+92)","id":"+92","code":"PK"},{"text":"Palau (+680)","id":"+680","code":"PW"},{"text":"Palestinian Territory, Occupied (+970)","id":"+970","code":"PS"},{"text":"Panama (+507)","id":"+507","code":"PA"},{"text":"Papua New Guinea (+675)","id":"+675","code":"PG"},{"text":"Paraguay (+595)","id":"+595","code":"PY"},{"text":"Peru (+51)","id":"+51","code":"PE"},{"text":"Philippines (+63)","id":"+63","code":"PH"},{"text":"Pitcairn (+870)","id":"+870","code":"PN"},{"text":"Poland (+48)","id":"+48","code":"PL"},{"text":"Portugal (+351)","id":"+351","code":"PT"},{"text":"Puerto Rico (+1939)","id":"+1939","code":"PR"},{"text":"Qatar (+974)","id":"+974","code":"QA"},{"text":"Romania (+40)","id":"+40","code":"RO"},{"text":"Russia (+7)","id":"+7","code":"RU"},{"text":"Rwanda (+250)","id":"+250","code":"RW"},{"text":"Reunion (+262)","id":"+262","code":"RE"},{"text":"Saint Barthelemy (+590)","id":"+590","code":"BL"},{"text":"Saint Helena, Ascension and Tristan Da Cunha (+290)","id":"+290","code":"SH"},{"text":"Saint Kitts and Nevis (+1869)","id":"+1869","code":"KN"},{"text":"Saint Lucia (+1758)","id":"+1758","code":"LC"},{"text":"Saint Martin (+590)","id":"+590","code":"MF"},{"text":"Saint Pierre and Miquelon (+508)","id":"+508","code":"PM"},{"text":"Saint Vincent and the Grenadines (+1784)","id":"+1784","code":"VC"},{"text":"Samoa (+685)","id":"+685","code":"WS"},{"text":"San Marino (+378)","id":"+378","code":"SM"},{"text":"Sao Tome and Principe (+239)","id":"+239","code":"ST"},{"text":"Saudi Arabia (+966)","id":"+966","code":"SA"},{"text":"Senegal (+221)","id":"+221","code":"SN"},{"text":"Serbia (+381)","id":"+381","code":"RS"},{"text":"Seychelles (+248)","id":"+248","code":"SC"},{"text":"Sierra Leone (+232)","id":"+232","code":"SL"},{"text":"Singapore (+65)","id":"+65","code":"SG"},{"text":"Sint Maarten (+1721)","id":"+1721","code":"SX"},{"text":"Slovakia (+421)","id":"+421","code":"SK"},{"text":"Slovenia (+386)","id":"+386","code":"SI"},{"text":"Solomon Islands (+677)","id":"+677","code":"SB"},{"text":"Somalia (+252)","id":"+252","code":"SO"},{"text":"South Africa (+27)","id":"+27","code":"ZA"},{"text":"South Sudan (+211)","id":"+211","code":"SS"},{"text":"South Georgia and the South Sandwich Islands (+500)","id":"+500","code":"GS"},{"text":"Spain (+34)","id":"+34","code":"ES"},{"text":"Sri Lanka (+94)","id":"+94","code":"LK"},{"text":"Sudan (+249)","id":"+249","code":"SD"},{"text":"Suritext (+597)","id":"+597","code":"SR"},{"text":"Svalbard and Jan Mayen (+47)","id":"+47","code":"SJ"},{"text":"Swaziland (+268)","id":"+268","code":"SZ"},{"text":"Sweden (+46)","id":"+46","code":"SE"},{"text":"Switzerland (+41)","id":"+41","code":"CH"},{"text":"Syrian Arab Republic (+963)","id":"+963","code":"SY"},{"text":"Taiwan (+886)","id":"+886","code":"TW"},{"text":"Tajikistan (+992)","id":"+992","code":"TJ"},{"text":"Tanzania, United Republic of Tanzania (+255)","id":"+255","code":"TZ"},{"text":"Thailand (+66)","id":"+66","code":"TH"},{"text":"Timor-Leste (+670)","id":"+670","code":"TL"},{"text":"Togo (+228)","id":"+228","code":"TG"},{"text":"Tokelau (+690)","id":"+690","code":"TK"},{"text":"Tonga (+676)","id":"+676","code":"TO"},{"text":"Trinidad and Tobago (+1868)","id":"+1868","code":"TT"},{"text":"Tunisia (+216)","id":"+216","code":"TN"},{"text":"Turkey (+90)","id":"+90","code":"TR"},{"text":"Turkmenistan (+993)","id":"+993","code":"TM"},{"text":"Turks and Caicos Islands (+1649)","id":"+1649","code":"TC"},{"text":"Tuvalu (+688)","id":"+688","code":"TV"},{"text":"Uganda (+256)","id":"+256","code":"UG"},{"text":"Ukraine (+380)","id":"+380","code":"UA"},{"text":"United Arab Emirates (+971)","id":"+971","code":"AE"},{"text":"United Kingdom (+44)","id":"+44","code":"GB"},{"text":"United States (+1)","id":"+1","code":"US"},{"text":"United States Minor Outlying Islands (+1581)","id":"+1581","code":"UM"},{"text":"Uruguay (+598)","id":"+598","code":"UY"},{"text":"Uzbekistan (+998)","id":"+998","code":"UZ"},{"text":"Vanuatu (+678)","id":"+678","code":"VU"},{"text":"Venezuela, Bolivarian Republic of Venezuela (+58)","id":"+58","code":"VE"},{"text":"Vietnam (+84)","id":"+84","code":"VN"},{"text":"Virgin Islands, British (+1284)","id":"+1284","code":"VG"},{"text":"Virgin Islands, U.S. (+1340)","id":"+1340","code":"VI"},{"text":"Wallis and Futuna (+681)","id":"+681","code":"WF"},{"text":"Western Sahara (+212)","id":"+212","code":"EH"},{"text":"Yemen (+967)","id":"+967","code":"YE"},{"text":"Zambia (+260)","id":"+260","code":"ZM"},{"text":"Zimbabwe (+263)","id":"+263","code":"ZW"}], "pagination": { "more": true } } ; $.get('/sites/all/modules/analytic/js/country_code.json', function(data) { $('.select-country-code-register').html(''); for(var i=0; i<data.results.length; i++){ if(data.results[i].id == '+65'){ $('.select-country-code-register').append('<option value='+data.results[i].id+' selected="selected">'+data.results[i].text+'</option>'); } else { $('.select-country-code-register').append('<option value='+data.results[i].id+'>'+data.results[i].text+'</option>'); } } }); // Setup select 2 for country code $('.select-country-code-register').select2({ width: '100%', height: '38px', dropdownCssClass: 'increasedzindexclass', dropdownParent: $('#registration_form'), // ajax: { // url: '/sites/all/modules/analytic/js/country_code.json', // dataType: 'json' // // Additional AJAX parameters go here; see the end of this chapter for the full code of this example // } }); // Handle on select $('.select-country-code-register').on('select2:select', function (e) { var data = e.params.data; $('#register-country-code-addon').text(data.id); $('.input-phone-number-register').val(data.id); }); $("#agent_phone").keyup(function(e) { var msisdn = $("#agent_phone").val(); if(e.keyCode == 8 || (msisdn.match(/\d+/g) == null)) { return true; } var msisdn_clean = msisdn.match(/\d+/g).map(Number).join(''); var isSpace = msisdn.indexOf(' ') > 1 ? true : false; for(c in country_code) { if(country_code[c] !== '' && !isSpace) { if(msisdn_clean.startsWith(country_code[c])) { $("#agent_phone").val($("#agent_phone").val()+ ' '); break; } } } }); $("#agent_registration_form_popup").submit(function(e){ localStorage.setItem('last_popup', $('#form_title').text()); }).validate({ submitHandler: function(form, event) { $(".register-spinner-user").show(); $('.otp-error-message-container').hide(); // event.preventDefault(); var agent_phone_raw = $('#agent_phone').val(); var agent_phone = agent_phone_raw.match(/\d+/g).map(Number).join(''); var country_code_raw = $('.input-phone-number-register').val(); if(!country_code_raw && country_code_raw == '') { get_phone_number = agent_phone; get_country_code = '+65'; }else{ get_phone_number = agent_phone; get_country_code = country_code_raw; } // Set phone number and country code $('#get_phone_number').val(get_phone_number); $('#get_country_code').val(get_country_code); var source = 'register_agent'; $('input[name=source_otp_request]').val(source); var agent_first_name = $('#agent_first_name').val(); var agent_last_name = $('#agent_last_name').val(); var agent_email = $('#agent_email').val(); var agent_password = $('#agent_password').val(); var dest = $('#dest').val(); var is_agent = $('#is_agent').val(); var agent_license = $('#agent_license').val(); var agent_agency = $('#agent_agency').val(); var agent_cea = $('#agent_cea').val(); var agent_designation = $('#agent_designation').val(); var index = $('#sel_agent_agency').val(); const auto_verif = window.location.pathname?.includes("edgefairvalue") ? 1 : 0; var data = { 'agent_phone': agent_phone, 'get_phone_number': get_phone_number, 'get_country_code': get_country_code, 'agent_first_name': agent_first_name, 'agent_last_name': agent_last_name, 'agent_email': agent_email, 'agent_password': agent_password, 'dest': dest, 'is_agent': is_agent, 'agent_license': agent_license, 'agent_agency': agent_agency, 'agent_cea': agent_cea, 'agent_designation': agent_designation, 'index': index, 'auto_verif': auto_verif }; data = JSON.stringify(data); // console.log(data); // $("body").append("<input type='text' id='register-hidden' value='"+ data +"' />"); $('#register-hidden').val(data); /** * set countdown counter text on element with status_countdown as id * for example otpVerification function on base.php and clear the timer on finish counting * but commented since the set countdown in base.php is included and ready to be called from here * * @request DVT-4725 updated on this function * * @return */ // var second =''; // function setCountDown(){ // console.log("setCountDown",second); // document.getElementById('status_countdown').innerHTML = text + second+' s'; // second--; // if(second < 0){ // $('#countdown_failed').show(); // $('#status_countdown').hide(); // clearTimeout(setCountDown) // }else{ // setTimeout(setCountDown, 1000); // clearTimeout(setCountDown) // } // } //function format number_format function formatPhoneNumber(phone_number){ var temp=''; if(phone_number.charAt(0) === '+'){ for(var i=1;i<phone_number.length-3;i++){ temp+='x'; } }else{ temp += '+xx '; for(var i=0;i<phone_number.length-3;i++){ temp+='x'; } } // console.log(temp.length + phone_number.substr(phone_number.length-3)); return temp+phone_number.substr(phone_number.length-3); } var dataotp = { country_code: get_country_code, source: 'register_agent', number: get_phone_number }; $.post('/index.php?&option=com_analytica&task=otprequest', dataotp, function(otp){ if(otp && !otp.error){ var text = `otp: ${otp.otp}` second = otp.expired_time; document.getElementById('phone').innerHTML = formatPhoneNumber(dataotp.number); $('#countdown_failed').hide(); $('#status_countdown').show(); localStorage.setItem('otp_expired_time',otp.expired_time) setCountDown(); }else{ // set error message on base.php let error_message = 'Invalid Phone Number'; $('.otp-error-message-container').show(); $('.otp-error-message').text(error_message); $('#countdown_failed').hide(); $('#status_countdown').hide(); } $(".register-spinner-user").hide(); wall.wallOtpVerification(); }); return false; }, rules: { agent_first_name:{ required: true }, agent_last_name:{ required: true, }, agent_phone: { minlength: 8, required: true, // digits: true, remote: "index.php?&option=com_analytica&task=isUserValid" }, agent_email: { required: true, email: true, remote: "index.php?&option=com_analytica&task=isUserValid" }, agent_password: { required: true }, confirm_password: { required: true, equalTo: "#agent_password" }, sel_agent_agency: { required: function (element) { return $("#is_agent").val() === "1"; } }, agent_cea: { required: function (element) { return $("#is_agent").val() === "1"; } }, agent_license: { required: function (element) { return $("#is_agent").val() === "1"; } }, agent_designation: { required: function (element) { return $("#is_agent").val() === "1"; } }, chk_confirm: { required: true } }, messages: { agent_first_name:{ required: "Please enter First Name.", }, agent_last_name:{ required: "Please enter Last Name.", }, agent_phone: { required: "Please enter mobile phone number.", // digits: "Please enter a valid phone number.", remote: "The phone number used is already registered." }, agent_email: { required: "Please enter email address.", email: "Please enter a valid email address.", remote: "The email used is already registered." }, agent_password: { required: "Please enter password." }, confirm_password: { required: "Please re-type password.", equalTo: "Please enter the same password as above.", }, sel_agent_agency: { required: "Please select Agency Name." }, agent_cea: { required: "Please enter CEA Number." }, agent_license: { required: "Please enter License Number." }, agent_designation: { required: "Please enter Job Designation." }, chk_confirm: { required: "Please confirm that you accept the Terms and Conditions and Privacy Policy." } } }); }); /* [SEAR-2004] BEGIN */ $("#agent_cea").on("change", function(e){ searchAgentData("agent_cea"); }); var searchAgentData = function(ceaValues) { var ceaNumber = $("#"+ceaValues).val(); const formData = new FormData(); formData.append('cea', ceaNumber); fetch(window.location.origin + "/tep-partner/stripe/tep-stripe.php?type=web&task=validateCEA", { method: 'POST', body: formData // <-- Post parameters }).then((response) => response.json()).then((response) => { if (response && response.cea) { if (response['cea']['est_agent_name']) $("input[name='agent_agency']").val(response['cea']['est_agent_name']); if (response['cea']['licence_number']) $("#sel_agent_agency").val(response['cea']['licence_number']); if (response['cea']['licence_number']) $("input[name='agent_license']").val(response['cea']['licence_number']); if (response['cea']['first_name']) $("input[name='agent_first_name']").val(response['cea']['first_name']); if (response['cea']['last_name']) $("input[name='agent_last_name']").val(response['cea']['last_name']); } }); } /* [SEAR-2004] END */ </script> <style> .registration_form { font-family: 'Poppins'; font-style: normal; font-weight: 500; } .efv-register_form-wrapper-header { margin-bottom: 15px; } .efv-register_form-wrapper-title { display: flex; justify-content: center; } .efv-register_form-wrapper-title span { color: #005C98; font-size: 20px; font-weight: 600; } .efv-register_form-wrapper-close { padding-left: 5px; cursor: pointer; padding-left: 0; } .efv-register_form-wrapper-close span { color: #6B7280; font-size: 20px; font-weight: 600; } .efv-register__main-message-container { display: flex; column-gap: 14px; background: #EFF7FF; padding: 13px; margin: 35px 12px; border-radius: 8px; border: 1px solid #3496EE; } .efv-register__msg-title { font-size: 14px; line-height: 21px; color: #000000; margin: 0; } .efv-register__sub-title { font-size: 12px; line-height: 18px; color: #6C7686; margin: 0; } #efv_registration_form_popup { display: grid; gap: 7px; } #efv_registration_form_popup .form-label { color: #374151; font-weight: 500; font-size: 16px; } .flag { width: 20px; height: 15px; margin-right: 10px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.30); } .form-control { border-radius: 4px; } #efv_registration_form .select2-container .select2-selection--single { height: 40px; } #efv_registration_form .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 39px; } #efv_registration_form .select2-container--default .select2-selection--single .select2-selection__arrow { height: 35px; } #efv_registration_form .checkbox { padding: 0 32px; margin-bottom: 30px; } #efv_registration_form .footer a { color: #2053A2 !important; } #efv_registration_form .submit-row-wrapper { display: grid; gap: 10px; padding: 0 32px; } #efv_registration_form .btn-create { margin: 0; background-color: #FF5222; cursor: pointer; color: white; border-radius: 5px; font-size: 14px; font-weight: 700; padding: 8px 30px; width: 100%; } #efv_registration_form .btn-create[disabled] { background: #D1D5DB; color: #9CA3AF; } .efv-login-popup::-webkit-scrollbar { width: 6px; } .efv-login-popup::-webkit-scrollbar-track{ margin-block: 20px; } .efv-login-popup::-webkit-scrollbar-thumb { background-clip: padding-box; background-color: #D1D5DB; border-radius: 6px; } #efv_registration_form label.error { color: #f74a28; display: none; font-size: 10px; font-weight: 400; } #efv_registration_form .form-control { height: 40px ; font-size: 14px; font-weight: 400; } @media only screen and (max-width: 991px) { .efv-login-popup { height: 100% !important; width: 100% !important; border-bottom-left-radius: 0 !important; border-bottom-right-radius: 0 !important; overflow: auto; overflow-x: hidden; transform: none !important; top: 0% !important; right: 0; left: 0 !important; margin: auto !important; } } </style> <div id="efv_registration_form" style="display:none" class="container"> <div class="row registration"> <div class="col-md-12"> <div class="row efv-register_form-wrapper-header"> <div class="col-md-11 col-xs-11 efv-register_form-wrapper-title"> <span>User Registration</span> </div> <div class="col-md-1 col-xs-1 efv-register_form-wrapper-close"> <span onclick="wall.wallDown();">&times;</span> </div> </div> <div class="efv-register__main-message-container"> <div><img src="https://sg.tepcdn.com/public/usr/a38h7n/646f6d-Vector.png" height="20" width="20" /></div> <div class="efv-login__main-message"> <p class="efv-register__msg-title">Register to see EFV Result</p> <p class="efv-register__sub-title">By registering you will be directed to the EFV result page</p> </div> </div> <form role="form" id="efv_registration_form_popup" method="post" action="/property_user_reg_popup_submit"> <input type="hidden" id="efv_form_id" name="form_id" value="agent_registration_form_popup"> <input type="hidden" id="efv_is_agent" name="is_agent" value="0"> <input type="hidden" id="efv_dest" name="dest" value="/market-watch/developer-sales"> <input type="hidden" id="efv_is_otp_enabled" name="is_otp_enabled" value="1"> <input type="hidden" id="efv_source_otp_request" name='source_otp_request' value='login'> <input type="hidden" id="efv_auto_verif" name="auto_verif" value="1"> <div class="form-group"> <div class="col-md-12"> <label class="form-label" for="efv_agent_first_name">Name</label> </div> <div class="col-md-6 col-xs-6"> <input type="text" class="form-control" id="efv_agent_first_name" name="agent_first_name" placeholder="First Name" required /> <label id="efv_agent_first_name-error" class="error" for="efv_agent_first_name">err</label> </div> <div class="col-md-6 col-xs-6"> <input type="text" class="form-control" id="efv_agent_last_name" name="agent_last_name" placeholder="Last Name" required /> <label id="efv_agent_last_name-error" class="error" for="efv_agent_last_name">err</label> </div> </div> <div class="form-group"> <div class="col-md-12"> <label class="form-label" for="efv_agent_email">Email Address</label> </div> <div class="col-md-12"> <input type="email" class="form-control" id="efv_agent_email" name="agent_email" placeholder="e.g Jhon@mail.com" required /> <label id="efv_agent_email-error" class="error" for="efv_agent_email">err</label> </div> </div> <div class="form-group"> <div class="col-md-12"> <label class="form-label" for="efv_agent_phone">Phone Number</label> </div> <div class="col-md-4 col-xs-4"> <select id="efv_state" class="form-control" tabindex="-1" aria-hidden="true" name="state"> <option value='+65' data-img_src="https://flagcdn.com/h20/sg.png" selected='selected'>+65</option> </select> <input type='hidden' class='input-phone-number-register'> </div> <div class="col-md-8 col-xs-8"> <input type="number" class="form-control" id="efv_agent_phone" name="agent_phone" placeholder="Enter Phone Number" required /> <label id="efv_agent_phone-error" class="error" for="efv_agent_phone">err</label> </div> </div> <div class="form-group"> <div class="col-md-12"> <label class="form-label" for="efv_agent_password">Password</label> </div> <div class="col-md-12"> <input type="password" class="form-control" id="efv_agent_password" name="agent_password" placeholder="Enter Password" required /> <label id="efv_agent_password-error" class="error" for="efv_agent_password"></label> </div> </div> <div class="form-group"> <div class="col-md-12"> <label class="form-label" for="efv_confirm_password">Confirm Password</label> </div> <div class="col-md-12"> <input type="password" class="form-control" id="efv_confirm_password" name="confirm_password" placeholder="Re-Enter Your Password" required /> <label id="efv_confirm_password-error" class="error" for="efv_confirm_password"></label> </div> </div> <div class="row footer"> <div class="col-md-12 checkbox"> <label> <div class="tac-wrapper"> <input id="efv_check_confirm" name="check_confirm" class="reg_checkbox" type="checkbox" value="true"> <span>By creating an account, you confirm that you accept the <a href="/content/terms-use">Terms and Conditions</a> and <a href="/content/pdpa">Privacy Policy</a></span> </div> </label> <label id="efv_check_confirm-error" class="error" for="efv_check_confirm"></label> </div> <div class="col-md-12 wrapper-submit-button"> <button type="submit" class="btn btn-lg form-submit btn-create" id="create-account-btn" disabled> Create Account </button> <div style="border: 1px solid #BFBFBF;border-bottom: 1px solid #BFBFBF;margin: 10px 0;"></div> <span style="font-size: 14px;font-weight: 400;">Already registered? Login as <a href="#" id="link_login_agent" onclick="wall.wallUpAgent()">Agent</a> or <a href="#" id="link_login_customer" onclick="wall.wallUp()">User</a></span> </div> </div> </form> </div> </div> </div> <script> function custom_template(obj) { var data = $(obj.element).data(); var text = $(obj.element).text(); if (data && data['img_src']) { img_src = data['img_src']; template = $(`<div style="display: flex;align-items: center;"><img src="${img_src}" class="flag"/><span>${text}</span></div>`); return template; } } $(document).ready(function() { const jsonCountryCode = { "results": [{"text":"Afghanistan (+93)","id":"+93","code":"AF"},{"text":"Albania (+355)","id":"+355","code":"AL"},{"text":"Algeria (+213)","id":"+213","code":"DZ"},{"text":"AmericanSamoa (+1684)","id":"+1684","code":"AS"},{"text":"Andorra (+376)","id":"+376","code":"AD"},{"text":"Angola (+244)","id":"+244","code":"AO"},{"text":"Anguilla (+1264)","id":"+1264","code":"AI"},{"text":"Antarctica (+672)","id":"+672","code":"AQ"},{"text":"Antigua and Barbuda (+1268)","id":"+1268","code":"AG"},{"text":"Argentina (+54)","id":"+54","code":"AR"},{"text":"Armenia (+374)","id":"+374","code":"AM"},{"text":"Aruba (+297)","id":"+297","code":"AW"},{"text":"Australia (+61)","id":"+61","code":"AU"},{"text":"Austria (+43)","id":"+43","code":"AT"},{"text":"Azerbaijan (+994)","id":"+994","code":"AZ"},{"text":"Bahamas (+1242)","id":"+1242","code":"BS"},{"text":"Bahrain (+973)","id":"+973","code":"BH"},{"text":"Bangladesh (+880)","id":"+880","code":"BD"},{"text":"Barbados (+1246)","id":"+1246","code":"BB"},{"text":"Belarus (+375)","id":"+375","code":"BY"},{"text":"Belgium (+32)","id":"+32","code":"BE"},{"text":"Belize (+501)","id":"+501","code":"BZ"},{"text":"Benin (+229)","id":"+229","code":"BJ"},{"text":"Bermuda (+1441)","id":"+1441","code":"BM"},{"text":"Bhutan (+975)","id":"+975","code":"BT"},{"text":"Bolivia, Plurinational State of Bolivia (+591)","id":"+591","code":"BO"},{"text":"Bonaire, Sint Eustatius and Saba (+599)","id":"+599","code":"BQ"},{"text":"Bosnia and Herzegovina (+387)","id":"+387","code":"BA"},{"text":"Botswana (+267)","id":"+267","code":"BW"},{"text":"Bouvet Island (+55)","id":"+55","code":"BV"},{"text":"Brazil (+55)","id":"+55","code":"BR"},{"text":"British Indian Ocean Territory (+246)","id":"+246","code":"IO"},{"text":"Brunei Darussalam (+673)","id":"+673","code":"BN"},{"text":"Bulgaria (+359)","id":"+359","code":"BG"},{"text":"Burkina Faso (+226)","id":"+226","code":"BF"},{"text":"Burundi (+257)","id":"+257","code":"BI"},{"text":"Cambodia (+855)","id":"+855","code":"KH"},{"text":"Cameroon (+237)","id":"+237","code":"CM"},{"text":"Canada (+1)","id":"+1","code":"CA"},{"text":"Cape Verde (+238)","id":"+238","code":"CV"},{"text":"Cayman Islands (+1345)","id":"+1345","code":"KY"},{"text":"Central African Republic (+236)","id":"+236","code":"CF"},{"text":"Chad (+235)","id":"+235","code":"TD"},{"text":"Chile (+56)","id":"+56","code":"CL"},{"text":"China (+86)","id":"+86","code":"CN"},{"text":"Christmas Island (+61)","id":"+61","code":"CX"},{"text":"Cocos (Keeling) Islands (+61)","id":"+61","code":"CC"},{"text":"Colombia (+57)","id":"+57","code":"CO"},{"text":"Comoros (+269)","id":"+269","code":"KM"},{"text":"Congo (+242)","id":"+242","code":"CG"},{"text":"Congo, The Democratic Republic of Congo (+243)","id":"+243","code":"CD"},{"text":"Cook Islands (+682)","id":"+682","code":"CK"},{"text":"Costa Rica (+506)","id":"+506","code":"CR"},{"text":"Cote d'Ivoire (+225)","id":"+225","code":"CI"},{"text":"Croatia (+385)","id":"+385","code":"HR"},{"text":"Cuba (+53)","id":"+53","code":"CU"},{"text":"Curaçao (+5999)","id":"+5999","code":"CW"},{"text":"Cyprus (+357)","id":"+357","code":"CY"},{"text":"Czech Republic (+420)","id":"+420","code":"CZ"},{"text":"Denmark (+45)","id":"+45","code":"DK"},{"text":"Djibouti (+253)","id":"+253","code":"DJ"},{"text":"Dominica (+1767)","id":"+1767","code":"DM"},{"text":"Dominican Republic (+1849)","id":"+1849","code":"DO"},{"text":"Ecuador (+593)","id":"+593","code":"EC"},{"text":"Egypt (+20)","id":"+20","code":"EG"},{"text":"El Salvador (+503)","id":"+503","code":"SV"},{"text":"Equatorial Guinea (+240)","id":"+240","code":"GQ"},{"text":"Eritrea (+291)","id":"+291","code":"ER"},{"text":"Estonia (+372)","id":"+372","code":"EE"},{"text":"Ethiopia (+251)","id":"+251","code":"ET"},{"text":"Falkland Islands (Malvinas) (+500)","id":"+500","code":"FK"},{"text":"Faroe Islands (+298)","id":"+298","code":"FO"},{"text":"Fiji (+679)","id":"+679","code":"FJ"},{"text":"Finland (+358)","id":"+358","code":"FI"},{"text":"France (+33)","id":"+33","code":"FR"},{"text":"French Guiana (+594)","id":"+594","code":"GF"},{"text":"French Polynesia (+689)","id":"+689","code":"PF"},{"text":"French Southern and Antarctic Lands (+262)","id":"+262","code":"TF"},{"text":"Gabon (+241)","id":"+241","code":"GA"},{"text":"Gambia (+220)","id":"+220","code":"GM"},{"text":"Georgia (+995)","id":"+995","code":"GE"},{"text":"Germany (+49)","id":"+49","code":"DE"},{"text":"Ghana (+233)","id":"+233","code":"GH"},{"text":"Gibraltar (+350)","id":"+350","code":"GI"},{"text":"Greece (+30)","id":"+30","code":"GR"},{"text":"Greenland (+299)","id":"+299","code":"GL"},{"text":"Grenada (+1473)","id":"+1473","code":"GD"},{"text":"Guadeloupe (+590)","id":"+590","code":"GP"},{"text":"Guam (+1671)","id":"+1671","code":"GU"},{"text":"Guatemala (+502)","id":"+502","code":"GT"},{"text":"Guernsey (+44)","id":"+44","code":"GG"},{"text":"Guinea (+224)","id":"+224","code":"GN"},{"text":"Guinea-Bissau (+245)","id":"+245","code":"GW"},{"text":"Guyana (+592)","id":"+592","code":"GY"},{"text":"Haiti (+509)","id":"+509","code":"HT"},{"text":"Heard Island and McDonald Islands (+672)","id":"+672","code":"HM"},{"text":"Holy See (Vatican City State) (+379)","id":"+379","code":"VA"},{"text":"Honduras (+504)","id":"+504","code":"HN"},{"text":"Hong Kong (+852)","id":"+852","code":"HK"},{"text":"Hungary (+36)","id":"+36","code":"HU"},{"text":"Iceland (+354)","id":"+354","code":"IS"},{"text":"India (+91)","id":"+91","code":"IN"},{"text":"Indonesia (+62)","id":"+62","code":"ID"},{"text":"Iran, Islamic Republic of Persian Gulf (+98)","id":"+98","code":"IR"},{"text":"Iraq (+964)","id":"+964","code":"IQ"},{"text":"Ireland (+353)","id":"+353","code":"IE"},{"text":"Isle of Man (+44)","id":"+44","code":"IM"},{"text":"Israel (+972)","id":"+972","code":"IL"},{"text":"Italy (+39)","id":"+39","code":"IT"},{"text":"Jamaica (+1876)","id":"+1876","code":"JM"},{"text":"Japan (+81)","id":"+81","code":"JP"},{"text":"Jersey (+44)","id":"+44","code":"JE"},{"text":"Jordan (+962)","id":"+962","code":"JO"},{"text":"Kazakhstan (+77)","id":"+77","code":"KZ"},{"text":"Kenya (+254)","id":"+254","code":"KE"},{"text":"Kiribati (+686)","id":"+686","code":"KI"},{"text":"Korea, Democratic People's Republic of Korea (+850)","id":"+850","code":"KP"},{"text":"Korea, Republic of South Korea (+82)","id":"+82","code":"KR"},{"text":"Kosovo, Republic of Kosovo (+383)","id":"+383","code":"XK"},{"text":"Kuwait (+965)","id":"+965","code":"KW"},{"text":"Kyrgyzstan (+996)","id":"+996","code":"KG"},{"text":"Laos (+856)","id":"+856","code":"LA"},{"text":"Latvia (+371)","id":"+371","code":"LV"},{"text":"Lebanon (+961)","id":"+961","code":"LB"},{"text":"Lesotho (+266)","id":"+266","code":"LS"},{"text":"Liberia (+231)","id":"+231","code":"LR"},{"text":"Libyan Arab Jamahiriya (+218)","id":"+218","code":"LY"},{"text":"Liechtenstein (+423)","id":"+423","code":"LI"},{"text":"Lithuania (+370)","id":"+370","code":"LT"},{"text":"Luxembourg (+352)","id":"+352","code":"LU"},{"text":"Macao (+853)","id":"+853","code":"MO"},{"text":"Macedonia (+389)","id":"+389","code":"MK"},{"text":"Madagascar (+261)","id":"+261","code":"MG"},{"text":"Malawi (+265)","id":"+265","code":"MW"},{"text":"Malaysia (+60)","id":"+60","code":"MY"},{"text":"Maldives (+960)","id":"+960","code":"MV"},{"text":"Mali (+223)","id":"+223","code":"ML"},{"text":"Malta (+356)","id":"+356","code":"MT"},{"text":"Marshall Islands (+692)","id":"+692","code":"MH"},{"text":"Martinique (+596)","id":"+596","code":"MQ"},{"text":"Mauritania (+222)","id":"+222","code":"MR"},{"text":"Mauritius (+230)","id":"+230","code":"MU"},{"text":"Mayotte (+262)","id":"+262","code":"YT"},{"text":"Mexico (+52)","id":"+52","code":"MX"},{"text":"Micronesia, Federated States of Micronesia (+691)","id":"+691","code":"FM"},{"text":"Moldova (+373)","id":"+373","code":"MD"},{"text":"Monaco (+377)","id":"+377","code":"MC"},{"text":"Mongolia (+976)","id":"+976","code":"MN"},{"text":"Montenegro (+382)","id":"+382","code":"ME"},{"text":"Montserrat (+1664)","id":"+1664","code":"MS"},{"text":"Morocco (+212)","id":"+212","code":"MA"},{"text":"Mozambique (+258)","id":"+258","code":"MZ"},{"text":"Myanmar (+95)","id":"+95","code":"MM"},{"text":"Namibia (+264)","id":"+264","code":"NA"},{"text":"Nauru (+674)","id":"+674","code":"NR"},{"text":"Nepal (+977)","id":"+977","code":"NP"},{"text":"Netherlands (+31)","id":"+31","code":"NL"},{"text":"Netherlands Antilles (+599)","id":"+599","code":"AN"},{"text":"New Caledonia (+687)","id":"+687","code":"NC"},{"text":"New Zealand (+64)","id":"+64","code":"NZ"},{"text":"Nicaragua (+505)","id":"+505","code":"NI"},{"text":"Niger (+227)","id":"+227","code":"NE"},{"text":"Nigeria (+234)","id":"+234","code":"NG"},{"text":"Niue (+683)","id":"+683","code":"NU"},{"text":"Norfolk Island (+672)","id":"+672","code":"NF"},{"text":"Northern Mariana Islands (+1670)","id":"+1670","code":"MP"},{"text":"Norway (+47)","id":"+47","code":"NO"},{"text":"Oman (+968)","id":"+968","code":"OM"},{"text":"Pakistan (+92)","id":"+92","code":"PK"},{"text":"Palau (+680)","id":"+680","code":"PW"},{"text":"Palestinian Territory, Occupied (+970)","id":"+970","code":"PS"},{"text":"Panama (+507)","id":"+507","code":"PA"},{"text":"Papua New Guinea (+675)","id":"+675","code":"PG"},{"text":"Paraguay (+595)","id":"+595","code":"PY"},{"text":"Peru (+51)","id":"+51","code":"PE"},{"text":"Philippines (+63)","id":"+63","code":"PH"},{"text":"Pitcairn (+870)","id":"+870","code":"PN"},{"text":"Poland (+48)","id":"+48","code":"PL"},{"text":"Portugal (+351)","id":"+351","code":"PT"},{"text":"Puerto Rico (+1939)","id":"+1939","code":"PR"},{"text":"Qatar (+974)","id":"+974","code":"QA"},{"text":"Romania (+40)","id":"+40","code":"RO"},{"text":"Russia (+7)","id":"+7","code":"RU"},{"text":"Rwanda (+250)","id":"+250","code":"RW"},{"text":"Reunion (+262)","id":"+262","code":"RE"},{"text":"Saint Barthelemy (+590)","id":"+590","code":"BL"},{"text":"Saint Helena, Ascension and Tristan Da Cunha (+290)","id":"+290","code":"SH"},{"text":"Saint Kitts and Nevis (+1869)","id":"+1869","code":"KN"},{"text":"Saint Lucia (+1758)","id":"+1758","code":"LC"},{"text":"Saint Martin (+590)","id":"+590","code":"MF"},{"text":"Saint Pierre and Miquelon (+508)","id":"+508","code":"PM"},{"text":"Saint Vincent and the Grenadines (+1784)","id":"+1784","code":"VC"},{"text":"Samoa (+685)","id":"+685","code":"WS"},{"text":"San Marino (+378)","id":"+378","code":"SM"},{"text":"Sao Tome and Principe (+239)","id":"+239","code":"ST"},{"text":"Saudi Arabia (+966)","id":"+966","code":"SA"},{"text":"Senegal (+221)","id":"+221","code":"SN"},{"text":"Serbia (+381)","id":"+381","code":"RS"},{"text":"Seychelles (+248)","id":"+248","code":"SC"},{"text":"Sierra Leone (+232)","id":"+232","code":"SL"},{"text":"Singapore (+65)","id":"+65","code":"SG"},{"text":"Sint Maarten (+1721)","id":"+1721","code":"SX"},{"text":"Slovakia (+421)","id":"+421","code":"SK"},{"text":"Slovenia (+386)","id":"+386","code":"SI"},{"text":"Solomon Islands (+677)","id":"+677","code":"SB"},{"text":"Somalia (+252)","id":"+252","code":"SO"},{"text":"South Africa (+27)","id":"+27","code":"ZA"},{"text":"South Sudan (+211)","id":"+211","code":"SS"},{"text":"South Georgia and the South Sandwich Islands (+500)","id":"+500","code":"GS"},{"text":"Spain (+34)","id":"+34","code":"ES"},{"text":"Sri Lanka (+94)","id":"+94","code":"LK"},{"text":"Sudan (+249)","id":"+249","code":"SD"},{"text":"Suritext (+597)","id":"+597","code":"SR"},{"text":"Svalbard and Jan Mayen (+47)","id":"+47","code":"SJ"},{"text":"Swaziland (+268)","id":"+268","code":"SZ"},{"text":"Sweden (+46)","id":"+46","code":"SE"},{"text":"Switzerland (+41)","id":"+41","code":"CH"},{"text":"Syrian Arab Republic (+963)","id":"+963","code":"SY"},{"text":"Taiwan (+886)","id":"+886","code":"TW"},{"text":"Tajikistan (+992)","id":"+992","code":"TJ"},{"text":"Tanzania, United Republic of Tanzania (+255)","id":"+255","code":"TZ"},{"text":"Thailand (+66)","id":"+66","code":"TH"},{"text":"Timor-Leste (+670)","id":"+670","code":"TL"},{"text":"Togo (+228)","id":"+228","code":"TG"},{"text":"Tokelau (+690)","id":"+690","code":"TK"},{"text":"Tonga (+676)","id":"+676","code":"TO"},{"text":"Trinidad and Tobago (+1868)","id":"+1868","code":"TT"},{"text":"Tunisia (+216)","id":"+216","code":"TN"},{"text":"Turkey (+90)","id":"+90","code":"TR"},{"text":"Turkmenistan (+993)","id":"+993","code":"TM"},{"text":"Turks and Caicos Islands (+1649)","id":"+1649","code":"TC"},{"text":"Tuvalu (+688)","id":"+688","code":"TV"},{"text":"Uganda (+256)","id":"+256","code":"UG"},{"text":"Ukraine (+380)","id":"+380","code":"UA"},{"text":"United Arab Emirates (+971)","id":"+971","code":"AE"},{"text":"United Kingdom (+44)","id":"+44","code":"GB"},{"text":"United States (+1)","id":"+1","code":"US"},{"text":"United States Minor Outlying Islands (+1581)","id":"+1581","code":"UM"},{"text":"Uruguay (+598)","id":"+598","code":"UY"},{"text":"Uzbekistan (+998)","id":"+998","code":"UZ"},{"text":"Vanuatu (+678)","id":"+678","code":"VU"},{"text":"Venezuela, Bolivarian Republic of Venezuela (+58)","id":"+58","code":"VE"},{"text":"Vietnam (+84)","id":"+84","code":"VN"},{"text":"Virgin Islands, British (+1284)","id":"+1284","code":"VG"},{"text":"Virgin Islands, U.S. (+1340)","id":"+1340","code":"VI"},{"text":"Wallis and Futuna (+681)","id":"+681","code":"WF"},{"text":"Western Sahara (+212)","id":"+212","code":"EH"},{"text":"Yemen (+967)","id":"+967","code":"YE"},{"text":"Zambia (+260)","id":"+260","code":"ZM"},{"text":"Zimbabwe (+263)","id":"+263","code":"ZW"}], "pagination": { "more": true } } const countryCode = jsonCountryCode.results; for (var i = 0; i < countryCode.length; i++) { if (countryCode[i].id !== '+65') { $('#efv_state').append('<option value=' + countryCode[i].id + ' data-img_src="https://flagcdn.com/h20/' + countryCode[i].code.toLowerCase() + '.png">' + countryCode[i].id + '</option>'); } } var options = { 'width': '100%', 'templateSelection': custom_template, 'templateResult': custom_template, 'dropdownCssClass': 'increasedzindexclass', 'dropdownParent': $('#efv_registration_form') } $('#efv_state').select2(options); // Handle on select $('.country_code').on('select2:select', function(e) { var data = e.params.data; $('.input-phone-number-register').val(data.id); console.log(data); }); $("#efv_check_confirm").change(function() { if (this.checked) { $('#create-account-btn').removeAttr("disabled"); } else { $('#create-account-btn').attr("disabled", true); } }); function getRegistrationData(){ const form_id = $('#efv_form_id').val(); const is_agent = $('#efv_is_agent').val(); const dest = $('#efv_dest').val(); const is_otp_enabled = $('#efv_is_otp_enabled').val(); const source_otp_request = $('#efv_source_otp_request').val(); const auto_verif = $('#efv_auto_verif').val(); const agent_first_name = $('#efv_agent_first_name').val(); const agent_last_name = $('#efv_agent_last_name').val(); const agent_email = $('#efv_agent_email').val(); const state = $('#efv_state').val(); const agent_phone = $('#efv_agent_phone').val(); const agent_password = $('#efv_agent_password').val(); const confirm_password = $('#efv_confirm_password').val(); const check_confirm = $('#efv_check_confirm').val(); const data = { 'form_id': form_id, 'is_agent': is_agent, 'dest': dest, 'is_otp_enabled': is_otp_enabled, 'source_otp_request': source_otp_request, 'auto_verif': auto_verif, 'agent_first_name': agent_first_name, 'agent_last_name': agent_last_name, 'agent_email': agent_email, 'state': state, 'agent_phone': agent_phone, 'agent_password': agent_password, 'confirm_password': confirm_password, 'check_confirm': check_confirm, }; return data; } function createCookieNew(name, value, days, callback = false) { var expires = ''; if (days) { var date = new Date(); date.setTime(date.getTime() + (days*24*60*60*1000)); expires = '; expires=' + date.toUTCString(); } // document.cookie = name + '=' + value + expires + '; path=/'; document.cookie = name + '=' + value + expires + '; path=/' + '; domain=.edgeprop.sg'; if(callback){ callback(); } } function setCountDown(){ document.getElementById('status_countdown').innerHTML = text + second+' s'; second--; if(second < 0){ $('#countdown_failed').removeAttr('hidden'); $('#status_countdown').attr('hidden','true'); }else{ setTimeout(setCountDown, 1000); } } $("#efv_registration_form_popup").validate({ submitHandler: function(form) { $(".register-spinner-user").show(); $('#create-account-btn').html('<i class="fa fa-spinner fa-spin" style="font-size: 2rem;" aria-hidden="true"></i>'); var base_url = window.location.protocol+window.location.hostname; const registrationData = getRegistrationData(); if (!registrationData.is_otp_enabled) { $.ajax({ type: 'POST', url: '/property_user_reg_popup_submit', data: registrationData, success: function(data){ if(!data.hasOwnProperty("data") && !data.data.hasOwnProperty("sessid")){ console.error("error register", data); return } createCookieNew('FBRLHL_p',data.data.agent_image,60); createCookieNew('FBRLHL_ui',data.data.uid,60); createCookieNew('FBRLHL_','user',60); createCookieNew('EP_C',JSON.stringify(data.data),60); createCookieNew('EP_IMAGE',data.data.agent_image,30); createCookieNew('EP_NAME',data.data.firstname,30); createCookieNew('PSESSID', data.data.sessid) wall.wallSignupSuccess(); window.location.replace('/analytic/edgefairvalue'); } }); return } const dataOtp = { country_code: registrationData.state, source: registrationData.source_otp_request, number: registrationData.agent_phone, }; $.ajax({ type: 'POST', url: `/index.php?option=com_analytica&task=otprequest`, data: dataOtp, success: function(data){ const text = `otp: ${data.otp}` second = data.expired_time; setCountDown(); wall.wallOtpVerification(); }, }) }, rules: { agent_phone: { minlength: 8, required: true, remote: "index.php?&option=com_analytica&task=isUserValid" }, agent_email: { required: true, email: true, remote: "index.php?&option=com_analytica&task=isUserValid" }, efv_agent_password: { required: true }, efv_confirm_password: { required: true, equalTo: "#efv_agent_password" }, efv_check_confirm: { required: true } }, messages: { agent_phone: { required: "Please enter mobile phone number.", remote: "The phone number used is already registered." }, agent_email: { required: "Please enter email address.", email: "Please enter a valid email address.", remote: "The email used is already registered." }, efv_agent_password: { required: "Please enter password." }, efv_confirm_password: { required: "Please re-type password.", equalTo: "Please enter the same password as above.", }, efv_check_confirm: { required: "Please confirm that you accept the Terms and Conditions and Privacy Policy." } } }); }); </script> <script> $(document).ready(function() { if (!$('.forgot-password-wall').length) { // Ensure this is only injected once var html = "\n <script>\n $(document).ready(function() {\n $('.forgot-password-wall button.btn-facebook').click(function() {\n window._tepq.push('wall', 'Facebook Login');\n sendGaEvent('Wall', 'Facebook Login');\n });\n $('.forgot-password-wall form#user-login-form button[type=submit]').click(function() {\n window._tepq.push('wall', 'Request Password');\n sendGaEvent('Wall', 'Request Password');\n });\n $('.forgot-password-wall button[type=reset]').click(function() {\n window._tepq.push('wall', 'Cancel');\n sendGaEvent('Wall', 'Cancel');\n });\n $('.forgot-password-wall form#user-login-form a').click(function() {\n window._tepq.push('wall', $(this).text());\n sendGaEvent('Wall', $(this).text());\n });\n $('.forgot-password-wall form#user-login-form').validate({\n submitHandler: function(form) {\n $.ajax({\n type: 'POST',\n url: '\/index.php?&option=com_analytica&task=login',\n data: { username: $('.user_username').val(), password: $('.user_password').val() }\n }).always(function( data ) {\n if ((data == '1') || (data == 1) || data && data['sessid']) {\n createCookieNew('EP_C',JSON.stringify(data),60);\n window.location.href = '';\n } else {\n var messageError = 'Incorrect username or password.';\n if (data && data.responseJSON && data.responseJSON.data && data.responseJSON.data.error && data.responseJSON.data.error.message) {\n messageError = data.responseJSON.data.error.message;\n }\n\n $('.forgot-password-wall .inline-messages').html('<label class=\"error\">' + messageError + '<\/label>');\n }\n });\n }\n });\n });\n <\/script>\n <style>\n .forgot-password-wall button.btn-facebook {\n padding-left: 20px;\n }\n .forgot-password-wall button.btn-facebook:focus {\n outline: 0;\n }\n .forgot-password-wall button[type=submit] {\n color: white;\n background-color: #5bc0de;\n border-color: #46b8da;\n }\n .forgot-password-wall div.input-group {\n width: 100% !important;\n }\n .forgot-password-wall label.error {\n color: #f74a28;\n }\n .forgot-password-wall input.error {\n border-color: #f74a28;\n }\n <\/style>\n <div style='display:none;' class='forgot-password-wall'>\n <div class='exit_button'>\n <button id='btn_close' onclick='wall.wallDown();' type='button' class='btn btn-link btn-lg pull-right' style='margin-right: 0px; padding: 0px; height: 22px; width: 22px;'>\n <span class='glyphicon glyphicon-remove' aria-hidden='true'><\/span>\n <\/button>\n <\/div>\n <p class='validateTips'><\/p>\n <form action=\"\/market-watch\/developer-sales\" method=\"post\" id=\"user-pass\" accept-charset=\"UTF-8\"><div><input type=\"hidden\" name=\"form_build_id\" value=\"form-pK2mlSqhuJP9NrYVcX-GRAswHQaVqyd1DiYcW5sI2wQ\" \/>\n<input type=\"hidden\" name=\"form_id\" value=\"user_pass\" \/>\n<\/div><\/form>\n <\/div>"; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.otp-request-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .input-phone-number-otp.col2::placeholder{\n color:#979797;\n }\n input.input-phone-number-otp {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #979797;\n font-size: 18px;\n }\n\n .otp-request-wall{\n font-family: Poppins;\n }\n .increasedzindexclass {\n z-index: 999999;\n }\n\n div.input-number {\n margin-top: 30px;\n }\n\n img.otp-image {\n width: 120px;\n height: 130px;\n margin-top:30px\n }\n <\/style>\n\n <div style='display:none;' class='otp-request-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n\n <div>\n <img class='otp-image' src='https:\/\/sg.tepcdn.com\/public\/usr\/8xh20v\/3a3e7d-send-otp.png'>\n <h3 class='otp-h3' style='font-size:20px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#4c4c4c;'>Please enter your <br> mobile phone number<\/h3>\n <p style='font-family: Poppins; font-weight: 300; font-size:12px;color:#4c4c4c; margin-bottom:60px'>A 4-digit Verification Code will be sent to <br> verify your account<\/p>\n <\/div>\n\n <form action='' method='post' id='otp-user-login-form' accept-charset='UTF-8' novalidate='novalidate'>\n <div class='row' style='margin-left: 10%; margin-right: 10%;'>\n <div class='col-md-12 form-group'>\n <select class='select-country-code-otp form-control' tabindex='-1' aria-hidden='true' name='state'>\n <option value='+65' selected='selected'>Singapore (+65)<\/option>\n <\/select>\n <input type='hidden' class='input-phone-number-otp' value='+65'>\n <\/div>\n <div class='col-md-12 form-group'>\n <div class='input-group'>\n <div class='input-group-addon' id='otp-request-country-code-addon'>+65<\/div>\n <input type='text' class='form-control' id='input-col2' placeholder='Mobile Number'>\n <\/div>\n <input type='hidden' value='login' name='source_otp_request'>\n <\/div>\n <\/div>\n\n\n <div>\n <p class='wrong-number' style='font-size:10px; color:#D0021B; margin-bottom:20px; display:none'><i class='fa fa-exclamation-circle' aria-hidden='true' data-jsx='646494800'><\/i> account not found<\/p>\n <p class='invalid-number' style='font-size:10px; color:#D0021B; margin-bottom:20px; display:none'><i class='fa fa-exclamation-circle' aria-hidden='true' data-jsx='646494800'><\/i> Invalid phone number<\/p>\n <br\/>\n <button id='requestotp' type='submit' class='btn btn-lg btn-default form-submit btn-otp' name='requestotp' value='requestotp'\n style='cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 70%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; margin-bottom:10px; font-family: Poppins, sans-serif; font-weight:500 !important;'>Continue<\/button>\n <\/div>\n <div style='position: relative;'>\n <div class='otp-login-spinner-user' style='position: absolute;height: 40px;border-radius: 100px;width: 70%;background-color: gray;padding: 10px;opacity: 0.4;top: -50px;left: 55px;'>\n <i class='fa fa-spinner fa-spin' style='font-size: 2em;' aria-hidden='true'><\/i>\n <\/div>\n <\/div>\n <label style='font-size:11px; margin-top:20px;' class='popup-login-label'>Not yet registered? <a onclick='wall.wallUpRegister()' class='popup-login'>Sign Up Now<\/a><\/label>\n <\/form>\n <\/div>\n\n <script>\n $(document).ready(function(){\n $.get('\/sites\/all\/modules\/analytic\/js\/country_code.json', function(data) {\n $('.select-country-code-otp').html('');\n for(var i=0; i<data.results.length; i++){\n if(data.results[i].id == '+65'){\n $('.select-country-code-otp').append('<option value='+data.results[i].id+' selected=selected>'+data.results[i].text+'<\/option>');\n } else {\n $('.select-country-code-otp').append('<option value='+data.results[i].id+'>'+data.results[i].text+'<\/option>');\n }\n }\n });\n\n \/\/ Setup select 2 for country code\n $('.select-country-code-otp').select2({\n width: '100%',\n dropdownCssClass: 'increasedzindexclass',\n dropdownParent: $('.otp-request-wall'),\n \/\/ ajax: {\n \/\/ url: '\/sites\/all\/modules\/analytic\/js\/country_code.json',\n \/\/ dataType: 'json'\n \/\/ \/\/ Additional AJAX parameters go here; see the end of this chapter for the full code of this example\n \/\/ }\n });\n\n \/\/ Handle on select\n $('.select-country-code-otp').on('select2:select', function (e) {\n var data = e.params.data;\n $('#otp-request-country-code-addon').text(data.id);\n $('.input-phone-number-otp').val(data.id);\n });\n\n $('.btn-otp').prop('disabled','disabled');\n $('#input-col2').keyup(function(){\n if ($('#input-col2').val().length >= 6) {\n $('.btn-otp').prop('disabled','');\n } else {\n $('.btn-otp').prop('disabled','disabled');\n }\n });\n\n $('.otp-login-spinner-user').hide();\n $('#otp-user-login-form').validate({\n submitHandler: function(form) {\n $('.wrong-number').hide();\n $('#otp-number').val('');\n $('.otp-login-spinner-user').show();\n\n var base_url = window.location.protocol+window.location.hostname;\n var check_valid_url = base_url+'\/index.php?option=com_analytica&task=isUserValid';\n\n $.get(check_valid_url, {agent_phone: $('#input-col2').val()}, function(result){\n result = !(result == 'true'); \/\/ result is a string, then convert result to bool\n $('.otp-verification-walllogin input[name=agent-number]').val($('#input-col2').val());\n $('.otp-verification-walllogin input[name=is-agent-registered]').val(result ? '1' : '0');\n \/\/ if(getCookie('next') == '\/profile'){\n $('input[name=source_otp_request]').val('login');\n \/\/ } else {\n \/\/ $('input[name=source_otp_request]').val('register_mobile_number');\n \/\/ }\n \/\/ setCookie('next', window.location.href, 1);\n\n \/\/ check if valid\n \/\/ if(getCookie('next') != '\/profile' || result ){\n if( result ){\n \/\/ timer = timerValue;\n \/\/ countDown = setInterval(c, 1000);\n var source = $('input[name=source_otp_request]').val();\n var country_code = $('.input-phone-number-otp').val() == '' ? '+65' : $('.input-phone-number-otp').val();\n var data = {\n country_code: country_code,\n source: source,\n number: $('#input-col2').val(),\n expired_time: 60\n };\n var otp_request_url = base_url+'\/index.php?option=com_analytica&task=otprequest';\n localStorage.setItem('otp_param_info',JSON.stringify(data))\n\n $.post(otp_request_url, data, function(otp){\n if(!otp.hasOwnProperty('error')){\n $('body').append('<input type=\\'hidden\\' id=\\'hidden-otp-data\\' value='+JSON.stringify(data)+' \/>');\n\n $('#phone_digit').html( data['number'].substr(0, data['number'].length - 3).replace(\/[0-9]\/g, 'x').replace('xxxxx', 'xxxx x') );\n $('#last_phone_digit').html( data['number'].substr(data['number'].length - 3) );\n $('.btn-otp').prop('disabled','disabled');\n\n if(otp && otp!=null){\n localStorage.setItem('otp_expired_time',otp.expired_time)\n }\n \n wall.wallOtpVerificationLogin();\n } else {\n $('.invalid-number').show();\n }\n });\n } else{\n $('.wrong-number').show();\n }\n $('.otp-login-spinner-user').hide();\n });\n\n }\n });\n\n });\n\n <\/script>\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.otp-verification-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .input-phone-number-otp.col2::placeholder{\n color:#979797;\n }\n input.input-phone-number-otp {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #979797;\n font-size: 18px;\n }\n input.input-phone-number-otp2 {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #3496EE;\n font-size: 18px;\n text-align: center;\n }\n .otp-verification-wall{\n font-family: Poppins;\n }\n\n div.input-number {\n margin: 0 auto 0px;\n }\n\n img.otp-image {\n width: 120px;\n height: 130px;\n margin-top:30px\n }\n div.c {\n text-align: right;\n }\n\n #otp-number {\n outline: 0;\n padding-left: 15px;\n letter-spacing: 42px;\n background-image: linear-gradient(to left, blue 70%, rgba(255, 255, 255, 0) 0%);\n background-position: bottom;\n background-size: 50px 1px;\n background-repeat: repeat-x;\n background-position-x: 35px;\n width: 220px;\n min-width:220px;\n margin-top: -30px;\n border: 0;\n }\n\n #divOuter{\n margin-left: 90px;\n width:190px;\n overflow:hidden\n }\n\n #otp-number {\n outline: 0;\n padding-left: 15px;\n letter-spacing: 42px;\n background-image: linear-gradient(to left, blue 70%, rgba(255, 255, 255, 0) 0%);\n background-position: bottom;\n background-size: 50px 1px;\n background-repeat: repeat-x;\n background-position-x: 35px;\n width: 220px;\n min-width:220px;\n margin-top: -30px;\n border: 0;\n }\n\n #divInner{\n left: 0;\n position: sticky;\n }\n\n #divOuter{\n margin-left: 90px;\n width:190px;\n overflow:hidden\n }\n\n .otp-verification__close{\n margin-top: 0px;\n height: fit-content;\n width: 100%;\n text-align: right;\n color: #4C4C4C;\n text-decoration: none;\n cursor: pointer;\n }\n\n }\n <\/style>\n\n <div style='display:none;' class='otp-verification-wall' style='width:280px; margin:0 auto'>\n <div class='otp-verification__close'>\n <p class='close' onclick='closePopup();' style='float: none;margin: 0px;'>X<\/p>\n <\/div>\n <div>\n <img class='otp-image' src='https:\/\/sg.tepcdn.com\/public\/usr\/8xh20v\/8d9317-otp-message.png'>\n <h3 class='otp-h3' style='font-size:20px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#4c4c4c;'>Verification<\/h3>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:60px'>\n Please enter the verification code we<br> sent to <span id='phone'><\/span>\n <br>\n <label style='font-size:11px; margin-top:20px;' class='popup-login-label'>Entered wrong number? <a onclick='editNumberClicked()' class='popup-login' style='cursor: pointer'> <font color='#13649D'>Edit number<\/font><\/a><\/label>\n <\/p>\n <\/div>\n\n <div class='row'>\n <div class='col-md-12 input-number'>\n <div id='divOuter'>\n <div id='divInner'>\n <input id='otp-number' type='text' maxlength='4' \/>\n <\/div>\n <\/div>\n\n <div>\n <br>\n <p class='invalid-otp' style='font-size:10px; color:#D0021B; margin-bottom:20px; display:none'>\n <i class='fa fa-exclamation-circle' aria-hidden='true' ><\/i> Invalid or expired OTP\n <\/p>\n <div class='otp-error-message-container' style='font-size:10px; color:#D0021B; margin-bottom:20px; display:none'>\n <i class='fa fa-exclamation-circle' aria-hidden='true' ><\/i> <span class='otp-error-message'\/>\n <\/div>\n <button type='button' id='btn_continue' class='btn btn-lg btn-default form-submit btn-otp' name='verificationotp' value='verificationotp' style='cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 70%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; margin-bottom:10px; font-family: Poppins, sans-serif; font-weight:500 !important;'>Continue<\/button>\n <\/div>\n\n <div>\n <label style='font-size:11px; margin-top:20px;' class='popup-login-label' id='status_countdown'><\/label>\n <label style='font-size:11px; margin-top:20px;' class='popup-login-label' id='countdown_failed' hidden='true'>Did'nt receive a code? <a class='resend-btn' style='cursor: pointer'><font color='#13649D'> Resend<\/font><\/a><\/label>\n <\/div>\n\n <\/div>\n <\/div>\n <\/div>\n\n <script>\n\n var text = 'Verification code will expired in ';\n\n function getRegistrationData(){\n var agent_phone = $('#agent_phone').val();\n\n var get_phone_number = $('#get_phone_number').val();\n var get_country_code = $('#get_country_code').val();\n\n var agent_first_name = $('#agent_first_name').val();\n var agent_last_name = $('#agent_last_name').val();\n var agent_email = $('#agent_email').val();\n var agent_password = $('#agent_password').val();\n var dest = $('#dest').val();\n var is_agent = $('#is_agent').val();\n var agent_license = $('#agent_license').val();\n var agent_agency = $('#agent_agency').val();\n var agent_cea = $('#agent_cea').val();\n var agent_designation = $('#agent_designation').val();\n var index = $('#sel_agent_agency').val();\n \/\/ const auto_verif = window.location.pathname?.includes('edgefairvalue') ? 1 : 0;\n const auto_verif = 1;\n const auto_login = 1;\n\n var data = {\n 'agent_phone': agent_phone,\n\n 'get_phone_number': get_phone_number,\n 'get_country_code': get_country_code,\n\n 'agent_first_name': agent_first_name,\n 'agent_last_name': agent_last_name,\n 'agent_email': agent_email,\n 'agent_password': agent_password,\n 'dest': dest,\n 'is_agent': is_agent,\n 'agent_license': agent_license,\n 'agent_agency': agent_agency,\n 'agent_cea': agent_cea,\n 'agent_designation': agent_designation,\n 'index': index,\n 'auto_verif': auto_verif,\n 'auto_login': auto_login\n };\n return data;\n }\n\n function getRegistrationDataAutoVerify(){\n const form_id = $('#efv_form_id').val();\n const is_agent = $('#efv_is_agent').val();\n const dest = $('#efv_dest').val();\n const is_otp_enabled = $('#efv_is_otp_enabled').val();\n const source_otp_request = $('#efv_source_otp_request').val();\n const auto_verif = $('#efv_auto_verif').val();\n\n const agent_first_name = $('#efv_agent_first_name').val();\n const agent_last_name = $('#efv_agent_last_name').val();\n\n const agent_email = $('#efv_agent_email').val();\n\n const state = $('#efv_state').val();\n\n const agent_phone = $('#efv_agent_phone').val();\n\n const agent_password = $('#efv_agent_password').val();\n const confirm_password = $('#efv_confirm_password').val();\n\n const check_confirm = $('#efv_check_confirm').val();\n\n const data = {\n 'form_id': form_id,\n 'is_agent': is_agent,\n 'dest': dest,\n 'is_otp_enabled': is_otp_enabled,\n 'source_otp_request': source_otp_request,\n 'auto_verif': auto_verif,\n\n 'agent_first_name': agent_first_name,\n 'agent_last_name': agent_last_name,\n\n 'agent_email': agent_email,\n\n 'state': state,\n\n 'agent_phone': agent_phone,\n\n 'agent_password': agent_password,\n 'confirm_password': confirm_password,\n\n 'check_confirm': check_confirm,\n };\n\n return data;\n }\n\n \/\/ Define which function will be called based on the last_popup value on local storage\n \/\/ set from user--register--form-popup.tpl.php\n \/\/ \n \/\/ @request DVT-3724\n \/\/ \n \/\/ @return\n\n function editNumberClicked(){\n var lastPopup = localStorage.getItem('last_popup');\n localStorage.removeItem('last_popup');\n clearTimeout(setCountDown);\n stopCountDown();\n second=0;\n\n setTimeout(function() {\n $('#otp-number').val('');\n $('.wrong-number').hide();\n $('.invalid-otp').hide();\n $('.otp-error-message-container').hide();\n }, 1000);\n\n if(lastPopup && lastPopup!='' && lastPopup.toLowerCase() == 'user registration'){\n wall.wallUpRegister()\n }else{\n wall.wallUpAgentRegister()\n }\n }\n\n \/\/ const isAutoVerify = window.location.pathname.includes('edgefairvalue')\n const isAutoVerify = true;\n\n var second = 0;\n \/**\n * user--register--form-popup.tpl.php will run this function and start countdown on create account button clicked\n *\n * @request DVT-3725 otp countdown issue\n *\n * \n * @return\n *\/\n function setCountDown(){\n document.getElementById('status_countdown').innerHTML = text + second+' s';\n second--;\n if(second < 0){\n clearTimeout(setCountDown)\n $('#countdown_failed').removeAttr('hidden');\n $('#status_countdown').attr('hidden','true');\n }else{\n setTimeout(setCountDown, 1000);\n if($('#status_countdown').is(':hidden')){\n $('#countdown_failed').attr('hidden',true);\n $('#status_countdown').removeAttr('hidden');\n }\n \n }\n }\n \n \/**\n * Close otp verification popup and clear the timeout from user--register--form-popup.tpl.php\n *\n * @request DVT-3725 (latest update)\n *\n * \n * @return\n *\/\n function closePopup(){\n clearTimeout(setCountDown)\n\n setTimeout(function() {\n $('#otp-number').val('');\n $('.wrong-number').hide();\n $('.invalid-otp').hide();\n $('.otp-error-message-container').hide();\n }, 1000);\n\n wall.wallDown()\n }\n\n $(document).ready(function(){\n\n var popupsource = localStorage.getItem('last_popup');\n if(popupsource && popupsource!=''){\n second = localStorage.getItem('otp_expired_time')\n localStorage.removeItem('otp_expired_time');\n setCountDown();\n }\n\n $('.resend-btn').unbind('click').bind('click', function (e) {\n \/\/ var country_code = '+65';\n var registrationData = getRegistrationData();\n var source = $('input[name=source_otp_request]').val();\n\n var data_otp_request = {\n 'country_code' : registrationData.get_country_code,\n 'number' : isAutoVerify ? registrationData.agent_phone : registrationData.get_phone_number,\n 'source' : source,\n };\n\n $.ajax({\n type: 'POST',\n url: '\/index.php?&option=com_analytica&task=otprequest',\n data : data_otp_request,\n success: function(response){\n second = response.expired_time;\n $('#countdown_failed').attr('hidden','true');\n $('#status_countdown').removeAttr('hidden');\n setCountDown();\n }\n })\n });\n\n $('#btn_continue').prop('disabled','disabled');\n $('#otp-number').keyup(function(){\n\n $('.wrong-number').hide();\n $('.invalid-otp').hide();\n $('.otp-error-message-container').hide();\n\n if ($('#otp-number').val().length >= 4) {\n $('#btn_continue').prop('disabled','');\n } else {\n $('#btn_continue').prop('disabled','disabled');\n }\n });\n\n var count = 0;\n\n $('#btn_continue').unbind('click').bind('click', function (e) {\n var otp = $('#otp-number').val();\n \/\/ var country_code = '+65';\n var registrationData = getRegistrationData();\n $('#btn_continue').prop('disabled','disabled');\n\n var source = $('input[name=source_otp_request]').val();\n var data_otp_validation = {\n 'otp' : otp,\n 'country_code' : registrationData.get_country_code,\n 'number' : isAutoVerify ? registrationData.agent_phone : registrationData.get_phone_number,\n 'source' : source\n };\n\n $.ajax({\n type: 'POST',\n url: '\/index.php?&option=com_analytica&task=otpvalidation',\n data : data_otp_validation,\n }).always(function( data ) {\n if(typeof data.error === 'undefined'){\n $.ajax({\n type: 'POST',\n url: '\/property_user_reg_popup_submit',\n data: registrationData\n }).then(function (data) {\n if (!isAutoVerify) {\n wall.wallSignupSuccess();\n return window.location.replace('\/thanks\/registration?dest='+window.location.pathname);\n }\n\n if(data && !data.hasOwnProperty('data') && !data.data.hasOwnProperty('sessid')){\n console.error('error register', data);\n return;\n }\n\n removeCookieNew('FBRLHL_p');\n removeCookieNew('FBRLHL_ui');\n removeCookieNew('FBRLHL_');\n removeCookieNew('EP_C');\n removeCookieNew('EP_IMAGE');\n removeCookieNew('EP_NAME');\n removeCookieNew('PSESSID');\n createCookieNew('FBRLHL_p',data.data.agent_image,60);\n createCookieNew('FBRLHL_ui',data.data.uid,60);\n createCookieNew('FBRLHL_','user',60);\n createCookieNew('EP_C',JSON.stringify(data.data),60);\n createCookieNew('EP_IMAGE',data.data.agent_image,30);\n createCookieNew('EP_NAME',data.data.firstname,30);\n createCookieNew('PSESSID', data.data.sessid,60);\n\n let formTitle = $('#form_title');\n if (formTitle && formTitle[0] && formTitle[0].innerText) {\n formTitle = formTitle[0].innerText;\n } else {\n formTitle = '';\n }\n if (formTitle) {\n formTitle = formTitle.toLowerCase().split(' ');\n }\n let isUser = false;\n let isAgent = false;\n if (formTitle && formTitle.length) {\n isUser = (formTitle.indexOf('user') > -1);\n }\n if (formTitle && formTitle.length) {\n isAgent = (formTitle.indexOf('agent') > -1);\n }\n let typeToSend = '';\n if (isUser) {\n typeToSend = 'user';\n } else if (isAgent) {\n typeToSend = 'agent';\n }\n wall.wallSignupSuccess(typeToSend);\n\n let epcData = getCookie('EP_C');\n if (epcData) {\n epcData = JSON.parse(epcData);\n }\n if (data && data.data && data.data.sessid && epcData && epcData.sessid && epcData.sessid == data.data.sessid) {\n return window.location.reload();\n }\n });\n }else{\n $('#btn_continue').prop('disabled','');\n $('.invalid-otp').show();\n count++;\n if(count >= 3){\n document.getElementById('agent_registration_form_popup').reset();\n wall.wallOtpFailed();\n }\n }\n });\n\n\n });\n });\n\n\n <\/script>\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.otp-verification-walllogin').length) { // Ensure this is only injected once var html = "\n <style>\n .input-phone-number-otp.col2::placeholder{\n color:#979797;\n }\n input.input-phone-number-otp {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #979797;\n font-size: 18px;\n }\n input.input-phone-number-otp2 {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #3496EE;\n font-size: 18px;\n }\n .otp-verification-walllogin{\n font-family: Poppins;\n }\n\n div.input-number {\n margin-top: -30px!important;\n }\n\n img.otp-image {\n width: 120px;\n height: 130px;\n margin-top:30px\n }\n\n #otp-number2 {\n outline: 0;\n padding-left: 15px;\n letter-spacing: 42px;\n background-image: linear-gradient(to left, blue 70%, rgba(255, 255, 255, 0) 0%);\n background-position: bottom;\n background-size: 50px 1px;\n background-repeat: repeat-x;\n background-position-x: 35px;\n width: 220px;\n min-width:220px;\n margin-top: -30px;\n border: 0;\n }\n\n #divInner2{\n left: 0;\n position: sticky;\n }\n\n #divOuter2{\n margin-left: 90px;\n width:190px;\n overflow:hidden\n }\n .close-popup{\n width: 100%;\n text-align: right;\n display: flex;\n justify-content: end;\n }\n <\/style>\n\n <div style='display:none;' class='otp-verification-walllogin' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' style='float: none;margin: 0px;width: fit-content' onclick='handleClose()'>X<\/div>\n <\/div>\n\n <div>\n <img class='otp-image' src='https:\/\/sg.tepcdn.com\/public\/usr\/8xh20v\/8d9317-otp-message.png'>\n <h3 class='otp-h3' style='font-size:20px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#4c4c4c;'>Verification<\/h3>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:60px'>Please enter the verification code we <br>sent to +xx <span id='phone_digit'>xxxx xx<\/span><span id='last_phone_digit'><\/span><br>\n <label style='font-size:11px; margin-top:20px;' class='popup-login-label'>Entered wrong number? <a onclick='editNumberClicked2()' class='popup-login'> <font color='#13649D'>Edit number<\/font><\/a><\/label>\n <\/p>\n <\/div>\n\n <form action='' method='post' id='otp-verification-form' accept-charset='UTF-8' novalidate='novalidate'>\n <div class='row'>\n <div class='col-md-12 input-number'>\n <div id='divOuter2'>\n <div id='divInner2'>\n <input id='otp-number2' type='text' maxlength='4' \/>\n <input name='agent-number' type='hidden' \/>\n <input name='is-agent-registered' type='hidden' \/>\n <\/div>\n <div>\n\n <\/div>\n\n <\/div>\n\n <div style='margin-top:30px!important;'>\n <p class='wrong-number' style='font-size:10px; color:#D0021B; margin-bottom:20px;font-weight:700;display:none;'><i class='fa fa-exclamation-circle' aria-hidden='true'><\/i> Invalid or expired OTP<\/p>\n <button id='verificationOtp' type='submit' class='btn btn-lg btn-default form-submit btn-otp' name='verificationotp' value='verificationotp'\n style='cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 70%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; margin-bottom:10px; font-family: Poppins, sans-serif; font-weight:500 !important;'>Continue<\/button>\n <div style='position: relative;'>\n <div class='otp-verification-spinner' style='position: absolute;height: 40px;border-radius: 100px;width: 70%;background-color: gray;padding: 10px;opacity: 0.4;top: -50px;left: 55px;'>\n <i class='fa fa-spinner fa-spin' style='font-size: 2em;' aria-hidden='true'><\/i>\n <\/div>\n <\/div>\n <\/div>\n <\/form>\n <div style='font-size:11px; margin-top:20px;' id='count-down-label'>Verification code will expired in <span id='count-down'><\/span><\/div>\n <div style='font-size:11px; margin-top:20px;display:none;cursor:pointer' id='resend-label'>Did'nt receive a code? <a id='resend-btn-login'><font color='#13649D'> Resend<\/font><\/a><\/div>\n <\/div>\n\n <script>\n function setOTPVerifCountDown(){\n document.getElementById('count-down').innerHTML = second+' s';\n second--;\n if(second < 0){\n clearTimeout(setOTPVerifCountDown)\n $('#count-down-label').hide();\n $('#resend-label').show();\n }else{\n setTimeout(setOTPVerifCountDown, 1000);\n clearTimeout(setOTPVerifCountDown)\n if($('#count-down-label').not(':visible')){\n $('#count-down-label').show();\n $('#resend-label').hide();\n }\n \n }\n }\n function handleClose(){\n clearTimeout(setOTPVerifCountDown)\n wall.wallDown();\n }\n function editNumberClicked2(){\n clearTimeout(setOTPVerifCountDown)\n stopCountDown();\n\n setTimeout(function() {\n $('#otp-number').val('');\n $('.wrong-number').hide();\n $('.invalid-otp').hide();\n $('.otp-error-message-container').hide();\n }, 1000);\n\n\n wall.wallOtpRequest();\n second=0;\n }\n \n $(document).ready(function(){\n if(localStorage.getItem('otp_expired_time')){\n second=0\n \/\/ take expired time and save it to existing second variable\n second = localStorage.getItem('otp_expired_time')\n localStorage.removeItem('otp_expired_time');\n\n setOTPVerifCountDown()\n }\n\n $('#verificationOtp').prop('disabled','disabled');\n $('#otp-number2').keyup(function(){\n if ($('#otp-number2').val().length >= 4) {\n $('#verificationOtp').prop('disabled','');\n } else {\n $('#verificationOtp').prop('disabled','disabled');\n }\n });\n\n $('.otp-verification-spinner').hide();\n var verificationAttempt = 0;\n \/\/ $('#verificationOtp').unbind('click').bind('click', function (e) {\n $('#otp-verification-form').validate({\n submitHandler: function(form) {\n $('.otp-verification-spinner').show();\n var base_url = window.location.protocol+window.location.hostname;\n\n var otp_data = JSON.parse( $('#hidden-otp-data').val() );\n var otp = $('#otp-number2').val();\n otp_data['otp'] = otp;\n otp_data['source'] = $('input[name=source_otp_request]').val();\n\n\n var otp_validation_url = base_url+'\/index.php?option=com_analytica&task=otpvalidation';\n $.post(otp_validation_url, otp_data, function(res){\n\n clearTimeout(setOTPVerifCountDown)\n localStorage.removeItem('otp_param_info')\n\n if( res.status=='valid' && res.expired_time>0 ){\n var is_registered = false;\n var agent_number = $('.otp-verification-walllogin input[name=agent-number]').val();\n var is_agent_registered = $('.otp-verification-walllogin input[name=is-agent-registered]').val();\n var url_register_otp = '\/index.php?option=com_analytica&task=registerMobileNumber';\n\n var data_register_new_user_otp = {\n is_agent: 1,\n phone: agent_number,\n otp: $('#otp-number2').val()\n };\n\n \/\/ if(is_agent_registered == '0' || getCookie('next') != '\/profile'){\n \/\/ $.ajax({\n \/\/ async: false,\n \/\/ type: 'POST',\n \/\/ url: url_register_otp,\n \/\/ data: data_register_new_user_otp,\n \/\/ success: function(data){\n\n \/\/ if(data.hasOwnProperty('sessid')){\n \/\/ wall.wallLoginSuccess();\n \/\/ window.location.replace(getCookie('next'));\n \/\/ }\n \/\/ },\n \/\/ error: function (jqXHR, status, err) {\n \/\/ is_registered = false;\n \/\/ }\n \/\/ });\n \/\/ }\n\n \/\/ LOGIN BY OTP ===============================================================================================================\n var otp_login_url = base_url+'\/index.php?option=com_analytica&task=login';\n $.ajax({\n type: 'POST',\n url: otp_login_url,\n data: { username: otp_data['number'], otp: otp_data['otp'], isusingotp: 'true' },\n success: function(data){\n\n if(data.success == false){\n\n } else {\n\n if(data.hasOwnProperty('sessid')){\n\n \/\/ Set Cookie for Nextjs\n \/\/ setCookie('EP_C', JSON.stringify(data), 60);\n createCookieNew('EP_C',JSON.stringify(data),60);\n\n wall.wallLoginSuccess();\n var actionurl = $('.registration-agent-wall form#user-login-form').attr('action');\n var nextUrl = getCookie('next');\n $.ajax({\n type: 'GET',\n url: '\/tep-solr\/api\/getPropPointsStatus.php',\n async: false,\n success: function(data2){\n if(data2 == '1'){\n isProppoint = true;\n }\n },\n });\n \/\/ $.ajax({\n \/\/ type: 'GET',\n \/\/ async: false,\n \/\/ url: '\/tep-solr\/api\/getAllowedListAgentsPropPoints.php',\n \/\/ success: function(data2){\n \/\/ var allowedList = JSON.parse(data2);\n \/\/ if(allowedList.indexOf(data.contact) > -1){\n \/\/ nextUrl = '\/profile';\n \/\/ }\n \/\/ },\n \/\/ });\n window.location.replace(nextUrl);\n }else{\n var obj = {}\n try{\n obj = JSON.parse(data);\n if(obj.result == '3' || obj.result == 3){\n $('#hidden-uid').val(obj.uid);\n $('#hidden-action').val( $('form#efv-login__main-form').attr('action') );\n wall.wallLoginLimit();\n }\n else{\n var messageError = 'Incorrect username or password.';\n if (data && data.responseJSON && data.responseJSON.data && data.responseJSON.data.error && data.responseJSON.data.error.message) {\n messageError = data.responseJSON.data.error.message;\n }\n\n $('.otp-verification-spinner').hide();\n }\n }catch{\n var messageError = 'Incorrect username or password.';\n if (data && data.responseJSON && data.responseJSON.data && data.responseJSON.data.error && data.responseJSON.data.error.message) {\n messageError = data.responseJSON.data.error.message;\n }\n\n $('form#efv-login__main-form .inline-messages').html('<label class=\"error\">' + messageError + '<\/label>');\n $('.otp-verification-spinner').hide();\n }\n }\n }\n },\n });\n \/\/ ===============================================================================================================\n } else{\n $('.wrong-number').show();\n verificationAttempt++;\n if( verificationAttempt >= 3 ){\n wall.wallOtpFailed();\n }\n }\n $('.otp-verification-spinner').hide();\n });\n\n }\n });\n\n \n \n \/\/ Request otp when resend button clicked and restart countdown\n \/\/ \n \/\/ @request DVT-3752\n \/\/ \n \/\/ @return\n \n $('#resend-btn-login').unbind('click').bind('click', function (e) {\n var otpInfo = JSON.parse(localStorage.getItem('otp_param_info'))\n var base_url = window.location.protocol+window.location.hostname;\n var otp_request_url = base_url+'\/index.php?option=com_analytica&task=otprequest';\n\n $.post(otp_request_url, otpInfo, function(otp){\n if(!otp.hasOwnProperty('error')){\n second = otp.expired_time\n setOTPVerifCountDown()\n $('#count-down-label').show();\n $('#resend-label').hide();\n }\n });\n });\n\n });\n <\/script>\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.otp-success-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .input-phone-number-otp.col2::placeholder{\n color:#979797;\n }\n input.input-phone-number-otp {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #979797;\n font-size: 18px;\n }\n input.input-phone-number-otp2 {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #3496EE;\n font-size: 18px;\n }\n .otp-success-wall{\n font-family: Poppins;\n }\n\n div.input-number {\n margin: 0 auto 30px;\n }\n\n img.otp-image {\n width: 120px;\n height: 130px;\n margin-top:30px\n }\n <\/style>\n <div style='display:none;' class='otp-success-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n\n <div>\n <img class='otp-image' src='https:\/\/sg.tepcdn.com\/public\/usr\/8xh20v\/1df6cf-verification-success.png'>\n <h3 class='otp-h3' style='font-size:20px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#4c4c4c;'>Verification Success<\/h3>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:35px'>Your mobile number has been verified<\/p>\n <\/div>\n <button type='submit' class='btn btn-lg btn-default form-submit btn-otp' name='verificationsuccess' value='verificationsuccess'\n style='cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 70%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; margin-bottom:10px; font-family: Poppins, sans-serif; font-weight:500 !important;'>Continue<\/button>\n <br><br>\n <\/div>\n\n\n\n <script>\n $('#input-col2').keyup(function(){\n\n if ($('#input-col2').val().length >= 6) {\n $('.btn-otp').prop('disabled','');\n } else {\n $('.btn-otp').prop('disabled','disabled');\n }\n });\n <\/script>\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.otp-failed-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .input-phone-number-otp.col2::placeholder{\n color:#979797;\n }\n input.input-phone-number-otp {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #979797;\n font-size: 18px;\n }\n input.input-phone-number-otp2 {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #3496EE;\n font-size: 18px;\n }\n .otp-failed-wall{\n font-family: Poppins;\n }\n\n div.input-number {\n margin: 0 auto 30px;\n }\n\n img.otp-image {\n width: 120px;\n height: 130px;\n margin-top:30px\n }\n <\/style>\n <div style='display:none;' class='otp-failed-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n\n <div>\n <img class='otp-image' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/37f6ad-Verification-Failed.png'>\n <h3 class='otp-h3' style='font-size:20px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#4c4c4c;'>Verification Failed<\/h3>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:35px'>Please contact our costumer support via<br><font color='#13649D'>support@edgeproperty<\/font> or via call <font color='#13649D'>+65 6970 <br>7793<\/font><\/p>\n <\/div>\n\n <\/div>\n\n\n\n <script>\n $('#input-col2').keyup(function(){\n\n if ($('#input-col2').val().length >= 6) {\n $('.btn-otp').prop('disabled','');\n } else {\n $('.btn-otp').prop('disabled','disabled');\n }\n });\n <\/script>\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.otp-login-success-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .input-phone-number-otp.col2::placeholder{\n color:#979797;\n }\n input.input-phone-number-otp {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #979797;\n font-size: 18px;\n }\n input.input-phone-number-otp2 {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #3496EE;\n font-size: 18px;\n }\n .otp-login-success-wall{\n font-family: Poppins;\n }\n\n div.input-number {\n margin: 0 auto 30px;\n }\n\n img.otp-image {\n width: 120px;\n height: 130px;\n margin-top:30px\n }\n <\/style>\n <div style='display:none;' class='otp-login-success-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n\n <div>\n <center><img lass='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/7d70a2-EdgeProp-logo-w-tagline.png' width='30%'><center><br><br>\n <center><img lass='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/ef7bbd-success.png' width='30%'><br>\n <h3 class='otp-h3' style='font-size:20px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#4c4c4c;'>Login Success!<\/h3>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:35px'>You have successfully logged in as Agent.<\/p><center>\n <\/div>\n\n <\/div>\n\n\n\n <script>\n $('#input-col2').keyup(function(){\n\n if ($('#input-col2').val().length >= 6) {\n $('.btn-otp').prop('disabled','');\n } else {\n $('.btn-otp').prop('disabled','disabled');\n }\n });\n <\/script>\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.otp-signup-success-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .input-phone-number-otp.col2::placeholder{\n color:#979797;\n }\n input.input-phone-number-otp {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #979797;\n font-size: 18px;\n }\n input.input-phone-number-otp2 {\n outline-width: 0;\n border-top: none;\n border-right: none;\n border-left: none;\n border-bottom: 0.01em solid #3496EE;\n font-size: 18px;\n }\n .otp-signup-success-wall{\n font-family: Poppins;\n }\n\n div.input-number {\n margin: 0 auto 30px;\n }\n\n img.otp-image {\n width: 120px;\n height: 130px;\n margin-top:30px\n }\n\n .close-regist-btn {\n margin-top: 0 !important;\n }\n <\/style>\n <div class='otp-signup-success-wall-wrapper'>\n <div style='display:none;' class='otp-signup-success-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n\n <div>\n <center><img lass='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/7d70a2-EdgeProp-logo-w-tagline.png' width='30%'><center><br><br>\n <center><img lass='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/ef7bbd-success.png' width='30%'><br>\n <h3 class='otp-h3' style='font-size:20px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#4c4c4c;'>Sign Up Success!<\/h3>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:35px'>You have successfully signed up as Agent.<br> Please check your inbox. We have sent a confirmation email to verify your email <br>address<\/p><center>\n <\/div>\n\n <\/div>\n <div style='display:none;' class='otp-signup-success-wall-user' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close close-regist-btn' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n\n <div>\n <center><img lass='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/7d70a2-EdgeProp-logo-w-tagline.png' width='30%'><center><br><br>\n <center><img lass='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/ef7bbd-success.png' width='30%'><br>\n <h3 class='otp-h3' style='font-size:20px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#4c4c4c;'>Sign Up Success!<\/h3>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:35px'>You have successfully signed up as User.<\/p><center>\n <\/div>\n\n <\/div>\n <div style='display:none;' class='otp-signup-success-wall-agent' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close close-regist-btn' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n\n <div>\n <center><img lass='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/7d70a2-EdgeProp-logo-w-tagline.png' width='30%'><center><br><br>\n <center><img lass='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/ef7bbd-success.png' width='30%'><br>\n <h3 class='otp-h3' style='font-size:20px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#4c4c4c;'>Sign Up Success!<\/h3>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:35px'>You have successfully signed up as Agent.<\/p><center>\n <\/div>\n\n <\/div>\n <\/div>\n\n\n\n <script>\n $('#input-col2').keyup(function(){\n\n if ($('#input-col2').val().length >= 6) {\n $('.btn-otp').prop('disabled','');\n } else {\n $('.btn-otp').prop('disabled','disabled');\n }\n });\n <\/script>\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.proppoint-no-access-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .proppoint-no-access-wall{\n font-family: Poppins;\n }\n img.otp-image {\n width: 120px;\n height: 130px;\n margin-top:30px\n }\n <\/style>\n <div style='display:none;' class='proppoint-no-access-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <a class='pull-right' onclick='wall.wallDown();' style='color:#000; text-decoration:none; cursor:pointer !important;'><i style='font-size: 30px;' class='fa fa-times'\/><\/a>\n <\/div>\n\n <div>\n <br\/><br\/>\n <center><img class='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8bua27\/0f2f9c-Oh-no.png' width='30%'><br>\n <p class='otp-h3' style='font-size:22px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#9B9B9B; margin-top: 30px;'>Oh no..<\/p>\n <p class='otp-h3' style='font-size:26px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#222222; margin-top: 10px;'>Access Limited<\/p>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:35px; margin-top: 10px;'>Top up prop points to complete this action.<\/p><center>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:35px; margin-top: 10px;'><a style='color: #13649D !important;' href='\/pricing-plan'>What are prop points?<\/a><\/p><center>\n <button type='button' id='btn_upgrade_plan' class='btn btn-lg btn-default btn_upgrade_plan' name='btn_upgrade_plan' value='upgradeplan'\n style='outline: none; cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 70%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; margin-bottom:10px; font-family: Poppins, sans-serif; font-weight:500 !important;'><i class='fa fa-plus'><\/i>&nbsp;&nbsp;Top Up<\/button>\n <\/div>\n\n <\/div>\n\n\n\n <script>\n $('#btn_upgrade_plan').on('click', function(e){\n window.location.href = '\/pricing-plan#topupform';\n });\n <\/script>\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.proppoint-low-point-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .proppoint-low-point-wall{\n font-family: Poppins;\n }\n\n div.input-number {\n margin: 0 auto 30px;\n }\n\n img.otp-image {\n width: 120px;\n height: 130px;\n margin-top:30px\n }\n .images{\n margin-top: 8px;\n margin-left: 90%;\n }\n .zeronumber{\n color: #275075;\n font-size: 32px;\n font-family: Poppins;\n font-weight: 300;\n }\n <\/style>\n <div style='display:none;' class='proppoint-low-point-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n\n <div>\n <center><img class='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8bua27\/04230b-Reminder.png' width='30%'><br><br>\n <p class='otp-h3' style='font-size:26px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#222222; margin-top: 10px;'>Prop Points reminder<\/p>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:35px; margin-top: 10px;'><center>Your Prop Points are low. Top up your Prop <br>Points to enjoy uninterrupted services.<\/center><\/p>\n <a style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c; margin-bottom:35px; margin-top: 10px;' href='\/pricing-plan#FAQForm'><font color='#005C98'>Why top up?<\/font><\/a><center><br><br>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:##222222;'>Remaining Prop Points:<\/p>\n\n <div class='col-lg-12'>\n <div class='col-lg-6'>\n <div class='images'><img class='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/5a1fff-point.png' style='position: absolute;' width='20%' align='right'><\/div>\n <\/div>\n <div class='col-lg-6'>\n <div class='text-left'><span class='zeronumber'><div id='low_proppoint_value'><\/div><\/span><\/div>\n <\/div>\n <\/div>\n\n <br>\n <br>\n <br>\n <div class='row'>\n <div class='col-lg-12'>\n\n <div class='col-lg-6'>\n <a onClick='wall.wallDown()' class='button btn btn-lg btn-default' value='upgradeplan' style='cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(255, 81, 34); border-radius: 100px; border: 1px solid rgb(255, 81, 34); font-size: 14px; font-weight: 500;'>Remind me Later<\/a>\n <\/div>\n <div class='col-lg-6'>\n <a href='\/pricing-plan' class='button btn btn-lg btn-default' value='upgradeplan' style='outline: none; cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 80%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; margin-bottom:10px; font-family: Poppins, sans-serif; font-weight:500 !important;'>Top Up<\/a>\n <\/div>\n\n\n <\/div>\n <\/div>\n\n <\/div>\n\n\n <\/div>\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.proppoint-no-point-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .proppoint-no-point-wall{\n font-family: Poppins;\n }\n img.otp-image {\n width: 120px;\n height: 130px;\n margin-top:30px\n }\n .images{\n margin-top: 8px;\n margin-left: 90%;\n }\n .zeronumber{\n color: #275075;\n font-size: 32px;\n font-family: Poppins;\n font-weight: 300;\n\n\n }\n <\/style>\n <div style='display:none;' class='proppoint-no-point-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n\n <div>\n <center><img class='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8bua27\/0f2f9c-Oh-no.png' width='30%'><br>\n <p class='otp-h3' style='font-size:22px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#9B9B9B; margin-top: 30px;'>Oh no..<\/p>\n <p class='otp-h3' style='font-size:22px; font-weight: 600;letter-spacing: 0.01em; line-height: 1.5;color:#222222; margin-top: 10px;'>You have run out of Prop Points<\/p>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:##222222; margin-top: 10px;'><center>Access to these functions will be revoked<br>after 48 hours. Top up your prop points to<br>enjoy uninterupted services.<\/center><\/p>\n <a style='font-family: Poppins; font-weight: 300; font-size:14px;color:#4c4c4c;' href='\/pricing-plan#FAQForm'><font color='#005C98'>Why top up?<\/font><\/a><center><br>\n <p style='font-family: Poppins; font-weight: 300; font-size:14px;color:##222222; margin-top: 10px;'>Remaining Prop Point:<\/p>\n <div class='col-lg-12'>\n <div class='col-lg-6'>\n <div class='images'><img class='img-responsive' src='https:\/\/sg.tepcdn.com\/public\/usr\/8op003\/5a1fff-point.png' style='position: absolute;' width='20%' align='right'><\/div>\n <\/div>\n <div class='col-lg-6'>\n <div class='text-left'><span class='zeronumber'>0<\/span><\/div>\n <\/div>\n <\/div>\n <br>\n <a href='\/pricing-plan' class='button btn btn-lg btn-default' value='upgradeplan' style='margin-top: 10px; outline: none; cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 70%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; margin-bottom:10px; font-family: Poppins, sans-serif; font-weight:500 !important;'>Top Up<\/a>\n\n <\/div>\n\n <\/div>\n\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.show-first-time-deduct-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .show-first-time-deduct-wall{\n font-family: Poppins;\n }\n .ok{\n text-align: center;\n font-family: Poppins;\n font-style: normal;\n font-weight: 500;\n font-size: 16px;\n line-height: 25px;\n }\n <\/style>\n <div style='display:none;' class='show-first-time-deduct-wall' style='width:280px; margin:0 auto'>\n <div>\n <center>\n <h3 class='otp-h3' style='font-size:20px; font-weight: 600;letter-spacing: 0.01em; line-height: 33px;color:##4C4C4C;'>\n 30 prop points have been <br>\n deducted from your account.\n <\/h3>\n <p style='font-family: Poppins; font-weight: normal; font-size:14px; line-height: 23px; color:#4c4c4c; margin-bottom:35px'>\n For every unique FSBO contact click, <br> 30 prop points will be deducted from your account\n <\/p>\n <center>\n <\/div>\n <div class='close-popup'>\n <a class='ok' onclick='wall.wallDown();' style='color:#46B8DA; text-decoration:none; cursor:pointer: margin-bottom:'>OK<\/a>\n <\/div>\n <br>\n <\/div>\n "; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.verification-req-wall').length) { // Ensure this is only injected once var html = "\n <style>\n .verification-req-wall{\n font-family: Poppins;\n }\n .otp-h3{\n font-size:20px;\n font-weight: 600;\n letter-spacing: 0.01em;\n line-height: 33px;\n color:##4C4C4C;\n }\n .button-group{\n display:blocked;\n }\n <\/style>\n <div style='display:none;' class='verification-req-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n <div>\n <center>\n <h3 class='otp-h3' >\n Verification Required\n <\/h3>\n <p style='font-family: Poppins; font-weight: normal; font-size:14px; line-height: 23px; color:#4c4c4c; margin-bottom:0px'>\n Please verify your number or login <br> with your EdgeProp account to <br> continue\n <\/p>\n\n <br>\n <div>\n <input type='checkbox' id='check-verification'>\n Agent(s) will receive my number for faster response time.\n <\/div>\n <center>\n <\/div>\n <div class='button-group centered'>\n <div onclick='setCookie2()' class='btn btn-lg btn-default centered form-submit pdpa-login' style='margin:25px 0px 10px 0px; cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 100%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; font-family: Poppins, sans-serif; font-weight:500 !important;' disabled>Verify Mobile Number<\/div>\n <div onclick='wall.wallMinimalUserLogin()' class='btn btn-lg btn-default centered pdpa-login' style='margin:0px; cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(255, 81, 34); width: 100%; border-radius: 100px; border: 1px solid rgb(255, 81, 34); font-size: 14px; font-weight: 500; padding: 8px 30px;' disabled>LOGIN<\/div>\n <\/div>\n "; $('body').append(html); } $("#check-verification").click(function(e){ var check = $(this).prop('checked'); if (check) { $(".pdpa-login").removeAttr('disabled'); } else{ $(".pdpa-login").attr('disabled', 'disabled'); } }); }); function setCookie2(){ wall.wallOtpRequest(); setCookie("next", window.location.href, 1); } </script> <script> var agentNumberConsentYes = function(){} $(document).ready(function() { if (!$('.show-agent-number-consent-wall').length) { // Ensure this is only injected once var html = "<style>\n .show-agent-number-consent-wall {\n font-family: Poppins;\n }\n .consent-h3{\n font-size:20px;\n font-weight: 600;\n letter-spacing: 0.01em;\n line-height: 33px;\n color: #4C4C4C;\n }\n .consent-p{\n font-family: Poppins;\n font-weight: normal;\n font-size:14px;\n line-height: 23px;\n color:#4c4c4c;\n margin-bottom:35px;\n }\n .close{\n color:#4C4C4C;\n text-decoration:none;\n cursor:pointer;\n margin-top: -25px;\n }\n .button-group{\n display:inline-block;\n }\n .button-agent-consent{\n cursor: pointer;\n height:40px;\n border-radius: 100px;\n\n font-size: 14px;\n font-weight: 300;\n padding: 8px 30px;\n margin-bottom:10px;\n font-family: Poppins,sans-serif;\n font-weight:500 !important;\n }\n <\/style>\n <div style='display:none;' class='show-agent-number-consent-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n <div class='centered'>\n <h3 class='consent-h3'>Would you like to proceed?<\/h3>\n <p class='consent-p'>\n Agent(s) will recieve my number for<br>\n faster response time.\n <\/p>\n <\/div>\n <div class='col-md-12'>\n <div class='col-md-6' style='padding:0px'>\n <button class='btn btn-lg btn-default pull-left form-submit button-agent-consent' value='cancel' onclick='wall.wallDown();' style='color:rgb(255, 81, 34); border: none;' >No, thanks<\/button>\n <\/div>\n <div class='col-md-6' style='padding:0px'>\n <button id='button-agent-consent-true' class='btn btn-lg btn-default pull-left form-submit button-agent-consent' value='continue' style='background-color: rgb(255, 81, 34); color: white; border: 1px solid transparent;'>Yes, please<\/button>\n <\/div>\n <\/div>\n <\/div>"; $('body').append(html); } $("#button-agent-consent-true").click(function(e){ agentNumberConsentYes(); }); }); </script> <script> $(document).ready(function() { if (!$('.show-min-user-login-wall').length) { // Ensure this is only injected once var html = "\n <script>\n $(document).ready(function() {\n $('.show-min-user-login-wall button.btn-facebook').click(function() {\n window._tepq.push('wall', 'Facebook Login');\n sendGaEvent('Wall', 'Facebook Login');\n });\n $('.show-min-user-login-wall form#user-login-form button[type=submit]').click(function() {\n window._tepq.push('wall', 'Login');\n sendGaEvent('Wall', 'Login');\n });\n $('.show-min-user-login-wall button[type=reset]').click(function() {\n window._tepq.push('wall', 'Cancel');\n sendGaEvent('Wall', 'Cancel');\n });\n $('.show-min-user-login-wall form#user-login-form a').click(function() {\n window._tepq.push('wall', $(this).text());\n sendGaEvent('Wall', $(this).text());\n });\n $('.show-min-user-login-wall form#user-login-form').validate({\n submitHandler: function(form) {\n $('.login-spinner-user').show();\n $.ajax({\n type: 'POST',\n url: '\/index.php?&option=com_analytica&task=login',\n data: { username: $('.minimal_user_username').val(), password: $('.minimal_user_password').val() }\n }).always(function( data ) {\n\n if (data['sessid']) {\n if(data.hasOwnProperty('sessid')){\n \/\/ Set Cookie for Nextjs\n \/\/ setCookie('EP_C', JSON.stringify(data), 60);\n createCookieNew('EP_C',JSON.stringify(data),60);\n\n wall.wallLoginSuccess();\n var actionurl = $('.registration-agent-wall form#user-login-form').attr('action');\n \/\/ $.ajax({\n \/\/ type: 'GET',\n \/\/ url: '\/tep-solr\/api\/getPropPointsStatus.php',\n \/\/ async: false,\n \/\/ success: function(data2){\n \/\/ if(data2 == '1'){\n \/\/ window.location.replace('\/profile');\n \/\/ }\n \/\/ },\n \/\/ });\n \/\/ $.ajax({\n \/\/ type: 'GET',\n \/\/ async: false,\n \/\/ url: '\/tep-solr\/api\/getAllowedListAgentsPropPoints.php',\n \/\/ success: function(data2){\n \/\/ var allowedList = JSON.parse(data2);\n \/\/ if(allowedList.indexOf(data.contact) > -1){\n \/\/ window.location.replace('\/profile');\n \/\/ }\n \/\/ },\n \/\/ });\n if( getCookie('next') != '' )\n window.location.replace(getCookie('next'));\n \/\/ else\n \/\/ window.location.replace('\/profile');\n }\n } else {\n var obj = JSON.parse(data);\n \/\/ var obj = false;\n \/\/ if(data.hasOwnProperty('result')) {\n \/\/ obj = JSON.parse(data);\n \/\/ }\n if(obj.result == '3' || obj.result == 3){\n \/\/ wall.wallDown();\n $('#hidden-uid').val(obj.uid);\n $('#hidden-action').val( $('.registration-wall form#user-login-form').attr('action') );\n wall.wallLoginLimit();\n $('.login-spinner-user').hide();\n }\n else{\n var messageError = 'Incorrect username or password.';\n if (data && data.responseJSON && data.responseJSON.data && data.responseJSON.data.error && data.responseJSON.data.error.message) {\n messageError = data.responseJSON.data.error.message;\n }\n\n $('.show-min-user-login-wall .minimal-inline-messages').html('<label class=\"error\">' + messageError + '<\/label>');\n $('.login-spinner-user').hide();\n }\n\n }\n });\n }\n });\n });\n <\/script>\n\n <style>\n .show-min-user-login-wall button.btn-facebook {\n padding-left: 20px;\n }\n .show-min-user-login-wall button.btn-facebook:focus {\n outline: 0;\n }\n .show-min-user-login-wall button[type=submit] {\n color: white;\n background-color: #5bc0de;\n border-color: #46b8da;\n }\n .show-min-user-login-wall div.input-group {\n width: 100% !important;\n }\n .show-min-user-login-wall label.error {\n color: #f74a28;\n }\n .show-min-user-login-wall input.error {\n border-color: #f74a28;\n }\n <\/style>\n <div style='display:none;' class='show-min-user-login-wall show-min-user-login-wall'>\n <p class='validateTips'><\/p>\n \n \n <style>\n #min-user-label{\n font-family: \"Poppins\";\n font-weight:300;\n margin-bottom:25px;\n }\n <\/style>\n <div class\"close-popup\">\n <div class=\"close\" onclick=\"wall.wallDown();\">X<\/div>\n <\/div>\n <h3 id=\"min-user-label\">User Login<\/h3>\n <form action=\"\" method=\"post\" id=\"user-login-form\" accept-charset=\"UTF-8\" novalidate=\"novalidate\">\n <div class=\"form-border-popup\">\n <input id=\"autoredirect\" type=\"hidden\">\n <input type=\"hidden\" name=\"form_build_id\" value=\"form-6W6OQkM2OdRZWUfb0X9ToiwaRQG_Av4mWLlWIj3rcwE\">\n <input type=\"hidden\" name=\"form_id\" value=\"user_login_block\">\n <div class=\"form-item form-item-name form-type-textfield form-group\">\n <div class=\"input-group input-group-lg\" style=\"position: relative;\">\n <i aria-hidden=\"true\" style=\"position: absolute; padding: 15px 10px; pointer-events: none; left: 0px; z-index: 999;\"><\/i>\n <input placeholder=\"Email\" class=\"minimal_user_username form-control form-text required\" type=\"text\" id=\"edit-name--2\" name=\"name\" value=\"\" size=\"15\" minlength=\"8\" maxlength=\"60\" aria-required=\"true\">\n <\/div>\n <\/div>\n\n <div class=\"form-item form-item-pass form-type-password form-group\">\n <div class=\"input-group input-group-lg\" style=\"position: relative;\">\n <i aria-hidden=\"true\" style=\"position: absolute; padding: 15px 10px; pointer-events: none; left: 0px; z-index: 999;\"><\/i>\n <input placeholder=\"Password\" class=\"minimal_user_password form-control form-text required\" type=\"password\" id=\"edit-pass--2\" name=\"pass\" size=\"15\" maxlength=\"128\" aria-required=\"true\">\n <\/div>\n <\/div>\n\n <div class=\"form-actions form-wrapper form-group\" id=\"edit-actions--2\">\n <div class=\"minimal-inline-messages\"><\/div>\n <button type=\"submit\" class=\"btn btn-lg btn-default pull-right form-submit\" type=\"submit\" name=\"op\" value=\"Login\" style=\"cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 100%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 15px; font-weight: 300 !important; padding: 8px 30px; margin:0px 0px 10px 0px; font-family: Poppins, sans-serif; font-weight:500 !important;\">Login<\/button>\n <div style=\"position: relative;\">\n <div class=\"login-spinner-user\" style=\"display: none;position:absolute; height: 40px; border-radius: 100px; width: 100%; background-color: gray; padding: 10px; opacity: 0.4;\">\n <i class=\"fa fa-spinner fa-spin\" style=\"font-size: 2em;\" aria-hidden=\"true\"><\/i>\n <\/div>\n <\/div>\n <a href=\"\/user\/password\"class=\"forgot_password_popup\">Forgot Password?<\/a>\n <hr\/>\n <p class=\"pop-up-login-label\">Or Login with Mobile OTP<\/p>\n <div class=\"button login-agent\" onclick=\"wall.wallOtpRequest()\">\n <div style=\"display: inline-block; border-right: 1px solid rgb(39, 174, 96); padding: 3px 7px 3px 8px;\"><i class=\"fa fa-mobile fa-3x\" aria-hidden=\"true\"><\/i>&nbsp;&nbsp;<\/div>\n <div style=\"padding: 0px 19px; display: inline-block; top: -10px; position: relative;\">Login with Mobile OTP<\/div>\n\n <\/div>\n <\/div>\n <\/div>\n <\/form>\n \n\n <\/div>"; $('body').append(html); } }); </script> <script> var deductionConfirmationYes = function(){} $(document).ready(function() { if (!$('.show-deduction-confirmation-wall').length) { // Ensure this is only injected once var html = "<style>\n .show-deduction-confirmation-wall {\n font-family: Poppins;\n }\n .deduct-h3{\n font-size:20px;\n font-weight: 600;\n letter-spacing: 0.01em;\n line-height: 33px;\n color: #3377bb;\n }\n .deduct-p{\n font-family: Poppins;\n font-weight: normal;\n font-size:14px;\n line-height: 23px;\n color:#4c4c4c;\n margin-bottom:35px;\n }\n .close{\n color:#4C4C4C;\n text-decoration:none;\n cursor:pointer;\n margin-top: -25px;\n }\n .button-group{\n display:inline-block;\n }\n .button-deduction-confirmation{\n cursor: pointer;\n height:40px;\n border-radius: 100px;\n\n font-size: 14px;\n font-weight: 300;\n padding: 8px 30px;\n margin-bottom:10px;\n font-family: Poppins,sans-serif;\n font-weight:500 !important;\n }\n <\/style>\n <div style='display:none;' class='show-deduction-confirmation-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n <div class='centered'>\n <h3 class='deduct-h3'>Show contact details?<\/h3>\n <p class='deduct-p'>\n For every unique Featured Enquiries click,<br>\n we deduct 30 prop points from your<br>\n account.\n <\/p>\n <\/div>\n <div class='col-md-12'>\n <div class='col-md-6' style='padding:0px'>\n <button class='btn btn-lg btn-default pull-left form-submit button-deduction-confirmation' value='cancel' onclick='wall.wallDown();' style='color:rgb(255, 81, 34); border: none;' >No, thanks<\/button>\n <\/div>\n <div class='col-md-6' style='padding:0px'>\n <button id='button-deduction-confirmation-true' class='btn btn-lg btn-default pull-left form-submit button-deduction-confirmation' value='continue' style='background-color: rgb(255, 81, 34); color: white; border: 1px solid transparent;'>Yes, I'm Sure<\/button>\n <\/div>\n <\/div>\n <\/div>"; $('body').append(html); } $("#button-deduction-confirmation-true").click(function(e){ deductionConfirmationYes(); }); }); </script> <script> var setPasswordYes = function(){} $(document).ready(function() { if (!$('.show-set-password-wall').length) { // Ensure this is only injected once var html = "<style>\n .show-set-password-wall {\n font-family: Poppins;\n }\n .pass-h3{\n font-size:20px;\n font-weight: 600;\n letter-spacing: 0.01em;\n line-height: 33px;\n color: #3377bb;\n text-align: left\n }\n .pass-p{\n font-family: Poppins;\n font-weight: normal;\n font-size:14px;\n line-height: 23px;\n color:#4c4c4c;\n margin-bottom:35px;\n text-align: left\n }\n .close{\n color:#4C4C4C;\n text-decoration:none;\n cursor:pointer;\n margin-top: -25px;\n }\n .button-group{\n display:inline-block;\n }\n .button-set-password{\n cursor: pointer;\n height:40px;\n width:315px;\n align: center;\n margin-left: 50px;\n\n font-size: 14px;\n font-weight: 300;\n margin-bottom:10px;\n font-family: Poppins,sans-serif;\n font-weight:500 !important;\n }\n <\/style>\n <div style='display:none;' class='show-set-password-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n <div class='centered'>\n <h3 class='pass-h3'>\n You have successfully<br>\n secured your account with a<br>\n password<\/h3>\n <p class='pass-p'>\n First-time users are required to verify a mobile<br>\n number to be associated with their account.<br><br>\n You will now be directed to verify your number<br>\n with a One-Time Password sent to your mobile<br>\n number.\n <\/p>\n <\/div>\n <div class='centered'>\n <button id='button-set-password-true' class='btn btn-lg btn-default pull-left form-submit button-set-password' value='continue' style='background-color: rgb(255, 81, 34); color: white; border: 1px solid transparent;'>Proceed<\/button>\n <\/div>\n <\/div>"; $('body').append(html); } $("#button-set-password-true").click(function(e){ setPasswordYes(); }); }); </script> <script> var deductionConfirmationYes = function(){} $(document).ready(function() { if (!$('.show-limit-login-wall').length) { // Ensure this is only injected once var html = "<style>\n .show-limit-login-wall {\n font-family: Poppins;\n }\n .limit-h3{\n font-size:20px;\n font-weight: 600;\n letter-spacing: 0.01em;\n line-height: 33px;\n color: #4c4c4c;\n }\n .limit-p{\n font-family: Poppins;\n font-weight: normal;\n font-size:14px;\n line-height: 23px;\n color:#4c4c4c;\n margin-bottom:35px;\n }\n .close{\n color:#4C4C4C;\n text-decoration:none;\n cursor:pointer;\n margin-top: -25px;\n }\n .button-group{\n display:inline-block;\n }\n .button-limit-login{\n cursor: pointer;\n height:40px;\n width:310px;\n border-radius: 100px;\n\n font-size: 14px;\n font-weight: 300;\n padding: 8px 30px;\n margin-bottom:10px;\n font-family: Poppins,sans-serif;\n font-weight:500 !important;\n }\n .limit-p span{\n font-weight: bold;\n }\n <\/style>\n <div style='display:none;' class='show-limit-login-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n <div class='centered'>\n <img src='https:\/\/sg.tepcdn.com\/public\/usr\/8bua27\/cc94b3-Simultaneous-login.png' width='30%' \/><br>\n <h3 class='limit-h3'>You'll be signed out elsewhere!<\/h3>\n <p class='limit-p'>\n <br>The maximum number of simultaneous<br>\n sessions (2) for your account has been<br>\n reached. By logging in, your account will be<br>\n logged out on all other devices.\n <\/p>\n <\/div>\n <div class='centered'>\n <button id='button-limit-login-true' class='btn btn-lg btn-default pull-left form-submit button-limit-login' value='continue' style='background-color: rgb(255, 81, 34); color: white; border: 1px solid transparent;'>LOGIN<\/button>\n <\/div>\n <div class='centered'>\n <button class='btn btn-lg btn-default pull-left form-submit button-limit-login' value='cancel' onclick='wall.wallDown();' style='color:rgb(255, 81, 34); border: none;' >I've changed my mind<\/button>\n <\/div>\n <\/div>"; $('body').append(html); } //$("#button-limit-login-true").click(function(e){ $("#button-limit-login-true").on("click",function(e){ var uid = $('#hidden-uid').val(); $.ajax({ type: 'POST', url: '/index.php?option=com_analytica&task=resetsession&uid='+uid, }).success(function(data) { $.ajax({ type: 'POST', url: '/index.php?&option=com_analytica&task=login', data: { username: $('.agent_username').val(), password: $('.agent_password').val() } }).success(function( data ) { var actionurl = $('#hidden-action').val(); //window.location.replace(actionurl); window.location.reload(actionurl); }); }); }); }); </script> <script> $(document).ready(function() { if (!$('.show-kicked-out-wall').length) { // Ensure this is only injected once var html = "<style>\n .show-kicked-out-wall {\n font-family: Poppins;\n padding-top:20px;\n }\n .kicked-h3{\n font-size:20px;\n font-weight: 600;\n letter-spacing: 0.01em;\n line-height: 33px;\n color: #4c4c4c;\n }\n .kicked-p{\n font-family: Poppins;\n font-weight: normal;\n font-size:14px;\n line-height: 23px;\n color:#4c4c4c;\n margin-bottom:35px;\n }\n .close{\n color:#4C4C4C;\n text-decoration:none;\n cursor:pointer;\n margin-top: -25px;\n }\n .button-group{\n display:inline-block;\n }\n .button-kicked{\n cursor: pointer;\n height:40px;\n width:310px;\n border-radius: 100px;\n\n font-size: 14px;\n font-weight: 300;\n padding: 8px 30px;\n margin-bottom:10px;\n font-family: Poppins,sans-serif;\n font-weight:500 !important;\n }\n .kicked-p span{\n font-weight: bold;\n }\n a.register_popup{\n margin-top:20px;\n color:#DB5D0D !important;\n text-decoration:none;\n font-size:12px;\n }\n h6{\n margin-top:20px;\n font-family: Poppins;\n font-weight: normal;\n font-size:12px;\n line-height: 23px;\n color:#4c4c4c;\n margin-bottom:35px;\n }\n <\/style>\n <div style='display:none;' class='show-kicked-out-wall' style='width:280px; margin:0 auto'>\n <div class='close-popup'>\n <div class='close' onclick='wall.wallDown();'>X<\/div>\n <\/div>\n <div class='centered'>\n <img src='https:\/\/sg.tepcdn.com\/public\/usr\/8bua27\/cc94b3-Simultaneous-login.png' width='30%' \/><br>\n <h3 class='kicked-h3'>You're signed in elsewhere!<\/h3>\n <p class='kicked-p'>\n <br>You've been logged out as there are<br>\n currently more than 2 devices accessing<br>\n this account. Please re-login to continue<br>\n service.\n <\/p>\n <\/div>\n <div class='centered'>\n <div class='btn btn-lg btn-default pull-left form-submit button-limit-login' onclick='wall.wallUpAgentOtp()' style='background-color: rgb(255, 81, 34); color: white; border: 1px solid transparent;'>\n LOGIN\n <\/div>\n\n <\/div>\n <div class='centered'>\n <h6><br>Don't have account yet? <a class='register_popup' href='\/pricing-plan' id='link_register'>Subscribe to Pro-Tools<\/a><\/h6>\n <\/div>\n <\/div>"; $('body').append(html); } $("#link_register").click(function(e){ createCookieNew('ClickSubs','1',60); }); }); </script> <input type='hidden' id='hidden-uid' value='0' /><input type='hidden' id='hidden-action' value='' /><script type='text/javascript' src='https://www.edgeprop.sg/sites/all/modules/analytic/js/login/wall.js'></script><script type='text/javascript' src='https://www.edgeprop.sg/sites/all/modules/analytic/js/jquery.blockUI.js'></script> <script> $(document).ready(function() { if (!$('.registration-wall').length) { // Ensure this is only injected once var html = "\n <script>\n function closePopup(){\n wall.wallDown();\n \n }\n $(document).ready(function() {\n $('.registration-wall button.btn-facebook').click(function() {\n window._tepq.push('wall', 'Facebook Login');\n sendGaEvent('Wall', 'Facebook Login');\n });\n $('.registration-wall form#user-login-form button[type=submit]').click(function() {\n window._tepq.push('wall', 'Login');\n sendGaEvent('Wall', 'Login');\n });\n $('.registration-wall button[type=reset]').click(function() {\n window._tepq.push('wall', 'Cancel');\n sendGaEvent('Wall', 'Cancel');\n });\n $('.registration-wall form#user-login-form a').click(function() {\n window._tepq.push('wall', $(this).text());\n sendGaEvent('Wall', $(this).text());\n });\n $('.registration-wall form#user-login-form').validate({\n submitHandler: function(form) {\n $('.login-spinner-user').show();\n $.ajax({\n type: 'POST',\n url: '\/index.php?&option=com_analytica&task=login',\n dataType: 'json',\n data: { username: $('.user_username').val(), password: $('.user_password').val() }\n }).always(function( data ) {\n\n if (data && data['sessid']) {\n if($('#autoredirect').val() == '1') {\n $('form#subscribe').attr('onsubmit', 'return true');\n $('form#subscribe').submit();\n return true;\n }\n createCookieNew('EP_C',JSON.stringify(data),60);\n window.location.replace($('.registration-wall form#user-login-form').attr('action'));\n\n } else {\n var obj = data;\n \/\/ var obj = JSON.parse(data);\n \/\/ var obj = false;\n \/\/ if(data.hasOwnProperty('result')) {\n \/\/ obj = JSON.parse(data);\n \/\/ }\n if(obj.result == '3' || obj.result == 3){\n \/\/ wall.wallDown();\n $('#hidden-uid').val(obj.uid);\n $('#hidden-action').val( $('.registration-wall form#user-login-form').attr('action') );\n wall.wallLoginLimit();\n $('.login-spinner-user').hide();\n }\n else{\n var messageError = 'Incorrect username or password.';\n if (data && data.responseJSON && data.responseJSON.data && data.responseJSON.data.error && data.responseJSON.data.error.message) {\n messageError = data.responseJSON.data.error.message;\n }\n\n $('.registration-wall .inline-messages').html('<label class=\"error\">' + messageError + '<\/label>');\n $('.login-spinner-user').hide();\n }\n\n }\n });\n }\n });\n });\n <\/script>\n\n <style>\n .registration-wall button.btn-facebook {\n padding-left: 20px;\n }\n .registration-wall button.btn-facebook:focus {\n outline: 0;\n }\n .registration-wall button[type=submit] {\n color: white;\n background-color: #5bc0de;\n border-color: #46b8da;\n }\n .registration-wall div.input-group {\n width: 100% !important;\n }\n .registration-wall label.error {\n color: #f74a28;\n }\n .registration-wall input.error {\n border-color: #f74a28;\n }\n <\/style>\n <div style='display:none;' class='registration-wall form-login-otp'>\n <div class='exit_button'>\n <div class='close_button_container' style='width:100%; text-align:right;'>\n <button id='btn_close' onclick='wall.wallDown();' type='button' class='btn btn-link btn-lg' style='margin-right: 0px; padding: 0px; height: 22px; width: 22px;'>\n <span class='glyphicon glyphicon-remove' aria-hidden='true'><\/span>\n <\/button>\n <\/div>\n <\/div>\n <p class='validateTips'><\/p>\n \n \n <style>\n .blockUI.blockMsg.blockPage .registration-wall div.message, .validateTips{\n display:none;\n }\n .form-border-popup{\n width:90%;\n margin:0 auto;\n }\n input.agent_username,input.agent_password{\n border: 1px solid #e7e7e7;\n box-shadow: none;\n font-family: \"Poppins\", sans-serif;\n font-weight:300 !important;\n font-size:14px !important;\n padding-left:10px !important;\n\n }\n h3.popup-login-label,h4,p.popup-login-label{\n font-family: \"Poppins\", sans-serif;\n font-weight:300 !important;\n }\n p.pop-up-login-label{\n font-family: \"Poppins\", sans-serif;\n font-weight:300 !important;\n margin-top:5px!important;\n }\n h4{\n margin-bottom: 30px;\n }\n .col1 h3,{\n margin-bottom: 20px;\n }\n .row-popup-agent:after{\n display:flex;\n }\n .column-popup-agent{\n flex:50%;\n }\n .col-centered{\n margin: 3.5em auto;\n }\n a.forgot_password_popup{\n margin-top:20px;\n color:#DB5D0D !important;\n text-decoration:none;\n font-size:12px;\n }\n .login-agent{\n margin: 0 auto;\n cursor: pointer;\n background-color: white;\n color: rgb(39, 174, 96);\n width: 100%;\n border-radius: 5px;\n border: 1px solid rgb(39, 174, 96);\n font-size: 14px;\n font-weight: 400;\n padding: -5px;\n }\n .efv-login-agent{\n cursor: pointer;\n background-color: white;\n color: rgb(39, 174, 96);\n width: fit-content;\n border-radius: 5px;\n border: 1px solid rgb(39, 174, 96);\n font-size: 14px;\n font-weight: 400;\n display: flex;\n padding: 12px 21px;\n align-items: center;\n justify-content: center;\n gap:8px;\n }\n div.button{\n margin: 0 auto;\n }\n\n \/* Green *\/\n .success {\n border-color: #4CAF50;\n color: green;\n }\n\n \/* Orange *\/\n .warning {\n border-color: #ff9800;\n color: orange;\n }\n\n .warning:hover {\n background: #ff9800;\n color: white;\n }\n\n \/* Red *\/\n .danger {\n border-color: #f44336;\n color: red\n }\n\n .danger:hover {\n background: #f44336;\n color: white;\n }\n\n .success:hover {\n background-color: #4CAF50;\n color: white;\n }\n .default:hover {\n background: #e7e7e7;\n }\n\n .form-line{\n border-right:0.01em solid #e7e7e7;\n }\n .efv-register-option-container{\n height: 25em;\n display: flex;\n flex-direction: column;\n justify-content: center;\n }\n @media only screen and (max-width: 992px) {\n .form-line{\n padding-bottom: 20px;\n border-bottom:0.01em solid #e7e7e7;\n border-right:none;\n }\n .efv-register-option-container{\n height: unset;\n display: flex;\n flex-direction: column;\n justify-content: center;\n }\n }\n .default-popup-login-label{\n font-family: \"Poppins\", sans-serif;\n font-weight: 300;\n }\n .efv-login__main-message-container{\n margin-top: 25px;\n margin-bottom:36px;\n }\n\n <\/style>\n <div class=\"row-popup-agent container\" style=\"max-height: 85vh; overflow:auto;\">\n <div class=\"column-popup-agent col1 form-line col-md-6\" style=\"margin-bottom:40px;\">\n <h3 class=\"default-popup-login-label efv-popup-login-label\">User Login<\/h3>\n <div class=\"efv-login__main-message-container form-border-popup\" style=\"display:none\">\n <div><img src=\"https:\/\/sg.tepcdn.com\/public\/usr\/a38h7n\/646f6d-Vector.png\" height=\"20\" width=\"20\" style=\"transform:rotate(180deg)\"\/><\/div>\n <div class=\"efv-login__main-message\">\n <p class=\"efv-login__msg-title\">Login or register to see EFV Result<\/p>\n <p class=\"efv-login__sub-title\">You will be directed to the EFV result page<\/p>\n <\/div>\n <\/div>\n <form action=\"\" method=\"post\" id=\"user-login-form\" accept-charset=\"UTF-8\" novalidate=\"novalidate\">\n <div class=\"form-border-popup\">\n <input id=\"autoredirect\" type=\"hidden\">\n <input type=\"hidden\" name=\"form_build_id\" value=\"form-6W6OQkM2OdRZWUfb0X9ToiwaRQG_Av4mWLlWIj3rcwE\">\n <input type=\"hidden\" name=\"form_id\" value=\"user_login_block\">\n <div class=\"form-item form-item-name form-type-textfield form-group\">\n <div class=\"input-group input-group-lg\" style=\"position: relative;\">\n <i aria-hidden=\"true\" style=\"position: absolute; padding: 15px 10px; pointer-events: none; left: 0px; z-index: 999;\"><\/i>\n <input placeholder=\"Email\" class=\" user_username form-control form-text required\" type=\"text\" id=\"edit-name--2\" name=\"name\" value=\"\" size=\"15\" minlength=\"8\" maxlength=\"60\" aria-required=\"true\">\n <\/div>\n <\/div>\n\n <div class=\"form-item form-item-pass form-type-password form-group\"> <label class=\"control-label\" for=\"edit-pass--2\">Password <span class=\"form-required\" title=\"This field is required.\">*<\/span><\/label>\n <div class=\"input-group input-group-lg\" style=\"position: relative;\">\n <i aria-hidden=\"true\" style=\"position: absolute; padding: 15px 10px; pointer-events: none; left: 0px; z-index: 999;\"><\/i>\n <input placeholder=\"Password\" class=\" user_password form-control form-text required\" type=\"password\" id=\"edit-pass--2\" name=\"pass\" size=\"15\" maxlength=\"128\" aria-required=\"true\">\n <\/div>\n <\/div>\n\n <div class=\"form-actions form-wrapper\" id=\"edit-actions--2\">\n <div class=\"inline-messages\"><\/div>\n <button type=\"submit\" class=\"btn btn-lg btn-default pull-right form-submit\" type=\"submit\" name=\"op\" value=\"Login\" style=\"cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 100%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; margin:0px 0px 10px 0px; font-family: Poppins, sans-serif; font-weight:500 !important;\">Login<\/button>\n <div style=\"position: relative;\">\n <div class=\"login-spinner-user\" style=\"display: none;position:absolute; height: 40px; border-radius: 100px; width: 100%; background-color: gray; padding: 10px; opacity: 0.4;\">\n <i class=\"fa fa-spin ner fa-spin\" style=\"font-size: 2em;\" aria-hidden=\"true\"><\/i>\n <\/div>\n <\/div>\n <a href=\"\/user\/password\" class=\"forgot_password_popup efv-forgot_password_popup\">Forgot Password?<\/a>\n <hr class=\"login-separator\" \/>\n <p class=\"pop-up-login-label efv-pop-up-login-label\">Or Login with Mobile OTP<\/p>\n <div class=\"button login-agent login-agent-default\" onclick=\"wall.wallOtpRequest()\">\n <div style=\"display: inline-block; border-right: 1px solid rgb(39, 174, 96); padding: 3px 7px 3px 8px;\"><i class=\"fa fa-mobile fa-3x\" aria-hidden=\"true\"><\/i>&nbsp;&nbsp;<\/div>\n <div style=\"padding: 0px 19px; display: inline-block; top: -10px; position: relative;\">Login with Mobile OTP<\/div>\n\n <\/div>\n <div class=\"button efv-login-agent\" style=\"display:none\" onclick=\"wall.wallOtpRequest()\">\n <div class=\"otp-phone-icon\"><img src=\"https:\/\/sg.tepcdn.com\/public\/usr\/a38h7n\/215f02-mobile-3.png\" width=\"16\" height=\"16\"\/><\/div>\n <div class=\"otp-login-text\">Log in via Mobile OTP<\/div>\n <\/div>\n <!-- <div class=\"row fb-button\" >\n <a class=\"facebook-login-link\" href=\"https:\/\/www.facebook.com\/v2.4\/dialog\/oauth?client_id=883195735069026&amp;state=acfeefaa70ff63f3b1575c5995a77ac1&amp;response_type=code&amp;sdk=php-sdk-5.0.0&amp;redirect_uri=https%3A%2F%2Fwww.edgeprop.sg%2Ffbconnect%2Fcallback%3Fredirect%3Dnew-launches&amp;scope=email%2Cpublic_profile\">\n <img class=\"facebook-button\" src=\"https:\/\/www.edgeprop.sg\/sites\/all\/themes\/property_theme\/img\/login_with_facebook.png\">\n <\/a>\n <\/div> -->\n <\/div>\n <\/div>\n <\/form>\n <\/div>\n <div class=\"column-popup-agent col-md-6 col-centered\">\n <div class=\"default-register-option-container\">\n <h3 class=\"popup-login-label\">New User?<\/h3><h4>Sign up now, fast and easy<\/h4>\n <div class=\"button\" onclick=\"wall.wallUpAgentRegister()\" style=\"cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(255, 81, 34); width: 80%; border-radius: 100px; border: 1px solid rgb(255, 81, 34); font-size: 14px; font-weight: 500; padding: 8px 30px;\"><center><span><i class=\"fa fa-address-card-o\" aria-hidden=\"true\"><\/i>&nbsp;&nbsp;<\/span>Register as Agent<\/center><\/div>\n <br>\n <div class=\"button\" onclick=\"wall.wallUpRegister()\" style=\"cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(255, 81, 34); width: 80%; border-radius: 100px; border: 1px solid rgb(255, 81, 34); font-size: 14px; font-weight: 500; padding: 8px 30px;\"><center><span><i class=\"fa fa-user-circle-o\" aria-hidden=\"true\" data-jsx=\"1416874467\"><\/i>&nbsp;&nbsp;<\/span>Register as User<\/center><\/div>\n <\/div>\n <div class=\"efv-register-option-container\">\n <h3 class=\"default-popup-login-label efv-register-option-title\">New User?<\/h3>\n <p class=\"default-popup-login-label efv-popup-login-label-desc\">Sign up now, fast and easy<\/p>\n <div class=\"button\" onclick=\"wall.wallUpAgentRegister()\" style=\"font-weight: 700; cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(255, 81, 34); width: 80%; border-radius: 100px; border: 1px solid rgb(255, 81, 34); font-size: 14px; padding: 8px 30px;\"><center>Register as Agent<\/center><\/div>\n <br>\n <div class=\"button\" onclick=\"wall.wallUpRegister()\" style=\"font-weight: 700; cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(255, 81, 34); width: 80%; border-radius: 100px; border: 1px solid rgb(255, 81, 34); font-size: 14px; padding: 8px 30px;\"><center>Register as User<\/center><\/div>\n <\/div>\n <\/div>\n <\/div>\n <script>\n \/\/$(\".blockUI.blockMsg.blockPage\").css(\"width\",\"800px\");\n $(document).ready(function() {\n if(document.location.pathname==\"\/analytic\/edgefairvalue\"){\n $(\".efv-login__main-message-container\").show()\n $(\".efv-forgot_password_popup\").text(\"Forget password\")\n $(\".efv-forgot_password_popup\").css(\"font-size\",\"14px\")\n $(\".efv-pop-up-login-label\").text(\"OR\")\n $(\".login-separator\").hide()\n $(\".efv-login-agent\").show()\n $(\".login-agent-default\").hide()\n $(\".efv-popup-login-label\").css({\"color\":\"#005C98\", \"font-weight\":\"600\", \"font-size\":\"20px\"})\n $(\".efv-register-option-title\").css({\"font-weight\":\"600\", \"font-size\":\"20px\", \"margin-bottom\":\"0px\"})\n $(\".efv-popup-login-label-desc\").css({\"font-weight\":\"500\", \"font-size\":\"14px\", \"margin-bottom\":\"24px\"})\n $(\".default-register-option-container\").hide()\n $(\".efv-register-option-container\").show()\n }else{\n $(\".efv-login__main-message-container\").hide()\n $(\".default-register-option-container\").show()\n $(\".efv-register-option-container\").hide()\n }\n })\n <\/script>\n\n <\/div>"; $('body').append(html); } }); </script> <script> $(document).ready(function() { if (!$('.registration-agent-wall').length) { // Ensure this is only injected once var html = "\n <script>\n function createCookieNew(name, value, days, callback = false) {\n var expires = '';\n if (days) {\n var date = new Date();\n date.setTime(date.getTime() + (days*24*60*60*1000));\n expires = '; expires=' + date.toUTCString();\n }\n \/\/ document.cookie = name + '=' + value + expires + '; path=\/';\n document.cookie = name + '=' + value + expires + '; path=\/' + '; domain=.edgeprop.sg';\n if(callback){\n callback();\n }\n }\n function removeCookieNew(name, callback = false) {\n document.cookie = name +'=; Path=\/; Expires=Thu, 01 Jan 1970 00:00:01 GMT; domain=.edgeprop.sg';\n if (callback) {\n callback();\n }\n }\n $(document).ready(function() {\n $('.registration-agent-wall form#user-login-form button[type=submit]').click(function() {\n window._tepq.push('wall', 'Agent Login');\n sendGaEvent('Wall', 'Agent Login');\n });\n $('.registration-agent-wall form#user-login-form').validate({\n submitHandler: function(form) {\n $('.login-spinner-user').show();\n $('.registration-agent-wall .inline-messages').html('<label><\/label>');\n $.ajax({\n type: 'POST',\n url: '\/index.php?&option=com_analytica&task=login',\n dataType: 'json',\n data: { username: $('.agent_username').val(), password: $('.agent_password').val() }\n }).always(function( data ) {\n\n if (data['sessid']) {\n if(data.hasOwnProperty('sessid')){\n \/\/ Set Cookie for Nextjs\n \/\/ setCookie('EP_C', JSON.stringify(data), 60);\n createCookieNew('EP_C',JSON.stringify(data),60);\n\n wall.wallLoginSuccess();\n var actionurl = $('.registration-agent-wall form#user-login-form').attr('action');\n \/\/ $.ajax({\n \/\/ type: 'GET',\n \/\/ url: '\/tep-solr\/api\/getPropPointsStatus.php',\n \/\/ async: false,\n \/\/ success: function(data2){\n \/\/ if(data2 == '1'){\n \/\/ window.location.replace('\/profile');\n \/\/ }\n \/\/ },\n \/\/ });\n \/\/ $.ajax({\n \/\/ type: 'GET',\n \/\/ async: false,\n \/\/ url: '\/tep-solr\/api\/getAllowedListAgentsPropPoints.php',\n \/\/ success: function(data2){\n \/\/ var allowedList = JSON.parse(data2);\n \/\/ if(allowedList.indexOf(data.contact) > -1){\n \/\/ window.location.replace('\/profile');\n \/\/ }\n \/\/ },\n \/\/ });\n \/\/ if(!getCookie('next')){\n \/\/ window.location.replace('\/profile');\n \/\/ }\n \/\/ else if( getCookie('next') === 'subscribe' ) {\n \/\/ window.location.replace('\/pricing-plan');\n \/\/ }\n if( getCookie('next') === 'subscribe' ) {\n window.location.replace('\/pricing-plan');\n } else {\n window.location.replace(getCookie('next'));\n }\n }\n } else {\n var obj = data\n \/\/ var obj = JSON.parse(data);\n \/\/ var obj = false;\n \/\/ if(data.hasOwnProperty('result')) {\n \/\/ obj = JSON.parse(data);\n \/\/ }\n if(obj.result == '3' || obj.result == 3){\n \/\/ wall.wallDown();\n $('#hidden-uid').val(obj.uid);\n $('#hidden-action').val( $('.registration-wall form#user-login-form').attr('action') );\n wall.wallLoginLimit();\n $('.login-spinner-user').hide();\n }\n else{\n var messageError = 'Incorrect username or password.';\n if (data && data.responseJSON && data.responseJSON.data && data.responseJSON.data.error && data.responseJSON.data.error.message) {\n messageError = data.responseJSON.data.error.message;\n }\n\n $('.registration-agent-wall .inline-messages').html('<label class=\"error\">' + messageError + '<\/label>');\n $('.login-spinner-user').hide();\n }\n\n }\n });\n }\n });\n });\n <\/script>\n\n <style>\n .registration-agent-wall button.btn-facebook {\n padding-left: 20px;\n }\n .registration-agent-wall button.btn-facebook:focus {\n outline: 0;\n }\n .registration-agent-wall button[type=submit] {\n color: white;\n background-color: #5bc0de;\n border-color: #46b8da;\n }\n .registration-agent-wall div.input-group {\n width: 100% !important;\n }\n .registration-agent-wall label.error {\n color: #f74a28;\n }\n .registration-agent-wall input.error {\n border-color: #f74a28;\n }\n <\/style>\n <div style='display:none;' class='registration-agent-wall form-login-agent-otp'>\n <div class='exit_button'>\n <div class='message' style='text-align: center; margin-bottom: 60px !important;'><\/div>\n <div class='close_button_container' style='width:100%; text-align:right;'>\n <button id='btn_close' onclick='wall.wallDown();' type='button' class='btn btn-link btn-lg' style='margin-right: 0px; padding: 0px; height: 22px; width: 22px;'>\n <span class='glyphicon glyphicon-remove' aria-hidden='true'><\/span>\n <\/button>\n <\/div>\n \n <\/div>\n <div class='message' style='text-align: center; margin-bottom: 60px !important;'><\/div>\n <p class='validateTips'><\/p>\n \n <style>\n .blockUI.blockMsg.blockPage .registration-agent-wall div.message, .validateTips{\n display:none;\n }\n .form-border-popup{\n width:90%;\n margin:0 auto;\n }\n input.agent_username,input.agent_password{\n border: 1px solid #e7e7e7;\n box-shadow: none;\n font-family: \"Poppins\", sans-serif;\n font-weight:300 !important;\n font-size:14px !important;\n padding-left:10px !important;\n\n }\n h3.popup-login-label,h4,p.popup-login-label{\n font-family: \"Poppins\", sans-serif;\n font-weight:300 !important;\n }\n p.pop-up-login-label{\n font-family: \"Poppins\", sans-serif;\n font-weight:300 !important;\n margin-top:5px!important;\n }\n h4{\n margin-bottom: 30px;\n }\n .col1 h3,{\n margin-bottom: 20px;\n }\n .row-popup-agent:after{\n display:flex;\n }\n .column-popup-agent{\n flex:50%;\n }\n .col-centered{\n margin: 3.5em auto;\n }\n a.forgot_password_popup{\n margin-top:20px;\n color:#DB5D0D !important;\n text-decoration:none;\n font-size:12px;\n }\n .login-agent{\n margin: 0 auto;\n cursor: pointer;\n background-color: white;\n color: rgb(39, 174, 96);\n width: 100%;\n border-radius: 5px;\n border: 1px solid rgb(39, 174, 96);\n font-size: 14px;\n font-weight: 400;\n padding: -5px;\n }\n div.button{\n margin: 0 auto;\n }\n\n \/* Green *\/\n .success {\n border-color: #4CAF50;\n color: green;\n }\n\n \/* Orange *\/\n .warning {\n border-color: #ff9800;\n color: orange;\n }\n\n .warning:hover {\n background: #ff9800;\n color: white;\n }\n\n \/* Red *\/\n .danger {\n border-color: #f44336;\n color: red\n }\n\n .danger:hover {\n background: #f44336;\n color: white;\n }\n\n .success:hover {\n background-color: #4CAF50;\n color: white;\n }\n .default:hover {\n background: #e7e7e7;\n }\n\n .form-line{\n border-right:0.01em solid #e7e7e7;\n }\n @media screen and (max-width: 992px) {\n .form-line{\n border-bottom:0.01em solid #e7e7e7;\n border-right:none;\n }\n }\n .default-popup-login-label{\n font-family: \"Poppins\", sans-serif;\n font-weight: 300;\n }\n\n .efv-login__main-message-container{\n margin-top: 25px;\n margin-bottom:36px;\n }\n \n\n <\/style>\n <div class=\"row-popup-agent container\" style=\"max-height: 85vh; overflow:auto;\">\n <div class=\"column-popup-agent col1 form-line col-md-6\" style=\"margin-bottom:40px;\">\n <h3 class=\"default-popup-login-label efv-popup-login-label\">Agent Login<\/h3>\n <div class=\"efv-login__main-message-container form-border-popup\" style=\"display:none\">\n <div><img src=\"https:\/\/sg.tepcdn.com\/public\/usr\/a38h7n\/646f6d-Vector.png\" height=\"20\" width=\"20\" style=\"transform:rotate(180deg)\"\/><\/div>\n <div class=\"efv-login__main-message\">\n <p class=\"efv-login__msg-title\">Login or register to see EFV Result<\/p>\n <p class=\"efv-login__sub-title\">You will be directed to the EFV result page<\/p>\n <\/div>\n <\/div>\n <form action=\"\/profile\" method=\"post\" id=\"user-login-form\" accept-charset=\"UTF-8\" novalidate=\"novalidate\">\n <div class=\"form-border-popup\">\n <input id=\"agent_autoredirect\" type=\"hidden\">\n <input type=\"hidden\" name=\"form_build_id\" value=\"form-6W6OQkM2OdRZWUfb0X9ToiwaRQG_Av4mWLlWIj3rcwE\">\n <input type=\"hidden\" name=\"form_id\" value=\"user_login_block\">\n <div class=\"form-item form-item-name form-type-textfield form-group\">\n <div class=\"input-group input-group-lg\" style=\"position: relative;\">\n <i aria-hidden=\"true\" style=\"position: absolute; padding: 15px 10px; pointer-events: none; left: 0px; z-index: 999;\"><\/i>\n <input placeholder=\"Mobile\" class=\" agent_username form-control form-text required\" type=\"text\" id=\"edit-name--2\" name=\"name\" value=\"\" size=\"15\" minlength=\"8\" maxlength=\"60\" aria-required=\"true\">\n <\/div>\n <\/div>\n\n <div class=\"form-item form-item-pass form-type-password form-group\"> <label class=\"control-label\" for=\"edit-pass--2\">Password <span class=\"form-required\" title=\"This field is required.\">*<\/span><\/label>\n <div class=\"input-group input-group-lg\" style=\"position: relative;\">\n <i aria-hidden=\"true\" style=\"position: absolute; padding: 15px 10px; pointer-events: none; left: 0px; z-index: 999;\"><\/i>\n <input placeholder=\"Password\" class=\" agent_password form-control form-text required\" type=\"password\" id=\"edit-pass--2\" name=\"pass\" size=\"15\" maxlength=\"128\" aria-required=\"true\">\n <\/div>\n <\/div>\n\n <div class=\"form-actions form-wrapper form-group\" id=\"edit-actions--2\">\n <div class=\"inline-messages\"><\/div>\n <button type=\"submit\" class=\"btn btn-lg btn-default form-submit\" name=\"op\" value=\"Login\" style=\"cursor: pointer; background-color: rgb(255, 81, 34); color: white; width: 100%; height:40px; border-radius: 100px; border: 1px solid transparent; font-size: 14px; font-weight: 300; padding: 8px 30px; margin-bottom:10px; font-family: Poppins, sans-serif; font-weight:500 !important;\">Login<\/button>\n <div style=\"position: relative;\">\n <div class=\"login-spinner-user\" style=\" display:none; margin: -50px 0px 10px 0px; height: 40px; border-radius: 100px; width: 100%; background-color: gray; padding: 10px; opacity: 0.4;\">\n <i class=\"fa fa-spinner fa-spin\" style=\"font-size: 2em;\" aria-hidden=\"true\"><\/i>\n <\/div>\n <\/div>\n <a href=\"\/agent\/password\"class=\"forgot_password_popup efv-forgot_password_popup\">Forgot Password?<\/a>\n <hr class=\"login-separator\"\/>\n <p class=\"pop-up-login-label efv-pop-up-login-label\">Or Login with Mobile OTP<\/p>\n <div class=\"button login-agent login-agent-default\" onclick=\"setCookieHeader()\">\n <div style=\"display: inline-block; border-right: 1px solid rgb(39, 174, 96); padding: 3px 7px 3px 8px;\"><i class=\"fa fa-mobile fa-3x\" aria-hidden=\"true\"><\/i>&nbsp;&nbsp;<\/div>\n <div style=\"padding: 0px 19px; display: inline-block; top: -10px; position: relative;\">Login with Mobile OTP<\/div>\n \n <\/div>\n <div class=\"button login-agent efv-login-agent\" style=\"display:none\" onclick=\"setCookieHeader()\">\n <div class=\"otp-phone-icon\"><img src=\"https:\/\/sg.tepcdn.com\/public\/usr\/a38h7n\/215f02-mobile-3.png\" width=\"16\" height=\"16\"\/><\/div>\n <div class=\"otp-login-text\">Log in via Mobile OTP<\/div>\n\n <\/div>\n <\/div>\n <\/div>\n <\/form>\n <\/div>\n <div class=\"column-popup-agent col-md-6 col-centered agent-login-right-column\">\n <div class=\"default-register-option-container\">\n <h3 class=\"popup-login-label\">New User?<\/h3><h4>Sign up now, fast and easy<\/h4>\n <div class=\"button\" onclick=\"wall.wallUpAgentRegister()\" style=\"cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(255, 81, 34); width: 80%; border-radius: 100px; border: 1px solid rgb(255, 81, 34); font-size: 14px; font-weight: 500; padding: 8px 30px;\"><center><span><i class=\"fa fa-address-card-o\" aria-hidden=\"true\"><\/i>&nbsp;&nbsp;<\/span>Register as Agent<\/center><\/div>\n <br>\n <div class=\"button\" onclick=\"wall.wallUpRegister()\" style=\"cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(255, 81, 34); width: 80%; border-radius: 100px; border: 1px solid rgb(255, 81, 34); font-size: 14px; font-weight: 500; padding: 8px 30px;\"><center><span><i class=\"fa fa-user-circle-o\" aria-hidden=\"true\" data-jsx=\"1416874467\"><\/i>&nbsp;&nbsp;<\/span>Register as User<\/center><\/div>\n <\/div>\n <div class=\"efv-register-option-container\">\n <h3 class=\"default-popup-login-label efv-register-option-title\">New User?<\/h3><p class=\"default-popup-login-label efv-popup-login-label-desc\">Sign up now, fast and easy<\/p>\n <div class=\"button\" onclick=\"wall.wallUpAgentRegister()\" style=\"font-weight: 700; cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(255, 81, 34); width: 80%; border-radius: 100px; border: 1px solid rgb(255, 81, 34); font-size: 14px; padding: 8px 30px;\"><center>Register as Agent<\/center><\/div>\n <br>\n <div class=\"button\" onclick=\"wall.wallUpRegister()\" style=\"font-weight: 700; cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(255, 81, 34); width: 80%; border-radius: 100px; border: 1px solid rgb(255, 81, 34); font-size: 14px; padding: 8px 30px;\"><center>Register as User<\/center><\/div>\n <\/div>\n <\/div>\n <\/div>\n <script>\n function setCookieHeader(){\n wall.wallOtpRequest();\n \/\/ setCookie(\"next\", \"\/profile\", 60);\n }\n $(document).ready(function() {\n $(document).ready(function() {\n if(document.location.pathname==\"\/analytic\/edgefairvalue\"){\n $(\".efv-login__main-message-container\").show()\n $(\".efv-forgot_password_popup\").text(\"Forget password\")\n $(\".efv-forgot_password_popup\").css(\"font-size\",\"14px\")\n $(\".efv-pop-up-login-label\").text(\"OR\")\n $(\".login-separator\").hide()\n $(\".efv-login-agent\").show()\n $(\".login-agent-default\").hide()\n $(\".efv-popup-login-label\").css({\"color\":\"#005C98\", \"font-weight\":\"600\", \"font-size\":\"20px\"})\n $(\".efv-register-option-title\").css({\"font-weight\":\"600\", \"font-size\":\"20px\", \"margin-bottom\":\"0px\"})\n $(\".efv-popup-login-label-desc\").css({\"font-weight\":\"500\", \"font-size\":\"14px\", \"margin-bottom\":\"24px\"})\n $(\".default-register-option-container\").hide()\n $(\".efv-register-option-container\").show()\n }else{\n $(\".efv-login__main-message-container\").hide()\n $(\".default-register-option-container\").show()\n $(\".efv-register-option-container\").hide()\n }\n })\n })\n <\/script>\n\n <\/div>"; $('body').append(html); } }); </script> <script> $(document).ready(function() { var efvPopupParams = null; if(document.location.pathname=="/analytic/edgefairvalue"){ // DVT-3560 please refer to view/valuation LoginPopupConfig efvPopupParams = {maxWidth:'904px'} } $('#livestreamBack').click(function(){ $('#cast').hide(); $('#bs-example-navbar-collapse-1').addClass("in"); }) $('a.user_login_popup').click(function() { $("#popup_msg").hide(); $('#bs-example-navbar-collapse-1').removeClass('in'); // var x = document.getElementById("hamburger-mobile"); var z = document.getElementById("hamburger-mobile").children; var collapse = z[0].style.display; var expand = z[1].style.display; var collapseEl = document.getElementById("hamburger-collapsed"); var expandEl = document.getElementById("hamburger-expanded"); x.style.setProperty('padding','14.5px 10px', 'important'); x.style.setProperty('font-size','unset'); expandEl.style.setProperty('display','none','important'); collapseEl.style.setProperty('display','block','important'); x.style.setProperty('color','unset') setCookie('next', '/', 1); // wall.wallUp(); wall.wallUpOtp(efvPopupParams); var url_fb = ""; url_fb = $('div.registration-wall').find('a').attr('href'); if(url_fb){ var fbstate = ""; var url = url_fb.replace("?", "&"); url = url.split("&"); url.map(q => { if (q.substring(0, 6) == "state=") { fbstate = q.substring(6, q.length); } }); setCookie("FBRLH_state", fbstate, 30); } }); $('a.agent_login_popup').click(function() { var x = document.getElementById("hamburger-mobile"); var z = document.getElementById("hamburger-mobile").children; var collapse = z[0].style.display; var expand = z[1].style.display; var collapseEl = document.getElementById("hamburger-collapsed"); var expandEl = document.getElementById("hamburger-expanded"); x.style.setProperty('padding','14.5px 10px', 'important'); x.style.setProperty('font-size','unset'); expandEl.style.setProperty('display','none','important'); collapseEl.style.setProperty('display','block','important'); x.style.setProperty('color','unset') $('#bs-example-navbar-collapse-1').removeClass('in'); // setCookie('next', '/profile', 1); wall.wallUpAgentOtp(efvPopupParams); }); $('a.agent_register_popup').click(function(event) { $('#bs-example-navbar-collapse-1').removeClass('in'); var x = document.getElementById("hamburger-mobile"); var z = document.getElementById("hamburger-mobile").children; var collapse = z[0].style.display; var expand = z[1].style.display; var collapseEl = document.getElementById("hamburger-collapsed"); var expandEl = document.getElementById("hamburger-expanded"); x.style.setProperty('padding','14.5px 10px', 'important'); x.style.setProperty('font-size','unset'); expandEl.style.setProperty('display','none','important'); collapseEl.style.setProperty('display','block','important'); x.style.setProperty('color','unset') setCookie('next', '/profile', 1); wall.wallUpAgentRegister(); }); $('a.user_register_popup').click(function(event) { $('#bs-example-navbar-collapse-1').removeClass('in'); var x = document.getElementById("hamburger-mobile"); var z = document.getElementById("hamburger-mobile").children; var collapse = z[0].style.display; var expand = z[1].style.display; var collapseEl = document.getElementById("hamburger-collapsed"); var expandEl = document.getElementById("hamburger-expanded"); x.style.setProperty('padding','14.5px 10px', 'important'); x.style.setProperty('font-size','unset'); expandEl.style.setProperty('display','none','important'); collapseEl.style.setProperty('display','block','important'); x.style.setProperty('color','unset') setCookie('next', '/', 1); wall.wallUpRegister(); }); $('a.forgot_password').click(function(event) { $('#bs-example-navbar-collapse-1').removeClass('in'); wall.wallUpRequestPassword(); }); $('a.agent_otp_request').click(function(e){ $('#bs-example-navbar-collapse-1').removeClass('in'); wall.wallOtpRequest(); }); $('a.agent_otp_verification').click(function(e){ $('#bs-example-navbar-collapse-1').removeClass('in'); wall.wallOtpVerification(); }); $('a.agent_otp_verificationlogin').click(function(e){ $('#bs-example-navbar-collapse-1').removeClass('in'); wall.wallOtpVerificationLogin(); }); $('a.agent_otp_success').click(function(e){ $('#bs-example-navbar-collapse-1').removeClass('in'); wall.wallOtpSuccess(); }); $('a.agent_otp_failed').click(function(e){ $('#bs-example-navbar-collapse-1').removeClass('in'); wall.wallOtpFailed(); }); $('a.agent_login_success').click(function(e){ $('#bs-example-navbar-collapse-1').removeClass('in'); wall.wallLoginSuccess(); }); $('a.agent_signup_success').click(function(e){ $('#bs-example-navbar-collapse-1').removeClass('in'); wall.wallSignupSuccess(); }); //ralp - show the user login popup page if user is not logged in (for fsbo add listing) var _url = window.location.pathname; if(_url.indexOf('/user/add/listing') === 0 && $("#user-login").length === 1){ $('#user-login-form').attr('action', _url); $('a.user_login_popup').trigger('click'); } if(_url.indexOf('/user/listing') === 0 && $("#user-login").length === 1){ $('#user-login-form').attr('action', _url); $('a.user_login_popup').trigger('click'); } }); </script> <script> var arr_arrow_state = [0, 0, 0, 0, 0, 0, 0]; function closeArrow(){ try{ $("#arrow-non-login").html('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/>'); $("#arrow-non-register").html('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/>'); } catch(err){} try{ $("#arrow-login-account").html('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/>'); }catch(err){} try{ $("#arrow-buy").html('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/>'); $("#arrow-rent").html('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/>'); $("#arrow-new-launches").html('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/>'); $("#arrow-agent").html('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/>'); $("#arrow-languages").html('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/>'); $(".dropdown-submenu").addClass("hide"); } catch(err){} try{ $(".user_login_popup").addClass("hide"); $(".agent_login_popup").addClass("hide"); $(".user_register_popup").addClass("hide"); $(".agent_register_popup").addClass("hide"); } catch(err){} try{ $(".sub-login-account").addClass("hide"); }catch (err){} } function sideMobileHeaderClick(item){ closeArrow(); var setArrow = false; switch(item){ case "arrow-non-login": setArrow = (arr_arrow_state[0]) ? false : true; arr_arrow_state[0] = setArrow; if(setArrow){ $(".user_login_popup").removeClass("hide"); $(".agent_login_popup").removeClass("hide"); } break; case "arrow-non-register": setArrow = (arr_arrow_state[1]) ? false : true; arr_arrow_state[1] = setArrow; if(setArrow){ $(".user_register_popup").removeClass("hide"); $(".agent_register_popup").removeClass("hide"); } break; case "arrow-buy": setArrow = (arr_arrow_state[2]) ? false : true; arr_arrow_state[2] = setArrow; if(setArrow){ $(".sub-buy").removeClass("hide"); } break; case "arrow-rent": setArrow = (arr_arrow_state[3]) ? false : true; arr_arrow_state[3] = setArrow; if(setArrow){ $(".sub-rent").removeClass("hide"); } break; case "arrow-new-launches": setArrow = (arr_arrow_state[4]) ? false : true; arr_arrow_state[4] = setArrow; if(setArrow){ $(".sub-new-launches").removeClass("hide"); } break; case "arrow-agent": setArrow = (arr_arrow_state[5]) ? false : true; arr_arrow_state[5] = setArrow; if(setArrow){ $(".sub-agent").removeClass("hide"); } break; case "arrow-languages": setArrow = (arr_arrow_state[6]) ? false : true; arr_arrow_state[6] = setArrow; if(setArrow){ $(".sub-language").removeClass("hide"); } break; case "arrow-login-account": setArrow = (arr_arrow_state[0]) ? false : true; arr_arrow_state[0] = setArrow; if(setArrow){ $(".sub-login-account").removeClass("hide"); } break; } if(setArrow == 1){ $("#" + item).html('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/7cf4bb-dropdown.png"/>'); } else { $("#" + item).html('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/7e10e1-dropdown.png"/>'); } } /** * Function Description (get project tags) * * @request NLAZ-597 * * @param String requestText name of project name * * @return Array ( * @param String project_name * @param String project_alias * @param String source * @param integer asset_id * ) */ function searchProject(requestText) { $("#tag_suggestions").hide(); //hide auto suggestion dropdown by default if(requestText) { let getApiUrl = "/proxy?url=https://" + encodeURIComponent(window.location.hostname + "/new-launches/searchProject?name=") + requestText; $.ajax({ url: getApiUrl, type: 'get', async: false, credential: 'included', contentType: false, processData: false, success: function(response){ var datalistHtml = ``; var resp = JSON.parse(response);; if(resp.data && resp.data.length && resp.data.length > 0) { resp.data.map((item, idx) => { let asset_id = item && item["asset_id"] ? item["asset_id"].toString() : ""; let project_name = item && item["project_name"] ? item["project_name"] : ""; let source = item && item["source"] ? item["source"].toString() : ""; if(asset_id != "" && project_name != "") { let onclickText=`handleArticleItemOnClick('${asset_id}','${escape(project_name)}','${source}');`; datalistHtml = datalistHtml + `<div class="tag-suggestion-item tag-project" data-id="${asset_id}" data-name="${escape(project_name)}" data-source="${source}" onMouseDown="${onclickText}">${project_name}</div>`; } }); } $("#tag_suggestions").show(); $("#tag_suggestions").html(datalistHtml); }, }); } } /** * Function Description (get tag others) * * @request NLAZ-597 * * @param String requestText name of tag name * * @return Array ( * @param integer id * @param String tag_name * @param integer status * ) */ function searchTags(requestText) { $("#tag_other_suggestions").hide(); //hide auto suggestion dropdown by default if(requestText) { let getApiUrl = "/proxy?url=https://" + encodeURIComponent(window.location.hostname + "/new-launches/searchTags?name=") + requestText; $.ajax({ url: getApiUrl, type: 'get', async: false, credential: 'included', contentType: false, processData: false, success: function(response){ var datalistHtml = ``; var resp = JSON.parse(response);; if(resp.data && resp.data.length && resp.data.length > 0) { resp.data.map((item, idx) => { let id = item && item["id"] ? item["id"].toString() : ""; let tag_name = item && item["tag_name"] ? item["tag_name"] : ""; if(id != "" && tag_name != "") { let onclickText=`handleDropdownTagOtherOnClick('${id}','${escape(tag_name)}');`; datalistHtml = datalistHtml + `<div class="tag-suggestion-item tag-others" data-id="${id}" data-name="${escape(tag_name)}" onMouseDown="${onclickText}">${tag_name}</div>`; } }); } $("#tag_other_suggestions").show(); $("#tag_other_suggestions").html(datalistHtml); }, }); } } /** * Function Description (checkLimitTag) * * limit box selection for Tag Project name and Tag Others * * @request NLAZ-597 * * @param no param * * @return Array ( * @param boolean * ) */ function checkLimitTag(e, isSubmit = false){ var tag_other = $('#edit-field-tags-und').val(); var length_tag_other = $('.tag-other-selected-item-wrapper').length; var length_tag_project_name = $('.tag-project-selected-item-wrapper').length; var count = length_tag_project_name + length_tag_other; let max = 6; if(isSubmit){ max = 7; } if(count <= max){ //start from 0 return true; } alert('You have reached the limit, maximum number of tags is 7'); e.preventDefault(); return false; } /** * Function Description (checkTagEmpty) * * validation box selection for Tag Project name and Tag Others not empty * * @request NLAZ-597 * * @param event * * @return Array ( * @param boolean * ) */ function checkTagEmpty(e){ var tag_other = $('#edit-field-tags-und').val(); var length_tag_other = $('.tag-other-selected-item-wrapper').length; var length_tag_project_name = $('.tag-project-selected-item-wrapper').length; var count = length_tag_project_name + length_tag_other; if(count > 0){ //start from 0 return true; } alert('Please enter at least 1 tag in Tag (Project Names) or Tag (Others)'); e.preventDefault(); return false; } /** * Function Description (for handle when click item in Tag Project Name dropdown) * * @request NLAZ-597 * * @param String request asset_id * String request project_name * String request source * * @return * 1. div element box selection with close button inside tag div#tagSelectedViewWrapper * 2. set value to hidden input #edit-field-tag-project-name-hidden-und-0-value */ function handleArticleItemOnClick(asset_id, project_name, source) { $("#tag_suggestions").hide(); // hide the article suggestion dropdown field after user choose one of the options $("#edit-field-tags-proj-name-und-0-value").val(""); //clear the input value project_name = unescape(project_name); let oldValue = []; let getOldValue = $('#edit-field-tag-project-name-hidden-und-0-value').val(); if(getOldValue.length > 0){ oldValue = JSON.parse($('#edit-field-tag-project-name-hidden-und-0-value').val()); } let newValue = { 'asset_id': ((asset_id) ? asset_id : null), 'project_name': project_name, 'source': ((source) ? source : null) }; const result = Array.isArray(oldValue); if(result){ oldValue.push(newValue); }else{ oldValue = [oldValue]; oldValue.push(newValue); } $('#edit-field-tag-project-name-hidden-und-0-value').val(JSON.stringify(oldValue)); var setTag = ''; setTag += '<div id="tag_'+project_name.replace(/[^a-zA-Z0-9]/g, '')+'" class="tag-project-selected-item-wrapper">'; setTag += '<div class="tag-selected-item">'+project_name+' </div>'; setTag += '<div class="tag-selected-delete" onclick="deleteTagProjectItem(tag_'+project_name.replace(/[^a-zA-Z0-9]/g, '')+')"> ×</div>'; setTag += '</div>'; //container selected box tag project name $("#tagSelectedViewWrapper").prepend(setTag); $("#tag_suggestions").hide(); // hide the article suggestion dropdown field after user choose one of the options $("#edit-field-tags-proj-name-und-0-value").val(""); //clear the input value } /** * Function Description (for handle when click item in Tag Others dropdown) * * @request NLAZ-597 * * @param String requestId id of name tag * String requestText name of tag * * @return * 1. div element box selection with close button inside tag div#tagOtherSelectedViewWrapper * 2. set value to hidden input #edit-field-tag-others-hidden-und-0-value */ function handleDropdownTagOtherOnClick(id, tag_name) { $("#tag_other_suggestions").hide(); // hide the article suggestion dropdown field after user choose one of the options $("#tag_other").val(""); //clear the input value tag_name = unescape(tag_name); let oldValue = []; let getOldValue = $('#edit-field-tag-others-hidden-und-0-value').val(); if(getOldValue.length > 0){ oldValue = JSON.parse($('#edit-field-tag-others-hidden-und-0-value').val()); } let newValue = { 'id': ((id) ? id : null), 'tag_name': tag_name }; const result = Array.isArray(oldValue); if(result){ oldValue.push(newValue); }else{ oldValue = [oldValue]; oldValue.push(newValue); } $('#edit-field-tag-others-hidden-und-0-value').val(JSON.stringify(oldValue)); var setTag = ''; setTag += '<div id="tag_'+tag_name.replace(/[^a-zA-Z0-9]/g, '')+'" class="tag-other-selected-item-wrapper">'; setTag += '<div class="tag-selected-item">'+tag_name+' </div>'; setTag += '<div class="tag-selected-delete" onclick="deleteTagOtherItem(tag_'+tag_name.replace(/[^a-zA-Z0-9]/g, '')+')"> ×</div>'; setTag += '</div>'; //container selected box tag project name $("#tagOtherSelectedViewWrapper").append(setTag); $("#tag_other_suggestions").hide(); // hide the article suggestion dropdown field after user choose one of the options $("#tag_other").val(""); //clear the input value //reset index key dropdown selectedIndexTagProject = -1; selectedIndexTagOther = -1; console.log(' selectedIndexTagOther ini :'+selectedIndexTagOther); console.log('selectedIndexTagProject ini :'+selectedIndexTagProject); } /** * Function Description (delete item in selected box for Tag Project Name) * * @request NLAZ-597 * * @param String requestText name of project * * @return * 1. remove div element box selection inside tag div#tagSelectedViewWrapper * 2. remove value hidden input #edit-field-tag-project-name-hidden-und-0-value */ function deleteTagProjectItem(tag_name) { $('#tagSelectedViewWrapper').find(tag_name).remove(); // remove the item on the UI var getHiddenTag = $('#edit-field-tag-project-name-hidden-und-0-value').val(); if(getHiddenTag != '' && getHiddenTag != null){ getHiddenTag = JSON.parse(getHiddenTag); var htmlCode = tag_name.innerHTML; var tempElement = document.createElement('div'); tempElement.innerHTML = htmlCode; var innerText = tempElement.innerText; innerText = innerText.replace(' ×',''); const newHiddenTag = getHiddenTag.filter(item => { return !(item.project_name === innerText); }); $('#edit-field-tag-project-name-hidden-und-0-value').val(JSON.stringify(newHiddenTag)); // console.log('tag project: '+JSON.stringify(newHiddenTag)); } } /** * Function Description (delete item in selected box for Tag Others) * * @request NLAZ-597 * * @param String requestText name of tag_name * * @return * 1. remove div element box selection inside tag div#tagOtherSelectedViewWrapper * 2. remove value hidden input #edit-field-tag-others-hidden-und-0-value */ function deleteTagOtherItem(tag_name) { $('#tagOtherSelectedViewWrapper').find(tag_name).remove(); // remove the item on the UI var getHiddenTag = $('#edit-field-tag-others-hidden-und-0-value').val(); if(getHiddenTag != '' && getHiddenTag != null){ getHiddenTag = JSON.parse(getHiddenTag); var htmlCode = tag_name.innerHTML; var tempElement = document.createElement('div'); tempElement.innerHTML = htmlCode; var innerText = tempElement.innerText; innerText = innerText.replace(' ×','').toString(); const newHiddenTag = getHiddenTag.filter(item => { return !(item.tag_name === innerText); }); $('#edit-field-tag-others-hidden-und-0-value').val(JSON.stringify(newHiddenTag)); // console.log('tag others: '+JSON.stringify(newHiddenTag)); } } $(document).ready(function() { if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) { closeArrow(); } try{ // handle style field tags edit article in cms drupal NLAZ-597 $("#edit-field-tags-proj-name").css('width','50%'); $("#edit-field-tags").css('width','50%'); // $("#field-tags-proj-name-add-more-wrapper").find('.control-label').append('<img src="https://sg.tepcdn.com/public/usr/8b7q6c/de75d8-info-circle.png" />').attr('title', 'Select the project name from the dropdown. If the project name is not shown, type in the full project name, followed by a comma'); //hide hidden input tag project name NLAZ-597 $("#field-tag-project-name-hidden-add-more-wrapper").css('display', 'none'); $("#edit-field-tag-project-name-hidden-und-0-value").attr("type","hidden"); //hide hidden input tag other NLAZ-597 $('#edit-field-tag-others-hidden').css('display','none'); //hidden existing field tag others NLAZ-597 $("#edit-field-tags").find(".input-group").css('display','none'); const tag_project_name = document.querySelector("#edit-field-field-tags-project-name"); const tags = document.querySelector("#edit-field-tags"); // Create a style object NLAZ-597 const style_tag = { display:"inline-block", position: "relative", paddingLeft: "14px", float: "right" } Object.assign(tags.style, style_tag); var setTagProject = '<div class="tag-selected-wrapper" name="tagSelectedViewWrapper" id="tagSelectedViewWrapper"></div>'; //container for dropdown tag project name NLAZ-597 $("#field-tags-proj-name-add-more-wrapper").append('<div id="tag_suggestions" class="tag-suggestion-wrapper-float">'); //container selected box tag project name NLAZ-597 $("#field-tags-proj-name-add-more-wrapper").append(setTagProject); $('#edit-field-tags-proj-name-und-0-value').attr("placeholder", "Enter Project Name"); $("#edit-body").prepend(`<div class="desc-tag_project" style="white-space: inherit;">Choose your tag from the dropdown menu. If it’s not listed, press the comma key to save your tag.<br />Suggestions for Tags (Others): <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('4','HDB');" style="cursor: pointer;"><div class="tag-selected-item">HDB</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('2','Condo');" style="cursor: pointer;"><div class="tag-selected-item">Condo</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('6','Landed');" style="cursor: pointer;"><div class="tag-selected-item">Landed</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('1272','industrial');" style="cursor: pointer;"><div class="tag-selected-item">Industrial</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('1597','commercial');" style="cursor: pointer;"><div class="tag-selected-item">Commercial</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('307','Done%20Deals');" style="cursor: pointer;"><div class="tag-selected-item">Done Deals</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('388','Gains%20And%20Losses');" style="cursor: pointer;"><div class="tag-selected-item">Gains And Losses</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('404','GLS');" style="cursor: pointer;"><div class="tag-selected-item">GLS</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('221','Collective%20Sale');" style="cursor: pointer;"><div class="tag-selected-item">Collective Sale</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('7','New%20Launch');" style="cursor: pointer;"><div class="tag-selected-item">New Launch</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('3','EC');" style="cursor: pointer;"><div class="tag-selected-item">EC</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('8','Overseas');" style="cursor: pointer;"><div class="tag-selected-item">Overseas</div></div> <div class="tag-quick-suggestion-item-wrapper" onclick="checkLimitTag(); handleDropdownTagOtherOnClick('9','Rent');" style="cursor: pointer;"><div class="tag-selected-item">Rent</div></div></div>`); let getExistingTag = $('#edit-field-tag-project-name-hidden-und-0-value').val(); if(getExistingTag.length > 0){ var getValueTag = JSON.parse($('#edit-field-tag-project-name-hidden-und-0-value').val()); var setTag = ''; for (const key in getValueTag) { let tag_name = getValueTag[key]['project_name'].trim(); setTag += '<div id="tag_'+tag_name.replace(/[^a-zA-Z0-9]/g, '')+'" class="tag-project-selected-item-wrapper">'; setTag += '<div class="tag-selected-item">'+tag_name+' </div>'; setTag += '<div class="tag-selected-delete" onclick="deleteTagProjectItem(tag_'+tag_name.replace(/[^a-zA-Z0-9]/g, '')+')"> ×</div>'; setTag += '</div>'; } //container selected box tag project name NLAZ-597 $("#tagSelectedViewWrapper").append(setTag); } //text field for dropdown tag Other NLAZ-597 $("#edit-field-tags").append('<input id="tag_other" type="text">'); //handle tag Other var setTagOther = '<div class="tag-selected-wrapper" name="tagOtherSelectedViewWrapper" id="tagOtherSelectedViewWrapper"></div>'; //container for dropdown tag Other NLAZ-597 $("#edit-field-tags").append('<div id="tag_other_suggestions" class="tag-suggestion-wrapper-float">'); //container selected box tag Other NLAZ-597 $("#edit-field-tags").append(setTagOther); $('#tag_other').attr("placeholder", "Enter any other tags"); //get existing tag other NLAZ-597 let getExistingTagOther = $('input[name="field_tags[und]"]').val(); //typeof getExistingTagOther = string //get existing tag other hidden, this value store in table dr_field_data_field_tag_others_hidden NLAZ-597 let getTagOtherHidden = $('#edit-field-tag-others-hidden-und-0-value').val(); //typeof getTagOtherHidden = string if(getTagOtherHidden == '[]' && getExistingTagOther != ''){ let arrTagOther = getExistingTagOther.split(','); var setTag = ''; var setHiddenTag = []; arrTagOther.forEach(tag_name => { setTag += '<div id="tag_'+tag_name.replace(/[^a-zA-Z0-9]/g, '')+'" class="tag-other-selected-item-wrapper">'; setTag += '<div class="tag-selected-item">'+tag_name.trim()+' </div>'; setTag += '<div class="tag-selected-delete" onclick="deleteTagOtherItem(tag_'+tag_name.replace(/[^a-zA-Z0-9]/g, '')+')"> ×</div>'; setTag += '</div>'; let newTag = { 'id' : null, 'tag_name': tag_name.trim() }; setHiddenTag.push(newTag); }); // set to hidden tag other $('#edit-field-tag-others-hidden-und-0-value').val(JSON.stringify(setHiddenTag)); // container selected box tag other $("#tagOtherSelectedViewWrapper").append(setTag); }else if(getTagOtherHidden.length > 0){ var getValueTagOther = JSON.parse(getTagOtherHidden); var setTag = ''; for (const key in getValueTagOther) { let tag_name = getValueTagOther[key]['tag_name'].trim(); setTag += '<div id="tag_'+tag_name.replace(/[^a-zA-Z0-9]/g, '')+'" class="tag-other-selected-item-wrapper">'; setTag += '<div class="tag-selected-item">'+tag_name+' </div>'; setTag += '<div class="tag-selected-delete" onclick="deleteTagOtherItem(tag_'+tag_name.replace(/[^a-zA-Z0-9]/g, '')+')"> ×</div>'; setTag += '</div>'; } // container selected box tag other $("#tagOtherSelectedViewWrapper").append(setTag); } // end of handle style field tags // handle event keyup tag other NLAZ-597 $('#tag_other').keyup(function(evt) { // get keycode of current keypress event let code = (evt.keyCode || evt.which); // do nothing if it's an arrow key if(code == 37 || code == 38 || code == 39 || code == 40) { return; } searchTags($(this).val()); checkLimitTag(); //tag project name handle, if type comma if(evt.currentTarget.value.slice(-1) == ','){ var getText = evt.currentTarget.value; if(getText.length > 0 && getText != ','){ getText = getText.replace(/,/, '').trim(); handleDropdownTagOtherOnClick(null, getText); } $("#tag_other_suggestions").hide(); $("#tag_suggestions").hide(); $("#edit-field-tags-proj-name-und-0-value").val(""); //clear the input value $("#tag_other").val(""); //reset index key dropdown selectedIndexTagProject = -1; selectedIndexTagOther = -1; } }); //handle mouse over for dropdown tag other $('#tag_other_suggestions').mouseover(function(evt) { //reset index key dropdown selectedIndexTagProject = -1; selectedIndexTagOther = -1; $('.tag-suggestion-item').hover(function() { //reset all color hover $('.tag-suggestion-item').css({ 'background-color': 'white', 'color': 'black' }); //set color $(this).css({ 'background-color': '#488ccc', 'color': '#fff' }); }, function(){ $(this).css({ 'background-color': 'white', 'color': 'black' }); }); }); //handle mouse over for dropdown tag project name $('#tag_suggestions').mouseover(function(evt) { //reset index key dropdown selectedIndexTagProject = -1; selectedIndexTagOther = -1; $('.tag-suggestion-item').hover(function() { //reset all color hover $('.tag-suggestion-item').css({ 'background-color': 'white', 'color': 'black' }); //set color $(this).css({ 'background-color': '#488ccc', 'color': '#fff' }); }, function(){ $(this).css({ 'background-color': 'white', 'color': 'black' }); }); }); //hanlde navigate dropdown using arrow key $('#tag_other').keydown(function(evt) { handleKeyDownTagOther(evt); //set none style for mouse over $('.tag-suggestion-item').hover(function() { $(this).css({ 'background-color': 'white', 'color': 'black' }); },function(){ $(this).css({ 'background-color': 'white', 'color': 'black' }); }); }); //hanlde navigate dropdown using arrow key $('#edit-field-tags-proj-name-und-0-value').keydown(function(evt) { handleKeyDownTagProject(evt); //set none style for mouse over $('.tag-suggestion-item').hover(function() { $(this).css({ 'background-color': 'white', 'color': 'black' }); },function(){ $(this).css({ 'background-color': 'white', 'color': 'black' }); }); }); //handle event keyup tag project NLAZ-597 $('#edit-field-tags-proj-name-und-0-value').keyup(function(evt) { // get keycode of current keypress event let code = (evt.keyCode || evt.which); // do nothing if it's an arrow key if(code == 37 || code == 38 || code == 39 || code == 40) { return; } searchProject($(this).val()); checkLimitTag(); //tag project name handle, if type comma if(evt.currentTarget.value.slice(-1) == ','){ var getText = evt.currentTarget.value; if(getText.length > 0 && getText != ','){ getText = getText.replace(/,/, '').trim(); handleArticleItemOnClick(null, getText, null); } $("#tag_other_suggestions").hide(); $("#tag_suggestions").hide(); $("#edit-field-tags-proj-name-und-0-value").val(""); //clear the input value $("#tag_other").val(""); //reset index key dropdown selectedIndexTagProject = -1; selectedIndexTagOther = -1; } }); //hide dropdown tag project name when not on focus NLAZ-597 $('#edit-field-tags-proj-name-und-0-value').focusout(function(evt) { $("#tag_suggestions").hide(); }); //hide dropdown tag others when not on focus NLAZ-597 $('#tag_other').focusout(function(evt) { $("#tag_other_suggestions").hide(); //reset index key dropdown selectedIndexTagProject = -1; selectedIndexTagOther = -1; }); //handle event onClick tag project NLAZ-597 $('#edit-field-tags-proj-name-und-0-value').click(function(evt) { checkLimitTag(); }); //handle event onClick tag others NLAZ-597 $('#tag_other').click(function(evt) { checkLimitTag(); }); //handle event onClick when click Submit button NLAZ-597 $('#edit-submit').click(function(e) { var checkTag = checkTagEmpty(e); var checkTagLimit = checkLimitTag(e, true); if(checkTag && checkTagLimit){ var invalidateButtonElmnt, saveButtonElmnt, previewButtonElmnt, deleteButtonElmnt; invalidateButtonElmnt = document.getElementById('edit-invalidate'); previewButtonElmnt = document.getElementById('edit-preview'); saveButtonElmnt = document.getElementById('edit-submit'); deleteButtonElmnt = document.getElementById('edit-delete'); let htmlStrSubmitArticle = 'Save'; htmlStrSubmitArticle = `<div style='display: inline-block; vertical-align: middle; height: 18px; margin-right: 4px;'><img style='display: block; height: 100%;' src='/sites/all/themes/property_theme/img/spin.gif' /></div><div style='display: inline-block; vertical-align: middle;'>Save</div>`; saveButtonElmnt.innerHTML = htmlStrSubmitArticle; let disableStyle = 'pointer-events: none; cursor: not-allowed; background-color: lightgrey; border-color: lightgrey; color: #333;'; saveButtonElmnt.style = disableStyle; previewButtonElmnt.style = disableStyle; invalidateButtonElmnt.style = disableStyle; if(deleteButtonElmnt){ deleteButtonElmnt.style = disableStyle; } } }); $("#edit-status").on("click", function (e) { var checkbox = $(this); var push_notif = document.querySelectorAll('#bootstrap-panel-3-body input[type=checkbox]') var push_count = 0; push_notif.forEach(function (checkbox) { if (checkbox.checked) { push_count += 1; } }) if(push_count>0){ if (!checkbox.is(":checked")) { e.preventDefault(); return false; } } }); let getChildtagOther = document.getElementById('tag_other_suggestions').children; let getChildtagProject = document.getElementById('tag_suggestions').children; // Track the currently selected item index var selectedIndexTagOther = -1; var selectedIndexTagProject = -1; /** * Function Description (for handle when highlight selected item dropdown) * * @request NLAZ-597 * * @param String request index * String request suggestions * * @return */ function highlightItem(index, suggestions) { // Remove the highlight from all items for (let i = 0; i < suggestions.length; i++) { suggestions[i].style.color ='black'; suggestions[i].style.backgroundColor = 'white'; } // Add the highlight to the selected item if (index >= 0 && index < suggestions.length) { suggestions[index].style.color ='#fff'; suggestions[index].style.backgroundColor = '#488ccc'; } } /** * Function Description (for handle scrolling dropdown when navigate dropdown using key Arrow) * * @request NLAZ-597 * * @param String request index * String request suggestions * * @return */ function scrollIntoView(index, suggestions) { if (index >= 0 && index < suggestions.length) { suggestions[index].scrollIntoView({ behavior: 'smooth', block: 'nearest', }); } } /** * Function Description (for handle navigate tag other dropdown using key arrow) * * @request NLAZ-597 * * @param String request event * * @return */ function handleKeyDownTagOther(event) { if (event.key === 'ArrowUp') { // Move the selection up selectedIndexTagOther = (selectedIndexTagOther - 1 + getChildtagOther.length) % getChildtagOther.length; highlightItem(selectedIndexTagOther,getChildtagOther); scrollIntoView(selectedIndexTagOther,getChildtagOther); } else if (event.key === 'ArrowDown') { // Move the selection down selectedIndexTagOther = (selectedIndexTagOther + 1) % getChildtagOther.length; highlightItem(selectedIndexTagOther, getChildtagOther); scrollIntoView(selectedIndexTagOther, getChildtagOther); } else if (event.key === 'Enter') { // Get the selected item's text and populate the input field if (selectedIndexTagOther >= 0 && selectedIndexTagOther < getChildtagOther.length) { let id = getChildtagOther[selectedIndexTagOther].getAttribute('data-id'); let tagName = getChildtagOther[selectedIndexTagOther].getAttribute('data-name'); handleDropdownTagOtherOnClick(id,tagName); } //reset index key dropdown selectedIndexTagProject = -1; selectedIndexTagOther = -1; } } /** * Function Description (for handle navigate tag project dropdown using key arrow) * * @request NLAZ-597 * * @param String request event * * @return */ function handleKeyDownTagProject(event) { if (event.key === 'ArrowUp') { // Move the selection up selectedIndexTagProject = (selectedIndexTagProject - 1 + getChildtagProject.length) % getChildtagProject.length; highlightItem(selectedIndexTagProject,getChildtagProject); scrollIntoView(selectedIndexTagProject,getChildtagProject); } else if (event.key === 'ArrowDown') { // Move the selection down selectedIndexTagProject = (selectedIndexTagProject + 1) % getChildtagProject.length; highlightItem(selectedIndexTagProject,getChildtagProject); scrollIntoView(selectedIndexTagProject,getChildtagProject); } else if (event.key === 'Enter') { // Get the selected item's text and populate the input field if (selectedIndexTagProject >= 0 && selectedIndexTagProject < getChildtagProject.length) { let assetId = getChildtagProject[selectedIndexTagProject].getAttribute('data-id'); let tagName = getChildtagProject[selectedIndexTagProject].getAttribute('data-name'); let source = getChildtagProject[selectedIndexTagProject].getAttribute('data-source'); handleArticleItemOnClick(assetId, tagName, source); } //reset index key dropdown selectedIndexTagProject = -1; selectedIndexTagOther = -1; } } }catch(err){ console.log('err handle tag project: '+err); } $('a.hamburger-menu-toggle').click(function(evt) { var x = document.getElementById("dropdown-side-menu"); var burgerMenuInitial = document.getElementById('hamburgerDropdownToggle'); if (x.style.display === "block") { burgerMenuInitial.textContent=''; let img = document.createElement("img"); img.src = "https://sg.tepcdn.com/web4/public/img/icons/menu_more.png"; img.classList.add('drawer-icons') burgerMenuInitial.appendChild(img); x.style.setProperty('display','none', 'important'); burgerMenuInitial.style.setProperty('padding-inline','4px'); burgerMenuInitial.style.setProperty('font-size','30px'); } else { x.style.setProperty('display','block', 'important'); burgerMenuInitial.style.setProperty('font-size','30px', 'important'); burgerMenuInitial.style.setProperty('padding-inline','5px'); burgerMenuInitial.textContent='×'; } window.addEventListener('mousedown', (event) =>{ var burgerMenu = document.getElementById('hamburgerDropdownToggle'); var siderPopup = document.getElementById('dropdown-side-menu'); var isBurgerMenuClicked = burgerMenu.contains(event.target); var isSiderPopupClicked = siderPopup.contains(event.target); if (!isBurgerMenuClicked && !isSiderPopupClicked) { burgerMenuInitial.textContent=''; let img = document.createElement("img"); img.src = "https://sg.tepcdn.com/web4/public/img/icons/menu_more.png"; img.classList.add('drawer-icons') burgerMenuInitial.appendChild(img); x.style.setProperty('display','none', 'important'); burgerMenuInitial.style.setProperty('padding-inline','4px'); burgerMenuInitial.style.setProperty('font-size','30px'); x.style.setProperty('display','none', 'important'); } }); }); $('button#hamburger-mobile').click(function(evt) { var x = document.getElementById("hamburger-mobile"); var z = document.getElementById("hamburger-mobile").children; var collapse = z[0].style.display; var expand = z[1].style.display; var collapseEl = document.getElementById("hamburger-collapsed"); var expandEl = document.getElementById("hamburger-expanded"); if(collapse == 'block'){ x.style.setProperty('color','white') x.style.setProperty('padding','0 12px 0 13px', 'important'); x.style.setProperty('font-size','30px', 'important'); collapseEl.style.setProperty('display','none','important'); expandEl.style.setProperty('display','block','important'); }else{ x.style.setProperty('padding','14.5px 10px', 'important'); x.style.setProperty('font-size','unset'); expandEl.style.setProperty('display','none','important'); collapseEl.style.setProperty('display','block','important'); x.style.setProperty('color','unset') } window.addEventListener('mousedown', (event) =>{ var burgerMenu = document.getElementById("hamburger-mobile"); var siderPopup = document.getElementById('bs-example-navbar-collapse-1'); var analyticNavBar = document.getElementById('toggle-tools'); var isBurgerMenuClicked = burgerMenu.contains(event.target); var isSiderPopupClicked = siderPopup.contains(event.target); var isAnalyticNavBarClicked = analyticNavBar.contains(event.target); // if (!isSiderPopupClicked) { // burgerMenuInitial.textContent=''; // let img = document.createElement("img"); // img.src = "https://sg.tepcdn.com/web4/public/img/icons/menu_more.png"; // img.classList.add('drawer-icons') // burgerMenuInitial.appendChild(img); // x.style.setProperty('display','none', 'important'); // burgerMenuInitial.style.setProperty('padding-inline','4px'); // burgerMenuInitial.style.setProperty('font-size','30px'); // x.style.setProperty('display','none', 'important'); // } if (isBurgerMenuClicked && isSiderPopupClicked) { x.style.setProperty('color','white') x.style.setProperty('padding','0 12px 0 13px', 'important'); x.style.setProperty('font-size','30px', 'important'); collapseEl.style.setProperty('display','none','important'); expandEl.style.setProperty('display','block','important'); } else if (isAnalyticNavBarClicked) { x.style.setProperty('padding','14.5px 10px', 'important'); x.style.setProperty('font-size','unset'); expandEl.style.setProperty('display','none','important'); collapseEl.style.setProperty('display','block','important'); x.style.setProperty('color','unset') $('#bs-example-navbar-collapse-1').removeClass('in'); } }); }); $('a#analyticDropdown').click(function(evt) { var x = document.getElementById("analyticDropdownContent"); var target = evt.target; if (x.style.display === "block") { x.style.setProperty('display','none', 'important'); } else { x.style.setProperty('display','block', 'important'); x.style.setProperty('max-height','85vh'); x.style.setProperty('overflow-y','scroll'); if (window.matchMedia("(min-width: 992px) and (max-width: 1199px)").matches) { x.style.setProperty('width', '80vw'); } } window.addEventListener('mousedown', (event) =>{ var burgerMenu = document.getElementById('analyticDropdown'); var siderPopup = document.getElementById('analyticDropdownContent'); var isAnalyticClicked = burgerMenu.contains(event.target); var isSiderPopupClicked = siderPopup.contains(event.target); if (!isAnalyticClicked && !isSiderPopupClicked) { x.style.setProperty('display','none', 'important'); } }); }); $('a#loginDropdown').click(function(evt) { var x = document.getElementById("loginDropdownContent"); var target = evt.target; if (x.style.display === "block") { x.style.setProperty('display','none', 'important'); } else { x.style.setProperty('display','block', 'important'); } window.addEventListener('mousedown', (event) =>{ var burgerMenu = document.getElementById('loginDropdown'); var siderPopup = document.getElementById('loginDropdownContent'); var isLoginClicked = burgerMenu.contains(event.target); var isSiderPopupClicked = siderPopup.contains(event.target); if (!isLoginClicked && !isSiderPopupClicked) { x.style.setProperty('display','none', 'important'); } }); }); $('a#registerDropdown').click(function(evt) { var x = document.getElementById("registerDropdownContent"); var target = evt.target; if (x.style.display === "block") { x.style.setProperty('display','none', 'important'); } else { x.style.setProperty('display','block', 'important'); } window.addEventListener('mousedown', (event) =>{ var burgerMenu = document.getElementById('registerDropdown'); var siderPopup = document.getElementById('registerDropdownContent'); var isLoginClicked = burgerMenu.contains(event.target); var isSiderPopupClicked = siderPopup.contains(event.target); if (!isLoginClicked && !isSiderPopupClicked) { x.style.setProperty('display','none', 'important'); } }); }); $('a#agentDropdown').click(function(evt) { var x = document.getElementById("agentDropdownContent"); var target = evt.target; if (x.style.display === "block") { x.style.setProperty('display','none', 'important'); } else { x.style.setProperty('display','block', 'important'); } window.addEventListener('mousedown', (event) =>{ var burgerMenu = document.getElementById('agentDropdown'); var siderPopup = document.getElementById('agentDropdownContent'); var isLoginClicked = burgerMenu.contains(event.target); var isSiderPopupClicked = siderPopup.contains(event.target); if (!isLoginClicked && !isSiderPopupClicked) { x.style.setProperty('display','none', 'important'); } }); }); $('a#languageDropdown').click(function(evt) { var x = document.getElementById("languageDropdownContent"); var target = evt.target; if (x.style.display === "block") { x.style.setProperty('display','none', 'important'); } else { x.style.setProperty('display','block', 'important'); } window.addEventListener('mousedown', (event) =>{ var burgerMenu = document.getElementById('languageDropdown'); var siderPopup = document.getElementById('languageDropdownContent'); var isLoginClicked = burgerMenu.contains(event.target); var isSiderPopupClicked = siderPopup.contains(event.target); if (!isLoginClicked && !isSiderPopupClicked) { x.style.setProperty('display','none', 'important'); } }); }); $('a#newLaunchesDropdown').click(function(evt) { var x = document.getElementById("newLaunchesDropdownContent"); var target = evt.target; if (x.style.display === "block") { x.style.setProperty('display','none', 'important'); } else { x.style.setProperty('display','block', 'important'); } window.addEventListener('mousedown', (event) =>{ var burgerMenu = document.getElementById('newLaunchesDropdown'); var siderPopup = document.getElementById('newLaunchesDropdownContent'); var isLoginClicked = burgerMenu.contains(event.target); var isSiderPopupClicked = siderPopup.contains(event.target); if (!isLoginClicked && !isSiderPopupClicked) { x.style.setProperty('display','none', 'important'); } }); }); $('a#rentDropdown').click(function(evt) { var x = document.getElementById("rentDropdownContent"); var target = evt.target; if (x.style.display === "block") { x.style.setProperty('display','none', 'important'); } else { x.style.setProperty('display','block', 'important'); } window.addEventListener('mousedown', (event) =>{ var burgerMenu = document.getElementById('rentDropdown'); var siderPopup = document.getElementById('rentDropdownContent'); var isLoginClicked = burgerMenu.contains(event.target); var isSiderPopupClicked = siderPopup.contains(event.target); if (!isLoginClicked && !isSiderPopupClicked) { x.style.setProperty('display','none', 'important'); } }); }); $('a#saleDropdown').click(function(evt) { var x = document.getElementById("saleDropdownContent"); var target = evt.target; if (x.style.display === "block") { x.style.setProperty('display','none', 'important'); } else { x.style.setProperty('display','block', 'important'); } window.addEventListener('mousedown', (event) =>{ var burgerMenu = document.getElementById('saleDropdown'); var siderPopup = document.getElementById('saleDropdownContent'); var isLoginClicked = burgerMenu.contains(event.target); var isSiderPopupClicked = siderPopup.contains(event.target); if (!isLoginClicked && !isSiderPopupClicked) { x.style.setProperty('display','none', 'important'); } }); }); $('#livestreamBack').click(function(){ $('#cast').hide(); $('#bs-example-navbar-collapse-1').addClass("in"); }) var setDropdownUIForEN = () => { $("#lang-indicator").html("EN"); $('a.en_language').find("input[type='radio']").prop("checked", true); $('a.en_language').css("pointer-events", "none"); } var setDropdownUIForCN = () => { $("#lang-indicator").html("CN"); $('a.cn_language').find("input[type='radio']").prop("checked", true); $('a.cn_language').css("pointer-events", "none"); } var pathnameUrl = window.location.pathname; var langFromPrefix = "en"; // var notAllowedToReload = ['/project', '/analytic/shortlist', '/analytic/inspector','/property-events','/analytic/main', // '/market-watch/developer-sales','/property-events']; // var isPreventReload = false; // for (let i = 0; i < notAllowedToReload.length; i++) { // if (pathnameUrl && pathnameUrl.indexOf(notAllowedToReload[i]) > -1) { // isPreventReload = true; // break; // } // } if (pathnameUrl.slice(0, 4) == "/cn/") { langFromPrefix = "cn"; } // Set initial language cookie as en if ($.cookie("LANGUAGE") == undefined) { if (langFromPrefix == "en") { setDropdownUIForEN(); setCookie("LANGUAGE", 'en', 30); // location.reload(); // if ($('body') && !isPreventReload) { // $('body').load(pathnameUrl); // } } else if (langFromPrefix == "cn") { setDropdownUIForCN(); setCookie("LANGUAGE", 'cn', 30); // location.reload(); // if ($('body') && !isPreventReload) { // $('body').load(pathnameUrl); // } } } // Set cookie when directly go to that page by url if (!document.referrer) { if (langFromPrefix == "cn" && $.cookie("LANGUAGE") == "en") { setCookie("LANGUAGE", 'cn', 30); // location.reload(); // if ($('body') && !isPreventReload) { // $('body').load(pathnameUrl); // } } else if (langFromPrefix == "en" && $.cookie("LANGUAGE") == "cn") { setCookie("LANGUAGE", 'en', 30); // location.reload(); // if ($('body') && !isPreventReload) { // $('body').load(pathnameUrl); // } } } // Setting the language dropdown when page firstly load if ($.cookie("LANGUAGE") == "cn") { setDropdownUIForCN(); } else if ($.cookie("LANGUAGE") == "en") { setDropdownUIForEN(); } //////// Language dropdown buttons function //////// $('a.cn_language').on('click', function() { if ($.cookie("LANGUAGE") == "en") { $('a.cn_language').find("input[type='radio']").prop("checked", true); $('a.en_language').find("input[type='radio']").prop("checked", false); } setCookie("LANGUAGE", 'cn', 30); window.location.href = "/cn" + window.location.pathname; }); $('a.en_language').click(function() { if ($.cookie("LANGUAGE") == "cn") { $('a.cn_language').find("input[type='radio']").prop("checked", false); $('a.en_language').find("input[type='radio']").prop("checked", true); } setCookie("LANGUAGE", 'en', 30); window.location.href = window.location.pathname.replace("/cn", ""); }); $('a.castlinks').click(function() { $('#bs-example-navbar-collapse-1').removeClass('in'); var e = document.getElementById('cast'); e.style.display = 'inline'; $("#cast").css('max-height', $(window).height()-55); $("#cast").css('color','#ff66cc'); // e.aria-expanded = true; }); //////// Language dropdown buttons function //////// function setCookie(cname, cvalue, exdays) { var d = new Date(); d.setTime(d.getTime() + (exdays*24*60*60*1000)); var expires = "expires="+ d.toUTCString(); document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; } function getCookie(cname) { var name = cname + "="; var ca = document.cookie.split(';'); for(var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ' ') { c = c.substring(1); } if (c.indexOf(name) == 0) { return c.substring(name.length, c.length); } } return ""; } $('#agent #edit-profile-agent #profile-agent-field-date-listing-migrated-add-more-wrapper').css('display', 'none'); $('.navbar').on('show.bs.collapse', function () { var actives = $(this).find('.collapse.in'), hasData; if (actives && actives.length) { hasData = actives.data('collapse') if (hasData && hasData.transitioning) return actives.collapse('hide') hasData || actives.data('collapse', null) } //set to height $("#bs-example-navbar-collapse-1").css('max-height', $(window).height()-55); $("#bs-example-navbar-collapse-1").css('color','#ff66cc'); $(".nav-tools").css('max-height', $(window).height()-55); }); $(".nav-tools").on('show.bs.collapse', function(){ $("#toggle-tools").css("background-color","#224769"); }); $(".nav-tools").on('hidden.bs.collapse', function(){ $("#toggle-tools").css("background-color","#275075"); }); //set to height $("#bs-example-navbar-collapse-1").css('max-height', $(window).height()-55); $(".nav-tools").css('max-height', $(window).height()-55); var translatedPagesArr = [ "/", // "https://get.edgeprop.sg/property-calculators/", "/new-launches", "/property-near-mrt", "/overseas", "/property-near-school", "/condo-apartment", "/singapore", "/market-trends", "/hdb", "/content/mortgage", "/property-search", "/en-bloc", "/property-agents", "/ocbc_calculator", "/en-bloc-calculator", "/hdb-tenure", "/analytic/main", "/analytic/edgefairvalue", "/analytic/amenities", "/property-news", "/events", "/property-events", "/analytic/heatmap" ]; var translatedUnbouncePagesArr = [ "https://get.edgeprop.sg/property-calculators/", ]; var hardcodedFullUrlArr = [ "https://www.edgeprop.sg/property-near-mrt", "https://www.edgeprop.sg/property-near-school" ]; // Temporarily use this to get language data, later have to use url prefix var currentLang = "en"; if ($.cookie("LANGUAGE")) { currentLang = $.cookie("LANGUAGE"); } if (currentLang != "en") { $("a").each(function() { var currentHref = $(this).attr("href"); if (currentHref) { if (translatedPagesArr.indexOf(currentHref) > -1) { currentHref = "/" + currentLang + currentHref; } else if (currentHref.indexOf("/condo-apartment") > -1) { currentHref = "/" + currentLang + currentHref; } else if (currentHref.indexOf("/hdb") > -1) { currentHref = "/" + currentLang + currentHref; } else if (currentHref.indexOf("/property-search?") > -1) { currentHref = "/" + currentLang + currentHref; } else if (currentHref.indexOf("/property-agents?") > -1) { currentHref = "/" + currentLang + currentHref; } else if (currentHref.indexOf("/property-news?") > -1) { currentHref = "/" + currentLang + currentHref; } else if (translatedUnbouncePagesArr.indexOf(currentHref) > -1) { currentHref = currentHref.replace("https://get.edgeprop.sg", "https://get.edgeprop.sg/" + currentLang); } else if (hardcodedFullUrlArr.indexOf(currentHref) > -1) { currentHref = currentHref.replace("https://www.edgeprop.sg", "https://www.edgeprop.sg/" + currentLang); } else if (currentHref.indexOf("/overseas/") > -1 && currentHref.indexOf("/overseas/property-news/") == -1) { currentHref = "/" + currentLang + currentHref; } $(this).attr("href", currentHref); } }); } }); // function mymodule_menu() { // $items = array(); // // $items['online-newspaper'] = array( // 'title' => 'Redirect', // 'page callback' => 'mymodule_redirect', // 'access callback' => TRUE, // 'type' => MENU_CALLBACK, // ); // // return $items; // } // // function mymodule_redirect() { // drupal_goto($url, array('pullout/the-edge-property' => TRUE)); // } </script> <script> if(window.location.href.indexOf("/content/mortgage") > -1 || window.location.href.indexOf("/pullout/the-edge-property") > -1){ var exitAds = document.getElementById('all_pages_exit_intent'); googletag.cmd.push(function() { googletag.display('div-gpt-ad-1671606877825-0'); }); exitAds.innerHTML = "<div id='all_pages_exit_intent' style='position:absolute;display:none;'>"; exitAds.innerHTML += "<div id='div-gpt-ad-1671606877825-0' style='min-width: 800px; min-height: 600px;'>"; exitAds.innerHTML += "</div></div>"; } var language = "en"; if (window.location.href.indexOf("/content/mortgage") > -1 && language && language != "en") { setTimeout(function() { $("iframe[src='//mortgage.redbrick.sg/package/theedge']").remove(); var iframeParentDiv = $("div.field-item.even[property='content:encoded']"); $('<iframe src="https://' + window.location.hostname + '/proxy?url=https%3A%2F%2Fmortgage.redbrick.sg%2Fpackage%2Ftheedge" style="width:100%;height:4250px;border:0px;"></iframe>').appendTo(iframeParentDiv); setTimeout(function() { var iframeUrl = $("iframe[src='https://" + window.location.hostname + "/proxy?url=https%3A%2F%2Fmortgage.redbrick.sg%2Fpackage%2Ftheedge']"); iframeUrl.contents().find("span.p-title-side.p-subtitle-custom.color-scheme-background").html("What are you looking for?"); iframeUrl.contents().find("#loan_type_id label.radio-blocks-custom").html("Loan Type"+" *"); iframeUrl.contents().find("#loan_type_id span:contains('New Loan')").html("New Loan"); iframeUrl.contents().find("#loan_type_id span:contains('Refinance')").html("Refinance"); iframeUrl.contents().find("#property_type_id label.radio-blocks-custom").html("Property Type"+" *"); iframeUrl.contents().find("#property_type_id span:contains('Private Residential')").html("Private Residential"); iframeUrl.contents().find("#property_type_id span:contains('HDB')").html("HDB"); iframeUrl.contents().find("#property_type_id span:contains('Commercial')").html("Commercial"); iframeUrl.contents().find("#construction_status_id label.radio-blocks-custom").html("Construction Status"+" *"); iframeUrl.contents().find("#construction_status_id span:contains('Completed')").html("Completed"); iframeUrl.contents().find("#construction_status_id span:contains('Uncompleted')").html("Uncompleted"); iframeUrl.contents().find("#property_purchase_id label.radio-blocks-custom").html("Property Purchase"+" *"); iframeUrl.contents().find("#property_purchase_id span:contains('Yes')").html("Yes"); iframeUrl.contents().find("#property_purchase_id span:contains('No')").html("No"); iframeUrl.contents().find("#rates_id label.radio-blocks-custom").html("Fixed or Floating Rates"+" *"); iframeUrl.contents().find("#rates_id span:contains('Both')").html("Both"); iframeUrl.contents().find("#rates_id span:contains('Fixed')").html("Fixed"); iframeUrl.contents().find("#rates_id span:contains('Floating')").html("Floating"); iframeUrl.contents().find("#loan_ammount_id label").html("Loan Amount"); iframeUrl.contents().find("#loan_ammount_id input[type=tel]").attr("placeholder", "Loan Amount"); iframeUrl.contents().find("#loan_tenure_id label").html("Loan Tenure (Years)"); iframeUrl.contents().find("#contact_name_id label").html("Name"); // iframeUrl.contents().find("#contact_name_id input[type=text]").attr("placeholder", "Contact Name"); iframeUrl.contents().find("#phone_id label").html("Contact Number"); iframeUrl.contents().find("#phone_id input[type=tel]").attr("placeholder", "Contact Number"); iframeUrl.contents().find("#email_id label").html("Email"); // iframeUrl.contents().find("#email_id input[type=text]").attr("placeholder", "Contact Email"); iframeUrl.contents().find("#submit").html('<i class="fa fa-check-square-o" style="margin-left: -10px; visibility: hidden;" id="tick"></i>'+"Compare rates"+" "); if(language === "cn") { iframeUrl.contents().find("#submit").css("min-width", "200px"); } }, 3000); }, 3000); } </script> <script> $session_cookie = getCookie("EP_C"); $click_subs = getCookie("ClickSubs"); if($session_cookie != ""){ data2 = JSON.parse($session_cookie); $session_id = data2.sessid; $uid = data2.uid; $.ajax({ type: 'POST', url: '/index.php?option=com_analytica&task=checksession&ssid='+$session_id+'&uid='+$uid, }).success(function(data) { if(data.status == "error"){ if($click_subs != "1"){ var cookies = document.cookie.split(";"); for (var i = 0; i < cookies.length; i++) { var cookie = cookies[i]; var eqPos = cookie.indexOf("="); var name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie; document.cookie = name + '=;expires=Thu, 01 Jan 1970 00:00:01 GMT;path=/;' + "; domain=.edgeprop.sg"; } wall.wallKickedOut(); } } }); } </script> <script type="application/ld+json"> { "@context":"http://schema.org", "@type":"Organization", "name":"Edgeprop SG", "alternateName":"EdgeProp Singapore", "description":"'EdgeProp is the fastest growing property portal for home-seekers, buyers, investors and real estate agents alike in Singapore. On EdgeProp, you will be able to find all the latest news and views, informational guides, historical transactions and rental searches, and research data and analysis.'", "slogan":"Property Personalized", "image":"https://sg.tepcdn.com/web4/public/img/EdgeProp-logo.png", "address": { "@type": "PostalAddress", "addressLocality": "Singapore", "postalCode": "408832", "streetAddress": "82 Ubi Avenue 4 #05-04 Edward Boustead Centre Singapore" }, "telephone": "+6569707793", "url":"https://www.edgeprop.sg", "sameAs": [ "https://www.facebook.com/edgepropsg/", "https://www.linkedin.com/company/edge-prop-singapore/", "https://www.instagram.com/edgepropsg/", "https://www.youtube.com/c/EdgePropSingaporeVideos" ], "logo":{ "@type":"ImageObject", "url":"https://sg.tepcdn.com/public/usr/dluzx5/4f70fe-Edgeprop-Logo.jpg", "width":60, "height":60 } } </script> <script> $(document).ready(function() { try { const _url = window.location.pathname; const regexGLSEdit = /^\/node\/\d+\/edit$/; const regexGLSCreate = /^\/node\/add\/government-land-sales$/; // Add guard for the script just run on edit GLS with URL /node/XXXX/edit and create GLS with URL /node/add/government-land-sales if(regexGLSEdit.test(_url) || regexGLSCreate.test(_url)) { // Index of the currently selected suggestion let selectedSuggestionIndex = -1; // Flag to track if suggestion was selected via keyboard navigation let suggestionSelectedViaKeyboard = false; const domProjectIDNewLauncesFormGroup = $('#field-gls-id-new-launch-add-more-wrapper .form-group'); domProjectIDNewLauncesFormGroup.append('<div id="new_launch_suggestions" class="new_launch-suggestions"></div>'); const domProjectIDNewLaunces = $('#edit-field-gls-id-new-launch-und-0-value'); const domNewLaunchSuggestions = $('#new_launch_suggestions'); const domForm = $('#government-land-sales-node-form'); // Add margin top for grouping accordion $('#group-property-wrapper').css('margin-top', '20px'); domNewLaunchSuggestions.hide(); /** * Fetch autocomplete suggestions based on the provided keyword. * @request NLAZ-730 * * @async * @param {string} keyword - The search keyword for autocomplete suggestions. * @returns {Promise<Array>} An array of autocomplete suggestions. * @throws {Error} If the network response is not successful or an error occurs during the fetch operation. */ async function fetchAutocompleteSuggestions(keyword) { try { const baseURL = window && window.location && window.location.origin ? window.location.origin : "https://www.edgeprop.sg/"; const url = `${baseURL}/good-deal/search-project?keyword=${keyword}`; const response = await fetch(`/proxy?url=${encodeURIComponent(url)}`); if (!response.ok) { throw new Error('Network response was not ok.'); } const data = await response.json(); return data.data; } catch (error) { console.error('Error fetching autocomplete suggestions:', error); return []; } } /** * Show autocomplete suggestions based on the provided keyword. * @request NLAZ-730 * * @async * @param {string} keyword - The keyword for which autocomplete suggestions will be fetched. * @returns {Promise<void>} A Promise that resolves when the autocomplete suggestions are displayed. */ async function showAutocompleteSuggestions(keyword) { const suggestions = await fetchAutocompleteSuggestions(keyword); const suggestionsHTML = suggestions.map((suggestion, index) => ` <div class="new_launch-suggestions-options" data-assetid=${suggestion.asset_id} data-index=${index}> <b>${suggestion.asset_id}</b> <span style="font-size: 13px;font-weight: 400;">Asset ID: ${suggestion.asset_id} | Project Name: ${suggestion.project_name}</span> </div> `).join(''); domNewLaunchSuggestions.html(suggestionsHTML); domNewLaunchSuggestions.show(); // Reset selected suggestion index selectedSuggestionIndex = -1; } /** * Hide the autocomplete suggestions and empty the suggestions container. * @request NLAZ-730 * * This function hides the autocomplete suggestions container and removes any existing * suggestion options from the DOM. * * @returns {void} This function does not return anything. */ function hideAutocomplate() { domNewLaunchSuggestions.hide(); domNewLaunchSuggestions.empty(); } /** * Handle the search for autocomplete suggestions based on the provided input. * @request NLAZ-730 * * This function takes an input value and decides whether to hide the autocomplete suggestions * or show the relevant suggestions based on the input value. * * @param {string} input - The input value to be used for fetching autocomplete suggestions. * @returns {void} This function does not return anything. */ function onSearchAutocomplate(input) { if (input.trim() === "") { hideAutocomplate(); return; } showAutocompleteSuggestions(input); } // Event handler for the input field domProjectIDNewLaunces.on("input", function () { onSearchAutocomplate($(this).val()); }); // Event handler for the input field handle Arrow down, Arrow up, Enter domProjectIDNewLaunces.on("keydown", function (e) { const suggestionsDivs = domNewLaunchSuggestions.children(); switch (e.keyCode) { case 40: // Arrow down key selectedSuggestionIndex = Math.min(selectedSuggestionIndex + 1, suggestionsDivs.length - 1); break; case 38: // Arrow up key selectedSuggestionIndex = Math.max(selectedSuggestionIndex - 1, -1); break; case 13: // Enter key if (selectedSuggestionIndex !== -1) { const selectedSuggestion = suggestionsDivs.eq(selectedSuggestionIndex).data("assetid"); domProjectIDNewLaunces.val(selectedSuggestion); hideAutocomplate(); suggestionSelectedViaKeyboard = true; } return; default: return; } // Update the selection UI based on the selectedSuggestionIndex suggestionsDivs.removeClass("selected-project-id-new-launces"); if (selectedSuggestionIndex !== -1) { suggestionsDivs.eq(selectedSuggestionIndex).addClass("selected-project-id-new-launces"); } }); // Event handler to handle focus on form will find suggestion domProjectIDNewLaunces.focus(function() { onSearchAutocomplate($(this).val()); }); // Event handler to handle disable submit enter when on process selected options domForm.on("submit", function (e) { if (suggestionSelectedViaKeyboard) { e.preventDefault(); suggestionSelectedViaKeyboard = false; } }); // Event handler to handle suggestion selection (optional) $(document).on("click", "#new_launch_suggestions > div", function () { const selectedSuggestion = $(this).data('assetid'); domProjectIDNewLaunces.val(selectedSuggestion); hideAutocomplate(); suggestionSelectedViaKeyboard = false; }); } } catch (err) { console.error("Error on inject form GLS", err) } }) </script> <div class="container-fluid"> <div class="container"> <header role="banner" id="page-header"> </header> <!-- /#page-header --> <div class="row"> <section class="col-sm-12" id="agent-nav-container"> </section> <div class="col-lg-12"> <ol class="breadcrumb"><li><a href="/">Main</a></li><li><a href="/market-watch/developer-sales" class="active">Developer Sales</a></li></ol> </div> <div class="col-lg-12"> <div class="row"> <div class="col-xs-12 col-sm-12 col-md-8 col-lg-9"> <section class="content-column"> <a id="main-content"></a> <div class="region region-content"> <section id="block-analytic-analytica" class="block block-analytic clearfix"> <script type='text/javascript' src='/js/jquery.blockUI.js'></script> <script type='text/javascript' language='javascript'> $(document).ready(function() { $('#month').change(function() { window.location.href = '/market-watch/developer-sales?t='+$(this).val(); }); }); function checkKey(p,e) { if (e.keyCode == 13 && p.length > 1) { searchP(p); } } function checkClick(p) { if (p.length > 1) { searchP(p); } } function loadP(c) { var p = $(c).text(); window.location.href = '/market-watch/developer-sales?t='+$('#month').val()+'&p='+escape(p.toLowerCase()); $.blockUI(); } function searchP(p) { $.blockUI(); $.get('/index.php?option=com_analytica&task=dp&p='+escape(p),function(data) { $.unblockUI(); if (data.indexOf('Error:') == -1) { $('#unit-results').html(data); } else { var err = data.substr(data.indexOf(':')+1); $.growlUI('Try Again', err); } }) .fail(function() { $.unblockUI(); $.growlUI('Try Again', 'There was a problem with the request, please try again.'); }); } </script> <div class='ja-typo'> <div class='ja-typo-blockswrap clearfix'> <div class='ja-typo-blockrow cols-1 clearfix'> <div class='ja-typo-block last clearfix'> <!-- Market Watch header start --> <style> .title { display:inline-block; font-size:18px; padding:0px; margin:0px; } .submenu { font-size: 15px; line-height: 23px; color: #222222; text-align: center; margin-top: 20px; border-bottom: 2px solid rgba(0, 0, 0, 0.15); } .actived { font-size: 15px; line-height: 23px; text-align: center; margin-top: 20px; font-weight: 600; color: #3496EE; border-bottom: 2px solid #3496EE; } .submenu > .text-black { color: #222222; } .col-md-2 { padding: 0px 0px 8px 0px; } /* for desktop only */ @media (min-width:1025px) { .row { padding-left: 15px; padding-right: 15px; margin-bottom: 40px; } .non-desktop { display: none; } } /* for tablet only */ @media (max-width:1025px) { .desktop { display: none; } .non-desktop { background: #F3F6F9; border-radius: 4px; } .widgetheader { padding: 15px 0px; margin-bottom: 40px; } } </style> <table class="light widgetheader" style="margin-bottom: 0px;"> <tbody> <tr> <td><h3 class="title">Market Watch</h3></td> </tr> </tbody> </table> <div class="row desktop"> <div class="col-md-2 actived"> <a href="developer-sales" class="text-black">Developer Sales</a> </div> <div class="col-md-2 submenu"> <a href="median-prices" class="text-black">Median Prices</a> </div> <div class="col-md-2 submenu"> <a href="mixed-developments" class="text-black">Mixed Developments</a> </div> <div class="col-md-2 submenu"> <a href="shophouses" class="text-black">Shophouses</a> </div> <div class="col-md-2 submenu"> <a href="median-rents" class="text-black">Median Rents</a> </div> <div class="col-md-2 submenu"> <a href="shoebox-rental" class="text-black">Shoebox Rental</a> </div> </div> <div class="non-desktop widgetheader"> <div class="col-md-12"> <select name="" id="" class="form-control" onchange="window.location.href = `/market-watch/${this.options[this.selectedIndex].value}`"> <option value="developer-sales" selected>Developer Sales</option> <option value="median-prices" >Median Prices</option> <option value="mixed-developments" >Mixed Development</option> <option value="shophouses" >Shophouses</option> <option value="median-rents" >Median Rents</option> <option value="shoebox-rental" >Shoebox Rental</option> </select> </div> </div> <!-- Market Watch header end --> <center> <h3 class='report-title' style='margin-bottom:0px'>See sales data for a specific month</h3> <h6 style='padding-top:5px'>Note: Available for the last 12 months only</h6> <div> <select id='month' name='month'> <option value='202410'>Oct 2024</option> <option value='202409'>Sep 2024</option> <option value='202408'>Aug 2024</option> <option value='202407'>Jul 2024</option> <option value='202406'>Jun 2024</option> <option value='202405'>May 2024</option> <option value='202404'>Apr 2024</option> <option value='202403'>Mar 2024</option> <option value='202402'>Feb 2024</option> <option value='202401'>Jan 2024</option> <option value='202312'>Dec 2023</option> <option value='202311'>Nov 2023</option> </select> </div> </center> </div> </div> </div> </div> <div class='ja-typo'> <div class='ja-typo-blockswrap clearfix'> <h1 class='ja-typo-title'>Top 10 best selling projects for the month of October 2024</h1> <div class='ja-typo-blockrow cols-1 clearfix'> <div class='ja-typo-block last clearfix'> <center> <h6>Source: URA, <a href='https://www.edgeprop.sg' target='_blank'><b style='color:#3377bb;font-size:120%'>https://www.edgeprop.sg</b></a></h6> </center> <link rel="stylesheet" href="/sites/all/modules/analytic/css/watable.css"> <script src="/sites/all/modules/analytic/js/jquery.watable.js"></script> <script type='text/javascript' language='javascript'> $(document).ready(function() { $('#xtnrnr').html(''); var table = $('#xtnrnr').WATable({ debug: false, // Prints some debug info to console //filter: true, // Show filter fields sorting: true, // Enable sorting sortEmptyLast: true, // Empty values will be shown last columnPicker: false, // Show the columnPicker button pageSize: 10, // Initial pagesize pageSizes: [10,20,50,100,200], // Set custom pageSizes. Leave empty array to hide button. hidePagerOnEmpty: true, // Removes the pager if data is empty. checkboxes: true, // Make rows checkable. (Note. You need a column with the 'unique' property) checkAllToggle: true, // Show the check-all toggle preFill: true, // Initially fills the table with empty rows (as many as the pagesize). types: { // Following are some specific properties related to the data types string: { //filterTooltip: "Giggedi..." // What to say in tooltip when hoovering filter fields. Set false to remove. //placeHolder: "Type here..." // What to say in placeholder filter fields. Set false for empty. }, number: { decimals: 0 // Sets decimal precision for float types }, bool: { //filterTooltip: false }, date: { utc: false, // Show time as universal time, ie without timezones. format: 'd MMM yy', // The format. See all possible formats here http://arshaw.com/xdate/#Formatting. datePicker: true // Requires "Datepicker for Bootstrap" plugin (http://www.eyecon.ro/bootstrap-datepicker). } }/*, actions: { // This generates a button where you can add elements. filter: true, // If true, the filter fields can be toggled visible and hidden. columnPicker: true // if true, the columnPicker can be toggled visible and hidden. }*/ }).data('WATable'); //This step reaches into the html data property to get the actual WATable object. Important if you want a reference to it as we want here. table.setData({ cols: {project_name:{type:'string',friendly:'Project Name'},project_type:{type:'string',friendly:'Project Type'},region:{type:'string',friendly:'Region'},total_unit:{type:'number',friendly:'Total Units'},cum_unit_sold:{type:'number',friendly:'Cumulative Units Sold'},unit_sold_in_month:{type:'number',friendly:'Units Sold in the Month'},lowest_price:{type:'number',friendly:'Lowest Price<br>(S$ psf)'},median_price:{type:'number',friendly:'Median Price<br>(S$ psf)'},highest_price:{type:'number',friendly:'Highest Price<br>(S$ psf)'}}, rows: [{project_name:'<a href=\'/project/residential/norwood-grand-295623\'>NORWOOD GRAND</a>',project_type:'Non-Landed',region:'OCR',total_unit:348,cum_unit_sold:292,unit_sold_in_month:292,lowest_price:1895,median_price:2080,highest_price:2252},{project_name:'<a href=\'/project/residential/meyer-blue-295309\'>MEYER BLUE</a>',project_type:'Non-Landed',region:'RCR',total_unit:226,cum_unit_sold:124,unit_sold_in_month:124,lowest_price:2984,median_price:3240,highest_price:3569},{project_name:'<a href=\'/project/residential/pinetree-hill-295080\'>PINETREE HILL</a>',project_type:'Non-Landed',region:'RCR',total_unit:520,cum_unit_sold:378,unit_sold_in_month:71,lowest_price:2139,median_price:2541,highest_price:2697},{project_name:'<a href=\'/project/residential/tembusu-grand-294973\'>TEMBUSU GRAND</a>',project_type:'Non-Landed',region:'RCR',total_unit:638,cum_unit_sold:528,unit_sold_in_month:52,lowest_price:2270,median_price:2388,highest_price:2706},{project_name:'<a href=\'/project/residential/hillock-green-295076\'>HILLOCK GREEN</a>',project_type:'Non-Landed',region:'OCR',total_unit:474,cum_unit_sold:316,unit_sold_in_month:36,lowest_price:1990,median_price:2236,highest_price:2471},{project_name:'<a href=\'/project/residential/lentor-mansion-295269\'>LENTOR MANSION</a>',project_type:'Non-Landed',region:'OCR',total_unit:533,cum_unit_sold:488,unit_sold_in_month:28,lowest_price:2153,median_price:2237,highest_price:2321},{project_name:'<a href=\'/project/residential/lentoria-295128\'>LENTORIA</a>',project_type:'Non-Landed',region:'OCR',total_unit:267,cum_unit_sold:162,unit_sold_in_month:22,lowest_price:2075,median_price:2253,highest_price:2440},{project_name:'<a href=\'/project/residential/hillhaven-295126\'>HILLHAVEN</a>',project_type:'Non-Landed',region:'OCR',total_unit:341,cum_unit_sold:245,unit_sold_in_month:16,lowest_price:1881,median_price:2168,highest_price:2288},{project_name:'<a href=\'/project/residential/the-myst-295021\'>THE MYST</a>',project_type:'Non-Landed',region:'OCR',total_unit:408,cum_unit_sold:287,unit_sold_in_month:15,lowest_price:1940,median_price:2126,highest_price:2339},{project_name:'<a href=\'/project/residential/north-gaia-293609\'>NORTH GAIA</a>',project_type:'Executive Condominium',region:'OCR',total_unit:616,cum_unit_sold:572,unit_sold_in_month:13,lowest_price:1267,median_price:1310,highest_price:1424}] }); }); </script> <div id="xtnrnr" class="watablecontainer"></div> </div> </div> </div> </div> <div class='ja-typo'> <div class='ja-typo-blockswrap clearfix'> <h1 class='ja-typo-title'>New record prices for the month of October 2024</h1> <div class='ja-typo-blockrow cols-1 clearfix'> <div class='ja-typo-block last clearfix'> <center> <h6>Note: Excludes projects launched in the month.<br>Source: URA, <a href='https://www.edgeprop.sg' target='_blank'><b style='color:#3377bb;font-size:120%'>https://www.edgeprop.sg</b></a></h6> </center> <link rel="stylesheet" href="/sites/all/modules/analytic/css/watable.css"> <script src="/sites/all/modules/analytic/js/jquery.watable.js"></script> <script type='text/javascript' language='javascript'> $(document).ready(function() { $('#ssilpc').html(''); var table = $('#ssilpc').WATable({ debug: false, // Prints some debug info to console //filter: true, // Show filter fields sorting: true, // Enable sorting sortEmptyLast: true, // Empty values will be shown last columnPicker: false, // Show the columnPicker button pageSize: 6, // Initial pagesize pageSizes: [10,20,50,100,200], // Set custom pageSizes. Leave empty array to hide button. hidePagerOnEmpty: true, // Removes the pager if data is empty. checkboxes: true, // Make rows checkable. (Note. You need a column with the 'unique' property) checkAllToggle: true, // Show the check-all toggle preFill: true, // Initially fills the table with empty rows (as many as the pagesize). types: { // Following are some specific properties related to the data types string: { //filterTooltip: "Giggedi..." // What to say in tooltip when hoovering filter fields. Set false to remove. //placeHolder: "Type here..." // What to say in placeholder filter fields. Set false for empty. }, number: { decimals: 0 // Sets decimal precision for float types }, bool: { //filterTooltip: false }, date: { utc: false, // Show time as universal time, ie without timezones. format: 'd MMM yy', // The format. See all possible formats here http://arshaw.com/xdate/#Formatting. datePicker: true // Requires "Datepicker for Bootstrap" plugin (http://www.eyecon.ro/bootstrap-datepicker). } }/*, actions: { // This generates a button where you can add elements. filter: true, // If true, the filter fields can be toggled visible and hidden. columnPicker: true // if true, the columnPicker can be toggled visible and hidden. }*/ }).data('WATable'); //This step reaches into the html data property to get the actual WATable object. Important if you want a reference to it as we want here. table.setData({ cols: {project_name:{type:'string',friendly:'Project Name'},project_type:{type:'string',friendly:'Project Type'},region:{type:'string',friendly:'Region'},total_unit:{type:'number',friendly:'Total Units'},cum_unit_sold:{type:'number',friendly:'Cumulative Units Sold'},unit_sold_in_month:{type:'number',friendly:'Units Sold in the Month'},lowest_price:{type:'number',friendly:'Lowest Price<br>($psf)'},median_price:{type:'number',friendly:'Median Price<br>($psf)'},highest_price:{type:'number',friendly:'Highest Price<br>($psf)'}}, rows: [{project_name:'<a href=\'/project/residential/the-lakegarden-residences-295020\'>THE LAKEGARDEN RESIDENCES</a>',project_type:'Non-Landed',region:'OCR',total_unit:306,cum_unit_sold:191,unit_sold_in_month:11,lowest_price:1902,median_price:2184,highest_price:2556},{project_name:'<a href=\'/project/residential/kassia-293914\'>KASSIA</a>',project_type:'Non-Landed',region:'OCR',total_unit:276,cum_unit_sold:172,unit_sold_in_month:8,lowest_price:1875,median_price:2142,highest_price:2193},{project_name:'<a href=\'/project/residential/one-bernam-293088\'>ONE BERNAM</a>',project_type:'Non-Landed',region:'CCR',total_unit:351,cum_unit_sold:241,unit_sold_in_month:8,lowest_price:2414,median_price:2816,highest_price:3351},{project_name:'<a href=\'/project/residential/the-arcady-at-boon-keng-295233\'>THE ARCADY AT BOON KENG</a>',project_type:'Non-Landed',region:'RCR',total_unit:172,cum_unit_sold:59,unit_sold_in_month:1,lowest_price:2754,median_price:2754,highest_price:2754},{project_name:'<a href=\'/project/landed/the-carrara-293560\'>THE CARRARA</a>',project_type:'Landed',region:'RCR',total_unit:6,cum_unit_sold:4,unit_sold_in_month:1,lowest_price:3179,median_price:3179,highest_price:3179},{project_name:'<a href=\'/project/residential/provence-residence-293041\'>PROVENCE RESIDENCE</a>',project_type:'Executive Condominium',region:'OCR',total_unit:413,cum_unit_sold:413,unit_sold_in_month:1,lowest_price:1551,median_price:1551,highest_price:1551}] }); }); </script> <div id="ssilpc" class="watablecontainer"></div> </div> </div> </div> </div> <div class='ja-typo'> <div class='ja-typo-blockswrap clearfix'> <h1 class='ja-typo-title'>New submissions for the month of October 2024</h1> <div class='ja-typo-blockrow cols-1 clearfix'> <div class='ja-typo-block last clearfix'> <center> <h6>Note: Excludes projects launched in the month.<br>Source: URA, <a href='https://www.edgeprop.sg' target='_blank'><b style='color:#3377bb;font-size:120%'>https://www.edgeprop.sg</b></a></h6> </center> <link rel="stylesheet" href="/sites/all/modules/analytic/css/watable.css"> <script src="/sites/all/modules/analytic/js/jquery.watable.js"></script> <script type='text/javascript' language='javascript'> $(document).ready(function() { $('#ojftmu').html(''); var table = $('#ojftmu').WATable({ debug: false, // Prints some debug info to console //filter: true, // Show filter fields sorting: true, // Enable sorting sortEmptyLast: true, // Empty values will be shown last columnPicker: false, // Show the columnPicker button pageSize: 6, // Initial pagesize pageSizes: [10,20,50,100,200], // Set custom pageSizes. Leave empty array to hide button. hidePagerOnEmpty: true, // Removes the pager if data is empty. checkboxes: true, // Make rows checkable. (Note. You need a column with the 'unique' property) checkAllToggle: true, // Show the check-all toggle preFill: true, // Initially fills the table with empty rows (as many as the pagesize). types: { // Following are some specific properties related to the data types string: { //filterTooltip: "Giggedi..." // What to say in tooltip when hoovering filter fields. Set false to remove. //placeHolder: "Type here..." // What to say in placeholder filter fields. Set false for empty. }, number: { decimals: 0 // Sets decimal precision for float types }, bool: { //filterTooltip: false }, date: { utc: false, // Show time as universal time, ie without timezones. format: 'd MMM yy', // The format. See all possible formats here http://arshaw.com/xdate/#Formatting. datePicker: true // Requires "Datepicker for Bootstrap" plugin (http://www.eyecon.ro/bootstrap-datepicker). } }/*, actions: { // This generates a button where you can add elements. filter: true, // If true, the filter fields can be toggled visible and hidden. columnPicker: true // if true, the columnPicker can be toggled visible and hidden. }*/ }).data('WATable'); //This step reaches into the html data property to get the actual WATable object. Important if you want a reference to it as we want here. table.setData({ cols: {project_name:{type:'string',friendly:'Project Name'},project_type:{type:'string',friendly:'Project Type'},region:{type:'string',friendly:'Region'},total_unit:{type:'number',friendly:'Total Units'},cum_unit_sold:{type:'number',friendly:'Cumulative Units Sold'},unit_sold_in_month:{type:'number',friendly:'Units Sold in the Month'},lowest_price:{type:'number',friendly:'Lowest Price<br>($psf)'},median_price:{type:'number',friendly:'Median Price<br>($psf)'},highest_price:{type:'number',friendly:'Highest Price<br>($psf)'}}, rows: [{project_name:'<a href=\'/project/residential/norwood-grand-295623\'>NORWOOD GRAND</a>',project_type:'Non-Landed',region:'OCR',total_unit:348,cum_unit_sold:292,unit_sold_in_month:292,lowest_price:1895,median_price:2080,highest_price:2252},{project_name:'<a href=\'/project/residential/meyer-blue-295309\'>MEYER BLUE</a>',project_type:'Non-Landed',region:'RCR',total_unit:226,cum_unit_sold:124,unit_sold_in_month:124,lowest_price:2984,median_price:3240,highest_price:3569},{project_name:'<a href=\'/project/residential/hill-house-293891\'>HILL HOUSE</a>',project_type:'Non-Landed',region:'CCR',total_unit:72,cum_unit_sold:26,unit_sold_in_month:2,lowest_price:2934,median_price:3034,highest_price:3134},{project_name:'<a href=\'/project/landed/the-carrara-293560\'>THE CARRARA</a>',project_type:'Landed',region:'RCR',total_unit:6,cum_unit_sold:4,unit_sold_in_month:1,lowest_price:3179,median_price:3179,highest_price:3179},{project_name:'<a href=\'/project/residential/sanctuarynewton-293873\'>SANCTUARY@NEWTON</a>',project_type:'Non-Landed',region:'CCR',total_unit:38,cum_unit_sold:10,unit_sold_in_month:1,lowest_price:2659,median_price:2659,highest_price:2659},{project_name:'<a href=\'/project/residential/provence-residence-293041\'>PROVENCE RESIDENCE</a>',project_type:'Executive Condominium',region:'OCR',total_unit:413,cum_unit_sold:413,unit_sold_in_month:1,lowest_price:1551,median_price:1551,highest_price:1551}] }); }); </script> <div id="ojftmu" class="watablecontainer"></div> </div> </div> </div> </div> <div class='ja-typo'> <div class='ja-typo-blockswrap clearfix'> <h1 class='ja-typo-title'>Developer sales by month</h1> <div class='ja-typo-blockrow cols-1 clearfix'> <script type='text/javascript' src='https://www.edgeprop.sg/sites/all/modules/analytic/js/charts/highcharts3.js'></script> <script type='text/javascript' language='javascript'> jQuery(document).ready(function () { new Highcharts.Chart({chart:{backgroundColor:'rgba(255,255,255,0)',borderColor:null,renderTo:'sales-type',type:'column',animation:false},title:{text:''},xAxis:{title:{text:''},type:'datetime'},yAxis:[{title:{text:''},type:'linear',lineWidth:1,minorTickWidth:1,minorGridLineWidth:0,minorTickInterval:'auto',labels:{formatter:function() { return Highcharts.numberFormat(this.value,0); }}},{title:{text:''},type:'linear',opposite:true,linkedTo:0,lineWidth:1,minorTickWidth:1,minorGridLineWidth:0,minorTickInterval:'auto',labels:{formatter:function() { return Highcharts.numberFormat(this.value,0); }}}],tooltip:{shared:true,crosshairs:true,formatter:function() { var decimal = [0,0,0,0,0,0,0,0,0,0,0,0,0]; var prefix = ['','','','','','','','','','','','','']; var suffix = [' units',' units',' units',' units',' units',' units',' units',' units',' units',' units',' units',' units',' units'];var s = Highcharts.dateFormat("%b %Y", this.x); jQuery.each(this.points, function(i, point) { if (this.series.color != 'none') { if (typeof this.point.text != 'undefined') s += '<br>'+this.point.text; s += '<br><span style="color:' + this.series.color + ';">' + this.series.name.replace('<','&lt;').replace('>','&gt;') + '</span>: <b>' + prefix[this.series.index] + (typeof this.point.label != 'undefined' ? this.point.label : Highcharts.numberFormat(point.y,decimal[this.series.index])) + suffix[this.series.index] + '</b>' ; } }); s += '<br>Total: <b>' + prefix[prefix.length-1] + Highcharts.numberFormat(this.points[1].total,decimal[0]) + suffix[suffix.length-1] + '</b>' return s; }},plotOptions:{series:{shadow:false,animation:false,enableMouseTracking:true,lineWidth:0,turboThreshold:5000},column:{stacking:'normal',groupPadding:0.01,pointPadding:0.1,borderWidth:0}},legend:{verticalAlign:'top',borderWidth:0},series:[{name:'Non-Landed Residential',data:[[1606752000000,1049],[1609430400000,765],[1612108800000,441],[1614528000000,1081],[1617206400000,1030],[1619798400000,672],[1622476800000,692],[1625068800000,1283],[1627747200000,939],[1630425600000,642],[1633017600000,743],[1635696000000,1312],[1638288000000,519],[1640966400000,452],[1643644800000,426],[1646064000000,533],[1648742400000,533],[1651334400000,1216],[1654012800000,406],[1656604800000,754],[1659283200000,398],[1661961600000,945],[1664553600000,269],[1667232000000,227],[1669824000000,154],[1672502400000,359],[1675180800000,392],[1677600000000,481],[1680278400000,859],[1682870400000,1033],[1685548800000,274],[1688140800000,1387],[1690819200000,389],[1693497600000,207],[1696089600000,202],[1698768000000,789],[1701360000000,127],[1704038400000,271],[1706716800000,148],[1709222400000,722],[1711900800000,297],[1714492800000,223],[1717171200000,235],[1719763200000,588],[1722441600000,234],[1725120000000,430],[1727712000000,768]]},{name:'Landed Residential',data:[[1606752000000,46],[1609430400000,445],[1612108800000,97],[1614528000000,71],[1617206400000,73],[1619798400000,305],[1622476800000,89],[1625068800000,149],[1627747200000,102],[1630425600000,417],[1633017600000,126],[1635696000000,57],[1638288000000,71],[1640966400000,127],[1643644800000,33],[1646064000000,59],[1648742400000,159],[1651334400000,24],[1654012800000,12],[1656604800000,14],[1659283200000,16],[1661961600000,6],[1664553600000,471],[1667232000000,176],[1669824000000,449],[1672502400000,151],[1675180800000,39],[1677600000000,26],[1680278400000,27],[1682870400000,19],[1685548800000,22],[1688140800000,61],[1690819200000,258],[1693497600000,127],[1696089600000,21],[1698768000000,18],[1701360000000,17],[1704038400000,42],[1706716800000,18],[1709222400000,37],[1711900800000,40],[1714492800000,22],[1717171200000,43],[1719763200000,31],[1722441600000,35],[1725120000000,31],[1727712000000,21]]}]}); }); </script> <div class='ja-typo-block first clearfix'> <center> <h6>Source: URA, <a href='https://www.edgeprop.sg' target='_blank'><b style='color:#3377bb;font-size:120%'>https://www.edgeprop.sg</b></a></h6> </center> <div class='highchart'> <div id='sales-type' style='height:300px;'></div> </div> </div> </div> </div> </div> <div class='ja-typo'> <div class='ja-typo-blockswrap clearfix'> <h1 class='ja-typo-title'>Developer sales by region</h1> <div class='ja-typo-blockrow cols-1 clearfix'> <script type='text/javascript' language='javascript'> jQuery(document).ready(function () { new Highcharts.Chart({chart:{backgroundColor:'rgba(255,255,255,0)',borderColor:null,renderTo:'sales-region',type:'column',animation:false},title:{text:''},xAxis:{title:{text:''},type:'datetime'},yAxis:[{title:{text:''},type:'linear',lineWidth:1,minorTickWidth:1,minorGridLineWidth:0,minorTickInterval:'auto',labels:{formatter:function() { return Highcharts.numberFormat(this.value,0); }}},{title:{text:''},type:'linear',opposite:true,linkedTo:0,lineWidth:1,minorTickWidth:1,minorGridLineWidth:0,minorTickInterval:'auto',labels:{formatter:function() { return Highcharts.numberFormat(this.value,0); }}}],tooltip:{shared:true,crosshairs:true,formatter:function() { var decimal = [0,0,0,0,0,0,0,0,0,0,0,0,0]; var prefix = ['','','','','','','','','','','','','']; var suffix = [' units',' units',' units',' units',' units',' units',' units',' units',' units',' units',' units',' units',' units'];var s = Highcharts.dateFormat("%b %Y", this.x); jQuery.each(this.points, function(i, point) { if (this.series.color != 'none') { if (typeof this.point.text != 'undefined') s += '<br>'+this.point.text; s += '<br><span style="color:' + this.series.color + ';">' + this.series.name.replace('<','&lt;').replace('>','&gt;') + '</span>: <b>' + prefix[this.series.index] + (typeof this.point.label != 'undefined' ? this.point.label : Highcharts.numberFormat(point.y,decimal[this.series.index])) + suffix[this.series.index] + '</b>' ; } }); s += '<br>Total: <b>' + prefix[prefix.length-1] + Highcharts.numberFormat(this.points[1].total,decimal[0]) + suffix[suffix.length-1] + '</b>' return s; }},plotOptions:{series:{shadow:false,animation:false,enableMouseTracking:true,lineWidth:0,turboThreshold:5000},column:{stacking:'normal',groupPadding:0.01,pointPadding:0.1,borderWidth:0}},legend:{verticalAlign:'top',borderWidth:0},series:[{name:'OCR',data:[[1606752000000,840],[1609430400000,711],[1612108800000,261],[1614528000000,327],[1617206400000,299],[1619798400000,591],[1622476800000,352],[1625068800000,1023],[1627747200000,722],[1630425600000,668],[1633017600000,400],[1635696000000,447],[1638288000000,247],[1640966400000,303],[1643644800000,181],[1646064000000,238],[1648742400000,301],[1651334400000,235],[1654012800000,104],[1656604800000,470],[1659283200000,91],[1661961600000,674],[1664553600000,519],[1667232000000,205],[1669824000000,469],[1672502400000,324],[1675180800000,81],[1677600000000,251],[1680278400000,75],[1682870400000,52],[1685548800000,38],[1688140800000,541],[1690819200000,445],[1693497600000,185],[1696089600000,96],[1698768000000,561],[1701360000000,61],[1704038400000,177],[1706716800000,76],[1709222400000,634],[1711900800000,182],[1714492800000,159],[1717171200000,160],[1719763200000,467],[1722441600000,151],[1725120000000,187],[1727712000000,482]]},{name:'RCR',data:[[1606752000000,202],[1609430400000,426],[1612108800000,237],[1614528000000,299],[1617206400000,395],[1619798400000,218],[1622476800000,251],[1625068800000,291],[1627747200000,207],[1630425600000,241],[1633017600000,204],[1635696000000,781],[1638288000000,227],[1640966400000,182],[1643644800000,181],[1646064000000,229],[1648742400000,224],[1651334400000,821],[1654012800000,139],[1656604800000,139],[1659283200000,118],[1661961600000,96],[1664553600000,63],[1667232000000,63],[1669824000000,51],[1672502400000,43],[1675180800000,152],[1677600000000,60],[1680278400000,612],[1682870400000,847],[1685548800000,147],[1688140800000,826],[1690819200000,107],[1693497600000,71],[1696089600000,82],[1698768000000,96],[1701360000000,58],[1704038400000,109],[1706716800000,58],[1709222400000,74],[1711900800000,122],[1714492800000,59],[1717171200000,93],[1719763200000,131],[1722441600000,97],[1725120000000,258],[1727712000000,274]]},{name:'CCR',data:[[1606752000000,53],[1609430400000,73],[1612108800000,40],[1614528000000,526],[1617206400000,409],[1619798400000,168],[1622476800000,178],[1625068800000,118],[1627747200000,112],[1630425600000,150],[1633017600000,265],[1635696000000,141],[1638288000000,116],[1640966400000,94],[1643644800000,97],[1646064000000,125],[1648742400000,167],[1651334400000,184],[1654012800000,175],[1656604800000,159],[1659283200000,205],[1661961600000,181],[1664553600000,158],[1667232000000,135],[1669824000000,83],[1672502400000,143],[1675180800000,198],[1677600000000,196],[1680278400000,199],[1682870400000,153],[1685548800000,111],[1688140800000,81],[1690819200000,95],[1693497600000,78],[1696089600000,45],[1698768000000,150],[1701360000000,25],[1704038400000,27],[1706716800000,32],[1709222400000,51],[1711900800000,33],[1714492800000,27],[1717171200000,25],[1719763200000,21],[1722441600000,21],[1725120000000,16],[1727712000000,33]]}]}); }); </script> <div class='ja-typo-block first clearfix'> <center> <h6>Source: URA, <a href='https://www.edgeprop.sg' target='_blank'><b style='color:#3377bb;font-size:120%'>https://www.edgeprop.sg</b></a></h6> </center> <div class='highchart'> <div id='sales-region' style='height:300px;'></div> </div> </div> </div> </div> </div> <div class='ja-typo' style="margin-top:-1em;"> <div class='ja-typo-blockswrap clearfix'> <h4 class='ja-typo-title'>Disclaimer</h1> <div class='ja-typo-blockrow cols-1 clearfix'> <div class='ja-typo-block last clearfix'> <div style="line-height:1.5em;padding-top:5px;color:#666666;font-size:85%;text-align:justify;"> The Analytics are provided “AS IS” and we do not warranty as to its accuracy. We are not responsible or liable for any claims, damages, losses, expenses, costs or liabilities whatsoever. Please seek professional advice before relying on the Analytics. The Analytics are based on the data available at the date of publication and may be subject to further revision as and when more data is made available to us. We reserve the rights to modify, alter, delete or withdraw the Analytics at any time without notice to you. All news, information, contents and other material displayed on the Website and Services including the Postings are for your general information purpose only and are no substitute for independent research and/or verifications and should not be regarded as a substitute for professional, legal, financial or real estate advice. </div> </div> </div> </div> </div> </section> </div> </section> </div> <div class="col-xs-12 col-sm-12 col-md-4 col-lg-3 sidebar"> <div id="right"> <div class="row"> <div id="thirdpartydfp"> </div> </div> <div class="row"> <div class="col-lg-12"> <div class="region region-sidebar-top-ads"> <section id="block-block-15" class="block block-block clearfix"> <!-- /102900458/Medium_Rectangle_1_ROS --> <div id='div-gpt-ad-1503558342590-0' > <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1503558342590-0'); }); </script> </div> </section> <section id="block-block-18" class="block block-block clearfix"> <!-- /102900458/Medium_Rectangle_2_ROS --> <div id='div-gpt-ad-1503558626002-0' style='height:300px; width:300px;'> <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1503558626002-0'); }); </script> </div> </section> </div> </div> </div> <div class="row"> <div class="col-lg-12"> <div class="region region-sidebar-second"> <section id="block-block-14" class="block block-block clearfix"> <!-- /102900458/TEP_Pullout_Home --> <div id='div-gpt-ad-1457919705239-11' style='height:80px; width:300px;margin:auto;'> <script type='text/javascript'> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1457919705239-11'); }); </script> </div> </section> <section id="block-block-8" class="block block-block clearfix"> <div id="player" style="margin-bottom: 15px;"></div> <script> // 2. This code loads the IFrame Player API code asynchronously. var tag = document.createElement('script'); tag.src = "https://www.youtube.com/player_api"; var firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); // 3. This function creates an <iframe> (and YouTube player) // after the API code downloads. var player; function onYouTubePlayerAPIReady() { player = new YT.Player('player', { playerVars: { 'autoplay': 0, 'controls': 1,'autohide':1 }, height: '169', width: '100%', videoId: '9oM5gS8Wo30', events: { 'onReady': onPlayerReady} }); } // 4. The API will call this function when the video player is ready. function onPlayerReady(event) { player.cuePlaylist({'listType':'playlist','list':'PLeeYWcfpKG2b_Mphv2ulTieW2FM2bHWT-'}); player.setShuffle({shufflePlaylist:true}); player.setLoop({loopPlaylists:true}); event.target.mute(); } </script> </section> <section id="block-analytic-events-sidebar-event" class="block block-analytic-events clearfix"> <script> document.getElementsByClassName("col-xs-12 col-sm-12 col-md-4 col-lg-3 sidebar")[0].remove() </script> </section> <section id="block-analytic-watchlist" class="block block-analytic clearfix"> <div id="watchlist"> <img src="/sites/all/themes/property_theme/img/watchlist_login.jpg" alt="Watchist" usemap="#watchlist"> <map name="watchlist"> <area shape="rect" coords="84,47,181,76" href="/user/login" alt="Login"> <area shape="rect" coords="188,47,297,76" href="/user/register" alt="Register"> </map> </div> <!-- <div class="content"> <div id="watchlist_con"> <img src="/sites/all/themes/property_theme/img/hse_icon.png" width="82" height="80" alt="Watchlist"> <div class="watchlist">Watchlist</div> <div class="monitor">Track your properties!</div> <div class="btn_login"><a id="w_user_login" href="/user/login">Login</a></div> <div class="btn_register"><a id="w_user_register" href="/user/register">Register</a></div> </div><!-- /.content --> <!-- </div> --> </section> </div> </div> </div> <div class="row"> <div class="col-lg-12"> </div> </div> </div> </div> </div> </div> </div> </div> </div> <script> if (window.addEventListener) { window.addEventListener('load', downloadJSAtOnload, false); } else if (window.attachEvent) { window.attachEvent('onload', downloadJSAtOnload); } else { window.onload = downloadJSAtOnload; } </script> <script src="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/js/js_V86dowogxu-ZV3k-OF4F0WCiTWykpYxLnkDpbDPTUKg.js?6CucwJlkEJLNEHYq3nh7RVwVGrO_H4oy"></script> <script src="https://dkc9trqgco1sw.cloudfront.net/s3fs-public/js/js_FbpwIZNwgzwEuuL4Q2HOM07BOSCY5LxL_gwSK4ohQBM.js?plqNY46T3tCG_kxri9Y7pnc9gpNvNdBT"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10