function StringBuffer() { this.__strings__ = new Array; } StringBuffer.prototype.append = function (str) { this.__strings__.push(str); }; StringBuffer.prototype.toString = function () { return this.__strings__.join(""); }; function pageLinks(buffer, pageNo, totalPages) { buffer.append(''); buffer.append(''); buffer.append(''); buffer.append(''); buffer.append(''); buffer.append('
'); if (pageNo > 1) { buffer.append(''); } else { buffer.append(' '); } buffer.append(''); var minPage = pageNo - 5; if (minPage <= 0) { minPage = 1; } var maxPage = pageNo + 5; if (maxPage > totalPages) { maxPage = totalPages; } buffer.append('
'); for (var i = minPage; i <= maxPage; i++) { if (i == pageNo) { buffer.append('' + pageNo + ''); } else { buffer.append(' ' + i + ' '); } } buffer.append('
'); buffer.append('
'); if (pageNo < totalPages) { buffer.append(''); } else { buffer.append(' '); } buffer.append('
'); } function listing_count(buffer, pageNo, totalPages, firstIndex, lastIndex, totalResults, totalMapSearchCount) { buffer.append('
'); if (totalMapSearchCount != null && totalMapSearchCount > 200) { buffer.append('
검색된 처음 200개의 리스팅만 표시됨. 지도를 확대나 축소하시거나 검색 조건을 재조정하세요.
'); } pageLinks(buffer, pageNo, totalPages); var str = '${3} 중의 ${1}-${2} 리스팅'; str = str.replace('$\{1\}', firstIndex); str = str.replace('$\{2\}', lastIndex); str = str.replace('$\{3\}', totalResults); buffer.append('

'+str+'

'); buffer.append('
'); } function listing_count(buffer, pageNo, totalPages, firstIndex, lastIndex, totalResults, totalMapSearchCount) { buffer.append('
'); pageLinks(buffer, pageNo, totalPages); /*var str = '${3} 중의 ${1}-${2} 리스팅'; //Listings 1 - 2 of 3 str = str.replace('$\{1\}', firstIndex); str = str.replace('$\{2\}', lastIndex); str = str.replace('$\{3\}', totalResults); buffer.append('

'+str+'

');*/ buffer.append('
'); if (totalMapSearchCount != null && totalMapSearchCount > 200) { buffer.append('
검색된 처음 200개의 리스팅만 표시됨. 지도를 확대나 축소하시거나 검색 조건을 재조정하세요.
'); } } function pageLinks(buffer, pageNo, totalPages) { buffer.append('
'); if(pageNo == 1){ buffer.append(''); buffer.append(''); } else { buffer.append(''); buffer.append(''); } buffer.append(''); var str = '결과 페이지 ' + pageNo + ' 중의 ' + totalPages ; buffer.append(str + ''); if(pageNo < totalPages){ buffer.append(''); buffer.append(''); } else { buffer.append(''); buffer.append(''); } buffer.append('
'); } function isSortSelected(name) { var params = '?' + getPartAfter(window.location.href, '#'); var sort = getParameterValue(params, 'c_sort'); if (sort == name) { return ' selected'; } else { return ''; } } function create_results_page(firstIndex, listings, pageNo, totalPages, lastIndex, totalResults) { var buffer = new StringBuffer(); if (listings != null && listings.length > 0) { buffer.append('
'); buffer.append('\n'); buffer.append('
'); if(typeof totalMapSearchCount === "undefined"){ totalMapSearchCount = totalResults; } buffer.append('
'); buffer.append(''); // todo: select current sort order buffer.append(''); buffer.append('
');//Sort by //buffer.append('     '); buffer.append('
'); var str = ''; if (totalMapSearchCount > 0){ str = '${1}개 찾았음 (${2}에서 ${3}까지 보여줌)'; str = str.replace('$\{1\}', totalMapSearchCount); str = str.replace('$\{2\}', firstIndex); str = str.replace('$\{3\}', lastIndex); //translator.getSimpleWord(3390, [paging.totalUnlimitedResults, paging.firstResult, paging.lastResult])} } else { str = '발견된 결과 없음!\n'; } buffer.append(str); buffer.append('
'); listing_count(buffer, pageNo, totalPages, firstIndex, lastIndex, totalResults, totalMapSearchCount); buffer.append('
'); buffer.append('
'); buffer.append(''); buffer.append('
'); buffer.append('
'); var two_col = isWide(); if(two_col) buffer.append(''); for (var i = 0; i < listings.length; i++) { if (two_col == true){ if (i % 2 == 0) { buffer.append(''); } else { buffer.append(''); } buffer.append(''); if (i % 2 == 1 || i == listings.length - 1) { buffer.append(''); } } } if (two_col == true) buffer.append('
'); } listing_text(buffer, firstIndex + i, listings[i]); if (two_col == true){ buffer.append('
'); buffer.append('
'); buffer.append('
'); listing_count(buffer, pageNo, totalPages, firstIndex, lastIndex, totalResults); buffer.append('
'); } else { buffer.append('
'); buffer.append('\n'); buffer.append('
'); buffer.append('

'); buffer.append('리스팅중에 당신의 검색 기준에 맞는 것이 없습니다'); buffer.append('

'); } return buffer.toString(); } function showText(txt, value) { return txt + ': ' + value + '
'; } // todo: unit function showSize(txt, value) { return txt + ': ' + value + '
'; } function addCommas(nStr) { nStr += ''; x = nStr.split('.'); x1 = x[0]; x2 = x.length > 1 ? '.' + x[1] : ''; var rgx = /(\d+)(\d{3})/; while (rgx.test(x1)) { x1 = x1.replace(rgx, '$1' + ',' + '$2'); } if (x2 == '.' || x2 == '.0') { x2 = ''; } return x1 + x2; } function addSpaceSeparator(nStr) { nStr += ''; x = nStr.split('.'); x1 = x[0]; x2 = x.length > 1 ? '.' + x[1] : ''; var rgx = /(\d+)(\d{3})/; while (rgx.test(x1)) { x1 = x1.replace(rgx, '$1' + ' ' + '$2'); } if (x2 == '.' || x2 == '.0') { x2 = ''; } return x1 + x2; } function removeCommas(nStr){ nStr += ''; return nStr.replace(/,/g,''); } function formatNumber(value) { if('ko' == 'en'){ return addCommas(value); } return addSpaceSeparator(value); } function nvl(txt1, txt2) { if (txt1 != null && txt1 != undefined) return txt1; return txt2; } // todo: currency function showPrice(txt, value, currency) { if (currency == 'USD') { return txt + ': $' + formatNumber(value) + '
'; } else { return txt + ': ' + formatNumber(value) + ' ' + nvl(currency, '') + '
'; } } function showPhoto(buffer, pict) { if (isNotEmpty(pict)) { if (!startsWith(pict, 'http://')) { pict = '/img/' + pict; } buffer.append(''); } } function listing_text(buffer, index, listing) { buffer.append('
'); buffer.append(''); buffer.append(''); buffer.append(''); buffer.append(''); buffer.append(''); if (listing.clientId == 5048 && listing.idxListing) { buffer.append(''); } if (listing.clientId == 826893 && listing.idxListing) { buffer.append(''); } buffer.append('
'); // todo: property type if (listing.mls != null && listing.mls != undefined) { buffer.append('

' + index + '. '); buffer.append('MLS 번호' + ': ' + listing.mls); buffer.append('
'); } // if (listing.size != null && listing.size != undefined) { // buffer.append(showSize('주택의 크기', listing.size)); // } // if (listing.landSize != null && listing.landSize != undefined) { // buffer.append(showSize('부지의 크기', listing.landSize)); // } if (listing.street != null && listing.street != undefined) { buffer.append(showText('주소', listing.street)); } if (listing.city != null && listing.city != undefined) { buffer.append(showText('도시', listing.city)); } if (listing.country == 'USA') { if (isNotEmpty(listing.zip) && isNotEmpty(listing.state)) { buffer.append('주, 우편 번호: ' + listing.state + ', ' + listing.zip + '
'); } } if (isNotEmpty(listing.country)) { buffer.append(showText('나라', listing.country)); } if (isNotEmpty(listing.price)) { buffer.append('' + getPriceHtml(listing) //showPrice('가격', listing.price, listing.cu) + '
'); } buffer.append('
이 리스팅에 대한 추가 정보를 원하시면 여기를 클릭하십시오'); buffer.append('

'); if (listing.clientId == 505743 && listing.idxListing) { buffer.append(''); } buffer.append('
'); buffer.append(''); showPhoto(buffer, listing.pict); buffer.append(''); buffer.append('
'); buffer.append('
'); buffer.append(''); buffer.append('
'); buffer.append(''); buffer.append('
'); buffer.append('
'); } function isNotEmpty(val) { return val != null && val != undefined; } function listing_text(buffer, index, listing) { var detailsUrl = getListingDetailsUrl(document.map, document.criteria, listing.id); buffer.append('
'); buffer.append('
'); buffer.append('');//address buffer.append('
'); buffer.append('
'); if (listing.mls != null && listing.mls != undefined) { buffer.append('
MLS 번호' + ': ' + listing.mls + '
'); } var unit = ' 스퀘어 피트 '; if (listing.metric != null && listing.metric != undefined && listing.metric == 'true') { unit = ' m2'; } if (listing.houseSize != null && listing.houseSize != undefined) { buffer.append('
주택의 크기: ' + formatNumber(listing.houseSize) + unit + '
'); } if (listing.landSize != null && listing.landSize != undefined) { buffer.append('
부지의 크기: ' + formatNumber(listing.landSize) + unit + '
'); } if (isNotEmpty(listing.price)) { buffer.append(''); } buffer.append('
');//listing_content_mls buffer.append('
'); if (listing.beds != null && listing.beds != undefined) { buffer.append('
침실: ' + listing.beds + '
'); } if (listing.baths != null && listing.baths != undefined) { buffer.append('
욕실: ' + listing.baths + '
'); } else { if (listing.bathsFull != null && listing.bathsFull != undefined) { buffer.append('
욕실: ' + listing.bathsFull + '
'); } if (listing.bathsHalf != null && listing.bathsHalf != undefined) { buffer.append('
반 화장실: ' + listing.bathsHalf + '
'); } } buffer.append('
');//listing_content_rooms buffer.append('
');//listing_content_box //listing_content_box_wrapper //TODO: koniec buffer.append('');//listing_picture_box buffer.append('
'); buffer.append('
'); return; buffer.append('
이 리스팅에 대한 추가 정보를 원하시면 여기를 클릭하십시오'); buffer.append(''); buffer.append(''); if (listing.clientId == 505743 && listing.idxListing) { buffer.append(''); } buffer.append(''); buffer.append(''); if (listing.clientId == 5048 && listing.idxListing) { buffer.append(''); buffer.append(''); buffer.append(''); } if (listing.clientId == 826893 && listing.idxListing) { buffer.append(''); buffer.append(''); buffer.append(''); } buffer.append(''); buffer.append(''); } function getPriceText(listing){ if(listing.price == undefined && listing.leasePrice == undefined) return ''; var price_html = ''; var price = 0; if(listing.price != undefined){ price_html ='가격: '; price = listing.price; } else if(listing.leasePrice != undefined){ price_html ='임대가: '; price = listing.leasePrice; } var display_cu = getFormValue(document.refine_search, 'cu'); if (listing.cu == null) { listing.cu = 'USD'; } if(display_cu != listing.cu ){ if(display_cu == 'USD') price_html += '$'; var exchRate = getExchangeRateValue(listing.cu)/getExchangeRateValue(display_cu); //price = price.replace(/\s/g, ''); var p = parseFloatPrice(price) * exchRate; p = Math.round(p); price_html += formatNumber(p); if(display_cu != 'USD') price_html += ' '+display_cu; price_html += ' ('; } if(listing.cu == 'USD') price_html += '$'; price_html += formatNumber(price); if(listing.cu != 'USD') price_html += ' '+listing.cu; if(display_cu != listing.cu) price_html += ')'; return price_html; }