fix file on case search by id and broken pagination
authordemeritcowboy <demeritcowboy@hotmail.com>
Sun, 2 Apr 2023 17:28:19 +0000 (13:28 -0400)
committerdemeritcowboy <demeritcowboy@hotmail.com>
Sun, 2 Apr 2023 17:28:19 +0000 (13:28 -0400)
api/v3/Generic/Getlist.php

index ec0fb38877dc5966fba320e64a9413c11bac974b..53aa4526e2c1aa2b476dacb39aca080d2f268c6f 100644 (file)
@@ -41,7 +41,7 @@ function civicrm_api3_generic_getList($apiRequest) {
 
   $searchResult = _civicrm_api3_generic_getlist_get_result($request, $entity, $meta, $apiRequest);
   $foundIDCount = 0;
-  if ($forceIdSearch && !empty($result['values'])) {
+  if ($forceIdSearch && !empty($result['values']) && isset($idRequest['id'])) {
     $contactSearchID = $idRequest['id'];
     $foundIDCount = 1;
     // Merge id fetch into search result.
@@ -205,7 +205,7 @@ function _civicrm_api3_generic_getList_defaults(string $entity, array &$request,
       // Adding one extra result allows us to see if there are any more
       'limit' => $resultsPerPage + 1,
       // Because sql is zero-based
-      'offset' => ($request['page_num'] - 1) * $resultsPerPage,
+      'offset' => ($request['page_num'] > 1) ? (($request['page_num'] - 1) * $resultsPerPage) : 0,
     ];
   }
 }