Project

General

Profile

« Previous | Next » 

Revision 54a4201c

Added by Andreas Kohlbecker almost 3 years ago

fix #9669 further improvement of cdm_ws_fetch_all()

View differences:

modules/cdm_dataportal/cdm_api/cdm_api.module
1206 1206
  $page_size = 500;
1207 1207
  $entities = [];
1208 1208

  
1209
  while ($page_index !== FALSE){
1209
  while (true){
1210 1210
    $pager =  cdm_ws_page($resourceURI, $page_size, $page_index, $query,  $method, $absoluteURI);
1211 1211
    if(isset($pager->records) && is_array($pager->records)) {
1212 1212
      $entities = array_merge($entities, $pager->records);
1213
      if(!empty($pager->nextIndex) && $page_index != $pager->nextIndex){
1213
      if(is_numeric($pager->nextIndex) && $page_index < $pager->nextIndex){
1214 1214
        $page_index = $pager->nextIndex;
1215 1215
      } else {
1216
        $page_index = FALSE;
1216
        break;
1217 1217
      }
1218 1218
    } else {
1219
      $page_index = FALSE;
1219
      break;
1220 1220
    }
1221 1221
  }
1222 1222
  return $entities;

Also available in: Unified diff