/**
 * AffiliateID.js
 */
var userAfflID = "USRAFF";

/**
 * Returns AffiliateID if present in Url
 *
 * @use <script type="text/javascript">document.write(getAffiliateID());</script>
 * @use <script type=\"text/javascript\">document.write(getAffiliateID());</script>
 * @not typeof(affID) !== 'undefined'
 */
function getAffiliateID()
{
    var affID   = '';
    var uriText = String(document.location);

    affID = getCookie(userAfflID);
    if (affID != null && affID.length != 0) {
        return '(' + affID + ')';
    }

    affID = uriText.match(/a_aid=([^&;]+)/i);
    if (affID != null && affID.length != 0) {
        setCookie(userAfflID, affID[1],  afflExpire, userPathID, userDomain, userSecure);
        return '(' + affID[1] + ')';
    }

    // affID IS EMPTY
    return '';
}

/**
 * Sets a Cookie with the given name and value.
 *
 * name       Name of the cookie
 * value      Value of the cookie
 * [expires]  Expiration date of the cookie (default: end of current session)
 * [path]     Path where the cookie is valid (default: path of calling document)
 * [domain]   Domain where the cookie is valid
 *              (default: domain of calling document)
 * [secure]   Boolean value indicating if the cookie transmission requires a
 *              secure transmission
 */
function setCookie(name, value, expires, path, domain, secure)
{
  document.cookie= name + "=" + escape(value) +
    ((expires) ? "; expires=" + expires.toGMTString() : "") +
    ((path)    ? "; path="    + path                  : "") +
    ((domain)  ? "; domain="  + domain                : "") +
    ((secure)  ? "; secure"                           : "");
}

/**
 * Gets the value of the specified cookie.
 *
 * name  Name of the desired cookie.
 *
 * Returns a 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(decodeURI(dc.substring(begin + prefix.length, end))).split("+").join(" ");
}

/**
 * Deletes the specified cookie.
 *
 * 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)
 */
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";
  }
}

getAffiliateID();

/* -- END -- */
