From 9b4ae98779a7c2e763dc230041fae0dd4867b4a0 Mon Sep 17 00:00:00 2001
From: Edsel Lopez <edsel.lopez@jmaconsulting.biz>
Date: Fri, 4 Apr 2025 16:47:59 +0530
Subject: [PATCH] Fixes for extension

---
 .../AdvImport/JuniorMembership.php             | 18 +++++++++---------
 info.xml                                       |  6 +++---
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/CRM/Cnsadvancedimport/AdvImport/JuniorMembership.php b/CRM/Cnsadvancedimport/AdvImport/JuniorMembership.php
index c0ecc39..d3d3e6f 100644
--- a/CRM/Cnsadvancedimport/AdvImport/JuniorMembership.php
+++ b/CRM/Cnsadvancedimport/AdvImport/JuniorMembership.php
@@ -3,6 +3,7 @@
 use Civi\Api4\Organization;
 use Civi\Api4\Individual;
 use Civi\Api4\Relationship;
+use Civi\Api4\Membership;
 use CRM_Cnsadvancedimport_ExtensionUtil as E;
 
 class CRM_Cnsadvancedimport_AdvImport_JuniorMembership extends CRM_Advimport_Helper_PHPExcel {
@@ -26,8 +27,8 @@ class CRM_Cnsadvancedimport_AdvImport_JuniorMembership extends CRM_Advimport_Hel
     ];
     $duplicateContacts = CRM_Contact_BAO_Contact::getDuplicateContacts($dedupeParams, 'Individual');
     if (count($duplicateContacts) > 0) {
-      throw new CRM_Core_Exception('Duplicate Contact found for params ' . json_encode($dedupeParams));
-    }
+	  CRM_Advimport_Utils::logImportWarning($dedupeParams, "Duplicate Contact found for ");
+	}
     $orgDedupeContacts = CRM_Contact_BAO_Contact::getDuplicateContacts([
       'organization_name' => $params['Name_of_Training_Program'],
     ], 'Organization');
@@ -38,8 +39,8 @@ class CRM_Cnsadvancedimport_AdvImport_JuniorMembership extends CRM_Advimport_Hel
       $orgContactID = $orgDedupeContacts[0];
     }
     $individualParams = $dedupeParams;
-    $individualParmas['Neurology_Training_Experience.Residency_Completed_Date'] = $params['Student_Form__Scheduled_Residency_Training_Completion_Date'];
-    $individualParmas['Additional_Information.Professional_Credentials'] = $params['Student_Form__Degree_MD_PHD_DO_'];
+    $individualParams['Neurology_Training_Experience.Residency_Completed_Date'] = $params['Student_Form__Scheduled_Residency_Training_Completion_Date'];
+    $individualParams['Additional_Information.Professional_Credentials'] = $params['Student_Form__Degree_MD_PHD_DO_'];
     $individualContactID = Individual::create(FALSE)
       ->setValues($individualParams)
       ->execute()
@@ -48,18 +49,17 @@ class CRM_Cnsadvancedimport_AdvImport_JuniorMembership extends CRM_Advimport_Hel
       ->addValue('contact_id_a', $individualContactID)
       ->addValue('contact_id_b', $orgContactID)
       ->addValue('start_date', date('Y-m-d'))
-      ->addValue('relatonship_type_id:name', 'Employer_of')
+      ->addValue('relationship_type_id:name', 'Employer_of')
       ->execute();
     $date = new DateTime($params['Student_Form__Scheduled_Residency_Training_Completion_Date']);
     $date->modify('+18 months');
     Membership::create(FALSE)
       ->addValue('contact_id', $individualContactID)
-      ->addValue('membership_type_id', 7)
+      ->addValue('membership_type_id:label', 'Junior')
       ->addValue('is_override', 1)
-      ->addValue('status_id', 5)
+      ->addValue('status_id:label', 'Pending')
       ->addValue('start_date', date('Y-m-d'))
       ->addValue('end_date', $date->format('Y-m-d'))
       ->execute();
   }
-
-}
\ No newline at end of file
+}
diff --git a/info.xml b/info.xml
index c24c321..7de61b8 100644
--- a/info.xml
+++ b/info.xml
@@ -1,12 +1,12 @@
 <?xml version="1.0"?>
 <extension key="cnsadvancedimport" type="module">
   <file>cnsadvancedimport</file>
-  <name>cnsadvancedimport</name>
-  <description>FIXME</description>
+  <name>Junior Membership Import</name>
+  <description>Creates an advanced import to import Junior memberships based on an exported list from Gravity forms</description>
   <license>AGPL-3.0</license>
   <authors>
     <author>
-      <name>Seamus Lee</name>
+      <name>JMA Consulting</name>
       <email>support@jmaconsulting.biz</email>
       <role>Maintainer</role>
     </author>
-- 
GitLab