// popup
function popup(src,h,w) {
  if (!h)
    h = 300;
  if (!w)
    w = 450;
  win = window.open(src,"","top=20,left=20,height=" + h + ",width=" + w + ",toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes")
}


// bookmark
// script by http://www.hypergurl.com
 var urlAddress = "http://www.simplybabybedding.com";
 var pageName = "SimplyBabyBedding.com";

 function addToFavorites()
 {
  var urlAddress = location.href;
if (document.all)
window.external.AddFavorite(urlAddress, pageName);
else if (window.sidebar)
window.sidebar.addPanel(pageName, urlAddress, "")
}


// savetrail
function GenericPopup(src)
{
window.open(src, "win", "width=590,height=590,resizable=1,scrollbars=1,scrolling=auto")
}

function RemoveStr(src,target)
{
  var result = src;
  
  var i = result.indexOf(target);
  if ( i > -1 ) // if the elem is already stored, remove it first.
  {
    var left = result.substr(0,i);
    var right = result.substr(i + target.length);
    if (left.substr( left.length-1, 1 ) == ",")
    {
        left = left.substr(0, left.length - 1);
    }
    if (right.substr(0,1) == ",")
    {
        right = right.substr(1);
    }
    if (right.length > 0 && left.length > 0)
    {
      result = left + "," + right;
    }
    else if (left.length > 0)
    {
      result = left;
    }
    else
    {
      result = right;
    }
  }
  return (result);
}

function SaveSearch(frm)
{
  SaveTrail(frm.query.value,null,null,"Search",4);
}

function ShowSearches()
{
    var searches = GetCookie("Search");
    if (searches == null)
      searches = ""
    var trail = searches.split(",");
    while ( trail.length > 0 && trail[0] == "" )
    {
        trail.shift();
        l = trail.length;
    }

    if ( trail.length > 0 )
    {
        document.write("<label>Your Recent Searches</label>");
        for ( i = trail.length - 1; (i >= trail.length - 6) && (i >= 0); i-- )
        {
            document.write("<a href=http://search.store.yahoo.com/cgi-bin/nsearch?catalog=ytimes&query=" + escape(trail[i]) + ">" + unescape(trail[i]) + "</a><br>");
        }
    }
}

function SaveTrail(id,name,img,cookie,size,price)
{
  var path = "";
  var path = GetCookie(cookie);
  if (path == null)
    path = "";

  var elem;
  if (id && name)
  {
    elem = id + "|" + escape(name) + "|" + img + "|" + price;
  }
  else
  {
    elem = id;
  }
  path = RemoveStr(path,elem);
  var trail = path.split(",");
  var l = trail.push( elem );
  while ( trail.length > 0 && trail[0] == "" )
  {
    trail.shift();
    l = trail.length;
  }
  while ( l > parseInt(size) )
  {
    trail.shift();
    l = trail.length;
  }
  
  path = trail.toString();
  // make it expire in one day
  var dt = new Date();
  dt.setTime(dt.getTime() + 24 * 60 * 60 * 1000);
  SetCookie(cookie, path, dt);
}

function ShowTrail()
{
    var path = GetCookie("Path");
    if (path == null)
      path = "";

  var trail = path.split(",");
  while ( trail.length > 0 && trail[0] == "" )
  {
    trail.shift();
    l = trail.length;
  }

  if ( trail.length > 0 )
  {
      document.write("<b>Recently Viewed Categories:</b><br><div id=trail><ul>");
      for ( i = trail.length - 1; (i >= trail.length - 6) && (i >= 0); i-- )
      {
        elem = trail[i].split("|");
        if ( elem[0].length > 0 )
        {
            document.write ( "<li><a href=" + elem[0] + ".html>" + unescape(elem[1]) + "</a></li> ");
        }
      }
      document.write("</ul></div>");
  }
}

function ShowFullTrail(type)
{
    var ck = (type == "Items" ? "Path" : "Section");

    var path = GetCookie(ck);
    if (path == null)
      path = "";

  var trail = path.split(",");
  while ( trail.length > 0 && trail[0] == "" )
  {
    trail.shift();
    l = trail.length;
  }

  if ( trail.length > 0 )
  {
    var columns = 4;
    var NewRow = true;
    var InRow = false;
    var colwid = 100 / columns;
    
    document.write("<div id=recent><h5>recently viewed items</h5>");
    document.write("<table cellspacing=3>");
    var j = 1;
    for ( i = trail.length - 1; i >= 0; i-- )
    {
        if (NewRow)
        {
            document.write("<tr valign=top>");
            NewRow = false;
            InRow = true;
        }
        elem = trail[i].split("|");
        if ( elem[0] && elem[0].length > 0 )
        {
            document.write("<td><table class=item><tr valign=bottom><td class=prodImg>");
			document.write( "<a href=" + elem[0] + ".html>" );
            if (elem[2].length > 0)
            {
                document.write ( "<img border=0 align=absmiddle src=" + elem[2] + "></a>" );
            }
            document.write("</td></tr><tr><td class=descrip><a href=" + elem[0] + ".html><h2>" + unescape(elem[1].replace(/`/gi, "'").replace(/%26%2396%3B/gi,"'")) + "</h2></a>");
            if (elem.length >= 4)
            {
                document.write("<div class=price>$" + elem[3] + " <span class=note>Ships Free</span></div>");
            }
            document.write("</td></tr></table></td>");
        }
        if (j % columns == 0)
        {
            document.write("</tr>");
            NewRow = true;
            InRow = false;
        }
        j++;
    }
    if (InRow)
        document.write("</tr>");
    document.write("</table></div>");
  }
}


// cookie
// name - name of the cookie
// value - value of the cookie
// [expires] - expiration date of the cookie (defaults to end of current session)
// [path] - path for which the cookie is valid (defaults to path of calling document)
// [domain] - domain for which the cookie is valid (defaults to domain of calling document)
// [secure] - Boolean value indicating if the cookie transmission requires a secure transmission
// * an argument defaults when it is assigned null as a placeholder
// * a null placeholder is not required for trailing omitted arguments
function SetCookie(name, value, expires, path, domain, secure) {
  var curCookie = name + "=" + escape(value) +
      ((expires) ? "; expires=" + expires.toGMTString() : "") +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      ((secure) ? "; secure" : "");
  document.cookie = curCookie;
}

// name - name of the desired cookie
// * return string containing value of specified cookie or null if cookie does not exist
function GetCookie(name) {
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  } else
    begin += 2;
  var end = document.cookie.indexOf(";", begin);
  if (end == -1)
    end = dc.length;
  return unescape(dc.substring(begin + prefix.length, end));
}

// name - name of the cookie
// [path] - path of the cookie (must be same as path used to create cookie)
// [domain] - domain of the cookie (must be same as domain used to create cookie)
// * path and domain default if assigned null or omitted if no explicit argument proceeds
function DeleteCookie(name, path, domain) {
  if (GetCookie(name)) {
    document.cookie = name + "=" + 
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

// date - any instance of the Date object
// * hand all instances of the Date object to this function for "repairs"
function fixdate(date) {
  var base = new Date(0);
  var skew = base.getTime();
  if (skew > 0)
    date.setTime(date.getTime() - skew);
}

