예제 #1
0
 /**
  * Loads items information as quickly as possible (no direct calls to the ILS).  Does do filtering by loan rules
  *
  * return is an array of items with the following information:
  *  location
  *  callnumber
  *  available
  *  holdable
  *  lastStatusCheck (time)
  *
  * @param $id
  * @param $scopingEnabled
  * @param $marcRecord
  * @return mixed
  */
 public function getItemsFast($id, $scopingEnabled, $marcRecord = null)
 {
     /** @var Memcache $memCache */
     global $memCache;
     $key = 'items_fast_' . $id . '_' . $scopingEnabled;
     $cachedValue = $memCache->get($key);
     if ($cachedValue == false || isset($_REQUEST['reload'])) {
         global $configArray;
         $cachedValue = $this->driver->getItemsFast($id, $scopingEnabled, $marcRecord);
         $memCache->add($key, $cachedValue, 0, $configArray['Caching']['item_data']);
     }
     return $cachedValue;
 }