From ebd95950a159b8c9017e037892693752d7e2d637 Mon Sep 17 00:00:00 2001
From: Uma <uma.s@vtiger.com>
Date: Thu, 2 Jan 2020 14:56:13 +0530
Subject: [PATCH] Fixes #1189 Calendar related module added to reference field

---
 modules/Migration/schema/720_to_721.php | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/modules/Migration/schema/720_to_721.php b/modules/Migration/schema/720_to_721.php
index af49e1392..82bae67f3 100644
--- a/modules/Migration/schema/720_to_721.php
+++ b/modules/Migration/schema/720_to_721.php
@@ -50,4 +50,26 @@ if (defined('VTIGER_UPGRADE')) {
     $db->pquery('UPDATE vtiger_selectcolumn set columnname = ? where columnname=?', array('vtiger_email_track:access_count:Emails_Access_Count:access_count:I', 'vtiger_email_track:access_count:Emails_Access_Count:access_count:V'));
     $db->pquery('UPDATE vtiger_relcriteria set columnname = ?, comparator = ? where columnname=?', array('vtiger_email_track:access_count:Emails_Access_Count:access_count:I', 'ny', 'vtiger_email_track:access_count:Emails_Access_Count:access_count:V'));
     echo 'Email access count field data type updated to Int';
+    
+    //References module added to Calendar parent_id field to link activites to parent record
+    $calendarModuleModel = Vtiger_Module_Model::getInstance('Calendar');
+    $fieldModel = $calendarModuleModel->getField('parent_id');
+    $fieldId = $fieldModel->getId();
+    $query = "SELECT * FROM vtiger_ws_fieldtype WHERE uitype=?";
+    $result = $db->pquery($query,array($fieldModel->get('uitype')));
+    $fieldTypeId = $db->query_result($result,0,'fieldtypeid');
+
+    $qResult = $db->pquery('SELECT type FROM vtiger_ws_referencetype WHERE fieldtypeid = ?', array($fieldTypeId));
+    $existingModules = array();
+    for($i=0;$i<$db->num_rows($qResult);$i++) {
+        $existingModules[] = $db->query_result($qResult, $i ,'type');
+    }
+
+    $newModules = array('Invoice','Quotes','PurchaseOrder','SalesOrder');
+    foreach($newModules as $module) {
+        if(!in_array($module, $existingModules)) {
+            $db->pquery('INSERT INTO vtiger_ws_referencetype VALUES (?,?)', array($fieldTypeId, $module));
+            echo "<br>".$module.' Reference module added';
+        }
+    }
 }
\ No newline at end of file
-- 
GitLab