/*******************************************************************
  V2.0 - Added targeted banner support for .banner()

  NAVHISTORY OBJECT
  ar1 = [['lev0_name|lev0_title'],...,['levN_name|levN_title']]
  nav.parent(0) returns 'lev0_title' (e.g. root)
  nav.parent('lev{i}_name') returns 'lev{i}_title'
  nav.parent() returns 'level{i-1}_title' (e.g. parent of last child}
*******************************************************************/
function navHistory(ar,pfx){
  this.parent=function(s){
    if(typeof s=='number')return ar[s][1]
    if(typeof s=='undefined') s='~PARENT' // return ar[Math.max(0,ar.length-2)][1]
    return ar[Math.max(0,this.indexOf(s)-1)][1]
  }
  this.indexOf=function(s){
    for(var i=ar.length-1; i>=0; i--) if(ar[i][0]==s)return i
    return ar.length - 1 
  }
  this.title=function(){
    for(var r='Sino Group ',i=0; i<ar.length; i++){
      r+=r?' > ':''
          r+=ar[i][1]
    }
    return r
  }
  this.history=function(){
    for(var r='',i=0; i<ar.length; i++){
      r+=r?' > ':''
      if(i<ar.length-1)
        // r+='<A href="'+(ar[i][0] ? pfx+ar[i][0] : '#')+'" class=breadcrumb>'+ar[i][1]+'</A>'
        if(ar[i][2])
          r+='<A href="'+pfx+ar[i][2]+'" class=breadcrumb><u>'+ar[i][1]+'</u></A>'
        else
          r+='<font class=breadcrumb>'+ar[i][1]+'</font>'
      else
        r+='<font class=breadcrumb_on>'+ar[i][1]+'</font>'
    }
    return r
  }
  /*******************************************************************
    SIDEBAR IMAGE ROTATOR
    Number of sidebar images defined in global sidebarCount['{section}']
    Format e.g.: "sidebar_about2.jpg", "sidebar_pm1.jpg"
  *******************************************************************/
  this.sidebar=function(){
    var section = (ar[ar.length-1][0]+"").split("_")[0];
    
    if (section == "")
        section = "about";
    var section2 = (ar[ar.length-1][0]+"").split("_")[2];   //check xid for properties section
    if (section2 == "res") 
        section = "res";
    else if (section2 == "ind" || section2 == "off")
        section = "ind";
    else if (section2 == "ret")
        section = "shop";
    var count = sidebarCount[section]; //defined at data.js
    if (count=="undefined"||isNaN(count)){ //if not defined, default is "sidebar_about1.jpg"
        count = 1;
        section = "about";
    }

   return "images/sidebar_" + section + (1 + Math.floor (Math.random() * count)) + ".jpg";
  }
  /*******************************************************************
    AD BANNER ROTATOR
    Returns random HTML <IMG/> tag
    Uses global bannerContent:

    var bannerContent = [ // V1.x
        'banner1.jpg','url1','title1','target1',
        'banner2.jpg','url2','title2','target2',
        ...
      ]

    var bannerContent = [ // V2.0
        ['prop_sale',[
          'property_for_sale_banner_1.jpg','default.asp?xid=xxx',
          'property_for_sale_banner_2.jpg','default.asp?xid=xxx',
          ...
        ]],
        ['prop_lease',[
          'property_for_lease_banner_1.jpg','default.asp?xid=xxx',
          'property_for_lease_banner_2.jpg','default.asp?xid=xxx',
          ...
        ]],
        ['shop',[
          'shop_banner_1.jpg','default.asp?xid=xxx',
          'shop_banner_2.jpg','default.asp?xid=xxx',
          ...
        ]],
        ['hotels',[
          'hotels_banner_1.jpg','default.asp?xid=xxx',
          'hotels_banner_2.jpg','default.asp?xid=xxx',
          ...
        ]],
        ['club',[
          'club_banner_1.jpg','default.asp?xid=xxx',
          'club_banner_2.jpg','default.asp?xid=xxx',
          ...
        ]],
        ['media',[
          'media_banner_1.jpg','default.asp?xid=xxx',
          'media_banner_2.jpg','default.asp?xid=xxx',
          ...
        ]],
        ['*',[ // all other sections
          'banner_1.jpg','default.asp?xid=xxx',
          'banner_2.jpg','default.asp?xid=xxx',
          ...
        ]]
      ]
  *******************************************************************/
  this.banner_v1x = function(w,h){ // for v1.x legacy support
    var ar = bannerContent
    var i = Math.floor(Math.random()*(ar.length/4))
    return '<A href="'+ar[4*i+1]+'" target="'+ar[4*i+3]+'"><IMG border=0 src="images/'+ar[4*i]+'" width='+w+' height='+h+' alt=\"'+ar[4*i+2]+'\">'
  }
  this.banner_getArrayByContentName = function(x){
    var arEtc = []
    for(var i=0; i<this.ar.length; i++){
      if(x.indexOf(this.ar[i][0])==0){
        return this.ar[i][1]
      }
      if(this.ar[i][0]=='*') arEtc = this.ar[i][1]
    }
    return arEtc
  }
  this.banner = function(w,h,x){ // x=contentName
    this.ar = bannerContent
    if(this.ar.length == 0 || typeof this.ar[0] == 'string'){
      return this.banner_v1x(w,h)
    }
    var ar = this.banner_getArrayByContentName(typeof x!='undefined'?x:'*')
    var i = Math.floor(Math.random()*(ar.length/4))
    return '<A href="'+ar[4*i+1]+'" target="'+ar[4*i+3]+'"><IMG border=0 src="images/'+ar[4*i]+'" width='+w+' height='+h+' '+(x?x:'')+'alt=\"'+ar[4*i+2]+'\">'
  }
}
