diff --git a/ckan/logic/action/get.py b/ckan/logic/action/get.py index 88ebc87801d..a6776216aff 100644 --- a/ckan/logic/action/get.py +++ b/ckan/logic/action/get.py @@ -2273,17 +2273,10 @@ def dashboard_mark_all_new_activities_as_old(context, data_dict): This will reset dashboard_new_activities_count to 0. ''' - if 'user' not in context: - raise logic.NotAuthorized( - _("You must be logged in to access your dashboard.")) - + _check_access('dashboard_mark_all_new_activities_as_old', context, + data_dict) model = context['model'] - - userobj = model.User.get(context['user']) - if not userobj: - raise logic.NotAuthorized( - _("You must be logged in to access your dashboard.")) - user_id = userobj.id + user_id = model.User.get(context['user']).id model.Dashboard.update_activity_stream_last_viewed(user_id) diff --git a/ckan/logic/auth/get.py b/ckan/logic/auth/get.py index bbe4db700a0..cc3c20f88fe 100644 --- a/ckan/logic/auth/get.py +++ b/ckan/logic/auth/get.py @@ -202,3 +202,8 @@ def dashboard_activity_list(context, data_dict): def dashboard_new_activities_count(context, data_dict): return ckan.new_authz.is_authorized('dashboard_activity_list', context, data_dict) + + +def dashboard_mark_all_new_activities_as_old(context, data_dict): + return ckan.new_authz.is_authorized('dashboard_activity_list', + context, data_dict) diff --git a/ckan/logic/auth/publisher/get.py b/ckan/logic/auth/publisher/get.py index f7725c5a068..41383de6a41 100644 --- a/ckan/logic/auth/publisher/get.py +++ b/ckan/logic/auth/publisher/get.py @@ -8,6 +8,7 @@ from ckan.logic.auth.get import ( dashboard_new_activities_count, dashboard_activity_list, + dashboard_mark_all_new_activities_as_old, ) def site_read(context, data_dict):