From 1760d23b88c390ce780c1be03b25b5367406d18c Mon Sep 17 00:00:00 2001
From: Prasad <prasad@vtiger.com>
Date: Fri, 7 Oct 2022 15:21:53 +0530
Subject: [PATCH] Fixed: Array key access using string instead of undefined
 constant

---
 data/CRMEntity.php                            |  6 ++---
 data/Tracker.php                              |  2 +-
 modules/Accounts/Accounts.php                 | 10 ++++----
 modules/Calendar/Activity.php                 |  2 +-
 modules/Campaigns/Campaigns.php               |  2 +-
 modules/Contacts/Contacts.php                 | 24 +++++++++----------
 modules/HelpDesk/dashboards/OpenTickets.php   |  2 +-
 modules/Leads/Leads.php                       |  8 +++----
 .../MailConverter/handlers/MailBox.php        |  6 ++---
 .../MailConverter/handlers/MailScanner.php    | 24 +++++++++----------
 .../handlers/MailScannerInfo.php              |  4 ++--
 11 files changed, 45 insertions(+), 45 deletions(-)

diff --git a/data/CRMEntity.php b/data/CRMEntity.php
index cf3d0bb7c..44358d5de 100644
--- a/data/CRMEntity.php
+++ b/data/CRMEntity.php
@@ -2964,11 +2964,11 @@ class CRMEntity {
 		$list_buttons = Array();
 
 		if (isPermitted($currentModule, 'Delete', '') == 'yes')
-			$list_buttons['del'] = $app_strings[LBL_MASS_DELETE];
+			$list_buttons['del'] = $app_strings["LBL_MASS_DELETE"];
 		if (isPermitted($currentModule, 'EditView', '') == 'yes') {
-			$list_buttons['mass_edit'] = $app_strings[LBL_MASS_EDIT];
+			$list_buttons['mass_edit'] = $app_strings["LBL_MASS_EDIT"];
 			// Mass Edit could be used to change the owner as well!
-			//$list_buttons['c_owner'] = $app_strings[LBL_CHANGE_OWNER];
+			//$list_buttons['c_owner'] = $app_strings["LBL_CHANGE_OWNER"];
 		}
 		return $list_buttons;
 	}
diff --git a/data/Tracker.php b/data/Tracker.php
index 017a44db7..7c59b6e75 100755
--- a/data/Tracker.php
+++ b/data/Tracker.php
@@ -144,7 +144,7 @@ $log->info("in  track view method ".$current_module);
 
 
             // If the module was not specified or the module matches the module of the row, add the row to the list
-            if($module_name == "" || $row[module_name] == $module_name)
+            if($module_name == "" || $row["module_name"] == $module_name)
             {
 		//Adding Security check
 		require_once('include/utils/utils.php');
diff --git a/modules/Accounts/Accounts.php b/modules/Accounts/Accounts.php
index aa2c41eb8..1076fcf2b 100644
--- a/modules/Accounts/Accounts.php
+++ b/modules/Accounts/Accounts.php
@@ -1434,18 +1434,18 @@ class Accounts extends CRMEntity {
 		$list_buttons = Array();
 
 		if(isPermitted('Accounts','Delete','') == 'yes') {
-			$list_buttons['del'] = $app_strings[LBL_MASS_DELETE];
+			$list_buttons['del'] = $app_strings["LBL_MASS_DELETE"];
 		}
 		if(isPermitted('Accounts','EditView','') == 'yes') {
-			$list_buttons['mass_edit'] = $app_strings[LBL_MASS_EDIT];
-			$list_buttons['c_owner'] = $app_strings[LBL_CHANGE_OWNER];
+			$list_buttons['mass_edit'] = $app_strings["LBL_MASS_EDIT"];
+			$list_buttons['c_owner'] = $app_strings["LBL_CHANGE_OWNER"];
 		}
 		if(isPermitted('Emails','EditView','') == 'yes') {
-			$list_buttons['s_mail'] = $app_strings[LBL_SEND_MAIL_BUTTON];
+			$list_buttons['s_mail'] = $app_strings["LBL_SEND_MAIL_BUTTON"];
 		}
 		// mailer export
 		if(isPermitted('Accounts','Export','') == 'yes') {
-			$list_buttons['mailer_exp'] = $mod_strings[LBL_MAILER_EXPORT];
+			$list_buttons['mailer_exp'] = $mod_strings["LBL_MAILER_EXPORT"];
 		}
 		// end of mailer export
 		return $list_buttons;
diff --git a/modules/Calendar/Activity.php b/modules/Calendar/Activity.php
index b3be26379..5e6eaf2e9 100644
--- a/modules/Calendar/Activity.php
+++ b/modules/Calendar/Activity.php
@@ -705,7 +705,7 @@ function insertIntoRecurringTable(& $recurObj)
 					}
 				}
 
-				$task[contact_name] = return_name($row, 'cfn', 'cln');
+				$task["contact_name"] = return_name($row, 'cfn', 'cln');
 
 					$list[] = $task;
 				}
diff --git a/modules/Campaigns/Campaigns.php b/modules/Campaigns/Campaigns.php
index 0d95f2515..50ad738b0 100644
--- a/modules/Campaigns/Campaigns.php
+++ b/modules/Campaigns/Campaigns.php
@@ -548,7 +548,7 @@ class Campaigns extends CRMEntity {
 			$popupitemshtml = '';
 			foreach($this->campaignrelstatus as $campaingrelstatus)
 			{
-				$camprelstatus = getTranslatedString($campaingrelstatus[campaignrelstatus],'Campaigns');
+				$camprelstatus = getTranslatedString($campaingrelstatus["campaignrelstatus"],'Campaigns');
 				$popupitemshtml .= "<a onmouseover=\"javascript: showBlock('campaignstatus_popup_$key')\" href=\"javascript:updateCampaignRelationStatus('$related_module', '".$this->id."', '$key', '$campaingrelstatus[campaignrelstatusid]', '".addslashes($camprelstatus)."');\">$camprelstatus</a><br />";
 			}
 			$popuphtml = '<div onmouseover="javascript:clearTimeout(statusPopupTimer);" onmouseout="javascript:closeStatusPopup(\'campaignstatus_popup_'.$key.'\');" style="margin-top: -14px; width: 200px;" id="campaignstatus_popup_'.$key.'" class="calAction"><div style="background-color: #FFFFFF; padding: 8px;">'.$popupitemshtml.'</div></div>';
diff --git a/modules/Contacts/Contacts.php b/modules/Contacts/Contacts.php
index 2110e140e..422c09245 100644
--- a/modules/Contacts/Contacts.php
+++ b/modules/Contacts/Contacts.php
@@ -277,21 +277,21 @@ class Contacts extends CRMEntity {
               {
                   $contact = Array();
 
-		  $contact[lastname] = in_array("lastname",$permitted_field_lists) ? $row[lastname] : "";
-		  $contact[firstname] = in_array("firstname",$permitted_field_lists)? $row[firstname] : "";
-		  $contact[email] = in_array("email",$permitted_field_lists) ? $row[email] : "";
+		  $contact["lastname"] = in_array("lastname",$permitted_field_lists) ? $row["lastname"] : "";
+		  $contact["firstname"] = in_array("firstname",$permitted_field_lists)? $row["firstname"] : "";
+		  $contact["email"] = in_array("email",$permitted_field_lists) ? $row["email"] : "";
 
 
                   if(in_array("accountid",$permitted_field_lists))
                   {
-                      $contact[accountname] = $row[accountname];
-                      $contact[account_id] = $row[accountid];
+                      $contact["accountname"] = $row["accountname"];
+                      $contact["account_id"] = $row["accountid"];
                   }else
 		  {
-                      $contact[accountname] = "";
-                      $contact[account_id] = "";
+                      $contact["accountname"] = "";
+                      $contact["account_id"] = "";
 		  }
-                  $contact[contactid] =  $row[contactid];
+                  $contact["contactid"] =  $row["contactid"];
                   $list[] = $contact;
               }
           }
@@ -1573,14 +1573,14 @@ function get_contactsforol($user_name)
 		$list_buttons = Array();
 
 		if(isPermitted('Contacts','Delete','') == 'yes') {
-			$list_buttons['del'] = $app_strings[LBL_MASS_DELETE];
+			$list_buttons['del'] = $app_strings["LBL_MASS_DELETE"];
 		}
 		if(isPermitted('Contacts','EditView','') == 'yes') {
-			$list_buttons['mass_edit'] = $app_strings[LBL_MASS_EDIT];
-			$list_buttons['c_owner'] = $app_strings[LBL_CHANGE_OWNER];
+			$list_buttons['mass_edit'] = $app_strings["LBL_MASS_EDIT"];
+			$list_buttons['c_owner'] = $app_strings["LBL_CHANGE_OWNER"];
 		}
 		if(isPermitted('Emails','EditView','') == 'yes'){
-			$list_buttons['s_mail'] = $app_strings[LBL_SEND_MAIL_BUTTON];
+			$list_buttons['s_mail'] = $app_strings["LBL_SEND_MAIL_BUTTON"];
 		}
 		return $list_buttons;
 	}
diff --git a/modules/HelpDesk/dashboards/OpenTickets.php b/modules/HelpDesk/dashboards/OpenTickets.php
index ee07b1cba..c71557a91 100644
--- a/modules/HelpDesk/dashboards/OpenTickets.php
+++ b/modules/HelpDesk/dashboards/OpenTickets.php
@@ -28,7 +28,7 @@ class HelpDesk_OpenTickets_Dashboard extends Vtiger_IndexAjax_View {
 		$data = $moduleModel->getOpenTickets();
         $listViewUrl = $moduleModel->getListViewUrlWithAllFilter();
         for($i = 0;$i<php7_count($data);$i++){
-            $data[$i]["links"] = $listViewUrl.$this->getSearchParams($data[$i][name]).'&nolistcache=1';
+            $data[$i]["links"] = $listViewUrl.$this->getSearchParams($data[$i]["name"]).'&nolistcache=1';
         }
 
 		$widget = Vtiger_Widget_Model::getInstance($linkId, $currentUser->getId());
diff --git a/modules/Leads/Leads.php b/modules/Leads/Leads.php
index 1793fb114..0d366b322 100755
--- a/modules/Leads/Leads.php
+++ b/modules/Leads/Leads.php
@@ -653,14 +653,14 @@ class Leads extends CRMEntity {
 		$list_buttons = Array();
 
 		if(isPermitted('Leads','Delete','') == 'yes') {
-			$list_buttons['del'] =	$app_strings[LBL_MASS_DELETE];
+			$list_buttons['del'] =	$app_strings["LBL_MASS_DELETE"];
 		}
 		if(isPermitted('Leads','EditView','') == 'yes') {
-			$list_buttons['mass_edit'] = $app_strings[LBL_MASS_EDIT];
-			$list_buttons['c_owner'] = $app_strings[LBL_CHANGE_OWNER];
+			$list_buttons['mass_edit'] = $app_strings["LBL_MASS_EDIT"];
+			$list_buttons['c_owner'] = $app_strings["LBL_CHANGE_OWNER"];
 		}
 		if(isPermitted('Emails','EditView','') == 'yes')
-			$list_buttons['s_mail'] = $app_strings[LBL_SEND_MAIL_BUTTON];
+			$list_buttons['s_mail'] = $app_strings["LBL_SEND_MAIL_BUTTON"];
 
 		// end of mailer export
 		return $list_buttons;
diff --git a/modules/Settings/MailConverter/handlers/MailBox.php b/modules/Settings/MailConverter/handlers/MailBox.php
index 267f0f3db..178df8828 100644
--- a/modules/Settings/MailConverter/handlers/MailBox.php
+++ b/modules/Settings/MailConverter/handlers/MailBox.php
@@ -96,9 +96,9 @@ class Vtiger_MailBox {
 			$connectStringShort = '{'. "$mailboxsettings[server]/$mailboxsettings[protocol]:$mailboxsettings[port]" .$mailboxsettings[readonly] ."}";
 
 			$this->log("Trying to connect using $connectString$folder", true);
-			if(!$imap = @imap_open("$connectString$folder", $mailboxsettings[username], $mailboxsettings[password])) {
+			if(!$imap = @imap_open("$connectString$folder", $mailboxsettings["username"], $mailboxsettings["password"])) {
 				$this->log("Connect failed using $connectString$folder, trying with $connectStringShort$folder...", true);
-				$imap = @imap_open("$connectStringShort$folder", $mailboxsettings[username], $mailboxsettings[password]);
+				$imap = @imap_open("$connectStringShort$folder", $mailboxsettings["username"], $mailboxsettings["password"]);
 				if($imap) {
 					$this->_imapurl = $connectStringShort;
 					$this->_imapfolder = $folder;
@@ -136,7 +136,7 @@ class Vtiger_MailBox {
 		$isconnected = false;
 		$connectString = $this->_imapurl;
 		$this->log("Trying to open folder using $connectString$folder");
-		$imap = @imap_open("$connectString$folder", $mailboxsettings[username], $mailboxsettings[password]);
+		$imap = @imap_open("$connectString$folder", $mailboxsettings["username"], $mailboxsettings["password"]);
 		if($imap) {
 
 			// Perform cleanup task before re-initializing the connection
diff --git a/modules/Settings/MailConverter/handlers/MailScanner.php b/modules/Settings/MailConverter/handlers/MailScanner.php
index 39804a59c..37c6f8c97 100644
--- a/modules/Settings/MailConverter/handlers/MailScanner.php
+++ b/modules/Settings/MailConverter/handlers/MailScanner.php
@@ -371,13 +371,13 @@ class Vtiger_MailScanner {
 		if($accountid) {
 			if($this->_cachedAccounts[$accountid]) {
 				$account_focus = $this->_cachedAccounts[$accountid];
-				$this->log("Reusing Cached Account [" . $account_focus->column_fields[accountname] . "]");
+				$this->log("Reusing Cached Account [" . $account_focus->column_fields["accountname"] . "]");
 			} else {
 				$account_focus = CRMEntity::getInstance('Accounts');
 				$account_focus->retrieve_entity_info($accountid, 'Accounts');
 				$account_focus->id = $accountid;
 
-				$this->log("Caching Account [" . $account_focus->column_fields[accountname] . "]");
+				$this->log("Caching Account [" . $account_focus->column_fields["accountname"] . "]");
 				$this->_cachedAccounts[$accountid] = $account_focus;
 			}
 		}
@@ -395,15 +395,15 @@ class Vtiger_MailScanner {
 		if($contactid) {
 			if($this->_cachedContacts[$contactid]) {
 				$contact_focus = $this->_cachedContacts[$contactid];
-				$this->log("Reusing Cached Contact [" . $contact_focus->column_fields[lastname] .
-				   	'-' . $contact_focus->column_fields[firstname] . "]");
+				$this->log("Reusing Cached Contact [" . $contact_focus->column_fields["lastname"] .
+				   	'-' . $contact_focus->column_fields["firstname"] . "]");
 			} else {
 				$contact_focus = CRMEntity::getInstance('Contacts');
 				$contact_focus->retrieve_entity_info($contactid, 'Contacts');
 				$contact_focus->id = $contactid;
 
-				$this->log("Caching Contact [" . $contact_focus->column_fields[lastname] .
-				   	'-' . $contact_focus->column_fields[firstname] . "]");
+				$this->log("Caching Contact [" . $contact_focus->column_fields["lastname"] .
+				   	'-' . $contact_focus->column_fields["firstname"] . "]");
 				$this->_cachedContacts[$contactid] = $contact_focus;
 			}
 		}
@@ -420,15 +420,15 @@ class Vtiger_MailScanner {
 		if ($leadid) {
 			if ($this->_cachedLeads[$leadid]) {
 				$lead_focus = $this->_cachedLeads[$leadid];
-				$this->log("Reusing Cached Lead [" . $lead_focus->column_fields[lastname] .
-						'-' . $lead_focus->column_fields[firstname] . "]");
+				$this->log("Reusing Cached Lead [" . $lead_focus->column_fields["lastname"] .
+						'-' . $lead_focus->column_fields["firstname"] . "]");
 			} else {
 				$lead_focus = CRMEntity::getInstance('Leads');
 				$lead_focus->retrieve_entity_info($leadid, 'Leads');
 				$lead_focus->id = $leadid;
 
-				$this->log("Caching Lead [" . $lead_focus->column_fields[lastname] .
-						'-' . $lead_focus->column_fields[firstname] . "]");
+				$this->log("Caching Lead [" . $lead_focus->column_fields["lastname"] .
+						'-' . $lead_focus->column_fields["firstname"] . "]");
 				$this->_cachedLeads[$leadid] = $lead_focus;
 			}
 		}
@@ -463,7 +463,7 @@ class Vtiger_MailScanner {
 					$ticket_focus = false;
 				}
 				if($ticket_focus) {
-					$this->log("Reusing Cached Ticket [" . $ticket_focus->column_fields[ticket_title] ."]");
+					$this->log("Reusing Cached Ticket [" . $ticket_focus->column_fields["ticket_title"] ."]");
 				}
 			} else {
 				$ticket_focus = CRMEntity::getInstance('HelpDesk');
@@ -474,7 +474,7 @@ class Vtiger_MailScanner {
 					$ticket_focus = false;
 				}
 				if($ticket_focus) {
-					$this->log("Caching Ticket [" . $ticket_focus->column_fields[ticket_title] . "]");
+					$this->log("Caching Ticket [" . $ticket_focus->column_fields["ticket_title"] . "]");
 					$this->_cachedTickets[$ticketid] = $ticket_focus;
 				}
 			}
diff --git a/modules/Settings/MailConverter/handlers/MailScannerInfo.php b/modules/Settings/MailConverter/handlers/MailScannerInfo.php
index 8bb3a6203..df2612007 100644
--- a/modules/Settings/MailConverter/handlers/MailScannerInfo.php
+++ b/modules/Settings/MailConverter/handlers/MailScannerInfo.php
@@ -269,8 +269,8 @@ class Vtiger_MailScannerInfo {
 			global $adb;
 			$adb->pquery("UPDATE vtiger_mailscanner_folders set enabled=0 WHERE scannerid=?", Array($this->scannerid));
 			foreach($folderinfo as $foldername=>$foldervalue) {
-				$folderid = $foldervalue[folderid];
-				$enabled  = $foldervalue[enabled];
+				$folderid = $foldervalue["folderid"];
+				$enabled  = $foldervalue["enabled"];
 				$adb->pquery("UPDATE vtiger_mailscanner_folders set enabled=? WHERE folderid=? AND scannerid=?",
 					Array($enabled,$folderid,$this->scannerid));
 			}
-- 
GitLab