diff --git a/layouts/v7/modules/Settings/Profiles/DetailView.tpl b/layouts/v7/modules/Settings/Profiles/DetailView.tpl index 552bee433865965947e96e052996ccfa67977792..f0aa84866c6edbfeed022e42559eff0f1a5ebc93 100644 --- a/layouts/v7/modules/Settings/Profiles/DetailView.tpl +++ b/layouts/v7/modules/Settings/Profiles/DetailView.tpl @@ -91,7 +91,6 @@ </thead> <tbody> {foreach from=$RECORD_MODEL->getModulePermissions() key=TABID item=PROFILE_MODULE} - {assign var=IS_RESTRICTED_MODULE value=$RECORD_MODEL->isRestrictedModule($PROFILE_MODULE->getName())} <tr> {assign var=MODULE_PERMISSION value=$RECORD_MODEL->hasModulePermission($PROFILE_MODULE)} <td data-module-name='{$PROFILE_MODULE->getName()}' data-module-status='{$MODULE_PERMISSION}'> @@ -102,7 +101,7 @@ {assign var="ACTION_MODEL" value=$ALL_BASIC_ACTIONS[$ACTION_ID]} {assign var=MODULE_ACTION_PERMISSION value=$RECORD_MODEL->hasModuleActionPermission($PROFILE_MODULE, $ACTION_MODEL)} <td data-action-state='{$ACTION_MODEL->getName()}' data-moduleaction-status='{$MODULE_ACTION_PERMISSION}' style="text-align: center;"> - {if !$IS_RESTRICTED_MODULE && $ACTION_MODEL->isModuleEnabled($PROFILE_MODULE)} + {if $ACTION_MODEL->isModuleEnabled($PROFILE_MODULE)} <img src="{if $MODULE_ACTION_PERMISSION}{$ENABLE_IMAGE_PATH}{else}{$DISABLE_IMAGE_PATH}{/if}" /> {/if} </td> @@ -220,4 +219,4 @@ </div> </div> </div> -{/strip} \ No newline at end of file +{/strip} diff --git a/layouts/v7/modules/Settings/Profiles/EditViewContents.tpl b/layouts/v7/modules/Settings/Profiles/EditViewContents.tpl index 0ebabbe0724bbed1cbba9587d25cd81eb6d16e94..e6267c44c851423289f8b7a0b87f3fd8a178d41b 100644 --- a/layouts/v7/modules/Settings/Profiles/EditViewContents.tpl +++ b/layouts/v7/modules/Settings/Profiles/EditViewContents.tpl @@ -114,7 +114,6 @@ {foreach from=$PROFILE_MODULES key=TABID item=PROFILE_MODULE} {assign var=MODULE_NAME value=$PROFILE_MODULE->getName()} {if $MODULE_NAME neq 'Events'} - {assign var=IS_RESTRICTED_MODULE value=$RECORD_MODEL->isRestrictedModule($MODULE_NAME)} <tr> <td class="verticalAlignMiddleImp"> <input class="modulesCheckBox" type="checkbox" name="permissions[{$TABID}][is_permitted]" data-value="{$TABID}" data-module-state="" {if $RECORD_MODEL->hasModulePermission($PROFILE_MODULE)}checked="true"{else} data-module-unchecked="true" {/if}> {$PROFILE_MODULE->get('label')|vtranslate:$PROFILE_MODULE->getName()} @@ -124,7 +123,7 @@ <td class="textAlignCenter verticalAlignMiddleImp"> {assign var="ACTION_MODEL" value=$ALL_BASIC_ACTIONS[$ORDERID]} {assign var=ACTION_ID value=$ACTION_MODEL->get('actionid')} - {if !$IS_RESTRICTED_MODULE && $ACTION_MODEL->isModuleEnabled($PROFILE_MODULE)} + {if $ACTION_MODEL->isModuleEnabled($PROFILE_MODULE)} <input class="action{$ACTION_ID}CheckBox" type="checkbox" name="permissions[{$TABID}][actions][{$ACTION_ID}]" data-action-state="{$ACTION_MODEL->getName()}" {if $RECORD_MODEL->hasModuleActionPermission($PROFILE_MODULE, $ACTION_MODEL)}checked="true"{elseif empty($RECORD_ID) && empty($IS_DUPLICATE_RECORD)} checked="true" {else} data-action{$ACTION_ID}-unchecked="true"{/if}></td> {/if} </td> diff --git a/modules/Migration/models/Module.php b/modules/Migration/models/Module.php index 3190eb623a9ea8cadd761c45f962be203dc65ed1..8f9aa4ae16296477b96284b11eec3f8b98823033 100644 --- a/modules/Migration/models/Module.php +++ b/modules/Migration/models/Module.php @@ -45,6 +45,7 @@ class Migration_Module_Model extends Vtiger_Module_Model { array('710' => '7.1.0'), array('711' => '7.1.1'), array('720' => '7.2.0'), + array('721' => '7.2.1'), ); return $versions; } diff --git a/modules/Migration/schema/720_to_721.php b/modules/Migration/schema/720_to_721.php new file mode 100644 index 0000000000000000000000000000000000000000..2582998821a71c4eef5f2a67e9ac44886edbdac9 --- /dev/null +++ b/modules/Migration/schema/720_to_721.php @@ -0,0 +1,45 @@ +<?php +/*+******************************************************************************** + * The contents of this file are subject to the vtiger CRM Public License Version 1.0 + * ("License"); You may not use this file except in compliance with the License + * The Original Code is: vtiger CRM Open Source + * The Initial Developer of the Original Code is vtiger. + * Portions created by vtiger are Copyright (C) vtiger. + * All Rights Reserved. + *********************************************************************************/ + +if (defined('VTIGER_UPGRADE')) { + global $current_user, $adb; + $db = PearDatabase::getInstance(); + + $actions = array('Save', 'EditView', 'Delete', 'DetailView', 'CreateView'); + $emailsTabId = getTabid('Emails'); + + $actionIds = array(); + foreach($actions as $actionName) { + array_push($actionIds, getActionid($actionName)); + } + + $profileIdsResult = $db->pquery("SELECT DISTINCT profileid FROM vtiger_profile", array()); + $profileIdCount = $db->num_rows($profileIdsResult); + for($i = 0; $i < $profileIdCount; $i++) { + $profileId = $db->query_result($profileIdsResult, $i, 'profileid'); + foreach($actionIds as $actionId) { + $db->pquery("INSERT INTO vtiger_profile2standardpermissions VALUES (?, ?, ?, ?) ON DUPLICATE KEY UPDATE permissions = ?", + array($profileId, $emailsTabId, $actionId, 0, 0)); + } + echo "Emails permission for profile id :: $profileId inserted into vtiger_profile2standardpermissions table.<br>"; + } + + $db->pquery("UPDATE vtiger_tab SET ownedby = ? WHERE tabid = ?", array(0, $emailsTabId)); + echo "ownedby value updated to 0 for Emails in vtiger_tab table.<br>"; + vimport('~modules/Users/CreateUserPrivilegeFile.php'); + $usersResult = $db->pquery("SELECT id FROM vtiger_users", array()); + $usersCount = $db->num_rows($usersResult); + for($i = 0; $i < $usersCount; $i++) { + $userId = $db->query_result($usersResult, $i, 'id'); + createUserPrivilegesfile($userId); + createUserSharingPrivilegesfile($userId); + echo "User privilege and sharing privilege files recreated for user id :: $userId.<br>"; + } +} \ No newline at end of file diff --git a/modules/Settings/Profiles/models/Record.php b/modules/Settings/Profiles/models/Record.php index dcba26e06511c3114cb9c61d48fc72358da6e916..a4e4064bf8600b49a1ba81991b27b9eee6b7cede 100644 --- a/modules/Settings/Profiles/models/Record.php +++ b/modules/Settings/Profiles/models/Record.php @@ -607,9 +607,6 @@ class Settings_Profiles_Record_Model extends Settings_Vtiger_Record_Model { $db->pquery($utilityInsertQuery, array()); } } - } elseif ($this->isRestrictedModule($moduleModel->getName())) { - //To check the module is restricted or not(Emails, Webmails) - $actionEnabled = true; } } else { $actionEnabled = true; @@ -798,15 +795,6 @@ class Settings_Profiles_Record_Model extends Settings_Vtiger_Record_Model { } } - /** - * Function to check whether module is restricted for to show actions and field access - * @param <String> $moduleName - * @return <boolean> true/false - */ - public function isRestrictedModule($moduleName) { - return in_array($moduleName, array('Emails')); - } - /** * Function recalculate the sharing rules */ diff --git a/packages/vtiger/mandatory/ModTracker.zip b/packages/vtiger/mandatory/ModTracker.zip index 5c601415e360598d1e0d7108c4943669168dbf78..ca620cea7c868acd0016485dad2c45627441df9b 100644 Binary files a/packages/vtiger/mandatory/ModTracker.zip and b/packages/vtiger/mandatory/ModTracker.zip differ diff --git a/pkg/vtiger/modules/ModTracker/modules/ModTracker/models/Relation.php b/pkg/vtiger/modules/ModTracker/modules/ModTracker/models/Relation.php index 28219de3aa56a2b80b7e9134088d833bd7a45191..dcf11bba45e5c30183284396b021fd99db15a3d7 100644 --- a/pkg/vtiger/modules/ModTracker/modules/ModTracker/models/Relation.php +++ b/pkg/vtiger/modules/ModTracker/modules/ModTracker/models/Relation.php @@ -24,6 +24,9 @@ class ModTracker_Relation_Model extends Vtiger_Record_Model { $targetId = $this->get('targetid'); $targetModule = $this->get('targetmodule'); + if(!Users_Privileges_Model::isPermitted($targetModule, 'DetailView', $targetId)) { + return false; + } $query = 'SELECT * FROM vtiger_crmentity WHERE crmid = ?'; $params = array($targetId); $result = $db->pquery($query, $params); diff --git a/vtigerversion.php b/vtigerversion.php index 399a93b8beab6142216a4f165dd1612b320bc799..a6578bc392545873329a5f48099f779782e1582e 100644 --- a/vtigerversion.php +++ b/vtigerversion.php @@ -8,9 +8,9 @@ * All Rights Reserved. ************************************************************************************/ -$patch_version = '20191104'; // -ve timestamp before release, +ve timestamp after release. +$patch_version = '-20191210'; // -ve timestamp before release, +ve timestamp after release. $modified_database = ''; -$vtiger_current_version = '7.2.0'; +$vtiger_current_version = '7.2.1'; $_SESSION['vtiger_version'] = $vtiger_current_version; ?> \ No newline at end of file