﻿// JScript File
function showDark() {
    document.getElementById('darkBackgroundLayer').style.display='inline';
}

function hideDark() {
    document.getElementById('darkBackgroundLayer').style.display='none';
}

function getPlayerTop() {
        
    var playerTop;

    if (window.pageYOffset) playerTop = window.pageYOffset;
    if (document.body.scrollTop) playerTop = document.body.scrollTop;
    if (document.documentElement.scrollTop) playerTop = document.documentElement.scrollTop;
    
    if (playerTop) {
        playerTop = (playerTop + 30);
    } else {
        playerTop = '30';
    }
    
    return playerTop;
}

function getFlashMovieObject(movieName)
{
  if (window.document[movieName]) 
  {
      return window.document[movieName];
  }
  if (navigator.appName.indexOf("Microsoft Internet")==-1)
  {
    if (document.embeds && document.embeds[movieName])
      return document.embeds[movieName]; 
  }
  else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
  {
    return document.getElementById(movieName);
  }
}

function isMacFireFox() {

  var userAgent = navigator.userAgent.toLowerCase();
  if (userAgent.indexOf('mac') != -1 && userAgent.indexOf('firefox')!=-1) {
    return true;
  }

}
 
//Video Player Function
function showVideoPlayer(videoName, playerLoc, title) {

   if (document.getElementById("videoPlayer")) {

        var so = new SWFObject(playerLoc, "player", "532", "363", "8", "#575347");
        so.addVariable("inMovieURL", videoName);
        so.addVariable("autoStart", "true");
        so.addParam("allowScriptAccess", "always");

	if (isMacFireFox()!=true) {
		so.addParam("wmode","transparent");
	}

        so.write("flashvideoPlayer");
        document.getElementById("videoPlayer").style.display='inline';
        showDark();
   }
   
   document.getElementById('videoPlayerTitle').innerHTML = title;

}

function player() {	
		return document.getElementById("player");
	}

function closePopUp(popUpId,removeDark) {

    //For special situations
    switch(popUpId)
    {
        case 'interactiveMap':
            if (document.getElementById('flashcontent')) document.getElementById('flashcontent').innerHTML='';
            break;
            
        case "videoPlayer":
            hideDark();
            document.getElementById("videoPlayer").style.display='inline';
            document.getElementById("flashvideoPlayer").innerHTML='';
            break;
        
        case "emailSend":
            if (document.getElementById('emailAddress_PopUp')) document.getElementById('emailAddress_PopUp').value = '';
            if (document.getElementById('emailContent_Success')) document.getElementById('emailContent_Success').style.display='none';
            if (document.getElementById('emailContent')) document.getElementById('emailContent').style.display='inline';
            if (document.getElementById('emailError')) document.getElementById('emailError').innerHTML = '';
            break;
            
        case "emailToFriend":
            if (document.getElementById('emailAddressFriend_PopUp')) document.getElementById('emailAddressFriend_PopUp').value = '';
            if (document.getElementById('emailNoteFriend_PopUp')) document.getElementById('emailNoteFriend_PopUp').value = '';
            if (document.getElementById('emailToPropertyId')) document.getElementById('emailToPropertyId').innerHTML = '';
            break;
    }
    
    if (document.getElementById(popUpId)) document.getElementById(popUpId).style.display='none';
    if (removeDark=='y') { hideDark() }
    
}

function showIMap(whichMap, neighborhood, url, propertyId, title) {
   if (document.getElementById("interactiveMap")) {
   
        document.getElementById("interactiveMap").style.display='inline';
        document.getElementById("mapSelector").style.display='none';
        
        if (whichMap =='south') {
            document.getElementById("popMapSelector_North").style.display='inline';
            document.getElementById("popMapSelector_South").style.display='none';
        } else if (whichMap=='north') {
            document.getElementById("popMapSelector_North").style.display='none';
            document.getElementById("popMapSelector_South").style.display='inline';
        } else {
            document.getElementById("popMapSelector_North").style.display='none';
            document.getElementById("popMapSelector_South").style.display='none';
        }

        var so = new SWFObject(url, "interactiveMap", "551", "501", "9", "#FFFFFF");
        so.addParam("align", "left");
        so.addParam("quality", "high");
        if (isMacFireFox()!=true) {
		so.addParam("wmode","transparent");
	    }
	    if (propertyId.length!=0) {
            so.addVariable("lot",propertyId);
        }
        so.addVariable("whichMap", whichMap);
        so.addVariable("neighborhood", neighborhood);
        so.addVariable("detailURL", "/Real-Estate/");
        so.addVariable("homeURL", "/Assets/Flash/iMap/");
        so.addVariable("defaultImage", "http://67.192.203.60/Images/property_unavailable.gif");
        so.write("flashcontent");
        
        document.getElementById('mapTitle').innerHTML = title;

        showDark();
   }
}

function showIMapSelector() {
    document.getElementById("popMapSelector_North").style.display='none';
    document.getElementById("popMapSelector_South").style.display='none';

    if (document.getElementById("interactiveMap")) document.getElementById("interactiveMap").style.display='inline';
    if (document.getElementById("mapSelector")) document.getElementById("mapSelector").style.display='inline';
    showDark();
}

function showSignature(popUpId, whichCourse) {

    switch(whichCourse)
    {
        case "ralston":
            var so = new SWFObject("../Assets/Flash/signatureRalston.swf", "signatureRalston", "636", "316", "9", "#FFFFFF");
            so.addParam("align", "left");
            so.addParam("quality", "high");
            if (isMacFireFox()!=true) {
		        so.addParam("wmode","transparent");
		    }
            so.write("courseContent");
            
            document.getElementById(popUpId).style.display='inline';
            document.getElementById('signatureTitle').innerHTML = 'SIGNATURE HOLES - Ralston Creek';
            showDark();
            break;
            
        case "beresford":

	    var so = new SWFObject("../Assets/Flash/signatureBeresford.swf", "signatureBeresford", "636", "316", "9", "#FFFFFF");
            so.addParam("align", "left");
            so.addParam("quality", "high");
            if (isMacFireFox()!=true) {
		so.addParam("wmode","transparent");
	}
            so.write("courseContent");
            
            document.getElementById(popUpId).style.display='inline';
            document.getElementById('signatureTitle').innerHTML = 'SIGNATURE HOLES - Beresford Creek';
            showDark();
            break;
    } 
       
}

function showRequestInfo(propertyId, address, neighborhood, bedrooms, fullBath, sqft, builder, price, img) {
    
    if (document.getElementById("requestShowing")) {
        document.getElementById("requestShowing").style.display='inline';
        document.getElementById("requestShowing").style.top = getPlayerTop() + 'px';
        
         //LOAD PROPERTY INFORMATION INTO R-INFO PANEL
        document.getElementById("requestShowingImage").src = img;
        
        var bedbath = '';
        if (bedrooms.length > 0) { bedbath = bedrooms + ' Bed / ' };
        if (fullBath.length > 0) { bedbath += fullBath + ' Bath'  };
        
        var details = neighborhood
        if (bedbath.length > 0) { details += '<br/>' + bedbath };
        if (sqft.length > 0) { details += '<br/>' + sqft +  ' sq. ft.' };
        if (price.length > 0) { details += '<br/>' + price };
        
        document.getElementById("requestShowingDetails").innerHTML = details
        
        if (document.getElementById('requestShowingProperty')) document.getElementById('requestShowingProperty').innerHTML = address;
        if (document.getElementById('requestShowingPropertyId')) document.getElementById('requestShowingPropertyId').innerHTML = propertyId;
        if (document.getElementById('requestShowingError')) document.getElementById('requestShowingError').innerHTML = '';
        if (document.getElementById('requestShowingEmail')) document.getElementById('requestShowingEmail').value = '';
        if (document.getElementById('requestShowingPhone')) document.getElementById('requestShowingPhone').value = '';
        if (document.getElementById('requestShowingName')) document.getElementById('requestShowingName').value = '';  
        if (document.getElementById('txtAgent')) document.getElementById('txtAgent').value = 'No Preference';
        if (document.getElementById('requestShowingSuccess')) document.getElementById('requestShowingSuccess').style.display='none'; 
        
        if (document.getElementById('requestShowingContent')) document.getElementById('requestShowingContent').style.display='inline';
        if (document.getElementById('requestShowingButtons')) document.getElementById('requestShowingButtons').style.display='inline';
        if (document.getElementById('requestShowingMessage')) document.getElementById('requestShowingMessage').style.display='none';
        if (document.getElementById('requestShowingFail')) document.getElementById('requestShowingFail').style.display='none';
        
        showDark();
   }
   
}

function showPortfolioAdd(propertyId, address, neighborhood, bedrooms, fullBath, sqft, builder, price, img) {

    //LOAD THE ELEMENTS INTO THE PORTFOLIO PANEL
    document.getElementById("propertyPopAddress1").innerHTML = address;
    document.getElementById("propertyPopAddress2").innerHTML = address;            
    document.getElementById("propertyPopId").innerHTML = propertyId;
    document.getElementById("propertyPopImage").src = img;
    
    var bedbath = '';
    if (bedrooms.length > 0) { bedbath = bedrooms + ' Bed / ' };
    if (fullBath.length > 0) { bedbath += fullBath + ' Bath'  };
    
    var details = neighborhood
    if (bedbath.length > 0) { details += '<br/>' + bedbath };
    if (sqft.length > 0) { details += '<br/>' + sqft +  ' sq. ft.' };
    if (price.length > 0) { details += '<br/>' + price };
    
    document.getElementById("propertyPopDetails").innerHTML = details

    //REMOVE ANY PRESENT ITEMS
    document.getElementById("errMsg").innerHTML = '';
    document.getElementById("portfolioTextArea").innerHTML = '';
    document.getElementById("portfolioTextArea").value = '';
    
    //SHOW THE PANEL
    document.getElementById("portfolioAdd").style.top = getPlayerTop() + 'px';
    document.getElementById("portfolioAdd").style.display = 'inline';
    document.getElementById("propertyPopButtons").style.display='inline';
    
    showDark();
    
}

function showEmailFriend(propertyId) {
    if (document.getElementById("emailToFriend")) {
        document.getElementById("emailToFriend").style.display='inline';
        document.getElementById("emailToFriend").style.top = getPlayerTop() + 'px';
   
        if (document.getElementById("emailToPropertyId")) document.getElementById("emailToPropertyId").innerHTML = propertyId;
        if (document.getElementById("emailToTextArea")) document.getElementById("emailToTextArea").value = '';
        if (document.getElementById("emailAddressFriend_PopUp")) document.getElementById("emailAddressFriend_PopUp").value = '';
        if (document.getElementById("emailAddressYours_PopUp")) document.getElementById("emailAddressYours_PopUp").value = '';

        if (document.getElementById("emailToFriendContent")) document.getElementById("emailToFriendContent").style.display='inline';
        if (document.getElementById("emailToButtons")) document.getElementById("emailToButtons").style.display='inline';
        if (document.getElementById("emailToFriendFail")) document.getElementById("emailToFriendFail").style.display='none';
        if (document.getElementById("emailToFriendSuccess")) document.getElementById("emailToFriendSuccess").style.display='none';
        if (document.getElementById("emailToErrMsg")) document.getElementById("emailToErrMsg").style.display='none';
        
        showDark();
    }
}

function showPopUp(popUpId) {
    if (document.getElementById(popUpId)) {
        document.getElementById(popUpId).style.display='inline';
        showDark();
   }
}

function isEmail (s)
    {      
        // there must be >= 1 character before @, so we
        // start looking at character position 1 
        // (i.e. second character)
        var i = 1;
        var sLength = s.length;

        // look for @
        while ((i < sLength) && (s.charAt(i) != "@"))
        { i++
        }

        if ((i >= sLength) || (s.charAt(i) != "@")) return false;
        else i += 2;

        // look for .
        while ((i < sLength) && (s.charAt(i) != "."))
        { i++
        }

        // there must be at least one character after the .
        if ((i >= sLength - 1) || (s.charAt(i) != ".")) return false;
        
	    else return true;

    }
    
function replaceChars(s)
    {
        s = s.replace('*','')
        s = s.replace('<','&#60;');
        s = s.replace(':','');
        s = s.replace('-','');
        
        return s
    }