/*** Copyright (c) 2000-2009 by WebCollage Inc. All rights reserved.  ***/
/*** Protected by US Patent 6,865,593 and pending patent applications ***/
try
{
  
function wcsbGetParameter(query, paramName)
{
  var lc = paramName.toLowerCase();
  var params = query.split("&");
  for (var i=0; i < params.length; ++i)
  {
    var pair = params[i].split("=");
    if (typeof(pair[0]) != typeof(undefined) &&
          (unescape(pair[0])).toLowerCase() == lc   &&
          typeof(pair[1]) != typeof(undefined))
      return unescape(pair[1]);
    }
    return "";
}
function wcsbSplitPath(path, delim, index)
{
    var segments = path.split(delim);
    if (index == -1)
      return segments[segments.length - 1];
    if (segments.length >= index)
      return segments[index];
    return "";
}
function wcsbGetUrlParts(url)
{
    var p = {scheme: "", authority: "", path: "", query: "", fragment: ""};
    var se = url.indexOf("://", 0);
    p.scheme = url.substring(0, se);
    var ai = se + 3;
    var pi = url.indexOf("/", ai) + 1;
    var qi = url.indexOf("?", ai) + 1;
    var fi = url.indexOf("#", ai) + 1;
    if ((qi > 0 && pi > qi)||(fi > 0 && pi > fi))
      pi = 0;
    if (fi > 0  && qi > fi)
      qi = 0;
    if (pi > 0)
      p.authority = url.substring(ai, pi - 1);
    else if (qi > 0)
      p.authority = url.substring(ai, qi - 1);
    else if (fi > 0)
      p.authority = url.substring(ai, fi - 1);
    else
      p.authority = url.substring(ai);
    if (pi > 0)
    {
      if (qi > 0)
        p.path = url.substring(pi, qi - 1);
      else if (fi > 0)
        p.path = url.substring(pi, fi - 1);
      else
        p.path = url.substring(pi);
    }
    if (qi > 0)
    {
      if (fi > 0)
        p.query = url.substring(qi, fi - 1);
      else
        p.query = url.substring(qi);
    }
    if (fi > 0 && fi < url.length)
      p.fragment = url.substring(fi);
    return p;
}

//Exception Implementation for TRU PPP PoC A/B Test
var _wcsbTruAbTest = 
{
  COOKIE_PREFIX: "wcabtest-toysrus-000=",
  HIDE_FACTOR: 0.5,
  DISPLAY: "display",
  HIDE: "hide",
  // Following products string must start and end with comma
  PRODUCTS: ",3121510,3142115,3082748,3159243,3159224,3159238,3159239,3159237,3064147,3135603,3136638,3377737,3377738,3377736,3077106,3077913,2985591,3082750,3159225,3159236,3159235,3159234,3159222,2673964,2744546,3112861,3215576,3215577,2987200,3323477,2882437,2463874,2719107,2340839,3031737,3031736,3031738,3155640,2590471,2310754,2813887,2878552,3052898,3052899,3145310,2537143,2537147,2537148,3018529,2776904,2384872,3077112,3072080,3172677,3072079,3142074,3155378,3084804,3100027,2266715,3127932,2760993,2821791,2265802,3065277,2918334,3022873,3154073,3150649,2674705,2647262,2675462,2647264,3106139,2537141,2537150,2537151,3104322,3144130,2332961,3135611,3130460,3144060,2944908,3115035,2945353,3097579,3097578,3097581,3097580,3100910,3083297,3083293,3083295,3100911,3107910,3157707,3190562,3215573,3089610,2909945,2657949,3096340,3228803,3132705,3132712,3132706,2537145,3009565,3055774,3144129,2305520,3154035,3088057,3083268,3083269,2508824,3064145,3150628,3028948,3103036,3103034,3137020,3137021,2327193,2327116,2983673,2310847,3107661,3107660,3105927,3196491,3055755,3053358,3048748,3048745,3113986,3113962,2945343,3155354,3249051,3083252,3083255,3245143,3077115,2267522,2934997,3091244,2884027,3091233,3127435,3052903,3004095,2486967,2930692,3145296,3170180,3179661,3163788,3179660,3051012,2944930,2535052,3091010,3064149,3155374,3029050,3136970,3153188,3039555,3051091,3089609,3026607,3190563,3088126,3109734,3029033,3032050,3136908,3150619,2297744,3098921,3096348,3096350,3097547,3073332,3145370,3104361,3104360,3036219,2709221,3093605,3093604,3098930,3153193,3028944,3096356,3055761,3127931,2808004,2850747,2873859,2873860,2882988,2890314,2902956,2982831,3025450,3032071,"
};
_wcsbTruAbTest.setdecision = function (decision) 
{
  var exp = new Date();
  exp.setTime(exp.getTime() + 180*24*60*60*1000);
  document.cookie = _wcsbTruAbTest.COOKIE_PREFIX + decision + "; expires=" + exp.toGMTString();
}
_wcsbTruAbTest.getdecision = function ()
{
  // From URL parameter  
  var up = wcsbGetUrlParts(location.href);
  var p = wcsbGetParameter(up.query, "ab-test");
  if (p != "")
  {
    _wcsbTruAbTest.setdecision(p);
    return p;
  }  
    
  // From cookie
  var cookie = document.cookie;
  if (cookie != null)
  {
    var prefix = _wcsbTruAbTest.COOKIE_PREFIX;
    var begin = cookie.indexOf(prefix);
    if (begin != -1)
    {
      begin += prefix.length;
      var end = cookie.indexOf(';', begin);
      var val = (end == -1) ? cookie.substring(begin) : cookie.substring(begin, end);
      if (val != "")
      {
        _wcsbTruAbTest.setdecision(val);
        return val;
      }
    }
  }
    
  // Create new decision
  var rnd = (Math.random() > _wcsbTruAbTest.HIDE_FACTOR) ?  _wcsbTruAbTest.DISPLAY : _wcsbTruAbTest.HIDE;
  _wcsbTruAbTest.setdecision(rnd);
  return rnd;
}
_wcsbTruAbTest.relevant = function (cpi)
{
  return _wcsbTruAbTest.PRODUCTS.indexOf(cpi+',') != -1;
}

_wcsbTruAbTest.gainit = function(d)
{
  var s = document.createElement("script");
  s.id = "wcsb-ga";
  s.src = "http://www.google-analytics.com/ga.js";
  document.getElementsByTagName("head").item(0).appendChild(s);  
  _wcsbTruAbTest.gastr = (d == _wcsbTruAbTest.DISPLAY) ? "/aplusproductpageview" : "/nonaplusproductpageview";
}

_wcsbTruAbTest.gareport = function()
{
  try 
  {
    var pageTracker = _gat._getTracker("UA-8078367-1");
    pageTracker._trackPageview(_wcsbTruAbTest.gastr);
  } catch (e){}  
}

_wcsbTruAbTest.getcpi = function()
{
    var urlParts = wcsbGetUrlParts(location.href);
    var cpi = "";
  
    cpi = wcsbGetParameter(urlParts.query, 'productId');
      if (cpi == "")
      {
  var segment = urlParts.path;
         segment = wcsbSplitPath(segment, "/",-1);
         segment = wcsbSplitPath(segment, "-",-1);
         segment = wcsbSplitPath(segment, ".", 0);
  cpi = segment;
      }
      if (cpi != "" && _wcsbTruAbTest.relevant(cpi))
      {
        var d = _wcsbTruAbTest.getdecision();
        if (d == _wcsbTruAbTest.DISPLAY)
        {
          s_eVar6='A PLUS PLUS';
	  s_prop22='A PLUS VIEW';
        }
        else
        {
          s_eVar6='NON A PLUS PLUS';
	  s_prop22='NON A PLUS VIEW';	  	  
        }
        _wcsbTruAbTest.gainit(d);                
      }
      
      return cpi;
}

_wcsbTruAbTest.cpi = _wcsbTruAbTest.getcpi();

window.wcsbabtestonload = window.onload;
window.onload = function ()
{
  _wcsbTruAbTest.gareport();
  window.wcsbabtestonload();
}

function wcsbGetCpi ()
{
return _wcsbTruAbTest.cpi;
}

  function wcsbCallProductButton()
  {
    var s = document.createElement("script");
    s.id = "wcsb-auto";
    s.src = "http://content.webcollage.net/toysrus/smart-button?ird=true&channel-product-id=" + escape(wcsbGetCpi());;
    document.getElementsByTagName("head").item(0).appendChild(s);
  }
  if (typeof(wcsbAvoidDoubleResponse)=='undefined')
  {
    wcsbAvoidDoubleResponse = true;
    setTimeout(wcsbCallProductButton, 1);
  }
}
catch (e) {}