From 8e6001d91912205a7fbd1dcad55978cb77a98e2d Mon Sep 17 00:00:00 2001 From: varshith89 Date: Tue, 17 Apr 2018 14:18:37 +0000 Subject: [PATCH] Add New API Call To Get All Unique Fields For Given Entity --- api/v3/Generic/Getunique.php | 56 ++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 api/v3/Generic/Getunique.php diff --git a/api/v3/Generic/Getunique.php b/api/v3/Generic/Getunique.php new file mode 100644 index 0000000000..956474533d --- /dev/null +++ b/api/v3/Generic/Getunique.php @@ -0,0 +1,56 @@ +tableName(); + + $sql = 'SHOW INDEX FROM '.$_entityTable.' WHERE Non_unique = 0'; + $uFields = CRM_Core_DAO::executeQuery($sql)->fetchAll(); + foreach($uFields as $field) { + // group by Key_name to handle combination indexes + $uniqueFields[$field['Key_name']][] = $field['Column_name']; + } + + return civicrm_api3_create_success($uniqueFields); +} + -- 2.25.1