//This is the test url provided by camden for the omniture.
//The prod url is commented out and will be uncommented only 
//in production environment;

//var url="http://www.camdenliving.com/s_code.js";

function GetUrl()
{
    var url="http://www.camdenliving.com/s_code_testing.js";
    var currUrl=document.location.href;
    if(currUrl.toLowerCase().search("onesitedev")==-1)
    {        
        if((currUrl.toLowerCase().search("sat."))==-1 &&
        (currUrl.toLowerCase().search("pct."))==-1 &&
        (currUrl.toLowerCase().search("unit."))==-1 &&
        (currUrl.toLowerCase().search("ocrt."))==-1 &&
        (currUrl.toLowerCase().search("localhost"))==-1)
        {
            url="http://www.camdenliving.com/s_code.js";            
        }
    }
    return url;
   
}
//Sets the site name .This site name is used to define page names 
//for omniture 
var sitename=null;
if(document.getElementById('siteNameDiv')!=null)
{
    sitename=document.getElementById('siteNameDiv').innerText;
}

//This function is called on the body.onload event of the pages which require omniture
//events and variables to be tracked.

function LoadOmnitureScript()
{    
    if(window.s===undefined)
    {
       //<!-- start Omniture Code -->
       //<!-- SiteCatalyst code version: H.17.
       //Copyright 1997-2008 Omniture, Inc. More info available at
       // http://www.omniture.com -->
       var bodyID = document.getElementsByTagName("body")[0]; 
       var newScript = document.createElement('script');
       newScript.type = 'text/javascript';
       newScript.src = GetUrl();
       bodyID.appendChild(newScript);
       //<!-- End SiteCatalyst code version: H.17. -->
       //<!-- end Omniture Code -->
    }
}
function SetSearchOmnitureVariables()
{ 
    InitializeRootOmnitureVariable();
    if(s!=null)
    {
       //date needed
       var  dateneeded=document.getElementById('cfaSearchCriteria_cfaSearchCriteria_txtDateNeeded');
       s.prop12=dateneeded.value;
       
       //Price range
       var dropdownIndex = document.getElementById('cfaSearchCriteria_cfaSearchCriteria_lstPriceRanges').selectedIndex;
       var dropdownValue = document.getElementById('cfaSearchCriteria_cfaSearchCriteria_lstPriceRanges')[dropdownIndex].innerHTML;
       s.prop8=dropdownValue;
       
       //ApartmentType
       dropdownIndex=document.getElementById('cfaSearchCriteria_cfaSearchCriteria_lstApartmentTypes').selectedIndex;
       dropdownValue=document.getElementById('cfaSearchCriteria_cfaSearchCriteria_lstApartmentTypes')[dropdownIndex].innerHTML;
       s.prop35=dropdownValue;
       s.eVar35= s.prop35;
       
       //Lease Terms
       dropdownIndex=document.getElementById('cfaSearchCriteria_cfaSearchCriteria_lstLeaseTerms').selectedIndex;
       dropdownValue=document.getElementById('cfaSearchCriteria_cfaSearchCriteria_lstLeaseTerms')[dropdownIndex].innerHTML;
       s.prop36=dropdownValue;
       s.eVar36=s.prop36;
       
       //Floor plan
       dropdownIndex=document.getElementById('cfaSearchCriteria_cfaSearchCriteria_lstFloor').selectedIndex;
       dropdownValue=document.getElementById('cfaSearchCriteria_cfaSearchCriteria_lstFloor')[dropdownIndex].innerHTML;
       s.prop37=dropdownValue; 
       s.eVar37=s.prop37;
       
       //set search event
       s.events="event1";
       
       //page variables
       s.pageName='apartment search:search results:home';
       s.channel='apartment search';
       s.server='RPI';
       s.prop1='apartment search:search results';
       s.prop2='apartment search:search results';
       s.prop3='apartment search:search results';
       
       /* Hierarchy Variables */
       //s.hier1='apartment search|search results'

       SendOmniture(s);
   }
   
}
//Sends variables set to omniture servers
function SendOmniture(s)
{
     <!--
     /************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
     var s_code=s.t();if(s_code)document.write(s_code)//-->  
}

//This function is called when the save price button is clicked 
//from home/default page
function SetSavePriceOmnitureVariables()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        //evars and events  
        s.eVar21="save price";
        s.prop21= s.eVar21;
        s.events="event7";  
        
         //server channel and pages
        s.server="RPI"
        s.channel="apartment search";
        s.pageName=sitename+" - "+"Save Price";
        s.pid=sitename+" - "+"Save Price";
        s.prop1="apartment search:search results:apartment detail:save price";
        s.prop2="apartment search:search results:apartment detail:save price";
        s.prop3="apartment search:search results:apartment detail:save price";
        
        SendOmniture(s);
    }
}

//This function is called when the start application button is clicked 
//from home/default and Quote pages.
function SetStartApplicationOmnitureVariables()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        //evars and events
        s.eVar21="start application";
        s.prop21= s.eVar21;
        s.events="event7";  
        
        //server channel and pages
        s.server="RPI"
        s.channel="apartment search";
        s.pageName=sitename+"-"+"Start Application";
        s.prop1="apartment search:search results:apartment detail:start application";
        s.prop2="apartment search:search results:apartment detail:start application";
        s.prop3="apartment search:search results:apartment detail:start application";
        s.pageName=sitename+"-"+"Start Application";
        
        SendOmniture(s);
    }
}
function SetSubmitApplicationParams()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        //evars and events
        s.eVar21="submit application";
        s.prop21= s.eVar21;
        s.events="event7"; 
        
        //server channel and pages
        s.server="RPI"
        s.channel="apartment search";
        s.pageName=sitename+' - '+'Start Application'+' - Step 3 of 5';
        s.prop1="apartment search:search results:apartment detail:start application";
        s.prop2="apartment search:search results:apartment detail:start application";
        s.prop3="apartment search:search results:apartment detail:start application";
        s.pid=sitename+"-"+"Start Application";
        
        SendOmniture(s);
    
     }
}
function SetChangeInfoVariables()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        //evars and events
        s.eVar21="change information";
        s.prop21= s.eVar21;
        s.events="event7";  
        
        //server channel and pages
        s.server="RPI"
        s.channel="apartment search";
        s.pageName=sitename+ " - "+"Start Application";
        s.prop1="apartment search:search results:apartment detail:start application";
        s.prop2="apartment search:search results:apartment detail:start application";
        s.prop3="apartment search:search results:apartment detail:start application";
        s.pid=sitename+" - "+"Start Application";
        
        
        SendOmniture(s);

    }
    
}
function SetScheduleAVisitOmnitureVariables()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();

        //evar and events
        s.eVar21="schedule a visit";
        s.prop21= s.eVar21;
        s.events="event7";  
        //server channel and pages
        s.server="RPI"
        s.channel="apartment search";
        s.pageName=sitename+" - "+"Schedule A Visit";
        s.pid=sitename+" - "+"Schedule A Visit";
        s.prop1="apartment search:search results:apartment detail:schedule a visit";
        s.prop2="apartment search:search results:apartment detail:schedule a visit";
        s.prop3="apartment search:search results:apartment detail:schedule a visit";
        SendOmniture(s);
    }
}	
function SetGoToSearchOmnitureVariables()
{
    LoadOmnitureScript();
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        s.events="event18";
        var currUrl=document.location.href;
        if(currUrl.toLowerCase().search("prequalify")!=-1 ||
           currUrl.toLowerCase().search("payment")!=-1 ||
           currUrl.toLowerCase().search("appointment")!= -1 )
        {
            s.prop39 = 'Go To Search'      
        }
        SendOmniture(s);
    }
}
function SetMakeAnAppointmentSubmitOmnitureVariables()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        //evars and events
        s.eVar21="schedule a visit";
        s.prop21= s.eVar21;
        s.events="event8";  
        
        //page server and channel
        s.prop1="apartment search:search results:apartment detail:schedule a visit";
        s.prop2="apartment search:search results:apartment detail:schedule a visit";
        s.prop3="apartment search:search results:apartment detail:schedule a visit";
        s.pageName=sitename+" - "+"Schedule A Visit";
        s.pid=sitename+" - "+"Schedule A Visit";
        s.server="RPI";
        s.channel="apartment search";
        
        SendOmniture(s);
    }
}

//This function is called when we call return to details from appointment_receipt.aspx
function SetReturnToDetailsOmnitureVariables()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        //events and evars
        s.events="event19";
        
        //page name,server and channel
        s.prop1="apartment search:search results:apartment detail:schedule a visit";
        s.prop2="apartment search:search results:apartment detail:schedule a visit";
        s.prop3="apartment search:search results:apartment detail:schedule a visit";
        s.pageName=sitename+" - "+"Schedule A Visit";
        s.pid=sitename+" - "+"Schedule A Visit";
        s.server='RPI'
        s.channel='apartment search'

        SendOmniture(s);
    }
}
//This function is called when the user clicks process application button during 
//start application flow 
function SetProcessApplicationOmniturevariables()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        //evars and events
        s.eVar21="Process Application";
        s.prop21= s.eVar21;
        s.events="event7";
        
        //page server and channel
        s.prop1="apartment search:search results:apartment detail:start application";
        s.prop2="apartment search:search results:apartment detail:start application";
        s.prop3="apartment search:search results:apartment detail:start application";
        s.pageName=sitename+' - '+'Start Application'+' - Step 2 of 5';
        s.pid=sitename+' - '+'Start Application'
        s.server="RPI";
        s.channel="apartment search";

        SendOmniture(s);
    }
}

//This function is called when the user clicks submit payment button during 
//start application flow 
function SetSubmitPaymentParams()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        s.eVar21="Submit Payment";
        s.prop21= s.eVar21;
        s.events="event7";
        
        //page server and channel
        s.prop1="apartment search:search results:apartment detail:start application";
        s.prop2="apartment search:search results:apartment detail:start application";
        s.prop3="apartment search:search results:apartment detail:start application";
        s.pid=sitename+" - "+"Start Application";
        s.server="RPI";
        s.channel="apartment search";
        s.pageName=sitename+' - '+'Start Application'+' - Step 4 of 5';

        SendOmniture(s);
    }
}
//This function is called when the user clicks process payment button during 
//start application flow 
function SetProcessPaymentParams()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        s.eVar21="Process Payment";
        s.prop21= s.eVar21;
        s.events="event8";
        
        //page server and channel
        s.prop1="apartment search:search results:apartment detail:start application";
        s.prop2="apartment search:search results:apartment detail:start application";
        s.prop3="apartment search:search results:apartment detail:start application";
        s.pageName=sitename+"-"+"Start Application";
        s.server="RPI";
        s.channel="apartment search";
        s.pageName=sitename+' - '+'Start Application'+' - Step 5 of 5';
        s.pid=sitename+" - "+"Start Application";
        SendOmniture(s);
    }
}
function SetBackToPaymentParams()
{
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        s.eVar21="Back To Payment";
        s.prop21= s.eVar21;
        s.events="event7";
        
        //page server and channel
        s.prop1="apartment search:search results:apartment detail:start application";
        s.prop2="apartment search:search results:apartment detail:start application";
        s.prop3="apartment search:search results:apartment detail:start application";
        s.pageName=sitename+" - "+"Start Application";
        s.pid=s.pageName;
        s.server="RPI";
        s.channel="apartment search";
        
        SendOmniture(s);
    }
}

var aryClass1Elements = new Array();
var aryClass2Elements = new Array();

function AddEvents() {
    aryClass1Elements.length = 0;
    getElementsByClassNameForArray1( 'OmnitureClass1', document.body );
    for ( var i = 0; i < aryClass1Elements.length; i++ ) 
    {
        aryClass1Elements[i].onclick = SetAptNoVars;
    }
    
    aryClass2Elements.length = 0;
    getElementsByClassNameForArray2( 'OmnitureClass2', document.body );
    for ( var i = 0; i < aryClass2Elements.length; i++ ) 
    {
        aryClass2Elements[i].onclick = SetFloorPlanVars;
    }


}

function getElementsByClassNameForArray1( strClassName, obj ) {
    if ( obj.className == strClassName ) {
        aryClass1Elements[aryClass1Elements.length] = obj;
    }
    for ( var i = 0; i < obj.childNodes.length; i++ )
        getElementsByClassNameForArray1( strClassName, obj.childNodes[i] );
}
function getElementsByClassNameForArray2( strClassName, obj ) {
    if ( obj.className == strClassName ) {
        aryClass2Elements[aryClass2Elements.length] = obj;
    }
    for ( var i = 0; i < obj.childNodes.length; i++ )
        getElementsByClassNameForArray2( strClassName, obj.childNodes[i] );
}

//This function is called when the user click on the apartment number
//retrieved from the search results.
function SetAptNoVars(e)
{
    if (!e) var e = window.event
    // e refers to the event
    //var x= e.srcElement.innerHTML;
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        
        //page , server and channel
        s.pageName=sitename+' - '+'Apartment Detail'+' - '+'Apartment'+' - '+ e.srcElement.innerHTML;
        s.channel="apartment search";
        s.server="RPI";
        s.prop1='apartment search:search results:apartment detail'
        s.prop2='apartment search:search results:apartment detail'
        s.prop3='apartment search:search results:apartment detail'
        
        s.prop38=e.srcElement.innerHTML;
        s.eVar38=e.srcElement.innerHTML;
        
        //evars and events
        s.events="event17";
        
        s.pid = sitename+' - '+'Apartment Detail'
        
        SendOmniture(s);
    }  
     
}
function SetBackToFloorPlanVars()
{
    LoadOmnitureScript();
     var currUrl=document.location.href;
    if(currUrl.toLowerCase().search("prequalify")!=-1 ||
        currUrl.toLowerCase().search("payment")!= -1 ||
        currUrl.toLowerCase().search("appointment")!= -1  )
    {
         InitializeRootOmnitureVariable();
         s.prop39='Back To Floorplans'
         s.pageName=sitename+"-"+"Start Application";
         s.pid= s.pageName=sitename+"-"+"Start Application";
         SendOmniture(s);
    }
}

//This function is called when the user click on the floor plan
//retrieved from the search results.
function SetFloorPlanVars(e)
{    
    if (!e) var e = window.event
    // e refers to the event
    if(s!=null)
    {
        InitializeRootOmnitureVariable();
        
        //evars and events
        s.events='event10'
        
        aryClass2Elements = new Array();
        getElementsByClassNameForArray2("omnitureClass3", e.srcElement.parentNode.parentNode)
        
        //page,channel and servers
        s.pid = sitename+' - '+'Floorplans'
        if(aryClass2Elements.length>0)
        {
            s.pageName=sitename+' - '+'Floorplan'+' - '+'\''+aryClass2Elements[0].innerHTML+'\''+' - '+e.srcElement.innerHTML;
        }
        else
        {
           s.pageName=sitename+' - '+'Floorplan'+' - '+e.srcElement.innerHTML;
        }
        aryClass2Elements = new Array();
        getElementsByClassNameForArray2("OmnitureClass4", e.srcElement.parentNode.parentNode)
        if(aryClass2Elements.length>0)
        {
           var siteId=document.getElementById("cfaSearchResults_cfaSearchResults_siteId");
           if(siteId!=null)
           {
                s.prop23= siteId.value+' , '+aryClass2Elements[0].value;
                s.eVar23=s.prop23;
           }
        }        
        s.channel='apartment search'
        s.server='RPI'
        s.prop1='apartment search:search results:apartment detail:floorplan details'
        s.prop2='apartment search:search results:apartment detail:floorplan details'
        s.prop3='apartment search:search results:apartment detail:floorplan details'

        SendOmniture(s);
    }
}

function InitializeRootOmnitureVariable()
{
    if(s!=null)
    {
        s.events=""
        s.pageName=""
        s.server=""
        s.channel=""
        s.pageType=""
        s.prop1=""
        s.prop2=""
        s.prop3=""
        s.prop4=""
        s.prop5=""
        s.prop6=""
        s.prop7=""
        s.prop8=""
        s.prop9=""
        s.prop10=""
        s.prop11=""
        s.prop12=""
        s.prop13=""
        s.prop14=""
        s.prop15=""
        s.prop18=""
        s.prop19=""
        s.prop21=""
        s.prop22=""
        s.prop23=""
        s.prop27=""
        s.prop38=""
        s.prop39=""
        /* Conversion Variables */
        s.campaign=""
        s.events=""
        s.eVar3=""
        s.eVar15=""
        s.eVar16=""
        s.eVar17=""
        s.eVar18=""
        s.eVar19=""
        s.eVar20=""
        s.eVar21=""
        s.eVar22=""
        s.eVar23=""
        s.eVar24=""
        s.eVar25=""
        s.eVar26=""
        s.eVar27=""
        s.eVar38=""
        s.eVar39=""
        /* Hierarchy Variables */
        s.hier1=""
    }
}

