/******************** DOCUMENT WHEN IN STOCK JAVASCRIPT LIBRARY *********************************/
/************ NOTES START *******************************************************************************************
* 
* Date: 06/22/09
* Purpose: Custom stewmac email when in stock functionality
* Instructions:
* Prerequisites: (note required versions on top of the page)
*   1.1.5  jseone/prototype/prototype.js
************* NOTES END *********************************************************************************************/

// Load Required JS files
//loadScript('/jseone/ajax/ajax-shoplist_xproc.js');
//loadScript('/jseone/prototype/prototype-packed.js');

/**
 * Used to display form entry to enter email
 */
function emailInStock(itemId, response) {

  // intialize parm key/values
  var dnXMLNodeName = "&dnXMLNodeName=" + "email_response_" + itemId;
  var itemIdParm = "&IID=" + escape(itemId);
  var updateDspNav = "&updateDspNav=false";
  var dspParm = "&dsp=100900";
  var parms = dnXMLNodeName + updateDspNav + itemIdParm + dspParm;

  // div id that will be populated with error message
  var errorDivID = '';
  
  // available for custom response (default set to blank)
  if(!response) {
    response = 'emailInStockResponse';
  }
  
  // call to action processor
  ajaxShop(parms, errorDivID, response);

}

/**
 * Not currently used
 * 
 * @param itemId
 * @return
 */
function emailInStockQuickOrder(itemId) {
	  var form = document.getElementById('email_when_instock_form');
	  form.comments.value = itemId;
	  emailInStockEmail('');
	}

/**
 * Used to display form entry for sending email
 * 
 * @param req
 * @return
 */
function emailInStockResponse(req) {
  var ajaxResponseElements = req.responseXML.getElementsByTagName('ajaxActionResponse');
  var itemId = req.responseXML.getElementsByTagName('itemid').item(0).firstChild.nodeValue;

  document.getElementById('email_response_' + itemId).style.display="none";
  if(ajaxResponseElements.length > 0) {
      publishResponseXML(req, 'xml');
  }
  var form = document.getElementById('email_when_instock_form');
  form.comments.value = itemId;
  // Effect.BlindDown('email_response_' + itemId, { duration: 1.5 });
  document.getElementById('email_response_' + itemId).style.display="block";

}


/**
 * Used to send email
 */
function emailInStockSendEmail(response) {
	var form = document.getElementById('email_when_instock_form');
	var productForm = document.getElementById('Product_Form');
	var itemId = form.comments.value;
	form.email.value = productForm.email.value;

	if (!verifyEmail(form, false)) {
		return;
	}

	// intialize parm key/values
	var dnXMLNodeName = "&dnXMLNodeName=" + "email_response_" + itemId;
	var updateDspNav = "&updateDspNav=false";
	if (form.overridesrcdsp) {
		var overridesrcdsp = "&overridesrcdsp=" + form.overridesrcdsp.value;
	}

	var actn = "actn=" + form.actn.value;
	actionType = "&actionType=" + form.actionType.value;
	var itemIdParm = "&IID=" + escape(itemId);
	var requestType = "&requestType=" + form.requestType.value
	var email = "&email=" + form.email.value
	var comments = "&comments=" + itemId;
	var parms = actn + dnXMLNodeName + updateDspNav + actionType + itemIdParm + requestType + overridesrcdsp + email + comments;

	// div id that will be populated with error message
	var errorDivID = '';
	
	// available for custom response (default set to blank)
	if(!response) {
		response = '';
	}
	// call to action processor
	ajaxShop(parms, errorDivID, response);
	
}

function closeEmailInStock(itemId) {
	Effect.BlindUp('email_response_' + itemId, { duration: .5 });
	// document.getElementById("email_response_" + itemId).innerHTML='';
}