From b245ec35e5f26db4572a4572bc3806edb5e6fd86 Mon Sep 17 00:00:00 2001
From: Prasad <prasad@vtiger.com>
Date: Mon, 4 Oct 2021 21:59:48 +0530
Subject: [PATCH] PHP V8 variable usage warning fixes

---
 include/ListView/ListViewController.php       |  2 +-
 includes/runtime/Controller.php               |  6 +++++-
 layouts/v7/modules/Vtiger/PopupContents.tpl   | 16 ++++++++++++----
 modules/Calendar/actions/ActivityReminder.php |  1 +
 modules/Vtiger/models/Record.php              |  2 +-
 modules/Vtiger/views/Popup.php                |  3 ++-
 6 files changed, 22 insertions(+), 8 deletions(-)

diff --git a/include/ListView/ListViewController.php b/include/ListView/ListViewController.php
index b5838a2d2..8257cfe95 100644
--- a/include/ListView/ListViewController.php
+++ b/include/ListView/ListViewController.php
@@ -87,7 +87,7 @@ class ListViewController {
 		if(count($idList) == 0) {
 			return;
 		}
-		if($parentReferenceFieldName) {
+		if(isset($parentReferenceFieldName) && $parentReferenceFieldName) {
 			$moduleList = $referenceFieldInfoList[$field->referenceFieldName];
 		} else {
 			$moduleList = $referenceFieldInfoList[$fieldName];
diff --git a/includes/runtime/Controller.php b/includes/runtime/Controller.php
index fd7a13f7e..8793a12c7 100644
--- a/includes/runtime/Controller.php
+++ b/includes/runtime/Controller.php
@@ -158,7 +158,7 @@ abstract class Vtiger_View_Controller extends Vtiger_Action_Controller {
 
 	function getViewer(Vtiger_Request $request) {
 		if(!$this->viewer) {
-			global $vtiger_current_version, $vtiger_display_version, $onlyV7Instance;
+			global $vtiger_current_version, $vtiger_display_version, $onlyV7Instance, $current_user;
 			$viewer = new Vtiger_Viewer();
 			$viewer->assign('APPTITLE', getTranslatedString('APPTITLE'));
 			$viewer->assign('VTIGER_VERSION', $vtiger_current_version);
@@ -176,6 +176,7 @@ abstract class Vtiger_View_Controller extends Vtiger_Action_Controller {
 			$viewer->assign('PARENT_MODULE', '');
 			$viewer->assign('EXTENSION_MODULE', '');
 			$viewer->assign('moduleName', '');
+			$viewer->assign('CURRENT_USER_ID', $current_user ? $current_user->id : "");
 
 			$viewer->assign('NOTIFIER_URL', '');
 			$viewer->assign('GLOBAL_SEARCH_VALUE', '');
@@ -218,6 +219,9 @@ abstract class Vtiger_View_Controller extends Vtiger_Action_Controller {
 
 			// RelatedLists
 			$viewer->assign('TOTAL_ENTRIES', 0);
+
+			// Popupview
+			$viewer->assign('IS_MODULE_DISABLED', false);
 		}
 		return $this->viewer;
 	}
diff --git a/layouts/v7/modules/Vtiger/PopupContents.tpl b/layouts/v7/modules/Vtiger/PopupContents.tpl
index e20a0eba5..73783e4a5 100644
--- a/layouts/v7/modules/Vtiger/PopupContents.tpl
+++ b/layouts/v7/modules/Vtiger/PopupContents.tpl
@@ -70,14 +70,18 @@
                         {foreach item=LISTVIEW_HEADER from=$LISTVIEW_HEADERS}
                             <td>
                             {assign var=FIELD_UI_TYPE_MODEL value=$LISTVIEW_HEADER->getUITypeModel()}
+                            {assign var=SEARCH_DETAILS_FIELD_INFO value=array('searchValue' => '', 'comparator' => '')}
+                            {if isset($SEARCH_DETAILS[$LISTVIEW_HEADER->getName()])}
+                                {assign var=SEARCH_DETAILS_FIELD_INFO value=$SEARCH_DETAILS[$LISTVIEW_HEADER->getName()]}
+                            {/if}
                             {include file=vtemplate_path($FIELD_UI_TYPE_MODEL->getListSearchTemplateName(),$MODULE_NAME)
-                            FIELD_MODEL= $LISTVIEW_HEADER SEARCH_INFO=$SEARCH_DETAILS[$LISTVIEW_HEADER->getName()] USER_MODEL=$CURRENT_USER_MODEL}
+                            FIELD_MODEL= $LISTVIEW_HEADER SEARCH_INFO=$SEARCH_DETAILS_FIELD_INFO USER_MODEL=$CURRENT_USER_MODEL}
                             </td>
                         {/foreach}
                     </tr>
                 {/if}
                 {foreach item=LISTVIEW_ENTRY from=$LISTVIEW_ENTRIES name=popupListView}
-                    {assign var="RECORD_DATA" value="{$LISTVIEW_ENTRY->getRawData()}"}
+                    {assign var="RECORD_DATA" value=$LISTVIEW_ENTRY->getRawData()}
                     <tr class="listViewEntries" data-id="{$LISTVIEW_ENTRY->getId()}" {if $MODULE eq 'EmailTemplates'} data-name="{$RECORD_DATA['subject']}" data-info="{$LISTVIEW_ENTRY->get('body')}" {else} data-name="{$LISTVIEW_ENTRY->getName()}" data-info='{Vtiger_Util_Helper::toSafeHTML(ZEND_JSON::encode($LISTVIEW_ENTRY->getRawData()))}' {/if}
                     {if $GETURL neq ''} data-url='{$LISTVIEW_ENTRY->$GETURL()}' {/if}  id="{$MODULE}_popUpListView_row_{$smarty.foreach.popupListView.index+1}">
                     {if $MULTI_SELECT}
@@ -90,7 +94,11 @@
                     {foreach item=LISTVIEW_HEADER from=$LISTVIEW_HEADERS}
                     {assign var=LISTVIEW_HEADERNAME value=$LISTVIEW_HEADER->get('name')}
                     {assign var=LISTVIEW_ENTRY_VALUE value=$LISTVIEW_ENTRY->get($LISTVIEW_HEADERNAME)}
-                    <td class="listViewEntryValue value textOverflowEllipsis {$WIDTHTYPE}" title="{$RECORD_DATA[$LISTVIEW_HEADERNAME]}">
+                    {assign var=RECORD_DATA_LISTVIEW_HEADERNAME value=""}
+                    {if isset($RECORD_DATA[$LISTVIEW_HEADERNAME])}
+                        {assign var=RECORD_DATA_LISTVIEW_HEADERNAME value=$RECORD_DATA[$LISTVIEW_HEADERNAME]}
+                    {/if}
+                    <td class="listViewEntryValue value textOverflowEllipsis {$WIDTHTYPE}" title="$RECORD_DATA_LISTVIEW_HEADERNAME">
                         {if $LISTVIEW_HEADER->isNameField() eq true or $LISTVIEW_HEADER->get('uitype') eq '4'}
                             <a>{$LISTVIEW_ENTRY->get($LISTVIEW_HEADERNAME)}</a>
                         {else if $LISTVIEW_HEADER->get('uitype') eq '72'}
@@ -133,7 +141,7 @@
                 </div>
             </div>
         {/if}
-        {if $FIELDS_INFO neq null}
+        {if isset($FIELDS_INFO) && $FIELDS_INFO neq null}
             <script type="text/javascript">
                 var popup_uimeta = (function() {
                     var fieldInfo  = {$FIELDS_INFO};
diff --git a/modules/Calendar/actions/ActivityReminder.php b/modules/Calendar/actions/ActivityReminder.php
index b1a358bf5..b052ac3f7 100644
--- a/modules/Calendar/actions/ActivityReminder.php
+++ b/modules/Calendar/actions/ActivityReminder.php
@@ -50,6 +50,7 @@ class Calendar_ActivityReminder_Action extends Vtiger_Action_Controller{
 
 	function getReminders(Vtiger_Request $request) {
 		$recordModels = Calendar_Module_Model::getCalendarReminder();
+		$records = array();
 		foreach($recordModels as $record) {
 			$records[] = $record->getDisplayableValues();
 			$record->updateReminderStatus();
diff --git a/modules/Vtiger/models/Record.php b/modules/Vtiger/models/Record.php
index 463df7792..90df2d030 100644
--- a/modules/Vtiger/models/Record.php
+++ b/modules/Vtiger/models/Record.php
@@ -121,7 +121,7 @@ class Vtiger_Record_Model extends Vtiger_Base_Model {
 	 * @return <Array>
 	 */
 	public function getRawData() {
-		return $this->rawData;
+		return isset($this->rawData) ? $this->rawData : null;
 	}
 
 	/**
diff --git a/modules/Vtiger/views/Popup.php b/modules/Vtiger/views/Popup.php
index f5b5d3e82..0b9c1b291 100644
--- a/modules/Vtiger/views/Popup.php
+++ b/modules/Vtiger/views/Popup.php
@@ -187,7 +187,8 @@ class Vtiger_Popup_View extends Vtiger_Footer_View {
 		}
 
 		// If there are no related records with parent module then, we should show all the records
-		if(!$parent_related_records && !empty($relatedParentModule) && !empty($relatedParentId)){
+		if((!isset($parent_related_records) || !$parent_related_records) && 
+			!empty($relatedParentModule) && !empty($relatedParentId)){
 			$relatedParentModule = null;
 			$relatedParentId = null;
 			$listViewModel = Vtiger_ListView_Model::getInstanceForPopup($moduleName);
-- 
GitLab