<html xmlns:MMString="http://www.macromedia.com/schemes/data/string/">
<head>
<title><MMString:loadString id="PayPal_Trans/title" /></title>
<SCRIPT SRC="../Shared/PayPal/PayPalShared.js"></SCRIPT>
<SCRIPT SRC="../Shared/PayPal/WA_XML.js"></SCRIPT>
<script language="JavaScript">
function translateMarkup(docNameStr, siteRootStr, inStr)  {
  var origStr = String(inStr);
  var firstForm = findTag(origStr,"form",true);
  var translatedTag = "";
  while (firstForm != "")  {
    if (getTagProp(firstForm,"form","action")=="https://www.paypal.com/cgi-bin/webscr")  {
      translatedTag = translateForm(firstForm);
      inStr = StringReplace(inStr,firstForm,translatedTag);
    }
    origStr = origStr.substring(origStr.indexOf(firstForm)+firstForm.length);
    firstForm = findTag(origStr,"form",true);
  }
  // to support upgrade to 2.0.5  This can be deleted after the next major release.
  origStr = String(inStr);
  var linkPattern = /<a\s.*href=["'].*https?\:\/\/www\.paypal\.com\/cart\//i;
  var theAnchor = "";
  while (inStr.search(linkPattern)>=0)  {
    theAnchor = findTag(inStr.substring(inStr.search(linkPattern)),"a",true);
    translatedTag = translateAnchor(theAnchor);
    inStr = StringReplace(inStr,theAnchor,translatedTag);
  }
  var theNextButton = inStr.search(/<input\s.*type\s*=\s*"image"\s*[^>]*alt="Make payments with PayPal/gi);
  while (theNextButton >= 0)  {
    var tempStr = findOpenTag(inStr.substring(theNextButton),"input");
	inStr = StringReplace(inStr,tempStr,'<mm:beginlock translatorClass="WAPP_Temp" type="WAPayPal_Temp" orig="' + escape(tempStr) + '">\n<img src="'+getTagProp(tempStr,"input","src")+'"><mm:endlock>');
	theNextButton = inStr.search(/<input\s.*type\s*=\s*"image"\s*[^>]*alt="Make payments with PayPal/gi);
  }
  // end code to delete for 3.0
  return inStr;
}

function translateAnchor(ATag)  {
  var orig = ATag;
  var editBehavior = "Edit PayPal Add to Cart.htm";
  if (ATag.indexOf("display=1")>=0)
    editBehavior = "Edit PayPal View Cart.htm";
  var theImageIndex = orig.search(/<image\s.*src\s*=\s*(['"])?img\1/i);
  var theImageTag = findOpenTag(orig.substring(theImageIndex),"img");
  var theImage = getTagProp(theImageTag,"img","src");
  var sipImg = getTranslatedACImage(theImage);
  var sipImgPath = WA_getConfigurationPath("/shared/PayPal/Images/" + sipImg);
  var replCode  = '<img src="' + sipImgPath + '" border="0">\n';
  var beginLock = '<mm:beginlock translatorClass="WAPP" edit="'+editBehavior+'" type="WAPayPal" orig="' + escape(orig) + '">\n';    
  var endLock = '<mm:endlock>';
  return beginLock+replCode+endLock;
}

function removeNamedFields(theString)  {
  var toRemove = "cmd,upload,bn,add,display,business,item_number,image_url,item_name,amount,currency_code,undefined_quantity,no_shipping,no_note,shipping,shipping2,handling,sra,src,srt,p1,t1,a1,a3,p3,t3,return,cancel_return,receiver_email,mrb,pal";
  var origStr = theString;
  var firstInput = findOpenTag(origStr,"input");
  var translatedTag = "";
  var LockTag = "";
  while (firstInput != "")  {
    if (getTagProp(firstInput,"input","type")=="hidden" && (getTagProp(firstInput,"input","name")!="") && toRemove.indexOf(getTagProp(firstInput,"input","name"))>=0)  {
      translatedTag = '<mm:beginlock translatorClass="WAPP" type="WAPayPalInput" orig="' + escape(firstInput) + '"><mm:endlock>';   
      theString = StringReplace(theString,firstInput,translatedTag);
    }
    origStr = origStr.substring(origStr.indexOf(firstInput)+firstInput.length);
    firstInput = findOpenTag(origStr,"input");
  }
  return theString;
}

function translateForm(inOrig)  {
  if (inOrig.search(/WA_eCart_PPQCO_LineItems\([^\)]*\)/i) >= 0)
  {
    return inOrig; // don't translate eCart PP buttons
  }
  var theCMDIndex = inOrig.search(/<input\s.*type\s*=\s*"hidden"\s*name\s*=\s*"cmd"/i);
  var theCMDTag = findOpenTag(inOrig.substring(theCMDIndex), "input");
  var theCMD = getTagProp(theCMDTag,"input","value");
  var theCartCMD = "add";
  var defaultImage = CUSTOM_AC_IMG;
  var editBehavior = "Edit PayPal Add to Cart.htm"
  if (theCMD == "_cart")
  {
    var theViewCartIndex = inOrig.search(/<input\s.*type\s*=\s*"hidden"\s*name\s*=\s*"display"/i);
    if (theViewCartIndex >= 0)
    {
      theCartCMD = "display";
	  defaultImage = CUSTOM_VC_IMG;
	  editBehavior = "Edit PayPal View Cart.htm"
    }
  }
  else if (theCMD == "_xclick")
  {
    defaultImage = CUSTOM_SIP_IMG;   
	  editBehavior = "Edit PayPal Buy Now.htm";
    var theUQIndex = inOrig.search(/<input\s.*type\s*=\s*"hidden"\s*name\s*=\s*"undefined_quantity"/i);
    if (theUQIndex<0) // Donate buttons don't have this field
    {
	    editBehavior = "Edit PayPal Donate.htm";    
    }
  }
  else if (theCMD == "_xclick-subscriptions")
  {
    defaultImage = CUSTOM_SUB_IMG;
	editBehavior = "Edit PayPal Subscriptions.htm"
  }
  
  
  
  var orig = removeNamedFields(inOrig);
  var imageOnly = true;
  if (findTag((orig.replace(/<mm:beginlock[\w\W]*<mm:endlock>/gi,"").replace(/<input\s.*type\s*=\s*(['"])?image\1.*>/i,"")),"form",false).replace(/\s*/g,"")=="")
    imageOnly = false;
  
  var theImageIndex = orig.search(/<input\s.*type\s*=\s*(['"])?image\1/i);
  if (theImageIndex >= 0)  {
    var theImageTag = findOpenTag(orig.substring(theImageIndex),"input");
    var theImage = getTagProp(theImageTag,"input","src");
    var sipImg = "";
    var sipImgPath = theImage;

	if (!dw.isCCOnline())  {
	  sipImg = getTranslatedACImage(theImage);
	  sipImgPath = WA_getConfigurationPath("/shared/PayPal/Images/" + sipImg);
	}

    var replCode  = "";
	var beginLock = "";
	var endLock = '<mm:endlock>';
	if (imageOnly)  {
	  replCode = '<input type="image" src="' + sipImgPath + '" border="0">\n';
      beginLock = '<mm:beginlock translatorClass="WAPP" edit="'+editBehavior+'" type="WAPayPal" orig="' + escape(theImageTag) + '">\n';    
	  return StringReplace(orig,theImageTag,beginLock+replCode+endLock);
	}
	else {
	  replCode = '<div><input type="image" src="' + sipImgPath + '" border="0"></div>\n';
	  beginLock = '<mm:beginlock translatorClass="WAPP" edit="'+editBehavior+'" type="WAPayPal" orig="' + escape(inOrig) + '" PPwholeForm="true">\n';    
	  return beginLock+replCode+endLock;    
	}
  }
  else  {
    var sipImg = defaultImage;
    var sipImgPath = WA_getConfigurationPath("/shared/PayPal/Images/" + sipImg);
    var replCode  = '<input type="image" src="' + sipImgPath + '" border="0">\n';
    var beginLock = '<mm:beginlock translatorClass="WAPP" edit="'+editBehavior+'" type="WAPayPal" orig="">\n';    
    var endLock   = '<mm:endlock>';
    return orig.substring(0,orig.search(/>/i)+1)+ (beginLock+replCode+endLock) +orig.substring(orig.search(/>/i)+1);
  }
}

function getTranslatorInfo(){
   returnArray = new Array(7);
   returnArray[0] = "WAPP";
   returnArray[1] = "WAPayPal";
   returnArray[2] = "0";
   returnArray[3] = "1";
   returnArray[4] = 'paypal';
   returnArray[5] = "byExpression";
   returnArray[6] = 1;
   return returnArray; 
}
</script>
</head>

<body>
</body>
</html>
