File tree Expand file tree Collapse file tree 1 file changed +11
-1
lines changed Expand file tree Collapse file tree 1 file changed +11
-1
lines changed Original file line number Diff line number Diff line change @@ -73,12 +73,22 @@ def destroy
7373 define_method status do
7474 if params [ :page_ids ]
7575 @pages = params [ :page_ids ] . map { |id | Page . find ( id ) }
76- raise Cms ::Errors ::AccessDenied unless @pages . all? { |page | current_user . able_to_edit? ( page ) }
76+ if status == :publish
77+ raise Cms ::Errors ::AccessDenied unless @pages . all? { |page | current_user . able_to_publish? ( page ) }
78+ else
79+ raise Cms ::Errors ::AccessDenied unless @pages . all? { |page | current_user . able_to_edit? ( page ) }
80+ end
7781 @pages . each { |page | page . send ( status ) }
7882 flash [ :notice ] = "#{ params [ :page_ids ] . size } pages #{ verb } "
7983 redirect_to dashboard_url
8084 else
8185 load_page
86+ if status == :publish
87+ raise Cms ::Errors ::AccessDenied unless current_user . able_to_publish? ( @page )
88+ else
89+ raise Cms ::Errors ::AccessDenied unless current_user . able_to_edit? ( @page )
90+ end
91+
8292 if @page . send ( status )
8393 flash [ :notice ] = "Page '#{ @page . name } ' was #{ verb } "
8494 end
You can’t perform that action at this time.
0 commit comments