# HG changeset patch # User Chris Cannam # Date 1301656447 -3600 # Node ID 8da54f33a17b1dd6a30e5b6a4e5e0680e6e4d5bc # Parent 3e8c33cbb8e06612d618da3bc3054426d9745bb7# Parent 9b25cd1b459b3c4f65dd790422d7c3182b6483ec Merge diff -r 9b25cd1b459b -r 8da54f33a17b app/controllers/application_controller.rb --- a/app/controllers/application_controller.rb Fri Apr 01 09:58:26 2011 +0100 +++ b/app/controllers/application_controller.rb Fri Apr 01 12:14:07 2011 +0100 @@ -263,12 +263,17 @@ uri = URI.parse(back_url) # do not redirect user to another host or to the login or register page if (uri.relative? || (uri.host == request.host)) && !uri.path.match(%r{/(login|account/register)}) + # soundsoftware: if back_url is the home page, + # change it to My Page (#125) + if (uri.path == home_path) + uri.path = uri.path + "/my" + end # soundsoftware: if login page is https but back_url http, # switch back_url to https to ensure cookie validity (#83) if (uri.scheme == "http") && (URI.parse(request.url).scheme == "https") uri.scheme = "https" - back_url = uri.to_s end + back_url = uri.to_s redirect_to(back_url) return end diff -r 9b25cd1b459b -r 8da54f33a17b app/controllers/my_controller.rb --- a/app/controllers/my_controller.rb Fri Apr 01 09:58:26 2011 +0100 +++ b/app/controllers/my_controller.rb Fri Apr 01 12:14:07 2011 +0100 @@ -26,12 +26,13 @@ 'issueswatched' => :label_watched_issues, 'activitymyprojects' => :label_activity_my_recent, 'news' => :label_news_latest, + 'tipoftheday' => :label_tipoftheday, 'calendar' => :label_calendar, 'documents' => :label_document_plural, 'timelog' => :label_spent_time }.merge(Redmine::Views::MyPage::Block.additional_blocks).freeze - DEFAULT_LAYOUT = { 'left' => ['activitymyprojects'], + DEFAULT_LAYOUT = { 'left' => ['tipoftheday', 'activitymyprojects'], 'right' => ['issueswatched','calendar'] }.freeze diff -r 9b25cd1b459b -r 8da54f33a17b app/controllers/welcome_controller.rb --- a/app/controllers/welcome_controller.rb Fri Apr 01 09:58:26 2011 +0100 +++ b/app/controllers/welcome_controller.rb Fri Apr 01 12:14:07 2011 +0100 @@ -25,7 +25,7 @@ @news = News.latest User.current @projects = Project.latest User.current - # tests if user is logged in to gfenerate the tips of the day list + # tests if user is logged in to generate the tips of the day list if User.current.logged? @tipsoftheday = Setting.tipoftheday_text else diff -r 9b25cd1b459b -r 8da54f33a17b app/views/activities/_recent.rhtml --- a/app/views/activities/_recent.rhtml Fri Apr 01 09:58:26 2011 +0100 +++ b/app/views/activities/_recent.rhtml Fri Apr 01 12:14:07 2011 +0100 @@ -2,6 +2,12 @@ <% max = 5 %> <% if (events.nil?) activity = Redmine::Activity::Fetcher.new(User.current, :project => @project) + if @project + # Don't show news (duplicated with News box) or wiki edits (too + # tedious) in project front page + activity.scope = [ "changesets", "files", "issues", "documents" ] + end + events = activity.events(Date.today - 28, Date.today + 1).first(max) end %> diff -r 9b25cd1b459b -r 8da54f33a17b app/views/my/blocks/_tipoftheday.rhtml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/app/views/my/blocks/_tipoftheday.rhtml Fri Apr 01 12:14:07 2011 +0100 @@ -0,0 +1,4 @@ +

<%=l(:label_tipoftheday)%>

+
+
<%= textilizable Setting.tipoftheday_text %>
+
diff -r 9b25cd1b459b -r 8da54f33a17b app/views/news/_news.rhtml --- a/app/views/news/_news.rhtml Fri Apr 01 09:58:26 2011 +0100 +++ b/app/views/news/_news.rhtml Fri Apr 01 12:14:07 2011 +0100 @@ -1,6 +1,12 @@ -

<%= link_to_project(news.project) + ': ' unless @project %> -<%= link_to h(news.title), news_path(news) %> -<%= "(#{l(:label_x_comments, :count => news.comments_count)})" if news.comments_count > 0 %> -
+

+
+<%= format_time(news.created_on) %> +<% if !@project %> +<%= link_to_project(news.project) %> +<% end %> +<%= link_to h(news.title), news_path(news) %> +<%= "(#{l(:label_x_comments, :count => news.comments_count)})" if news.comments_count > 0 %> +
<% unless news.summary.blank? %><%=h news.summary %>
<% end %> -<%= authoring news.created_on, news.author %>

+
+
diff -r 9b25cd1b459b -r 8da54f33a17b app/views/welcome/index.rhtml --- a/app/views/welcome/index.rhtml Fri Apr 01 09:58:26 2011 +0100 +++ b/app/views/welcome/index.rhtml Fri Apr 01 12:14:07 2011 +0100 @@ -34,7 +34,8 @@ <% for project in @projects %> <% @project = project %>
  • - <%= link_to_project project %> (<%= format_time(project.created_on) %>) + <%= link_to_project project %> + <%= format_time(project.created_on)%> <%= render_project_short_description project %>
  • <% end %> diff -r 9b25cd1b459b -r 8da54f33a17b config/locales/en.yml --- a/config/locales/en.yml Fri Apr 01 09:58:26 2011 +0100 +++ b/config/locales/en.yml Fri Apr 01 12:14:07 2011 +0100 @@ -753,6 +753,7 @@ label_added_time_by: "Added by {{author}} {{age}} ago" label_updated_time_by: "Updated by {{author}} {{age}} ago" label_updated_time: "Updated {{value}} ago" + label_time_ago: "{{age}} ago" label_jump_to_a_project: Jump to a project... label_file_plural: Downloads label_changeset_plural: Changesets diff -r 9b25cd1b459b -r 8da54f33a17b lib/redmine.rb --- a/lib/redmine.rb Fri Apr 01 09:58:26 2011 +0100 +++ b/lib/redmine.rb Fri Apr 01 12:14:07 2011 +0100 @@ -185,6 +185,7 @@ Redmine::MenuManager.map :project_menu do |menu| menu.push :overview, { :controller => 'projects', :action => 'show' } + menu.push :news, { :controller => 'news', :action => 'index' }, :param => :project_id, :caption => :label_news_plural menu.push :activity, { :controller => 'activities', :action => 'index' } menu.push :roadmap, { :controller => 'versions', :action => 'index' }, :param => :project_id, :if => Proc.new { |p| p.shared_versions.any? } @@ -193,7 +194,6 @@ :html => { :accesskey => Redmine::AccessKeys.key_for(:new_issue) } menu.push :gantt, { :controller => 'gantts', :action => 'show' }, :param => :project_id, :caption => :label_gantt menu.push :calendar, { :controller => 'calendars', :action => 'show' }, :param => :project_id, :caption => :label_calendar - menu.push :news, { :controller => 'news', :action => 'index' }, :param => :project_id, :caption => :label_news_plural menu.push :documents, { :controller => 'documents', :action => 'index' }, :param => :project_id, :caption => :label_document_plural menu.push :wiki, { :controller => 'wiki', :action => 'show', :id => nil }, :param => :project_id, :if => Proc.new { |p| p.wiki && !p.wiki.new_record? } diff -r 9b25cd1b459b -r 8da54f33a17b public/stylesheets/application.css --- a/public/stylesheets/application.css Fri Apr 01 09:58:26 2011 +0100 +++ b/public/stylesheets/application.css Fri Apr 01 12:14:07 2011 +0100 @@ -294,16 +294,19 @@ div#issue-changesets div.changeset { border-bottom: 1px solid #ddd; } div#issue-changesets p { margin-top: 0; margin-bottom: 1em;} -div#activity dl, #search-results { margin-left: 2em; } +div#activity dl, div#news dl, #search-results { margin-left: 2em; } div#activity .box dl { margin-left: 0; } -div#activity dd, #search-results dd { margin-bottom: 1em; padding-left: 18px; font-size: 0.9em; } -div#activity dt, #search-results dt { margin-bottom: 0px; padding-left: 20px; line-height: 18px; background-position: 0 50%; background-repeat: no-repeat; } -div#activity dt.me .time { border-bottom: 1px solid #999; } -div#activity dt .time { color: #777; font-size: 80%; } +div#activity dd, div#news dd, #search-results dd { margin-bottom: 1em; padding-left: 18px; font-size: 0.9em; } +div#activity dt, div#news dt, #search-results dt { margin-bottom: 0px; padding-left: 20px; line-height: 18px; background-position: 0 50%; background-repeat: no-repeat; } +div#activity dt.me .time, div#news dt.me .time { border-bottom: 1px solid #999; } +div#activity dt .time, div#news dt .time, .projects .latest .time { color: #777; font-size: 80%; } div#activity dd .description, #search-results dd .description { font-style: italic; } -div#activity span.project:after, #search-results span.project:after { content: " -"; } +div#activity span.project:after, div#news span.project:after, #search-results span.project:after { content: " -"; } div#activity dd span.description, #search-results dd span.description { display:block; color: #808080; } +.projects .latest .title { margin-right: 0.5em; } +.tipoftheday .tip { margin-left: 2em; margin-top: 0.5em; } + #search-results dd { margin-bottom: 1em; padding-left: 20px; margin-left:0px; } div#search-results-counts { display: block; padding-left: 0; margin-left: 0; }