*/ var click Promo Link = function() { A.ajax("/gp/digital/fiona/detail/digital-promo/ajax/log-link-click",{ method:"post", params: {sid: $("#sid").val()} }); // Clear any previously rendered success or info messages and code input $('#kindle_redeem_promo_message').hide(); $("#kindle_redeem_promo_input").val(""); check For Promos And Render(); }; /* ELIGIBLE PROMOTION CHECKS check For Promos And Render This is a series of 2 nested ajax calls.

schwul online dating-39

if ($promo Details Holder.data('has_data')) { return; } A.ajax("/gp/digital/fiona/detail/digital-promo/ajax/check-promos",{ method : 'post', params : input Data, success : function(has Promo Data, text Status, jq XHR) { $promo Details Holder.data('has_data', true); if (has Promo Data['asin_has_promo'] === 'true' || has Promo Data['customer_has_promo'] === 'true') { render Promo Details(); } } }); }; /* render Promo Details This is a function for checking which promotions will be applied to a purchase and render those details in the popover.

*/ var render Promo Details = function() { var $promo Details Holder = $('#kindle_promo_details_holder'), input Data = $("#redeem Code Form").serialize Array(); A.ajax("/gp/digital/fiona/detail/digital-promo/ajax/promo-details",{ method : 'post', params : input Data, success : function(promo Data, text Status, jq XHR) { if (promo Data && promo Data.promotions && promo Data.promotions.length) { show Promos In Popover(promo Data.promotions); show Promos In Price Block(promo Data.promotions); } } }); }; /* CLAIM CODE REDEMPTION Promotion/GC redemption click handler.

This will perform an ajax call to redeem a promotion or gift card and display an informative message upon return.

P.when('A', 'j Query').execute(function (A, $) { /* redemption Result Status To Message Body : Messages handling the different results from the redeem code end point redemption Result Status To Message Type : Message type pointing to the type of the alert that is to be shown to the user */ var redemption Result Status To Message Body = {"promo":{"expired":"The promotion code you entered is not valid or has expired. ","applied":"This promotion has been applied to your account.","applied-eligible":"The promotion %promo has been applied to your account.

This promotion will be automatically applied to your order when you purchase this item.","applied-not-eligible":"The promotion %promo has been applied to your account, however the Kindle edition of Gay Online Dating: How To Meet, Attract And Date The Hottest Guys On The Internet is not eligible for this promotion.

This promotion will be saved to your account and automatically applied to your order when you purchase a qualifying item.","failure":"There was an unexpected issue while processing your code.

Please try again.","not-logged-in":"Please sign in to enter a promotion code or gift card.","already-applied":"The promotion code you entered has previously been redeemed.","invalid":"The code you entered is invalid.","invalid-or-redeemed":"The promotion code you entered is not valid or has previously been used."},"gc":{"already-applied-no-bal":"The gift card you entered has already been applied to your account.","already-claimed":"The gift card you entered has already been redeemed.","expired":"The gift card you entered is expired.","applied":"Your gift card has been redeemed and your new gift card balance is %gc Bal.

This balance will be applied to your future orders.

","applied-no-bal":"Your gift card has been redeemed.","failure":"There was an unexpected issue while processing your code.

Please try again.","not-logged-in":"Please sign in to enter a promotion code or gift card.","already-applied":"The gift card you entered has already been applied to your account.

Your current balance is %gc Bal.","invalid":"The code you entered is invalid."}}; var redemption Result Status To Message Type = { 'applied' : 'success', 'applied-no-bal' : 'success', 'applied-eligible' : 'success', 'applied-not-eligible' : 'info', 'already-applied' : 'info', 'already-applied-no-bal' : 'info', 'already-claimed' : 'info', 'invalid' : 'info', 'invalid-or-redeemed' : 'info', 'expired' : 'info', 'not-logged-in' : 'info', 'failure' : 'error', }; /* click Promo Link This function consists of an ajax call that logs the promo link being clicked and a function call that determines and renders any eligible promotions.