BookrenterCookie=(function(){function hoursToExpireDate(ttl){if(parseInt(ttl)=='NaN')return'';else{var now=new Date();now.setTime(now.getTime()+(parseInt(ttl)*60*60*1000));return now.toGMTString();}}
return{get:function(key){var tmp=document.cookie.match((new RegExp(key+'=[a-zA-Z0-9.()=|%/_]+($|;)','g')));if(!tmp||!tmp[0])return null;else return unescape(tmp[0].substring(key.length+1,tmp[0].length).replace(';',''))||null;},set:function(key,value,ttl,path,domain,secure){if(value==null){value='';ttl=-2000;}
var cookie=[key+'='+escape(value),'path='+((!path||path=='')?'/':path),'domain='+((!domain||domain=='')?window.location.host:domain)];if(ttl)cookie.push('expires='+hoursToExpireDate(ttl));if(secure)cookie.push('secure');return document.cookie=cookie.join('; ');}};})();Bookrenter=(function(){var publics={};var localCartIdName='bookrenter_cart_id';var cartId=BookrenterCookie.get(localCartIdName);var creatingCart=false;var callbackIndex=0;publics.API_HOST='www.bookrenter.com';publics.API_KEY=null;publics.API_SETTINGS={show_all_prices:'y',book_details:'y',version:'2011-02-01',rentals_only:'n'};publics.version='1.1.0';function bookApiParams(){var params=merge(Bookrenter.API_SETTINGS,{});params['rentals_only']=null;return params;}
function merge(src,overrides){var out={};for(var key in src){out[key]=src[key];}
for(var key in overrides){out[key]=overrides[key];}
return out;}
function toQuery(paramMap){var q=[];for(i in paramMap){if(paramMap[i]){q.push(i+'='+paramMap[i]);}}
q.push('src=api');q.push('developer_key='+publics.API_KEY)
return q.join('&');}
function makeUnique(a){var aMap={};var i;for(var i=0;i<a.length;i++){aMap[a[i]]=true;}
a=[];for(i in aMap){a.push(i);}
return a;}
function normalizeCart(cart){if(cart==null){return null;}
cart.view_cart_url=Bookrenter.addCartIdToUrl('http://'+Bookrenter.API_HOST+'/api/cart?'+toQuery({'store_return_url':escape(window.location.href)}));cart.checkout_url=Bookrenter.addCartIdToUrl('http://'+Bookrenter.API_HOST+'/api/checkout_cart?'+toQuery({'store_return_url':escape(window.location.href)}));return cart;}
function normalizeBooks(books){if(books==null){return null;}
for(i in books){books[i]=normalizeBook(books[i]);}
return books;}
function normalizeBook(book){if(book==null||book.prices==null||book.prices.length==0){return null;}
var prices=book.prices||[];if(Bookrenter.API_SETTINGS.rentals_only=='y'){var newPrices=[];for(var i=0;i<prices.length;i++){if(prices[i].rental_price){newPrices.push(prices[i]);}}
prices=newPrices;}
if(prices.length==0){return null;}
prices.sort(function(a,b){if(a.days==null)return 1;if(b.days==null)return-1;return parseInt(a.days)-parseInt(b.days);});for(var i=0;i<prices.length;i++){var price=prices[i];if(price.rental_price){price.description=price.days+' Day Rental';if(price.days=='90'){price.description+=' (Quarter)';}
if(price.days=='125'){price.description+=' (Semester)';}
price.price=price.rental_price;price.due_date=new Date();price.due_date.setDate(price.due_date.getDate()+parseInt(price.days)+5);price.rental_period=price.days;}
else if(price.purchase_price){price.description=price.condition.substring(0,1).toUpperCase()+price.condition.substring(1)+' Purchase';price.price=price.purchase_price;price.rental_period=price.condition=='used'?'used_buy':'buy';}}
book.prices=prices;return book;}
function createApiExecutor(callback){return new ApiExecutor(callback);}
var ApiExecutor=function(fn){var thisApiExecutor=this;var callbackName='apiCallback'+callbackIndex++;this.callApiJsonp=function(scriptPath,queryParams,callback){if(Bookrenter.API_KEY==null){throw"Bookrenter.API_KEY must be set for:"+scriptPath;}
this.callJsonp(scriptPath,(queryParams==null?'':queryParams+'&')+'developer_key='+Bookrenter.API_KEY,callback);}
this.callJsonp=function(scriptPath,queryParams,callback){if(creatingCart){setTimeout(function(){thisApiExecutor.callJsonp(scriptPath,queryParams,callback)},10);return;}
if(cartId==null){creatingCart=true;Bookrenter.createCart(function(response){cartId=response.response.cart_id;creatingCart=false;BookrenterCookie.set(localCartIdName,cartId,24*365*1);thisApiExecutor.callJsonpWithoutCartCreation(scriptPath,queryParams,callback);});}
else{thisApiExecutor.callJsonpWithoutCartCreation(scriptPath,queryParams,callback);}}
this.callApiJsonpWithoutCartCreation=function(scriptPath,queryParams,callback){if(Bookrenter.API_KEY==null){throw"Bookrenter.API_KEY must be set for:"+scriptPath;}
this.callJsonpWithoutCartCreation(scriptPath,(queryParams==null?'':queryParams+'&')+'developer_key='+Bookrenter.API_KEY,callback);}
this.callJsonpWithoutCartCreation=function(scriptPath,queryParams,callback){thisApiExecutor.callback=callback;Bookrenter.createScriptElement(callbackName,scriptPath,queryParams);}
this.execute=function(){fn.apply(thisApiExecutor,arguments);}
publics[callbackName]=function(){if(thisApiExecutor.callback==null){throw'No callback defined. Are you trying to call execute() on the ApiExecutor more than once?';}
thisApiExecutor.callback.apply(thisApiExecutor,arguments);publics[callbackName]=null;};return this;}
publics.createScriptUrl=function(callbackName,scriptPath,queryParams){var url=document.location.protocol+'//'+Bookrenter.API_HOST+scriptPath+'?'+
(queryParams||'')+'&format=js'+'&callback=Bookrenter.'+callbackName;url=Bookrenter.addCartIdToUrl(url);return url;}
publics.createScriptElement=function(callbackName,scriptPath,queryParams){var e=document.createElement('script');e.setAttribute('src',Bookrenter.createScriptUrl(callbackName,scriptPath,queryParams));e.setAttribute('type','text/javascript');var head=document.getElementsByTagName('head')[0];if(head==null)throw'Please add a <head> element to this document!';head.appendChild(e);}
publics.createCart=function(callback){return createApiExecutor(function(callback){this.callApiJsonpWithoutCartCreation('/api/create_cart',null,function(response){response.cart=normalizeCart(response.cart);callback(response);});}).execute(callback);}
publics.addToCart=function(isbn,rentalPeriod,callback){return createApiExecutor(function(isbn,rentalPeriod,callback){this.callJsonp('/api/add_to_cart',toQuery(merge(bookApiParams(),{'items[][isbn]':isbn,'items[][rental_period]':rentalPeriod})),function(response){response.cart=normalizeCart(response.cart);callback(response);});}).execute(isbn,rentalPeriod,callback);}
publics.removeFromCart=function(isbn,rentalPeriod,callback){return createApiExecutor(function(isbn,rentalPeriod,callback){this.callJsonp('/store/remove_from_cart',toQuery(merge(bookApiParams(),{'items[][isbn]':isbn,'items[][rental_period]':rentalPeriod})),function(response){response.cart=normalizeCart(response.cart);callback(response);});}).execute(isbn,rentalPeriod,callback);}
publics.getCart=function(callback){return createApiExecutor(function(callback){this.callJsonp('/store/cart',null,function(response){response.cart=normalizeCart(response.cart);callback(response);});}).execute(callback);}
publics.searchProducts=function(requiredTerm,optionalPage,optionalItemsPerPage,requiredCallback){return createApiExecutor(function(requiredTerm,optionalPage,optionalItemsPerPage,requiredCallback){var term=requiredTerm;var callback=arguments[arguments.length-1];var page=arguments.length>2?arguments[1]:null;var itemsPerPage=arguments.length>3?arguments[2]:null;this.callApiJsonpWithoutCartCreation('/api/search_book_infos',toQuery(merge(bookApiParams(),{'term':escape(term),'page':page,'items_per_page':itemsPerPage})),function(response){response.response.books=normalizeBooks(response.response.books);callback(response);});}).execute(requiredTerm,optionalPage,optionalItemsPerPage,requiredCallback);}
publics.getProducts=function(isbns,callback){return createApiExecutor(function(isbns,callback){if(!(isbns instanceof Array)){isbns=isbns.toString().split(',');}
isbns=makeUnique(isbns);this.callApiJsonpWithoutCartCreation('/api/fetch_book_infos',toQuery(merge(bookApiParams(),{'isbns':isbns.join(',')})),function(response){response.response.books=normalizeBooks(response.response.books);callback(response);});}).execute(isbns,callback);}
publics.getProduct=function(isbn,callback){return createApiExecutor(function(isbn,callback){this.callApiJsonpWithoutCartCreation('/api/fetch_book_info',toQuery(merge(bookApiParams(),{'isbn':isbn})),function(response){response.response.book=normalizeBook(response.response.book);callback(response);});}).execute(isbn,callback);}
publics.addCartIdToUrl=function(url){if(cartId==null){return url;}
return url+(url.indexOf('?')<0?'?':'&')+'cid='+cartId;}
return publics;})();BookrenterWidgets=(function(){var widgetIndex=0;var publics={};var callOnceMap={}
var widgets=new Array();var WidgetInfo=function(type,name,method,required,options){this.name=name;this.method=method;this.required=required;this.options=options;this.type=type;}
WidgetInfo.Types={"cart":"cart","add":"add","search":"search"};function nextWidgetId(){return'brWidget_'+widgetIndex++;}
function getDomElement(options,defaultClass){var domElement=options&&options.container;if(domElement==null){var widgetId=nextWidgetId();document.write('<div id="'+widgetId+'" class="'+defaultClass+'"></div>');domElement=document.getElementById(widgetId);}
return domElement;}
function getIsbnToBookFromResponse(books){var isbnToBook={};if(books){for(var i=0;i<books.length;i++){var book=books[i];if(book){isbnToBook[book.info.isbn10]=book;isbnToBook[book.info.isbn13]=book;}}}
return isbnToBook;}
function callOnce(nameKey,params,onCallOnceFn){var paramsArray=callOnceMap[nameKey];if(paramsArray==null){paramsArray=[];callOnceMap[nameKey]=paramsArray;}
paramsArray.push(params);if(paramsArray.length==1){setTimeout(function(){var paramsArrayCopy=paramsArray.slice(0);callOnceMap[nameKey]=[];onCallOnceFn(paramsArrayCopy);});}}
publics.getWidgetsAvailable=function(){return widgets;}
publics.getCart=function(callback){callOnce('get_cart',callback,function(paramsArray){Bookrenter.getCart(function(response){for(var i=0;i<paramsArray.length;i++){paramsArray[i](response);}});});}
publics.getProduct=function(isbn,callback){callOnce('get_product',{'isbn':isbn,'callback':callback},function(paramsArray){var isbns=[];for(var i=0;i<paramsArray.length;i++){isbns.push(paramsArray[i].isbn);}
Bookrenter.getProducts(isbns,function(response){var isbnToBook=getIsbnToBookFromResponse(response.response.books);for(var i=0;i<paramsArray.length;i++){var isbnAndCallback=paramsArray[i];var book=isbnToBook[isbnAndCallback.isbn];var bookResponse=book==null?{'response':{'error':'bookNotFound'}}:{'response':{'book':book}};isbnAndCallback.callback(bookResponse);}});});}
widgets.push(new WidgetInfo(WidgetInfo.Types.search,'Search Component','showSearchComponent',{},{title:'',resultsContainer:'',items_per_page:'10',success_message:'',show_added:{hide:false,show:true}}));publics.showSearchComponent=function(options){var domElement=getDomElement(options,'bookrenterSearch');BookrenterWidgets.getCart(function(response){BookrenterTemplate.appendSearchComponent(domElement,options);});}
widgets.push(new WidgetInfo(WidgetInfo.Types.cart,'Cart Component','showCartComponent',{},{target:'',returnUrl:'',gotoCheckout:{checkout:true,cart:false}}));publics.showCartComponent=function(options){var domElement=getDomElement(options,'bookrenterCart');BookrenterWidgets.getCart(function(response){BookrenterTemplate.appendCartComponent(domElement,response.cart,options);});}
widgets.push(new WidgetInfo(WidgetInfo.Types.cart,'Checkout Button','showCheckoutButton',{},{target:'',returnUrl:'',gotoCheckout:{checkout:true,cart:false}}));publics.showCheckoutButton=function(options){var domElement=getDomElement(options,'bookrenterCheckout');BookrenterWidgets.getCart(function(response){BookrenterTemplate.appendCheckoutButton(domElement,response.cart,options);});}
widgets.push(new WidgetInfo(WidgetInfo.Types.add,'Add To Cart Button','showAddToCartButton',{isbn:'9780321489845'},{rental_period:{30:30,45:45,60:60,90:90,125:125},hide_unavailable:{hide:true,show:false},success_message:'',show_added:{hide:false,show:true}}));publics.showAddToCartButton=function(isbn,options){var domElement=getDomElement(options,'bookrenterAddToCartButton');BookrenterWidgets.getProduct(isbn,function(response){BookrenterTemplate.appendAddToCartComponent(domElement,response.response.book,options);});}
widgets.push(new WidgetInfo(WidgetInfo.Types.add,'Add To Cart Item','showAddToCartItem',{isbn:'9780321489845'},{hide_unavailable:{hide:true,show:false},rental_period:{30:30,45:45,60:60,90:90,125:125},success_message:'',show_added:{hide:false,show:true}}));publics.showAddToCartItem=function(isbn,options){var domElement=getDomElement(options,'bookrenterAddToCartItem');BookrenterWidgets.getProduct(isbn,function(response){BookrenterTemplate.appendAddToCartItem(domElement,response.response.book,options);});}
widgets.push(new WidgetInfo(WidgetInfo.Types.add,'Add To Cart Radio Button','showAddToCartRadio',{isbn:'9780321489845'},{hide_unavailable:{hide:true,show:false},rental_period:{30:30,45:45,60:60,90:90,125:125},success_message:'',show_added:{hide:false,show:true}}));publics.showAddToCartRadio=function(isbn,options){var domElement=getDomElement(options,'bookrenterAddToCartList');BookrenterWidgets.getProduct(isbn,function(response){BookrenterTemplate.appendAddToCartRadio(domElement,response.response.book,options);});}
return publics;})();BookrenterTemplate=(function($){var months=['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sept','Oct','Nov','Dec'];if(typeof(Bookrenter)=='undefined'){throw'Bookrenter library is not loaded';}
function findBookByIsbn(books,isbn){for(var i=0;i<books.length;i++){var book=books[i];if(book!=null){if(book.info.isbn13==isbn||book.info.isbn10==isbn){return books[i];}}}
return null;}
function updateCart(context,cart,disableAnimation,options){var doUpdate=function(cart){var total=0;$(cart.items).each(function(){total+=parseInt(this.quantity);});$('.br_checkout_quantity').html(total.toString());$('.br_checkout_plural')[total==1?'hide':'show']();updateCartContents(context,cart,options);var show_detail=(options.showDetails==true);var br_cart=(show_detail?'.br_cart_detail':'.br_cart');if(total>0){$(br_cart+' .br_primary_action',context).show();}else{$(br_cart+' .br_primary_action',context).hide();}}
if(disableAnimation){doUpdate(cart);}
else{var cartButtons=$('.br_button',$('.br_cart, .br_checkout'));cartButtons.fadeTo('fast',0.6,function(){cartButtons.fadeTo('fast',1.0,function(){doUpdate(cart);});});}}
function getViewCheckoutUrl(cart,options){var url=cart.checkout_url;if(options.returnUrl){url=url.replace(/store_return_url=[^&]*/,'store_return_url='+escape(options.returnUrl))}
return url;}
function getViewCartUrl(cart,options){var url=cart.view_cart_url;if(options.returnUrl){url=url.replace(/store_return_url=[^&]*/,'store_return_url='+escape(options.returnUrl))}
return url;}
function updateCartContents(context,cart,options){var items_in_cart=cart.items.length;var show_detail=(options.showDetails==true);var br_cart=(show_detail?'.br_cart_detail':'.br_cart');$(br_cart+' .br_cart_contents',context).empty();var target=options&&options.target?' target="'+options.target+'"':'';$('.br_cart_contents').empty();if(items_in_cart==0){$(br_cart+' .br_cart_contents',context).append('<div>You have no rentals in your cart!</div>');}else{if(!show_detail){$(cart.items).each(function(){var title=this.title;if(title.length>35){title=title.substring(0,35)+"...";}
$('.br_cart .br_cart_contents',context).append(['<dl>','<dt>',title,'</dt>','<dd>',(parseInt(this.rental_period)>0?this.rental_period+' Day Rental':'Purchase'),'</dd>','<dd class="qty">Qty:',this.quantity,'</dd>','</dl>'].join(''));});}else{$(cart.items).each(function(){var title=this.title;if(title.length>28){title=title.substring(0,28)+"...";}
$('.br_cart_detail .br_cart_contents',context).append(['<dl>','<dd class="book_cover">','<img src="https://images-na.ssl-images-amazon.com/images/I/519E9Oh985L._SL75_.jpg" />','</dd>','<dt>',title,'</dt>','<dd>',(parseInt(this.rental_period)>0?this.rental_period+' Day Rental':'Purchase'),'</dd>','<dd class="qty">','<span class="spinner"></span>','Qty:','<span class="edit_qty_'+this.isbn13+'">',this.quantity,'</span>','</dd>','</dl>'].join(''));});$('.br_cart_detail .br_cart_contents ')}}}
function initializeRentalOptions(prices,containerElement,options){if(options.rental_period==undefined){options.rental_period='125'}
var rentalOptions=[];$.each(prices,function(){rentalOptions.push('<option value="'+this.rental_period+'" price="'+this.price+'"'+
(this.rental_period.search(options.rental_period)>=0?' selected="selected" ':'')+'>'+this.description+'</option>');$('.br_add_book_content',containerElement).append('<div rental_period="'+this.rental_period+'" class="br_period_selectable br_price"'+
(this.rental_period.search(options.rental_period)>=0?' style="display:block"':'')+'>Rental Price: <span>'+
this.price+'</span></div>');});return rentalOptions}
function displayAlertMessage(message,containerElement){displayMessage(false,message,containerElement);}
function displayMessage(success,message,containerElement){$(containerElement).append('<div id="br_messageBox"></div>');var timeOut=4
$('#br_messageBox',containerElement).html(message).fadeIn().css("display","block");if(success){$('#br_messageBox',containerElement).addClass('br_successMessage');}else{$('#br_messageBox',containerElement).addClass('br_failMessage');}
setTimeout(function(){$('#br_messageBox',containerElement).fadeOut().css("display","none");$('#br_messageBox',containerElement).remove();},timeOut*1000);}
function doSearch(event){var widgetContainer=event.data.widgetContainer;var resultsContainer=event.data.resultsContainer;var options=event.data.options;var term=$('.br_search input',widgetContainer).val();Bookrenter.searchProducts(term,null,options.items_per_page,function(response){$(resultsContainer).empty();var books=response.response.books;if(books!=null){$.each(books,function(index,book){if(book!=null){var br_book='<div id="br_book_'+book.info.isbn13+'" class="book"></div>';var book_info='<div class="book_info"></div>';$(resultsContainer).append(br_book);$('#br_book_'+book.info.isbn13,resultsContainer).append(book_info);var cover='<div class="cover"><img src="'+book.book_image_http+'"></div>';var info='<div class="info"></div>';var title='<div class="book_title">'+book.info.title+'</div>';var book_authors='<div class="book_authors"><em class="type">Author(s): </em></div>';var publication_date='<div class="publication_date"><em class="type">Publication Date: </em>'+book.info.publication_date+'</div>';var isbn='<div class="isbn"><em class="type">ISBN: </em>'+book.info.isbn13+'</div>';$('#br_book_'+book.info.isbn13+' .book_info',resultsContainer).append(cover).append(info);$('#br_book_'+book.info.isbn13+' .book_info .info',resultsContainer).append(title).append(book_authors).append(publication_date).append(isbn);var authors='';$.each(book.info.authors,function(index,author){authors+='<span class="book_author"> '+author+'</span>'});$('#br_book_'+book.info.isbn13+' .book_info .info .book_authors',resultsContainer).append(authors);BookrenterTemplate.appendAddToCartItem($('#br_book_'+book.info.isbn13+'.book ',resultsContainer),book);}});}else{$(resultsContainer).append('<div>No books found</div>');}});return false;}
function processAddToCart(options,containerElement){return function(response){if(response.status=='failure'){var message=response.message
if(message.indexOf('more than 3 copies of a single book')>0){message='You cannot add more than 3 copies of a single book to your rental cart.';}
displayMessage(false,message,containerElement);}else{if(options.show_added!=undefined&&options.show_added=="true"&&options.show_added){var message=options.success_message;if(message==undefined){message='Your item was added to the rental cart';}
displayMessage(true,message,containerElement);}
updateCart(null,response.cart,false,options);}}}
return{appendCartButton:function(containerElement,cart,options){options=options||{};this.appendCheckoutButton(containerElement,cart,options);},appendCartComponent:function(containerElement,cart,options){options=options||{};var show_detail=(options.showDetails==true);var items_in_cart=cart.items.length;var target=options&&options.target?' target="'+options.target+'"':'';var goto_checkout=(options&&(options.gotoCheckout==true||options.gotoCheckout=="true"));var br_cart=(show_detail?'br_cart_detail':'br_cart');$(containerElement).html('<div class="'+br_cart+' br_template_component"><div class="br_bag_toolbox"></div></div>');br_cart='.'+br_cart;var target=options.target==undefined?'':' target="'+options.target+'"';var anchor="";if(goto_checkout){anchor=$('<a class="br_bag_button br_button" href="'+getViewCheckoutUrl(cart,options)+'" title="View and edit your rental cart"'+target+'></a>').appendTo($('.br_bag_toolbox',containerElement));}else{anchor=$('<a class="br_bag_button br_button" href="'+getViewCartUrl(cart,options)+'" title="View and edit your rental cart"'+target+'></a>').appendTo($('.br_bag_toolbox',containerElement));}
anchor.append('<span class="br_bag_summary"><strong class="br_checkout_quantity">'+items_in_cart+'</strong><span class="br_bag_contents">book<span class="br_checkout_plural">s</span> <span>in<br>Rental Cart</span></span></span>');var headerList=$('<div class="br_cart_header_list"></div>').appendTo($('.br_bag_toolbox',containerElement));headerList.append('<div class="br_wrapper"></div>');$('.br_wrapper',containerElement).append('<div class="content"><h4>Your Rental Cart</h4></div>');var content=$('<div class="br_cart_contents"></div>').appendTo($('.content',containerElement));$('.br_bag_toolbox',containerElement).hover(function(){$('.br_cart_header_list',this).slideDown(100);},function(){$('.br_cart_header_list',this).hide();});var url=getViewCartUrl(cart,options);var text='>View Rental Cart</a>';if(goto_checkout){url=getViewCheckoutUrl(cart,options);text='> Start Checkout</a>';}
$(br_cart+" .content",containerElement).append(['<div class="br_primary_action">','<a class="br_button large" href="',url,'"',target,text,'</div>'].join(''));updateCart(containerElement,cart,true,options);},appendCheckoutButton:function(containerElement,cart,options){options=options||{};if(options&&options.substring)options={target:options.toString()};var target=options&&options.target?' target="'+options.target+'"':'';var goto_checkout=(options&&(options.gotoCheckout==true||options.gotoCheckout=="true"));var checkoutButtonHtml='<div class="br_template_component br_checkout"><div class="br_checkout_content">';if(goto_checkout){checkoutButtonHtml=checkoutButtonHtml+'<a class="br_button" href="'+getViewCheckoutUrl(cart,options)+'"'+target+'>';}else{checkoutButtonHtml=checkoutButtonHtml+'<a class="br_button" href="'+getViewCartUrl(cart,options)+'"'+target+'>';}
checkoutButtonHtml=checkoutButtonHtml+'<span class="br_checkout_quantity">0</span> Rental Item<span class="br_checkout_plural">s</span> &#187;</a></div></div>';$(checkoutButtonHtml).appendTo($(containerElement));updateCart(containerElement,cart,true,options);},appendAddToCartComponent:function(containerElement,book,options){options=options||{};$('<div class="br_template_component br_add_book"><div class="br_add_book_content"></div></div>').appendTo($(containerElement));if(book==null){if(options.hide_unavailable==undefined||!options.hide_unavailable||options.hide_unavailable=="false")
$('.br_add_book_content',containerElement).append('<div class="br_unavailable">Unavailable for Rental</div>');else
$('.br_add_book',containerElement).removeClass('br_add_book');return;}
var rentalOptions=initializeRentalOptions(book.prices,containerElement,options)
$('.br_add_book_content',containerElement).append('<select name="rental_period">'+rentalOptions.join('')+'</select>');$.each(book.prices,function(){var dueDate=this.due_date?'Due Date: '+(this.due_date.getMonth()+1)+'/'+this.due_date.getDate()+'/'+this.due_date.getFullYear():'';$('.br_add_book_content',containerElement).append('<div rental_period="'+this.rental_period+'" class="br_period_selectable br_due_date">'+dueDate+'</div>');});$('.br_add_book_content',containerElement).append('<div class="br_add_button"><input class="br_button" type="button" value="Add to Rental Cart" /></div>')
$('.br_button',containerElement).click(function(event){var rentalPeriod=$('select[name=rental_period] option:selected',containerElement).val();Bookrenter.addToCart(book.info.isbn13,rentalPeriod,processAddToCart(options,$('.br_add_book',containerElement)));return false;});$('.br_add_book select',containerElement).change(function(){$('.br_period_selectable',containerElement).hide();$('.br_period_selectable[rental_period='+$(this).val()+']',containerElement).show();});},appendAddToCartItem:function(containerElement,book,options){options=options||{};$('<div class="br_template_component br_item add_to_cart_container"></div>').appendTo($(containerElement));if(book==null){if(options.hide_unavailable==undefined||!options.hide_unavailable||options.hide_unavailable=="false"){$('.br_item',containerElement).append('<div class="br_unavailable">Unavailable for Rental</div>');}else{$('.br_item',containerElement).removeClass('br_item');}
return;}
var rentalOptions=initializeRentalOptions(book.prices,containerElement,options)
$('.br_item',containerElement).append('<select name="rental_period">'+rentalOptions.join('')+'</select>');$('.br_item',containerElement).append('<input type="button" class="br_simple_btn" value="Add to Rental Cart">');$.each(book.prices,function(){$('.br_item',containerElement).append('<div rental_period="'+this.rental_period+'" class="br_period_selectable br_price"'+
(this.rental_period.search(options.rental_period)>=0?' style="display:block"':'')+'>Rental Price: <span>'+
this.price+'</span></div>');});$.each(book.prices,function(){var dueDate=this.due_date?'Due Date: '+(this.due_date.getMonth()+1)+'/'+this.due_date.getDate()+'/'+this.due_date.getFullYear():'';$('.br_item',containerElement).append('<div rental_period="'+this.rental_period+'" class="br_period_selectable br_due_date">'+dueDate+'</div>');});$('.br_simple_btn',containerElement).click(function(event){var rentalPeriod=$('select[name=rental_period] option:selected',containerElement).val();Bookrenter.addToCart(book.info.isbn13,rentalPeriod,processAddToCart(options,$('.br_item',containerElement)));return false;});$('.br_item select',containerElement).change(function(){$('.br_period_selectable',containerElement).hide();$('.br_period_selectable[rental_period='+$(this).val()+']',containerElement).show();});},appendAddToCartRadio:function(containerElement,book,options){options=options||{};$(containerElement).append($('<div>').addClass('br_template_component').addClass('br_item').addClass('add_to_cart_widget'));if(book==null){if(options.hide_unavailable==undefined||!options.hide_unavailable||options.hide_unavailable=="false")
$('.br_item',containerElement).append($('<div>').addClass('br_unavailable').append('Unavailable for Rental'));else
$('.br_item',containerElement).removeClass('add_to_cart_widget');return;}
if(options.rental_period==undefined){options.rental_period='125'}
var rental_options=$('<div>');var buy_options=null;var actualPrice=0;var checked="";$.each(book.prices,function(){if(options.rental_period==this.rental_period){actualPrice=this.price;checked=true;}else{checked=false;}
var radio_option='';var radio_btn=$('<input>',containerElement).attr('type','radio').attr('name',containerElement.id+'_rental_period').attr('value',this.rental_period).attr('price',this.price).attr('checked',checked);radio_btn.click(function(event){$(this).parents('ul').siblings().removeClass('selected');$(this).parents('ul').addClass('selected');$('span.price_actual',containerElement).html($(this).attr('price'));});if(this.rental_period!='buy'&&this.rental_period!='used_buy'){var due_date=(months[this.due_date.getMonth()])+' '+this.due_date.getDate();var ul=$('<ul>').addClass('rental_options').append($('<li>').addClass('option_select').append(radio_btn)).append($('<li>').addClass('days').append(this.days)).append($('<li>').addClass('due').append(due_date)).append($('<li>').addClass('price').append(this.price));rental_options.append(ul);}else{if(buy_options==null){buy_options=$('<div>');}
var ul=$('<ul>').addClass('rental_options').append($('<li>').addClass('option_select').append(radio_btn)).append($('<li>').addClass('condition').append(this.condition)).append($('<li>').addClass('price').append(this.price));buy_options.append(ul);}});var listPrice=book.info.retail_price;var your_price_row=$('<div>').addClass('br_price').append($('<span>').addClass('method').append('YOUR PRICE:')).append($('<span>').addClass('price_actual').append(actualPrice));var list_price_row=$('<div>').addClass('br_list_price').append($('<span>').addClass('type').append('List Price:')).append($('<span>').addClass('price_list').append(listPrice));var days_row=$('<li>').append('Days').addClass('days');var due_date_row=$('<li>').append('Due Date').addClass('due');var price_row=$('<li>').append('Price').addClass('price');var rental_intro_row=$('<h4>').append('Rent<span> Extend or buy any time. </span>');var rental_header_row=$('<ul>').addClass('key').append(days_row).append(due_date_row).append(price_row);var condition_row=$('<li>').addClass('condition').append('Condition');var price_row=$('<li>').addClass('price').append('Price');var buy_intro_row=$('<h4>').append('Buy')
var buy_header_row=$('<ul>').addClass('key').append(condition_row).append(price_row);$('.add_to_cart_widget',containerElement).append($('<div>').addClass(''));$('.add_to_cart_widget',containerElement).append(your_price_row);$('.add_to_cart_widget',containerElement).append(list_price_row);$('.add_to_cart_widget',containerElement).append(rental_intro_row);$('.add_to_cart_widget',containerElement).append(rental_header_row);$('.add_to_cart_widget',containerElement).append(rental_options);if(buy_options!=null){$('.add_to_cart_widget',containerElement).append(buy_intro_row);$('.add_to_cart_widget',containerElement).append(buy_header_row);$('.add_to_cart_widget',containerElement).append(buy_options);}
$('.add_to_cart_widget',containerElement).append('<div class="br_add_button"><input class="br_button" type="button" value="Add to Rental Cart" /></div>')
$('.br_add_button',containerElement).click(function(event){var rentalPeriod=$('input[name='+containerElement.id+'_rental_period]:checked',containerElement).val();Bookrenter.addToCart(book.info.isbn13,rentalPeriod,processAddToCart(options,$('.br_item',containerElement)));return false;});},appendSearchComponent:function(containerElement,options){options=options||{};var format=options.format;var title=options.title;$('<div class="br_template_component br_search"></div>').appendTo($(containerElement));var title='Rent Textbooks:';if(options.title!=undefined){title=options.title;}
var search_bar='<form>'+'<h2>'+'<label title="Find your textbook" for="search_field">'+title+'</label>'+'</h2>'+'<div class="search_input_container">'+'<input type="text" id="search_field" value="Search by ISBN, Title, or Author" title="Search by ISBN, Title, or Author" name="term" maxlength="100">'+'</div>'+'<button class="br_search_btn" type="submit" title="Search for your textbook">Find Book</button>'+'</form>';$('.br_search',containerElement).append(search_bar);$('input#search_field',containerElement).addClass("idleField");$('input#search_field',containerElement).focus(function(){$(this).removeClass("idleField").addClass("focusField");if(this.value==this.defaultValue){this.value='';}
if(this.value!=this.defaultValue){this.select();}});$('input#search_field',containerElement).blur(function(){$(this).removeClass("focusField").addClass("idleField");if($.trim(this.value)==''){this.value=(this.defaultValue?this.defaultValue:'');}});var resultsContainer=[];if(options.resultsContainer!=undefined){resultsContainer=$(options.resultsContainer);}
if(resultsContainer.length==0){$(containerElement).append('<div class="results"></div>');resultsContainer=$('.results',containerElement);}
$('.br_search button.br_search_btn',containerElement).bind('click',{widgetContainer:containerElement,resultsContainer:resultsContainer,options:options},doSearch);},templatize:function(bookstoreSettings){$(function(){if(bookstoreSettings.isBookstorePage()){if(bookstoreSettings.initializeBookstorePage){bookstoreSettings.initializeBookstorePage();}
if((bookstoreSettings.isCartPage&&bookstoreSettings.isCartPage())||(bookstoreSettings.isCheckoutPage&&bookstoreSettings.isCheckoutPage())){Bookrenter.getCart(function(response){var cart=response.cart;cart.view_cart_url=Bookrenter.addCartIdToUrl('https://'+Bookrenter.API_HOST+'/store/cart?store_return_url='+escape(window.location.href));if(bookstoreSettings.isCartPage&&bookstoreSettings.isCartPage()){bookstoreSettings.initializeCartPage(cart);}
if(bookstoreSettings.isCheckoutPage&&bookstoreSettings.isCheckoutPage()){var target=bookstoreSettings.getCheckoutTarget!=null?bookstoreSettings.getCheckoutTarget():null;bookstoreSettings.initializeCheckoutPage(cart,target);}});}}
if(bookstoreSettings.hasAddToCartItem&&bookstoreSettings.hasAddToCartItem()){var isbns=new Array();$.each(bookstoreSettings.getAddToCartItems(),function(){isbns.push(bookstoreSettings.getIsbn(this));});Bookrenter.getProducts(isbns,function(response){var books=response.response.books;if(books!=null){$.each(bookstoreSettings.getAddToCartItems(),function(){var isbn=bookstoreSettings.getIsbn(this);var book=findBookByIsbn(books,isbn);if(book!=null){bookstoreSettings.initializeAddToCartItem(this,book);}});}});}
if(bookstoreSettings.isProductDetailsPage&&bookstoreSettings.isProductDetailsPage()){var isbns=new Array();$.each(bookstoreSettings.getAddToCartComponents(),function(){isbns.push(bookstoreSettings.getIsbn(this));});Bookrenter.getProducts(isbns,function(response){var books=response.response.books;if(books!=null){$.each(bookstoreSettings.getAddToCartComponents(),function(){var isbn=bookstoreSettings.getIsbn(this);var book=findBookByIsbn(books,isbn);if(book!=null){bookstoreSettings.initializeProductDetailsPage(this,book);}});}});}});}}})(jQuery);BookrenterDefaultTemplate=(function(){return{showCheckoutButton:function(target){var target=(target!=undefined&&target.length>0)?'target="'+target+'"':'';document.write('<div class="bookrenterCheckout"'+target+'></div>');},showAddToCartButton:function(isbn){document.write('<div id="showAddToCartButton" isbn="'+isbn+'" class="bookrenterAddToCart"></div>');},showCartComponent:function(){document.write('<div class="bookrenterCart"></div>');},showCartComponentDetail:function(){document.write('<div class="bookrenterCartDetail"></div>');},showAddToCartItem:function(isbn){document.write('<div isbn="'+isbn+'" class="bookrenterAddToCartItem"></div>');}}})();(function($){BookrenterTemplate.templatize({isBookstorePage:function(){return true;},isCartPage:function(){return $('.bookrenterCart').size()>0;},isCheckoutPage:function(){return $('.bookrenterCheckout').size()>0;},isProductDetailsPage:function(){return $('.bookrenterAddToCart').size()>0;},hasAddToCartItem:function(){return $('.bookrenterAddToCartItem').size()>0;},getAddToCartItems:function(){return $('.bookrenterAddToCartItem');},getAddToCartComponents:function(){return $('.bookrenterAddToCart');},initializeBookstorePage:function(){},initializeCartPage:function(cart){BookrenterTemplate.appendCartComponent('.bookrenterCart',cart);},initializeCheckoutPage:function(cart,target){BookrenterTemplate.appendCheckoutButton('.bookrenterCheckout',cart,target);},getIsbn:function(component){return $(component).attr('isbn');},getCheckoutTarget:function(){return $('.bookrenterCheckout:first').attr('target');},initializeProductDetailsPage:function(component,book){BookrenterTemplate.appendAddToCartComponent(component,book);},initializeAddToCartItem:function(component,book){BookrenterTemplate.appendAddToCartItem(component,book);}});})(jQuery);
