function mostpopular_service_load_multiple in Drupal Most Popular 7
Implements hook_load_multiple().
Loads configured most popular services based on their IDs.
Parameters
array $sids : The IDs of the desired services.
array $conditions: Additional conditions to use.
boolean $reset : True if the cache should be reset.
Return value
array An array of most popular service configurations.
See also
2 calls to mostpopular_service_load_multiple()
- mostpopular_service_load in ./
mostpopular.module  - Implements hook_load().
 - mostpopular_service_load_by_block in ./
mostpopular.module  - Loads configured most popular services within the given block.
 
File
- ./
mostpopular.module, line 463  - The main file for the Most Popular module.
 
Code
function mostpopular_service_load_multiple($sids = array(), $conditions = array()) {
  // Unless conditions are specified explicitly, only get the enabled services.
  if (empty($sids) && empty($conditions)) {
    $conditions['enabled'] = 1;
  }
  $q = db_select('mostpopular_service', 's')
    ->fields('s');
  if (!empty($sids)) {
    $q
      ->condition('sid', $sids);
  }
  foreach ($conditions as $field => $value) {
    $q
      ->condition($field, $value);
  }
  $q
    ->orderBy('weight', 'ASC');
  $services = $q
    ->execute()
    ->fetchAllAssoc('sid', PDO::FETCH_ASSOC);
  // Augment each service with data from the hooks
  foreach ($services as $sid => $service) {
    $info = mostpopular_service_info($service['module'], $service['delta']);
    if ($info) {
      $service += $info;
    }
    // Unserialize the extra data
    if (!empty($service['data'])) {
      $service['data'] = unserialize($service['data']);
    }
    $services[$sid] = (object) $service;
  }
  return $services;
}