From 06a88bde9d51050c150ec69fc6be869a31cea4f9 Mon Sep 17 00:00:00 2001 From: satish <satish.dvnk@vtiger.com> Date: Thu, 15 Feb 2018 19:11:30 +0530 Subject: [PATCH] Fixes #675 - vTiger 6.5 - 7.0.1 migration - Dashboard error --- modules/Migration/schema/660_to_700.php | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/modules/Migration/schema/660_to_700.php b/modules/Migration/schema/660_to_700.php index 2e0fb8a3e..f0e3aa264 100644 --- a/modules/Migration/schema/660_to_700.php +++ b/modules/Migration/schema/660_to_700.php @@ -1416,7 +1416,7 @@ if(defined('VTIGER_UPGRADE')) { $result = $db->pquery('SELECT id FROM vtiger_dashboard_tabs WHERE userid=? AND tabname=?', array(1, 'Default')); $defaultTabid = $db->query_result($result, 0, 'id'); //Setting admin user default tabid to DEFAULT - $db->pquery("ALTER TABLE vtiger_module_dashboard_widgets ADD COLUMN dashboardtabid INT(11) DEFAULT $defaultTabid", array()); + $db->pquery("ALTER TABLE vtiger_module_dashboard_widgets ADD COLUMN dashboardtabid INT(11)", array()); //TODO : this will fail if there are any entries to vtiger_module_dashboard_widgets $db->pquery('ALTER TABLE vtiger_module_dashboard_widgets ADD CONSTRAINT FOREIGN KEY (dashboardtabid) REFERENCES vtiger_dashboard_tabs(id) ON DELETE CASCADE', array()); @@ -1427,12 +1427,10 @@ if(defined('VTIGER_UPGRADE')) { $num_rows = $db->num_rows($result); for ($i=0; $i<$num_rows; $i++) { $rowdata = $db->query_result_rowdata($result, $i); - if ($rowdata['dashboardtabid'] == null) { - $result1 = $db->pquery('SELECT id FROM vtiger_dashboard_tabs WHERE userid=? AND tabname=?', array($rowdata['userid'], 'My Dashboard')); - if ($db->num_rows($result1) > 0) { - $tabid = $db->query_result($result1, 0, 'id'); - $db->pquery('UPDATE vtiger_module_dashboard_widgets SET dashboardtabid=? WHERE id=? AND userid=?', array($tabid, $rowdata['id'], $rowdata['userid'])); - } + $result1 = $db->pquery('SELECT id FROM vtiger_dashboard_tabs WHERE userid=? AND tabname IN (?, ?)', array($rowdata['userid'], 'My Dashboard', 'Default')); + if ($db->num_rows($result1) > 0) { + $tabid = $db->query_result($result1, 0, 'id'); + $db->pquery('UPDATE vtiger_module_dashboard_widgets SET dashboardtabid=? WHERE id=? AND userid=?', array($tabid, $rowdata['id'], $rowdata['userid'])); } } -- GitLab