From 1f38a45d3140f2638110e3bdcdd8c4998a1d93ad Mon Sep 17 00:00:00 2001 From: Prasad <prasad@vtiger.com> Date: Fri, 20 Sep 2024 11:05:17 +0530 Subject: [PATCH] Fixes #1913: PHP 8.x 8E-ALL fixes for Mobile module --- include/utils/utils.php | 4 +- layouts/v7/modules/Mobile/simple/Header.tpl | 2 +- libraries/HTTP_Session/Session.php | 52 +++++++++--------- modules/Calendar/models/ListView.php | 4 +- modules/Calendar/models/Module.php | 2 +- packages/vtiger/mandatory/Mobile.zip | Bin 1202509 -> 1202620 bytes .../modules/Mobile/modules/Mobile/api.php | 1 + .../modules/Mobile/api/ws/Controller.php | 4 +- .../Mobile/modules/Mobile/api/ws/Describe.php | 4 +- .../modules/Mobile/api/ws/FetchRecord.php | 4 ++ .../Mobile/api/ws/FetchReferenceRecords.php | 4 +- .../modules/Mobile/api/ws/SaveRecord.php | 4 +- .../Mobile/modules/Mobile/html/Viewer.php | 1 - .../modules/Mobile/modules/Mobile/ical.php | 3 +- .../modules/Mobile/modules/Mobile/index.php | 1 + 15 files changed, 48 insertions(+), 42 deletions(-) diff --git a/include/utils/utils.php b/include/utils/utils.php index f6385811d..199182e2c 100755 --- a/include/utils/utils.php +++ b/include/utils/utils.php @@ -126,7 +126,7 @@ function get_user_array($add_blank=true, $status="Active", $assigned_user="",$pr } static $user_array = null; if(!$module){ - $module=$_REQUEST['module']; + $module=isset($_REQUEST['module']) ? $_REQUEST['module'] : ""; } @@ -197,7 +197,7 @@ function get_group_array($add_blank=true, $status="Active", $assigned_user="",$p } static $group_array = null; if(!$module){ - $module=$_REQUEST['module']; + $module=isset($_REQUEST['module']) ? $_REQUEST['module'] : ""; } if($group_array == null) diff --git a/layouts/v7/modules/Mobile/simple/Header.tpl b/layouts/v7/modules/Mobile/simple/Header.tpl index 845f40a6c..18e7ea5db 100644 --- a/layouts/v7/modules/Mobile/simple/Header.tpl +++ b/layouts/v7/modules/Mobile/simple/Header.tpl @@ -18,7 +18,7 @@ <!--link rel="stylesheet" href="https://fonts.googleapis.com/css?family=RobotoDraft:300,400,500,700,400italic"--> {* Include desired styles injected *} - {if $_styles} + {if isset($_styles) && $_styles} {foreach item=_style from=$_styles} <link type="text/css" rel="stylesheet" href="../../{$TEMPLATE_WEBPATH}/{$_style}"> {/foreach} diff --git a/libraries/HTTP_Session/Session.php b/libraries/HTTP_Session/Session.php index e5ec6dcd0..b103f816b 100644 --- a/libraries/HTTP_Session/Session.php +++ b/libraries/HTTP_Session/Session.php @@ -120,7 +120,7 @@ class HTTP_Session * @return void * @see session_set_save_handler() */ - function setContainer($container, $container_options = null) + static function setContainer($container, $container_options = null) { $container_class = 'HTTP_Session_Container_' . $container; $container_classfile = 'HTTP/Session/Container/' . $container . '.php'; @@ -184,7 +184,7 @@ class HTTP_Session * @return void * @see session_write_close() */ - function pause() + static function pause() { session_write_close(); } @@ -227,7 +227,7 @@ class HTTP_Session * @access public * @return bool */ - function regenerateId($deleteOldSessionData = false) + static function regenerateId($deleteOldSessionData = false) { if (function_exists('session_regenerate_id')) { return session_regenerate_id($deleteOldSessionData); @@ -259,7 +259,7 @@ class HTTP_Session * @access public * @return bool */ - function replicate($targetTable, $id = null) + static function replicate($targetTable, $id = null) { return $GLOBALS['HTTP_Session_Container']->replicate($targetTable, $id); } @@ -272,7 +272,7 @@ class HTTP_Session * @access public * @return void */ - function clear() + static function clear() { $info = $_SESSION['__HTTP_Session_Info']; session_unset(); @@ -286,7 +286,7 @@ class HTTP_Session * @access private * @return string Session ID (if exists) or null */ - function detectID() + static function detectID() { if (HTTP_Session::useCookies()) { if (isset($_COOKIE[HTTP_Session::name()])) { @@ -313,7 +313,7 @@ class HTTP_Session * @return string Previous name of a session * @see session_name() */ - function name($name = null) + static function name($name = null) { return isset($name) ? session_name($name) : session_name(); } @@ -343,7 +343,7 @@ class HTTP_Session * @access public * @return void */ - function setExpire($time, $add = false) + static function setExpire($time, $add = false) { if ($add) { if (!isset($_SESSION['__HTTP_Session_Expire_TS'])) { @@ -373,7 +373,7 @@ class HTTP_Session * @access public * @return void */ - function setIdle($time, $add = false) + static function setIdle($time, $add = false) { if ($add) { $_SESSION['__HTTP_Session_Idle'] = $time; @@ -392,7 +392,7 @@ class HTTP_Session * @access public * @return integer Time when the session idles */ - function sessionValidThru() + static function sessionValidThru() { if (!isset($_SESSION['__HTTP_Session_Idle_TS']) || !isset($_SESSION['__HTTP_Session_Idle'])) { @@ -445,7 +445,7 @@ class HTTP_Session * @access public * @return void */ - function updateIdle() + static function updateIdle() { $_SESSION['__HTTP_Session_Idle_TS'] = time(); } @@ -465,7 +465,7 @@ class HTTP_Session * * @return bool The previous value of the property */ - function useCookies($useCookies = null) + static function useCookies($useCookies = null) { $return = ini_get('session.use_cookies') ? true : false; if (isset($useCookies)) { @@ -486,7 +486,7 @@ class HTTP_Session * @return bool True if the session was created * with the current request, false otherwise */ - function isNew() + static function isNew() { // The best way to check if a session is new is to check // for existence of a session data storage @@ -509,7 +509,7 @@ class HTTP_Session * @return bool * @see session_register() */ - function register($name) + static function register($name) { return session_register($name); } @@ -526,7 +526,7 @@ class HTTP_Session * @return bool * @see session_unregister() */ - function unregister($name) + static function unregister($name) { return session_unregister($name); } @@ -542,7 +542,7 @@ class HTTP_Session * @access public * @return bool */ - function registered($name) + static function registered($name) { return session_is_registered($name); } @@ -575,7 +575,7 @@ class HTTP_Session * @access public * @return mixed Value of a variable */ - function &getRef($name) + static function &getRef($name) { if (isset($_SESSION[$name])) { $return =& $_SESSION[$name]; @@ -617,7 +617,7 @@ class HTTP_Session * @access public * @return mixed Old value of a variable */ - function setRef($name, &$value) + static function setRef($name, &$value) { $return = (isset($_SESSION[$name])) ? $_SESSION[$name] : null; @@ -635,7 +635,7 @@ class HTTP_Session * @access public * @return bool */ - function is_set($name) + static function is_set($name) { return isset($_SESSION[$name]); } @@ -652,7 +652,7 @@ class HTTP_Session * @access public * @return mixed Value of a local variable */ - function &getLocal($name, $default = null) + static function &getLocal($name, $default = null) { $local = md5(HTTP_Session::localName()); if (!isset($_SESSION[$local]) || !is_array($_SESSION[$local])) { @@ -675,7 +675,7 @@ class HTTP_Session * @access public * @return mixed Old value of a local variable */ - function setLocal($name, $value) + static function setLocal($name, $value) { $local = md5(HTTP_Session::localName()); if (!isset($_SESSION[$local]) || !is_array($_SESSION[$local])) { @@ -701,7 +701,7 @@ class HTTP_Session * @access public * @return string Previous local name */ - function localName($name = null) + static function localName($name = null) { $return = (isset($GLOBALS['__HTTP_Session_Localname'])) ? $GLOBALS['__HTTP_Session_Localname'] : null; @@ -719,7 +719,7 @@ class HTTP_Session * @access private * @return void */ - function _init() + static function _init() { // Disable auto-start of a sesion ini_set('session.auto_start', 0); @@ -742,7 +742,7 @@ class HTTP_Session * @access public * @return bool The previous value of the property */ - function useTransSID($useTransSID = null) + static function useTransSID($useTransSID = null) { $return = ini_get('session.use_trans_sid') ? true : false; if (isset($useTransSID)) { @@ -764,7 +764,7 @@ class HTTP_Session * @access public * @return bool The previous value of the property */ - function setGcMaxLifetime($gcMaxLifetime = null) + static function setGcMaxLifetime($gcMaxLifetime = null) { $return = ini_get('session.gc_maxlifetime'); if (isset($gcMaxLifetime) && is_int($gcMaxLifetime) && $gcMaxLifetime >= 1) { @@ -787,7 +787,7 @@ class HTTP_Session * @access public * @return bool The previous value of the property */ - function setGcProbability($gcProbability = null) + static function setGcProbability($gcProbability = null) { $return = ini_get('session.gc_probability'); if (isset($gcProbability) && diff --git a/modules/Calendar/models/ListView.php b/modules/Calendar/models/ListView.php index 1bd081836..d5f737ce4 100644 --- a/modules/Calendar/models/ListView.php +++ b/modules/Calendar/models/ListView.php @@ -286,7 +286,7 @@ class Calendar_ListView_Model extends Vtiger_ListView_Model { // if the user is having view all permission then it should show the record // as we are showing in detail view - if($profileGlobalPermission[1] ==0 || $profileGlobalPermission[2] ==0) { + if(isset($profileGlobalPermission) && ($profileGlobalPermission[1] ==0 || $profileGlobalPermission[2] ==0)) { $visibility = false; } @@ -299,7 +299,7 @@ class Calendar_ListView_Model extends Vtiger_ListView_Model { } $record['subject'] = vtranslate('Busy','Events').'*'; } - if($record['activitytype'] == 'Task') { + if(isset($record['activitytype']) && $record['activitytype'] == 'Task') { unset($record['visibility']); unset($rawData['visibility']); } diff --git a/modules/Calendar/models/Module.php b/modules/Calendar/models/Module.php index 24c7e4d45..cd78f8cde 100644 --- a/modules/Calendar/models/Module.php +++ b/modules/Calendar/models/Module.php @@ -90,7 +90,7 @@ class Calendar_Module_Model extends Vtiger_Module_Model { $recordInstance = parent::getRecordFromArray($valueArray, $rawData); $recordInstance->setData($valueArray)->setModuleFromInstance($this)->setRawData($rawData); // added to fix picklist colorizer issue, list page not showing color for records - if ($rawData['status'] && empty($rawData['taskstatus'])) { + if (isset($rawData['status']) && $rawData['status'] && empty($rawData['taskstatus'])) { $recordInstance->rawData['taskstatus'] = $recordInstance->rawData['status']; } diff --git a/packages/vtiger/mandatory/Mobile.zip b/packages/vtiger/mandatory/Mobile.zip index 8c9e06a8ccc3cba0cd3f58b9605b8f051d75e135..1fe5eaa920883efd2287e8c2ce411b47fed6b14a 100644 GIT binary patch delta 35881 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%0DKFN z=!Cs9EwC_Y^O=YYQ{tue3z^sy22Srqf<RGjskD<qH!^2hONh}fCjM#(G5n-hwbp2_ z)k<~4U-gWO-$M+v`<REhSl@_`u@!j3_cQPPR!W@aDrL1&hDqy+8LJkqBuE?13F2Lv z8?Mx;QQ?cIRV!7hT;bQVk(aF0;gYqQ`01?pP%6K0<Q;(&-AKU^N+0P4ZUwhdJZW`= z(ne~8-&_mgc?8zJ&aX`LiBx(@=YMCSC=zk6gFD7TEc}+WD(w|7YmBhN@k#ey!?@7B zk8V8g9{#t*j?nJ7Uy-L!_11v<J$wUBeP}iDkLNeGhPhpTy}`TL8Xld*U1%|G$z!Zo zVjEPv0hHB787s|y&WtK;u?SsXGBNTc%&D)EY;3Dk(*{<u<pkSm(;saWyEe{65FXU_ zeWjZ;+(5146ff~!P+jpku~&znc*SdV=58nVjKPLCQ^ZRz;qBnv2PUCZnH=p95MLWx zC~k-4`CVb+r2>Vp^R}A);yYvF5&5hCyeqt}RmDrlS21?!j71V}^YS7cjlw8HnMeOb zp+9n~stVHRXe9NoK1`JRU>bL#5zD21jO_BWRinP`fqYX_AbxbXJ=WG-i-|_HYzi-0 z&lrr*9Z#)=%!B~Ee3Bo7n0BKZG0HH_H{y>vbhUx4GEI(0Q@1r1;?aRZJb=ao;@_Yz zkA?UXvd1Z@($S{OxYrb;zl_7^KQw2gyt%E4uwa)~g)wp}%=Qk4vQ7us9NmiHVI7oi zc=M^SgOVu?Z6h#0n%TyN*Lo5#&L!HGpp2AOL<>e0+8+%Eo^*mM!xLe{KaSzNMC7z< z0u%lT@V#LYMjoBa$h0J+k-f`nwu!p6S8CC=lepDfD;ahsbbHOiFK)Wyl+Nph05|M} z{Z7e>uk^e(3!F_>8u|a<r_U;EzD4-yq;M5qLi2DDpFtz}5?=SiH>hyEH}dUq)^|jS z-7=2h6XS&Eo#1&#{8CaF88se(;CHS%K|gQ;!}mI2LYGtDF!nUnW~C21D>eQ9?}Jqp zyo*hLLkS<T@)k8he8-AzbXLNoXH%GMo@(=^_+Rk?K>ky_Am-?T!8d%)y#1fU%LCo9 z236-_H6C<9gAq87d6DyM{$d9B!Dm;fC<|YYh6|mA*cofPVs=LsF|6sPH1_|$uk%#! z*MBLC;$uA?F5*i)>MNK2|Nk+Ie_zJimHFNZR>F5JEMk7*(-x|ppV*TX-mHIPu+^Ef zsYZ9Dk&C(;)kRC`j!AfIWNVi;@VxC(ubl!xYrPZm$E$8tD6EHKadq8=cl9g%4{l(? A=>Px# delta 36110 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 diff --git a/pkg/vtiger/modules/Mobile/modules/Mobile/api.php b/pkg/vtiger/modules/Mobile/modules/Mobile/api.php index a14e9e109..72f5ab668 100644 --- a/pkg/vtiger/modules/Mobile/modules/Mobile/api.php +++ b/pkg/vtiger/modules/Mobile/modules/Mobile/api.php @@ -18,6 +18,7 @@ require_once 'config.php'; if (file_exists('config_override.php')) { include_once 'config_override.php'; } +require_once 'vendor/autoload.php'; // Define GetRelatedList API before including the core files // NOTE: Make sure GetRelatedList function_exists check is made in include/utils/RelatedListView.php diff --git a/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/Controller.php b/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/Controller.php index 36d478974..9a74da83d 100644 --- a/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/Controller.php +++ b/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/Controller.php @@ -44,11 +44,11 @@ class Mobile_WS_Controller { return ($user !== false); } - function sessionGet($key, $defvaule = '') { + function sessionGet($key, $defvalue = '') { return Mobile_API_Session::get($key, $defvalue); } function sessionSet($key, $value) { Mobile_API_Session::set($key, $value); } -} \ No newline at end of file +} diff --git a/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/Describe.php b/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/Describe.php index 5fee0d5dc..d2f1fc073 100644 --- a/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/Describe.php +++ b/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/Describe.php @@ -21,7 +21,7 @@ class Mobile_WS_Describe extends Mobile_WS_Controller { $moduleModel = Vtiger_Module_Model::getInstance($module); $fieldModels = $moduleModel->getFields(); foreach($fields as $index=>$field) { - $fieldModel = $fieldModels[$field['name']]; + $fieldModel = isset($fieldModels[$field['name']]) ? $fieldModels[$field['name']] : null; if($fieldModel) { $field['headerfield'] = $fieldModel->get('headerfield'); $field['summaryfield'] = $fieldModel->get('summaryfield'); @@ -67,4 +67,4 @@ class Mobile_WS_Describe extends Mobile_WS_Controller { return $response; } -} \ No newline at end of file +} diff --git a/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/FetchRecord.php b/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/FetchRecord.php index 3695504a9..38f6fbc2a 100644 --- a/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/FetchRecord.php +++ b/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/FetchRecord.php @@ -28,6 +28,10 @@ class Mobile_WS_FetchRecord extends Mobile_WS_Controller { $recordid = $request->get('record'); if($request->get('view_mode') == 'web'){ $module = $request->get('module'); + if ($module == "Calendar") { + // Handle detection of (Calendar or Events) + $module = vtws_getCalendarEntityType($recordid); + } $recordid = vtws_getWebserviceEntityId($module, $recordid); } $record = vtws_retrieve($recordid, $current_user); diff --git a/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/FetchReferenceRecords.php b/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/FetchReferenceRecords.php index d877c526e..df699eb6c 100644 --- a/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/FetchReferenceRecords.php +++ b/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/FetchReferenceRecords.php @@ -45,7 +45,7 @@ class Mobile_WS_FetchReferenceRecords extends Mobile_WS_Controller { $referenceRecords = array(); foreach($wsresult as $result) { - $record = array(); + $record = array('label' => ''); foreach($labelFieldsArray as $labelField) { $record['label'] .= $result[$labelField] . ' '; } @@ -59,4 +59,4 @@ class Mobile_WS_FetchReferenceRecords extends Mobile_WS_Controller { } } -?> \ No newline at end of file +?> diff --git a/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/SaveRecord.php b/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/SaveRecord.php index 3124d1c08..5ce8fef18 100644 --- a/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/SaveRecord.php +++ b/pkg/vtiger/modules/Mobile/modules/Mobile/api/ws/SaveRecord.php @@ -40,7 +40,7 @@ class Mobile_WS_SaveRecord extends Mobile_WS_FetchRecordWithGrouping { return $response; } try { - if (vtws_recordExists($recordid)) { + if (empty($recordid) || vtws_recordExists($recordid)) { // Retrieve or Initalize if (!empty($recordid) && !$this->isTemplateRecordRequest($request)) { $this->recordValues = vtws_retrieve($recordid, $current_user); @@ -82,4 +82,4 @@ class Mobile_WS_SaveRecord extends Mobile_WS_FetchRecordWithGrouping { return $response; } -} \ No newline at end of file +} diff --git a/pkg/vtiger/modules/Mobile/modules/Mobile/html/Viewer.php b/pkg/vtiger/modules/Mobile/modules/Mobile/html/Viewer.php index e1a388fb5..732c5c530 100644 --- a/pkg/vtiger/modules/Mobile/modules/Mobile/html/Viewer.php +++ b/pkg/vtiger/modules/Mobile/modules/Mobile/html/Viewer.php @@ -8,7 +8,6 @@ * All Rights Reserved. ************************************************************************************/ -include_once 'vendor/autoload.php'; include_once 'includes/runtime/Viewer.php'; class Mobile_HTML_Viewer extends Vtiger_Viewer{ diff --git a/pkg/vtiger/modules/Mobile/modules/Mobile/ical.php b/pkg/vtiger/modules/Mobile/modules/Mobile/ical.php index 207c62eb0..8fd00d460 100644 --- a/pkg/vtiger/modules/Mobile/modules/Mobile/ical.php +++ b/pkg/vtiger/modules/Mobile/modules/Mobile/ical.php @@ -14,6 +14,7 @@ chdir( dirname(__FILE__). '/../../'); set_include_path(dirname(__FILE__) . '/third-party/qCal' . PATH_SEPARATOR . get_include_path()); include_once dirname(__FILE__) . '/third-party/qCal/autoload.php'; +require_once 'vendor/autoload.php'; include_once 'vtlib/Vtiger/Module.php'; /** @@ -216,4 +217,4 @@ $matches[1] = array_pop($parts); // Process the request if (vtlib_isModuleActive('Mobile')) { Mobile_ICAL::process($matches[1], $matches[2]); -} \ No newline at end of file +} diff --git a/pkg/vtiger/modules/Mobile/modules/Mobile/index.php b/pkg/vtiger/modules/Mobile/modules/Mobile/index.php index aaf2819ef..5fd758c4a 100644 --- a/pkg/vtiger/modules/Mobile/modules/Mobile/index.php +++ b/pkg/vtiger/modules/Mobile/modules/Mobile/index.php @@ -20,6 +20,7 @@ require_once 'config.php'; if (file_exists('config_override.php')) { include_once 'config_override.php'; } +require_once 'vendor/autoload.php'; include_once dirname(__FILE__) . '/api/Request.php'; include_once dirname(__FILE__) . '/api/Response.php'; -- GitLab