//This script determines reg status of user:  Not reg'd, three point reg'd or fully reg'd and takes a different action
//for each.  When Express Subscribe goes live
//this script should sit on Web servers at http://www.washingtonpost.com/wp-srv/registration/reg_tester.js

function determineReg(newsletter, returnURL)
{

var uprof =null;
var wpniuser = getCookie("wpniuser");
var remembered = getCookie("remember");
var logout = getCookie("logout");
  if (wpniuser !=null && (remembered=="true" || logout=="false")    )
        {
        //User is fully registered
		//alert("fully registered");
        window.open("/ac2/wp-dyn?node=admin/email/express&action=subscribe&newsletter_code="+newsletter, "", "scrollbars=no,toolbar=no,width=300,height=232");
        }
  else
        {
        uprof = getCookie("UPROF");
        if (logout==null && uprof !=null)
                {
                //User is 3 pt. registered
				//alert ("three point registered");
                window.open("/ac2/wp-dyn?node=admin/registration/register&destination=register&nextstep=gather&window=micro&newsletter_code="+newsletter+"&application=Origin%20Page&applicationURL="+returnURL, "", "scrollbars=no,toolbar=no,width=300,height=450");
                }
        else
                {
				//User is neither fully nor 3 pt. registered
				//alert ("neither fully nor three-point registered");                
                location.href = "/ac2/wp-dyn?node=admin/registration/register&destination=register&nextstep=gather&newsletter_code="+newsletter+"&application=Origin%20Page&applicationURL="+returnURL;
                }
        }
}

function getCookie(name)
{
  var cookie = " " + document.cookie;
  var search = " " + name + "=";
  var setStr = null;
  var offset = 0;
  var end = 0;
  if (cookie.length > 0)
  {
    offset = cookie.indexOf(search);
    if (offset != -1)
	{
      offset += search.length;
      end = cookie.indexOf(";", offset)
      if (end == -1)
        end = cookie.length;
      setStr = unescape(cookie.substring(offset, end));
    }
  }
  return(setStr);
}
