Skip to content
Snippets Groups Projects
Commit 7cc7ea6b authored by Uma's avatar Uma
Browse files

Check permission addressed on follow records

parent 4a1bc278
No related branches found
No related tags found
1 merge request!386Checkpermission addressed on follow/ unfollow of records
......@@ -9,16 +9,35 @@
* ***********************************************************************************/
class Vtiger_SaveStar_Action extends Vtiger_Mass_Action {
var $followRecordIds = Array();
public function requiresPermission(\Vtiger_Request $request) {
$permissions = parent::requiresPermission($request);
$permissions[] = array('module_parameter' => 'module', 'action' => 'DetailView', 'record_parameter' => 'record');
return $permissions;
}
function checkPermission(Vtiger_Request $request) {
//Return true as WebUI.php is already checking for module permission
parent::checkPermission($request);
$recordIds = $this->getRecordsListFromRequest($request);
if ($request->has('selected_ids')) {
foreach ($recordIds as $recordId) {
$moduleName = getSalesEntityType($recordId);
$permissionStatus = Users_Privileges_Model::isPermitted($moduleName, 'DetailView', $recordId);
if($permissionStatus){
$this->followRecordIds[] = $recordId;
}
if(empty($this->followRecordIds)){
throw new AppException(vtranslate('LBL_RECORD_PERMISSION_DENIED'));
}
}
}
return true;
}
public function process(Vtiger_Request $request) {
$module = $request->get('module');
if ($request->has('selected_ids')) {
$recordIds = $this->getRecordsListFromRequest($request);
$recordIds = $this->followRecordIds;
} else {
$recordIds = array($request->get('record'));
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment