window.onresize = windowResize;
window.onscroll = windowRelocation;
var xmlHttp;
var currentLayer = "";
var currentStockIndex = 0;
var currentFourInOneTitle = "";
var currentFourInOneIndex = 0;
var noOfAjaxTrial = 0;
var stockArray = new Array();
var fourInOneArray = new Array();
var fourInOneTitleArray = new Array();
var updateDateArray = new Array();
function search_result_init() {
if (document.getElementById("divEstateList")) {
var h = document.getElementById("tdSearchResult").offsetHeight - 1;
document.getElementById("divEstateList").style.height = h;
}
var index = document.getElementById("displayDetailLayer");
if (index.value != "") {
showDetailLayer(index.value);
index.value = "";
} else {
index = document.getElementById("displayFourInOneLayer");
if (index.value != "") {
showFourInOneLayer(index.value);
index.value = "";
}
}
}
function selectStockType(type) {
var frm = document.formAdvanceSearch;
frm.stockType.value = type;
frm.target = "";
frm.action = "index.jsp";
frm.submit();
}
function selectPage(obj) {
var frm = document.formAdvanceSearch;
frm.page.value = obj.options[obj.selectedIndex].value;
frm.target = "";
frm.action = "index.jsp";
frm.submit();
}
function previousPage() {
var frm = document.formAdvanceSearch;
frm.page.value--;
frm.target = "";
frm.action = "index.jsp";
frm.submit();
}
function nextPage() {
var frm = document.formAdvanceSearch;
frm.page.value++;
frm.target = "";
frm.action = "index.jsp";
frm.submit();
}
function selectEstate(est_id) {
var frm = document.formAdvanceSearch;
frm.page.value = 1;
frm.sortBy.value = frm.selectSort.options[frm.selectSort.selectedIndex].value;
frm.orderBy.value = "DESC";
frm.stockId.value = "";
frm.estId.value = est_id;
frm.target = "";
frm.action = "index.jsp";
frm.submit();
}
function selectTopEst(ele, est_id, distIdHK, distIdKN, distIdNT, pick_dist_hk, pick_dist_kn, pick_dist_nt) {
var frm = document.formAdvanceSearch;
frm.page.value = 1;
frm.sortBy.value = frm.selectSort.options[frm.selectSort.selectedIndex].value;
frm.orderBy.value = "DESC";
// frm.distIdHK.value = distIdHK;
// frm.distIdKN.value = distIdKN;
// frm.distIdNT.value = distIdNT;
// frm.pick_dist_hk.value = pick_dist_hk;
// frm.pick_dist_kn.value = pick_dist_kn;
// frm.pick_dist_nt.value = pick_dist_nt;
frm.estId.value = est_id;
frm.estName.value = ele.innerHTML;
frm.target = "";
frm.action = "index.jsp";
frm.submit();
}
function sort(sb, ob) {
var frm = document.formAdvanceSearch;
frm.page.value = "1";
frm.sortBy.value = sb;
if (ob=="") ob = (frm.orderBy.value == "ASC" ? "DESC" : "ASC");
frm.orderBy.value = ob;
frm.target = "";
frm.action = "index.jsp";
frm.submit();
}
function openMap(est_id) {
window.open("http://www.midlandmap.hk/map_hk/index.jsp?pisEstId=" + est_id);
}
function openEbook(est_id) {
window.open("http://app.midland.com.hk/residential_ebook/index.jsp?estId=" + est_id);
}
function previousStock() {
if (currentStockIndex == 0) {
document.getElementById("displayDetailLayer").value = finder_pageSize - 1;
previousPage();
} else {
document.getElementById('mapframe').src = "images/spacer.gif";
setTimeout("showDetailLayer("+(currentStockIndex-1)+");",500);
}
}
function nextStock() {
if (currentStockIndex == stockArray.length-1) {
document.getElementById("displayDetailLayer").value = 0;
nextPage();
} else {
document.getElementById('mapframe').src = "images/spacer.gif";
setTimeout("showDetailLayer("+(currentStockIndex+1)+");",500);
}
}
function GetXmlHttpObject() {
var xmlHttp=null;
try {
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
} catch (e) {
// Internet Explorer
try {
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
function showDetailLayer(i) {
noOfAjaxTrial = 0;
showDetailLayerLoad(i);
}
function showDetailLayerLoad(i) {
if (isNaN(i)) return false;
if (i > stockArray.length-1) return false;
currentStockIndex = i;
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null) {
alert ("Your browser does not support AJAX!");
return false;
} else {
noOfAjaxTrial++;
currentLayer = "detail";
document.body.style.overflow = "hidden";
document.body.className = "hide";
if (document.getElementById("div_dist_hk")) hideAllPickList();
document.getElementById("maskLayer").className = "maskLayer_detail";
document.getElementById("maskLayer").style.height = document.body.scrollHeight;
document.getElementById("maskLayer").style.width = document.body.scrollWidth + 20;
document.getElementById("maskLayer").style.opacity = "0.60";
document.getElementById("maskLayer").style.display = "block";
document.getElementById("detailLayer").style.height = document.body.offsetHeight - 50;
document.getElementById("detailLayer").style.top = document.body.scrollTop+document.body.offsetHeight/2 - 50;
document.getElementById("detailLayer").innerHTML = "

";
document.getElementById("detailLayer").style.display = "block";
xmlHttp.onreadystatechange = detailStateChanged;
xmlHttp.open("GET",stockArray[currentStockIndex][1],true);
xmlHttp.send(null);
}
return false;
}
function hideDetailLayer() {
document.getElementById("detailLayer").innerHTML = "";
document.getElementById("detailLayer").style.display = "none";
document.getElementById("maskLayer").className = "maskLayer";
document.getElementById("maskLayer").style.display = "none";
document.body.className = "";
document.body.style.overflow = "auto";
}
function detailStateChanged() {
if (xmlHttp.readyState==4) {
if (xmlHttp.status==200 && xmlHttp.responseText.indexOf("divStockInfoHeader")>-1) {
finder_page = eval(finder_page);
finder_pageSize = eval(finder_pageSize);
finder_noOfStock = eval(finder_noOfStock);
currentStockIndex = eval(currentStockIndex);
var innerHTML = "";
innerHTML += "";
if ((finder_page-1)*finder_pageSize+1+currentStockIndex > 1) innerHTML += " ";
innerHTML += " | ";
innerHTML += "";
innerHTML += "";
innerHTML += "  | ";
innerHTML += "更新日期: " + updateDateArray[currentStockIndex] + " | ";
innerHTML += " | ";
innerHTML += "
";
innerHTML += xmlHttp.responseText;
innerHTML += " | ";
innerHTML += "";
if ((finder_page-1)*finder_pageSize+1+currentStockIndex < finder_noOfStock) innerHTML += " ";
innerHTML += " | ";
innerHTML += "
";
//document.getElementById("detailLayer").filters[0].apply();
document.getElementById("detailLayer").innerHTML = innerHTML;
//document.getElementById("detailLayer").filters[0].play();
detailReLocation();
resizeDetailLayerHeight();
document.getElementById("detailBody").style.backgroundColor = "#FFFFFF";
} else if (noOfAjaxTrial<5) {
setTimeout("showDetailLayerLoad(currentStockIndex)",10000);
/*
var innerHTML = "";
innerHTML += "| ";
innerHTML += "";
innerHTML += "";
innerHTML += " | ";
innerHTML += "
";
document.getElementById("detailLayer").innerHTML = innerHTML;
*/
} else {
hideDetailLayer();
}
}
}
function showFourInOneLayer(i) {
noOfAjaxTrial = 0;
showFourInOneLayerLoad(i);
}
function showFourInOneLayerLoad(i) {
if (isNaN(i)) return false;
currentFourInOneIndex = i;
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null){
alert ("Your browser does not support AJAX!");
return false;
}else{
noOfAjaxTrial++;
currentLayer = "fourInOne";
currentFourInOneTitle = fourInOneTitleArray[currentFourInOneIndex][0];
document.body.style.overflow = "hidden";
document.body.className = "hide";
if (document.getElementById("div_dist_hk")) hideAllPickList();
// document.getElementById("spanSuperBanner").style.display = "none";
document.getElementById("maskLayer").className = "maskLayer_detail";
document.getElementById("maskLayer").style.height = document.body.scrollHeight;
document.getElementById("maskLayer").style.width = document.body.scrollWidth + 20;
document.getElementById("maskLayer").style.opacity = "0.60";
document.getElementById("maskLayer").style.display = "block";
document.getElementById("fourInOneLayer").style.height = document.body.offsetHeight - 50;
document.getElementById("fourInOneLayer").style.top = document.body.scrollTop+document.body.offsetHeight/2 - 50;
document.getElementById("fourInOneLayer").innerHTML = "";
document.getElementById("fourInOneLayer").style.display = "block";
xmlHttp.onreadystatechange = fourInOneStateChanged;
xmlHttp.open("GET",fourInOneArray[currentFourInOneIndex][0],true);
xmlHttp.send(null);
}
return false;
}
function hideFourInOneLayer() {
document.getElementById("fourInOneLayer").innerHTML = "";
document.getElementById("fourInOneLayer").style.display = "none";
document.getElementById("maskLayer").className = "maskLayer";
document.getElementById("maskLayer").style.display = "none";
// document.getElementById("spanSuperBanner").style.display = "block";
document.body.className = "";
document.body.style.overflow = "auto";
}
function fourInOneStateChanged() {
if (xmlHttp.readyState==4) {
if (xmlHttp.status==200) {
var innerHTML = "";
innerHTML += "";
innerHTML += "";
innerHTML += " ";
innerHTML += "單位綜合資訊 - " + currentFourInOneTitle + " | ";
innerHTML += " | ";
innerHTML += "
";
innerHTML += xmlHttp.responseText;
innerHTML += " | ";
innerHTML += "
";
//document.getElementById("detailLayer").filters[0].apply();
document.getElementById("fourInOneLayer").innerHTML = innerHTML;
//document.getElementById("detailLayer").filters[0].play();
fourInOneReLocation();
resizeFourInOneLayerHeight();
document.getElementById("detailBody").style.backgroundColor = "#FFFFFF";
} else if (noOfAjaxTrial<5) {
setTimeout("showFourInOneLayerLoad(currentFourInOneIndex)",10000);
/*
} else if (xmlHttp.status==500) {
var innerHTML = "";
innerHTML += "| ";
innerHTML += "";
innerHTML += "";
innerHTML += " | ";
innerHTML += "
";
document.getElementById("detailLayer").innerHTML = innerHTML;
*/
} else {
hideFourInOneLayer();
}
}
}
function windowResize() {
if (currentLayer == "detail") {
resizeDetailLayerHeight();
}
if (currentLayer == "fourInOne") {
resizeFourInOneLayerHeight();
}
}
function resizeDetailLayerHeight() {
if (document.getElementById("detailBody")) {
document.getElementById("div_detail_container").style.height = document.body.clientHeight - 110 - document.getElementById("divStockInfoHeader").clientHeight;
document.getElementById("maskLayer").style.height = document.body.scrollHeight;
document.getElementById("maskLayer").style.width = document.body.scrollWidth + 20;
}
}
function resizeFourInOneLayerHeight(){
if (document.getElementById("detailBody")){
document.getElementById("maskLayer").style.height = document.body.scrollHeight;
document.getElementById("maskLayer").style.width = document.body.scrollWidth + 20;
document.getElementById("fourInOneLayer").style.width = document.body.clientWidth;
}
}
function windowRelocation() {
if (currentLayer == "detail") {
detailReLocation();
}
if (currentLayer == "fourInOne") {
fourInOneReLocation();
}
}
function detailReLocation() {
document.getElementById("detailLayer").style.top = document.body.scrollTop + 20;
}
function fourInOneReLocation(){
if (document.getElementById("fourInOneLayer").style.display == "block") {
var detailTableHeight = document.getElementById("IntegratedDetailTable").style.height;
detailTableHeight = eval(detailTableHeight.replace(/px/i, ""));
var bodyTop;
if(typeof(window.pageYOffset)=='number') {
bodyTop = window.pageYOffset;
} else {
bodyTop = document.body.scrollTop;
}
var space = (document.body.clientHeight - detailTableHeight) / 2 - 50;
if (space < 20) space = 20;
document.getElementById("fourInOneLayer").style.top = bodyTop + space;
}
}