diff --git a/modules/Vtiger/dashboards/CalendarActivities.php b/modules/Vtiger/dashboards/CalendarActivities.php
index 6ace2ed21bb406957d1a8670ce47694875b0bb57..1436af8861d1c20fccde1000182a305a8c9d9abb 100644
--- a/modules/Vtiger/dashboards/CalendarActivities.php
+++ b/modules/Vtiger/dashboards/CalendarActivities.php
@@ -9,6 +9,16 @@
  *************************************************************************************/
 
 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/IndexAjax.php b/modules/Vtiger/views/IndexAjax.php
index f85075f52c966c42811291af8201001b54150aa1..5352fdd72e741ce6f7e4420cc6c19b08607460e3 100644
--- a/modules/Vtiger/views/IndexAjax.php
+++ b/modules/Vtiger/views/IndexAjax.php
@@ -10,6 +10,10 @@
 
 class Vtiger_IndexAjax_View extends Vtiger_Index_View {
 
+	function checkPermission(Vtiger_Request $request) {
+		return true;
+	}
+	
 	function __construct() {
 		parent::__construct();
 		$this->exposeMethod('showActiveRecords');
diff --git a/modules/Vtiger/views/ShowWidget.php b/modules/Vtiger/views/ShowWidget.php
index a9604f70e3a3e5bfc6e114ffdfcc3f09af63d6c5..92482a892522eb47bafbf7ff0f6b079446de66dd 100644
--- a/modules/Vtiger/views/ShowWidget.php
+++ b/modules/Vtiger/views/ShowWidget.php
@@ -54,7 +54,9 @@ class Vtiger_ShowWidget_View extends Vtiger_IndexAjax_View {
 				$request->set('createdtime', $dates);
 				
 				$classInstance = new $className();
-				$classInstance->process($request, $widget);
+				if($classInstance->checkPermission($request)){
+					$classInstance->process($request, $widget);
+				}
 				return;
 			}
 	}