Index: app/controllers/news_controller.rb =================================================================== --- app/controllers/news_controller.rb (revision 3898) +++ app/controllers/news_controller.rb (working copy) @@ -26,9 +26,10 @@ accept_key_auth :index def index + @with_subprojects = params[:with_subprojects].nil? ? Setting.display_subprojects_issues? : (params[:with_subprojects] == '1') @news_pages, @newss = paginate :news, :per_page => 10, - :conditions => Project.allowed_to_condition(User.current, :view_news, :project => @project), + :conditions => Project.allowed_to_condition(User.current, :view_news, :project => @project, :with_subprojects => @with_subprojects), :include => [:author, :project], :order => "#{News.table_name}.created_on DESC" respond_to do |format| Index: app/controllers/projects_controller.rb =================================================================== --- app/controllers/projects_controller.rb (revision 3898) +++ app/controllers/projects_controller.rb (working copy) @@ -143,7 +143,10 @@ @users_by_role = @project.users_by_role @subprojects = @project.children.visible - @news = @project.news.find(:all, :limit => 5, :include => [ :author, :project ], :order => "#{News.table_name}.created_on DESC") + @news = News.all(:conditions => Project.allowed_to_condition(User.current, :view_news, :project => @project, + :with_subprojects => Setting.display_subprojects_issues?), + :include => [:author, :project], + :order => "#{News.table_name}.created_on DESC") @trackers = @project.rolled_up_trackers cond = @project.project_condition(Setting.display_subprojects_issues?) Index: app/views/news/_news.rhtml =================================================================== --- app/views/news/_news.rhtml (revision 3898) +++ app/views/news/_news.rhtml (working copy) @@ -1,4 +1,4 @@ -

<%= link_to(h(news.project.name), :controller => 'projects', :action => 'show', :id => news.project) + ': ' unless @project %> +

<%= link_to(h(news.project.name), :controller => 'projects', :action => 'show', :id => news.project) + ': ' unless news.project == @project %> <%= link_to h(news.title), :controller => 'news', :action => 'show', :id => news %> <%= "(#{l(:label_x_comments, :count => news.comments_count)})" if news.comments_count > 0 %>
Index: app/views/news/index.rhtml =================================================================== --- app/views/news/index.rhtml (revision 3898) +++ app/views/news/index.rhtml (working copy) @@ -43,6 +43,15 @@ <%= f.link_to 'Atom', :url => {:project_id => @project, :key => User.current.rss_key} %> <% end %> +<% content_for :sidebar do %> + <% form_tag({:project_id => @project}, :method => :get) do %> +

<%= l(:label_news) %>

+ <%= hidden_field_tag 'with_subprojects', 0 %> +
+

<%= submit_tag l(:button_apply), :class => 'button-small', :name => nil %>

+ <% end %> +<% end if @project && @project.descendants.active.any? %> + <% content_for :header_tags do %> <%= auto_discovery_link_tag(:atom, params.merge({:format => 'atom', :page => nil, :key => User.current.rss_key})) %> <% end %>