diff --git a/themes/blueprint/templates/RecordDriver/SolrDefault/list-entry.phtml b/themes/blueprint/templates/RecordDriver/SolrDefault/list-entry.phtml
index a5ef70353f02b988c4da7497ed3939360d1d9f28..099ab934f3d05bdb1147a67469683958d946100e 100644
--- a/themes/blueprint/templates/RecordDriver/SolrDefault/list-entry.phtml
+++ b/themes/blueprint/templates/RecordDriver/SolrDefault/list-entry.phtml
@@ -10,7 +10,8 @@
         $user_id = $this->user ? $this->user->id : null;
     }
 ?>
-<div class="listentry recordId source<?=$this->escapeHtml($source)?>" id="record<?=$this->escapeHtml($id)?>">
+<div class="listentry recordId source<?=$this->escapeHtml($source)?><?=$this->driver->supportsAjaxStatus()?' ajaxItemId':''?>" id="record<?=$this->escapeHtml($id)?>">
+  <input type="hidden" value="<?=$this->escapeHtml($this->driver->getUniqueID())?>" class="hiddenId" />
   <div class="span-2">
     <? if ($listThumb = $this->record($this->driver)->getThumbnail()): ?>
       <img src="<?=$this->escapeHtml($listThumb)?>" class="summcover" alt="<?=$this->transEsc('Cover Image')?>"/>
@@ -58,7 +59,27 @@
         <br/>
     <? endif; ?>
 
+    <div class="callnumAndLocation">
+      <? if ($this->driver->supportsAjaxStatus()): ?>
+        <strong class="hideIfDetailed"><?=$this->transEsc('Call Number')?>:</strong>
+        <span class="callnumber ajax_availability hide">
+          <?=$this->transEsc('Loading')?>...
+        </span><br class="hideIfDetailed"/>
+        <strong><?=$this->transEsc('Located')?>:</strong>
+        <span class="location ajax_availability hide">
+          <?=$this->transEsc('Loading')?>...
+        </span>
+        <div class="locationDetails hide"></div>
+      <? else: ?>
+        <? $summCallNo = $this->driver->getCallNumber(); if (!empty($summCallNo)): ?>
+          <strong><?=$this->transEsc('Call Number')?>:</strong> <?=$this->escapeHtml($summCallNo)?>
+        <? endif; ?>
+      <? endif; ?>
+    </div>
     <?=$this->record($this->driver)->getFormatList()?>
+    <? if ($this->driver->supportsAjaxStatus()): ?>
+      <div class="status ajax_availability hide"><?=$this->transEsc('Loading')?>...</div>
+    <? endif; ?>
   </div>
 
   <? // Allow editing if a list is selected and edit is allowed OR if no list is selected
diff --git a/themes/blueprint/templates/myresearch/mylist.phtml b/themes/blueprint/templates/myresearch/mylist.phtml
index 594ca91ca6f24b8434940072471687e29ce5fdd6..a2b5c8346f6bb9324a0d84d6d3f520adc6107145 100644
--- a/themes/blueprint/templates/myresearch/mylist.phtml
+++ b/themes/blueprint/templates/myresearch/mylist.phtml
@@ -13,6 +13,7 @@
 
     // Load Javascript dependencies into header:
     $this->headScript()->appendFile("bulk_actions.js");
+    $this->headScript()->appendFile("check_item_statuses.js");
 
     // Convenience variable:
     $account = $this->auth()->getManager();
diff --git a/themes/jquerymobile/templates/RecordDriver/SolrDefault/list-entry.phtml b/themes/jquerymobile/templates/RecordDriver/SolrDefault/list-entry.phtml
index debf75de308d6a664a597c32866ab374881a9e8f..af10d29eb6942a5fc19f513f560964c9cd54c2e5 100644
--- a/themes/jquerymobile/templates/RecordDriver/SolrDefault/list-entry.phtml
+++ b/themes/jquerymobile/templates/RecordDriver/SolrDefault/list-entry.phtml
@@ -11,7 +11,8 @@
     }
 ?>
 <a rel="external" href="<?=$this->recordLink()->getUrl($this->driver)?>">
-  <div class="result">
+  <div class="result source<?=$this->escapeHtml($this->driver->getResourceSource())?> recordId<?=$this->driver->supportsAjaxStatus()?' ajaxItemId':''?>">
+    <input type="hidden" value="<?=$this->escapeHtml($this->driver->getUniqueID())?>" class="hiddenId" />
     <h3>
       <?
         $listTitle = $this->driver->getTitle();
@@ -44,7 +45,22 @@
       <? endforeach; ?>
     <? endif; ?>
 
+    <? if ($this->driver->supportsAjaxStatus()): ?>
+      <p class="callnumAndLocation">
+        <strong><?=$this->transEsc('Call Number')?>:</strong>
+        <span class="callnumber ajax_availability hide"><?=$this->transEsc('Loading')?>...</span><br />
+        <strong><?=$this->transEsc('Located')?>:</strong>
+        <span class="location ajax_availability hide"><?=$this->transEsc('Loading')?>...</span>
+      </p>
+    <? else: ?>
+      <? $summCallNo = $this->driver->getCallNumber(); if (!empty($summCallNo)): ?>
+        <p><strong><?=$this->transEsc('Call Number')?>:</strong> <?=$this->escapeHtml($summCallNo)?></p>
+      <? endif; ?>
+    <? endif; ?>
     <?=$this->record($this->driver)->getFormatList()?>
+    <? if ($this->driver->supportsAjaxStatus()): ?>
+      <p><span class="ajax_availability hide status"><?=$this->transEsc('Loading')?>...</span></p>
+    <? endif; ?>
   </div>
 </a>
 <? // Allow editing if a list is selected and edit is allowed OR if no list is selected
diff --git a/themes/jquerymobile/templates/myresearch/mylist.phtml b/themes/jquerymobile/templates/myresearch/mylist.phtml
index 60bd3abe4dbf670b32ab6c2f2d269bb8eb4bbbb8..d98e6d6478a59dbad8b10c36c18ea807fce9ce23 100644
--- a/themes/jquerymobile/templates/myresearch/mylist.phtml
+++ b/themes/jquerymobile/templates/myresearch/mylist.phtml
@@ -8,6 +8,9 @@
     // Set up page title:
     $this->headTitle(isset($list) ? $list->title : $this->translate('Favorites'));
 
+    // Load Javascript dependencies into header:
+    $this->headScript()->appendFile("check_item_statuses.js");
+
     // Set up extra button for header:
     $extraButton = (isset($list) && $list->editAllowed($user))
         ? '<a rel="external" href="'
@@ -18,7 +21,7 @@
         : '';
 ?>
 
-<div data-role="page" id="MyResearch-list">
+<div data-role="page" id="MyResearch-list" class="results-page">
   <?=$this->mobileMenu()->header(array('extraButtons'=>array($extraButton)))?>
   <div data-role="content">
     <? foreach ($this->results->getRecommendations('side') as $current): ?>