/** * Implements hook_preprocess_ting_search_collection(). * * Add extra information from elib to the ting objects. */ function ebog_preprocess_ting_search_collection(&$vars) { foreach ($vars['collection']->objects as $obj) { $isbn = $obj->record['dc:identifier']['oss:PROVIDER-ID'][0]; if (isset($vars['elib'])) { $vars['elib'][$isbn] = array(); } else { $vars['elib'] = array(); } // Get authors. $vars['elib'][$isbn]['author'] = publizon_get_authors($obj); try { $product = new PublizonProduct($isbn); // Get cover image. $vars['elib'][$isbn]['elib_book_cover'] = $product->getCover('170_x'); // Get e-book sample link. if (!empty($product->teaser_link)) { $vars['elib'][$isbn]['elib_sample_link'] = 'stream/' . $isbn . '/preview/'; } // Check if the book is loaned by the user. global $user; if ($user->uid > 0) { $user_loans = new PublizonUserLoans($user->uid); $vars['elib'][$isbn]['is_loan'] = $user_loans->isLoan($isbn, TRUE); if ($vars['elib'][$isbn]['is_loan']) { $vars['elib'][$isbn]['cvo'] = $user_loans->loans[$isbn]->internal_order_number; } } } catch (Exception $e) { drupal_set_message($e->getMessage(), 'error'); } } }
<?php } ?> <div class="icons"> <ul> <?php if (isset($elib_sample_link)) { ?> <li><?php print l(t('Sample'), $elib_sample_link, array('html' => true, 'attributes' => array('action' => 'sample', 'target' => '_blank'))); ?> </li> <li class="seperator"></li> <?php if (isset($is_loan) && $is_loan) { $query = array('cvo' => $cvo, 'title' => $object->record['dc:title'][''][0], 'author' => publizon_get_authors($object, FALSE)); ?> <li><?php print l(t('Read'), 'stream/' . $object->record['dc:identifier']['oss:PROVIDER-ID'][0], array('query' => array($query), 'html' => true, 'attributes' => array('class' => 'cvo', 'target' => '_blank'))); ?> </li> <?php } else { ?> <li><?php print l(t('Borrow'), 'publizon/' . $object->record['dc:identifier']['oss:PROVIDER-ID'][0] . '/stream', array('html' => true, 'attributes' => array('class' => 'ting-object-loan', 'action' => 'stream', 'target' => '_blank'))); ?> </li> <?php } ?>
<?php } ?> <div class="icons"> <ul> <?php if (isset($elib[$isbn]['elib_sample_link'])) { ?> <li><?php print l(t('Sample'), $elib[$isbn]['elib_sample_link'], array('html' => TRUE, 'attributes' => array('target' => '_blank', 'action' => 'sample'))); ?> </li> <li class="seperator"></li> <?php if ($elib[$isbn]['is_loan']) { $query = array('cvo' => $elib[$isbn]['cvo'], 'title' => $obj->title, 'author' => publizon_get_authors($obj, FALSE)); ?> <li><?php print l(t('Read'), 'stream/' . $isbn, array('query' => array($query), 'html' => TRUE, 'attributes' => array('class' => 'cvo', 'target' => '_blank'))); ?> </li> <?php } else { ?> <li><?php print l(t('Borrow'), 'publizon/' . $isbn . '/stream', array('html' => TRUE, 'attributes' => array('class' => 'ebook-stream', 'target' => '_blank', 'action' => 'stream'))); ?> </li> <?php } ?>