var AMSV        = "1.6.1";
var ANSID       = "11684";              // Site ID
var AMSID       = "TID";
var AMSTEU    = "http://tste.sacbee.com/tte/blank.gif"; // Targeting Engine URL
var AMSLGC      = 1;            // Flag to indicate whether "page" query string variable is passed
var AMSJP       = "http://anrtt.tacoda.net/cr/cr";
var AMSEX       = 1000*3600*24*365*10;
var AMSC        = new Array("AMSID","sacbee_user_auth","RMID");
var AMSK        = new Array();
var AMSVL       = new Array();
var AMSN        = 0;
var AMSCR       = 0;
var AMSDPF      = 0;            // AMS Data Provider Global Flag
var ANDPF       = 0;            // TAN Data Provider Global Flag
var ANDSZ       = 5;            // Default Ad Size (TAN Only)
var ANVAC       = 'a';          // Default Area Code (TAN Only)
var ANVSZ       = ANDSZ;        // Default Ad Size (TAN Only)
var ANVPC       = 'OTH';        // Default Page Category
var ANVSC       = '';           // Default Sub Category
var ANVDT       = 0;            // Data Provider Call Action Flag (TAN Only)
var ANVDA       = 0;            // AMS Call Action Flag
var ANVAD       = 0;            // Inventory Provider Call Action Flag (TAN Only)

// Reg Cookie Site Prepend variables, Other mods in TCDA fuction.
var AMSRID = 'sacbee_user_auth';     	// Reg Cookie Name
var AMSSID = 'sb_';     							// Value to be prepeneded to the Reg Value
var AMSSRID = '';

// Read Cookie
function AMSRC(n) {
var cn = n + "=";var dc = document.cookie;
if (dc.length > 0) {
for(var b = dc.indexOf(cn);b!=-1;b=dc.indexOf(cn,b)) {
if((b!=0)&&(dc.charAt(b-1)!=' ')) {b++;continue;}
b+=cn.length;
var e=dc.indexOf(";",b);if (e==-1) e=dc.length;
return unescape(dc.substring(b,e));}}
return null;}

// Set Cookie
function AMSSC(n,v,ex,p) {
var e = document.domain.split (".");
e.reverse();
var m = e[1] + '.' + e[0];
var cc = n+"="+escape(v);
if (ex) {var exp = new Date;exp.setTime(exp.getTime()+ex);cc += ";expires="+exp.toGMTString();}
if (p) {cc += ";path="+p;}
if (m) {cc += ";domain="+m;}
document.cookie = cc;}

// Get root domain
function ANGRD() {
var rf=top.location.href;
var i=j=0;
i=rf.indexOf('/');i=rf.indexOf('/',++i);j=rf.indexOf('/',++i);
r=rf.substring(i,j);
return r;
}

// Legacy function call support
function Tacoda_AMS_DDC_addPair(k, v) {AMSAP(k,v);}

function AMSAP(k,v){
AMSK[AMSN] = k;AMSVL[AMSN] = v;AMSN++;}

function AMSTCV() {
var TVS = "";
for(var i=0;i<AMSN; i++) {
TVS += "&v_" + escape(AMSK[i].toLowerCase()) + "=" + escape(AMSVL[i]) ;}
return TVS;}

// Check for cookie blocking
function AMSDCB() {
AMSSC('TCT',1, 60*1000, '/');
if (AMSRC('TCT')==null) {return true;}
else {return false;}}

// Main function call to pass parameters/action cmds
function TCDA(ps) {

   // Parse out all value and cmds
   var pa=ps.split(";");
   for (p in pa) {
      kv=pa[p].split("=");
      k=kv[0].toUpperCase();v=kv[1];

      // Trim spaces off beginning and end of key and value
      if (k!=null) {k=ANTR(k);}
      if (v!=null) {v=ANTR(v);}

      switch (k) {
         // Site Area (sa)
         case ("SA"):
            if (v!=null&&v!='') {ANVAC=v.toLowerCase();}
            break;

         // Size (sz)
         case ("SZ"):
            if (v!=null&&v!='') {ANVSZ=v;}
            break;

         // Content Category (cc)
         case ("CC"):
            if (v!=null&&v!='') {ANVPC=v.toUpperCase();}
            break;

         // Sub Category (sc)
         case ("SC"):
            if (v!=null&&v!='') {ANVSC=v;}
            break;

         // Do TAN Call (dt)
         case ("DT"):
            ANVDT=1;
            break;

         // Do AMS Call (da)
         case ("DA"):
            ANVDA=1;
            break;

         // Do TAN Ad Call (ad)
         case ("AD"):
            ANVAD=1;
            break;

         default:
            if (v!=null&&v!='') {AMSAP(k,v);}
      }
   }
   // Process Actions
   // Data Provider Call - must come before Ad call
   if (ANVDT==1) {ANDP(ANVPC);ANVDT=0;}

   // Inventory Provider Call (Ad Call)
   if (ANVAD==1) {
      if (ANVPC!=null&&ANVPC!=''&&ANDPF==0) {ANAP(ANVAC,ANVSZ,ANVPC);}  // If Page Category set and Data Provider call not yet made, pass Page category
      else {ANAP(ANVAC,ANVSZ);}
      ANVAD=0;
   }

   // AMS Data Call
   if (ANVDA==1) {AMSDP();ANVDA=0;}

   return;}


// Trim leading and trailing spaces
function ANTR(s) {
   while (s.charAt(0) == ' ')
     s = s.substring(1);
   while (s.charAt(s.length - 1) == ' ')
     s = s.substring(0, s.length - 1);
   return s;
}

// Dummy TAN functions
function ANDP(pc) {
return;}

function ANAP(ac,sz,pc) {
return;
}

// Legacy function call
function Tacoda_AMS_DDC(tiu, tjv) {AMSDDC(tiu,tjv);}

// AMS Data Call
function AMSDP() {
AMSDDC(AMSTEU,"0.0");
}

// Call TE
function AMSDDC(tiu, tjv) {
if (AMSDPF==1) {return;} else {AMSDPF=1;}       //If DP function call has been made before, don't do it again

var ckblk = AMSDCB();
if (AMSCR==1 && !ckblk) {
   var now=new Date();
   if (AMSUC==null || AMSUC != AMSUID) {  // Reset cookie if no cookie or if cookie != cached value
      if (AMSDT * 1000 >= now.getTime()-3600000) {AMSAP("amscr","1");} //Add key/value to indicate brand new cookie
      else {AMSAP("amscr","2");} //Add key/value to indicate reclaimed cookie
      AMSSC(AMSID,AMSUID,AMSEX,"/");}
}
var ta = "?"+Math.random()+"&v="+AMSV+"&r="+escape(document.referrer)+"&p="+ANVPC+":"+ANVSC;
if (AMSLGC==1) {ta += "&page="+escape(window.location.href);
ta += "&tz="+(new Date()).getTimezoneOffset()+"&s="+ANSID;}
if (ckblk) {
ta += "&ckblk";
} else {
for(var i=0;i<AMSC.length;i++) {
var cl = AMSC[i];
var clv = AMSRC(cl);
if(cl != null) {
ta += "&c_"+escape(cl)+"="+escape(clv);
}
}
}
ta += AMSTCV();
document.write('<IMG '+'SRC="' + tiu + ta + '" STYLE="display: none" height="1" width="1" border="0">');
}

if (AMSCR == 1) {
var AMSUID="";
var AMSDT=0;
var AMSUC=AMSRC(AMSID);
if (AMSUC!=null) {
  document.write('<SCR'+'IPT SRC="'+AMSJP+'?ID='+AMSID+'&VAL='+AMSUC+'" LANGUAGE="JavaScript"></SCR'+'IPT>');
} else {
  document.write('<SCR'+'IPT SRC="'+AMSJP+'?ID='+AMSID+'" LANGUAGE="JavaScript"></SCR'+'IPT>');
}}


// Add Custom RegID to Parameter string
if ( AMSRID != '' && AMSSID != '' )
        {
        if ( AMSRC(AMSRID) != null )
                {
                AMSSRID = AMSSID+AMSRC(AMSRID);
                AMSAP("regid",AMSSRID);
                }
        }

