diff --git a/modules/Vtiger/dashboards/CalendarActivities.php b/modules/Vtiger/dashboards/CalendarActivities.php
index 1436af8861d1c20fccde1000182a305a8c9d9abb..6ace2ed21bb406957d1a8670ce47694875b0bb57 100644
--- a/modules/Vtiger/dashboards/CalendarActivities.php
+++ b/modules/Vtiger/dashboards/CalendarActivities.php
@@ -9,16 +9,6 @@
  *************************************************************************************/
 
 class Vtiger_CalendarActivities_Dashboard extends Vtiger_IndexAjax_View {
-	
-	function checkPermission(Vtiger_Request $request) {
-		$moduleName = 'Calendar';
-
-		$modulePermission = Users_Privileges_Model::isPermitted($moduleName, 'DetailView');
-		if(!$modulePermission) {
-			throw new AppException(vtranslate('LBL_PERMISSION_DENIED'));
-		}
-		return true;
-	}
 
 	public function process(Vtiger_Request $request) {
 		$currentUser = Users_Record_Model::getCurrentUserModel();
diff --git a/modules/Vtiger/views/ShowWidget.php b/modules/Vtiger/views/ShowWidget.php
index 92482a892522eb47bafbf7ff0f6b079446de66dd..79f0a0bfeca563b36e2a8407f6e748d685107662 100644
--- a/modules/Vtiger/views/ShowWidget.php
+++ b/modules/Vtiger/views/ShowWidget.php
@@ -53,9 +53,15 @@ class Vtiger_ShowWidget_View extends Vtiger_IndexAjax_View {
 				}
 				$request->set('createdtime', $dates);
 				
-				$classInstance = new $className();
-				if($classInstance->checkPermission($request)){
+				if($componentName == 'CalendarActivities' || $componentName == 'OverdueActivities') {
+					$moduleName = 'Calendar';
+				}
+				$currentUserPrivilegeModel = Users_Privileges_Model::getCurrentUserPrivilegesModel();
+				if($currentUserPrivilegeModel->hasModulePermission(getTabid($moduleName)) && !Vtiger_Runtime::isRestricted('modules', $moduleName)){
+					$classInstance = new $className();
 					$classInstance->process($request, $widget);
+				}else{
+					throw new AppException(vtranslate('LBL_PERMISSION_DENIED'));
 				}
 				return;
 			}